第14回1bit研究会

現在位置のナビ

トップコンピュータの国雑記帳オーディオ譚1bit研究会 → 第14回1bit研究会

説明

Webmasterは、2016年12月7日(この文章を書いている時点で未来)に早稲田大学で開催される『第14回1ビット研究会』にて機材展示する予定です。 ここでは、展示機材の参考資料としてスライドのコピー(PDF形式)および補助資料と、早稲田大学での作業お手伝いに用いたプログラムのバイナリを開示しています。

研究会が終了するまでは、このページは外からリンクされません。 このページが公開されるのは、発表後の予定です。

展示内容

展示内容は、2つあります。

  • ΔΣ信号をD/A変換するときに専用LSIを使わない回路
  • 第13回1ビット研究会で発表した研究の最新成果

第1展示

今回のメイン展示です。 山崎先生の発表で一瞬だけ話題に登る予定です。 ΔΣ信号を、専用LSIを使わずにD/A変換する回路です。

第2展示

前回発表した研究を応用した、最新D/A変換システムです。 マルチビットPCMのDAC LSIに、CDDA信号をソフトウェア・オーバーサンプリングして送ります。

お詫び 第1展示にノイズが乗っていました(2016年12月15日追記)

第1展示の出力にノイズが出ていました。 具体的には、曲がようやく聞き取れるレベルのpp(ピアニッシモ -40dB位でしょうか)になると、信号と同じくらいの音量の『キュルキュル』というノイズが聴こえました。 無音状態では出ないので、信号に連動しています。

試聴した方に指摘を受け、「ΔΣのD/A変換で電源にノイズが乗っているらしい」と返答したのですが間違いでした。 Lineレベルをヘッドフォン出力に増幅するために利用したPEHA-6010の回路の問題でした。 原因究明し、対策を打って改善しました。 詳細は こちら に記述します。

中田式D/A変換の第1、第2試作も、PEHA-6010と同様にOPアンプで中点電圧を作って仮想グラウンドにしていました。 今回対策したノイズは確かに電源周りでしたが、仮想グラウンドが不安定だったのが原因と考えられます。

ちなみに、『キュルキュル』というノイズはなくなりましたが、より小さいレベルでヒスノイズが出ています。 ヒスノイズはヘッドフォンアンプを交換しても同様なので、ΔΣのD/A変換から出ていると予想しています。

ユーティリティーについて

PyramixというDAWのファイルを扱うために作りました。 Windows版とMac OS版があり、どちらもCUI(ターミナル)で動作します。

Pyramixは、操作コンソールとしてWindowsパソコンを必要とします。 ΔΣ音源の入った一時ファイルはDSDIFFのマルチトラックファイルとして、Windowsパソコンに格納されます。

この一時ファイルをコピーして、簡単な操作を加えるために作りました。 コマンドは2つあります。

dsdiff_multi_track2chx4(DsdiffMultiTrack.exe) 複数トラックのDSDIFFファイルをステレオWSDフォーマットに変換するプログラム

Macのコマンドバイナリは、Intel CPUを積んだ64bit OSのターミナルから実行してください。 ユニバーサルバイナリではないので32bit OSやPowerPCでは動作しません。

まずPyramixの音源ファイルだけを引数にコマンドを実行します。 すると、サンプリング周波数や、チャネル数などを画面に表示します。

Pyramixがデータファイル形式として利用しているDSDIFF形式では、全てのチャネルに4文字のチャネル名を付けるルールになっています。 過去の実行例を見ると、単に上からC000 , C001 , C002 , C003 , ... と数字が付いているようです。 この数字とPyramixコンソール上での表示順序は一致していることを期待しますが、私には保証できません。

変換を実行するときは、入力ファイルからステレオの2ch分を選択し、コマンド実行時に4文字のチャネル名で 左、右 の順番に指定します。

なにぶん数GBのファイル読み書きを行いますので、1回の実行に数分かかります。

出力は、元ファイルと同じディレクトリに、拡張子が"dff"→"wsd"と変更になったファイルとして格納します。 すでに出力ファイルと同じファイル名のファイルがある場合、メッセージを出力して止まります。

ds2pcm(ds2pcm.exe) ΔΣをPCMに変換するプログラム

ΔΣファイルを入力して、44.1kHzfsのステレオWAVファイルを出力します。 入力は以下を自由に組み合わせられるはずです。

  • フォーマット DSDIFF/WSD
  • サンプリング周波数 2.8Mhz/5.6MHz/11.2MHz
  • 入力チャネル数 1~10

とりあえず、Pyramixのファイル変換に成功しましたが、その他の入力形式は真面目にテストしていないので、バグがあるかもしれません。

ds2pcmの使い方
$ ds2pcm --channels=3,4 入力ΔΣファイル名 出力WAVファイル名

--channelsの引数は、左チャネルと右チャネルを数字で指定します。 最初のチャネルは0番で、8チャネルファイルの最後は7番です。 上の例では左に3、右に4を指定しています。 --channelsの引数を省略すると、左=0チャネル、右=1チャネルを指定したのと同じ効果を持ちます。 指定チャネル番号が、ファイル内のチャネル数を超えた時のチェックも入れました。

2016年12月7日 初出

2017年1月3日 表現修整


back button 1bit研究会へ