カテゴリー

多時間系と等時性

二週間のご無沙汰でした。SALです。

前回は、「ディジタルデータを正確に扱うことと、リアルタイム性が両立できない場合がある。」
と話ました。では、一般のPCはどちらを優先させているのでしょうか?

勿論、前者であることは、改めて言うまでもありません。
通常のコンピュータ処理に於いて、「決められた時間間隔で次々と答えを出す」と言った作業は有りません。
寧ろ、「正確であることを満足すれば、早ければ早いほど宜しい」のです。
抽象的な言い方をすれば、それぞれの任務はそれぞれの時間で行っても構わないのです。
「3時までに報告書を提出しなさい!」と命令されることはあっても、
「結果は、正確に3時から1ページ3秒間隔で、提出しなさい。」何て言う上司はいません。
通常の業務では、PC内のプロセス達は、独自の時間で処理を行えば良いのです。
そもそも、PCが提供するリソースはプロセスの数に比べて圧倒的に少ないわけですから、本当の意味で同時進行はできません。
つまり、各々のプロセスは、実時間に対してギクシャクした時間配分の中で、進行しているわけです。
このことは、OSから与えられた仮想空間(memory,I/O)と同様に、仮想時間をイメージすると判り易いかもしれません。
即ち、OSは個々のプロセスに、必要な仮想空間と共に仮想時間を与えると解釈し、全体を多時間系と見做すことにします。

逆に後者の典型は、制御用のコンピュータです。
制御用のコンピュータでは、刻々と変化する状況を捉え、実時間でコマンド処理を行わなければなりません。
言うなれば、一連の処理を総て一つの時計の下に進めなければなりません。
これを、等時処理或いは等時性(Isochronous)と呼びます。
例えば、具合の悪いデータがあるので、「この処理は後回しにする(時間分岐)」なんて訳には行きません。
平時に機能している組織が、緊急時に役に立たなくなるのは、一般の多時間的組織では等時処理ができない為です。
勿論、精度の悪いデータで制御する訳にはいきませんので、
必要な精度を保てるような、ハードウェアとリアルタイムカーネルを必要とします。

80年代、SALは多軸サーボシステムのコントロールソフト開発をメインに仕事をしていました。
当時のPCは、貧弱で当然ながらその様な用途には向いていませんでした。
しかしながら、ユーザの要望で使わざるを得ない場合は、必要なハードウェアの追加や改造を施すと共に、
総てのソフトウェアを自前で用意したものです。(内蔵LSIの初期化にBIOSを利用したことはありましたが…)
あれから20数年、PCは多大な進化を遂げましたが、リアルタイム処理が前提の機器ではありません。
しかしながら、ゲームやDVDビデオの再生等に使用されることも前提なので、希望の光はあります。

準備が整ったので、PCでの音楽プレイヤーに潜む問題を洗い出してみましょう。
今回は、DACチップ自体の問題は問わないので、正確なアナログ出力をする理想のDACを前提にします。
信号の伝播経路を大雑把に、
①WAVファイル→②プレイヤーソフト→③デバイスドライバ→④サウンド装置側のコントローラ→⑤DACチップ→⑥アナログ出力
とします。(途中LAN、USB、DDCを介する場合もあるかもしれませんが、そこに潜む固有の問題は別の機会にします)
勿論、①~④の平均処理速度は、⑤が要求するレートを充分上回っていなければなりません。
重要なのは、PC側①②③が多時間系なのに対して、⑤DACは完全な等時処理であることです。
では、この切り替えはどのステージで行うのが理想的でしょうか?
SALが提唱するような、楽曲再生の為だけならば、④サウンド装置側のコントローラの内部で行うのが理想的です。
そうすることで、何時でも正確なデータを⑤DACに必要なテンポで送り出すことができます。

ところで、この変換を行うためには、仮想時間系のギクシャクした時間を緩和するためのバッファ(空気室の様なもの)が必要です。
その容量は、与えられた仮想時間がもつ最大ギャップ(沈黙時間)を保障できなければなりません。
結果的に言えば、少なくともその程度の遅れ(Latency)は覚悟しなければなりません。
ところが、プレイヤーソフトに色々なエフェクターや表示当を付ける場合は、
その操作に関与したプロセス以降を等時処理しなければ、⑥アナログ出力と時間的なずれを生じてしまいます。
百歩譲っても、感覚的に違和感のない程度の遅れに留めなければなりません。
しかしながら、PC側のどのプロセス①②③も本来多時間系なので、遅れ縮小には限界があります。
つまり、仮想時間のばらつき以下にすれば、それだけでデータを正確に伝送できなくなります。
また、ばらつきを少なくしようと、該当プロセスの実行順位を無理やり上げても、今度は安定した動作が保障できなくなります。

