RPi-Projekt Twitternde Webcam Teil 1: Der Raspi macht Bilder

Vor einiger Zeit habe ich mal einen Tweet gelesen, ich habe ihn auf die Schnelle nicht wieder gefunden. Er ging ungefähr so: "Neue tolle Projektidee für den Raspberry Pi, Hardware bestellt, nie wieder angefasst." Auch bei mir liegen mittlerweile zwei Raspis herum, werden ab und an mal gestartet und mit einer anderen Distro bespielt, aber das wars dann auch schon.

Jetzt hatte ich nach Ostern ein paar Tage Urlaub und war in Bastellaune. Da kam mir die Idee, mit dem etwas ältern RPi Modell B und einer hier ebenfalls schon etwas angestaubten Webcam von Logitech eine Webcam aufzubauen, die ihre Bilder dann auch twittern kann. Eigentlich kein großes Ding, also hab ich mich mal daran gesetzt und das Ergebnis dokumentiere ich hier in dieser kleinen Artikelreihe.

Artikelübersicht

Teil 1: Der Raspi macht Bilder

Wie gesagt nehme ich für das Projekt einen Raspberry Pi Modell B und eine Logitech Webcam.

Raspberry Pi und Webcam

Als Betriebssystem habe ich zunächst das akutelle Raspbian-Image auf https://www.raspberrypi.org/downloads/ gezogen und auf die obligatorische SD-Karte übertragen. Das neue Image bootet automatisch in den grafischen Modus. Das ist für den späteren Betrieb unnötig. Im Terminal habe ich also zunächst mit

sudo raspi-config

die Konfiguration dahingehend geändert, dass der Raspi nur noch in den Textmodus startet. Bei dieser gelegenheit wurde gleich noch die Sprache, Tastaturlayout und Zeitzone auf deutsche Verhältinisse angepasst.

Damit bin ich auch schon bereit, den ersten Schritt anzugehen, nämlich mit der Logitech Kamera Bilder auf dem Raspi zu produzieren. Die Kamera wurde dazu an einen der beiden USB-Ports angeschlossen. Eine Softwarepaket, dass einfach Bilder mit einer Webcam erzeugt, war mit "fswebcam" schnell gefunden. Das Paket wird einfach mit

sudo apt-get install fswebcam

installiert. Die Nutzung ist denkbar einfach:

fswebcam image.jpg

sucht nach der ersten angeschlossenen USB-Kamera und mach ein Bild, das unter dem angegebenen Dateinamen abgespeichert wird. Dabei wird eine Default-Auflösung von 384x288 genutzt. Die Auflösung kann man über den Parameter "-r" ändern, so erstellt

fswebcam -r 800x600 image.jpg

ein solches Bild:

Raspberry Testbild

Wie man sieht, fügt fswebcam dem Bild automatisch ein Banner mit dem aktuellen Datum und der Uhrzeit hinzu (wie bei Webcams durchaus üblich). Dies kann man über den Parameter "--no-banner" aber auch ausschalten. fswebcam hat noch einige Parameter mehr zu bieten, diese kann man sich über die Manpage des Pakets zu Gemüte führen. Ich benötige zunächst nur die oben angegebene Variante für meine Zwecke.

Da das Aufnehmen von Bildern über die Webcam jetzt funktioniert, können wir uns im nächsten Teil der Artikelreihe damit befassen, dem Raspi das Twittern beizubringen.

Debian: Aus Iceweasel wird wieder Firefox

Die Linuxdistribution Debian führte den beliebten Internetbrowser Firefox bisher aus lizenztechnischen Gründen unter einem eigenen Fork mit dem Namen Iceweasel. Aufgrund der Updatepolitik von Debian wurde der Browser in den Paketquellen der stabilen Version auch nicht mehr auf höhere Majorversionen upgedatet. Debiannutzer, die eine Iceweasel-Version nutzen wollten, die der aktuellen Firefox-Version entsprach, mussten sich mit sogenannten Backports behelfen. Dazu ist die Seite http://mozilla.debian.net die Anlaufstelle. Dort erhielt man bisher nach Eingabe der genutzten Debian-Version und der gewünschten Variante von Iceweasel die Angabe der Paketquellen, die in die /etc/apt/sources.list eingetragen werden musste.

Seit einiger Zeit erzeugt die bisher funktionierende Backports-Adresse für Iceweasel allerdings bei Update einen Fehler. Der Grund hierfür ist, dass die Backports jetzt auf den originalen Firefox umgestellt wurden.

Aus meiner bisher unter Debian Jessie genutzen Paketquelle

deb http://mozilla.debian.net/ jessie-backports iceweasel-release

wird jetzt

deb http://mozilla.debian.net/ jessie-backports firefox-release

Nach der Umstellung kann ich dann mit

$ apt-get update
$ apt-get install -t jessie-backports firefox firefox-l10n-de

die aktuelle Firefox-Version samt deutscher Sprachpakete installieren.

Die nun nicht mehr aktuellen Iceweasel-Pakete habe ich noch mit

$ apt-get remove iceweasel

deinstalliert.

Wer weiter Iceweasel nutzen möchte, kann bis zur aktuellen Stable von Debian die originalen Pakete der Distribution nutzen. Dort wird die ESR38 von Iceweasel noch weiter gepflegt. Einen älteren Backport von Iceweasel weiter zu nutzen ist nicht unbedingt empfehlenswert, da hier natürlich keine Fehler und Sicherheitslücken mehr gefixt werden.

Instagram sperrt API-Zugiff auf den User Stream ab dem 1. Juni 2016

