Możesz wykonać prostą nakładkę obrazu, używając następującej składni:
ffmpeg -i input.mp4 -i image.png \
-filter_complex "[0:v][1:v] overlay=25:25:enable='between(t,0,20)'" \
-pix_fmt yuv420p -c:a copy \
output.mp4
overlay=25:25
oznacza, że chcemy ustawić obraz 25px w prawo i 25px w dół, zaczynając od lewego górnego rogu (0: 0).
enable='between(t,0,20)'
oznacza, że chcemy, aby obraz wyświetlał się między sekundą 0 a 20.
[0:v][1:v]
oznacza, że chcemy, aby pierwszy plik wideo, który importujemy -i
, w naszym przypadku input.mp4 lub jak ffmpeg go widzi, plik wejściowy wideo numer 0, aby znajdował się pod plikiem wejściowym wideo 1, w naszym przypadku image.png. :v
oznacza tylko, że chcemy wideo 0 i wideo 1. [0:a]
oznaczałoby to, że chcemy pierwszej importowanej ścieżki audio. Który również pochodziłby z input.mp4, ale wskazywałby na ścieżkę audio zamiast ścieżki wideo w pliku mp4.
Jeśli chcesz określoną jakość / ustawienia obrazu, a nie ustawienia wybrane przez ffmpeg, dodaj obraz i / lub opcje kodowania dźwięku, których chcesz użyć. Domyślnym koderem wideo będzie x264. Sprawdź przewodnik kodowania H.264, aby sprawdzić możliwe ustawienia.
Polecenie -acodec copy
/ -c:a copy
, które masz w swoim poleceniu fe, po prostu ponownie użyłoby dźwięku z pliku źródłowego. Chociaż oczywiście nie można tego zrobić z wideo (w tym przypadku), należy go transkodować, ponieważ tworzymy nowe źródło wideo.
Jeśli chcesz transkodować dźwięk, usuń -c:a copy
część. Może być konieczne jawne określenie kodera, np -c:a aac -strict experimental
. Więcej informacji można znaleźć w przewodniku kodowania AAC .