DSDの「MaxPeak」とは何か

15/03/28初稿

 PCM→DSD変換によるUDA-1の“なんちゃってNOS-DAC(というかアナログFIRフィルタとしてのみ)”用法の際、ちょっと気になってるのがこれ。

具体的にはDSDはPCMよりも最大で6dB低くなっている。澤田氏によれば、「DSDはノイズシェーパー(Δ∑変換器)の技術を用いて可聴帯域のダイナミックレンジを稼いでいるため、理論上の100%変調をかけるとノイズが増加してしまう」ため、抑えられているそうだ。
出典:http://av.watch.impress.co.jp/docs/topic/20131029_618702.html

 この記事によると、SACD規格ではΔΣ変調フルスケールの-6dBで使うように規定されているようです。それ以上のゲインではΔΣ変調歪みが出るからだそうで。
 とすると、PC側で行うPCM→DSD変換の際、変調歪みを避けるためPCMのピークを絞るべきなのでしょうか?
 というか、そもそもPCM再生の時、DACチップ側で行われるΔΣ変換はフルスケール(100%変調)なのでしょうか?


■6dBの謎

 早速、441Hz-6dBサイン波(2444)を再生してアナログキャプチャ、波形のレベルを見てみました。
 すると、≪foobar2000≫のリアルタイムDSD変換再生、≪JRiverMediaCenter≫の同再生、PCMそのまま再生(DACチップ内でΔΣ変換している)では、少なくとも数dBも違うようには見えませんでした。

 PCMをΔΣ変換する際、ソフトもDACチップも、すべて6dB絞ってる? またはすべて絞ってない?

 DACチップから出てLINE-OUTされるまでのアナログ信号ゲインはPCMモードとDSDモードで違っていても不思議ではないので、デジタルドメインで何か起こっているのかこれでは解りません。

・デジタル事情を調べる
 まず、“ライターがホントに解って書いてるのかアヤシイ(苦笑)”レポート記事や、メーカの宣伝文句などでこんがらがる前に、「技術資料」を紐解きます。

 JPPAという協会の資料だと、「-6dBから+3.1dB上(つまりフルスケールから-2.9dB?)が“MaxPeak”」とあります。
http://www.jppanet.or.jp/documents/audio_doc/jppa_chair_of_loudness_vol-1_2010.pdf

 TIのDACチップPCM1738の技術資料には明確に「DSDはPCMより6dB出力レベルが低い」とあります。
http://www.tij.co.jp/jp/lit/an/jaja008/jaja008.pdf

 プロ用サイト(と銘打っている)。PCMのフルスケールがDSDの50%変調に相当する図があります。
http://www.super-audiocd.com/professional/guide5.php

 これらを見ると、どうもSACDのフルスケール=0dBは確かにΔΣ変調50%のようです。DACチップからは、(細工しない場合は)DSDの0dBはPCMの-6dBのレベルで出力されるということでいいと理解しました。

 しかし、DSDには「Peak」と、それより3.1dB高い「MaxPeak」というふたつのピークがあるようです。PeakがMaxじゃないってどういうこと?

 というデジタル事情を踏まえ、さて、DSDとPCMの実際のアナログレベルはどのような関係になっているのでしょうか。
 冒頭のmarantzインタビュー記事ではいろんなケースがあるようですが…

・アナログ事情を試す
 ということで、UDA-1で実際にやってみることに。
 まず、便宜上“データ的な意味”でのゲインを以下のように表記することにします。

・DSD50%変調=DSD0dB  100%変調はDSD6dBとなります
・PCMのフルスケール=PCM0dB

 本当はSACD0dB、0dBFSなどと表記するようですが、本稿においてはこの方が解りやすいと思いまして。

 最終的なアナログレベルはアナログ段での増幅率によるのでこの数値と直接関係はありません。
 アナログキャプチャでのレベルは「DSD」や「PCM」を付けずdB表記します。

 そして、以下の条件でファイルの再生波形をアナログキャプチャで観察してみます。

・再生ファイル・・・サイン波 1200Hz-0dB/24192 ≪WaveGene 1.50≫で生成
           データ値改変を防ぐためリサンプラは使用しないのでPCM最高精度の192kHzとした
           +側ピーク値は7FFFFFhになっている(確かに0dB)ことをバイナリエディタで確認
・キャプチャ環境・・・Z68自作PCにSB-DM-PHD(2496モード)  ≪WaveSpectra 1.50≫にて
            録音レベル79(おおよそPCMフルスケール=キャプチャ時0dBになるように調整した結果)
           *オンボのLINE-INはPCMフルスケール入力できず1dBほど下げないとサチってしまうので
            SBを使用
・DSD変換・・・≪AudioGate 2.3.2≫  SACDを想定して2.8MHzに変換(DSD64)
・プレーヤ・・・≪foobar2000 1.3.6≫
        PCM→DSD変換再生の設定はDSD128(UDA-1仕様内で使おうということで),TypeB(FP32)
        DSD→PCM変換再生の設定は以下の通り

fb2kLPCM変換設定
*:ちなみに当設定では30kHzくらいでLPFかかります。「Multistage」では設定したSamplerateのナイキストでLPFかかります。「Installable FIR」は何かインストールしてないと使えませんでした。


 いろいろ試した結果、アナログレベルは以下のようになりました。「P」はPCM1795にとってPCMモード、「D」はDSDモードです。

P:PCM再生・・・0dB
     そのようにアナログキャプチャレベルを設定したのでアタリマエ。

D:PCM→DSDリアルタム変換再生・・・0dB
     ただし、こちらの方がPCM再生より0.4~0.6dB程度レベルが大きくなる。
     DACチップ内やDACチップ外で、PCMとDSDではDA変換動作が違うため?
     本稿の目的は3dBクラスの差違を見ることなのでとりあえず無視し、
     実際にはこちらを0dBとして調整した。

D:≪AudioGate≫でPCM→DSD変換して生成したdsfファイルをDSDネイティブ再生・・・0dB
     ≪foobar2000≫によるリアルタイム変換再生とゲインの扱いは同じと推定。

P:上記dsfをDSD→PCMリアルタイム変換再生・・・激しく音量低下。目視だがおそらく半分=-6dB

P:上記dsfを≪AudioGate≫で再び24192化したファイルをPCM再生・・・0dBに戻った。
     DSD→PCM変換については≪foobar2000≫とゲインの扱いが異なる。

D:≪AudioGate≫でゲイン+3dB設定でdsf化したファイルのDSDネイティブ再生・・・完全にクリップ。
     +3dBで再生している模様。

P:上記dsfをDSD→PCMリアルタイム変換再生・・・-3dBの一見マトモなサイン波が再生される。
     -6dB + 3dB = -3dB になってると推定。
     そして、+3dBというゲインでも「“dsfファイル内では(データとしては)”クリップしていない」ということ。
     これがPCMでは不可能な「MaxPeak」ということではないか?

P:同じく+6dB設定で作ったdsfをDSD→PCMリアルタイム変換再生・・・ピークあたりの波形が崩れた。
     また、DSDファイル内ではフルスケールのハズだが、再生されたアナログは0dB近傍まで
     届いていない。
     これが50%以上の変調率だと歪みが出るってことではないか?


 以上を見ると、DSDデータのピークはやはりΔΣ変調100%から-6dB(DSD0dB)が基本であって、DACチップ内でもその通り再生されているようです。

 また、UDA-1ではPCM0dBとDSD0dBの最終的アナログ出力レベルを揃えていると言えます。
 「DACチップ内の処理 or 外の処理」「デジタル or アナログ」などの段階や方法は解りませんが。
 DACチップ内の「Attenuation」機能でPCMを絞ってるような気はしますが…

 さらに、≪AudioGate≫では、PCMとDSDの相互変換でDSD0dBとPCM0dBをイコールに置いているっぽいですね。PCMのフルスケールから+3dBゲインアップしてもDSDデータとしては存在しえるようですが、PCMに戻すとサチってしまいますので。
 ≪foobar2000≫のPCM→DSD変換再生でもそうしている(PCMのフルスケールがDSD変換してアナログ0dBで再生されるので)ようですが、DSD→PCM変換においてはDSD6dBをPCM0dBに当てるのをデフォルトに置いているようです。つまりDSD0dBはPCM-6dBとして再生されるということですが、イキナリ明らかに音量が小さくなりますので聴感上も矛盾ありません。デフォルトではPCMで表現できない「プラスdB」の世界に入らないようにしているのでしょう。ここは≪AudioGate≫とコンセプト逆ですね。
 なので、0~+6dBまでゲイン調整可能になってるんですね。
 余談ですが、PS3のSACD再生音量がとっても低かったのはこのリクツかも知れません。

 ということで、少なくとも≪foobar2000≫のPCM→DSD変換においてはPCMフルレンジが変調率50%だと思いますので、“なんちゃってNOS-DAC”用法においてPCMのゲインを気にする必要はなさそうです。
 逆のDSD→PCM変換はちょっと考慮する必要ありそうですね。

・クリップしているのは出力か入力か
 実は上記実験ではこれが判っていません。
 DSD0dB以上のdsfファイル再生(上記でやったのは3dBと6dBだけですが)のキャプチャは、

・録音ボリウム下げてもサチる
・念のためやってみたM/BのオンボLIN-INでもサチる
・UDA-1純正プレーヤでもサチる

のですが、これだけだと

「出力がクリップしてる可能性」と
「出力はクリップはしていないがLINE-INが受けられないレベルなので受け側でクリップしている可能性」

両方考えられます(厳密には両方ダメな可能性もありますが(苦笑))。確かめるためには、どちらかで「確実にクリップしていない状態」を作る必要があります。
 UDA-1の出力をLINE-INが充分受けられるレベルに調整してキャプチャできればいいのですが…
 世の中にはゲイン調整するアダプタなどもありますね。

  ←-10dB     ←-20dB(商品説明にないけど)


 けど、このためだけに買うのもナンなので、「ボリウムを適量に絞ったUDA-1のヘッドホン出力」をキャプチャすることにしました。

 再生ファイルは、≪WaveGene≫で生成した0dBのwavを≪AudioGate≫でゲイン設定0dBと3dBでdsf化したものです。
 CDやSACDを意識して周波数は44.1kHz系で。ビット深度は波形歪みを見るので24bitで。疑似周波数が発生しないようサンプル数が整数になる1470Hzのサイン波としました。
 キャプチャ環境はハイレゾを聞いて見る記事と同じです。


1.DSD0dB (アナログキャプチャ)

DSD+0dB HP出力波形


2.DSD3dB (アナログキャプチャ)

DSD+3dB HP出力波形


 +3dB化したdsfファイルのDSD再生では、ゲイン弄っていない0dBのdsfファイルより3dB大きいと思われます。
 これで、UDA-1のDSD0dB=PCM0dB以上のアナログレベルでサチっていたのはキャプチャ側だと判りました(ヘッドホン出力は大丈夫だけどLINE-OUTはダメなんてことはないでしょう)。
 DSD3dB、0dBを超えたあたりからやや乱れ、頭がワニャワニャしてるのが気になりますね(笑)。

 しかし、これでもまだUDA-1の出力が一般機器より“大きすぎる”可能性が残ります。仕様には2Vとありおそらく2.0Vppのことであり、DSD3.1dBがそのスケールだと思いますので異常とは思えませんけれど、念のため。
 そこで、UDA-1のLINE-OUTをAVアンプであるDSP-Z7のLINE-INに入れ、DSP-Z7のヘッドホン出力を採取してみました。UDA-1の0dB以上の出力が一般的なAV機器の標準より大きすぎるのならDSP-Z7でもサチってしまうハズですが、UDA-1のヘッドホン出力と同じ結果となりました。
 また、+4dB,5dB,6dBのファイル再生しても、ピークはドンツキのまま(サイン波の頭が潰れていく)になるようです。
 以上、

「UDA-1のアナログLINE-OUTのフルスケールはDSD3.1dBまでであり、PCMのフルスイングより3.1dB大きい」

ということです。
 そして、DSP-Z7(まっとうなAV機器の代表として)のLINE-INはそれを受けられますが、オンボやSB-DM-PHDといったPC用機器(*)のLINE-INの許容レベルは超えてしまうということですね。

*:PC用機器のLINE-INはPCMデジタル録音するという目的がありますので、LINE-IN=AD入力のフルスケールを、PCM0dBの一般的アナログフルスケールレベルで規定&固定しているのかも知れません。


■「DSD変調歪」を可視化する

 マトモなDACユニットならDSD3.1dBまではちゃんと再生できるハズです。
 ですので、上記「DSD3dBサイン波キャプチャ」において頭がウニャムニャしているのはUDA-1のアナログ性能などの問題ではなく“変調歪み”によるものだと思えるのですが、UDA-1の出力限界点に近いということもあり、断定は躊躇します。
 そこで考えました。
 上記のファイルをプラスdBゲインでdsf化した後、-6dB設定で再PCM化することで、「DSD領域でDSD0dB以上=変調率50%以上における変調歪み」をデジタルドメインのスペクトルで見ることができるのではないでしょうか。

 ただ、特にDSD3.1dB以上は“あっちゃダメ”な領域なので、≪AudioGate≫の変換保証範囲外である可能性もあります。