年度末が近づいてきた・・・

K’s です。
年度末が近づいてきたこともあり、何かと気忙しい日々を送っているこの頃です。
1週間ほど前に比較的大きな規模の案件の引き合いをいただき、見積書作成の期日が今月中なので、この土・日曜日もお持ち帰りで書類と格闘していました。

仕事にとり掛かっているとアッと言う間に時間が過ぎていきます。 「集中力がある」と言えば聞えが良いのですが、単に「仕事が遅い」だけなのかも知れません。 そんな訳で気がついたら既に夕方、土曜日はジャズ・ボーカルの発表会があり、歌わなければなりません。 さっそく家族と一緒に一目散に会場のライブ・ハウスに向かい、美味しいスパゲティーを食べて、準備完了。
 
K’s の出番は10番目、他の出演者の歌を聴きながら待っていたのですが、とっても長~い。 なぜ、こんなに時間が「短かかったり」、「長かったり」両極端に感じるのでしょうか?
神様はK’s の体内にジッター発生器でも仕組んだのでしょうか?
やっとK’s の出番になり2曲歌ったのですが、仕事の事で頭が一杯(バッファーの容量不足ですが、ガベージコレクションをしたら、後ですばやく仕事に戻れないので大変)でMCはボロボロ、でも肝心の歌の方はとても気持ち良く歌うことができました。

娘が携帯を使い、気合でスナップを撮ってくれました。
暗いライブ・ハウスなのに良く撮れています。

デジタル情報は正確か?

二週間のご無沙汰でした。SALです。

最近、PCオーディオと言う言葉も定着してきた感がありますが、SALが目指す方向との違いも徐々に感じられるようになりました。
どうも、PCを使ったオーディオには二つの流れがあり、それらをPCオーディオと一つの言葉で括ってしまうことに、原因があるようです。
その二つとは、簡単に言うと「PCありき」か「オーディオありき」かです。
「PCありき」とは、PCで音楽を聴くにしても、もっと楽しめる音にすること。
「オーディオありき」とは、従来からのオーディオソースにPC音源も加えること。
と思ってください。
この二つは、将来的に合流する可能性もゼロではないかもしれませんが、少なくとも今は別の流れと考えた方が良さそうです。
PC雑誌のオーディオ記事の多くは、前者の立場で書かれたものが多いので、後者の方が読む場合は注意が必要です。
また、後者の立場での議論にも、PCに対する誤解(迷信)が含まれている場合があり、こちらも要注意です。

そこで、これまでの話も含めて、PCを使ったオーディオについて、何回かに分けてお話したいと思います。
先ずは、第一回目として表題の項目について述べてみます。
最終目標は、「PC音源の音質は他のアナログソースに匹敵、若しくは凌駕できるか?」に答えることです。
では、始めましょう。

「デジタルだから正確だ!」等と聞くことがあると思いますが、この主張はそれこそ正確ではありません。
有限の情報を「正確に保管する」或いは「正確に渡す」には、デジタル化は有効な手段ですが、充分ではありません。
正確さを保障するには、以下の二つが必要です。
① 誤り検出が可能であること
更に、誤り率が比較的高い場合には、
② 誤りがあった場合に、訂正若しくは再送が可能であること
です。このことをもう少し掘り下げて説明します。

① 誤り検出機能とは
実際に伝送や記録で使用されるメディア(物理媒体)は、アナログ量を利用するので、ほぼ無限とも言える情報量を保有しています。
デジタル情報は、その中から曖昧な部分を極力排除して、ほんの一部を有限な情報媒体として利用しています。
つまり、受け渡しに都合の良い部分だけを利用するので、つい正確だと思ってしまいますが、誤りが無い訳ではありません。
そこで、誤り検出を可能にする為に、本来の情報から算出される「余分(冗長)な情報」を加えます。
一番簡単な例がパリティビット(parity bit)です。
例えば、1バイト毎にパリティビットを加え9ビットを1デジットとして渡すこととします。
ここで加えた1ビットが冗長ビットになります。

