Playlist erstellen für RNS315 (MJ2011/MJ2012)

VW Touran 1 (1T)

Hallo @,

mein Touri kommt wohl Mitte September, aber dieses Warten macht "Langeweile bei mich zu Hause" 🙄
Warum also, wenn es schon keine Betriebsanleitung zu studieren gibt, nicht wenigstens Playlisten für´s RNS315 erstellen.
Dies wurde hier im Forum schon x-mal diskutiert, ich konnte aber (für mich) nichts Brauchbares finden.

So mein Plan:
a) ich gehe direkt an die API von iTunes (ist am Mac trivial, kann ich aber auch mal mit .net (C#) für die WinOS-Leute probieren)
b) ich extrahiere aus der iTunes-DB meine Playlisten in ein .m3u-Format und schreibe sowohl die Playlist als auch die zugehörige Ordnerstruktur (incl. Files natürlich) auf die SD. Dabei konvertiere oder besser gesagt berücksichtige ich diese üblen Sonderzeichen (ä, ü, ö, ß …), so dass die Listen auch korrekt abgespielt werden können.

Wie gesagt, habe noch kein Gerät zu Testen - aber Zeit! Kann mir hier im Forum bitte jemand folgende Fragen beantworten:

Für die Geräteversionen RNS315 (MJ2011/MJ2012) sollten die Playlisten (jeweils im root-Verzeichnis) wie folgt aufgebaut sein:

a) einfache Playlist unterstützt ???

/Bohemian Rhapsody.mp3
/Pop/myFolder/Walk Of Life.mp3
usw.

b) erweiterte Playlist möglich ???

#EXTM3U
#EXTINF:221,Queen - Bohemian Rhapsody
/Bohemian Rhapsody.mp3
#EXTINF:473,Dire Straits - Walk Of Life
/Pop/myFolder/Walk Of Life.mp3
usw.

Anmerkung:
1) erweiterte Playlist wäre mir natürlich lieber, dann sollte im Display auch <Interpret> - <Titel> erscheinen.
2) insbesondere eure Erfahrungen mit Sonderzeichen wären für mich von Interesse.
3) natürlich kann iTunes Playlisten auch direkt exportieren, dann kommt aber so etwas dabei raus:
#EXTINF:233,?úber den Wolken - Reinhard Mey
/Users/uups998/Music/iTunes/iTunes Media/Music/Reinhard Mey/Die gro?üen Erfolge/09 UÃàber den Wolken.mp3

L.G.
uups998

6 Antworten

Hallo,

ich habe gerade im Caddy-Forum ein Thema "Playlisten-Formate" erstellt, dann dachte ich mir: suche ich mal im ganzen VW-Forum.

http://www.motor-talk.de/.../rns-315-playlisten-formate-t4290182.html

hast du schon eine Lösung gefunden?

Wie hast du die Umlaute berücksichtigt?

Ich bin mit der API etwas überfordert (da kenne ich mich nicht aus), aber die Playlisten lassen sich ja auch als Unicode Text exportieren.

LG
Bernd

Hallo Bernd,

ja, das Problem konnte ich lösen. Die Details poste ich am Abend. Jetzt muss ich erst mal ins Büro...Griechenland braucht neues Geld 🙁

So, hier eine Möglichkeit um Playlisten direkt aus iTunes heraus auf das RNS315 zu bringen (nur MacOS):

1) Das Script (Anlage) in den Ordner „<user>/Library/iTunes/Scripts/“ kopieren
2) iTunes starten und die gewünschte Playlist selektieren
3) In der Menueleiste von iTunes (zwischen „Fenster“ und „Hilfe“) kann das Script dann aufgerufen werden
4) Den Dialogboxen folgen: Zielordner festlegen (bzw. neuen erstellen)
5) Den Namen der Playlist übernehmen oder einen neuen vergeben (so wird es später im RNS315 angezeigt)
6) Export starten
7) Ordnerstruktur (also m3u-File und die Musikordner) auf die SD-Card kopieren

Ach ja, wenn du wissen willst was im Script steht (man mag ja keine Trojaner) einfach mit dem AppleScript-Editor öffnen.

hier aber auch noch mal der Code:

===========================================
property |linefeed| : ASCII character 10
property show_status : false -- Flash the shuffle button to show that the script is still running
set listemitIDs to ""