0.DSD+0dB-6dB
 とりあえずフツーのハズの0dBを。

DSD+0dB-6dB.png


1.DSD+3dB-6dB

DSD+3dB-6dB.png


2.DSD+4dB-6dB

DSD+4dB-6dB.png

3.DSD+5dB-6dB

DSD+5dB-6dB.png


4.DSD+6dB-6dB

DSD+6dB-6dB.png


 確かに50%~100%領域はフォーマットとしては記録できるが音質はどんどん悪化する領域っぽいですね。
 上記はスペクトルを優先しましたが、波形の方を拡大すると頭がウニャムニャしてるのも確認できます。

 つまり、DSDにおける「Peak」と「MaxPeak」とは、

「突入的なピークを許容するマージンとしてDSD3.1dBまでは許可する(=MaxPeak)けど、なるべくDSD0dBで抑えときなね(=Peak)」

ということのようです。
 DSD音源商品で実際にあるかどうか知りませんが、これを見ると、規格上許されてるからとMaxPeakまでガンガン突っ込む「DSD版海苔マスタリング」とかあったらヤですね… 元々海苔マスタリングなPCMデータをPCM0dB=DSD3.1dB設定で変換などされたら悲惨なことになりそうです。


 なお、UDA-1のPCMフルスケール再生においてこのような歪みは認められませんから、ΔΣブロックにおける変調歪みについては充分考慮されていると考えていいでしょう。まあ、アタリマエと言えばアタリマエですね(苦笑)。
 なので、少なくともPCM1795においては、「PCM再生の時も内部ΔΣ変換ブロックの変調歪みを考慮して3~6dBくらい下げて入力した方がいいカモ?」といったことはなさそうです。


■MaxPeakの現実

 PCMをDSDに変換することで「なんちゃってNOS-DAC」として使う時、PCM0dBをデフォルトで敢えてDSD3.1dBなどにゲインアップする変換ソフトは多分ないと思いますので、変調歪みに関して考慮する必要はまずないでしょう。一応、変換ソフトはそのヘンの仕様を確認してから使い始めた方がいいとは思いますが。
 また、通常のPCM再生においても、少なくともPCM1795では充分考慮されているようです。万全を期すなら、DACユニットはそのヘンの仕様を確認してから使い始めた方がいいかも知れませんが。

 とりあえずは一安心ですが、ハイレゾ配信などの「DSD音源商品」をDSDネイティブ再生する時の事情が気になってきました。当面やらないとは思いますが(笑)。

・「DSDファイルの規格」はどうなっているのか
 ところで、+3.1dBまで許容されているというのはあくまでも「SACD用DSD」規格(ScarletBook AnnexD.3)のハナシです。
 SACDは専用プレーヤでしか再生できませんが、DSDファイルは単体DACユニットなど“ディスクプレーヤ”以外でも再生します。考慮すべき事情が異なりそうですが、「DSDファイルオーディオ」の規格はあるのでしょうか。

 DSD音源商品はSACD用を流用するケースが多いような気がしますので、事実上ScarletBook規格に準拠しちゃってると考えた方がよい気がします。また、後述するweb記事などを見ても、おそらくDSDファイル制作は“SACD用でなくても”ScarletBookの通り+3.1dBをMaxPeakにしてるのだと推察します。
 もし、DSD“ファイル”再生規格はDSD0dBまでだとするなら、ちゃんと“DSDドメインで”DSD0dBをピークにゲイン調整してから売ってるのでしょうか?
 たぶんそんなことしてないと思います(笑)。

 ですので、上記の通り例えばUDA-1のLINE-OUTを入れるとクリップしてしまうLINE-IN機器もありえます。
 その場合は、DSDドメインでのデジタルボリウムは一般的にはムリなので、DSDネイティブ再生しようとするとユーザ側ではどうしようもないということになります。まあ、問題になるのはPC用くらいしかも知れませんけれど。
 それより、例えば≪AudioGate≫がDSD0dBをPCM0dBに一致させている(ゲイン設定しないでPCM変換するとDSDの0~3.1dB領域はクリップする)方が問題かも?
 といってもそんなに山ほど当該目的のソフトあるワケじゃないですし、ゲイン設定できますし、そもそもあんまり出番もないかもですが(苦笑)。「いつかDSDネイティブ再生できるDAC買う」つもりで前倒しでDSDファイル買ってPCM変換して聴くような場合くらい?
 でも、気をつけないとですね。

・製作側はどうしているか
 こちらの記事では、ピークはDSD0dBではなくDSD3.1dBでAD変換しているようです。

レベル調整時には、SADiE上のメーターでチェックを行い、マックスピークが+3.1dBを超えないようチェックする。というのは、SACDとして販売し再生する場合は、SACDプレーヤー側に3.1dB分レベルを下げて再生する機能が入っていたが、PCで再生される配信音源の場合では、PC側にそういった機能がないため歪みの原因になってしまうのだという。
出典:http://www.phileweb.com/interview/article/201402/26/220.html

*:主旨からは外れますが疑問点を。
 文脈では「+3.1dBを超えないようにすることでPC再生で歪みを発生させないようにしている」ように読めますが、ScarletBookに準ずるならそこで抑えるのは当たり前ですよね。
 「SACDプレーヤではDSD3.1dBをアナログ出力の最大振幅にしていたが、PCではしてない=PCM0dBをフルレンジとしているので“もともと”+3.1dBレンジオーバーするところにさらにオーバーすると“さらに”歪みの原因になる」と読解すればいいのかな?

 OTOTOYにも以下のような音源説明があります。

また、DSDのネイティヴ再生を念頭に置いて、リマスタリングしていますので、以下のことにお気をつけ下さい。DSDにはPCMよりもヘッドルームがあります。PCMの0dbの上に、3.1dbほど余裕があるのです。今回のDSDリマスターの中には、レベルが0dbを越えて、その3.1dbのヘッドルームに達しているものもあります。AudioGateでこうしたDSDのファイルをwavファイルなどに変換すると、ピーク時にクリップして、歪んでしまいます。クリップしないように変換したい場合は、AudioGateの変換時のゲイン設定を-3dbに下げれば、避けることができます。
出典:http://ototoy.jp/feature/20130402

 明確に+3.1dBまで使ってると言ってます。

 一方、e-onkyoの2L無料サンプルDSD64を≪AudioGate≫でPCMに変換したファイルの最大音量は0dB未満でした。
 2LではDXD(352.8kHz/24bit)のオリジナルソースからいろんなフォーマットに変換して商品化しているよう(*)ですので、DSDデータでもプラスdBゲインがないのでしょうね。

*:http://www.2l.no/hires/
  http://ascii.jp/elem/000/000/947/947845/index-4.html

 このように、DSDデータでもSACD用ではないマスタリングもあるでしょう。

・データの中身と再生機器と
 e-onkyoは次のように言っています。

DSDのほうが圧倒的に小さいのが波形からも確認できます。つまり、CDとDSDを聴き比べるときは、アンプのボリューム位置が同じではいけません。DSDを再生するとき、まずはCDと同じ音量感で聞こえるまで、グイッとボリュームをアップさせてください。音量さえ揃えれば、圧倒的なDSDサウンドの本質に触れることができるでしょう。
出典:http://www.e-onkyo.com/news/115/

 データの話としては大正解でしょう。が、実際の再生ではDSDとPCMのアナログゲインは再生装置によって違うので、「圧倒的に小さいとは限らない」ハズです。
 例えば、アナログゲインとして「DSD0dBをPCM0dBに合わせる」プレーヤと、「DSD3.1dBをPCM0dBに合わせる」プレーヤがあるとすると、前者は「SACDの方がCDよりピークが3.1dB大きい」となり、後者だと「(MaxPeakをPCMのPeakと見るなら)同じ」となります。
 さらに、冒頭記事の「DSDが3dB低いまま出す」というmarantzコンセプトは、DSD6dB=PCM0dB(MaxPeakであるDSD3.1dBでもPCM0dBより約3dB低い)と理解できます。DSD6dBを変調率100%=DSD0dBを50%変調とするDACチップ処理そのまま、ということでしょう。この場合は「DSDの方が約3dB小さい」となりますね。一方、見てきた通りUDA-1ではDSD0dB=PCM0dBですので、「DSDの方が約3dB大きい」となります。
 データの事情は変わりませんが、それをアナログ段で(*)どう増幅するかによって最終出力は「DSD(SACD)の方が3dB大きい~3dB小さい」まで変わっちゃうワケです。実に6dBもの違いがあることに。
 DACユニット商品のコンセプトは統一されていないようですので、ここの事情を踏まえて評しないとこんがらがりますよね。

*:前述の通り、厳密に言えばDACチップ内のデジタル処理でPCMを下げている場合もあり得ます。


 以上、

「DSDファイル商品は結果的にScarletBookに準じて製作されているものがあり、最大音量がDSD3.1dBになっている楽曲がある」

「PCMから変換されているものもあるので、この場合の最大音量はDSD0dB、つまりPCMと同じ」

「DSD→PCMファイル変換する時は要注意」

「アナログ音量としてDSDの方が大きいとか小さいとかってハナシは、再生機器の設計に依存するので一般論にならない」

「DSDネイティブ再生アナログ出力レベルがPCM0dBより最大3.1dB大きくなるDACユニットもあるので、受け側が許容できるか要チェック」


ということですね。


■備忘録

・変調率50%以上だと歪むワケ
 例えば入力フルスケールが10のΔΣ変調機があったとして。
 レベル4のサンプルは「0」判定となり、0との差分4が次のサンプルにフィードバックされます。そのサンプルのレベルが7だったら足して11、オーバーフローします。サンプル値の上限が5なら、10を超えることはありません。
 原理はそういうことでいいのかな。単純すぎ?

・出力レベルと入力感度
 出力電圧2Vを入力感度200mVで受けた時、入力側の有意な増幅(というか減衰)最大ゲインは
20 x log10(0.2/2) で計算できる。
 このゲインで減衰させた時入力された2Vが内部で200mVになる。入力感度とは、その値がその後段回路のフルスケール(パワーアンプなら出力最大)になる値という意味。なので、このゲイン以上に上げても歪むだけで意味がない。

 Vrmsは平均値(振幅の半分の)、Vppはピークトゥピーク(全振幅)。なのでVrmsは少なくともVppの半分以下。
http://www.g200kg.com/jp/docs/dic/rms.html

・オーサリング関連
http://surroundterakoya.blogspot.jp/2009_07_01_archive.html

・JPPA
 「日本ポストプロダクション協会」。ポストプロダクションとは、テレビ番組などのコンテンツ制作を技術面からサポートする業務だそうです。
http://www.jppanet.or.jp/annai/annai_top.html


メインメニューへ

テーマ : オーディオ
ジャンル : 趣味・実用

foobar2000八面六臂

15/03/08初稿

 DSD再生につき、DAC側がどんな動作しているのかはおおよそ解りました。(少なくともUDA-1では)DACユニットは受けた1bitストリームを“ありのままに”アナログ化しているようです(UDA-1ではLPFとしてPCM1795のアナログFIRフィルタを通すだけ)。
 なら、PCMをDSD変換する時、PC側はどんな動作をどう設定すればよいのでしょうか。
 DSDネイティブ再生やPCM→DSDリアルタイム変換再生が可能で、いろんな設定が解放されているプレーヤソフトとして≪foobar2000≫について考えてみようと思います。

 ≪foobar2000≫のいろんなバージョンは以下の通りです。

foobarバージョンV


■≪foobar2000≫の「PCM to DSD」機能を調べる

・「PCM to DSD Method」とは何か
 いろいろ試す前に、まず用語の意味について確認しておきたいと思います。

 SDMは「Sigma-Delta Modulation」の略でしょう。

 FP32は普通に「32bit FloatingPoint」だと思います。
 readmeに

05/06/13:Version 0.6.4 - PCM to DSD multithreading, floating point SDMs.

とありますし、以下ページにもそういう記述ありますので。
https://diyaudioheaven.wordpress.com/digital/pc-software/foobar-2000-for-dummies-part-2/

 また、64bitのチェックをハズしても両方選べますから無印が64bitフロートってこともないでしょう。
 つまり、無印は言ってみれば“INT32”だと思います。
 なお、同じTypeなら無印よりFP32の方がCPU負荷(ASIOhost64のCPU使用率)は低いです。

 ということで、無印系ではなくFP32系を使うことにします。

・タイプ違い
 ということを踏まえて、では、Typeを変えると何がどう変わるのでしょうか。
 おそらくDSDエンコーディングパラメータ(アルゴリズム?)の違いと推察されますが、普通に試聴してみてもなかなか判りませんよね。
 しかしスペクトルキャプチャしてみると一目瞭然でした。採取条件は以下の通りです。

