Kopie streamen (Re-Mux)
Sie können eine Kopie statt einer Kodierung streamen . Stellen Sie es sich wie eine Kopie vor und fügen Sie es ein. Ihr Befehl würde dann so aussehen:
ffmpeg -i input.mp4 -vf scale=640x360,setdar=16:9 -c:v libx264 \
-preset veryslow -profile:v main -crf 18 -c:a copy output.mp4
Da das Audio gerade kopiert wird, tritt kein Qualitätsverlust auf, und es wird schnell, da keine Codierung stattfindet.
Kodieren
Manchmal können Sie keine Kopien streamen, da das Ausgabeformat das Format der Eingabe möglicherweise nicht unterstützt. Daher ist eine Codierung erforderlich.
Da Sie auf MP4 ausgeben, erwähne ich nur die AAC-Audiocodierung. ffmpeg
kann mehrere AAC-Audio-Encoder unterstützen, aber nur zwei sind erwähnenswert:
libfdk_aac
Dies ist der beste Encoder, der von unterstützt wird ffmpeg
, aber seine Lizenz ist nicht mit der GPL kompatibel, was dazu führt, dass nur sehr wenige (wenn überhaupt) verteilte Builds diesen Encoder unterstützen. Sie können jedoch einer Anleitung zur Kompilierungffmpeg
mit Unterstützung für diesen Encoder folgen .
ffmpeg -i input -c:a libfdk_aac -vbr 5 output.mp4
aac
Der native FFmpeg-AAC-Encoder ist in allen Builds verfügbar. Es wird als experimentell angesehen, aber mit genügend Bits sollte es in den meisten Fällen gut klingen.
ffmpeg -i input -c:a aac -strict experimental -b:a 192k output.mp4
Siehe auch