Tworzenie wideo z pojedynczego obrazu przez określony czas w ffmpeg


86

Jak wygenerować film przy użyciu ffmpeg przy użyciu pojedynczego obrazu (image1.png) przez 15 sekund z określoną rozdzielczością, więc kiedy odtwarzam wideo, obraz pojawi się na ekranie przez 15 sekund.

Odpowiedzi:


128
ffmpeg -loop 1 -i image.png -c:v libx264 -t 15 -pix_fmt yuv420p -vf scale=320:240 out.mp4
  • -T 15 sprawia, że ​​trwa 15 sekund.
  • Skala -vf = 320: 240 ustawia szerokość / wysokość.

Upewnij się, że używasz aktualnej wersji ffmpeg, np. Http://johnvansickle.com/ffmpeg/


1
Unable to find a suitable output format for 'scale=1280:1024' scale=1280:1024: Invalid argumentKażdy pomysł, dlaczego?
Agey

1
@Equanox Miałem ten sam problem, ale był on spowodowany znakiem „\” podczas kopiowania i wklejania. Usunięcie go rozwiązuje problem.
user1319182

3
Odpowiada na pytanie, ale nie podoba mi się używanie tych wszystkich zbędnych dodatków w poleceniu.
joey

15
@joey Me też, zwłaszcza, że ​​OP nie prosił o nic konkretnego. Chcesz zrobić film z jednego zdjęcia i nie dbasz o żadne szczegóły? ffmpeg -loop 1 -i image.png -t 5 out.mp4
Doe Johnson

3
To jest świetne, ale ... trwa wieczność i topi mój procesor, aby wygenerować 40-minutowy film na podstawie pojedynczego obrazu PNG w rozdzielczości 720p. Czy jest sposób, aby to przyspieszyć? Kompresja nie ma znaczenia, jeśli pozostaje poniżej kilku GB.
HunterZ
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.