・441Hz/-6dBサイン波の24176ファイル再生
 純音ですので88.2kHzまで余計なスペクトルはなく、イメージングノイズも「176kHz-441Hz」まで発生しないハズで、さらにそのあたりはポストフィルタでカットされてるので事実上倍音やイメージングノイズがないスペクトルになるハズ
・アップサンプリングなどの処理はナシ
 上記の通りなので余計な処理はなくていいハズ
・ノイズシェイピングの差が一番判りやすいであろうDSD64にて
・Z68+Core i7-2600K自作機のUSB3.0拡張カードPP2U-E経由UDA-1にて
・アナログキャプチャ環境は基音と倍音を見て聞いた時と同じ(録音レベルのみ50)

 参考までにCPU負荷を添えておきます。
 2600Kを2コア・1.6GHzに固定かつTBとHTをDisableにしてパフォーマンスを下げ、DSD256で負荷を上げた状態でのASIOhost64の値をタスクマネージャ読みしたものですので、フラフラしてる中でのざっくり値ですけれど。


1.TypeA (FP32) (アナログキャプチャ)  約28%

TypeA:DSD64


2.TypeB (FP32) (アナログキャプチャ)  約30%

TypeB:DSD64


3.TypeC (FP32) (アナログキャプチャ)  約23%

TypeC:DSD64


4.TypeD (FP32) (アナログキャプチャ)  約32%

TypeD:DSD64


・処理負荷とノイズシェイプ結果とのバランス型の A
・とにかくノイズシェイピングによるノイズの最大値を抑える B (Dよりノイズエネルギーの帯域は低くなる)
・とにかくノイズエネルギーを極力高域に持っていく D (Bより最大値は大きくなる)

ってところでしょうか。実際の音質の善し悪しは一概には言えませんが、TypeBかDがよさそうな気がします。

 TypeCの意図はヨクワカリマセン(笑)。負荷を下げるにしても効果があるほどとは思えませんし。理由は解りませんがかなりノイジーですし(添付版は中でも穏やかな瞬間を選んだものです)。

 なお、無印もFP32と原則同じ特性のようです。若干異なるようにも見えましたが意図したものではないと思います。


■≪foobar2000≫ VS ≪JRiver MediaCenter≫

 ところで、リアルタイムPCM→DSD変換できるプレーヤとしては≪JRiver MediaCenter≫というソフトもありますよね。有料ですけれど。よく≪foobar2000≫と音質比較されているみたいですので、特性にどんな違いがあるのか気になったので調べてみました。有料ソフトの有意性や如何に?
 以下、JRMC20にて。

・DSD変換Method
 1xDSD(DSD64)、2xDSD(DSD128)、4xDSD(DSD256)、8xDSD(DSD512)が選択できます(UDA-1ではDSD512は通りません)。ちなみに「ビットストリーミング」はHDMI,S/PDIF,DSD,カスタムが選べますが「無し(推奨)」で変換再生もネイティブ再生も問題ありません。何の設定なんでしょうかね?

JRMC20:DSPスタジオ2

 それぞれのノイズシェイピング状態を見てみます。


1.DSD64(アナログキャプチャ)

サイン441-6dBDSD64:JR:PP2U-E


2.DSD128(アナログキャプチャ)

サイン441-6dBDSD128:JR:PP2U-E


3.DSD256(アナログキャプチャ)

サイン441-6dBDSD256:JR:PP2U-E


 最大値は高めでもその発生をなるべく高域に追いやる変換タイプのようです。≪foobar2000≫で言うとTypeDの方向性みたいですが、20kHzあたりを見ると差がありますね。

・DSD変換とアップサンプリング
 PCM→DSD変換再生を選択するとアップサンプリングは選択できなくなります。通常楽曲のスペクトルを見るとイメージングノイズがありませんので、DSD変換の場合は自動的にアップサンプリングをかけているようです。DACチップ内の動作を再現しているのですね。「4xDSD(DSD256)」でもイメージングノイズは見えませんので、4倍以上のOSDF処理をしてからDSD変換しているようです。
 ですので、≪foobar2000≫と≪JRiverMediaCenter≫のDSD変換音質を比較するなら、fb2k側にアップサンプリング設定しないと同条件にならないです。「DSD変換」を有効にしただけだとフィルタなし=イメージングノイズまみれと比較することになってしまいますので。

 アップサンプリングかけて比較したところ、強いて言えばJRMC20の方が厚みやエネルギーを感じるでしょうか。もちろんfb2kの設定にも依りますが。

 ということで、JRMC20では“なんちゃってNOS-DAC”的な使い方はできないということですが、リクツを考えるとDSD変換するなら強制的にアップサンプリングフィルタ入れるのはスジでしょうね。

 ちなみに、2xDSDと4xDSDではバッファリングをデフォルトより大きくとらないと音跳びしてました。また、同じDSD倍率でもfb2kよりCPU負荷は高めで、マルチスレッドではありますが複数コアにまんべんなくではなく1コアに集中処理させてるようでした。ですのでfb2kよりCPUパフォーマンス要求は高くなります。もしかしてそのあたりも音質チューニング?


■≪foobar2000≫ VS ≪AudioGate≫

 PCM→DSD変換できるソフトとしては≪AudioGate≫も有名ですよね。音質も評判いいです。
 KORG製DACユニットじゃないとリアルタイム再生は出来ませんけれどファイル変換(エクスポート)はできますから、dsfファイル化して≪foobar2000≫でネイティブDSD再生したスペクトル採取しました。
 TwitterWareだったバージョン2.3.2にて。

 みせてもらおうか、業務用DSD機器開発メーカの実力とやらを!

・DSD変換Method
 2.8MHz(DSD64)と5.6MHz(DSD128)のみ選択できます。


1.DSD64(アナログキャプチャ)

AudioGate:DSD64


2.DSD128(アナログキャプチャ)

AudioGate:DSD128


 うおお、これはさすがと言うべきでしょうか。シェイピングしたノイズの抑えっぷりは見事、これは音良さそうだなぁと思わせるスペクトルですね。DACユニット選ばなければ(*)≪AudioGate3≫買うのになぁ(苦笑)。

 こちらも同じく、DSD変換すると自動的にアップサンプリングかかっています。普通の楽曲のスペクトル見たところイメージングノイズは認められませんでしたので、4倍以上と推定されます。


*:KORG社の説明は以下の通り。有償版でもDSD再生に他社製DACは使えないと読める。

※:AudioGate 3 を使ってDSDネイティブ再生をするにはDS-DACシリーズが必要となります。他社のDACではサンプリング周波数を2.8Hz/5.6MHzには設定することができないことをご了承頂きました上で、ライセンスをご購入くださいますようお願い申し上げます。
出典:http://www.korg.com/jp/news/2014/0530/


 以上、Type設定の参考にしようと思います。

 なお、DSD変換の違いをノイズシェイピング状態で見ているのは私にはとりあえずそれしか手がないからで(笑)、実際のパラメータやアルゴリズムの違いは解っていません。

 ところで、PCM→DSD変換を「アップサンプリング」と呼ぶことがあるようですが、どうなんでショ?
 確かにサンプリング周波数は格段に上がってますがビット深度は劇的に減少してますし、そもそもPCMとDSDは基本原理からして違うのですから、当BlogではPCM→DSD変換は「アップサンプリング」とは呼ばないようにしています。


■必須のアップサンプリングを考える

 先の考察で、「≪foobar2000≫でDSD変換するならアップサンプリングしておかないとイメージングノイズまみれになる」ことが解りました。ですので、組み合わせるアップサンプラを選びその設定を決める必要があります。

 といっても、2496以上などの場合はこれまでみてきた通り「イメージングノイズを許容してフィルタによる変形を防ぐ」考え方もあるでしょうから、その場合は不要です。が、44.1kHzや48kHz音源の場合はイメージングノイズは可聴域のすぐ隣にありますから一般的には必要でしょう。もちろん、それでもフィルタヤダって考え方もアリですし、「DSD64だとどうせシェイピングしたノイズまみれぢゃん」と言われればそれまでですけれど(笑)。

 fb2k用のリサンプラとしては≪SoX Resampler≫プラグインが代表的だと思いますが、最近登場した≪Resampler-V≫なるプラグインは設定項目が多彩で視覚的にも解りやすくなっています。
 本稿では“V”を使ってみようと思います。

・リ・サンプラーV!
 アルゴリズムはSoXかSSRCを使っており、どちらか選べるようになっています。それぞれのプラグインが無くても動作しましたので≪Resampler-V≫が内蔵しているようです。とりあえずこれまで使っていたSoXの方でちょっと弄ってみます。
 設定項目は以下の通りです。

・PassBand・・・LPFの減衰開始周波数でしょう
・StopBand・・・LPFの遮断周波数でしょう
・StopBandAttenuation・・・遮断帯域での減衰レベルでしょう
                SoXなら-96dB~-198dB、SSRCだと-240dBまで調整可です
・PhaseResponse・・・フィルタ特性と理解しておけばよいかと

 ≪SoX Resampler≫では、「aliasing/imaging」をAllowするとStopbandが高周波数に移動するようです。比率で設定しているためPassbandも一緒に移動しますので、Vではそれを独立させたというカンジですね。
 逆にPhaseResponseはスライダじゃなくて3種類の選択にしたようです。それはそれでいいかも。
 Attenuation設定があるのはいいですね。減衰特性を強くすると演算対象のサンプルが増えてエコーが拡散するデメリットがあるようですから、あまり欲張らない方がいいと思いますので。

 ちょっと弄っていたら面白い仕掛け(?)を発見しました。PassBandとStopBandの組み合わせでメッセージが出るんですね。Gentleは「ゆるゆる」、Mediumは「フツー」、Steepは「きっつぅ」かな? 作者さんの推奨値なのでしょうか。
 以下発見した組み合わせをメモしておきます。

 StopBand/PassBand
   100.0% 98.2%(Steepest) -144dB以下にしないと出てこない
   100.1% 選択できず
   100.2% 83.4%(Medium)  StopBand最低(100%だとメッセージはない)
   100.3% 93.4%(Steep)
   100.4% 選択できず
   100.5% なし
   100.6% 93.7%(Steep)
   100.6% 83.8%(Medium)
   100.6% 66.9%(Gentle)
   101.7% 68.0%(Gentle)
   102.0% 95.1%(Steep)
   102.3% 68.6%(Gentle)
   102.7% 95.8%(Steep)
   102.7% 69.0(Gentle)
   103.0% 96.1%(Steep)
   103.0% 86.2%(Medium) 
   103.0% 69.3%(Gentle) 
   106.4% 89.6%(Medium)
   106.8% 90.0%(Medium)
   108.8% 92.0%(Medium)
   110.5% 93.7%(Medium)
   111.9% 95.1%(Mesdium)
   116.1% 82.4%(Gentle)
   115.0% 98.2%(Medium)

 さて、どんな設定がいいのでしょう? 最終的には“聴いて決める”のはアタリマエとしても、どんな設定も出来てしまいますから、何か“アタリ”は欲しいところです。

 ちょっと考えて、「市販ソフトの特性をパクる参考にさせていただく」のはどうだろうかと(笑)。
 DSD変換の前段のLPFも同じ特性と仮定して、PCM再生におけるアップサンプリングスペクトルを採取してみます。


■商用ソフトのアップサンプリング特性

 「SoundBlaster DigitalMusic PremiumHD」のS/PDIFループバック機能を使ってデジタルドメインで比較してみます。DSD再生ではデジタルダイレクト録音できませんが、PCMならお手の物、デジタルで録らない手はありません。
 SB-DM-PHDの最大スペックが2496ですので、2448ファイルの2倍アンプサンプリングを行います。
 再生ファイルは≪WaveGene 1.50≫で生成した「ホワイトノイズ-3dB」です。人工波形ですのでLPFかかってません(ナイキストのヘソはありません)し、ホワイトノイズですのでナイキスト周波数以降もホワイトノイズのイメージングノイズが連続しますから、LPF特性がそのまま現れると考えたためです。
 APIは、JRMC20はWASAPI排他モードにて(ボリウム効きませんしWMPが同時動作できませんので排他でしょう)。≪AudioGate≫のWASAPIは排他じゃない(ボリウム効くしWMP同時動作します)ようなのでASIOにて。

・≪JRiver MediaCenter20≫

ホワイトノイズ2448-3dB x2:JRMC20


・≪AudioGate 2.3.2≫ 高品位
 ちなみに「リアルタイム変換:低品位」だと、どうもWindowsSoundEngineのリサンプラを使ってるような? DSD変換エクスポートの場合はノンリアルタイムでもあるので高品位だと思いますが…

ホワイトノイズ2448-3dB:AudioGateでx2


 ≪AudioGate≫はDSD変換の時のような驚きはありませんでした(笑)。StopBandはナイキストをオーバーしてる=イメージングノイズを許容するタイプのようです。
 JRMC20はずいぶんと急峻なLPFかけてるんですね。ナイキスト周波数たる24kHzで“真っ逆さま”です。念のためインパルス応答も見てみましたが一般的なプリ・ポスト対象型(Linear型)のようです。フィルタ特性には自信たっぷりってことでしょうか。

