Stoppt die Vorratsdatenspeicherung! Jetzt klicken & handeln!Willst du auch bei der Aktion teilnehmen? Hier findest du alle relevanten Infos und Materialien:

Das Nokia C7 und Banshee

Bild von admin

Neulich legte ich mir ein Smartphone zu, wobei meine Wahl auf das Nokia C7-00 fiel. Das C7 ist meiner Meinung nach das eleganteste Smartphone. Lediglich das betagte Symbian³ wird von immer weniger aktuellen Diensten unterstützt. Und wieder beginnt die Jagd nach der besten Lösung, um ein Gerät mit OpenSource-Programmen respektive Linux zusammen arbeiten zu lassen.

In diesem Artikel soll es darum gehen, den Music Player Banshee beizubringen, diverse Inhalte auf das C7 zu übertragen. Dabei spielen für mich folgende Punkte eine Rolle:

  • beliebige Formate müssen in ein Format konvertiert werden, welches das C7 lesen kann, vorzugsweise mp3
  • Playlisten sollten auf das C7 übertragen werden können
  • Cover-Images sollen für Songs und Alben angezeigt werden
Nokia C7-00 vorbereiten
Damit Banshee das C7 als PMP erkennt, muss eine Datei .is_portable_player im Stammverzeichnis des C7 angelegt werden. Das C7 kann eine MicroSD-Karte nutzen, um Inhalte dort zu speichern. Ich benutze die 8GB der zusätzlichen Karte als Speicher für Medien. Die Karte wird unter Linux (Ubuntu 10.10 LTS) unter /media/microsd/ eingebunden, somit erstelle ich eine Datei /media/microsd/.is_audio_player mit folgendem Inhalt:
audio_folders=Music/
playlist_path=Playlists/
playlist_format=audio/mpegurl
output_formats=audio/mp3
folder_depth=1
cover_art_file_type=jpeg
cover_art_file_name=cover.jpg
cover_art_size=300
name="Nokia C7-00"

  • audio_folders spezifiziert die Ordner, in denen die Audiodateien abgelegt werden. Mehrere Ordner werden durch "," getrennt
  • output_formats spezifiziert den MIME-Type des Audio-Formats, welches das C7 beherrscht. Für mich kommt der Konsistenz wegen nur das MP3-Format in Frage, da das freie OGG-Format nicht unterstützt wird.
  • playlist_path spezifiziert den Ordner unterhalb des "audio_folders", in dem Playlisten abgelegt werden. Diese Funktion funktioniert mit Banshee nicht. Hier muss ich mir was anderes überlegen
  • playlist_format spezifiziert den MIME-Type des Playlisten-Formats
  • folder_depth spezifiziert die Verzeichnistiefe, die von Banshee angelegt wird, wenn Audio-Inhalte übertragen werden. Eine Tiefe von 1 legt lediglich einen Unterordner aus der Kombination "Interpret - Albumtitel" an. Das ist wichtig, wenn es darum geht, Coverart zu benutzen.
  • cover_art_type spezifiziert den Image-Typ des Cover-Images
  • cover_art_file_name spezifiziert den Dateinamen des Cover-Images. Abgelegt wird die Datei immer in dem Verzeichnis, in dem auch die Audiodatei liegt
  • cover_art_size spezifiziert die Größe des Bildes in Pixeln. Die Angabe ist immer die längste Seite des Bildes.
  • "name" gibt den Namen des Gerätes an, der von Banshee angezeigt werden soll.
Weitere Informationen gibts hier[1].

Mit Einstecken des C7 per USB und dieser Datei im Stammverzeichnis wird das C7 in Banshee als PMP erkannt.

Jetzt kann man problemlos Audio-Inhalte aus der eigenen Sammlung auf das C7 übertragen. Wenn Audiodateien mit MP3-fremden Format darunter sind, wird vor der Übertragung ein Konvertierungsprozess angestoßen, der die Dateien in das angegebene mp3-Format konvertiert.
Ein Rechtsklick auf den Eintrag des C7 in der Seitenleiste und Klick auf Geräteeigenschaften zeigt nochmals die Details. Unter anderem kann man den bevorzugten Audiokonverter (bei mir nur LAME) und die zu nutzende Bitrate auswählen. Weiterhin wird ersichtlich, dass das Gerät nicht als Playlisten unterstützendes Gerät erkannt wird.

