【问题标题】:Selective output from SoX stats option?SoX 统计选项的选择性输出?
【发布时间】:2021-10-03 05:37:08
【问题描述】:

我正在使用 Kubuntu 运行 SoX。我有以下代码从声音文件中获取信息:

for file in *.mp3; do echo -e '\n--------------------\n'$file'\n'; sox $file -n stats; done > stats.txt 2>&1 | tail -1

它产生如下所示的输出:

--------------------
soundfile_name.mp3

DC offset  -0.000287
Min level  -0.585483
Max level   0.572299
Pk lev dB      -4.65
RMS lev dB    -19.55
RMS Pk dB     -12.98
RMS Tr dB     -78.44
Crest factor    5.56
Flat factor     0.00
Pk count           2
Bit-depth      29/29
Num samples     628k
Length s      14.237
Scale max   1.000000
Window s       0.050

有人可以修改命令以限制输出,使其看起来像这样吗?

--------------------
soundfile_name.mp3

Pk lev dB      -4.65
RMS lev dB    -19.55
RMS Pk dB     -12.98
RMS Tr dB     -78.44

谢谢

【问题讨论】:

  • | tail -1 是干什么用的?
  • 谢谢。我其实不知道。不管有没有它似乎都一样。
  • 完成。打算回来接受答案,但它消失了。迷茫,

标签: bash parsing sox


【解决方案1】:

鉴于感兴趣的行共有单词“dB”,您可以使用 grep -w dB 过滤 SoX 输出:

for file in *.mp3; do echo -e '\n--------------------\n'$file'\n'; sox $file -n stats | grep -w dB; done > stats.txt 2>&1

stats.txt的结果内容:

--------------------
soundfile_name.mp3

Pk lev dB      -4.65
RMS lev dB    -19.55
RMS Pk dB     -12.98
RMS Tr dB     -78.44

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-07-03
    • 1970-01-01
    • 2015-08-07
    • 1970-01-01
    • 1970-01-01
    • 2015-01-18
    • 1970-01-01
    相关资源
    最近更新 更多