問題タブ [asio]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
delphi - マルチチャンネル サウンドカード ( ASIO ) を備えた Delphi
Delphiに関する情報や、ASIOプロトコルを介したマルチチャンネルの外部サウンドカードを使用した例を見つけることができませんでした。
ASIO に関する情報をいくつか見つけましたが、すべての情報がさまざまな用途で提供されているため、何の役にも立ちません。
私が達成する必要があるのは次のとおりです。
-既にインストールされているデバイスのドライバーを介して、アプリに外部 USB/FW サウンドカードを認識させます。-利用可能な出力チャンネルを一覧表示します(入力チャンネルは目的には必要ありませんが、それらについての情報を持っていても害はありません...) -必要な出力チャンネルを使用して、個別に制御されたそれぞれにデータ/オーディオを送信できるようにします
主な目標は、ノイズ、ハム、固定周波数変調波など、さまざまなレベルのオーディオを各出力チャネルに送信することです。その必要性は、サウンドカードのオーディオ VU メーターで、UDP 経由でアプリ自体に受信したデータを表示する必要があるためです。実際のオーディオ信号を受信していませんが、各チャンネルのオーディオ レベルのデータだけを受信しています。そのレベルを実際のオーディオ レベルに変換してから、サウンドカードに送信する必要があります。
どんな助けでも大歓迎です!
一番、
M.
編集:
直接の質問:
インストールされているデバイスのドライバーを介して外部マルチチャンネル サウンドカードにアクセスし、利用可能な各チャンネルに異なるオーディオ ストリームを送信する方法は?
Delphi アプリで ASIO とマルチチャンネルの外部サウンドカードを使用する便利な例はありますか?
python - ASIO をサポートするマルチチャンネル PyAudio
Win7 で PyAudio を使用して PreSonus AudioBox 1818VSL に接続しようとしていますが、一度に 2 つ以上のチャンネル (ステレオ) を録音するのに問題があります。PreSonus ドライバーは、多くのステレオ入力オーディオ デバイス (ステレオ チャンネル 1&2、3&4 など) と 18 入力チャンネル ASIO デバイスを作成します。どのステレオ機器からでも問題なく録音できます。レイテンシを最小限に抑えて 2 チャンネル以上から録音するために、ASIO デバイスを使用しようとしています。
ASIO、DS、WMME、WASAPI、WDMKSのサポートをコンパイル したhttp://www.lfd.uci.edu/~gohlke/pythonlibs/#pyaudioのPyAudioのビルドを使用しています。
pyaudio_handle.is_format_supported()
ASIO デバイスが 44.1、48、および 96 kHz で 8 ~ 32 ビットのデータをサポートしていることを示すための呼び出し。
以下は、によって返される辞書ですpa.get_device_info_by_index(32)
以下は、PyAudio 入力ストリームを作成するために使用したコードです。コールバック関数は単にデータをリストにプッシュし、pyaudio.paContinue
必要な量のサンプルを取得するまで戻り、その後 を返しますpyaudio.paComplete
。
44.1 kHz よりも速いレートで ASIO ドライバーを初期化しようとすると、PyAudio がハングして戻りません。44.1 kHz で初期化すると、次のエラーが発生しますIOError: [Errno Unanticipated host error] -9999
。
このエラーを解決するために提供できるヘルプは役に立ちます。Win7 で実行している場合、ASIO が PyAudio の 2 チャンネル以上で動作することを証明することさえできます。ありがとう。
c++ - C++ ASIO、バッファへのアクセス
私はオーディオ プログラミングの経験がなく、C++ は非常に低レベルの言語であるため、少し問題があります。http://www.steinberg.net/en/company/developers.htmlからダウンロードした ASIO SDK 2.3 を使用しています。
SDK内の例に基づいて独自のホストを作成しています。
今のところ、サンプル全体を確認できましたが、機能しているようです。PCに外部サウンドカードを接続しています。このデバイスのドライバーのロード、構成、コールバックの処理、アナログからデジタルへのデータのキャストなど、一般的なものに成功しました。
そして、私が今立ち往生している部分:デバイスを介してトラックを再生すると、ミキサー(デバイスのソフトウェア)でバーが動いているのが見えます。したがって、デバイスは正しい方法で接続されています。私のコードでは、ミキサーで移動しているバーの名前で入力と出力を選択しました。また、ASIOCreateBuffers() を使用して、各入力/出力のバッファーを作成しました。
間違っていたら訂正してください: ASIOStart() が呼び出され、ドライバーが実行状態にあるとき、サウンド信号を外部デバイスに入力すると、バッファーがデータでいっぱいになると思いますよね?
ドキュメントを読んでいますが、少し迷っています - デバイスからアプリケーションに送信され、INPUT バッファに保存されているデータにアクセスするにはどうすればよいですか? それともシグナル?信号分析や将来の録音に必要です。
編集:複雑にした場合、一言で言えば、私の質問は次のとおりです:コードから入力ストリームデータにアクセスするにはどうすればよいですか? ドキュメントでそれを可能にするオブジェクト/コールバックが表示されません。
c# - NAudio: 既存の AsioOut インスタンスを再利用してファイルのキューを再生しても安全ですか?
NAudio AsioOut クラスを見ると、新しいファイルが出力を通じて再生されるたびにインスタンスが破棄され、再作成されることを意図していることは明らかです。Init メソッドは、インスタンスに既にソース ストリームがある場合、特に InvalidOperationException をスローします。一般に、通常の状況で Asio 出力を破棄して再作成することは問題ではありませんが、Asio ドライバーとして設定されたコンボルバーに出力を送信しているため、そうするのを避けたい場合があります。ドライバーが初期化されるたびに、大きなコンボリューション フィルターをリロードする必要があるため、ギャップのないトラックを再生する場合、遅延が煩わしくなります。
遅延を回避するために、AsioOut インスタンスが既に存在する場合は破棄しないという考えがあり、キュー内の次のファイルのビット深度とサンプリング レートは最後のファイルと同じです。問題は、AsioOut クラスで Init を呼び出して、次に再生するファイルを渡す必要があることです。これにより、上記の例外がスローされます。ファイル間でビット深度、サンプリング レート、および出力チャネル数が変更されていないことを確認した場合、例外のスローを回避するために Init メソッドを変更しても安全ですか?
ありがとう、アラン
audio - ASIO SDK オーディオ バッファの処理方法
だから私はいくつかのオーディオ処理ソフトウェアに取り組んでおり、ASIO オーディオ処理のいくつかについてちょっと混乱しています。私が読んでいるものから、バッファスイッチコールバックが行われたとき、「入力」を「出力」に処理する必要があるようです。しかし、入力チャンネルと出力チャンネルの数が異なる場合はどうなるでしょうか? 入力と出力のフォーマットが正しく一致しない場合は、フォーマット変換を行う必要があると思いますか?
qt - Qt で ASIO SDK をコンパイルする
Portaudio ライブラリと Steinberg の ASIO SDK を使用して Qt プロジェクトをコンパイルしようとしています。ASIO なしで Portaudio をコンパイルすることはできましたが、両方のライブラリでコンパイルすると、次のような 7 つのエラーが発生します (機能が異なります)。
http://portaudio.com/docs/v19-doxydocs/compile_windows_asio_msvc.htmlの指示に注意深く従い、MSVS コンパイラで Qt を使用しています。
これが私の.proファイルです
誰も手がかりを持っていますか?ASIOSDK が正しくリンクされていないようですが、修正方法がわかりません。本当にありがとう!