2012-02-24 4 views
1

컬러 필터를 특정 시간 간격 (예 : 10 초마다)으로 ffmpeg에서 rtmp 스트림에 추가하려고합니다. 나는 두 가지 접근법을 시도했다. 제 :이 선택으로 나타낸 만 10 초 스트림 전체 스트림 재생 단지 그 20초에 필터를 적용하는 것보다, 컬러 필터를 적용ffmpeg에서 특정 간격으로 컬러 필터 추가하기

-vf "color=#[email protected]:480x208,select='gte(t,10)*lte(t,20)' [color];[in][color] overlay [out]" 

.

는 그때 분할 및 FIFO에 대해 배웠이 접근 시도 :

-vf "[in] split [no-color], fifo, [with-color] overlay [out]; [no-color] fifo, select='gte(t,10)*lte(t,20)' [with-color]" 

내가이 전체 스트림 재생을 기대하고 나는 필터를 적용 할 수 있도록 10 초 지정된 선택 것이다, 그러나 그것은 않습니다 첫 번째 접근법과 동일하며 전체 스트림이 아닌 선택한 10 초를 재생합니다.

미리 감사드립니다.

답변

2

this question에 대해서는 비디오 스트림의 특정 시간대에 비디오 필터를 적용하는 방법, 즉 비디오 스트림을 여러 조각으로 나누고, 필터를 적용하고, 재결합하는 방법이없는 것처럼 보입니다. 더 나은 방법을 찾으면 공유하십시오.

2

오버레이로 들어가는 스트림의 순서를 변경했습니다.

"select"스트림이 overlay 필터의 첫 번째 입력이되면 오버레이는 선택되지 않은 시간에 출력을 지우는 것으로 보입니다.

처음으로 안정된 스트림을 overlay에 제공하고 선택한 경우 전체 시간 동안 스트림을 출력합니다.

는 I는 필터 세트 다음 시도 : 그래프로

-vf "[in]split[B1][B2];[B1]fifo,drawbox=-1:-1:5000:5000:invert:2000,vflip,hflip[B1E];[B2]fifo,select='gte(t,5)'[B2E];[B1E][B2E]overlay[out]" 

내 버전 :

버전이 (선택 필터 !! 제 overlay 입력)이었다
   _,--[B1]--fifo--drawbox--flip--[B1E]--._ 
[in]---split--X           X--overlay--[out] 
       ‾'--[B2]--fifo--select---------[B2E]--'‾ 

:

   _,--fifo--select---[with-color]--._ 
[in]---split--X          X--overlay--[out] 
       ‾'--[no-color]--fifo-------------'‾ 

이유는 다음과 같습니다.

...[B2E];[B1E][B2E]overlay... 

...,[B1E]overlay... 

은 동일합니다.

그러나 그럼에도 불구하고 몇 가지 문제가 남아있을 수 있습니다. 한 번 또는 10 초마다 필요한가? 지.?

1

나는 비슷한 문제를 다루고 있는데, 필자는 필터 슬레이트, 오버레이 및 concat의 조합을 사용했다. 이 투명 색상 정보를 포함하고 있지만, GIF 파일이 오디오를 포함하지 dosn't 때문에

-filter_complex "[0:v]split[v1][v2];[v1]select='lt(t,5)',setpts=PTS-STARTPTS[iv1];[v2]select='gte(t,5)'[over];[over][1:v] overlay=W-w:H-h:shortest=1,setpts=PTS-STARTPTS[iv2];[iv1][iv2]concat=n=2:v=1:a=0" 

하지만 내 문제는, 내가 두 번째 입력으로 GIF를 사용합니다. 투명 (또는 알파)과 오디오 모두로 동영상을 만들려면 어떻게해야합니까?

관련 문제