・≪Resampler-V≫設定を詰める
 fb2kのSoXアルゴリズムも劣らないと仮定し、JRMC20の特性とニアリーになる≪Resampler-V≫設定を詰めてみました。

JRMC20と近似設定(WN2448-3dBx2にて)

 スペクトルはこんなカンジです。x2だけのものなので、厳密には上記商用ソフトと条件異なりますけれど。

ホワイトノイズ2448-3dB:Resampler-V近似設定でx2

 PassBandはこれ以上キツくできないので落ち始めはちょっと丸くなってます。
 Attenuationは、-96dBだと減衰が安定しないように見えますが(VのGUI表示上の問題かも知れませんが)、-120dBもあれば充分っぽいです。

 とりあえずエコー状態を1200Hz-3dBのノコギリ波で比較してみましたが、おおむね同じに見えました。

 近似設定になってるかどうか本当のところは解りませんしもちろん似せるほどいいとも思っていませんが、参考にはなるかなと思います。少なくとも闇雲にチャレンジするよりいいかなと。

 なお、例えばTI製DACチップでのPCM再生では、ΔΣブロックの前で8倍オーバーサンプリングデジタルフィルタ処理されています。
 よって、極力DACチップ動作に近づけるコンセプトでいくなら、少なくとももう一段2倍アップサンプリングを入れて合計4倍とし、3fsイメージングノイズ除去くらいまでは行う必要があるでしょう。
 ただ、二段目以降の設定は「一番ゆるゆる」でいいのではと思っています。


 これで、DACユニット側の動作に加えてPC側ソフトの処理特性もおおよそ解りました。
 DSD128かDSD256、TypeB(FP32)かTypeD(FP32)、アップサンプリングは上記設定を中心に、いろいろ聴きこんでいこうと思っています。

 しょわしょわノイズが気になりますけれど。


メインメニューへ

テーマ : オーディオ
ジャンル : 趣味・実用

UDA-1を活かす

15/02/21初稿

 DSDネイティブ再生可能なDACユニットにPCMをDSD変換して渡せば、PCMデータでもOSDF(*)をバイパスして鳴らすことが可能だと解りました。

*:OSDF=オーバーサンプリングデジタルフィルタ(以下同)

 いろいろ活用できそうな用法ですので、その際のDAC動作について確認しておこうと思います。
 所有しているSONY製USB-DACアンプUDA-1にて行いますが、DSDネイティブ再生可能なDACユニット(*)なら同じ動作する可能性は高いと思います。

*:「DSDストリームをそのままアナログ化するタイプのDACチップ」に「無加工データを送り込んでいる」製品を指します。DSDをPCM変換して処理するDACチップ搭載機は当然含みませんし、DACチップの前に独自のフィルタやSRCなど搭載している製品(それをオフできない製品)も含みません。




■UDA-1でPCM1795の1bitストリーム処理を調べる

 “なんちゃってNOS-DAC”とっても楽しそうですが、OSDFだけでなくDACチップのΔΣ処理までPCで行ってしまうことになります。
 その際、渡された1bitストリームデータはDACユニットの中でどのようにDA変換されているのでしょうか?

 UDA-1では、カタログに「アナログFIRフィルタ」とあります。
 おそらく「アドバンスドカレントセグメントブロック」がDSD時には「アナログFIRフィルタ」になるというTI資料記述通り、なのだと思いますが、DACユニットとしてチップ前段で何かしている可能性もあります。
 ので、「ΔΣ型DACチップ搭載のDACユニット」として、PCM再生の事情も合わせ以下のような点を確認したいと思います。

・DSDモードでは入力された1bitストリームを無加工で再生しているのか
・PCMモードでは何ヘルツの1bitストリームにΔΣ変換されているのか(TI推奨のDSD128?)
・それはPCMソースのサンプリング周波数で変わるのか固定なのか(TI推奨の固定?)
・結局、アナログポストフィルタはどうなっているか
・ところで48kHz系のDSDデータの倍率は整数倍か・そのまま受けているのか

 ということで、2444,2488,24176ファイルのPCM再生と、DSD64,DSD128,DSD256再生をアナログキャプチャして比較してみました。

・再生録音・・・≪foobar2000≫のバージョンやAD変換環境は「基音と倍音」記事と同じ(録音レベルのみ50)
・再生音声・・・441Hz/-6dBのサイン波
         44.1kHz系にしたのは、通常DSD**といった数字は44.1kHzの倍数を示していることが多いため
・API・・・DSD再生と比較するのでPCM再生時もAPIはASIOで統一
・DSD変換Method・・・とりあえず「SDM TypeA(FP32)」

 受信周波数はUDA-1のLEDで確認しながら実施しました。
 ちなみに、最初無音ファイルでやってみたのですが、PCM→DSD変換アルゴリズムが「そんなデータしらね」状態になるのか、盛大なノイズ発生をみたのでサイン波にした次第。サイン波なら倍音もありませんし。

・DSDデータは素直にDA変換されているか
 まず、サイン波24176を≪foobar2000≫でDSD64、DSD128、DSD256変換再生した場合です(アップサンプリングはナシ)。UDA-1にとってはDSDネイティブ再生モードになります。


1.DSD64 (アナログキャプチャ)

サイン441-6dBDSD64


2.DSD128 (アナログキャプチャ)

サイン441-6dBDSD128


3.DSD256 (アナログキャプチャ)

サイン441-6dBDSD256


 1bitストリームはソースの周波数のまま処理されている(例えばDSD64をDSD256に変換したりはしていない)と見ていいでしょう。「アナログFIRフィルタ」にそのまま突っ込まれているようですね。

・PCMデータはΔΣブロックで何ヘルツの1bitストリームに変換されているか
 続いてPCM3種のスペクトルを見ます。


1.2444 (アナログキャプチャ)

サイン441-6dB2444


2.2488 (アナログキャプチャ)

サイン441-6dB2488


3.24176 (アナログキャプチャ)

サイン441-6dB24176


 ΔΣブロックでDSD変換された後の周波数特性は原則同じとみていいでしょう。DSD64,128,256は上記の通りもっと明らかに違いますので。
 つまり、

・ΔΣブロックにおける変換結果としての1bitストリーム周波数はPCMソース周波数には依存しない
・高域のノイズシェイプ状態を比較すると、UDA-1はどうもDSD256と同等性能レベルの変換(*)している模様
・確かに「ポストフィルタの特性はPCM周波数に関係なく同じ」と見てよさそう

 176.4kHzがちょっとノイジーに見えるのはUDA-1が忙しいからでしょうか。8kHzの高調波ノイズはおそらくUSB Audio Class2のフレーム周期125usでしょう。88.2kHzだけややフラットに見えるのは面白いですね。

*:データシート上ではPCM時のΔΣ変換はDSD128までしか設定がないので、あくまでもノイズシェイピング状態からみた“相当”です。DSDデータはそのままアナログFIRフィルタに入りますが、PCMデータのΔΣ変換&アナログ化はTI社自慢のアドバンスド・カレント・セグメント方式であり、単純な1bitストリームではないためです。後述します。

・48kHz系のDSD倍率は整数か
 UDA-1では48kHz系PCMのDSD256変換も通っちゃいます。この時≪foobar2000≫のPCM→DSD変換では、どんな処理されてるのでしょう? 12.288MHzになってるのでしょうか? それとも44.1kHz系のDSD256たる11.2896MHzに非整数倍変換?(あんまり可能性はないと思えますが…)
 また、UDA-1ではそれをそのまま再生しているのでしょうか?
 それを確かめるため、2444と2448のサイン波(それぞれ441Hz,480Hz/-6dB)をDSD64変換し、ノイズシェイプ状態を比較してみました。確実と言える方法ではありませんけれど。
 DSD64にしたのは、ノイズシェイプ状態が一番ハデなので、差があるなら一番判りやすいのではと思ったためです。


1.2444のDSD64 (アナログキャプチャ)

2444DSD64.png


2.2448のDSD64 (アナログキャプチャ)

2448DSD64.png


 微妙ですが、2448の方がノイズの山が若干高域側にシフトしているように見えます。少なくとも同じではなさそうです。
 ということは、≪foobar2000≫のDSD変換は48kHz系でもズバリ整数倍にしており、PCM1795もそのまま受け付けているようです。48kHz系のDSD256は仕様オーバーですね… ってだからもともと仕様外だって(笑)。

・ソースによるノイズシェイピングに違いはあるか&DACはそれを再現しているか
 ついでに、もともと1bitストリームであるDSDソースのDSDネイティブ再生に違いがあるのかも見てみました。
 もし違いがあることが確認できるなら、PCM1795はソースのビットストリームを忠実にアナログ化している追加事例になると思います。加えて、「ソースによってDSDエンコーディングの特性は違う」ということにもなります。
 違いがなかった場合は、どんなソースも同じシェイピング状態になのか、UDA-1で何らかの変換されて同じになっているのかは判別できませんので、特に役に立たないサンプリングですけれど(笑)。


1.とある邦楽 (アナログキャプチャ)

DSD64邦楽


2.とある洋楽 (アナログキャプチャ)

DSD64洋楽

 よかった、違いがありました(笑)。


■デジタルフィルタリングとΔΣ変換をPCで行う

 以上、DSDネイティブ再生時、DACユニットでは1bitストリームをそのままDA変換しているようだと解りました。
 DACユニット内で未知の変換は行われていないことを踏まえ、改めてどんな動作しているかみてみます。

・スペクトルを拝見
 PCM再生の時、PCM1795のOSDFは8倍固定でかかります。
 そして、ΔΣブロックでソース周波数によらずDSD256相当の性能を持つマルチストリーム(マルチレベルストリーム。周波数的にはおそらくDSD128)に変換しているようです。
 DSD再生の時、入ってきたシングルストリームデータは特に変換などはされていないようです。

 一方、≪foobar2000≫では、リサンプリング機能で倍率が、PCM→DSD変換機能でDSD64,128,256(UDA-1相手の場合)が選択できます。

 ですので、例えば

「SoXをx4とx2の2段入れて8倍アップサンプリング」&「ASIOでDSD256に変換」

すれば、普通にPCM再生する際PCM1795内部でやっているデジタル処理をPC側で実行する状態にできるということです。ざっくり言えば、ですが。

 さて、この時のアナログ出力につき、あるCD音源ファイル再生をキャプチャしてみました。


1.無音時:RealtekのAD変換回路のフロアノイズ (アナログキャプチャ)
 まず、AD変換の限界を確かめておきます。

Realtekフロアノイズ


 ざっくり-110dBあたりでしょうか(値がホントかどうかはこの際無関係)。
 ということを押さえた上で、次に、あるCD音源→DSD256変換のアナログスペクトルを見ます。PCでLPFかけると、前稿で見たOSDFなし状態のイメージングノイズはどうなるでしょうか。

2.SoXでx2した時 (アナログキャプチャ)

OSx2→DSD256


3.SoXでx4した時 (アナログキャプチャ)

OSx4→DSD256


 20kHz以上はバッチリLPF(Realtek測定限界以下(笑))されてます。x2だと66kHz以上は残ってます。
 想定通りの動作していると見ていいでしょう。また、奇しくもサンプリング定理を考えた記事でデジタルデータ状態でシミュレートしたOSDFのイメージングノイズカット動作について、実際のアナログ信号で可視化できたということですね。
 先の考察の裏取りにもなりました。

・PCM1795のPCM処理とDSD処理の違い
 ところで、PCMモードでのΔΣ変換結果は、DSDモードで受信したデータとイコールになるワケではありません。実際には以下のような違いがあるようです。
 ざっくり言えば、ですが。難しいんですもん(苦笑)。

・PCM通常再生
  PC側:PCM(マルチビット)出力
 ⇒
  PCM1795側:PCMをOSDF→複数の1bitストリームに分割変換→カレントセグメント機能でアナログ変換

・PCM→DSD変換再生(PCM1795にとってはDSDネイティブ再生)
  PC側:PCMをアップサンプリング→1本の1bitストリーム(DSD)に変換→出力
 ⇒
  PCM1795側:アナログFIRフィルタ(カレントセグメントブロックがそのように動作)でアナログ変換


■DSDネイティブ再生対応DACユニットの有効活用

 あくまでも「DACユニットにDSD形式でデータを渡す場合」のハナシです。「DSDフォーマット音源」の有利不利のハナシではありません。

・ハイレゾはNOS-DACとして再生する
 イメージングノイズが高域にしかないことでフィルタリングしなくても済む可能性があることもハイレゾの効能のひとつだと考えています。
 そのためにはDACユニットにOSDFをオフする機能が必要なのですが、それがないDACでもPCM→DSD変換して渡せば同等の処理ができることが解りました。
 例えば2496のハイレゾなら、
「デジタルフィルタリングで波形変更を許容して48kHz以上にあるイメージングノイズをカットする」のと
「超高域にノイズは残るがフィルタリングによる波形変形はない」
のとどちらがいいか、聴き比べることも出来ますね。

