2017-04-05 12 views
0

ホットキーを押したときにサウンドエフェクトをトリガーするスクリプトを作成しようとしていますが、これは難しくないかもしれませんが、特定のオーディオデバイスに出力できるようにしたい私の場合、仮想オーディオケーブル。サウンドをオーディオデバイスに出力する

私は少しインターネットを見回しましたが、私は多くの可能な解決策を見ましたが、誰も私のために(まだ)解決していません。 AHKの通常のSoundPlay機能は特定のオーディオデバイスに出力できないようですが、wmplayerやその他のメディアプレーヤーでバッチスクリプトを使ってサウンドを再生するなど、他のオプションも検討していますが、特定のオーディオデバイスにサウンドを出力させるソリューション...

私の質問は、特定の非デフォルトオーディオデバイス(仮想オーディオケーブル)にサウンドを再生するにはどうすればよいですかコマンドプロンプトやautohotkeyの内部で行われますか?


編集:私は解決策を見つけた、下記答えてご覧ください。あなたが必要とする

答えて

1

を管理していました。私はどうしたのか教えてくれるでしょう:

インターネットで何か検索したところ、私はIrrKlangというC#ライブラリを見つけました。 IrrKlangの使用で呼び出すことができる小さなコンソールアプリケーションプログラムを作った、playsoundは.exeの名前、最初のパラメータはplaysound.exeの場所からのサウンドファイルへのパス、最後のパラメータはaです。この番号はまだ動作しているはずですが、いくつかの試行錯誤の後、仮想オーディオケーブルまたは他のオーディオデバイスの番号を見つけることができます。

今後ここに来る人々のために、コードをgithubに掲載しました。

0

すべてがここにある:サウンドセットとSoundGet AutoHotkeyをのv1.1.10に、後にVistaをサポートし、後でネイティブ:

LexikosのVistaのオーディオコントロールは

ノートに関する機能します。 SoundSet/SoundGetでサポートされていない高度な機能を使用する場合を除き、VA.ahkは必要ありません。

https://autohotkey.com/board/topic/21984-vista-audio-control-functions/

デフォルトの出力デバイスを変更するには、cPanelの内のスクリプトのサウンドのプロパティをすることができます。だから私は、私が達成しようとしていた何をする

Run, mmsys.cpl 
WinWait, Sound 
    ControlSend, SysListView321,{Down num} ' num matches device position 
    Sleep, 100 
    ControlClick, &Set Default 
    Sleep, 100 
    ControlClick, OK 
WinWaitClose, Sound 

第H、

+0

返信いただきありがとうございます。 Vista Audio Controlを使用して特定のオーディオデバイスにサウンドを再生するにはどうすればいいですか?私は、あるデバイスを取得するための関数VA_GetDeviceがドキュメントにありますが、そのデバイスでサウンドを再生するにはどうすればいいですか? – MichielP1807

+0

VAは、使用中のデバイスを取得します。その後、別のものを選択するためにcpanelをスクリプト化しました。しかしこれは、cpanelのデフォルトのサウンドデバイス設定に関係なく、サウンドを任意のデバイスに向けるのに役立ちません(修正された答えを参照)。しかし、一部のアプリケーションではこれを行うことができます。 – PGilm

関連する問題