マイク入力から10秒間の音声を録音したいのですがソックスドキュメントにも他の場所にも、その方法を示す例が見つかりませんでした。timeout
録音を停止するために現在使用しているコマンドは次のとおりです。もっと良い方法はありますか?
timeout 10 sox -b 32 -e unsigned-integer -r 96k -c 2 -d --clobber --buffer $((96000*2*10)) /tmp/soxrecording.wav
答え1
少し遅くなりましたが、もし同じ質問がある方がいたら、設定された長さのオーディオを録音するには、トリム「効果」を使用する必要があります。
10秒間の音声を録音するには、コマンドの最後にtrim 0 10を追加します。例:
$ sox -b 32 -e unsigned-integer -r 96k -c 2 -d --clobber --buffer $((96000*2*10)) /tmp/soxrecording.wav trim 0 10
SoXより男:
トリム {位置(+)}
オーディオの一部を切り取ります。任意の数の位置を指定できます。最初の位置に到達するまでオーディオは出力されません。エフェクトは各位置でオーディオのコピーと破棄を交互に行います。最初の位置パラメータに 0 の値を使用すると、オーディオの先頭からコピーできます。