2016-05-10 28 views
1

私はffmpegで波形を生成しようとしています。背景を無地にし、実際の波形を透明にします。以下は、黒い背景があることを除いて、私が欲しいものを部分的に達成します。私はこれを任意の色に変更することができますが、波形を透明にしたいと考えています。どのように私はffmepgでこれを達成できますか?FFMPEG波形透明、背景無地色

ffmpeg -i input.mp3 -filter_complex \ 
"[0:a]aformat=channel_layouts=mono,\ 
compand=gain=-6, \ 
showwavespic=s=600x120, \ 
colorchannelmixer=rr=1:gg=0:bb=0:aa=1,\ 
drawbox=x=(iw-w)/2:y=(ih-h)/2:w=iw:h=1:color=red,\ 
format=rgba,\ 
colorkey=#ff0000" \ 
-vframes 1 output.png 

これは、この波形を生成します。背景が黒で、波形自体が透明です。波形を透明に保ちながら、背景色を別の色に変更するにはどうすればよいですか?

enter image description here

答えて

5

使用この

ffmpeg -i input.mp3 -filter_complex \ 
    "[0:a]aformat=channel_layouts=mono,compand=gain=-6, \ 
    showwavespic=s=600x120:colors=white,negate[a]; \ 
    color=red:600x120[c]; \ 
    [c][a]alphamerge" -vframes 1 output.png 

showwavespicで指定された色を使用すると、厳密duochrome出力を得ることを保証します。キーを引くよりも良い。