Hallo,
ich möchte für meinen Medienserver (ich hoffe, die Bezeichnung stimmt) Kodi, der auf einem Raspberry läuft Wiedergabenlisten erstellen. Kodi erwartet folgendes Format: #EXTCPlayListM3U::M3U #EXTINF:0,01. Carlos Di Sarli - Patotero Sentimental (Mario Pomar)
/home/osmc/Music/40 Grandes Exitos CD1/01 - Patotero Sentimental (Mario Pomar).mp3 #EXTINF:0,02. Carlos Di Sarli - Re Fa Si
/home/osmc/Music/40 Grandes Exitos CD1/02 - Re Fa Si.mp3 #EXTINF:0,03. Carlos Di Sarli - El Recodo
/home/osmc/Music/40 Grandes Exitos CD1/03 - El Recodo.mp3
Die Kopfzeile "#EXTCPlayListM3U::M3U" kann ich zur Not händisch für jede Liste 1x eingeben, die Formatierung für die danach folgenden Titel bekomme ich aber bislang mit mp3tag nicht hin. Kann ich für den Playlist-Export diese Formatierung in den Erweiterten Informationen für die Playlisten definieren, und wenn ja, wie??
Vielen Dank vorab für hilfreiche Tips.
Bitte prüfe Deine Einstellungen in
Datei -> Optionen -> Playlist
im speziellen
Für die Zeile #EXTINF kannst Du die Option "Erweiterte Informationen schreiben" aktivieren.
Im Eingabefeld unter "Erweiterte Informationen schreiben" könntest Du sowas verwenden:
oder
Warum Dein KODI-EXTINF-Format eine Null vor dem Komma schreibt statt die Track-Länge in ganzen Sekunden, weiss ich leider nicht. Mit obiger Angabe sieht die Ausgabe aus Mp3tag so aus:
@ LyricsLover
vielen Dank, mit diesem Hinweis bin ich vorangekommen
@ ohrenkino
klar, diese Windows-Einschränkungen sind mir bekannt , mit einem Texteditor und suchen/ersetzen ging es aber sehr schnell, "G:\" in "/home/osmc/Music/" und "\" in "/" zu ändern.
Ich habe in den Optionen - wie von Dir empfohlen - für die erweiterten Informationen
$num(%track%,2). %artist% - "%title%
eingetragen, anschließend die so generierte Liste mit notepad++ geöffnet und die beiden "suchen/ersetzen"-Routinen durchgeführt. ... und schon konnte die Kodi-App die Playlist öffnen und abspielen.
Dann kommt KODI also mit dem offiziellen Format für .m3u-Playlisten und der Zeile #EXTINF zurecht, z.B. #EXTINF:302,
wobei 302 für 302 Sekunden Länge* des nachfolgenden Tracks gelten und dann die zweistellige Tracknummer gefolgt von einem Punkt und einem Leerschlag, dem ARTIST einem Leerschlag Bindestrich Leerschlag und dem TITLE.
* Diese Längenangabe wird beim erstellen der Playliste automatisch von Mp3tag nach #EXTINF: gesetzt, muss also nicht selber manuell angegeben werden.
Meiner Ansicht nach ist der Bearbeitungsschritt mit einem externen Texteditor überflüssig, wenn die Wiedergabeliste in MP3tag nicht mit der eingebauten Funktion für Wiedergabelisten sondern mit einem Export-script erzeugt wird.
In dem kann per $replace() im Windows Pfad genau die sonst mit dem externen Editor notwendige Ersetzung schon bei der Generierung durchgeführt werden.
Das sieht ja beeindruckend aus
Da ich mich mit den Feinheiten der Skripte aber gar nicht auskenne, verstehe ich nur Bahnhof und habe keine Ahnung, was ich mit dem tollen Vierzeiler anfangen soll....
Das ist ein Export-Script das du in einen neuen Export Strg-E einfügen kannst. Den Beispieltext überschreibst du komplett mit dem Code aus dem Vorschlag.
Ich finde diesen alternativen Vorschlag zur Erzeugung einer Playlist via Export von @ohrenkino auch sehr clever, aus mehreren Gründen.
Kann man damit jeden beliebigen "Header" (erste Zeile) erzeugen. Egal ob nur #EXTINF: oder #EXTCPlayListM3U::M3U oder wie auch immer diese erste Zeile in der Playlist für die Ziel-Anwendungen heissen muss.
Muss eine Umwandlung stattfinden - z.B. von Windows-Pfadangaben mit führendem Laufwerksbuchstaben und Backslashes \ in Unix-Pfade ohne Laufwerksbuchstaben und mit Slashes / - kann man das mit einem einzigen $replace-Befehl erledigen:
Hier wird z.B. der Laufwerksbuchstabe G:\ mit /home/osmc/Music/ ersetzt, was sich sehr einfach an die eigenen Struktur anpassen lässt. Alle vorkommenden Backslashes \ werden mit einem Slash /ersetzt. Damit wird schon an der Quelle die fix-fertig benutzbare Playlist erzeugt. Es ist keine weitere manuelle, externe Bearbeitung mehr nötig.
Man kann dieses Export-Script einfach kopieren und mehrere Varianten bereithalten. z.B. eine Variante mit Pfad-Umwandlung, eine Variante ohne Umwandlung der Pfade. Mehrere verschiedene Laufwerke lassen sich übrigens einfach durch Ergänzung des gleichen $replace() hinzufügen, z.B. mit H:\,/home/irgendwo/sonst, J:\,/noch wo anders/ da der $replace-Befehl bis zu rund 30 suchen-ersetzen-Pärchen aufnimmt.
Was mir aber noch unschön aufgefallen ist: die so generierte Playlist wird nicht so sortiert, wie sie in mp3tag angezeigt wird, sondern hat jetzt folgende Sortierung:
Album1 Titel1, Album2 Titel1, Album3 Titel1, Album1 Titel2, Album2 Titel2, Album2 Titel3, etc
Wenn ich über die Funktion "Playlist" gehe, ist die Sortierung wie angezeigt, erst Album 1 Titel 1-n, dann Album 2 Titel 1-n etc. Vermutlich muß der $loop-Befehl noch angepasst werden, wenn nicht gar 2 verschachtelte loops erforderlich sind.