blog.monophile.net

コンピュータに関するメモ。

著者

山本一彰(Takaaki Yamamoto)

東京工業大学において計算機科学と応用数学を学び、 情報科学芸術大学院大学[IAMAS]においてメディア表現を専攻し修了。 2015年にコンビネータ論理を基に計算完備な計算手法 "論理珠算"を開発し、 それを含む体系である"算道"を構成した。 その成果により、2016年に 第19回 文化庁メディア芸術祭 アート部門 新人賞 (文部科学大臣賞) を受賞。 現在はSRE(サイト信頼性エンジニア)として生計をたててている。

投稿

FFmpeg と SoX で音源の特性を調べる

概要

マスタリングの音圧に関しての記事 http://pspunch.com/pd/article/loudness/ を読んで、音源の特性はどのようにしたら調べられるんだろう、と思ってやってみた。 FFMpeg と SoX を使ってみる。

FFmpeg と SoX のインストール

MacPortsを使って FFmpeg と SoX をインストールします。

SoX を使って WAV 音源の特性を調べる

以下のコマンドで test.wav の特性が分かります。 stats の場合は左右のチャネルを別々に解析し、stat の場合はモノラルでの計測になります。

すると以下の様な出力を得ます。

Input File     : 'test.wav'
Channels       : 2
Sample Rate    : 44100
Precision      : 16-bit
Duration       : 00:04:17.88 = 11372508 samples = 19341 CDDA sectors
File Size      : 45.5M
Bit Rate       : 1.41M
Sample Encoding: 16-bit Signed Integer PCM

In:100%  00:04:17.88 [00:00:00.00] Out:11.4M [!=====|=====!] Hd:0.4 Clip:0
             Overall     Left      Right
DC offset   0.000038  0.000038  0.000027
Min level  -0.946869 -0.946106 -0.946869
Max level   0.946777  0.942383  0.946777
Pk lev dB      -0.47     -0.48     -0.47
RMS lev dB    -12.09    -12.49    -11.73
RMS Pk dB      -6.97     -7.70     -6.97
RMS Tr dB       -inf      -inf      -inf
Crest factor       -      3.98      3.65
Flat factor     0.00      0.00      0.00
Pk count           2         2         2
Bit-depth      16/16     16/16     16/16
Num samples    11.4M
Length s     257.880
Scale max   1.000000
Window s       0.050
Done.

LUFS は分析できませんが、RMS は SoX でわかるようです。

FFmpeg と SoX を組み合わせて動画の音源の特性を調べる

FFmpeg と SoX を組み合わせれば動画の音声についても同様に調べることができます。

FFMpeg を用いて音源の LUFS を調べる

FFmpeg を用いて LUFS を調べることができます。

すると結果が標準出力に書かれて、I:の項が全体の LUFS の値になっています。

 :
 :
 :
  Integrated loudness:
    I:          -9.3 LUFS
    Threshold: -19.4 LUFS

  Loudness range:
    LRA:         4.4 LU
    Threshold: -29.4 LUFS
    LRA low:   -11.6 LUFS
    LRA high:   -7.2 LUFS

参考文献