SOX「-n stat」の出力キャプチャ

SOX「-n stat」の出力キャプチャ

次の出力をキャプチャ/転送しようとしています。

arecord -f S16_LE -qd 5 ファイル&& sox ファイル -n stat

出力:

サンプルを読む:8000長さ(秒):1.000000スケール:2147483647.0最大振幅:0.992188最小振幅:-0.992188中線振幅:0.000000平均標準:0.093221平均振幅:-4.0 .6 17188最小増分: 0.000000平均増加:0.001067 RMS増加:0.009643約周波数:52音量調整:1.008

jsonに変換するにはデータをキャプチャする必要があります。問題は、「SOX」が標準出力をキャプチャ/パイプするために一般的に使用する方法に反しているようです。どんな提案がありますか?

答え1

Soxはこの出力をstderrに送信します。

stderrをリダイレクトするには、以下を実行してください。

arecord -f S16_LE -qd 5 file && sox file -n stat    2> output.txt

またはパイプに送信します(例wc:)。

arecord -f S16_LE -qd 5 file && sox file -n stat  2>&1 | wc 

関連情報