私はオーディオ プログラミングの経験がなく、C++ は非常に低レベルの言語であるため、少し問題があります。http://www.steinberg.net/en/company/developers.htmlからダウンロードした ASIO SDK 2.3 を使用しています。
SDK内の例に基づいて独自のホストを作成しています。
今のところ、サンプル全体を確認できましたが、機能しているようです。PCに外部サウンドカードを接続しています。このデバイスのドライバーのロード、構成、コールバックの処理、アナログからデジタルへのデータのキャストなど、一般的なものに成功しました。
そして、私が今立ち往生している部分:デバイスを介してトラックを再生すると、ミキサー(デバイスのソフトウェア)でバーが動いているのが見えます。したがって、デバイスは正しい方法で接続されています。私のコードでは、ミキサーで移動しているバーの名前で入力と出力を選択しました。また、ASIOCreateBuffers() を使用して、各入力/出力のバッファーを作成しました。
間違っていたら訂正してください: ASIOStart() が呼び出され、ドライバーが実行状態にあるとき、サウンド信号を外部デバイスに入力すると、バッファーがデータでいっぱいになると思いますよね?
ドキュメントを読んでいますが、少し迷っています - デバイスからアプリケーションに送信され、INPUT バッファに保存されているデータにアクセスするにはどうすればよいですか? それともシグナル?信号分析や将来の録音に必要です。
編集:複雑にした場合、一言で言えば、私の質問は次のとおりです:コードから入力ストリームデータにアクセスするにはどうすればよいですか? ドキュメントでそれを可能にするオブジェクト/コールバックが表示されません。