"Playlisten" auf das C7 übertragen
Um Playlisten zu erstellen, nutze ich das MP3-Tag Genre. Auf dem C7 hat man die Möglichkeit Musikstücke nach Genre zu gruppieren und abzuspielen. Da ich das Genre-Tag nicht wirklich benutze, um meine Musiksammlung zu organisieren "mißbrauche" ich diesen Tag, um mir Playlisten zu erstellen. Es sei erwähnt, dass durch diese Methode ein Musikstück nur in genau einer Playliste vorhanden sein kann. Diese Einschränkung zwingt das MP3-Tag auf, das lediglich ein Genre zuweist.
Jedoch kann ich mit dieser Einschränkung leben.

Seinen Playlisten in Banshee ein Genre zu zuweisen ist sehr einfach. Man lässt sich die Titel einer Playliste anzeigen, markiert alle Titel und wählt im Kontextmenu Titelinformationen bearbeiten.
Im Feld "Genre" gibt man den Namen der gewünschten Playliste ein und betätigt das Symbol dahinter für Alle Genres auf diesen Wert setzen.

Anschließend kann man die Stücke auf das C7 übertragen. Die Tag-Daten von Musikstücken, die sich bereits auf dem Gerät befinden können nicht mehr editiert werden.

Cover-Art anzeigen
Das C7 bezieht seine Cover-Bilder direkt aus dem entsprechenden Tag der MP3-Datei. Da Banshee das generell kein Einbetten von Cover-Images in Audiodateien vornimmt, muss das von Hand nachgeholt werden. Zumindest unterstützt uns Banshee hierbei dadurch, dass es die definierten Image-Dateien bereits in den entsprechenden Ordnern anlegt; wie oben definiert.
Ein Kommandozeilen-Tool übernimmt die Arbeit und die Bash sorgt dafür, dass wir nicht soviel schreiben müssen ;)

Als erstes installieren wir das MP3-Tag-Tool eyeD3:

sudo aptitude install eyed3

Nun begeben wir uns in den Ordner, der das C7 eingebunden hat, navigieren in den Music-Ordner und führen dort folgenden Befehl aus:
while read dir; do \
cd "$dir"; echo "Processing $dir"; test -e cover.jpg && \
eyeD3 --remove-images *.mp3 1>/dev/null && \
eyeD3 --add-image=cover.jpg:FRONT_COVER *.mp3 1>/dev/null; \
cd ..; done < <(ls)

Mit diesem Befehl gehen wir in jeden Unterordner (folder_depth=1), prüfen, ob es eine Cover-Image-Datei "cover.jpg" (cover_art_file_name=cover.jpg) gibt, und wenn dies zutrifft, entfernen wir alle bereits vorhandenen Cover-Tags und fügen das "cover.jpg" als Front-Cover zur mp3 hinzu. Wenn wir jetzt den Media Player auf dem C7 die Musikbibliothek aktualisieren lassen, müssten die neuen Musikstücke mit Coverbildchen angezeigt werden und die Genreliste enthält unsere definierten Playlisten.

Fertig!

Nachtrag
In der Banshee-Version 1.9 soll die Unterstützung von Coverbildern in Audio-Dateien nativ sein. Somit sollte der letzte Schritt zeitnah wegfallen.

[1]http://www.floccinaucinihilipilification.net/wiki/index.php/.is_audio_player_file_format

Trackback URL for this post:

http://www.geruechtekueche.de/trackback/440

Kommentare

Bild von admin

case insensitive globbing

In meiner Musiksammlung befinden sich auch MP3s, deren Dateiendung groß geschrieben ist. Also in der Form
sometrack.MP3
Damit diese Dateien bei der beschriebenen Cover-Art Einbindung auch erfasst werden, muss die Bash auf case-insensitives Datei-Globbing eingestellt werden:
shopt -s nocaseglob
anschließend zeigt ein ls *.mp3 auch Dateien mit großgeschriebener Dateiendung .MP3