■はじめに
接続されているサウンド入力デバイス、出力デバイスを最小限にしてから設定を行うことをお勧めします。ヘッドセットや外部スピーカーの他、ディスプレイケーブルだけが接続されているディスプレイもサウド出力デバイスになるので、極力外しておきましょう。
■Windows 11の設定
スクリーン右下にあるスピーカーアイコンを右クリックして"サウンドの設定"を開きます。出力デバイスと入力デバイスを設定できるので、入力デバイスをステレオミキサーに変更し、画面からはみ出てますが、マイクボリュームを最大にしておきましょう。
もしステレオミキサーが選択できないようなら、デバイスマネージャーで設定を確認します。"オーディオの入力および出力"のツリーを展開してください。ステレオミキサーが選択できない場合はツリー配下にステレオミキサーが無いと思います。メニューの表示→非表示のデバイスを表示をチェックすることで表示されたら、ドライバーの更新、有効化、インストールしなおし等順番に操作してみてください。ここでうまくステレオミキサーを有効にできない場合はPCそのものを変えてみるとか大胆な手を打ってください。
■デバイスIDを確認する
自分が利用しているPCのステレオミキサーのインデックスを確認します。pythonのライブラリ"sounddevice"もしくは"pyaudio"を利用してステレオミキサーのインデックスを確認するサンプルを掲載しておきます。
import sounddevice as sd print (sd.query_devices())
import pyaudio p = pyaudio.PyAudio() for index in range(0, p.get_device_count()): print("{index}:{name}".format(**p.get_device_info_by_index(index)))こちらは"sounddevice"のライブラリを利用して筆者の利用しているPCのデバイスインデックスを確認した結果です。ステレオミキサーはインデックス1番であることがわかります。1点ポイントですが、このRealtekのステレオミキサーで録音できる音は、Realtekのサウンドデバイスから音が出ている必要があります。ステレオミキサーの設定が正しくても別のデバイスから音が出ていても録音できません。また、実際にマイクから音を拾っているわけではありませんが、ミュートしていると録音できません。この2点気づいていないと、"昨日は動いたのに・・・"となります。
ちなみに、不等号がデフォルトデバイス、行末のin,outの前の数字がチャンネル数になります。マイクとスピーカーは1セットしか付いていませんが、マイクがやたら多く出てきているのは設定をいじくりすぎておかしくなっているのかもしれません。
■Pythonで録音する
ここまでくれば後は簡単です。入力デバイスに先ほどのインデックスを指定すればOK。"sounddevicve"ライブラリの場合は、このような感じで指定すれば良いです。ライブラリの説明を見るよりサンプルソースを探せば早いかと。
0 件のコメント:
コメントを投稿