2017-10-13 11 views
0

나는 다양한 RTMP 라이브 스트림을 순환하고 매 30 초마다 전환하는 bash 스크립트를 작성했습니다. 비디오의 처음 부분에서 재생되는 PNG 시퀀스가 ​​있습니다 (blindRev- % d.png). 시각 장애인이 끌어 올려서 개울을 드러낸다.다른 시간에 여러 오버레이 ffmpeg

28 초 후에 다시 스트림을 덮어서 다음 스트림이로드 될 때 다시 다음 스트림을 차례로 표시하도록 취소합니다 (blind- % d.png). 나는 그것을 달성하기 위해 itsoffset를 사용하여 시도했다. 오디오가 필요하지 않습니다.

그러나 첫 번째 PNG 시퀀스 만 재생되며 두 번째는 결코 발생하지 않습니다.

내가 사용하고 명령은 다음과 같습니다 내가 잘못 뭐하는 거지

ffmpeg -i rtmp://localhost/live/$stream -i blind/blindRev-%d.png -itsoffset 28 -i blind/blind-%d.png -filter_complex overlay -an -f flv rtmp://localhost/live/All 

? 많은 감사.

답변

0

이미지를 반복 한 다음 시간 소인을 변경해야합니다.

ffmpeg -i rtmp://localhost/live/$stream -loop 1 -i blind/blindRev-%d.png 
    -filter_complex [1]setpts='mod(N,50)/25/TB+30*trunc(N/50)'[im];[[0][im]overlay 
    -an -f flv rtmp://localhost/live/All 

시퀀스에 50 개의 이미지가 있고 30 초마다 오버레이를 시작한다고 가정합니다.

+0

답장을 보내 주셔서 감사합니다. 나는 그 명령에 -t 00 : 00 : 30.0을 넣는 것을 잊었다. 스트림이 30 초 동안 실행 된 다음 스크립트가 다음 스크립트로 이동하므로 동영상 시작 부분에 첫 번째 오버레이를 재생 한 다음 두 번째 오버레이를 약 28 초에 동영상에 넣기 만하면됩니다. 30 초마다 비디오 위에 오버레이됩니다. 오버레이는 50 프레임입니다. – TheOctagon