FC2ブログ

アップサンプリングとOSDF

15/01/31初稿
18/12/31現時点での情報に基づき無駄を省いて再構築

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


■PCのアップサンプリングとDACのOSDF

 まずはじめに、ハイレゾのハイサンプリングとの関係を記しておきます。
 OSDFやアップサンプリングによるサンプルレートアップは、“真の”ハイサンプリングによるアップとは異なります。上記リンク先記事や下記リンク先のfoobar2000記事などを見ても解る通り、前者では増やした高域はイメージングノイズを除去するためのもので(ある周波数までは)“何もありません”が、真のハイサンプリングではそこに有効な音楽成分があるハズだからです。

・プレーヤ側で行うアップサンプリングの意義・効果とは
 サンプルレートをアップする時、単純にサンプルを“間足し”するだけではイメージングノイズは減りません。
 ので、元ナイキスト以上をカットする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の動作・性能は異なるでしょう。

 例えば、TI製PCM1795を用いたDACユニットとSoX Resamplerを組み合わせて48kHzソースを再生する場合は、

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

なってからΔΣ変調かけられることになるのだと思います。TI社DACのOSDFはソース周波数に依らず全部x8らしいので(詳細は後述)。

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

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

・OSDFをアップサンプラで代用する
 本項18/12/31追記。
 ところで、≪foobar2000≫のリサンプラはSoX Resmplerだけではありません。「Resmpler-V」というものもあります。そして、そのページには次のようにあります。
The main purpose is to "override" the LPF(s) inside of the DAC by upsampling (relatively) low sampling rate frequencies (44.1k, 48k), assuming the software can do it much more accurate.
出典:https://sourceforge.net/projects/resamplerv/

 「ソフトウエアがそれをより正確に実行できると仮定し、(比較的)低いサンプリング周波数(44.1k,48k)をアップサンプリングすることで、DAC内蔵のLPFを“オーバーライド”することが主な目的です」ってカンジでしょうか。

 この考え方を拡張すると、DACチップのOSDFをOFFできるなら、OSDF処理をすべてPC側で行ってから送り込むこともできるということです。例えばOSDFをOFFした上で352.8kHzまで受け付けてくれるなら、CD音源でも8倍アップサンプリングしてDACチップに入力することができるということです。

・ただしDACはOSDFをオフできないとダメ
 「OSDFをすべてアップサンプラで行う」ためには、明示的にOSDFをバイパス設定できるDACユニットが必要になります。
 しかし、そのようなDACユニットは一般的ではありません。通常のオーディオ用としては許されないでしょうから仕方ありませんけれど(デジタルフィルタはオマケではなく必要な機能ですので)。

 どうも、TEACはOFFできる機種に積極的のようです。
 エソテリック「ステレオD/Aコンバーター D-07X」では、OFF推奨らしいです。

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

 同じくTEAC社の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(デジタル)とポストフィルタ(アナログ)の関係

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

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

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

・TI製DACチップでは
 ここで、TIのDACチップ仕様を見てみると、DSDモード時LPF特性を変更できるようです。資料には「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によると、ΔΣ変調ブロックで元ソースのサンプルレートによって倍率を変えて出力ストリームの周波数を一定にし(44,.1kHzと48kHzの差はありますが)、アナログフィルタの特性を固定にしているようです。

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

・PCM1795では
 さらに調べていると、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倍固定ですが、ΔΣブロックでの倍率を変更することで、出力ストリームの周波数を一定にしてポストフィルタの特性を統一しているようです。トラ技の記述と一致します。
 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データのΔΣ変換は“マルチレベル”のようですので、「DSD128データ」と同じ動作とは言えませんけれど。

 以上、PCMの場合は、アナログ化される直前のストリームの周波数は一定、かつ元になるPCMもイメージングノイズは8倍OSDFで充分減衰しているので、アナログポストフィルタの特性は固定でよいということですね。

 DSDネイティブの場合は、DSD64/128/256ではシェイピングされたノイズ状態は異なりますのでどう考えているのか微妙ですが、ネイティブであることを優先しているように思えます。当該ノイズはイメージングノイズではなくDSDデータとしてのリアルノイズですし。

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


■“なんちゃって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でもイメージングノイズは見られませんでした。

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

・ノコギリ波はどうなる?
 上で、周波数ドメインにてOSDFがかかっていないこと(イメージングノイズがそのままであること)を確認しましたが、時間(波形)ドメインではどんな変化しているのでしょうか。
 そこで、ハイサンプリングの効能を考えた時使った2448ノコギリ波(ナイキスト以上カットのLPFかけていない)をDSD128で再生してみました。

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

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

 アルゴリズムにもよると思いますが、こんなふうにDSD化されるんですね。
 といっても、これはエイリアスノイズ入りのファイルの場合であって、カットされたソース(本来そうでないといけない)ならこのような状態にはならないハズです。
 あくまでも試しにやってみた結果としてですが、「録音から再生までフルネイティブ」なDSDの可能性は感じますね。

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

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


 以上、PCM→DSD変換することで、フィルタオフ機能がないDACでも“なんちゃってNOS-DAC”として動作させることが出来ることが解りました。
 ただし、本当のNOS-DACと違ってΔΣ変換までPC側になっちゃうワケで、DAC側はDSDストリームのアナログ化しか行わない状態になりますが、それはそれでまた一興かと。この用法は、「なんちゃってNOS-DAC」と言うより「なんちゃってアナログ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は無縁と考えていいようです。


メインメニューへ

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

最新記事
ERIへようこそ

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

・ファイルへの直接リンク以外はリンクフリー(連絡不要)です

・一応、拍手にコメント(非公開)付けられるようにしてあります

・DB的に利用しており、過去記事もガシガシ書き換えています。特に「最新記事」は初稿から一週間くらいは直してることが多く、大幅に変わっちゃうことも。ご了承ください

・ということもありますし、記すまでもないですが無断転載(ファイル含む)はご遠慮ください

・引用の考え方については「007:諸事」をご参照ください

・ハイパーリンクは当Blog記事のみです(054:節電記事のみ例外)

カテゴリ
検索フォーム
FC2カウンター