【发布时间】:2017-07-11 09:22:10
【问题描述】:
我使用 arecord 录制了一个 wav 文件,然后我将使用它重定向到一个 fifo
arecord -d 1 -c 2 -r 48000 -f S32_LE > myfifo
但是我怎样才能使用 sox 获得这个统计数据呢?
sox myfifo -n stat
给予
sox FAIL formats: can't open input file myfifo: WAVE: RIFF header not found
请参阅this Question,了解我是如何做到的。
我需要给 sox 哪些选项来忽略标题。 如果可能,我想将标题详细信息作为命令行提供。
【问题讨论】:
-
我已经复制并粘贴了您的命令,它们对我有用。样品读取:96000长度(秒):1.000000缩放:2147483647.0最大幅度:0.179199最小幅度:-0.157074中线幅度:0.011063平均规范:0.011798平均幅度:-0.000868幅度:0.016321最大Δ:0.0165426最小三角形:0.000000平均三角洲:0.010183 RMS delta:0.015230 粗略频率:7128 音量调整:5.580
-
嗯。我认为你错过了该文件是一个先进先出,我将输出重定向到先进先出
-
如果还有什么我可以做的,请告诉我。目前我无法重现您的问题。
-
嗯,打开两个终端,一个终端
mkfifo temp.wav ; arecord -c 2 -r 48000 -f S32_LE > temp.wav和另一个终端sox temp.wav -n stat这将产生这个问题。
标签: python linux python-multithreading sox