大きすぎる音は小さく、小さすぎる音は大きく聞き取りやすい音量に変えるdynaudnormフィルタの使い方。雑談などの声中心なら聞こえやすくなるので効果的で、急に音量が変わって聞き取りにくい音声を修正するのにも使える。

音量を調べるにはvolumedetect、ebur128、showwavespicなどのフィルタがある。

基本コマンド

ffmpeg -i input -af dynaudnorm -c:v copy output
ffplay -i input -af dynaudnorm

差分を手軽に調べるにはshowwavespicを使う。
ffmpeg -i input -vn -filter_complex dynaudnorm,showwavespic dynaudnorm.png
ffmpeg -i input -vn -filter_complex showwavespic non-dynaudnorm.png

上下に画像比較(上がdynaudnormフィルタを当てている)。
ffmpeg -i input -vn -filter_complex asplit[0][1];[0]dynaudnorm,showwavespic[top];[1]showwavespic[bot];[top][bot]vstack compared_dynaudnorm.png
公式ドキュメント:FFmpeg Filters Documentation : dynaudnorm

オプション

オプションの詳細は公式ドキュメントを参照。

  • framelen, f[int]
    ミリ秒当たりのフレームの長さ
    既定値:500
    範囲:10から8000まで
  • gausssize, g[int]
    ガウスフィルタの適応幅
    既定値:31
    範囲:3から301までの奇数
  • peak, p[double]
    ピーク音量の設定。
    既定値:.095(変えるのは非推奨)
    範囲:0から1まで
  • maxgain, m[double]
    最大ゲインの設定
    既定値:10.0
    範囲:1.0から100.0まで
  • targetrms, r[double]
    目標RMS(二乗平均平方根)の設定
    既定値:0.0
    範囲:0.0から1.0まで
  • coupling, n[boolean]
    それぞれのチャンネルに同様のフィルタを当てる
    既定値:1
  • correctdc, c[boolean]
    DCバイアス補正
    既定値:0
  • altboundary, b[boolean]
    別の境界補正の設定
    既定値:0
  • compress, s[double]
    古典的な圧縮方法を使う
    既定値:0.0
    範囲:0.0から30.0まで
  • threshold, [double]
    しきい値の設定
    既定値:0
    範囲:0から1まで
  • channels, h[string]
    フィルタするチャンネルの設定
    既定値:”all”
  • overlap, o[double]
    フレームオーバーラップの設定
    既定値:0
    範囲:0から1まで
  • curve, v[string]
    任意のピークカーブの設定

One thought on “ffmpeg で聞き取りやすい音量に変える dynaudnorm”

コメントを残す

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

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