Export nach MusicBuddy

Ich hoffe, dass jemand von Euch das Program MusicBuddy kennt. Damit kann man vorhandene Medien relativ einfach katalogisieren.
Für Medien, die es online nicht findet, bietet es auch einen CSV-Import an. Da scheitere ich aber grandios :woozy_face:
Der Delimiter ist ein Komma und kein Semikolon, aber das kriege ich gerade noch so hin. :nerd_face:.

MP3Tag gibt beim Export jeden Titel einzeln aus, aber MusicBuddy erwartet diese in einer "Schlange", die zur Verwirrung auch noch "Tracks" heißt.
siehe MusicBuddy_export_Bsp.rtf (3.8 KB)

Meine kaum vorhandenen RegEx-Kenntnisse reichen nicht wirklich dafür aus.
Hat jemand einen Lösungsvorschlag, oder soll ich evtl. einen "Vorschlag"-Thread dazu aufmachen?

Vielen Dank im Voraus!

Das ist ja ein ziemlich spezielles Gemisch aus kommaseparierten Werten und JSON-ähnlicher Track-Auflistung.

So sieht das gemäss Deinem RTF aus:

Title,Artist,"Artist (Last, First)",Series,Volume,Online Videos,Labels,Catalog Number,Country,Release Year,Original Release Year,Tracks,Versions,Genres,Styles,Composers,Orchestras,Conductors,Performers,Writers,Production Companies,Producers,Description,Edition,Media,Format,Content Type,Length,Vinyl Size,Vinyl Speed,List Price,Language,Packaging,Number Of Volumes,UPC-EAN13,Favorites,Rating,Physical Location,Loaned To,Date Loaned,Borrowed From,Date Borrowed,Returned from Borrow,Not Owned Reason,Quantity,Cover Condition,Condition,Recommended By,Date Added,User Supplied ID,User Supplied Descriptor,Tags,Purchase Date,Purchase Place,Purchase Price,Notes,discogs Release ID,Category,Wish List,Previously Owned,Uploaded Image URL,Activities
Als Ich Fortging - Die schönsten Rockballaden Vol.3,Various,Various,,,,,,,1991,,"[{""title"":""A1. Karussell - Als Ich Fortging"",""duration"":249},{""title"":""A2. City - Casablanca"",""duration"":271},{""title"":""A3. Mona Lise - Tränen"",""duration"":248},{""title"":""A4. Arnold Fritzsch - Verlierer"",""duration"":213},{""title"":""A5. Silly - Bataillon D'Amour"",""duration"":225},{""title"":""A6. Petra Zieger & Band - Fünf Minuten Bleiben Uns"",""duration"":309},{""title"":""A7. Ines Paulke - The Colour Of My Tears"",""duration"":225},{""title"":""B8. Rockhaus - I.L.D."",""duration"":218},{""title"":""B9. Veronika Fischer & Band - ... Daß Ich Eine Schneeflocke Wär"",""duration"":201},{""title"":""B10. Stefan Diestelmann Folk Blues Band - Der Alte Und Die Kneipe"",""duration"":235},{""title"":""B11. Regine Dobberschütz + Günther Fischer-Sextett - Solo Sunny"",""duration"":186},{""title"":""B12. Anett Kölpin + Datzu - Leben Auf Verdacht"",""duration"":271},{""title"":""B13. Peter Maffay + Herbert Dreilich + Karat - Über Sieben Brücken Mußt Du Gehn"",""duration"":208}]",,Rock,,,,,,,,,,,CD,,,,,,,,,1,4013108850176,0,0.000000,Medienzimmer mittleres Schubfach,,,,,0,,,,,,2022/02/06 17:56:50.842048168,,,,,,,,21358057,Modern,0,0,https://img.discogs.com/EpDjEadtzZRsbYvJyO8ROSd2Cxc=/fit-in/600x599/filters:strip_icc():format(jpeg):mode_rgb():quality(90)/discogs-images/R-10188909-1501009689-8915.jpeg.jpg

Das dürfte nicht ganz einfach werden...

