###前提・実現したいこと
現在、WindowsPC(以降ホスト)とRaspberryPi3(以降クライアント)を使い音声ストリーミング配信を行っています。
ホスト側はマイクから入力された音声情報をffmpegにて配信しています。
クライアントはffplayをもちいて受信し再生を行います。
後述してありますが、USBスピーカを使用する設定を行った場合でもステレオ・ジャックの方から再生されます。
このように、デバイスを指定すればUSBスピーカから再生は出来ました。
aplay -D plughw:0,0 sample.wav
manコマンドにてffplayのマニュアルを読みましたがオーディオ・デバイスを指定するようなコマンドが見つかりませんでした。何かいい方法はありませんでしょうか?
###音声配信コマンド
ホスト側のコマンド
ffmpeg -rtbufsize 1MB -f dshow -i audio="マイク (USB PnP Audio Device)" -threads 0 -vn -acodec libmp3lame -ar 44100 -ab 96k -f flv -f rtp rtp://192.168.0.31:8080
クライアント側のコマンド
ffplay -nodisp -probesize 128 -i rtp://198.168.0.31:8080
###発生している問題・エラーメッセージ
ストリーミングの送受信は成功しているのですが、音の再生が上手くできません。
USBスピーカから出力されずに、ステレオ・ジャックから再生されています。
追記
pyaudioやvlcを用いてsample.wavを再生を行った場合も同様にステレオ・ジャックの方から出力されます。
###試したこと
- オーディオデバイスの優先順位を上げる-1-
USBデバイスの優先順位を上げる
sudo vi /etc/modprorbe.d/alsa-base.conf
options snd-usb-audio index=-2 ↓ options snd-usb-audio index=0
cat /proc/asound/cards
一番上になっていることを確認
0 [AUDIO ]: USB-Audio - CONEXANT USB AUDIO Fonglun CONEXANT USB AUDIO at usb-3f980000.usb-1.4, full speed 1 [ALSA ]: bcm2835 - bcm2835 ALSA bcm2835 ALSA
- オーディオ・デバイスの優先順位を上げる-2-
sudo vi /usr/share/alsa/alsa.conf
19行目の「 "~/.asoundrc" 」の先頭に#を追加しコメントアウト
defaults.ctl.card 0 defaults.pcm.card 0 ↓ defaults.ctl.card 1 defaults.pcm.card 1
###補足情報(言語/FW/ツール等のバージョンなど)
windowsPC( 送信側 )
OS : windows10
使用ソフト: ffmpeg
仕様デバイス:USBマイク
RaspberryPi3( 受信側 )
OS : rasbian
使用ソフト: ffplay
仕様デバイス:USBスピーカー
あなたの回答
tips
プレビュー