・メンドウなお仕事は極力PCでやっちゃってDACを余裕で動かす
 PC側でアップサンプリング→DSD変換してDACに渡すと、普通ならDACチップでやっているデジタル処理をほぼPC側でやることになります。ざっくり言うと、UDA-1内蔵のPCM1795を「1bitストリームDA変換チップとしてのみ使っている(*)」状態に出来るということです。
 しかも、普通ならほとんど出来ないデジタルフィルタやΔΣ変換機能の設定もいろいろ可能になります。
 改造も工作もせずこういうことが出来ることこそ、「PC-Audio」の醍醐味だなぁと思いました。

*:UDA-1の説明には「DSD再生時アナログFIRフィルター方式、PCM再生時アドバンス・セグメント方式を使用しています」とありますから、正確には「DSDストリームをアナログ化するためのLPFとして、アナログFIRフィルタとしてのみ使っている」となります。しかも「192KHz 32bit 対応 D/A コンバーターのアナログ出力をセレクターやコネクターを一切介さずダイレクトに出力するD/A DIRECT端子を搭載」だそうで。鮮度高そう~


 SoX Resamplerを重ねて16倍アップサンプリングにしてみたり、Resampler-VでPassBandとStopBandの差を広げてみたり。DSD変換ではMethod Typeを変えてみたり。
 楽しいですね。

 これも≪foobar2000≫をはじめとするフリーソフトを提供してくださっている方々のお陰。感謝感謝です。

・効果のほどと効果の理由
 音質はシステムや主観に依存するので詳論しませんが、ざっくり、アップサンプリング=OSDFの倍率を上げていくとキレイになっていくカンジです。DSDの倍率も高い方が好ましいでしょうか。
 少なくとも、UDA-1においては、試してみる価値はあると思います。追加コストありませんし。

 ただ、いろいろ弄っている中で、PCの処理能力に影響されるかも知れない気がしています。
 また、DSD変換だと曲がフェードアウトして終わるあたりに“しゅるしゅろしゅれ”ってノイズ(?)が聞こえることがあります。DSD256だと聞こえちゃいますね。DSD128、DSD64と倍率が小さいほど小さいようです。≪foobar2000≫よりは小さいですが≪JRiverMC20≫でもDSD256だとやや聞こえますので、≪foobar2000≫特有の現象ではなくPCM→DSD変換による付帯音ではないかと。ちなみにアップサンプリングの有無や変換Methodは関係ない模様。

 いずれにしろ、「いろんな鳴らし方がある」のはいいことですよね。ERIとしてはこれでUDA-1を使う機会も増えそうです。


 「DACチップでの処理とPC側での処理」どっちが高性能かは定かではありません。専用ハードと汎用コンピュータのソフト処理ですので、比較するならちゃんと考える必要があるでしょう。私には即断は無理っす。上述の通り最終的なアナログ変換の仕組みも異なるみたいですし。
 よって、その点での音質メリット有無は現時点ではなんとも言えません。

 が、少なくともDACチップの“忙しさが圧倒的に緩和されている”のは間違いないでしょう。デジタル処理がほとんど無くなっちゃうワケですから。
 参考までにワットチェッカでUDA-1の消費電力をみてみました。家庭用ACの変動をなるべく抑えるため、CSE製レギュレータRG-50のACにて。調べた時は99.5~99.7Vでした。
 とあるCD音源につき≪foobar2000≫の設定を変更して以下を計測。PCMモードもASIOにて。出力ビット深度は32Bitです(16Bitにしても変わらないようですが)。ResamplerはSoXのデフォルトを使いました。

・起動直後アイドル 0.23A 12W安定
・x4&DSD256再生 0.23A 12Wたまに13W
・x4&DSD128再生 0.23A 12W安定
・x4&DSD64再生  0.23A 12W安定
・x4再生        0.23A 13W安定
・x2再生        0.23A 12W~13W
・x1再生        0.23A 12W安定

*ちなみに、UDA-1は再生停止すると直前の“PCMモード動作状態”でアイドル化するようです(DSDモードは無視)。

 x4(176.4kHz)は32bit転送されていると仮定してもx4x32=DSD128相当ですので、ビットレートを考えるとDSDモードの方が低消費電力に見えます。
 「AC電力のふらつき」のハナシですので、あくまでも参考レベルですけれど(AC電圧が変わると変わっちゃう)。


 「デジタルフィルタOFF機能付きDACユニット」買わなくてよかった(笑)。

 しかし、こうして見てくると、DSD再生モードはDSD64じゃ物足りない気がしますねぇ。20kHz以上の信号はノイズに埋もれちゃいそうですので(*)。DSD128でもどうでしょう…?

*:DSD64=2.8MHz=SACDは100kHzをカバーできるとかって言われてますけど(だから24192相当と言われる?)、20kHz以上はシェイピングされたノイズがどんどん大きくなる一方、“普通の音楽”では周波数成分のレベルは逆にどんどん小さくなっていきますよね。実質的にはカバーになってないような気がするのですが。


 どんどん贅沢になってゆく(笑)。

 現在HDMI-Audio用に使っているE-350システムだとDSD128以上の変換はキツイので、PCパワーアップしたくなりました。困ったものです(笑)。


メインメニューへ

テーマ : オーディオ
ジャンル : 趣味・実用

アップサンプリングとDACとハイレゾをデジタルフィルタする

15/01/31初稿

 サンプリング定理について勉強した時、「イマドキのDACチップではLPFとしてオーバーサンプリングデジタルフィルタ処理が行われている」と理解しました。
 では、とすると、です。
 ≪foobar2000≫のSoX Resamplerなど、PC側で行うアップサンプリングとの関係や違いはどうなっているのでしょう?


 本稿ではオーバーサンプリングデジタルフィルタをOSDFと略しています。
 また、本Blogでは、なかった高域を補間生成する処理は「オーバーサンプリング」や「アップサンプリング」とは呼ばずに区別しています。
 念のためですが、本稿の対象は「PCM」のみです。DSD音源の再生は含みません。


■PCのアップサンプリングとDACのOSDF…もうひとつのハイレゾの効能

・プレーヤ側で行うアップサンプリングの意義・効果とは
 周波数をアップする時、単純にサンプルを“間足し”するだけではイメージングノイズは減りませんから、LPFをかけないと成立しません。そして、理論上LPFをかけることは補間フィルタ(インターポレーションフィルタ)をかけることとイコールになるそうです。つまり、送り出し側で行うアップサンプリングにはLPF処理=デジタルフィルタ処理が必ず含まれています。
 実際、≪foobar2000≫のSoXによるアップサンプリング結果を見ると、DACチップの実動作で説明されるOSDFと原則的には同じ結果をもたらしていると思います。

 ですので、送り出し側でDACユニットへの入力前に行うアップサンプリングは、原則として「DACチップで行っているOSDFと同じ目的の処理=イメージングノイズの除去」と考えていいでしょう。

 ということは、

 OSDFが搭載されているDACを用いるシステム(イマドキは普通これ)に対する送り出し側でのアップサンプリングとは、「その多段処理の組み合わせを変えること」

になります。
 組み合わせは多岐にわたりますが、一番影響があると思われる“1段目(*)”がPC処理かDAC処理かはどんな設定でも絶対変わりますので、これは効くような気はします。

*:1fsイメージングノイズの除去。サンプリング周波数を中心とした折り返し領域。48kHzなら24~72kHz。

 ところで、DACチップにおけるOSDF処理には規格があるワケではありません。本来のリクツではアナログLPFの仕事を各社独自にデジタル化している部分ですので。
 そのため、「48kHzなら8倍、96kHzなら4倍、192kHzなら2倍」といったようにソースの周波数によって倍率を変動させる場合や「全部8倍」といった場合があるなど、DACシステムによってOSDF(DACチップ内蔵ではなく外付けもアリ)の動作・性能は異なるでしょう。
 例えば、TI製PCM1795を用いたDACユニットとSoX Resamplerを組み合わせて48kHzソースを再生する場合は、

・アップサンプリングしない場合:DACチップ内のOSDFでx8されて384kHzに
・x4した場合:PC側で192kHzにアップサンプリングされ、DACチップ内のOSDFでx8されて1536kHzに

なってからΔΣ変調かけられることになるのだと思います(TI社DACのOSDFはソース周波数に依らず全部x8らしい)。
 ソースの周波数によってOSDFの倍率を可変するDACの場合は、

・アップサンプリングしない場合:DACチップ内のOSDFでx8されて384kHzに
・x4した場合:PC側で192kHzにアップサンプリングされ、DACチップ内のOSDFでx2されて384kHzに

になるのかなと。

 つまり、送り出し側でのアップサンプリング有無・倍率によってDACチップ内のOSDF動作やΔΣ変調部での倍率が異なるのですから、アップサンプリング処理のデキ以前に、それによって音質が変わるのは当然と言えましょう。
 これがいわゆる「アップサンプリングの効果(?)」の実態だと考えていますが、その変化は「DACシステムによって異なる」でしょうから、善し悪しその他、一般論にはならないでしょう。
 PCM1795などの場合、PC側でx4にしたらDAC内でさらにx8になっちゃうワケで、“32倍オーバーサンプリングデジタルフィルタ”がかかっちゃうことに。単純に考えると、高域のイメージングノイズが猛烈に取り除かれる代わりにフィルタ演算によるエコーが増え、「スッキリして響きがある音」になるような気がします。

 DACチップ内部のお仕事については、PCM1795などDACチップのデータシート掲載ブロック図をみるのが一番いいと思います。簡易的にはジッタ記事に載せた簡易ブロック図をよろしければご参考に。

・実事情
 DACチップとPCとの間に「デジタルフィルタの倍率」をやりとりするようなI/Fはありません。
 ですので「もう2倍にしてあるからヨロシク。PCのCPUガンガン回して高精度にやったぜ」「じゃあこっちでは8倍じゃなくて4倍でいいよね。ポストフィルタの特性も甘くしとこう」なんてことはできません。
 PCとDACチップではその演算能力の違いは言わずもがなでしょうから、積和演算の嵐であろうアップサンプリング処理はPCの方がより高精度にできる…かどうかは何とも言えません(苦笑)。ワイヤードロジックとソフトウェアの勝負ですし。

 ただし、例えば≪foobar2000≫のプラグインなどでは“デジタルフィルタの多彩な設定が可能”ですから、PC側でやる場合はそういう「自由度こそ意義」と言えるかも知れません。

・デジタルフィルタの功罪
 ところで、デジタルフィルタリングはいいことばかりではありません。存在しなかったエコー(リンギング)成分を付加してしまうなどの弊害があります(処理する場所がPCでもDACでも基本は同じ)。
 これもやはりTIさんのページが解りやすいかも。フィルタ演算かけると元波形は変形するイメージができるかと思います。
http://www.tij.co.jp/dsp/jp/docs/dspcontent.tsp?contentId=53937

 本Blog記事の中では、iTunes音質検証におけるインパルス応答波形や上記foobar2000記事などをご参照くださればイメージできるかと思います。
 通過周波数と遮断周波数が近いほど、遮断性能が高いほどデメリットも大きくなるのが基本だと理解しています。

 ですので、デジタルフィルタをかけずに済むならそれに越したことはありません。かけるにしてもできる限り緩い特性にしてエコーなどの発生を低減したいところです。
 さて、そのためにはどうしたらいいでしょう?

 「最初からサンプリング周波数が高ければいいんじゃない?」

 これは“ハイレゾの効能”と言えるでしょう。

・イメージングノイズをありのままに
 具体的に考えてみます。
 例えば、サンプリング周波数96kHzならイメージングノイズは48kHz以上にしかありませんから、ほっといても聞こえないでしょう。そういうワケにもいかないのでLPFするとしても、アンチイメージングフィルタの遮断帯域は48kHzからでいいことになり、可聴域を20kHzのままと考えるなら「20kHz以下を通過&48kHz以上を遮断」というかなり緩やかなLPFでOKなことになります。可聴域をもうちょっと高め(例えば30kHz)と考えてもLPFとしてはゆとりがありそうです。
 AD変換時も同様の事情になりますね。

 アナログ→デジタル→アナログの変換時に原理的に発生する「エイリアシングノイズ」と「イメージングノイズ」の除去作業のレベルを“緩和”することによって波形変形が低減される、ということです。

 AD段階からハイサンプリングで高域まで有意なデータがあるということは、DAC事情的には
周波数ドメインで言えば
「イメージングノイズ帯域を高域に追いやる(リコンストラクションフィルタの負荷を下げる)」
ことであり、
時間(波形)ドメインで言えば
「離散的であるデジタルデータの密度(解像度)を上げることで波形をアナログに近づける」
ということですね。

 LPFの遮断帯域が低めだとあまり「倍音が増える」効果が出なくなりますが、これもハイレゾの効能のひとつだと思います。
 この効能について言えば「192kHzや384kHz」というハイサンプリングも意味がありそうな気がします。遮断帯域80kHz~くらいでも成立しそうですもんね。