偶パリティ(even parity)を例に、仕組みを簡単に述べてみます。
本来の情報は1バイト(256通り)なのですが、もしこの部分のONのビット数が奇数の場合は、パリティビットもONにします。
そうすると、正しいデータは「常にONのビット数が偶数」になっている筈です。
偶然二つのビットが反転した場合も正しいと見なしますが、起こりうる確率は一つの場合の二乗程度になります。
言葉のあやですが、万に一つであれば、億に一つとなり、精度がぐっと上がります。
昔のIBM互換機のメインメモリ構成はこうなっていました。いかにも実務のIBMらしいと思えます。
因みに、ホビーユースから発展してきた多くのPCは、パリティ無しでした。
IBM互換機も、EDOを使う頃からはパリティ無しになってきましたが、
IC自体の信頼性向上というよりも、パリティエラー後の処理が問題だったのかもしれません。
業務用サーバ機等では、自己修復能力②のあるECCを採用して、対処しているようです。

② 訂正若しくは再送が可能とは
伝送の場合は、送り主がいる訳ですから、受け手でエラーを検出したら、再送を要求することも可能です。
こうすることで、よほどのことがない限りは、情報を正確に受け取ることができます。
欠点は、送り主が受け手や伝送経路の品質に縛られることです。(例えば、ブロードキャスト不可とか…)
別の視点で言うと、送り主が希望したテンポで送ることが保障されない点です。(リアルタイム性への障害)
例えば、皆さんが今使っている通信手順であるTCP/IPを例に取ると分りやすいかもしれません。
TCPはIPの上位のプロトコルとしてスタックされています。
IPはパケット単位の情報をネットワークを駆使して受け手に届けるための手順で、再送に関する手順はありません。
誤り訂正の為の再送プロトコルはTCPの担当です。
皆さんが今使っているブラウザはこのTCPの上位にあるアプリケーションなので、このブログもWFPのダウンロードも正確に行えます。
逆に、IP電話が何故IPなのかも、正確さよりリアルタイム性を重視する所以です。
実は、PCにおける音楽再生もこの状況は同じです。(詳しくは、回を追って述べます)

データを保存する場合は、再送手段を持ちえませんので、自己修復方式がよく使われます。
折角なので、自己修復の仕組みを簡単な例で説明します。
先ほどのパリティビットに加えて、ある纏まったバイト数(仮に32とする)単位でデータを括り、そこに一バイトのパリティデータを加えます。
冗長な一バイトは、それぞれのデータラインD0~D7のパリティを担当します。
(8×32長方形の縦横方向にパリティチェックを行う)
今、5番目のバイトとD3がパリティエラーしていれば、5番目のD3ビットを反転すれば、正しいデータに戻ります。
実際にはより洗練されたチェック方式を使います。
たとえば互換機のHDでは、通常データは512バイトのセクター単位に分けられます。
これにアドレス等のヘッダ情報とお尻にCRCと呼ばれるチェックデータを付けて記録されます。
このCRCが、自己修復機能つきのチェックデータです。
勿論修復能力は完璧ではありませんので、駄目な場合はCRCエラーとなります。
つまり、エラーなく読み込めた場合、そのデータ(例えばWAVファイル)は、書き込んだものと同一です。
万全を期すために、書き込み直後に読み出しチェックをする場合もあります。
こうすることで、書き込みエラーや不良メディアの検査になります。

今回は長話になってしまって申し訳ありません。
取り敢えず、以下のことを覚えておいてください。
「ディジタルデータは正確に伝える手段を持ち合わせていますが、
そのためにはリアルタイム性を犠牲にする場合が有りえます。」

入浴と読書とiPadと・・・

こんにちはLEOです。かなり久しぶりの投稿となりますが、しっかり生きながらえております^^

さて、2012年も1ヶ月を過ぎましたが、普段三日坊主で終わってしまう私が今年になってから1日も欠かしたことが無い事があります。

それは、入浴しながらの読書です。

だいたい45分~1時間程度湯船に浸かりながら、本を読みます。

最初は、湯気で本がダメになるので、浴室へ持ち込むのに抵抗があったのですが、

「本は使ってなんぼ、実用重視!ダメになったらまた買えばいい」と割り切って、持ち込んでみました。

すると、どうでしょう。当初心配していた湯気で本がダメになることはありませんでした。もちろん、適度な換気は必要ですが。

 

