Woody&Allen工房

銘木無垢材オーディオ木工の記録

Bug head 5.39 Release

ちょっと外出していましたので・・・5.38の試聴は飛ばします〜 (^^)
---------------------
Bug head 5.39 Release
独自技術によるハイレゾ高音質サウンドプレイヤー
[Fixed] Display at Initialize processs
初期化画面を修正しました。
All core any cures 2.8 を使用したとき、音が良くなるようにチューニングしています。Black screen は特別なチューニングを行っています。
調整(adjust)と言えないのは、教科書に書いてあるような方程式を使えば調整できるものではないからです。チューニング(tuning)、車のような言い方であれば、ハンドクラフティッドチューニングです。手作業による地道な調整を繰り返していますので、単に調整したとは言えません。
FPU 初期化 vs MMX 初期化
どちらもハードウェアは同じなのですが、音質は雲泥の差が生まれます。FPU 初期化は音が細くなりジッターの音になり、MMX 初期化は音が太くなりオーディオの音になります。情報処理工学しか専攻してない技術者は、電子工学や電気工学を深く学んでいませんので、愚かなの発想で考えようとします。
ジッターの原因
プログラムをロードしたとき、メモリへロードされますね。変数へ 0 をセットして初期化したいとき、メモリから 0 をセットするか、演算で 0 をセットするか、この違いでジッターが発生します。多くの情報処理工学専攻者が勘違いしていますのは、変数の初期化はメモリ由来で良いと考えていることです。ジッターが起きない方法とは、変数を演算で初期化する方法で正しいのです。変数とはレジスタではなく、メモリです。一般的に、HDD→メモリ→レジスタ→メモリ、このルートでジッターが発生します。Bug head で証明した超低ジッターは、演算→レジスタ→メモリ、このルートならジッターは起きません。電気工学や電子工学など完全に理解できている情報工学専攻者は、演算由来のほうがジッターは起きないと判断できると思います。
アセンブラに頼らない0ビット電位調整
演算によって、0 を生成して下さい。(512-512)、(512 ! 512)、(512 & 128)、いずれも 0 を生成する演算です。2の乗数にするのは、メモリ参照でも 1000 のように1ビット立つだけなら、ジッターが起きにくいからです。2の乗数も演算で得るなら、(2 << 8) として 512 を得てもいいでしょう。つまり、( (2 << 8) & (2 << 4))、このように演算して 0 を得るのです。この演算値を変数の初期化に使います。
気を付けたいこと
浮動小数点の変数や、倍精度の変数は、整数の 0 をセットしてはいけません。浮動小数点の 0 をセットしなければなりません。ここを間違えますと、ジッターが発生しやすくなります。
All core any cures 2.8 Release
電子ビットの帯処理性能アップユーティリティ
Rewrite data 1.32 Release
電子ビットの帯磁性改善ソフトウェア
All core any cures Linux Release
電子ビットの帯処理性能アップユーティリティ
Mircosoft OneDrive - Bug head
http://1drv.ms/1nBAKyD