・ただしソースはネイティブハイサンプリングでないとダメ
 さて、この効能はDA処理段階に発揮されるものですが、AD段階からハイサンプリングしたソースである必要があります。フォーマットが96kHzでも、48kHzサンプリングソースを96kHzにアップサンプリングしたソースなどではダメです。その処理自体がアンチイメージングフィルタ処理しちゃってますので。
 そう考えると「ハイレゾ」と「アップサンプリング」ではその効果の意味が全く異なるということですね。
 逆に言うと、20kHzまでしか入ってないアナログマスターだったとしても、96kHzでのAD変換には意味があるということです。「無い高域を“無い”ことを表すデータとして存在させる」ことに意味があるんですね。
 おお、そうだったのか~

 ということだとすると、20kHz以上の帯域の意味の判断は難しいですね。
 あったとしても「AD元のアナログソースに入ってた」場合と「アップコンバートで生成した」可能性があります。
 なかったとしても「AD元のアナログソースに入ってなかった」「アップサンプリングだから」という可能性があります。
 まあ、アナログソースの高域とアップコンバートの高域だとゲインが全然違うでしょうから判るとは思いますが。
 やっぱりそのソースの“出自”を示してもらわないと、リクツ上意味があるか否か正確な判断はできないってことですねぇ。

 もちろん「実際に聴いてよければいい」のはアタリマエとして記しています。だってそれはハイレゾか否かとは関係ないことですから。

・ただしDACはOSDFをオフできないとダメ
 いきなり“前言撤回”みたいなハナシですけれど(苦笑)。
 「ハイサンプリングソースの場合は、OSDFをオフしてもイメージングノイズは聞こえないと判断し、フィルタ演算による波形変形を防ぐ」というメリットを享受するためには、明示的にデジタルフィルタをバイパス設定できるDACユニットが必要になりますが、現実的ではなさそうです。
 以下にその実情を記します。


■DACユニットの実際

 上述の通り、特にハイサンプリングを聴くためのPCオーディオ用DACユニットとしては「フィルタを選択できる」だけでなく「バイパスできる」機能は標準的に欲しいところです。ハイサンプリングソースの時はバイパスしてみたいですから。もし必要ならデジタルフィルタリング(=アップサンプリング)はPC側でできちゃいますし。

・フィルタはオフできないという現実
 しかし、そのようなDACユニットは一般的ではありません。通常のオーディオ用としては許されないでしょうから仕方ありませんけれど(デジタルフィルタはオマケではなく必要な機能ですので)。
 私の知るところでは以下くらいでしょうか。

  ←TEACのこれとか     ←Esotericのこれとか

 Esotericなんて「オフが推奨」と言ってます。

推奨のデジタルフィルターOFFモードのほか、PCM信号処理用に4種類のデジタルフィルターを搭載。FIR型デジタルフィルター2種類に加え、プリエコーのない自然な音の立ち上がりを特長とするショートディレイ型デジタルフィルターも2種類搭載。
出典:http://www.esoteric.jp/products/esoteric/d07x/

 UD-501もOffがデフォルトらしいですね。

・NOS-DACとは
 ということで、「OSDFが搭載されていないDAC」にも需要があるようで、「Non OSDF-DAC」通称“NOS-DAC”と呼ぶようです(最初NOSってメーカ名かと思いました(苦笑))。

 OSDFかけないのですからNOS-DACの出力はイメージングノイズまみれの音(波形的にはカクカク)になってるハズですが、その方がデジタルフィルタリングするよりヨイって考え方もあるようですね。特に、ちゃんとしたハイレゾ音源なら48kHzや96kHzまでイメージングノイズはないハズですから、「それ以上の帯域のイメージングノイズを許容する」のと「OSDFかける」のはどちらが音質へ悪影響があるか、確かに微妙な気もします。素人ですけど。

 「イメージングノイズがあること=元がカクカクな波形はより正確に再現できるが、元がサイン波っぽい波形は逆に不正確になる」というカンジでしょうか。といってもイメージングノイズはあくまでもノイズなので、元アナログ波形を再現しているとは言い難いですけれど。
 実際問題としては、カクカクの水平部分=DC成分も垂直部分=無限周波数成分も、最後はスピーカやヘッドホンがある意味フィルタリングしちゃうと思いますので、それに任せるってことなのかも知れません。とすると、NOS-DACは周波数特性が~20kHzくらいのアナログ段との組み合わせが相性いいのかも知れませんね。

 前述のUD-501などのデジタルフィルタOFFモードは“設定によるNOS-DAC化”と言えるでしょう。ポストフィルタはOSDF前提で「高域で緩くかける特性」固定みたいですけれど。
 ただし、UD-501もD-07Xも「アップコンバータ」を搭載しているようですので、これを使ってOSDFをOffするのが推奨なのかも知れません。詳細は不明です。

 「ネイティブ192kHz音源」なんかをフィルタオフで聴いてみたいものです。
 けどそのためだけにDACユニット買うっていうのも…(苦)


■デジタルフィルタとΔΣ変換とアナログポストフィルタ

 ところで、OSDFはDA変換ロジックの中核たるリコンストラクションフィルタ機能の一部である「プリフィルタ」であり、その後アナログによる「ポストフィルタ」をかける連携機能になっているハズです。
 とすると、デジタルフィルタをオフできるDACユニットでは、ポストフィルタの特性はどうなっているのでしょうか。
 ナイキスト周波数あたりで急峻にかかるアナログLPFが必要なハズですが、ナイキスト周波数はソースのサンプリング周波数によって当然変わりますから、特性可変フィルタでないと対応できないような気がするのですが、はたして?

・UD-501では
 UD-501の周波数特性を載せてくださっているBlogさんのデジタルフィルタOFF出力スペクトルを見ると、44.1kHzソースの場合20kHz以上にノイズの盛り上がりが発生しています。つまり、デジタルフィルタでイメージングノイズを除去しないモードでもポストフィルタのカットオフ周波数は降りてきておらず、高域側のままのように見えます(Onにするとノイズはガクンと減る)。
 つまり、アナログポストフィルタの特性はOSDFのON/OFFで変動していないようです。

 なんだかOSDFがすでに“ほとんどリコンストラクション”しちゃってるような気が。とすると、イマドキのアナログポストフィルタの役割って…?

・DA変換ブロックにLPF機能はあるか
 ここで、TIのDACチップ仕様を見てみると、DSDモード時LPF特性を変更できるようで、その設定を解放しているDACユニットもあるようです。資料にも「Advanced Current SegmentブロックはDSD時のLPFとして機能する」と記されていました。ですが、PCM時にはそのような機能は見当たりません。

 ということは、PCM時は、OSDFでかなりの高域までノイズ除去(LPF処理)は済んでいると見なし「Advanced~」ブロックはLPF機能はなく(*)アナログ化のみを担っているのかも知れません。

*:new_western_elecさんが公開されているPCM1792AのOSDFをOffしたサイン波は「カクカク」になってましたし。
http://nw-electric.way-nifty.com/blog/2013/11/dac-pcm1792-f49.html

・「トランジスタ技術」の記事
 「トランジスタ技術2013年12月号」P.125によると、ΔΣ変調ブロックで元ソースのサンプルレートによって倍率を変えて1bitストリームの周波数を一定にし(44,.1kHzと48kHzの差はありますが)、アナログフィルタの特性を固定にしているようです。

  ←デジタルオーディオの理屈に興味がある向きには一読の価値アリと思います

・DACデータシートの記述
 さらに調べていると、PCM1795のデータシートに以下の記述がありました。

The OS bits are used to change the oversampling rate of ΔΣ modulation. Use of this function enables the designer to stabilize the conditions at the post low-pass filter for different sampling rates. As an application example, programming to set 128 times in 44.1-kHz operation, 64 times in 96-kHz operation, or 32 times in 192-kHz operation allows the use of only a single type (cut-off frequency) of post low-pass filter. The 128-fS oversampling rate is not available at sampling rates above 100 kHz. If the 128-fS oversampling rate is selected, a system clock of more than 256 fS is required.
出典:「pcm1795.pdf」 P.33

 やはりオーバーサンプリングは8倍固定ですが、ΔΣブロックでの倍率を変更することで、1bitストリームの周波数を一定にしてポストフィルタの特性を統一しているようです。
 44.1kHzの時は128倍、96kHzで64倍、192kHzで32倍が推奨されていますので、「44.1または48kHzという“基準fs”に対して128倍に統一しましょう」ということのようですね。つまり、データシートの記述通りにPCM1795を使った場合は、44.1kHzも48kHzも96kHzも192kHzもPCMはすべて最終的にはDSD128(44.1kHz系では5.6MHz,48kHz系では6.1MHz)に変換されているとみていいでしょう。
 ただし、TI製DACチップにおけるPCMデータのΔΣ変換は1bit化しますが1本ではなく“マルチストリーム”のようですので、「DSD128データ」と同じ動作とは言えません。

 一方、DSDモードの場合は、当データシートのP.3のスペックによるとSystem Clockはmin2.8224MHz、Max11.2986MHzとなっています。つまり44.1kHz系におけるDSD64~DSD256です。
 UDA-1では正式仕様にないDSD256も通ってしまいますが、(44.1kHz系なら)デバイスレベルでは対応していると見ていいかも知れません。
 逆に、DACチップがサポートしていないモードは例え通ってもあまり意味がないということです。例えばPCM1795システムでもしDSD512が通っても、DACチップ前で“ダウンサンプリング”されてるハズです。
 iFi-Audio製「micro iDSD」という製品はPCMで768kHz、DSDはDSD512まで受け付ける仕様ですが、搭載しているDACチップ(*)DSD1793の仕様は24bit/192kHz/DSD256です。2個使いによる何らかの方法でユニットとしてはDAC単体スペックを超えている可能性も否定できませんが、少なくともDACチップにとっては非ネイティブだと理解して選ぶべきでしょう。

*:eイヤホン社のサイト:http://ameblo.jp/e-earphone/entry-11852192877.html


■“なんちゃってNOS-DAC”で遊ぶ

 このあたりまで考えたところで、ふと気がついちゃった気が。

 PC側でPCM→DSD変換してDSDネイティブ再生可能なDACユニットに渡した時って、DACチップ内のOSDFブロックをバイパスしてるってことではないでしょうか?

 つまりDSD変換すればOSDFオフ機能のがないDACユニットでもフィルタオフで鳴らせるということです。
 もしそうなら、OSDFオフ機能付きDACユニットを買わなくてもフィルタオフモードでDACが使えるじゃありませんか。
 以下、それを確かめてみます。

・DSD変換“だけ”実施したスペクトルを見てみる
 早速、≪foobar2000≫でCD音源をDSD変換してUDA-1で鳴らしたアナログ出力を確認してみました(環境は前稿と同じ)。

 シェイピングされた高域ノイズの影響を極力排除するためDSD256にて。変換MethodはとりあえずTypeA(FP32)です。

OSx1→DSD256
(アナログキャプチャ)

 ナイキスト周波数以上の帯域にイメージングノイズが盛大に発生しています。つまりOSDFかかっていません
 やはりDSD変換してDACチップにInputした場合はOSDFをバイパスすると見ていいようです。
 80kHz以上には盛り上がりが見られませんので、おそらくこのあたりで「リコンストラクションフィルタのポストフィルタとしてのアナログフィルタ」が働いていると推察します。

 一方、これは「≪foobar2000≫の当機能でPCM→DSD変換する際は、DSP機能でアップサンプリング(LPF)しておかないとイメージングノイズまみれの音になっちゃう」ということを示しています。試聴などでは要注意かと思います。ただし≪foobar2000≫のような機能ブロックを組み合わせて使うソフトの場合であって、例えば≪JRiverMediaCenter20≫ではDSD変換再生にすると自動的にフィルタかけているようです。≪AudioGate≫のEXPORTでもイメージングノイズは見られませんでした。

 なお、TypeB,C,D(いずれもFP32)でもイメージングノイズは発生していました。「フィルタを内蔵しているTypeもある」といったことは無いようです。

・ノコギリ波はどうなる?
 上で、周波数ドメインにてOSDFがかかっていないこと(イメージングノイズがそのままであること)を確認しましたが、時間(波形)ドメインではどんな変化しているのでしょうか。
 そこで、ハイレゾの効果をPCMで考えた時使った2448ノコギリ波(Downsamplingなし)をDSD128で再生してみました。

2448R→DSD128rec
(アナログキャプチャ)

 わははは、DSDサイコー!(爆) シャノンさん真っ青~

 アルゴリズムにもよると思いますが、こんなふうにDSD化されるんですね。
 これを見ると、DSDって波形再現性はとっても優れているように思えます。
 再生時にOSDFかかっていない故ですが、それが「アナログっぽい」「柔らかい」といった印象になっているのかも知れません。

 しかし、それにしてもキレイにノコギリになりすぎな気が。ナイキストあたりも何も変化なく繋がっちゃってますし。結果的に倍音をスムーズに補間しちゃってるってことでしょうか。
 ナントナクですが、人工ノコギリ波形にとってのエイリアスノイズとは、歪みではなく直線的な斜め傾斜を構成する成分として有効であって、OSDFかけずに再生した時に発生するイメージングノイズはその成分(歪み)を再現したものになるのかも?
 かも? レベルですけれど。

 ちなみにDSD64だとそんなに感動しませんでした(笑)。理由はワカリマセン。

