ffmpeg-시작과 cout을 사용하여 이미지 프레임에서 비디오 만들기


18

이미지 프레임에서 비디오를 만들고 훌륭하게 작동합니다. 문제는 폴더의 모든 이미지를 사용하고 싶지 않다는 것입니다. 폴더에 200 개의 프레임이 있지만 1에서 100 사이의 비디오를 원합니다

프레임 수 또는 프레임 끝을 매운 수 있습니까?

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

방법을 찾을 수 없습니다

감사!


이 프로그램에 대해 잘 모르지만 특정 폴더의 모든 이미지를 사용하는 경우 새 폴더를 만들고 원하는 100 프레임 만 넣는 이유는 무엇입니까?
philipthegreat

2
그것은 ffmpeg로 그것을 할 수 없다면 내 "해킹 솔루션"이 될 것입니다 :)
DarkPixel

답변:


29

원하는 프레임 수를 지정하면됩니다.

-vframes 100  

따라서 효과적으로 귀하의 경우입니다.

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

pix_fmt다른 요인에 따라 기타 매개 변수를 지정해야 할 수도 있습니다 .

또한 일반적으로 test_%05d.jpg앞에 0과 5 자리가있는 번호가 매겨진 시퀀스와 같은 것을 사용합니다 . 해당 형식이 없으면 글 로빙 패턴을 사용해야 할 수도 있습니다 . 참조 .


3

이것은 항상 나를 위해 잘 작동하는 코드입니다.

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

시간은 초 단위입니다. 릴보다 2 분 앞서면 120입니다. 하나의 이미지 파일은 항상 1 초의 가치가 있으므로 해당 접근 방식으로 원하는 이미지를 계산하십시오.

yourfile.mp4 = 영화 클립

snapshot.jpg = 새로운 이미지 파일

중요 : image2를 그대로 두십시오. 내가 원하는 것을 얻는 유일한 방법입니다.


4
이 명령 ffmpeg은 지금 사용해야하는 이전 명령과 호환되므로이 명령에 감사합니다 . 유일한 것은 -t"종료 시간"이 아니며 man ffmpeg"지속 기간"이라고 말합니다. 따라서 종료 시간은 시작 + 지속 시간입니다. 건배!
sdaau
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.