ffmpeg - Utwórz wideo z klatki obrazu za pomocą startu i kreacji

18

Tworzę wideo z ramki obrazu i działa świetnie. Problem polega na tym, że nie chcę używać całego obrazu w moim folderze. W moim folderze mam 200 klatek, ale chcę wideo od 1 do 100

Jak mogę określić liczbę klatek lub koniec ramki?

ffmpeg -start_number n -i test_% d.jpg -vcodec mpeg4 test.avi

Nie mogę znaleźć jak

Dzięki!

DarkPixel
źródło
Nie wiem dużo o tym programie, ale jeśli używa on wszystkich obrazów w określonym folderze, dlaczego nie utworzyć nowego folderu i wstawić tylko 100 klatek, które chcesz?
philipthegreat
2
To będzie moje „rozwiązanie hakerskie”, jeśli nie da się tego zrobić z ffmpeg :)
DarkPixel,

Odpowiedzi:

29

Robisz to, określając liczbę klatek, które chcesz:

-vframes 100  

Tak skutecznie jest w twoim przypadku:

ffmpeg -start_number 1 -i test_%d.jpg -vframes 100 -vcodec mpeg4 test.avi

Może być konieczne określenie innych parametrów, takich jak pix_fmtitp., W zależności od innych czynników.

Ponadto zwykle stosuje się coś test_%05d.jpgz sekwencją numerowaną zawierającą poprzedzające zera i 5 cyfr. Jeśli nie masz go w tym formacie, może być konieczne użycie wzorca globowania. Zobacz to .

Rajib
źródło
3

To jest kod, który zawsze działa dobrze dla mnie.

ffmpeg -i yourfile.mp4 -r 1 -ss 15 -t 16 -f image2 snapshot.jpg
                                ^     ^ 
                                ^     ^
                              start  end
                               time   time

czas jest tylko w sekundach. Jeśli jest 2 minuty przed rolką, to jest 120. Jeden plik obrazu zawsze ma wartość jednej sekundy, oblicz zatem pożądany obraz według tego podejścia.

yourfile.mp4 = twój klip filmowy

snapshot.jpg = nowy plik obrazu

WAŻNE: zostaw zdjęcie 2 w spokoju. To jedyny sposób, aby uzyskać to, czego chciałem.

Faron
źródło
4
Doceniam to polecenie, ponieważ działa ono na stare, z ffmpegktórych muszę teraz korzystać; jedyną rzeczą jest -tnie „czas końca”, man ffmpegmówi, że to „czas trwania”; więc czas zakończenia to początek + czas trwania. Twoje zdrowie!
sdaau