2448R→DSD64rec
(アナログキャプチャ)


 以上、PCM→DSD変換することで、フィルタオフ機能がないDACでも“なんちゃってNOS-DAC”として動作させることが出来ることが解りました。
 ただし、本当のNOS-DACと違ってΔΣ変換までPC側になっちゃうワケで、DAC側は1bitストリームのアナログ化しか行わない状態になりますが、それはそれでまた一興かと。正確には(?)「“なんちゃってアナログLPF”として動作させることが出来る」と言った方がいいかも知れませんね。

 これは面白そうです。
 引き続きいろいろ試してみようと思います。


■余談

・DSD再生モード時のOSDF
 OSDFはかかってないことを確かめる方法を考えていた時、「インパルス応答にエコーが付かないのではないか」と思いました。
 自分でやってみる前にweb検索してみたらそれを示す資料があるようです。
http://tech.juaneda.com/en/articles/dsd.pdf

 P.5にPCM(ハイレゾ)とDSDのインパルス応答比較があります。
 「Why Direct Stream Digital is the best choice as a digital audio format」というタイトルの2001年Philips? 著作のようですが、正体はヨクワカリマセン。

 以下にもDSDとPCMのインパルス応答比較図がありました。
http://tackbon.ldblog.jp/archives/52275169.html

 上記資料を見るとインパルス応答していませんので、やっぱりDSD再生においてはOSDFは無縁と考えていいようです。

・オーバーサンプリングの倍率は可変か一定か
 エレアトさんは「44/48系なら4倍、88/96系なら2倍、176/192系ならそのまま」というロジックを組んでらっしゃった模様(*)。

*:http://fpga.cool.coocan.jp/wordpress/?p=40

 new_western_elecさんによると、どうもTIは入力に依らず8倍なら8倍固定らしく、アナデバなどは入力に応じて倍率を変える仕様の模様です。
 確かに、TI(BB)のPCM1704(24bitマルチビット型)データシート(*)では、入ってきた周波数の8倍と言ってるようです。

*:http://www.tij.co.jp/jp/lit/an/jaja006/jaja006.pdf

 また、PCM1795データシートの機能説明やブロック図では「x8 Oversampling Digital Filter」って“倍数含みで”機能名記してます。
 8倍固定って個人的感覚的には違和感ある(*)のですが、ホントみたいです(苦笑)。

*:倍率を可変にしてOSDF結果を一定にし、ΔΣブロックへの入力周波数とイメージングノイズ状態およびΔΣブロックでの倍率を固定した方がキレイな気がするのですけれど。
 15/05/19追記:8倍固定の理由、なんか解った気がします

・意外と楽しいM/Bオンボードサウンド
 結構オモシロイ実験できますね。LINE-OUTとLINE-INをループバック接続し、≪WaveGene≫でいろいろな波形を生成して再生し、≪WaveSpectra≫で表示すると、DACがどんな波形(スペクトル)出力しているのか手軽にリアルタイムに見ることができます。DACのLINE-OUTを入力すれば、ヘッドホンで聴きながらアップサンプリングやDSD変換におけるスペクトルや波形の変化を見ることもできます。
 もちろんサンプルレートは一番高速な192kHzで。
 15/03/07追記:どうもGA-Z68X-UD3H-B3のオンボサウンドのLINE-INは-1dBあたりが最大振幅になる(それ以上の音量ではクリッピングする)ようです。フルスケールのサイン波を入れるとクリップします。録音ボリウム絞っても同じです。≪foobar2000≫で-1.10dB絞るとサイン波の頭がキレイに丸まりました。


メインメニューへ

テーマ : オーディオ
ジャンル : 趣味・実用

基音と倍音でハイレゾを聞いて見る

15/01/12初稿
15/03/04改訂

 欲しいアルバムがハイレゾでも出るようになり、CDで買うかハイレゾファイルを買うか悩ましいケースも出てきたため、そろそろハイレゾってホントに意味があるのか判断しなきゃって思い始めたのが昨年9月ごろ。

 まずは実際に比較試聴していたら、そもそもちゃんと比較するにはどうしたらいいか気になり、さらにファイルの素性はどうすれば確認できるのかシステムは対応しているのかを芋づる式に調べたり実験したりすることになりました。
 あげく改めて「サンプリング定理」について考えるざるを得なくなり、何とか一歩前進したかなと思います。

 それら知見を踏まえることで、足掛け5ヶ月、やっと「ハイレゾの意味」についてひとまず納得するところまでたどり着きましたので、以下にまとめてみたいと思います(PCMについてです。DSDは含みません)。


■“巷で言われる”ハイレゾフォーマットの効能とは

 まず初めに、「ハイレゾという“大きくなった(細かくなった?)入れ物”」は何で音がいいことになっているのか、おさらいしておきたいと思います。
 「音源の録音状態」や「マスタリングの善し悪し」や「違いが判る再生できるのか(アナログ的に)」といった要素より“前”の問題、純粋なリクツとして、です。

・ハイサンプリング:20kHz以上の高域が入ってるから?
 と言われても、「聞こえない音」が入ってると何で音いいの? かは疑問のままですよね。何か学術的な“データ”はないのかと思って検索してみたのですが、ハイレゾに関するこんな博士論文があり、「20kHz以上の高域(の成分が含まれること)を聴き取れた事例」が紹介されています。
http://ir.lib.uec.ac.jp/infolib/user_contents/9000000355/9000000355.pdf

 私は“選ばれし者”じゃないと思う。たぶん(笑)。

 ところで、「20kHz以上の高域が聴き取れるか・意味があるか」という議論では、対象が例えば「30kHzのサイン波などの単一波形」なのか「30kHzまでの高域成分を含む音楽波形」なのかはハッキリは分けて考えた方がいいと思っています。前者が聞こえなくても後者がCDより良いと感じるなら、オーディオとして意味があると言えるでしょう。
 「ディザリングによる音質向上」なんて技術があります。ざっくり言うと高域のランダムノイズを付加するものですが、そのディザノイズ自体は聞こえるようなレベルではありません。“前者と後者”に似た事例かも知れません。

 いろいろ考えた結果、ハイサンプリングについてはどうもこのあたりがミソっぽいです。単独の周波数だけに着目した考え方と周波数成分として見た時の考え方を分けることがキモだと思うようになりました。
 例えば、「楽器」や「肉声」の一番高い音は4kHzくらいまでのようですが、サンプルレート8kHzじゃ音楽として聴けませんよね。何故でしょう。
 後述します。

・ビット深度拡大:ダイナミックレンジが拡大してるから?
 ハイサンプリングと同じように、「どれだけ小さい音が聴こえるか」「大きな音と小さな音の聴き分けできるか」といった効果で考えない方がいいのかも。
 実効的な解説としては以下などいいかも知れません。
http://ednjapan.com/edn/articles/1205/21/news001.html

 上質なアナログ回路のS/N比は100dBを超えますから、単純スペックとしては16bitじゃ足りないかも知れません。
 が、逆に24bitの144dBはアナログ限界を超えており、実効的には20bitくらいでもいいのでは? と感じています。
 ただ、ハイビットに関してはハイサンプリングとペアな気がしています。サンプリング(時間軸)を細かくするなら必然的にレンジ(振幅軸)も細かくしないと効果が半減する、と。
 ぶっちゃけ、ハイビットの実効的な意味はヨクワカリマセン。

 ということで、本稿では、特記なき「ハイレゾ」はほぼハイサンプリングのこととして記させていただきます。

・そもそもマルチビットの考え方でいいの?
 実は一番気になってるのはこれ(笑)。
 実質的に世の中のオーディオのほとんどはΔΣ型DACで聴いていることを考えると、PCMデータの違いがΔΣ変換された後の1bitストリームに違いを与えるのは間違いないので、単純な周波数やレンジの違いではなくその差を聴いている可能性はあるかも知れません。


■基音と倍音から考えるハイレゾの効能

 さて、我々が聴きたいのは普通「音楽」ですから、人工的な高周波数サイン波などではなく「音楽」としての条件で考えていく必要がありそうです。
 以下、「楽器」「音楽」には肉声も含むこととさせていただきます。

・「基音」と「倍音」
 楽器の奏でる音の周波数とは、「その楽器に“特徴的な波形”の繰り返し周期」です。すべての波形は複数周波数のサイン波を無限(*)に含むことで“音色としての波形”を形成しています(フーリエさんがそう言ってます)。

*:理論的には、です。もちろん現実的にはどこかに発音体の限界があるでしょう。

 波形の周波数のサイン波が「基音(基本波)」。
 波形を形成するための整数倍周波数のサイン波群が「倍音(高調波)」。

です(実際には倍音以外の構成要素もあるようですが本稿では割愛します)。
 時間ドメインで考えた時の楽器の“波形”は、周波数ドメイン(すべてサイン波として考える。“波形”の概念はない)ではその周波数の「基音」+無限の整数倍の「倍音」で形成されるということです。

 フーリエさん的に言う「倍音」は、基本的に豊かに含まれないと本来の波形にはならないのですね。音楽的に言う「倍音」はちょっとニュアンスが違うことがあるようですので、区別して考えた方がよさそうです。

・楽器の「基音」最高周波数は何ヘルツ?
 ざっくりですが、下はピアノの30Hzくらいとのこと。上は、

・肉声(ソプラノ歌手)・・・ 2kHz
・ヴァイオリンやピアノなどの楽器・・・4kHz

くらいらしいです。

 4kHzの音を奏でた場合基音は4kHzです。再現可能周波数が20kHzまでのフォーマットなら、フーリエさん的に言うなら5倍までの倍音の合成波形としてデジタルデータ化されていることになります(6倍音以上はカットされている)。
 説明のため楽器が基本波形を奏でるとすると、例えば三角波(奇数倍音しか含まない)の場合、CDフォーマットでは基音と3倍音と5倍音のみっつだけで再現することになります。2496なら11倍音までの6個です。

 つまり、音楽においては、「4kHzくらいまでの基音周波数に対し“倍音をいくつ重ねられるか”でアナログ波形の再現性が違ってくる」ということです。
 通常の楽曲においては「基音」は約4kHzまでであり、それ以上の周波数は「倍音」の領域ということになりますから、検討対象とする“音色としての波形”の周波数は4kHz程度まででよい、ということになります。

 ちなみに、実際にどのくらい倍音が出ているか、ヴァイオリンにつき測定された方がいらっしゃいました。
http://www.sasakivn.com/werkstatt/qa/vnspectram.htm

 AudioDesign社社長のBlogにもCDのヴァイオリンソロ部の実際の波形やスペクトルが掲載されていました。
http://blog.audiodesign.jp/?day=20120219


 さて、であれば、ハイレゾの効果を可視化できるのではないでしょうか。
 サンプルレート違いによる波形再現性を確認してみればよいワケです。どんな波形がいいでしょう?

 基本波形と似ていると言われる楽器は次のようです。

・ノコギリ波・・・ヴァイオリン、金管楽器など
・三角波・・・フルート、弱く弾いたピアノなど
・矩形波・・・クラリネットなど

 ヴァイオリンの波形が近しいこと、整数倍の倍音で構成される波形であることから、ノコギリ波でいってみようと思います。周波数は音楽っぽい範囲で厳しめに1200Hzにて。


■基音と倍音の関係を可視化する

・ノコギリ波の周波数成分
 まず、上述した基音と倍音のスペクトルを見ておきます。
 1200Hz/-3dBノコギリ波のスペクトルはこんなカンジです。サンプルレート384kHzのファイルにて。

ノコギリ1200Hz

 次に、フーリエさんの言うことを視覚的に体験してみます。
 波形生成と言えば≪WaveGene 1.50≫。8個の波形を合成できますので、以下の基音と7個の倍音を順番に足していき、サイン波だけでノコギリ波を合成してみました。

1.基音のみ

ノコギリ生成1


2.2倍音を合成 1200Hz+2400Hz

ノコギリ生成2


3.3倍音まで合成 1200Hz+2400Hz+3600Hz

ノコギリ生成3


4.4倍音まで合成 1200Hz+2400Hz+3600Hz+4800Hz

ノコギリ生成4


 途中省略させていただいて

5.8倍音まで合成 1200Hz+2400Hz+3600Hz+4800Hz+6000Hz+7200Hz+8400Hz+9600Hz

ノコギリ生成8


 このあともナイキスト周波数まで倍音の合成は続きます。言い換えると、「48kHzサンプリングなら24kHz(20倍音)まで/96kHzサンプリングなら48kHz(40倍音)まで/192KHzサンプリングなら96kHz(80倍音)まで」しか含まれないことによる“理想に近づききれないという意味での変形”が、それぞれのサンプリングにおいて発生しているということです。
 サンプリング周波数を高めた方がこの変形がより少なくなるのは自明でしょう。

 ですので、

「20kHz以上は聞こえないから」というリクツは、「20kHz以上の倍音がないことによる波形変形は音質差として認識できないから」と言い換えた方が本質的