このようにいい感じに読書ライフを送ってきたのですが、最近、ひとつ不満に思うことが出てきました。

それは、本を読んでいると、書いてある事柄に関連のある事や、知らない事、言葉などに出くわした時に、

すぐに調べたくなるのですが、入浴中だとそれが出来ないのです。

調べたい事が出てきたら、とりあえず憶えておいて、風呂から出た時に調べようとしたのですが、悲しいかな、年のせいで調べたい事を忘れてしまうのです。

もっとも、メモを持ち込むとか方法はあるのでしょうが、気になることはすぐ調べたくなってしまいます。

そこで、本だけでなくiPadを持ち込むアイデアを思いつきました。iPadなら知らない事が出てきた時、すぐにネットで調べることが可能ですし。

とりあえず、そういう馬鹿な思い付きをする人がいないか、ネットで検索したところ、いるわ、いるわ、同じ事を考えていたご同輩が^^

方法は二通りあって、リーズナブルに済まそうと思えば、キッチン用品のジップロックで代用する。もうひとつは専用の防水ケースを購入する事です。

 

防水する手段はさておき、ひとつ心配なのは、iPadを浴室に持ち込んだら、読書どころか、ついついネットをやってしまわないかという事です。

入浴中にもネットなど、ネットジャンキーの末期症状だとも思えますので、少し抵抗感があるのが正直な気持ちです。

私の友人で、入浴中にネットをしたいがために防水仕様のスマートフォンに乗り換えた強者もおりますが・・・。

しばらくは悩みが続きそうです。

MP900431665

方便と嘘は違います

二週間のご無沙汰でした。SALです。

現在は、Hybrid2S が何故良い近似を与えるのか、数理に基づく解析を試みていますが、あまり芳しくありません。
フィルタの透過範囲(-fs/2~fs/2)を僅かに狭め、その差分周波数を微小パラメータにとると興味深い係数が現れたりしますが、まだまだ五里霧中といった段階です。

話は変わりますが、1月12日の東京出張の帰りに、K’sさんが買った某技術系の雑誌を見せてもらいました。
理由は、「USBデバイスをターゲットにしたPCオーディオ特集」が組まれていたからです。
良かったらSALも買おうかと思ったのですが、DACの説明部分を読んで萎えてしまいました。

理由は、説明に使っていた変換対象のデジタルデータが、標本点間で1しか違っていなかったためです。
念のために言っておきますが、(1bit)DSDの説明ではありません!
確かに、動作原理は簡潔さを求められるので、「方便!」のつもりかもしれませんが、
次のステップ(標本点)までに、1単位(分解能ぎりぎり)しか変化しないのでは、繋ぎ方は完全にネグられます。
結果、オーディオソースとしての未解決問題を見過ごしてしまいます。

実際CDのPCMデータは、数千つまり3~4桁のオーダーで変化します。
16ビットでこれですから24ビットなら6桁の変化は当たり前です。
サンプリング周波数を4倍にしても、1桁も下がりません。(10倍でやっと一桁です)

お好みのソースがどれくらいか知りたければ、Gradient.exe が提供する MaxGradient の値が参考になります。
但し表現は32ビット16進表記ですから、16ビット換算する場合は、下二桁を無視してください。
例えば、0x00635d79 ならば、635d を関数電卓で10進表示で見てください。
結果は、驚きの 25437 です。(最近のCDでは、おとなしい方かも)
場合によっては、符号付16ビットの最大値 32767 を超える場合もありえます。
(最大傾きは、原理的に最大振幅のπ(≒3.14)倍までありえます。)
但し、この値は瞬間最大値であり、隣までの平均値でもないので、仮に半分の 12718 にしても4桁を超えています。
くどいようですが、次の標本点までの変化を1としたのでは、途中のアナログ値のでたらめさを隠蔽してしまうのです。
(上記のデータの最大変化量を1にしたかったら標本化周波数を更に25437倍しなければなりません)

SALは、新聞なども含めて書籍の信頼度を測るのに、自分の得意分野の説明や論理を参考にします。
明らかな間違いや、単なる言葉の遊びに終始しているものは論外です。(意外と多い)
そうではなくても、以下のようなことには注意が必要です。
“複雑な現実をそのまま扱うことは不可能なので、通常は本質ではないと思われるファクタを取り除きなるべく単純化します。
このモデル化が、嘘(間違い)か方便(適切)かは、自己無矛盾性とネグった影響の大きさが試金石になります。”

