Hier ist ein Linux Audio MP3 Puzzle, das mich schon eine Weile nervt:
Wie schneide ich die ersten Sekunden einer MP3-Audiodatei ab? (Ich kann weder ffmpeg -ss
mit dem Format 00:01 noch mit dem Format 1.000 arbeiten.)
Um das zu tun, was ich will, greife ich bisher auf eine grafische Benutzeroberfläche zurück, die für eine einzelne Datei möglicherweise langsamer und für einen Stapel von Dateien definitiv langsamer ist.
Antworten:
Für die Bearbeitung von MP3s unter Linux würde ich Sox empfehlen . Es hat einen einfach zu verwendenden
trim
Effekt, derman sox
genau das tut, wonach Sie fragen (siehe Daten - Suche (drücken/
) nach " Trimmstart "). Beispiel:Sie haben es nicht erwähnt, aber wenn Sie nur die Stille am Anfang von Dateien entfernen möchten, finden Sie den
silence
Effekt viel nützlicher (man sox
suchen Sie nach "Überperioden").quelle
trim
Einfachheit halber habe ich das verwendet . Der einzige Wermutstropfen war -sox FAIL formats: can't open output file 'blah.mp3': SoX was compiled without MP3 encoding support
also, geben Sie ffmpeg wieder ein: /no handler for file extension mp3
Sie können versuchen, mp3splt zu verwenden , das MP3- und Ogg-Dateien aufteilen kann und den Vorteil hat, dass die Datei nicht neu codiert wird, wodurch Qualitätsverluste vermieden werden.
quelle
mp3splt "$file" 4.12 27.55.7
... Er ermöglicht die benutzerdefinierte Formatierung von Ausgabenamen und mehrere Teilungspunkte.Stellen Sie sicher, dass Ihre Zeitangaben mit Stunden beginnen.
So zitieren Sie die ffmpeg-Manpage :
Das heißt, wenn Sie die 2. Syntax wählen, ist nur der
.xxx
Teil optional. Andernfalls könnte ffmpeg es als Sekunden falsch analysieren.Gleiches gilt für die Dauer:
Eine weitere Gefahr ist die Reihenfolge der ffmpeg-Argumente (z. B. müssen die Optionen
-ss
/-t
für eine Eingabedatei vor der-i
Option stehen).Beispiel
Mit der Spezifikation
-ss 1:05:59.3 -t 2:03.9
würden Sie ein anderes Ergebnis erhalten (dh ein 2 Sekunden langes Stück).(Getestet auf Fedora 17 mit ffmpeg Version 0.10.7.)
quelle