だと思います。

 「20kHzは聞こえないから」と言われると「そうかもナ~」とも思いますが、「波形変形は認識できないから」と言われると「なにお~」って思っちゃったりします(苦笑)。だいぶ印象違いますね(爆)。

 15/02/28追記:裏取りのため、以下で使うノコギリ波2448ファイルを≪Wavosaur x64 1.1.0.0≫でカットオフ10kHzのLPFしたデータのスペクトルを示します。9倍音(10800Hz)以上はカットされ、8倍音までで合成した波形になっているハズです。

ノコギリ2448 位相反転 LPF10kHz

 2448フォーマットですが、もっと低サンプルレートの波形(倍音合成イメージ)になっています。
 つまり、周波数成分を「足していった場合」と「減らした場合」で同様の結果が得られたということです。
 逆に、アップサンプリングで2448を2496にしても原則2448の波形(倍音合成イメージ)のままであることも確認しました。「アップサンプリングでは合成すべき倍音は増えない」ためです。

 矛盾ないようですね。


■含む倍音数違いによる波形の違いを視覚で確認する

 含んでいる倍音の数が波形再現性の差ということは解りました。では、実際のアナログ波形はサンプリングフォーマットによってどのくらい違うのでしょうか。

・ノコギリ波の再現性をデジタルドメインで可視化する
 準備できるソースは「音楽」か≪WaveGene≫などで生成する「人工波形」です。しかし音楽波形では本稿で考えているような検証はできません。単純な理想波形=人工波形である必要があります。
 が、人工波形はAD変換されたものではないため、そのままだとナイキスト以上をカットするLPF(アンチエイリアシングフィルタ)がかかっていません。
 しかし、実事情に則したソースをAD変換して得ようにも、そもそも「理想ノコギリ波アナログ信号」を間違いなく発生させる術がありません。AD変換時の事情も含んでしまいますし。
 そこで、まずは試しにデジタルドメインでAD変換をシミュレーションしてみることにみます。
 LPFかけて各フォーマットのノコギリ波ファイルを生成して比較してみます。

・ソース・・・≪WaveGene 1.50≫で生成した24384の1200Hz/-3dBノコギリ波を位相反転
       (WaveGene表示と合わせるため)
・AD変換シミュレーション(LPF)・・・≪SoX Resampler 0.8.3≫(デフォルト設定)で
                      48kHz,96kHz,192kHzにDownsampling


1.2448

ノコギリ2448


2.2496

ノコギリ2496


3.24192

ノコギリ24192


 …百聞は一見にしかず。これがズバリ「ハイレゾの効能」を示しているのでは?

 上述した考え方を当てはめると、「20kHz以上は聞こえないから要らないと考える」=「2448と2496や24192との波形の差は認識できないと考える」ということです。
 う~ん、“イメージ的”には認識できちゃいそうな気がしますよね。ていうか、これを見ちゃうとたとえ実際には認識できなくても気分的にはハイレゾです(笑)。認識できなくてもリッピングエラー発生はヤなのと同じ感覚ですね(爆)。

 しかし、これはあくまでも「フォーマットにパッキングしたデジタルデータ」の可視化です。実際に聞くアナログ信号としてはどうなっているのでしょう。
 いよいよアナログドメインに踏み込んでみます。

・ノコギリ波の再現性をアナログドメインで可視化する
 上記のファイルが実際のDAC出力ではどんなアナログ波形に再現されているかを見てみます。
 オシロスコープで見るのが本当だと思いますけれど持ってませんので、192kHzサンプリングのアナログ→デジタル録音で代用します(デスクトップ型PCがあれば出来ちゃう可能性高いという意味も含めて)。

・PC・・・再生・キャプチャとも自作Z68+Core -7-2600K
・再生デバイス・・・SONY製UDA-1 USB-I/FはM/BオンボードEtronチップ ≪foobar2000 1.3.6≫にて 
・キャプチャデバイス・・・LINE-IN(Realtek ALC889) 16bit192kHz設定 ≪WaveSpectra 1.50≫にて
・設定・・・録音レベル46,エフェクトオフ,APIは録再とも排他WASAPI

 ≪foobar2000≫の各種バージョンは以下の通りです。

foobarバージョン

 192kHzサンプリングならなんとか2448と2496は波形が採れると考えました。24192は参考値になるでしょうか。AD処理での波形変形も含まれてしまいますが、すべてのキャプチャでAD時の事情は同じですから差は見られるのではないかと。


1.2448 (アナログキャプチャ)

ノコギリ2448rec


2.2496 (アナログキャプチャ)

ノコギリ2496rec


3.24192 (アナログキャプチャ)

ノコギリ24192rec


 意外なほど再現性あるみたいですね。元ファイルのデジタルスペクトルからの変化はあまり認められませんが、DA変換時にもう一度かかるOSDFの分だけリンギングが増えているようです。

 さらに、Downsamplingせず=LPFかけてない“素の人工波形データ”のアナログ信号はどうなってるかも採取。


1.素のまま2448 (アナログキャプチャ)

2448Rrec.png


2.素のまま2496 (アナログキャプチャ)

2496Rrec.png


3.素のまま24192 (アナログキャプチャ)

24192Rrec.png


 エイリアスノイズ満載の波形のためか、AD変換したと見立てたファイルのアナログ化よりもDACのOSDFでのリンギングが大きくなるようです。
 いずれにしろ、2448,2496,24192の差違は同傾向同程度に発生していると思いますので、比較としては問題ないでしょう。


 個人的にはこれでスッキリしました。

 ただしあくまでも「フォーマットの効能」として、です。それも人工波形において、です。「音楽としてどれだけ効果があるかは別問題」なのは言うまでもありません。
 自然界の音は複数の基本波形が複数の周波数で発音され、その基音と倍音が複雑に絡み合って形成されていますので、実際の音楽再生では何が起きているかこれで解るものではありません。例えばリンギング発生は、多分に人工ノコギリ波の“縦変化”に含まれるインパルス的な特性によるものだと思いますが、音楽波形にはまずない応答でしょう。
 実際の音質はマスタリングのデキで決まっちゃうと思いますし。

 「トランジスタ技術2013年12月号」P.73,74にも同じような実験が掲載されています。そこでは差違理由は「デジタルフィルタのリンギング収束時間」と説明されていますが、本稿では「含まれる倍音の数による波形再現性の違い」という捉え方をしています。前述したサイン波合成の件と同じで、周波数成分を「減らす」処理と見るか「増やす」処理と見るかの違いであって同じ現象です。

 一応ちゃんとしたオーディオ機器の出力をということでUDA-1を用いましたが、PCのLINE-OUTでも同様の結果を得ています。

・ハイサンプリングの意味
 以上より、

 周波数ドメインで言うと「倍音が確保できる」。
 時間(波形)ドメインで言うと「元の波形に近づく」。

と言えるでしょう。

 1200Hzでも「ハイレゾ領域の倍音を含むことによって“理想波形”に近づいていくこと」がハイレゾの効果なのですから、「2496や24192なのに20kHz以上の領域に有効な音がない音源はやっぱりニセレゾ」と言っていいことになります。高域が無いのに「高域ではなく20kHz以下の再現性が効果」というのは詭弁です(*1)。
 それはおそらく「アップサンプリング」ですが、それはDA変換で本来やるべきフィルタリングですから、それをソース段階で“前倒し”でやっているだけ(*2)であり、レゾリューションアップしたことにはなりませんから。

 よく、サイン波(のリコンストラクションをかける前のカクカク波形)を例に「サンプリングポイントが増えるとなめらかになる」といった説明を見かけますが、二重に誤解を招きます。アナログ化されたデジタル波形はカクカクしていません(できません)し、サイン波は純音ですからサンプル数が2倍になっても4倍になっても理屈上変わらないハズですので。詳細はサンプリング定理お勉強記事にて。
 このイメージで「可聴域の波形もなめらかになるので」といった効果を考えているとハマります(笑)。


*1:サンプリング定理に従う限り、サンプル間にサンプルを増やしたとしてもそれは「どうせリコンストラクションフィルタで再現できるもの」だからです(実はサイン波に限ったハナシではありません)。もし、増やしたのがリコンストラクションで再現できない値のサンプルだとしたら、それはナイキスト以上の周波数成分ということであり、つまり20kHz以上の音ですから「20kHz以下の再現性~」とは言えません。
 「DACのフィルタでやるより高精度」という意味なら解らなくもないですが、効能書きとしては苦しいですよね。
 ただし、高域がなくても、AD変換時点からハイサンプリングして「ない高域もAD変換している」場合は、DACチップの動作としてはメリットが出る可能性もあります。「基音と倍音」とは別のリクツになりますので別稿にて。

*2:「DA処理時のデジタルフィルタ動作軽減」という効果はあるかも知れませんし、倍率固定のDACチップならトータル倍率が上がる違いはありますが、それをハイレゾの効果として言うのは微に入りすぎだと思います(ウリにはならないでしょう)。ていうか、ユーザ側でもリアルタイム・ノンリアルタイム問わず処理できちゃうワケですし。業務用の方が圧倒的に優れているともあんまり思えませんし。そもそもDACチップによってDA処理方式違いますし。

 なお、「倍音」と「イメージングノイズ」は全く別モノです。念のため。

・ハイビット(ビット深度拡大)の意味
 こちらについては、アナログソースの再ADなどにおいて“ちゃんとAD”しているなら、レゾリューションアップと言えるでしょう。


■含む倍音数違いによる波形の違いを聴覚で確認する

・ノコギリ波の再現性を試聴する
 ということで、視覚的&リクツ的にはおおむね納得いったのですが、実際に再生音として違いは判るのでしょうか。
 試しに、≪WaveGene 1.50≫で生成したまんま、何も加工していないぴっかぴかの1200Hz-3dBのノコギリ波2448,2496,24192の3種をHD700で聞いてみました。ヴァイオリンのつもりで(笑)。

 …大変微妙ですがなんとか判るような?

 では、楽器の最高周波数である4kHzではどうでしょう? 厳しめに4800Hz/-3dBのノコギリ波を3種生成。倍音は9600,14400,19200,24000,28800…です。2448だと4倍音がギリギリということですね。

 …こちらの方が判る気がします。

 奇数倍音しか含まない三角波などでは倍音数は半減しますので、もっと判りやすくなるかも知れません。

 12kHzなどで行えばもっと判るのかも知れませんが、上述の通り、このような試聴音源の周波数は4kHzあたりまででいいことになると思います。

 本件に限ったことではありませんが、試聴にはプラシーボ的な要因も多分に考えられますので「とりあえずやってみたらそう感じた」の域を出るものではありません(なのでまずリクツで考えています)。
 個人的には、「-3dBのノコギリ波」みたいなかなりハッキリした波形でもハッキリ判らないのですから、無数の基音と倍音が混ざり合って複雑奇っ怪な音楽波形におけるハイサンプリングのメリットは(確かにあるでしょうけれど)ほとんど判らないんじゃないかという気がします。ハイレゾ試聴結果に「さらに自信ない」と記している通りです(苦笑)。

・ダイナミックレンジ拡大と倍音再現
 ところで、実際の音楽における20kHz以上の倍音のレベルはかなり小さくなってるのではないかと思えます。
 とすると、同時にダイナミックレンジを拡大しないと(フロアノイズの低減といってもいい?)意味がないような。
 そういう意味があるなら、ハイサンプリングはビット深度拡大とセットでないと真価を発揮しないのではないかと思えます。

 前出のAudioDesign社社長のBlogに、高域の倍音はビット数が減っちゃうので歪みが大きいとありました。
http://blog.audiodesign.jp/?eid=1018817

 要するに、「倍音合成による波形再現性向上」においてハイサンプリングは“倍音の数”、ハイビットは“特に高周波数域での倍音のカタチ(原理的にはサイン波なので単純モデルにおいては=レベル)”の向上を担っている、ということかも知れません。


 以上、繰り返しになりますが「理想ノコギリ波」なんて自然界には存在しない音でのオハナシです。
 あくまでもひとつの“とある実験”として。


メインメニューへ

テーマ : オーディオ
ジャンル : 趣味・実用

ERIへようこそ

Author:らかせ
 「最新記事」または「メインメニュー」からどうぞ。

・ファイルへの直接リンク以外はリンクフリー(連絡不要)です。
・一応、拍手にコメント(非公開)付けられるようにしてあります。
・DB的に利用しており、過去記事もガシガシ書き換えています。特に「最新記事」は初稿から一週間くらいは直してることが多く、大幅に変わっちゃうことも。ご了承ください。
・ということもありますし、記すまでもないですが無断転載(ファイル含む)はご遠慮ください。
・引用の考え方については「007:諸事」をご参照ください。
・アフィリエイトはAmazonのみです。
・ハイパーリンクは当Blog記事のみです(054:節電記事のみ例外)。
・オーディオ再生環境については「008:AVC基本コンセプトと使用機材履歴」の当該日付を含む期間をご参照ください。

最新記事
カテゴリ
検索フォーム
FC2カウンター