先の例では、最大振幅が 11025 の入力を仮定した場合、ゼロからその値に到達するのに少なくとも 11025 標本点を要します。
此処までで1/4周期ですから、一周期に必要な標本点は 44100 個となり、サンプリング周波数が 44.1KHz なら、1秒の周期になります。
最早、「音」ですらありません。

ミュージシャンと・・・

予定通りミュージシャンの皆さんと録音のコンセプトについて打ち合わせを行った。
K’sのシステムの中でミュージシャンにとってPA装置に近く馴染み深いと思われる、3Wayスピーカーシステム(TAD TL-1601a ウーハー×2、JBL 2450J コンプレッションドライバー+ウッドホーン、JBL 2405 トゥイーター)を、チャンネルデバイダー系由で、50WのA級アンプ×3台のマルチアンプシステムでドライブして、マスター音源を6~7曲聴いていただいた。
勿論、ジャズのインストルメンタルとボーカルものです。

聴き始めた途端にミュージシャンの目が輝き(耳がダンボになり)、録音という行為に対して成果物である音源のクォリティーについて、「半ば諦めていたことが、本当は可能である」ということに確信をもっていただけたようです。「良い作品を作りたい」ということに全員のベクトルが一致して気合が入り、そういった意味で良いキックオフになりました。

オーディオの醍醐味を体感していただいた音源は、K’sがミックスとマスタリングを行った比較的ダイナミクスの大きなPCM24bit/96KHzのWAVファイルです。それでも有効ダイナミックレンジは50dB程度なのです。
K’sが言いたいのは、録音や編集の時は24bitもしくは32bit(フローティング)必要ですが、「再生のことだけを考えた場合は16bitで充分ではないか?」と言うことです。
すなわち、「24bit/96KHzで録音した場合は、16bit/48KHzを聴くための(正しくはD/Aコンバータに渡す)音源にしてはどうか?」と考えます。
この場合、ソフトウェアDACで前処理して16bit/48KHzにしても良いし、予め、傾きデータ入りの16bit/48KHzWAVEファイルを作っておいても良いと思います。

今更なぜ、低スペックの16bit/48KHzや16bit/44.1KHzにするかと言うと、「市販の音源に24bitを有効につかっているダイナミックレンジの大きなものは殆どない」ということと、「現在の半導体技術で本当にハイレゾリューションの音源を正確にD/A変換できているのか?」ということに疑問を持っているからです。
要するに「正確にD/A変換するには、逆に低スペックの方が有利である」と言うことです。
ここら辺のことを、音源制作から再生までを通して、SALさんと一緒に、色々実験していきたいと考えます。

それには、まず、良い音源を作らなければなりませんが、K’sはピアノの録音で悩んでいます。マルチマイクで録りますが、ベースやドラムは今までも思い通りに録れております。
ピアノは、「音色を優先に録るか? 位相を揃えてとるか?」、「リッドに反射した音を中心に少し離して録るか?、弦やハンマーの音を中心に近接で録るか?」これらは、両立しないようなので困ります。
少し安易な考えですが、マイクをピアノに6本割り当てて、両方のスタイルで録っておこうと考えています。

2012年オーディオの目標

K’sです。

今回は、今年やりたいオーディオのことです。
オーディオの目標を検討するうえで、K’sの場合はリスニング環境がボトルネックになります。
リスニングルームは防音対策(2重の窓、壁、天井)を施しましたが、ドアのほか換気装置やエアコンは一般住宅向け製品のままなので、スタジオのように完全な遮音ではありません。
比較的静かな環境ですが30~35dBの暗騒音があります。
また、集合住宅なので近隣に迷惑をかけないように大きな音が出すのは難しい状況です。
したがって、再生可能な最大音圧レベルは瞬時で105~110dBが精一杯といったところです。

このような環境のなかで目標としては、システム全体で「ダイナミックレンジ80dB以上」、「リスニングポジションでの周波数特性40~18000Hz ±4dB以内」の再生ができるオーディオ装置の構築を目指します。  これを実現するのは結構難しいですが、目標は「ちょっと背伸びしないと達成できない位」が良いと考えます。

まずは、上流から詰めていかなければなりませんが、K’sはこの目標に相応しいダイナミクスの大きな音源を持っていません。

