- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
所以我目前正在尝试从我的 raspberry pi (rasbian) 流式传输我的麦克风输入到某种网络流,以便稍后在我的手机上接收它。为了做到这一点,我使用 arecord -D plughw:1,0 -f dat -r 44100 |
top 将我的 usb 麦克风的声音流传输到 stdout,据我所知它工作正常但是我需要声音大一点,这样我才能听清站在远处的人。
所以我像这样将它传送到 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 后面有一个空格,因为我认为 - 是一个单独的参数:
特殊文件名(infile,outfile):
)
- 管道/重定向输入/输出(标准输入/标准输出);可能需要-t
-d, --default-device 使用默认音频设备(如果可用)
我发现通过使用 -v 参数我可以增加音量。这会将录制的流播放到我连接到树莓派 3 的扬声器。
最终目标:将音量增加的声音流通过管道传输到 stdout(或一些 fifopipe 文件),这样我就可以从另一个脚本中的 stdin 获取它,并将其发送到我的手机。
但是我对播放命令的联机帮助页感到很困惑http://sox.sourceforge.net/sox.html
我需要选择输出设备来管道或粗壮或其他东西
如果你知道一个更好的方法来增加音量,我认为 Recording WAVE 'stdin' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
soundstream 让我知道
最佳答案
据我所知,您无法通过管道传输 play
的输出,您必须为此使用常规的 sox
命令。例如:
# example sound file
sox -n -r 48k -b 16 test16.wav synth 2 sine 200 gain -9 fade t 0 0 0.1
# redundant piping
sox test16.wav -t wav - | sox -t wav - gain 8 -t wav - | play -
对于您问题中的命令,将 play
更改为 sox
并添加 -t wav
以让 sox 应该就足够了知道您想以什么格式传输声音。
arecord -D plughw:1,0 -f dat -r 44100 | \
sox -t raw -b 16 -e signed -c 2 -v 7 -r 44100 - -t wav -
关于linux - 管道 sox 播放命令到标准输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42904441/
我正在尝试使用 SoX 生成频谱图程序。根据documentation ,我应该尝试以下方法来创建频谱图: sox output.wav -n spectrogram 我收到以下错误,而不是频谱图:
对于我正在进行的项目,我需要使用 SoX 工具来生成音频。如果有一种方法可以使用 SoX 生成特定持续时间的特定音符/音调,请告诉我!我对此做了很多研究,但无济于事。 此外,有什么方法可以使其直接输出
我正在尝试剪掉一个 30 分钟以上的文件的前 .010 毫秒。修剪命令修剪它,但我得到的输出是 0.010 毫秒。我想要的是保留音频文件的结尾部分并去掉文件开头的 .010 毫秒。 我尝试使用下面的命
我如何调用 sox 将 2 秒的音频文件转换为加速,以便文件的最终长度为 1.5 秒(75%)?我是否必须通过参数来进行音高校正? 我必须通过什么参数才能使文件大小保持小? 最佳答案 试试这个(用 i
我想在 Linux 中使用 SOX 混合音频。这是我的脚本。我是这件事的初学者。 time sox --buffer 128000 --combine mix audio1.mp3 audio
在静音时拆分音频文件,例如 sox input.wav output.wav silence 1 0.5 1% 1 3.0 1% : newfile : restart 多个输出文件的文件名类似于 o
当我混合四首轨道时,声音降低了很多,我尝试了混合音量和混合。 我如何做到让音量不改变? 我试过 -M after "sox --combine mix-power" ,但最终文件的长度为 0 秒。 最
我想从上传到服务器的音频文件中删除某个频率范围。我了解到SoX命令具有这种功能。 我找不到实现此目的的确切方法。任何帮助都是最欢迎的。 最佳答案 您要查找的命令可能是sinc。 例如:要从wave文件
我正在尝试为几个我不知道以秒为单位的总持续时间的波形文件创建淡入和淡出。我阅读了手册,但我看到的示例看起来都像我需要知道文件的全长。 有人可以在不知道 wav 文件的全长的情况下发布一个在 5 秒内淡
根据联机帮助页(其中已作为示例列出),以下命令应将输入文件拆分为多个音频文件,并在有 2 秒静音的位置进行分割。取而代之的是,它只创建了一个据报道大约 0.2 秒长的文件。 $ sox -V3 inf
我正在使用 SOX 混合音频。 命令 SOX -m voice.wav audio.wav final.wav 是我正在使用的。 我的目标是将 voice.wav 延迟 10 秒,如果我尝试使用延迟
我想将音频文件的音量减少10%(这样新的音量将是原始音量的90%)。如何使用SOX做到这一点?根据SOX手册,它支持音量选项: -v,--volume FACTOR 将调整系数调整为FACTOR。这是
这是来自:wac-to-wav-conversion 的后续问题 我已将文件扩展名从 .wac 更改为 .raw 并使用以下命令: sox -r 44100 -e unsigned -b 8 -c 1
我正在尝试使用链接 here 中给出的脚本将 728 个 .raw 文件转换为 16khz .wav 文件但我收到一个错误 sox FAIL formats: can't open input fil
当前使用的命令是 `sox input.wav -G -t mp3 -r 16k test.mp3` 但这正在创建一个比特率为24.0 kbps的文件。 如何使输出文件的比特率达到16.0 k
我想为音频文件添加噪音。有没有办法在 SoX(或其他工具)中实现这一点? 我正在进行机器学习研究,需要在存在噪声的情况下测试我的算法。理想情况下,我想指定一个信噪比并添加噪声以达到该目标 SNR。 我
我在用 socks 挣扎。我试图简单地切断文件结尾的1.2秒。我知道sox中有一个trim函数,但是我不确定如何使用它,因此它会切断最后的确切时间?我知道它大致像这样工作: sox input out
我尝试了这个: sox -u -r 11.025k -b 8 -c 1 infile.wav outfile.wav 但是当我播放声音时,声音混乱且无法识别。我怎样才能解决这个问题? 最佳答案 试试这
所以,我有一个音频文件,我想在不改变音调的情况下将它的速度降低到 0.5 倍,问题是当我这样做时,我会得到一种奇怪的口吃效果。有什么办法可以让 sox “平稳地”减慢音频速度,这样就不会出现明显的卡顿
audacity有一个噪声门插件,效果很好。我正在寻找等效的命令行-但无法找出SoX compand命令来执行此操作。谁能告诉我与胆大的噪声门相当的sox吗?例如,我在大胆使用 “门频率高于:0.0”
我是一名优秀的程序员,十分优秀!