Um automatisch herauszufinden, ob es sich um ein Album oder eine Compilation handelt, wäre es toll, wenn ich auf die Tag-Daten des vorherigen und des nächsten Files zugreifen könnte.
Ich stelle mir das so vor:
$prev(tagname)
$next(tagname)
tagname: Selbstredend; der Tag des vorherigen/nächsten Files den ich abfragen möchte
Mit diesen beiden Funktionen könnte ich folgende Action erstellen:
Wenn bereits ein Band-Tag gesetzt ist, ändere nichts. Fertig.Wenn der Albumname dieses Files mit dem Albumnamen des letzten Files übereinstimmt, dann setz den Band-Tag dieses Files auf den Wert des Band-Tags des letzten Files. Fertig.Wenn der Albumname dieses Files mit dem Albumnamen des nächsten Files übereinstimmt, und der Artist-Tag dieses Files vom Artist-Tag des nächsten Files abweicht, setze den Band-Tag dieses Files auf 'Various Artists', sonnst setze den Band-Tag dieses Files auf den Wert des Artist-Tags dieses Files. Fertig.
@mbaa3: Danke, aber eine vollautomatisierte Variante ist damit leider nicht möglich. Und das ist das einzige was akzeptieren möchte.
@gnor: Ich denke, wenn man die (beim Export erlaubten) Funktionen zum Setzen und Lesen von Variablen auch in den Action gebrauchen kann, ist das schon ein grosser Schritt. Das ist ja das, was du meinst, oder habe ich dich falsch verstanden?
Aber damit kann ich immernochnicht auf die Daten des nächsten Tracks zugreifen, was vor allem beim ersten Track wichtig wäre.
Das stimmt allerdings, man kann aber zur Not einen zweiten Durchgang gestalten der andersherum läuft.
Mich stört, dass man, wenn es $next und $prev gäbe, immer noch nicht auf den übernächsten Tag usw. zugreifen kann. Man bräuchte also eine Funktion die von der Position des Lieds im Vergleich zu den anderen unabhängig ist (deswegen auch das flexibler).
Mhm.... Man könnte noch einen Parameter einführen. $next(artists,2) -> der Artist des übernächsten Tracks. (Das selbe mit $prev()).
Da gibts doch schon die Funktion $meta(). Diese um einen Parameter für die Position zu erweiter würde auch Sinn machen. zB $meta(artist,0) -> Artist dieses Tracks. $meta(artist,-1) -> Artist des Tracks vorher. $meta(artist,3) -> Artist des dritt-nächsten Tracks.
Mit einem weiteren Parameter könnte man noch bestimmen, ob die Position relativ oder absolut gelten soll. Ein negativer Wert bei absolut würde dann vom End her zählen. Das würde dann so aussehen: $meta(artist,-1,true) -> Der letzte Artist in der Liste der zu bearbeitenden Tracks. $meta(artist,-1,false) -> Der Artist des vorherigen Tracks.