Ich habemehrere große MOV-Dateiendie ich auf MP4 komprimieren möchte.
Wenn ich FFmpeg verwende, werden leider am Ende viele schwarze (leere) Videos angehängt.
(Die Zieldatei ist länger als die Quelldatei.)
Ich habe beispielsweise eine Datei mit einer Dauer von 02:22:01 (und die FFmpeg-Ausgabeprotokolle bestätigen dies).
Wenn ich jedoch den folgenden Befehl ausführe (was selbst bei „ultrafast“ mehr als 20 Minuten dauert), erhalte ich eine MP4-Datei, die größtenteils gut aussieht, an deren Ende jedoch viele schwarze Frames angehängt werden, sodass die Gesamtdauer des Videos 3:59:59 beträgt.
ffmpeg -i "F:\video_project\uncompressed\Tape_12.mov" -vcodec libx264 -preset ultrafast -crf 18 -n -threads 16 -f mp4 "F:\video_project\compressed\Tape_12.mp4" 2>&1
Dies passiert auch bei meinen anderen MOV-zu-MP4-Konvertierungen. Die Dauer des am Ende angehängten schwarzen Videos kann 20 bis 80+ Minuten betragen (dies ist bei jedem Video nicht gleich).
Was mache ich falsch?
PS: Ich verwende PowerShell 4 unter Windows 7.
Aktualisieren:
Als Antwort auf LordNeckBeard: Wenn ich ausführe ffmpeg.exe -i F:\video_project\compressed\Tape_12.mp4
, ist das Ergebnis:
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'F:\video_project\compressed\Tape_12.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf55.22.101
Duration: 03:59:59.94, start: 0.033333, bitrate: 5389 kb/s
Stream #0:0(eng): Video: h264 (High 4:2:2) (avc1 / 0x31637661), yuv422p, 720x480 [SAR 10:11 DAR 15:11], 5252 kb/s, 29.97 fps, 29.97 tbr, 11988 tbn, 59.94 tbc (default)
Metadata:
handler_name : VideoHandler
Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 128 kb/s (default)
Metadata:
handler_name : SoundHandler
Als Antwort auf Rajib: Wenn ich ausführe ffmpeg.exe -i F:\video_project\uncompressed\Tape_12.mov
, ist das Ergebnis:
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'F:\video_project\uncompressed\Tape_12.mov':
Metadata:
creation_time : 2014-01-05 02:35:17
Duration: 02:22:01.04, start: -6.064083, bitrate: 51226 kb/s
Stream #0:0(eng): Video: dvvideo (dvc / 0x20637664), yuv411p, 720x480 [SAR 8:9 DAR 4:3], 28771 kb/s, SAR 10:11 DAR
15:11, 29.97 fps, 29.97 tbr, 2997 tbn, 29.97 tbc (default)
Metadata:
creation_time : 2014-01-05 06:35:18
handler_name : Apple Alias Data Handler
Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, mono, s16, 768 kb/s (default)
Metadata:
creation_time : 2014-01-05 06:35:18
handler_name : Apple Alias Data Handler
Stream #0:2(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, mono, s16, 768 kb/s (default)
Metadata:
creation_time : 2014-01-05 06:35:18
handler_name : Apple Alias Data Handler
Antwort1
Das Problem ist wahrscheinlich, dass du die Audiospur nicht beschleunigst, sodass das neue Video genauso lang bleibt wie das Original. Entweder löschst du die Audiospur mit der Option -an oder beschleunigst sie entsprechend mit der Option atempoAudiofilter.