実は、昨年11月から、新しい手法でのミックスとマスタリングの実験に明け暮れており、年末年始はミックス&マスタリング三昧の毎日でした。
なんとか自分で納得できる24bit/96KHzの音源(最終的にはWFPで16bit/48KHzにしてDACに渡す?)が作れる、明かりが見えてきたのですが、大きなダイナミックレンジは思ったように確保できません。
いろいろ工夫して有効ダイナミックレンジ70dB程度は稼げるようになりましたが、このような音源を一般的なオーディオ装置で再生しても、とても聴けた音ではありません。(通常のCDからリッピングした音源は有効ダイナミックレンジを30~40dB程度に圧縮したのものが多く、そのような音源を聴くことに慣れ親しんでいます)
K’sは、そういった意味での「一般的な再生装置で聴くことを考慮しない、生音に近い大きなダイナミクスを持った音源作り」から挑戦したいと思います。
このような馬鹿げた実験ができるのも、趣味ならではの良いところで、商業ベースでは考えることすら不可能なことです。

また、その音源が持っているポテンシャルを十分活かすことができる再生装置を1年掛けて構築していこうと思いますが、幸い新規に購入するものは無いので「やる気をいかに持続させるか」だけです。
この再生装置側のことは、今後ブログで何回かに分けて発表していきたいと思います。

3月には東京で、オーディオの仲間を交えて、ジャズピアノトリオ+ボーカルの録音を行います。

今日はミュージシャンとその打ち合わせですが、まずはダイナミクスの大きな音源を聴いてもらい、オーディオの醍醐味を体感していただき「気合を入れてもらおう」と企んでおります。

(1月25日に青文字部分を加筆修正)

 

CPUと待ち時間

二週間のご無沙汰でした。SALです。

年明け第一回目の「ヘッドホンアンプ考」の最後で「-12dB のバーゲイン」と表現しましたが、これはパワーアンプの増幅率(電圧比率)への補正を表わしたものです。
本文の論旨からいけば、電力回路の減衰器なので、単体での電力伝達率として表現すべきでした。
その場合は、負荷インピーダンスに依存しますので、
取り敢えず、64Ωで近似すると、更に -9dB 食われ、大体 -21dB ぐらいです。
8ΩSPドライブに対して、ミュートSW入り(-20dB)程度と思っていただければ結構かと思います。

話は変わりますが、最近頂いたお便りの中に「CPUを替えると待ち時間の改善ができますか?」といった旨のものが有りました。
P44及びリサンプリングは、倍精度浮動小数点演算を多用するので、かなり時間を食いますが、逆に言えば演算能力による影響も大です。
(P40は傾きチャンクを利用することで、残りの計算時間はP21~P36と同程度になります。)
実際どの程度の依存性があるかを見る為に、「CDデータを、192KHz にリサンプリングする」場合の待ち時間を測定しました。
また、内蔵の傾き算出時間は、Matrix24 を使った値です。
使ったCPUは、①Core i7(920:7.4/7.4)、②Core2 Quad(Q9400:7.2/7.2)、③PentiumD(945:5.1/5.3) の三つです。
OSは何れも Windows7 で、カッコ内のコロン以降の数値は、CPUとメモリーの評価サブスコアです。
楽曲ファイルの長さは、14:13(853sec.) です。
また、初回は実際のメディアからの読み出し時間という不確定な要素が追加されるので、二回目以降にしました。
(精度の悪い測定法ですが、複数回で同じ結果でした)

結果(時計を使った目視計測なので、秒単位です)
① 傾きチャンク1秒:傾き算出なら9秒:リサンプリング22秒
② 傾きチャンク1秒:傾き算出なら12秒:リサンプリング34秒
③ 傾きチャンク1秒:傾き算出なら20秒:リサンプリング52秒

「改善」と言うからには半分以下にならなければなりません。
③→① であれば、53秒が23秒(傾きチャンク無しで、72→31)なので、
「効果有り」としても良さそうですが、③が現役の可能性は低いと思います。
但し、①も今となっては古々タイプなので、最新CPUならば結構良い値が期待できそうです。

WFP4Exp側もマルチコアを生かしていないので、その為だけでCPUを替えることはお勧めできません。
もし買い換える場合には、実際のパフォーマンスを比較してから決めると良いでしょう。
(もし Atom 系からの変更であれば、効果は絶大ですが…)

結論:
当然、効果は有ります。
しかしながら、コストに見合っているかは、総ての面でケースバイケースでしょう。