Schlechte Nachrichten für Nutzer von alternativen Apps für das Fotonetzwerk Instagram. Im Entwickler-Blog kündigte das zu Facebook gehörende Netzwerk an, den API-Zugriff auf die Endpunkte /users/self/feed und /media/popular abzuschalten. Neue Apps bekommen jetzt schon keinen Zugriff mehr, für bestehende Apps ist am 1. Juni Schluss.

So bekam ich heut in der iOS-App Flow die folgende Meldung nach dem Start angezeigt:

Flow Meldung

Flow schaltet aufgrund der Änderung ab sofort alle kostenpflichtigen Features für alle frei, am dem 1.6. wird die App nicht mehr funktionieren.

Nach der Ankündigung, den Stream in Zukunft nicht mehr chronologisch, sondern nach einem Algorythmus zu sortieren, ist dies ein weiterer tiefer Einschnitt bei der Nutzung des sozialen Netzwerks.

Meiner Meinung nach keine schöne Entwicklung, da die Nutzer hierdurch unnötig bevormundet werden. Was meint ihr dazu?

Ein wenig Kosmetik

Im nächsten Monat wird mein kleiner Blog hier tatsächlich schon 10 Jahre alt. Grund für mich, im Vorfeld des "Jubiläums" ein wenig an der Optik zu schrauben.

So habe ich das Template auf das "Next"-Theme von Matthias umgestellt. Dieses ist an das bisher hier genutzte Standardtemplate "2k11" angelehnt, ist aber grundlegend modernisiert.

Offensichtlich ist, dass ich mich von der dreispaltigen Ansicht verabschiedet habe. Auch möchte ich mal eine Schrift mit Serifen ausprobieren, da solche Schriften sich nach meinem Empfinden etwas besser am Bildschirm lesen.

Die bisherigen Seitenleistenelemente sind weiterhin vorhanden, allerdings nun alle in der rechten Seitenleiste.

Die Änderungen sind nicht radikal. Ich hoffe, dass euch die neue Optik gefällt. Wenn es irgendwo hakt oder etwas komisch aussieht, lasst es mich bitte in den Kommentaren wissen.

Twitter Client Oysttyer mit kleinem Update

Vor kurzem berichtete ich über den Twitter Client Oysttyer, der aus einem einzelnen Perl-Skript besteht und das Twittern auf einer Textkonsole ermöglicht.

Jetzt gab es ein kleines Update, dass einige Verbesserungen und Fehlerbehebungen mitbringt.

Changes in version 2.6.1:

  • Add the ability to share tweets via direct message with the /qdm command (Work towards of 2.7 milestone)
  • Use the Twitter account in the prompt instead of oysttyer when showusername is true.
  • Add ':large' to Twitter image URLs when largeimages is true.
  • Add a space between tweets when doublespace is true.
  • Fixed an issue where retweeted tweets displayed the wrong timestamp.
  • Fixed an issue where tco were not destroyed in threads
  • Display link to video file instead of link to video thumbnail in tweets
  • Display video files in /entities
  • Bring /entities back into Twitter TOS compliance and make it only open tco links (I.e. make it behave worse. Sorry)
  • Add tab expansion for like and retweet (missed from 2.5.1)

Interessant finde ich besonders den neuen Parameter "doublespace", der eine Leerzeile zwischen die einzelnen Tweets zaubert. Das macht den Stream nach meiner Meinung besser lesbar.

So sieht der Stream ohne "doublespace" aus:

oysttyer ohne ds

Und so mit:

oysttyer mit ds

Mir gefällt das so wesentlich besser, weshalb meine .oysttyerrc jetzt so aussieht:

# Die Daten für meine erstellte Twitter-App
oauthkey=XXXXX
oauthsecret=XXXXXX
# Farbe für ansifähige Terminals einschalten
ansi=1
# Neue Zeilen in Tweets erlauben
newline=1
# Nach 120 Zeichen umbrechen (je nach Bildschirmgröße verwenden)
wrap=120
# Pflicht, sonst geht die Twitter-API nicht
ssl=1
# Nutzung des Echtzeit-Streamings
dostream=1
# Beim Start auf neue Version prüfen
vcheck=1
# Leerzeile zwischen den Tweets
doublespace=1

Ich bin gespannt, was die nächsten Versionen von Oysttyer noch so bringen. Zum Updaten wird einfach die aktuelle Version von Github gezogen und die oysttyer.pl mit der neuen Datei überschrieben.

BBUGKS-Live #7

BBUGKS-Live Logo

Endlich haben Oliver und ich es geschafft, eine neue Folge unseres Podcasts aufzuzeichnen. In der ersten Folge in 2016 berichten wir über unser Treffen im Februar. Leider ist auch das Thema "Quo Vadis BlackBerry?" wieder mal ein Thema. Schlechte Nachrichten wie z.B. auch die Einstellung von WhatsApp für BlackBerry lassen uns besorgt über die Zukunft unserer Lieblingsgadgets reden.

Viel Spaß beim Hören der siebten Folge, die ihr drüben im BBUGKS-Blog anhören oder herunterladen könnt.

Und wer den Podcast abonnieren möchte, findet den RSS-Feed hier.

Musik: Words

Weil ich gerade in so einer Stimmung bin.

Tired of words, words, words
Don't want 'em anymore
Words, words, words
How could I deal with them before?
It's like they've taken over and there's nowhere I can hide
What good do they bring? Never fixed anything
So as you can see that's why I'm not speaking
Words.

Bitte schön.

tweetbackcheck