LoginSignup
52
40

More than 1 year has passed since last update.

動画や音声ファイルの音量(ゲイン)を ffmpeg で調整するときのメモ

Last updated at Posted at 2020-01-05

やりたいこと

  • mp3 や mp4 などの音声データの音量を、ffmpeg で聞きやすいレベルに変換する方法です。
  • ffmpeg 4.0 を使います。
  • Windows 10 / Ubuntu 20.04LTS / MacOS 10.15.7 (intel) のどれでもできることは確認済み(M1 Mac では試してません)。

参考

むしろ上記の抜粋。

実食

音量レベルを確認する。

ffmpeg -i input.mkv -vn -af volumedetect -f null -

  • -i は入力ファイル。mp4 でも mp3 でも OK
  • -vn でビデオストリームを無視する
  • -af でオーディオフィルタを指定する (volumedetect フィルタの指定)
  • -f null で出力ファイルを null に指定。
  • 最後の - はダミー
[Parsed_volumedetect_0 @ 0x7ffdf671c9c0] n_samples: 30121984
[Parsed_volumedetect_0 @ 0x7ffdf671c9c0] mean_volume: -35.0 dB
[Parsed_volumedetect_0 @ 0x7ffdf671c9c0] max_volume: -10.0 dB
[Parsed_volumedetect_0 @ 0x7ffdf671c9c0] histogram_10db: 14
[Parsed_volumedetect_0 @ 0x7ffdf671c9c0] histogram_11db: 66
[Parsed_volumedetect_0 @ 0x7ffdf671c9c0] histogram_12db: 256
[Parsed_volumedetect_0 @ 0x7ffdf671c9c0] histogram_13db: 498
[Parsed_volumedetect_0 @ 0x7ffdf671c9c0] histogram_14db: 1262
[Parsed_volumedetect_0 @ 0x7ffdf671c9c0] histogram_15db: 2748
[Parsed_volumedetect_0 @ 0x7ffdf671c9c0] histogram_16db: 6410
[Parsed_volumedetect_0 @ 0x7ffdf671c9c0] histogram_17db: 10955
[Parsed_volumedetect_0 @ 0x7ffdf671c9c0] histogram_18db: 20253

こんな感じで出るので、max_volume が 0dB くらいになるように合わせる。上の場合は max_volume が -10dB になっているので 10dB 上げる。

ゲイン調整

ffmpeg -i input -af volume=10dB output
  • -af volume でゲインを指定する。

再エンコード不要の場合は下記:

ffmpeg -i input -codec:v copy -af volume=10dB output

無音部分を取得する

おまけ

ffmpeg -i input -af silencedetect=n=-30dB:d=1 -f null -
  • n で音量のレベルを指定する
  • d でそのレベルが続く時間 (sec) を指定する
52
40
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
52
40