ubuntuusers.de

21. März 2010

Nach dem Test von Lekhonee, habe ich mich noch nach Alternativen umgesehen. Jörg hat ja in seinem Blog schon BloGTK näher betrachtet. Bei der weiteren Suche bin ich noch auf Drivel gestoßen.

Drivel ist ein in GTK geschriebener Client, der folgendes beherrscht:

Benutzung von Blogger, xmlrpc, Movabletype, Drupal, WordPress, ATOM-basierte Blogs
Erweiterte Formatierungen (fett, kursiv, durchgestrichen, hoch- und tiefgestellt, Liste etc.)
Einfügen von Bildern
Einfügen von Links
Einfügen von Umfragen
Rechtschreibprüfung

Drivel ist wesentlich ausgereifter als Lekhonee, außerdem unterstützt es eine größere Anzahl von Blogsoftware. Um WordPress einzubinden muss man Movabletype auswählen und folgende Adresse hinterlegen:
http://blog.wordpress/xmlrpc.php

In Zukunft werde ich unterwegs Drivel verwenden :) (Dieser Eintrag ist mit Drivel entstanden)

Drivel


BloGTK ist ein Editor für verschiedene Weblogs. Man kann mehrere Blogs verwalten, und so z.B. offline Artikel schreiben/editieren oder sich alte Artikel durchlesen (es gibt auch noch andere ähnliche Tools, z.B. lekhonee). Derzeit kann er in Version 2.0 noch nicht allzuviel, z.B. kann man noch keine Multimedia-Dateien (Bilder, Musik, Videos) verwalten, aber alles “schrift”-mäßige wird unterstützt. Des Weiteren ist die Version 2.0 noch nicht im Ubuntu-Upstream angekommen. Installieren kann man die Version aber dennoch.

BloGTK ist ein Editor für verschiedene Weblogs. Man kann mehrere Blogs verwalten, und so z.B. offline Artikel schreiben/editieren oder sich alte Artikel durchlesen (es gibt auch noch andere ähnliche Tools, z.B. lekhonee).

Derzeit kann er in Version 2.0 noch nicht allzuviel, z.B. kann man noch keine Multimedia-Dateien (Bilder, Musik, Videos) verwalten, aber alles “schrift”-mäßige wird unterstützt. Des Weiteren ist die Version 2.0 noch nicht im Ubuntu-Upstream angekommen.

Installieren kann man die Version aber dennoch. Zuerst besorgt man sich den tar-Ball bei Launchpad und entpackt ihn. Anschließend installiert man die fehlenden Abhängigkeiten per

sudo apt-get install python-gnome2 python-gnome2-extras python-gdata python-webkit python-feedparser

Jetzt wechselt man mit Terminal in das frisch entpackte Verzeichnis blogtk-2.0 und tippt dort

sudo make install


ein. Fertig, ihr findet BloGTK nun im Menü “Internet”.

Ach ja, natürlich ist dieser Beitrag hier mit BloGTK geschrieben.
Dabei ist mir dann auch direkt aufgefallen, dass alle spitzen Klammern (also > und <) einfach gelöscht werden, und der Beitrag dann entsprechend unbrauchbar wird… Evtl. sollte ich doch lieber lekhonee ausprobieren…

Ein Leser von OMG!Ubuntu! hat eine Paketquelle  für Karmic Koala erstellt, indem sich die Light-Themes befinden.

Um die Paketquelle zu aktivieren und die Themes zu installieren, müssen folgende Befehle in ein Terminal eingegeben werden:

Install Ubuntu 10.04 Light themes für Ubuntu 9.10

  • sudo add-apt-repository ppa:paglia/paglia-ppa
  • sudo apt-get update
  • sudo apt-get install light-themes ubuntu-mono

Die beiden Themes Ambiance und Radiance können nun über das Erscheinungsbild aktiviert werden.

Quelle: Omg!Ubuntu!

Auf der Suche nach einem schlanken, schnellen und funktionellen Webbrowser für mein Netbook bin ich auf Midori (jap. für grün) gestoßen.

Midori ist ein GTK-Webbrowser der auf Webkit aufsetzt und Tabbedbrowsing unterstützt. Die Oberfläche ist Firefox nachempfunden, kommt aber aufgeräumter daher. Man kann ihn auch mit Werbefilter, Formularvervollständigung, Mausgesten oder Cookie-Verwaltung erweitern.

Funktionen

# Vollständige Integration in GTK+ 2
# Schnelle Darstellung mit WebKit
# Reiter, Fenster und Sitzungsverwaltung
# Flexibel einstellbare Internetsuche.
# Unterstützung für Benutzerskripte und -stile.
# Intuitive Lesezeichenverwaltung.
# Anpassbare und erweiterbare Oberfläche.

Ich bin sehr zufrieden mit Midori, er reagiert angenehm schnell auf meinem Netbook, der Seitenaufbau geht auch blitzschnell. Alles in allem eine sehr gelungene Software und definitiv für alte Hardware bzw. Netbooks zu empfehlen. :)

Midori mit Erweiterungen


Wie schon verschiedentlich geschrieben, gebe ich Dropbox (mit dem Link gibt es 250 MB zusätzlich) den Vorzug vor Ubuntu One. Das liegt neben anderen Gründen vor allem daran, dass Dropbox Clients für nahezu alle Betriebssysteme bietet. Mein Hauptkritikpunkt an Ubuntu One ist, dass noch nicht einmal ein Client für alle Ubuntu Derivate (Kubuntu, Xubuntu, Lubuntu) existiert. Gelesen habe ich allerdings, dass für Kubuntu eine Implementation in Arbeit ist.

Anmerkung: Auch das ist natürlich ein fremd gehosteter Dienst, daher würde ich weder Dinge, die privat sind dort hineinwerfen, noch darauf vertrauen, dass der Dienst immer existiert. Ich warte sehnsüchtig darauf, dass iFolder endlich für alle benutzbar wird. Aber jetzt sehe ich gerade, dass Novell iFolder als Produkt verkaufen möchte.

