erweiterte tag-felder


#1

ich würde gerne mehr Tag-Felder mit Standardwerten füllen.
Da ich z.B die discnumber im Filenamen-string eingebaut habe nervt 1/1 als Wert total
%artist% - (%year%) %album% @%_bitrate%\%artist% - %album%%discnumber% - $num(%track%,2) - %title%

Da haben wir auch gleich ein weiteres Problem bei variabler Bitrate! mit %_bitrate% kommt dabei natürlich Unsinn raus aber %encodersettings% zeigt mir auch nicht v2 oder v0 - das fänd' ich auch für die Spalten nützlich.

Irgendwelche Vorschläge für den 2. Teil?


#2

eine Antwort hätte ich mir schon gewünscht


#3

Mit $num(%track%,2) erhältst du doch 01 als Wert, egal ob in %track%, 1 oder 01 oder 1/1 steht. Das selbe funktioniert auch bei discnumber: $num(%discnumber%,2)
Du kannst auch $num(%discnumber%,1) nehmen, wenn du hier lieber eine einstellige Zahl hast

Unsinn? Wenn ich micht nicht täusche kommt der Durchschnittswert der variablen Bitrate raus. Du kannst das auch noch weiter kennzeichnen: mit %_VBR% erhältst du also Wert VBR bei variabler Bitrate oder CBR bei konstanter Bitrate. Das lässt sich doch für deine Zwecke nutzen.
Wenn du statt %_VBR% einen $replace(%_VBR%,CBR,) einsetzt, erhältst du nur VBR für variable Bitraten und im Falle von konstanten Bitraten gar keinen Wert.
ungefähr so:
%artist% - (%year%) %album% @%_bitrate%$replace(%_VBR%,CBR,)\%artist% - %album%$num(%discnumber%,2) - $num(%track%,2) - %title%

Ansonsten weiß ich nicht ganz was du mit Standardwerten meinst.
Zu den den encodersettings kann ich dir auch nicht viel sagen, aber hier wird/wurde drüber diskutiert:
show LAME Encoder settings
Encoder and Encoder Settings
Encoded by and Encoder settings


#4

Danke erstmal für die schnelle Antwort.

Mit Standardwerten meine ich das, was man im Optionsmenü unter Tag-Panel/Standardwerte setzen kann. Halt im wesentlichen die Felder, die über dem Coverbild angezeigt werden, nur eben die CD-Nummer nicht.

Wie ich die Zahlen Ein- oder 2-stellig mache ist mir klar. Ich möchte aber nur etwas im CD# Feld stehen haben, wenn es mehrere CDs sind - Bei 1/1 lieber garnix.
Es wäre also absolut ausreichend, wenn ich als Standardwert dort , wie bei den anderen Feldern auswählen könnte.

Könntest du mir bitte etwas näher erläutern, wie dieser $replace Befehl funktioniert?
vielleicht kann ich das so hinbiegen, daß es bei variabler Bitrate VBR und bei konstanter eben die entsprechende anzeigt.
Nochmal zur Erklärung was ich erreichen will:
meine Albumordner sehen etwa so aus: Shellfin - (2010) Secondhand Family @192
mein Formatstring: %artist% - (%year%) %album% @%_bitrate%\%artist% - %album%%discnumber% - $num(%track%,2) - %title%
Bei variabler Bitrate wird der Durchschnittswert in Mp3tag angezeigt, was dadurch, daß jeder Track andere Werte ergibt, auch für jeden unterschiedlichen Wert einen eigenen Ordner erstellt und die entsprechenden Tracks dort aufgeteilt werden, was narürlich unerwünscht ist.
Wenn also Mp3tag nicht in der Lage ist die Encoder-Einstellung zu lesen (z.B. gibt DBpowerAmp aus: Encoder Settings: Variable Bit Rate -V 2 (Standard))
Florian antwortete auf eine entsprechende Anfrage:

Das kann irgendwie nicht ganz stimmen, denn DBpowerAmp unterscheidet sehr wohl zwischen V0 (Extreme), V2 (Standard) und VBR, wenn unbekannte oder individuell eingestellte variable Bitrate verwendet wurde. Selbst der Encoder (z.B. LAME 3.98) wird erkannt, was mir aber wurscht ist, nur die Bitrate habe ich gern im Albumordnernamen. z.B.: Shellfin - (2010) Secondhand Family @v2 (oder eben @v0 oder vbr), natürlich aber alle Files dieses Albums in einem Ordner und nicht für jede (Durchschnits-)Bitrate einen eigenen.
Daß dabei die nicht-audio-files wie .txt und Bilder nachträglich in den von mp3tag erstellten Albumordner verschoben werden müssen ist lästig aber egal. Oder gibt es gar eine Möglichkeit den Ordner, den ich in mp3tag ge-drag&dropped habe (automatisch) umzubenennen anstatt in diesem einen neuen zu erstellen?

UFF, ich hoffe ich habe mich einigermaßen klar ausgedrückt.
Danke im Voraus, Günther


#5

#6

Dir kann geholfen werden:

Extras > Optionen > Tag-Panel > Tag-Feld hinzufügen (der Button mit dem gelben Stern) > DISCNUMBER
(und andere nach Belieben. wie du die jeweils bei Name: nennst ist dir überlassen und hat keine weiteren Auswirkungen)

