Apresentação de slides com fundo de imagem estática
Vocênãoprecisausarofiltromovie
sourceeusar-filter_complex
emvezde-vf
.
ffmpeg\-loop1\-framerate1\-ibg.jpg\-framerate1/5\-i"C:/test/%03d.jpg" \
-filter_complex "overlay=(W-w)/2:(H-h)/2:shortest=1,format=yuv420p" \
-c:v libx264 \
-r 30 \
-movflags +faststart \
output.mp4
-
format=yuv420p
garantirá um esquema de subamostragem de cromatismo ou "formato de pixel" amplamente compatível, que é útil para adicionar ao usarlibx264
. -
-movflags +faststart
realocará alguns dados após o término da codificação, o que permitirá que os espectadores iniciem a reprodução antes do download completo do arquivo. Útil, por exemplo, se você estiver hospedando por conta própria e colocando-o em um site.
com áudio
ffmpeg \
-loop 1 \
-framerate 1 \
-i bg.jpg \
-framerate 1/5 \
-i "C:/test/%03d.jpg" \
-i audio.mp3 \
-filter_complex "overlay=(W-w)/2:(H-h)/2:shortest=1,format=yuv420p" \
-c:v libx264 \
-r 30 \
-c:a aac -strict experimental \
-b:a 192k \
-movflags +faststart \
-shortest
output.mp4
Com texto
O texto pode ser adicionado com o filtro drawtext
.
ffmpeg \
-loop 1 \
-framerate 1 \
-i bg.jpg \
-framerate 1/5 \
-i "C:/test/%03d.jpg" \
-i audio.mp3 \
-filter_complex "overlay=(W-w)/2:(H-h)/2:shortest=1,drawtext=fontsize=30:fontfile=FreeSerif.ttf:text='hello world':x=(w-text_w)/2:y=10,format=yuv420p" \
-c:v libx264 \
-r 30 \
-c:a aac -strict experimental \
-b:a 192k \
-movflags +faststart \
-shortest \
output.mp4
Veja a % documentação do filtrodrawtext
para muitas outras opções.
Com uma borda
O drawbox
filter pode ser usado para desenhar uma borda branca ao redor da imagem sobreposta. Observe que comecei a nomear as entradas e saídas de cada filtro, depois referenciei os resultados finais do filtro com -map
.
ffmpeg \
-loop 1 \
-framerate 1 \
-i bg.jpg \
-framerate 1/5 \
-i "C:/test/%03d.jpg" \
-i audio.mp3 \
-filter_complex "[1:v]drawbox=t=5:c=white[fg];[0:v][fg]overlay=(W-w)/2:(H-h)/2:shortest=1,drawtext=fontsize=30:fontfile=FreeSerif.ttf:text='hello world':x=(w-text_w)/2:y=10,format=yuv420p[v]" \
-map "[v]"
-map 0:a
-c:v libx264 \
-r 30 \
-c:a aac -strict experimental \
-b:a 192k \
-movflags +faststart \
-shortest \
output.mp4