12/18

"32bit float"は、実際どの程度のダイナミックレンジを有しているのでしょうか?
レベルオーバーして書き出しても、読み込み時に下げれば元通りになるとのことですが、限界までダイナミックレンジを使用した場合、下げたら一番小さい音は消えてしまうのでしょうか。(理解不足のため頓珍漢なことを言っていたらすみません)

32bit floatは、基本的に24bit整数型に、倍率を表す7bitが付属しているものと考えていただいて結構です。最後の1bitは正負(プラスマイナス)を表します。 この実数と倍率を分けるという手法のおかげで、一般的な音声編集では実用上絶対に必要のないほど大きなレベルから小さなレベルまで表現できますので、小さい音が消えるということは滅多のことでは起こりません。なお単純にダイナミックレンジ(表現可能な最小値と最大値の差)でいうと1,500dBほどあります。 ただし、ここからが少しややこしい話になるのですが、先ほど言いましたように実数部分は24bitしかありません。 このためPCM音声に使用する場合、どれほど大きなレベルでも、あるいはどれほど小さなレベルでも、音声信号の150dBほど下にノイズフロアが現れます。 つまりS/Nにおいては、24bit(S/Nは144dB)と実はそんなに変わりません。 ちょうどこのトピックについては、拙著「とーくばっく」第3版のp.124にて図解で説明しています。 よろしければそちらもご覧ください。

スポンサーリンク

David Shimamotoさんになんでも質問しよう!

質問

スタンプ

利用できるスタンプはありません。

スポンサーリンク

質問する

過去に答えた質問

スポンサーリンク