Ich hatte länger schon einmal vor, den Dropbox-Client auf dem root-Server zu installieren, um auf einfache "Art und Weise" Dateien hin- und herschieben zu können.

Dabei habe ich mich auf einen komplizierten Marsch durch Dokumentation eingestellt, dabei war die Lösung ziemlich einfach (funktioniert auch bei anderen Systemen, die nur eine Kommandozeile haben): Dropbox Linux CLI.
- Install Dropbox In An Almost Text-Based Linux Environment
- How To Install Dropbox In An Entirely Text Based Linux Environment (experimental)

Zusammengefasst:

- Python-Skript dbcli.py herunterladen.
- Skript mittels
chmod 700 dbcli.py
auführbar machen.
- DOS-Zeilenenden löschen mit
tr -d "\r" < dbcli.py > dbcli2.py
(oder dos2unix benutzen)
- Dropbox mit
./dbcli2.py install x86
oder
./dbcli2.py install x86_64
installieren.
- Den ausgegebenen Link aufrufen.
- Das Programm mit Ctrl-C beenden.
- Später bei Bedarf mit
nohup $HOME/.dropbox-dist/dropboxd &
starten.
- Fertig.

Ich habe mir ein kleines Skript namens
check_dropbox.bash
geschrieben, welches im fünf-Minuten-Takt prüft, ob der Client noch läuft und ihn im Fehlerfall neu startet:

#!/bin/bash

if ! ps -fu dirk | grep -vE "grep|check" | grep -q dropbox
then
        nohup /home/dirk/.dropbox-dist/dropboxd &
