1

少なくとも HTTP のようなかなり基本的なプロトコルを超えて、シグナル/ストリームのエンコーディングまたはデコーディングを処理する必要はありませんでした。

私たちが職場で使用しているシステムのいくつかは、SMPTE タイムコードに依存して動作しています。これは、1kHz から 2kHz の間で 1kHz の帯域幅を占有するマンチェスター バイフェーズ マーク システムです。

これはオーディオ スペクトル内にあり、ライン レベルであるため、サウンドカードのライン入力に直接接続でき、選択したオーディオ API を使用してアクセスできます (Mac で Core Audio を使用する予定です)。

デジタル ビットストリーム自体をデコードして時間とパラメータを回復することにはかなり満足していますが、実際にサンプリングされたアナログ信号からビットストリームを回復するのはそれほど簡単ではなく、問題にアプローチする最善の方法が何であるかはわかりません。

私の現在の計画では、信号が検出されたら短時間 (1 秒または 24 ~ 30 フレーム)、ゼロ交差レベル間のサンプルの最大数と最小数を測定します (移動平均フィルターを使用してスパイク/ドロップアウトを防ぎます)。デコードに影響を与える) およびゼロ交差点 (DC レベル) を決定するための記録された最大および最小電圧。

次に、この情報を使用して、着信アナログ信号からデジタル ビットストリームを構築できるはずです。私は正しい方向に向かっていますか、それともより良い方法がありますか?

ありがとう

4

1 に答える 1

2

サウンド カードはほぼ確実に AC 結合されています。したがって、DC オフセットを取得するべきではありません。

ここでのサウンドカード入力の興味深い分析

ソフトウェアの自動ゲイン制御を計算するために移動平均を実行することは、おそらく良い考えです。

ゼロクロッシングはおそらくゼロに近いでしょう。また、4khz (2*2k) [4khz のローパス フィルター] でデータをぼかし、エッジ検出してゼロクロッシングを取得することもできます。

このような信号処理の問題が発生した場合、カスタム アプリケーションでキャプチャしたデータをグラフ化し、コードで半インタラクティブに試します。

提案として、いくつかをキャプチャして、保存されたデータを解析ルーチンにフィードする方法を確認してください。さまざまなことを試して、何が機能するかを確認してください

于 2009-11-16T02:12:01.903 に答える