ディジタルAGC事始め 1. 7MHz DXを受信 TI4 ( コスタリカ ) から、7MHzで、強力な電波が.....19:45 05/Apr 2007 2回目の "no problem "で、 擬似AGCを掛ける ↑click here 2 AGCと言えば... 入力が大きくなれば、出力を小さくして、入力信号のレベルが低くなれば、出力を大きくするには..... 確か、そんな関数があったような... 思い出した! exp(-x)が、確かに、そんな関数でしたね。 そんで、最初のグラフは、 exp(-x)、exp(-x/2)、exp(-x/4)の各関数のグラフです。 exp(-x)では、減衰が大きすぎて、聞こえなくなってしまいますね。 次に、この関数を、もう少し変形します。 exp(-x)では、減衰が大きすぎるので、試しに、 exp(-x/4) そして、ここに、0.5,1.5 を加えて、 exp(0.5-x/4)、exp(1.5-x/4) こうすると、レベルの低い入力を、増幅できるのです。 しかし、この関数では、ダイナミックレンジが狭すぎるので、今後の課題です。 私は、今の所 exp(0.64-x/1.4) に、採っています。 これは、擬似AGCです。 入力の音声に途切れがあると、その部分だけ、雑音が入ってきます。 正確に AGCを掛ける為には 48KHzサンプリングでは、 1mSは、48サンプルに相当する 110mSで、AGCを効かすには、 48*110 サンプル後に、AGCを掛ける と、言う事をする必要が、あります。 まだ、そこまで、やってませんねんわ.... 3. consoleアプリケーションを、 window ベースに移植完了 ⇒ さあ、このwindowに、DirectXで、描きましょうか? それとも、 DirectXベースで、全て、描きましょうか? 以前 C#を使って、 DirectXで描いたスペアナは、流用しないつもりです。 H.19.4.13