Próbuję utworzyć wideo z sekwencji obrazów. Ale muszę wyświetlać każdy obraz z różną liczbą sekund. Jak to zrobić z FFMPEG.Jak wyświetlić obraz na określony czas w filmie za pomocą ffmpeg
Z góry dziękuję.
Próbuję utworzyć wideo z sekwencji obrazów. Ale muszę wyświetlać każdy obraz z różną liczbą sekund. Jak to zrobić z FFMPEG.Jak wyświetlić obraz na określony czas w filmie za pomocą ffmpeg
Z góry dziękuję.
Istnieją pewne wskazówki w FFmpeg wiki. To jeden z przykładów (drugi przedostatniej w wiki), w szczególności jest prawdopodobnie odpowiedni do swoich potrzeb:
ffmpeg -loop 1 -f image2 -i img.png -c:v libx264 -t 30 out.mp4
których liczba po -t
(30 w przykładzie) jest czas trwania filmu w sekundach.
Wystarczy wykonać to polecenie kilka razy tak:
ffmpeg -loop 1 -f image2 -i intro.png -c:v libx264 -t 5 out1.mp4
ffmpeg -loop 1 -f image2 -i someimage.png -c:v libx264 -t 15 out2.mp4
ffmpeg -loop 1 -f image2 -i someotherimage.png -c:v libx264 -t 25 out3.mp4
ffmpeg -loop 1 -f image2 -i outro.png -c:v libx264 -t 10 out4.mp4
a następnie scalić wynikowe pliki wideo (jeśli chcesz):
Utwórz plik tekstowy (na przykład: videos.txt
), gdzie Nazwy plików wideo są wymienione.
file 'out1.mp4'
file 'out2.mp4'
file 'out3.mp4'
file 'out4.mp4'
Run to polecenie (zmiana nazwy plików w razie potrzeby)
ffmpeg -f concat -i videos.txt -c copy final_video.mp4
Więcej informacji o mer wideo ging (konkatenacja) można znaleźć w wiki.
jest to najlepszy sposób na zrobienie tego? – Prospero