白や黒にフェードインする効果と、白や黒から入力した映像にフェードアウトする効果の解説。入力した映像が YUV、または RGB で処理が異なる。効果は2秒から4秒に掛けての2秒間で行う。適宜効果の時間は設定を変える。

フェード単体のフィルタもある。
フェードイン、フェードアウトの設定ができる fade

ffmpeg 4.3 から手軽にトランジションできるフィルタが追加される予定。
映像のトランジションの設定ができる xfade

関連記事
数式で線や円、模様が描ける geq
特定の時間だけフィルタを当てるタイムライン編集について

YUV

T-2が開始2秒からと、それを2で割って2秒間フェード効果を与える。フェード効果の開始秒と終了秒でタイムライン編集の時間を変える。

黒から入力した映像
ffplay -f lavfi -i testsrc2 -vf lutyuv=0:128:128:enable=lt'(t,2)',geq='p(X,Y)*clip((T-2)/2,0,1)':'st(0,128*clip((T-2)/2,0,1));clip(p(X,Y),128-ld(0),128+ld(0))':enable=between'(t,2,4)'

白から入力した映像
ffplay -f lavfi -i testsrc2 -vf lutyuv=255:128:128:enable=lt'(t,2)',geq='clip(255-255*clip((T-2)/2,0,1)+p(X,Y),0,255)':'st(0,128*clip((T-2)/2,0,1));clip(p(X,Y),128-ld(0),128+ld(0))':enable=between'(t,2,4)'

入力した映像から黒
ffplay -f lavfi -i testsrc2 -vf geq='clip(p(X,Y)-255*clip((T-2)/2,0,1),0,255)':'st(0,128*clip((T-2)/2,0,1));clip(p(X,Y),clip(ld(0),0,128),clip(255-ld(0),128,255))':enable=between'(t,2,4)',lutyuv=0:128:128:enable=gt'(t,4)'

入力した映像から白
ffplay -f lavfi -i testsrc2 -vf geq='clip(255*clip((T-2)/2,0,1)+p(X,Y),0,255)':'st(0,128*clip((T-2)/2,0,1));clip(p(X,Y),clip(ld(0),0,128),clip(255-ld(0),128,255))':enable=between'(t,2,4)',lutyuv=255:128:128:enable=gt'(t,4)'

RGB

黒から入力した映像
ffplay -f lavfi -i testsrc -vf lutrgb=0:0:0:enable=lt'(t,2)',geq=r='p(X,Y)*clip((T-2)/2,0,1)':g='p(X,Y)*clip((T-2)/2,0,1)':b='p(X,Y)*clip((T-2)/2,0,1)':enable=between'(t,2,4)'

白から入力した映像
ffplay -f lavfi -i testsrc -vf lutrgb=255:255:255:enable=lt'(t,2)',geq=r='clip(255-255*clip((T-2)/2,0,1)+p(X,Y),0,255)':g='clip(255-255*clip((T-2)/2,0,1)+p(X,Y),0,255)':b='clip(255-255*clip((T-2)/2,0,1)+p(X,Y),0,255)':enable=between'(t,2,4)'

入力した映像から黒
ffplay -f lavfi -i testsrc -vf geq=r='clip(p(X,Y)-255*clip((T-2)/2,0,1),0,255)':g='clip(p(X,Y)-255*clip((T-2)/2,0,1),0,255)':b='clip(p(X,Y)-255*clip((T-2)/2,0,1),0,255)',lutrgb=0:0:0:enable=gt'(t,4)'

入力した映像から白
ffplay -f lavfi -i testsrc -vf geq=r='clip(255*clip((T-2)/2,0,1)+p(X,Y),0,255)':g='clip(255*clip((T-2)/2,0,1)+p(X,Y),0,255)':b='clip(255*clip((T-2)/2,0,1)+p(X,Y),0,255)',lutrgb=255:255:255:enable=gt'(t,4)'

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)