古いOSに於ける不具合の対応

今日は、SALです。
お正月に楽曲ファイルを整理していて、以前報告した不具合の「読み出し」版に遭遇しましたので、対応できるように修正しました。
今回は、読み出し側なので、WFP4Exp gradient BindWavs Hybrid2S の四つが該当します。
古いOS(Ver.5.2以前)でファイルサーバを利用する場合は、更新してください。

これとは別に「一時間半ほど連続再生していると音が途切れるようになる」と言う不具合報告が有ったので、
複数のPCで、24時間耐久レースじゃなかったテストを行いましたが、症状は現れませんでした。
SALの記憶では、USBデバイス用の標準ドライバを使った時に、似たような症状を経験しています。

WFP4Exp は、アプリ側でジッタを増やさないよう、ドライバを通常とは違った風に使っています。
従って、それに耐えられないドライバがあるのかもしれません。
報告された症状は、あたかもMS得意のガーベージコレクションが働いているようにも見えます。
(再生中にやっちゃいけないことですがね…)
WFP4Exp再起動(プロセスを一度ごわさんにする)で対処できることなら、対策法も有りそうなのですが、
「OSリブートが必要」となると、残念ながらアプリ側では対処不可能と考えます。
(WFP4Exp は、再生中はメモリアロケーションどころか、UIのイベント処理以外何も行いません)

ヘッドホンアンプ考

新年のご挨拶を申し上げます。SALです。

年明け第一回目の今回は100%アナログデバイスの話をします。
SALは一年前より、社内での音質比較の装置として、ヘッドホンも併用しています。
最初は、プリアンプ(C-200L)のヘッドホン出力を利用していましたが、一工夫することにしました。

むか~し昔 試行錯誤の末に完成させた、全段コンプリメンタリA級PAの現代版を作ろうかと計画を立てましたが、
長い間ソフトウェア一本で生計を立てている内に、すっかり体と心が鈍ったせいか、気力が湧きませんでした。
そんな時目にとまったのが、部屋の片隅で眠っていた 12AU7(SRPP)ドライブのKT88シングルアンプでした。
「そんなおもちゃどうする気?」と言う声が聞こえてきそうですが、騙されたと思ってSALのアイデアを聞いてください。

A級なのは良しとしても、出力レベル(残留ノイズも含む)と負荷側からみた高インピーダンスは困りものです。
しかしながら、この困りものを逆手に取る方法があります。
アンプ-ヘッドホン間に、純粋な抵抗のT型のアッテネータを挿入します。
(負荷インピーダンス、減衰率、DF を、三つの抵抗値で調整できます)
(勿論、抵抗値が非負の範囲でですが…)
現在は、6Ωと2Ωの抵抗を直列にしてSP端子に繋ぎ、2Ω側からパラレルにヘッドホンを繋いだ状態(6-2-0)です。
オーバーオールのNFBは掛けません。
これは、アンプ側のインピーダンスを高くする為でもあります。
ヘッドホンのインピーダンス(66)も、2Ωより充分高いので、計算上双方を無視します。
結果、アンプからは8Ωの純抵抗が負荷になっておりますが、ヘッドホン側からは2Ωの純抵抗が見える筈です。
大事な点は二つです。
① アンプの負荷が、ほぼ8Ωの純抵抗と一定している。
② ヘッドホンに対するダンパーが純抵抗でSALには適度なダンピングファクタである。
特に、②の「パッシブダンパー」は重要です。
半導体アンプの台頭以来、アンプ出力の低インピーダンス化が進みましたが、何れもNFB(ダーリントンも含む)による「アクティブダンパー」です。
一時は、「負のインピーダンス」を謳ったきわものまで出現したことがあります。
互いに相手が、周波数依存性の無い純粋抵抗に見えることの大切さは、デバイス別に動作原理を考えればお解り頂けると思います。

また、このダンパー回路は -12dB のバーゲイン(所謂バーゲン!)を持ち、残留ノイズの低減にも貢献しています。
アンプ本体の改造としては、B電源のチョーク出口の静電容量を4倍にして、ハムの低減とB電源ON時のショックを抹消しています。
それと、最近全球新品(といっても中国製)に交換しました。

後書
どの球も、指で弾くと結構大きな音を出します。
ヘッドホン用なので良いですが、SPだと無視できない影響かもしれません。