try
-- Zielordner wählen und Mac-OS Notation (🙂 auf DOS (/) ändern
set f to choose folder with prompt "Speicherort für das m3u-File und die Musikstücke (.mp3):"
set fin_mac to f as string
set fout to findReplace(":", "/", fin_mac)
-- display dialog "fin_mac: " & fout & " fin_ms: " & f

with timeout of 1800 seconds
tell application "iTunes"
activate
set the playlist_text to "#EXTM3U" & |linefeed|
if (class of front window is browser window) or (class of front window is playlist window) then
copy name of view of window 1 to playlist_name
set the default_output to playlist_name & ".m3u" as string
set the target_file to (choose file name with prompt "Name & Speicherort für das m3u-File:" default name default_output default location (f)) as string
set oldtid to AppleScript's text item delimiters
set AppleScript's text item delimiters to ".m3u"
set base_file to text item 1 of target_file
set AppleScript's text item delimiters to oldtid

tell playlist playlist_name
set the track_count to the count of tracks
end tell
-- Playliste auswerten --> .mp3-Files kopieren und Playlist formaieren
repeat with z from 1 to the track_count

tell track z of playlist playlist_name
copy {duration} to {trackdauer}
copy {artist} to {interpret}
copy {name} to {titel}
copy {genre} to {dbgenre}
copy {location} to {songLocation}
set mp3name to my trackname(songLocation as string, ":"😉
end tell

-- mp3-Files kopieren
tell application "Finder"
set newfolder to dbgenre as string
if not (exists folder newfolder of f) then
make new folder at f with properties {name:newfolder}
end if
set zielordner to (f as string) & (newfolder as string)
-- display dialog zielordner
set quelle to songLocation
set ziel to zielordner
copy file quelle to folder ziel
end tell

set the playlist_text to the playlist_text & "#EXTINF:" & (trackdauer as integer) & "," & interpret & " - " & titel & |linefeed| & "/" & dbgenre & "/" & mp3name & |linefeed|

end repeat


-- m3u-File kopieren
set thePath to (target_file) as string
set fRef to (open for access file thePath with write permission)
set eof fRef to 0
write playlist_text to fRef
close access fRef

else
display dialog "Please select a playlist first." & return buttons {"OK"} default button 1
end if
end tell
tell application "Finder"
activate
close every window
open folder f
display dialog "Exportvorgang wurde erfolgreich beendet :-)"
end tell
end timeout

on error error_message number error_number
tell application "iTunes"
if the error_number is not -128 then
beep
display dialog error_message buttons {"Cancel"} default button 1
end if
end tell
end try

on trackname(theString, theDelimiter)
set {od, text item delimiters} to {text item delimiters, theDelimiter}
set returnValue to text item -1 of theString
set text item delimiters to od
return returnValue
end trackname

on findReplace(findText, replaceText, sourceText)
try
tell application "Finder"
set ASTID to AppleScript's text item delimiters
set AppleScript's text item delimiters to findText
set sourceText to text items of sourceText
set AppleScript's text item delimiters to replaceText
set sourceText to "" & sourceText
set AppleScript's text item delimiters to ASTID
return sourceText
end tell
end try
end findReplace
===========================================

Gruß
uups998

wow! danke sehr, werde ich so rasch wie möglich ausprobieren. Also kann das RNS315 offensichtlich doch .m3u Dateien lesen, oder?

zwei Fragen hätte ich noch zum Script:
- wenn zwei Playlisten teilweise die selben Lieder beinhalten, werden diese dann doppelt in das Zielverzeichnis kopiert?
- müssen alle Lieder .mp3 sein, oder funktioniert das Script auch mit .m4a ?

Ähnliche Themen

Zitat:

Original geschrieben von Comfortfan


wow! danke sehr, werde ich so rasch wie möglich ausprobieren. Also kann das RNS315 offensichtlich doch .m3u Dateien lesen, oder?

zwei Fragen hätte ich noch zum Script:
- wenn zwei Playlisten teilweise die selben Lieder beinhalten, werden diese dann doppelt in das Zielverzeichnis kopiert?
- müssen alle Lieder .mp3 sein, oder funktioniert das Script auch mit .m4a ?

Hallo,

zu 1: nein, das Dateisystem kann nicht gleichnamige Dateien in einem Ordner verwalten. Das Script wird mit einer Fehlermeldung beendet. Wenn du Musikstücke mehrfach in den Pl's hast solltest du in unterschiedliche Ordner exportieren und dann alles auf der SD-Card zusammen führen. (so schlau könnte das Script natürlich auch sein, dieser Fall wurde damals aber nicht von mir berücksichtigt)

zu 2: ja klar, der Pl ist es egal welches Format du wählst. Ist ja nur die ToDo-Liste
dein RNS315. Und ja, mein Gerät spielt die . m4a Files ab. In jedem Fall nutzen und nicht nach .mp3 konvertieren - klingt 1000mal besser.

Gruß

alles klar, danke vielmals!

Deine Antwort
Ähnliche Themen