das geht auch wieder mit $replace:
$replace($num(%discnumber%,1),1,)
Erläuterung: die Funktion heißt: $replace(string,from,to)
string ist: $num(%discnumber%,1)
from ist: 1
to ist:
Wenn also innerhalb des STRINGS der für FROM definierte Wert auftaucht, wird dieser durch TO erstetzt, was in unserem Fall durch heißt es wird ganz gelöscht, weil nach dem zweiten Komma nichts mehr steht.
Siehe auch: http://help.mp3tag.de/main_scripting.html

Ah, jetzt versteh ich, der Wert muss natürlich für das ganze Album gleich sein.
Da kann dir eine $if Funktion helfen:
$if($eql(%_VBR%,VBR),VBR,%_bitrate%)
Erläuterung:
die Funktion heißt: $if(x,y,z) -> if x is true, y is returned, otherwise z.
x ist: $eql(%_VBR%,VBR)
y ist: %VBR%
z ist: %_bitrate%
die eingebettete Funkiton heißt: $eql(x,y) -> returns true, if x equals y.
x ist %_VBR%
y ist VBR
Das heißt wenn der Wert von %_VBR% "VBR" ist, ist das Ergebnis der $eql Funktion "true". Und das wiederum lässt die $if funtion den ersten Wert, also "VBR" einsetzten. Ist der Wert von %_VBR% dageben "CBR" ist das Ergebnis der $eql Funktion "false" und die $if Funktion verwendet den zweiten Wert, also %_bitrate%.

Siehe auch wieder: http://help.mp3tag.de/main_scripting.html

Da gibt es schon etwas:
Die Aktion Tag-Felder formatieren:
Als Feld wählst du: _DIRECTORY
Und als Formatstring alles, was du bisher beim Dateinamen Formatieren vor "" stehen hattest.
Dann wird einfach nur der Namen des Ordners geändert und alle bestehenden Dateien, egal welcher Art, bleiben drinnen. (Nutze ich ziemlich oft.)
Du musst dann allerdings in einem zweiten Schritt die Dateinamen ändern wenn dir das wichtig ist. (Mach ich so gut wie nie, weil innerhalb eines Albums ist das eh meist übersichtlich.)

Zu den Encoder Einstellungen kann ich dir nicht weiterhelfen. Da kenn ich mich nicht aus. DBpowerAmp hab ich auch noch nie benutzt.

EDIT:
Ach ja: sollten beim Formatieren von _DIRECTORY innerhalb eines Ordners verschiedene Werte für ein im Zielnamen vorkommendes Parameter auftauchen (wie bei dir mit %_bitrate%) wird immer der Wert der ersten Datei genommen. Du kannst dir hier also eventuell das ganze $if Zeug sparen, denn die Ordneranzahl vermehrt sich dabei nie.

Und:
Du kannst beim Formatieren von _DIRECTORY auch absolute Pfade verwenden, etwa:
C:\Music\%genre%\%artist%\%artist% - (%year%) %album% @$if($eql(%_VBR%,VBR),VBR,%_bitrate%)


#7

Das habe ich schon dort schon stehen, kann also mit wenigen Klicks das Feld leeren aber ich hätte gern als Standardwert, der wie z.B. im Kommentar-Feld "ripped by.." oder eben bei mir "Doktor420 aka StonerRock" bei jedem Speichern des Tags automatisch gesesetzt wird. Was übrigens interessanterweise nur passiert, wenn man mehr als ein file ausgewählt hat, ansonsten bleibt der alte Inhalt stehen.

SUPER! funktioniert

bliebe noch der o.a. Standardwerte-Teil.
siehe angehängtes Bild



#8

Das geht glaub ich wirklich nicht. Müßte für die Entwickler leicht einzubauen sein.
Dann steht das unter Vorschläge hier ja doch im richtigen Forum.


#9

Vielen Dank an dich für die Kompetenten Erklärungen.
Wahrscheinlich ist mein Vorschlag für die Entwickler (Florian?) nicht anschaulich genug gewesen. Was kann ich noch tun um ihnen diesen Vorschlag (und auch diesen Fortschrittbalken-Fenster näher zu bringen?

--
ciao
Günther


#10

Gern geschehen

Ich denke gar nichts. Ich denke mal das Florian die Vorschläge regelmäßig durchliest und zur Kenntnis nimmt. Und wahrscheinlich hat er auch seine eigene Prioritätenliste an Features die verbessert und neu eingebaut werden sollten.
Ein kurzes Feedback würde ich mir auf meine Vorschläge auch Wünschen. Aber in anbetracht der Tatsache, dass das hier keine komerzielle Software ist und Florian mit seiner Zeit sein Geld auch irgendwo verdienen muss, ist das wohl in Ordnung.

Oder Florian?


#11

Genau so ist es :slight_smile:

Ich versuche eigentlich jeden Beitrag zu lesen, kann aber nicht immer alles berücksichtigen und auf alles eingehen.


#12

Das geht relativ einfach mit einer Aktionengruppe durch die mittels Tag-Felder formatieren die jeweiligen Felder auf Standardwerte gesetzt werden.