fi
Für Android gibt es eine App namens VLC Remote welche aus dem Market heraus installiert werden kann (das offizielle Projekt ist unter http://code.google.com/p/android-vlc-remote/ zu finden). Nachdem man VLC Remote installiert hat muss man nur noch VLC (+ Webinterface) starten:
vlc --extraintf=http --fullscreen --http-album-art --qt-start-minimized
Das ganze kann natürlich auch als Autostart eingetragen werden um gleich nach der Anmeldung ausgeführt zu werden. Wie das funktioniert erfährt man unter http://wiki.ubuntuusers.de/autostart. Und schon kann man VLC bequem fernsteuern.

Weitere Informationen gibt es unter:
http://wiki.ubuntuusers.de/VLC

Für Android gibt es eine App namens VLC Remote welche aus dem Market heraus installiert werden kann (das offizielle Projekt ist unter http://code.google.com/p/android-vlc-remote/ zu finden). Nachdem man VLC Remote installiert hat muss man nur noch VLC (+ Webinterface) starten:

vlc –extraintf=http –fullscreen –http-album-art –qt-start-minimized

Das ganze kann natürlich auch als Autostart eingetragen werden um gleich nach der Anmeldung ausgeführt zu werden. Wie das funktioniert erfährt man unter http://wiki.ubuntuusers.de/autostart. Und schon kann man VLC bequem fernsteuern.

Weitere Informationen gibt es unter:
http://wiki.ubuntuusers.de/VLC

20. März 2010

Wer öfter Unterwegs mit seinem Net-/Notebook einen Blogeintrag schreiben möchte, ohne beim späteren online-gehen die Formatierungen, Links etc. einfügen zu müssen, sollte sich lekhonee mal näher ansehen.

Mit dieser Software können Blogeinträge auch ohne bestehende Internetverbindung verfasst und später wenn eine Verbindung zum WWW steht hochgeladen werden. Folgende Features sind bis jetzt implementiert:

*Verwenden von Tags
*Verwenden von Kategorien
*Anlegen von Kategorien
*Speichern von Artikel-Entwürfen
*Formatierung (fett, kursiv)
*Einfügen von Links
*Einfügen von Bildern
*Bearbeiten der letzten Artikel

Noch nicht implementiert wurde:

*Erweiterte Formatierung (Code, Blockquote etc.)
*Einfügen von Multimediadateien (Videos / Musik)
*Nur WordPress wird unterstützt
*Und die restlichen Features…

Dieser Artikel wurde mit lekhonee geschrieben, für die Erstellung eines Blogeintrages Unterwegs ist die Software in Ordnung. Wegen der fehlenden Features werde ich gucken ob es nicht noch andere Blogclients gibt, die WordPress besser unterstützen.

The post is brought to you by lekhonee v0.7


Mit einem Tag Verspätung haben die Entwickler von Ubuntu, die erste Beta von Lucid Lynx (Ubuntu 10.04) veröffentlicht.


Diesesmal hat sich Optisch an Ubuntu sehr viel getan. Das in die Jahre gekommene Human-Theme ist durch ein neues modernes Theme ersetzt worden.”Light” nennst sich dieses und kommt mit zwei verschiedenen Themes: Ambiance und Radiance.

Ambiance versetzt den Desktop in ein tiefes Schwarz (Standard-Theme) und Radiance bietet einen hellen Desktop. Die Fensterbuttons die in der Vergangenheit sich auf der Rechtenseite gezeigt haben sind nach Links gewandert. Maximieren, Minimieren, Schließen ist nun die neue Reihenfolge der Buttons.
Der Bootscreen sowie das Anmeldefenster wurden komplett überarbeitet.
Systemweit dominiert nun die Farbe Viollett, sowie einige Icons: Desktop anzeigen, Computer und Erscheinungsbild wurden mit Violletten Tupfern bestückt. Auch das Ubuntu-Logo und die Website von Ubuntu wurde aufgefrischt.

Die Live-CD bootet von nun an ohne ohne Einstellmöglichkeit und Rückfrage bis hin zum Desktop und bietet dann erst die Möglichkeit, die Sprache, Tastaturbelegung und die Installationsvariante zu Wählen.

Diese starken Veränderungen wurden viel diskutiert und kritisiert, so dass Mark Shuttleworth sich zu Wort meldete.

Lucid kommt mit Kernel 2.6.32, glibc 2.11, X.org 7.5 mit dem X-Server 1.7, Gnome 2.30 Beta, KDE 4.4, Firefox 3.6, OpenOffice 3.2. Hal (Hardware Abstraction Layer) wurde komplett aus dem System entfernt, was das Booten deutlich beschleunigen soll. Der neue Nvidia OpenSource-Treiber Nouveau wird Standardmässig die Nvidia-Karten antreiben.

Wie angekündigt ist die Standardsuchmaschiene bei Ubuntu nun Yahoo. Die Google-Suche kann nach Wunsch wieder aktiviert werden.In den Medienspieler Rhythmbox wurde der  Ubuntu One Music-Store Musik integriertm so dass es nun mäglich ist Musik im MP3-Format zu kaufen. Nautilus bietet nun die Möglichkeit das Fenster zu Teilen, so dass Daten einfacher verwaltet werden können.

Ubuntu 10.04 ist eine LTS-Version. D.h. Canonical gewährleistet drei Jahre Updates für die Desktopvarianten, die Serveredition wird fünf Jahre mit Updates versorgt.

Hier befindet sich in Zukunft der Musik-Store von Ubuntu Die neuen Themes Ambiance und Radiance geben Ubuntu 10.04 eine neue Optik Radiance bietet einen hellen Desktop Ambiance sorgt für eine dunkle Optik Nautilus mit geteiltem Fenster

Downloads


Ubuntu 10.04 kann in folgenden Versionen als ISO-Datei heruntergeladen werden:

Hinweis: Die erste Beta wird ausdrücklich nicht zum Produktiveneinsatz empfohlen, da einige Fehler Datenverlust verursachen können



Links:

Seit gestern ist SaleZ Lite nun auch im AppCatalog verfügbar (VideoDemo gibt’s hier). Ehrlich gesagt, hat mich das etwas positiv überrascht, da ich die App erst vor ca. 4 Tagen eingereicht hatte. Bei ‘BibleZ for webOS’ musste ich da schon fast 2 Wochen warten! An dieser Stelle möchte ich auch noch mal allen Betatestern danken, die mit geholfen haben, Fehler zu finden.

In der Zwischenzeit ist auch die Arbeit an SaleZ (Pro) weiter voran geschritten. Mittlerweile kann man auch Festpreisartikel direkt vom Gerät kaufen (“SofortKaufen”), die Bewertungen des Verkäufers einsehen, Suchvorschläge erscheinen, wenn man einen Suchbegriff eingibt und seit heute kann man auch seine eBay Nachrichten lesen. Für nächste Woche steht die Suchfunktion auf dem Programm. Da ist noch einiges zu machen!

Kommentar hinzufügen

Im dritten Teil dieser kleinen Serie schauen wir uns mal das Zusammenspiel von GStreamer und einer TV-Karte oder Webcam an.
GStreamer ist ein Multimedia-Framework, das in vielen Programmen Anwendung findet – etwa in Totem, Exaile, Banshee, OGG Convert oder Ubuntus zukünftigem Standard-Videoeditor PiTiVi. Sogar in meinem Pyjama ;) . Gerade unter GNOME ist GStreamer das Media-Framework schlechthin.

Entsprechend sollte es eigentlich nicht wundern, dass GStreamer ohne Probleme auf die V4L2-Schnittstelle zugreifen kann. Im Rahmen dieses Eintrages werde ich auch  versuchen, ein paar Grundlegende Fähigkeiten von GStreamer zu beschreiben – es ist anfangs gar nicht so leicht, sich in dieses Gebiet einzuarbeiten.

Videowiedergabe

Grundsätzlich kann man bei GStreamer  3 Arten von Elementen unterscheiden: Source-Elemente kümmen sich um die Eingabe und lesen beispielsweise eine Datei. Filter-Elemente verarbeiten diese Daten, indem sie diese etwa kodieren. Die sogenannten Sink-Elemente kümmern sich schließlich um die Ausgabe und schreiben die Daten beispielsweise in eine Datei. Schauen wir uns einfach mal diesen Befehl zur Videowiedergabe an:

gst-launch-0.10 v4l2src device=/dev/video0 ! video/x-raw-rgb,width=640,height=480 ! ffmpegcolorspace ! xvimagesink

Hier wird schon deutlich, dass GStreamer in Pipes organisiert ist. Das Programm gst-launch-0.10 erlaubt es dabei, selbst komplexe GStreamer-Pipes zu testen, ohne tatsächlich irgendwelchen Code schreiben zu müssen. Hier werden die einzelnen Elemente mit Rufzeichen miteinander verbunden. Eigentlich ist dieser Befehl aber nur zum Testen gedacht: Für richtige Programme bietet GStreamer andere Schnittstellen, so dass auch Laufzeit-Interaktion möglich ist.

Im obigen Beispiel liest das Plugin v4l2src Daten aus der angegebenen Quelle. Diese werden dann an das nachfolgende Element weitergegeben – und in diesem Fall auf 640×480 Pixel skaliert. Das nächste Element ffmpegcolorspace konvertiert die Videodaten in den richtigen Farbraum und xvimagesink gibt schließlich das Bild aus.

Das Ganze mit Ton

Bisher haben wir leider nur Video und keinen Ton. Mit folgendem Befehl lässt sich das ändern:

gst-launch-0.10 v4l2src device=/dev/video0 ! video/x-raw-rgb,width=640,height=480 ! ffmpegcolorspace ! xvimagesink osssrc device=/dev/dsp ! osssink

Hier wird eine zweite Pipe eingerichtet, die sich um die Audioausgabe kümmert. Das Element osssrc liest nun Audiodaten vom Geät /dev/dsp. In diesem Fall haben wir keine Filter-Elemente zwischengeschaltet – die Daten werden sofort an den osssink weiter- und damit ausgegeben. Die beiden Abschnitte dieses Befehls sind dabei voneinander völlig unabhängig. Sowohl die Pipe

v4l2src device=/dev/video0 ! video/x-raw-rgb,width=640,height=480 ! ffmpegcolorspace ! xvimagesink

als auch die Pipe

osssrc device=/dev/dsp ! osssink

sind vollständig lauffähig. Nicht unterschlagen werden soll, dass es sei bei dem “video/x-raw-rgb…”-Element nicht im strengen Sinne um ein Element handelt: Intern wird es erst zu einem Capsfilter-Element umgewandelt. Für uns ist das hier aber zunächst nicht weiter wichtig.

Einmal speichern bitte!

Wer die Audio- und Videodaten nun speichern möchte, sollte sich folgenden Befehl einmal näher ansehen:

gst-launch-0.10 v4l2src device=/dev/video0 !  queue ! video/x-raw-rgb,width=640,height=480 ! ffmpegcolorspace ! theoraenc ! queue !  oggmux name=mux osssrc device=/dev/dsp ! queue ! audioconvert ! vorbisenc ! queue ! mux. mux. ! queue ! filesink location=video.ogg

Wie gehabt werden hier zunächst Videodaten ausgelesen, skaliert und farbkonvertiert. Das neue Element theoraenc kodiert die Daten. Wie wir später noch sehen werden, kann hier genauer spezifiziert werden, in welcher Qualität die Kodierung erfolgen soll. Das Element oggmux packt die kodierten Daten schließlich in einen OGG-Datenstrom, der den Namen “mux” erhält.
Der zweite Abschnitt dieser Pipeline wird durch das Source-Element osssrc eingeleitet. audioconvert wandelt die Raw-Audiodaten zur Weiterverarbeitung um, vorbisenc komprimiert das Ganze mit dem OGG-Vorbis-Encoder. Die Daten aus diesem Vorgang fließen über ein Queue-Element in den OGG-Muxer, den wir zuvor ja “mux” getauft haben. Das war der zweite Abschnitt unserer Pipeline.
Im letzten Teil werden nun die Daten aus “mux” – wieder über einen Queue – an filesink übergeben. Wie der Name schon andeutet, kümmert sich dieser Sink darum, die Daten in eine Datei zu gießen. Das etwas irritierende Element “! mux. mux. !” besteht also tatsächlich aus zwei Elementen: Das erste “mux” fungiert als Ziel für die komprimierten Audiodaten. Da “mux” ja der Name des OGG-Muxers ist, werden diese Audiodaten hier also mit den Videodaten “gemultiplext” – sprich: Zusammen in einen Datenstrom gepackt. Das zweite “mux” leitet einen neuen Abschnitt unserer Pipeline ein: Es fungiert hier also als Source-Element und gibt die Daten an das filesink weiter.

Die  Queues sind übrigens immer da gefordert, wo ein nachfolgendes Element potenziell “langsamer” ist, das aktuelle: Um Aussetzer in Ton und Bild zu vermeiden, wird so schlicht ein Puffer zwischengeschaltet. Besonders, wenn ihr feststellt, dass eine GStreamer-Pipeline in eurer Programm-Implementierung stuckt und springt, fehlen sehr wahrscheinlich Queues an der richtigen Stelle.

Sehen, hören und speichern

Jetzt wollen wir die ganzen Einzelschritte einmal zusammenbringen. Folgender Aufruf sieht schon wirklich mächtig aus:

gst-launch-0.10 v4l2src device=/dev/video0 ! tee name=videoout ! queue ! video/x-raw-yuv,width=640,height=480 ! queue  ! theoraenc quality=30 ! muxout.

osssrc device=/dev/dsp ! tee name=audioout ! queue ! audio/x-raw-int,rate=44000 ! queue ! audioconvert ! vorbisenc !  muxout.

oggmux name=muxout ! filesink location=media2.ogg

videoout. ! queue ! ffmpegcolorspace ! xvimagesink

audioout. ! queue ! osssink

Zur besseren Übersicht habe ich die jeweiligen Abschnitte einmal voneinander getrennt. Eigentlich ist das aber eine zusammenhängende Befehlszeile!

Der erste Abschnitt ähnelt den bisher besprochenen Abschnitten. Neu ist das Element tee: Es dupliziert den Stream – wie das tee in der Linux-Konsole. So können wir später über den Namen “videoout” auf eine Kopie des Videostreams zurückgreifen. Nach einem tee-Element ist immer ein Queue-Element erforderlich. Es folgen weitere bekannte Elemente und schließlich wird der Stream an ein Element mit dem Namen “muxout” übergeben. Das es sich dabei nur um den Namen eines anderen Elementes handelt, erkennt man an dem nachgestellten Punkt. Für uns ist hier erstmal nur wichtig, dass wir den Stream gewissermaßen “zwischengeparkt” haben.

Im zweiten Abschnitt wird parallel für den Audiostream verfahren. Die meisten Elemente sind bekannt, auch hier wird eine “Kopie” mit tee erstellt und auch dieser Stream wird in “muxout” zwischengeparkt.

Der dritte Abschnitt bringt Licht ins Dunkel: “muxout” ist der OGG-Mixer. Er multiplexiert Audio- und Videodaten und gibt das Resultat an den filesink weiter, der das Ganze speichert. Bis hierher ähnelt das Beispiel sehr dem vorherigen Beispiel in “Einmal speichern bitte!”. Neu ist lediglich das Element tee und die Verwendung des Multiplexers. Wann und wo man den Multiplexer “definiert”, ist hier aber eigentlich egal: Man kann auch – wie hier – zunächst einen Stream an einen  Element-Namen leiten und diesen erst später einem Element zuweisen.

In Abschnitt 4 wird der Video-Stream wie gewohnt ausgegeben. Neu ist lediglich, dass hier nicht eine Datei oder ein Gerät als Source dient, sondern eben das Element “videout.“, das wir zuvor mit tee definiert als Kopie des Streams definiert haben.

Im Abschnitt 5 wird mit “audioout.” parallel verfahren.

Fazit

GStreamer stellt Einsteiger meines Erachtens zunächst vor große Hürden. Das einfache Wiedergeben eines schnöden Videos kann dabei durchaus schon einige Kopfschmerzen bereiten. Was aber wirklich begeistert, ist die Vielzahl an Möglichkeiten, die man mit GStreamer hat. So ist es sogar ohne große Probleme möglich, Bluebox-Effekte mit GStreamer zu erzeugen – und das finde ich schon recht imposant. Weiterhin profitiert man als Programmierer von der Vielzahl der unterstützten Codecs. So ist es sicher nicht verwunderlich, dass unter GNOME so viele Programme auf GStreamer zurückgreifen.

So, den ersten Ansatz meines Python/GStreamer/GTK/V4L-TV-Tools habe ich jetzt bei Launchpad unter GPLv3 veröffentlicht. Auch wenn das Programm noch in den Kinderschuhen steckt, würde ich mich über Mithilfe und Hinweise freuen.

Besonders suche ich nach einer Möglichkeit, einen Videostream, den ich mit nachfolgender Pipe aufzeichne, gleichzeitig mit einem dritten Programm abzuspielen.

gst-launch-0.10 v4l2src device=/dev/video1 ! tee name=videoout ! queue ! videorate ! video/x-raw-yuv,width=640,height=480,fps=25         ! queue  ! xvidenc bitrate=300000 ! queue ! muxout.   osssrc device=/dev/dsp ! tee name=audioout ! queue ! audio/x-raw-int,rate=44100,channels=1,width=16 ! queue ! audioconvert ! lame ! muxout.  avimux name=muxout ! identity sync=TRUE ! filesink location=video.avi

Mir ist durchaus klar, dass ich eben das mit dieser Pipe umsetzen könnte:

gst-launch-0.10 v4l2src device=/dev/video1 ! tee name=videoout ! queue ! videorate ! video/x-raw-yuv,width=640,height=480,fps=25         ! queue  ! xvidenc bitrate=300000 ! queue ! muxout.   osssrc device=/dev/dsp ! tee name=audioout ! queue ! audio/x-raw-int,rate=44100,channels=1,width=16 ! queue ! audioconvert ! lame ! muxout.  avimux name=muxout ! identity sync=TRUE ! filesink location=video.avi videoout. ! queue ! ffmpegcolorspace ! xvimagesink audioout. ! queue ! fakesink

Darum geht es aber eben nicht: Ich möchte mit GStreamer ein Video speichern und dieses – während “hinten” sozusagen noch geschrieben wird – zeitversetzt wiedergeben. Dummerweise wird der Video-Stream anscheinend von GStreamer asynchron geschrieben und erst beim Beenden mit den nötigen Meta-Daten versehen. Hier gab es Hinweise auf das identity-Element mit aktivierter Sync-Option. Allerdings war das in meinem Fall nicht hilfreich.

Update:
Da es schon ein Projekt mit dem Namen pyTV gibt, habe ich mein Programm vorerst ooaTV getauft.

Unter Windows benutzte ich öfters ein Tool namens Joe (zu finden unter http://toolsandmore.de/Central/Produkte/Software/Datei-Tools/Joe/) mit welchem viele Dateien bequem umbenannt werden konnten. Unter Ubuntu suchte ich dann ein ähnliches Tool und wurde auch fündig. Die Alternative heißt in diesem Fall Krename und kann über den Paketmanager installiert werden. Dabei scheint Krename auch einige Funktionen zu besitzen welche Joe nicht besaß :-)

Weitere Informationen gibt es unter:
http://wiki.ubuntuusers.de/Krename

Unter Windows benutzte ich öfters ein Tool namens Joe (zu finden unter http://toolsandmore.de/Central/Produkte/Software/Datei-Tools/Joe/) mit welchem viele Dateien bequem umbenannt werden konnten. Unter Ubuntu suchte ich dann ein ähnliches Tool und wurde auch fündig. Die Alternative heißt in diesem Fall Krename und kann über den Paketmanager installiert werden. Dabei scheint Krename auch einige Funktionen zu besitzen welche Joe nicht besaß :)

Weitere Informationen gibt es unter:
http://wiki.ubuntuusers.de/Krename

19. März 2010

Ich habe so ziemlich alle Medienplayer in Ubuntu durchprobiert und bin letztlich bei Songbird hängen geblieben. Alles läuft soweit ganz gut… naja, nicht wirklich. Wenn die Medienlibrary zu groß ist, dann ist die Suchfunktion super langsam (2-20 Minuten!!!), und manchmal schmiert Songbird sogar ganz ab. Das Problem ist seit weit einem Jahr bekannt, aber eine “offizielle” Lösung ist noch nicht gefunden. Ich habe irgendwo im Netz gelesen, dass der Bug mit SQLite zusammenhänge, und dass Amarock ähnliche Probleme hat, wenn man ihn nicht mit MySQL nutzt.

Naja, lange Rede: ich hab die Suchfunktion bei mir deutlich beschleunigen können. Hierzu öffnet man in Songbird einen neuen Tab (STR + T), trägt in die Adressleiste about:config ein und sucht die Stelle songbird.dbengine.cacheSize. Hier ist standardmäßig der Wert 200 eingetragen. Ich habe diesen Wert einfach mal auf 5200 erhöht (entspricht in etwa 80MB), und seit dem geht die Suche hier innerhalb weniger Sekunden über die Bühne.

Ich habe so ziemlich alle Medienplayer in Ubuntu durchprobiert und bin letztlich bei Songbird hängen geblieben. Alles läuft soweit ganz gut… naja, nicht wirklich. Wenn die Medienlibrary zu groß ist, dann ist die Suchfunktion super langsam (2-20 Minuten!!!), und manchmal schmiert Songbird sogar ganz ab. Das Problem ist seit weit einem Jahr bekannt, aber eine “offizielle” Lösung ist noch nicht gefunden. Ich habe irgendwo im Netz gelesen, dass der Bug mit SQLite zusammenhänge, und dass Amarock ähnliche Probleme hat, wenn man ihn nicht mit MySQL nutzt.

 Laptop Display (1): Abschalten mit vbetool xset X Watt vbetool unix ubuntu strom ssh shell server rc.local planetuu open source notebook monitor linux laptop hardware green IT green energie dpms debian bios bash admin Ein Notebook kann wegen seines geringen Stromverbrauchs auch als kleiner Heimserver fungieren, der mit SSH ferngewartet wird. Wenn die Administration des Servers über Secure Shell stattfindet, dann läuft das Display des Laptops den ganzen Tag und verbraucht völlig unnötig Energie.

Doch wie kann man das Display des Laptops abschalten?

Ein erster Ansatz wäre xset. Mit …

xset dpms force off

… kann man auf der grafischen Oberfläche den Monitor abschalten. Doch zwei Haken hat die Sache: Erstens erfordert dies eine grafische Oberfläche auf dem Server und die ist auf den meisten Servern nun mal nicht vorhanden. Und zweitens schaltet sich das Display nach der nächsten Mausberührung oder dem nächsten Tastendruck wieder an (und ich kann hier nur für meinen Jaunty Jackalope sprechen).

Die Lösung für einen Server ohne X heißt vbetool. Dieses kleine Programm führt BIOS Code aus, um den Status von Hardwarekomponenten zu ändern. Bei Ubuntu und Debian lässt sich das Tool über die Paketquellen installieren:

sudo apt-get install vbetool

Greife ich nun über meine Ubuntukiste per SSH auf den Server zu, schaltet der folgende Befehl den Monitor komplett ab (doch Vorsicht: wer dies ohne Fernzugriff tut, muss damit rechnen einen kalten Neustart machen zu müssen.  [EDIT: warum eigentlich? Sich einzuloggen und den Befehl vor dem geistigen Auge einzutippen geht eigentlich auch ohne, dass man es sieht. Getestet - funktioniert ]). So, hier also der Befehl, um das Display abzuschalten:

vbetool dpms off

Nun ist Schicht im Schacht. Auch Tasteneingaben oder Mausbewegungen können das Display nun nicht mehr aus dem Schlaf reißen. Den nächsten Neustart überlebt die Einstellung allerdings nicht. Um das Display im laufenden Betrieb wieder einzuschalten, geben wir über SSH ein:

vbetool dpms on

Um das Display auch nach jedem Neustart außer Gefecht zu setzen, editieren wir die Datei /etc/rc.local (Ubuntu/Debian) und fügen den Abschaltebefehl “vbetool dpms off” einfach hier ein. Dann wird der Befehl bei jedem Wechsel in einen Multiuser-Runlevel (und dazu gehört auch der Neustart) ausgeführt.

Wieviele Watt bzw. Euro man mit dieser Methode sparen kann, werde ich in einem meiner nächsten Artikel beleuchten.

[UPDATE: Die von mir gemessene Stromersparnis betrug ca. 4 Watt, gemessen mit dem Haushaltsmessgerät von Brennenstuhl. ]

Verwandte Artikel:

Was Hardware im Standby verbraucht
Wer braucht mehr Strom: Ubuntu oder Vista?

Infos über Laptopakkus aus dem Verzeichnis /proc

11 Kommentare Permalink | © 2010 by Netz 10 | Tags: , , , , , , , , , , , , , , , , , , , , , , , , ,

Ähnliche Artikel

  1. WLAN (WPA2 mit PSK) manuell konfigurieren
  2. Strom Report (#1): Ubuntu, Suse, Vista
  3. Dateisystemlabel anzeigen und anpassen
  4. Stromverbrauch bei Laptop-Akkus

Natürlich kann man ein Nokia-Handy auch direkt mit Ubuntu synchronisieren, wenn man das möchte. Aber warum einfach, wenn es auch ein bisschen umständlicher geht: Die Synchronisation von Kontakt- und Kalenderdaten über Google. Doch es lohnt sich, besonders wenn man mehrere PCs besitzt, das Handy verliert, oder das Betriebssystem — aus welchen Gründen auch immer — neu aufsetzen muss. In solchen Fällen hat man sofort wieder alle Kontakt- und Kalenderdaten zur Hand. Wenn man sowieso schon ein Google-Konto besitzt und dort alle Kontakte und Termine gelagert hat, liegt die Entscheidung dafür mehr als nah. Den praktischen Online-Kalender kann man außerdem über das ICAL-Format wunderbar in Gnome einbinden, so dass die Einträge in Evolution und im Uhr-Applet des Gnome-Panels zu sehen sind. Voraussetzung dafür ist ein Handy mit S60-Benutzeroberfläche, zum Beispiel das Nokia E71, ein Google-Konto und ein Gnu/Linux-Betriebssystem mit Gnome-Desktop, z.B. Ubuntu.

Nokia und Google

Falls man kein Google-Konto hat, kann man es jetzt angelegen. Für das Handy benötigt man das Nokia-Tool Mail for Exchange. Dazu wählt man auf der Download-Seite sein Nokia-Modell aus und lädt sich die Software herunter. Über Bluetooth oder dem mitgelieferten USB-Kabel kann man die Datei auf das Telefon übertragen und anschließend installieren. Nun fehlen noch die Einstellungen: Dazu Mail for Exchange öffnen und “Profil bearbeiten” unter “Optionen” wählen.

Als Exchange-Server trägt man m.google.com ein. (Sollte es beim Synchronisieren zu einem Verbindungsfehler kommen, hilft es vielleicht, ein “http://” vor “m.google.com” zu setzen, aber erstmal sollte man es so probieren.) Bei Sichere Verbindung nimmt man am besten Ja, als Zugriffspunkt seinen Netzanbieter oder einfach Internet. Mit der rechten Softkey-Taste, über der verwirrenderweise Zurück steht, bestätigt man die Änderungen.

Unter Anmeldeinfo trägt man unter Benutzername die eigene vollständige Emailadresse ein, entweder xyz@gmail.com oder xyz@googlemail.com, als Kennwort das eigene Passwort bei Google und unter Domäne — tja, hier scheiden sich die Geister. Manche sagen, dass man hier nichts einzutragen braucht, oder gmail.com. Ich musste google.com eintragen, damit die Synchronisierung klappt.

Mit Zurück wieder betätigen. Bei den restlichen Einstellungen sollte man darauf achten, dass zur Zeit nur Kalender und Kontakte fehlerfrei synchronisiert werden können, Aufgaben und E-Mail dagegen nicht. Daher sollte bei Aufgaben synchron. und bei E-Mail synchronisieren jeweils Nein eingetragen sein, bei Kalender synchron. und bei Kontakte synchron. dagegen Ja.

Abschließend gleicht man den Google-Kalender mit dem Kalender auf dem Handy ab, indem man “Synchronisieren” auswählt.

Danach kann man dem Mail for Exchange bei der Arbeit zusehen, wie es — zum Beispiel — den Kalender synchronisiert.

Google und Ubuntu

Um den Kalender jetzt unter Ubuntu einzubinden, benötigt man den Link zur URL der ICAL-Datei. Die findet man heraus, indem man auf den kleinen Pfeil neben den eigenen Kalender klickt und die Kalendereinstellungen öffnet.

Danach klickt man unter Privatadresse auf das Icon von ICAL und kann aus dem Popup-Fenster die URL zum Kalender herauskopieren.

Den Kalender-Link von Google kann man am einfachsten und schnellsten über den Befehl evolution-webcal im Terminal einbinden:

/usr/lib/evolution-webcal/evolution-webcal http://www.google.com/calendar/ical/christian[...]/basic.ics

Sollte evolution-webcal nicht im Verzeichnis /usr/lib/ liegen, findet man es mit folgendem Befehl im Terminal:

whereis evolution-webcal

Abschließend kann man noch den Intervall, nach dem die Daten aktualisiert werden sollen, und die Farbe auswählen. Nachdem der Dialog geschlossen ist, erscheinen die Einträge sofort in Evolution und im Uhren-Applet des Gnome-Panels.

Um Google Contacts einzubinden, klickt man in Evolution auf Kontakte, öffnet dann mit der rechten Maustaste ein Kontext-Menü und wählt Neues Adressbuch aus.

Danach nimmt man die benötigten Einstellungen vor, in etwa so, wie sie auf dem Bildschirmfoto unten zu sehen ist:

Um die E-Mail-Vervollständigung zu nutzen, damit die E-Mail-Adresse, die man in das Empfänger-Feld einer E-Mail schreibt, automatisch vervollständigt wird und nicht mühselig abgetippt werden muss, macht man unter Bearbeiten und Einstellungen in Kontakte bei Auto-Vervollständigung ein Häkchen und wählt mit einem weiteren Häkchen das Adressbuch aus, das dazu benutzt werden soll.

Was ist mit Thunderbird?

Mit der Thunderbird-Erweiterung Lightning und dem Add-on Provider for Google Calendar funktioniert das Einbinden eines Google-Kalenders recht einfach. Man benötigt aber den Link zur XML-Datei vom Google-Kalender (der befindet sich gleich links neben dem Link zur ICAL-Adresse), die man dann als Kalender-Adresse einträgt. Dazu öffnet man unter Kalender einen Neuen Kalender. Nach dem Klick auf “Weiter” wählt man im nächsten Fenster Netzwerk aus, da der neue Kalender ja bei Google gespeichert werden soll. Im nächsten Fenster wählt man dann auch Google Calendar und fügt neben Adresse: den Link zur XML-Datei ein:

In den weiteren Fenstern bestätigt man mit dem Passwort noch den Zugriff auf das Google-Konto und wählt einen Namen für den Kalender aus. Nach Abschluss werden die Einträge sofort in Lightning angezeigt.

Mit dem Add-on Google Contacts lassen sich die Kontakte ebenfalls mit Thunderbird synchronisieren, allerdings benötigt man dazu Thunderbird ab Version 3.0, der unter Ubuntu 9.10 extra installiert werden muss. Es erkennt automatisch das eigene Google-Konto, falls es eingerichtet ist, und legt ein neues Adressbuch an.

Power Plugs
Attribution-NonCommercial License by Gone-Walkabout

Heute mal  etwas in eigener Sache. Der Artikel hat zwar (leider) nicht soviel mit Ubuntu zu tun, aber vielleicht interessiert es doch den ein oder anderen auif dem UU Planeten.Vor Ewigkeiten hatte ich mal 2 Plugins für WordPress geschrieben und ich muß sagen, daß das eine recht angenehme Sache ist – auch für Leute die sich eher selten mit Skriptsprachen rumschlagen. Die englischsprachige Doku ist sehr gut, die Methoden logisch und einfach zu implementieren. Da ich massive Probleme mit Twitter und meinem Hoster hatte (hier und auch da) entschloss ich mich mal wieder ein Plugin zu schreiben. Zu finden ist das gute Stück namens schmie_twitter im Plugin Directory. Die Funktionen beschränken sich auf ein Minimum:

  1. Auf Twitter veröffentlichen bei neuem Post
  2. Auf Twitter veröffentlichen bei Aktualisierung eines Posts
  3. Twitternachricht vorkonfigurieren. (Hallo bei %blog gibt Neuigkeiten: %Post, %url)
  4. Url kürzen (ein paar Dienste inkl. bit.ly vorhanden).

Der Clou an der Sache ist, dass man sowohl per HTTP  mit Twitter reden kann, als auch per Email (Twittermail); wenn der Hoster Twitter ausgesperrt hat. Was noch fehlt ist ein wenig i18n ansonsten wars das. Wenn  Interesse an einem Artikel über Pluginprogrammiererei besteht oder jemand etwas auf der Seele hat wegen schmie_twitter einfach einen Kommentar hinterlassen.

Update: jetzt auch schon fast mit Identi.ca Support. Super

Soeben habe ich ein paar Anpassungen in einem File einer Internetplattform vorgenommen.
Als ich die Daten dann mit VI auf der Konsole geöffnet hatte, stand an jedem Ende einer Zeile ein ^M.
Dies kommt daher, dass die Datei unter Windows geschrieben wurde und dadurch ein anderes Fileformat enthält. Dadurch bildet VI jeden Zeilenumbruch durch ein ^M ab.
Wer häufig zwischen den beiden Welten Linux und Windows unterwegs ist, der hat sicher schon oft festgestellt, dass eine unter Linux verfasste Textdatei unter Windows plötzlich keine Zeilenumbrüche mehr hat.

Zuerst habe ich versucht, dieses Überbleibsel der Windows-Welt direkt in VI selbst zu ersetzen:

1
%s/\^M//g

Dies funktionierte leider nicht, wäre ja auch zu schön gewesen.
VI sucht mit diesem Kommando nach den Zeichen ^ und M. Leider ist der Zeilenumbruch aber nur abgebildet als ^M, nicht aber auch als solches abgespeichert, wodurch VI nie etwas finden wird.

Die Lösung schlussendlich war zwar nicht ganz so komfortabel wie direkt per VI, hat aber ihren Zweck voll und ganz erfüllt:

1
perl -p -e 's/\r$//' < windowsdatei > linuxdatei

Natürlich funktioniert das ganze auch für alle Verräter der Linuxwelt (kein Flame, nur Spass) ;)

1
perl -p -e 's/\n/\r\n/' < linudatei > windowsdatei

Mir ist aufgefallen, dass mein gestriges Setup mit Dummy-Adapter und Vergabe der ersten IP-Adresse des Netzes auf das Interface dummy0 nicht die optimale Konfiguration darstellt: Hier wird das alte Setup mit separatem Router 1:1 nachgebaut, was zur Folge hat, dass die drei Adressen für Broadcast, Netz und Gateway nicht für Produktivsysteme nutzbar sind. Das beschriebene Setup ist daher nur sinnvoll, wenn ein Server in zwei Stufen von bridged auf routed umgestellt werden soll.

Beim Neuaufsetzen eines Servers ist es besser, gleich eine PointToPoint-Lösung mit 255.255.255.255-Maske aufzusetzen. Damit können bei einer 29-Bit-Maske (255.255.255.248) acht statt fünf IP-Adressen genutzt werden — satte 60% mehr (bei vier, fünf, oder sechs Bit Masken fällt der Gewinn natürlich kleiner aus). Die Änderungen gegenüber dem Setup von gestern sind, dass dummy0 in der /etc/network/interfaces der dom0 entfällt. In der /etc/xen/xend-config.sxp wird das extern erreichbare Interface eingetragen (in der Regel eth0):

(network-script 'network-route netdev=eth0')
(vif-script     'vif-route netdev=eth0')

Die Netzwerkkonfiguration der domU bekommt nun die primäre IP-Adresse der dom0 als Gateway eingetragen, dazu das Schlüsselwort pointopoint (nur ein ‘t’!) und die “dichte” Netzmaske:

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
        address 172.16.16.114
        netmask 255.255.255.255
        gateway 192.168.1.2
        pointopoint 192.168.1.2
        post-up ethtool -K eth0 tx off

Vielen Dank an…

  • Umstellung Debian Etch mit XEN 3 auf routed …die fleissigen Dokumentatoren im Hetzner-Wiki
  • …den Admin bei 1&1, dessen Default-Setup mit pointopoint auf der primären IP mich dazu anregte, hier nochmal nachzuforschen

Ikhaya-TeamGestern Abend empfing ich die Einführung zum Ikhaya-Team auf ubuntuusers.de. Auf freundliche, humorvolle und vor allem kompetente Art und Weise durfte ich mir einen Überblick zeigen lassen, welches die Aufgaben des Ikhaya-Teams sind. Da laufen ganz spannende und zugleich lebendige Prozesse im Hintergrund ab, ausserdem steht ein recht leistungsfähiges CMS zur Verfügung. Die erfahrenen Jungs vom Team stellten mir die einzelne Schritte vor, um an der Front mitwirken zu können. Mir gefällt die lockere und humorvolle Art, wie die Menschen dort wirken, ohne dabei die Ernsthaftigkeit zu verlieren. Viele der Entscheidungen basieren auf dem demokratischen Verständnis und der gegenseitigen Hilfe und Unterstützung. Mir gefällt das! Übrigens hat das Nachrichten-Portal eine bewegte Geschichte hinter sich.

Dabei konnte ich seit Jahren wieder einmal an einem IRC teilnehmen. Die Art der Kommunikation ist nicht ganz mein Ding, das ist mir zu hektisch und zu unübersichtlich. Dafür ist praktisch jederzeit jemand da, den man etwas fragen kann. Und eine Antwort bekommt man offenbar immer, auch wenn es bloss ein gezielter, augenzwinkender Knie-Schuss ist, weil man Gnome statt KDE nutzt.

Ich freue mich auf die neue Aufgabe, die ich mit all den Ubuntu-Leuten im Team ausführen darf. Ich werde wohl am meisten davon profitieren, denn dadurch kann ich viel lernen und erfahre Neues. Ja, auch alte Säcke dürfen das Recht nutzen, zu lernen. Leider kann ich mir nicht alle Zeit der Welt nehmen, um dort mitzuwirken. Mittlerweile budgetiere ich meine Freizeit am obersten Limit und muss darauf achten, dass meine Familie und insbesondere unser Sohn nicht zu kurz kommen. Es ist eine wunderbare Zeit mit Ruben und die kann man nicht nachholen. Deswegen steht nicht nur im Zweifelsfall meine Familie auf dem Platz zwei, unmittelbar nach meinem Broterwerb. (Das Wort habe ich bei Dirk geklaut.) Und just auf dem Platz drei steht die Community. Ubuntu steht für “Menschsein in der Gemeinschaft” und das ist eine wahre Herausforderung!

Ähnliche Artikel

Beim stöbern in den Wikibooks stieß ich auf das Linux-Kompendium welches unter http://de.wikibooks.org/wiki/Linux-Kompendium zu finden ist. Neben allgemeinen Linux Themen befasst es sich mit den verschiedenen Benutzergruppen wie Systemverwalter, Netzwerker und dem normalen Benutzer.

Auch die unterschiedlichsten Themen wie z.B. der Kernel, die Programmierung oder GNOME werden behandelt. Daneben werden auch andere Dinge wie die juristischen Aspekte von freier Software beleuchtet. Es lohnt sich mal reinzuschauen ;-)