2014-08-28 7 views
0

GIF가 무한 루프입니다 (loop.gif). 이 gif를 video.mpg의 왼쪽 상단에 겹치기를 원합니다. 그래서이 코드를 사용하여 이것을 만듭니다 :ffmpeg 동영상 필터에서 gif가 루프가 아닙니다.

ffmpeg -i video.mpg -vf "movie=loop.gif [logo]; [in][logo] overlay=10:10 [out]" -vcodec mpeg2video out.mpg 

문제는 다음과 같습니다. gif는 video.mpg가 끝날 때까지 gif의 첫 번째 프레임과 마지막 프레임 만 표시합니다.

이 GIF를 어떻게 연속적으로 반복 할 수 있습니까?

+0

다음 번에 [tag : ffmpeg] cli 사용법 질문 [su]를 물어보십시오. 프로그래밍과 관련이없는 질문은 여기에 있습니다. – LordNeckbeard

+0

내 프로그램에서 ffmpeg 실행 파일을 사용하고 있습니다. 다음에 너의 통지를 기억할 것이다. 감사. – user2925649

답변

1

Count, monkey, count!

카운트, 원숭이, 계산! (이것은 GIF가 아닙니다.)

은 GIF 디멀티플렉서에서 -ignore_loop 옵션을 사용

ffmpeg -i video.mpg -ignore_loop 0 -i loop.gif -filter_complex \ 
"[0:v][1:v]overlay=10:10:shortest=1" -vcodec mpeg2video out.mpg 
  • 추가 GIF 디멀티플렉서 옵션 ffmpeg -h demuxer=gif로 볼 수 있습니다.
  • 소스 필터 movie을 사용할 필요가 없습니다.
  • overlayshortest 옵션을 사용하십시오. 그렇지 않으면 입력 중 하나가 반복되고 있으므로 인코딩이 무기한 실행됩니다.
+0

첫 번째 입력 비디오 파일의 오디오 트랙을 보존하는 동안이 방법이 있습니까? – speedynomads

+0

@ domji84 기본 [스트림 선택] (https://ffmpeg.org/ffmpeg.html#Stream-selection)에 포함되어 있어야합니다. 그렇지 않다면 ['-map'] (https://ffmpeg.org/ffmpeg.html#Advanced-options)을 사용해야합니다. – LordNeckbeard

+0

응답 해 주셔서 감사합니다. 이상한 것은 일부 mp4에서 작동한다는 것입니다. 스트림 유형과 fps 등은 모두 동일하게 보입니다. 왜 그것이 다른 사람들과 함께 작동하지 않는지 모르겠다. – speedynomads