apulsator
はオートパンやトレモロの中間的なフィルタである。ffmpeg ではpan
やtremolo
で使える。左右のチャンネルの位相や波形をずらしたりする LFO (low frequency oscillator) を元に音量を変える。オフセットが 0 のときはトレモロと同じように左右のチャンネルを等しく変える。オフセットが 0.5 のときはオートパンのように周波数の半分の位相をずらす。オフセットが 1 のときは再び等しく変え、1 に近づくほどより早く右から左へのスピーカーに音が渡されずれが小さくなる。
基本コマンド
ffplay input -af apulsator=level_in=1:level_out=1:mode=sine:1:amount=1:offset_l=0:offset_r=0.5:width=1:timing=hz:hz=2
ahistogram
を併用するとずれ具合が見える化する
ffplay -f lavfi amovie=input,apulsator=level_in=1:level_out=1:mode=sine:1:amount=.8:offset_l=.6:offset_r=1:width=1:timing=bpm:hz=2,ahistogram=dmode=separate:r=25:s=hd720:scale=log:ascale=log:acount=1:rheight=.1:slide=replace[out0];amovie=input,apulsator=level_in=1:level_out=1:mode=sine:1:amount=.8:offset_l=.6:offset_r=1:width=1:timing=bpm:hz=2[out1]
公式ドキュメント:FFmpeg Filters Documentation : apulsator
オプション
- level_in
入力利得調整
0.015625 から 64 まで[double]
既定値:1 - level_out
出力利得調整
0.015625 から 64 まで[double]
既定値:1 - mode
LFO の波形タイプ- sine。既定値
- triangle
- square
- sawup
- sawdown
- amount
変調の値指定
0 から 1 まで[double]
既定値:1 - offset_l
左チャンネルのオフセット値
0 から 1 まで[double]
既定値:0 - offset_r
右チャンネルのオフセット値
0 から 1 まで[double]
既定値:0.5 - width
パルスの幅
0 から 2 まで[double]
既定値:1 - timing
タイミングモード
bpm, ms, hz が選択可能でそれに対応した数値が以下より設定できる
既定値:hz - bpm
Beats Per Minute。1分当たりの拍
30 から 300 まで[double]
既定値:120 - ms
Milli Second。ミリ秒
10 から 2000 まで[int]
既定値:500 - hz
ヘルツ
0.01 から 100 まで[double]
既定値:2