FFMPEG-Tracknummer nicht geschrieben


1

Wie kann ich die Tracknummer schreiben, wenn ich eine Audiodatei mit ffmpeg neu codiert? Derzeit habe ich den folgenden Befehl:

ffmpeg -i "in.wav" -acodec libmp3lame -aq 0 -id3v2_version 3 -write_id3v1 1 "out.mp3"

Der einzige Tag, der nicht geschrieben wird, ist die Spurnummer.


Sie sollten immer Ihre vollständige ffmpeg-Konsolenausgabe mit einschließen.
— llogan

Antworten:


2

Das Metadaten Parameter:

ffmpeg -i "in.wav" -acodec libmp3lame -aq 0 -metadata track="X/Y" -id3v2_version 3 -write_id3v1 1 "out.mp3"

Woher X ist die Nummer des Tracks aus Y Gesamtzahl der Tracks.

’-Metadata [: metadata_specifier] Schlüssel = Wert (Ausgabe, pro Metadaten) ’

Legen Sie ein Metadaten-Schlüssel / Wert-Paar fest.

Ein optionaler metadata_specifier kann angegeben werden, um Metadaten für Streams oder Kapitel festzulegen. Weitere Informationen finden Sie in der Dokumentation zu -map_metadata.

Diese Option überschreibt Metadaten, die mit -map_metadata festgelegt wurden. Es ist auch möglich, Metadaten mit einem leeren Wert zu löschen.

Zum Beispiel, um den Titel in der Ausgabedatei festzulegen:

ffmpeg -i in.avi -metadata title="my title" out.flv

So stellen Sie die Sprache des ersten Audiostroms ein:

ffmpeg -i INPUT -metadata:s:a:1 language=eng OUTPUT

Quelle : FFmpeg-Dokumentation, Abschnitt 5.4 "Hauptoptionen"


Dank dafür. Gibt es einen Grund, warum es nicht automatisch wie die anderen Tags übertragen wird?
— Steve

@StevenFrost Ohne Spekulation schwer zu sagen; Vielleicht sind da einige ungültige Daten, die nicht analysiert werden können? Ich habe nicht eingehend untersucht, wie FFmpeg die bereits vorhandenen Metadaten extrahiert, sorry!
— Thor

Ah ok, danke trotzdem für die Alternative :-)
— Steve
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.