Gibt es diesen MusicBuddy nur für Apple oder auch für Windows?

Warum denn einfach, wenn es auch kompliziert geht :smile:
Soweit mir bekannt ist, nur für Apple (dort allerdings für iOS und als Universal auch für MacOSX.

Habe aber sonst nicht wirklich eine Library-App gefunden, mit der man auf die Schnelle per Barcode oder Onlinesuche die vorhandenen Medien katalogisieren könnte...

Einen solchen Export kriegt man meiner Meinung nach nur schwer "auf gut Glück" hin. Da ich keine Apple-Geräte besitze, kann ich MusicBuddy nicht installieren und meine Export-Versuche vor einer Veröffentlichung nicht selber testen.

Deshalb klinke ich mich hier aus und überlasse das Thema anderen Forums-Teilnehmern.

Spätestens ab hier wird es vermutlich unmöglich, sinnvoll etwas zu exportieren, da es viele Künstler, Titel und Alben gibt, die ein Komma im Text haben - damit müsste die Feldzuweisung durcheinander geraten.

Meiner Ansicht nach kam da aber auch nicht ein einziger regulärer Ausdruck vor.

Das müsste man in einem gängigen Textverwarbeiter lösen können, in dem man dann die Absatzmarken durch nichts oder was passendes ersetzt.
Was hast du denn bisher an Export-Script gebastelt?
Und: reden wir hier über die Mac-Version von MP3tag?

Danke erstmal! Es handelt sich um die Windows-Version von MP3Tag. Ich gehe stark davon aus, dass die Mac-Version dieselbe CSV exportiert. Hab ich aber noch nicht probiert.
Das Komma an sich dürfte kein Problem sein, zumindest die Titel sind noch mal extra mit "Gänsefüßchen " maskiert. Außerdem sind um das ganze Feld noch eckige und geschweifte Klammern gezogen.

[{"title":"1. Last Night","duration":367},{"title":"2. Fire On The Water","duration":268},{"title":"3. The Ballroom Of Romance","duration":266},{"title":"4. The Lady In Red","duration":256},{"title":"5. Say Goodbye To It All","duration":323},{"title":"6. The Spirit Of Man","duration":280},{"title":"7. Fatal Hesitation","duration":256},{"title":"8. One Word (Straight To The Heart)","duration":270},{"title":"9. For Rosanna","duration":219},{"title":"10. The Leader","duration":136},{"title":"11. The Vision","duration":193},{"title":"12. What About Me?","duration":183}]

Gebastelt habe ich leider noch nichts, habe noch keinen richtigen Anfang gefunden. Nur als Idee: eine Schleife, in der ich die einzelnen Titel mit den Klammern und Anführungszeichen versehe und eventuell in einem (vorerst) extra Feld aneinander hänge...

das müsste mit
'['$loop(1)[{"title":"%title%","duration":%_length%}},$loopend()']'
gehen.
Damit exportierst du die Daten der markierten Dateien in der Reihenfolge, wie sie in der Dateiliste stehen.

Wenn das man keine böse Überraschung gibt ...

Danke, das hat schon mal geholfen. Jetzt sieht der Abschnitt vorerst so aus:

%album%,%albumartist%,"'['
$loop(1){""title"":""%title%"",""duration"":%_length%},$loopend()']'"

Jetzt kommt aber noch ein Komma hinter dem letzten Titel, dass ich gerne weg haben würde.

Ja, ist klar. Ich würde sagen: Ergebnis in Texteditor laden und letztes Komma löschen.

Das wäre zu einfach :stuck_out_tongue_winking_eye:
Jetzt, wo ich die Feinheiten des Exports kennenlerne ...

Gibt es da nichts von Ratiopharm ^W Florian, so ungefähr: if letzter Satz, tu dies und das?

Nee, ehrlich - das ist der einfachste Weg.

$filename(letztes komma.txt,utf-8)$loop(1)$puts(mm,%_counter%)$loopend()
%album%,%albumartist%,"'['
$loop(1){""title"":""%title%"",""duration"":%_length%}$if($neql(%_counter%,$get(mm)),',',)$loopend()']'"