【发布时间】:2017-08-11 18:44:17
【问题描述】:
所以我目前正在尝试从我的树莓派(rasbian)流式传输我的麦克风输入
到某种网络流,以便稍后在我的手机上接收它。
为了做到这一点,我使用arecord -D plughw:1,0 -f dat -r 44100 | 顶部管道将我的 USB 麦克风的声流传输到标准输出,据我所知,它工作得很好,但我需要它更大一点,这样我才能理解远离它的人。
所以我像这样将它传送到 sox play 命令:
arecord -D plughw:1,0 -f dat -r 44100| play -t raw -b 16 -e signed -c 2 -v 7 -r 44100 - test.wav
(test.wav 只是一些随机的 wav 文件 ID,没有它就无法工作,并且 - 后面 44100 和 test.wav 之间有一个空格,因为我认为 - 是一个单独的参数:
SPECIAL FILENAMES (infile, outfile):
- Pipe/redirect input/output (stdin/stdout); may need -t
-d, --default-device Use the default audio device (where available))
我发现通过使用 -v 参数可以增加音量。 这会将录制的流播放到我连接到树莓派 3 的扬声器。
最终目标: 将音量增加的声音流通过管道传输到标准输出(或一些 fifopipe 文件),这样我就可以从另一个脚本中的标准输入将其发送到我的手机。
但是我很困惑播放命令的手册页http://sox.sourceforge.net/sox.html
我需要选择输出设备来管道或粗壮或其他东西
如果你知道一个更好的方法来增加我认为Recording WAVE 'stdin' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereosoundstream 的音量,请告诉我
【问题讨论】:
-
这可能属于 dsp.stackexchange.com,如果没有人可以帮助我,我会把它贴在那里
标签: linux audio stream pipe sox