Ich habe einen FFmpeg-Befehl zum Trimmen von Audio:
ffmpeg -ss 01:43:46 -t 00:00:44.30 -i input.mp3 output.mp3
Das Problem, das ich mit diesem Befehl habe, ist, dass die Option -t
eine Dauer (in Sekunden) von 01:43:46 erfordert . Ich möchte Audio mit Start- / Stoppzeiten zuschneiden , z. B. zwischen 01:43:46 und 00: 01: 45.02 .
Ist das möglich?
ffmpeg
der Tat scheint nichts anderes als eine Startzeit und eine Dauer bereitzustellen. Undmplayer
auch nicht.Antworten:
ffmpeg scheint eine neue Option zu haben - dazu in der Dokumentation :
Beispielbefehl mit zwei Zeitformaten
Dies sollte eine Kopie (file-2.mkv) von file.mkv von der 20-Sekunden-Marke bis zur 40-Sekunden-Marke erstellen.
quelle
copy
Teil nicht entferne, ist das Audio / Video nicht synchron, also entferne ich das und füge-async 1
es hinzu und es funktioniert wie ein Zauber. Natürlich erfordert es eine Neuverschlüsselung, daher wäre eine Verbesserung ein Befehl, der dascopy
aber ohne die Synchronisierungsprobleme zulässt .ffmpeg -i file.mp3 -ss 10 -to 11 -ss 20 -to 21 -ss 30 -to 31 ....
-to
Option:ffmpeg -i mmm.mp4 -ss 00:04:04 -to 00:04:35 -c copy output1.mp4 && ffmpeg -i mmm.mp4 -ss 00:05:47 -to 00:06:05 -c copy output2.mp4 && mencoder -ovc copy -oac mp3lame -idx output1.mp4 output2.mp4 -o complete.mp4
Wenn Sie PHP installiert haben, machen Sie es zu einem Skript:
TimeDiff.php Inhalt:
audiochop.sh Inhalt:
Verwendung:
Wobei [startchop] und [stopchop] beide absolute Zeitstempel vom Beginn des Tracks sind.
NB: Skript (e) müssen möglicherweise in Abhängigkeit von der Plattformversion usw. angepasst werden.
quelle