如何使用 SoX 錄製 10 秒的音訊?

如何使用 SoX 錄製 10 秒的音訊?

我想從我的麥克風輸入錄製 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 秒的音頻,只需在命令末尾添加修剪 0 10,例如,

$ sox -b 32 -e unsigned-integer -r 96k -c 2 -d --clobber --buffer $((96000*2*10)) /tmp/soxrecording.wav trim 0 10

來自索克斯男人:

修剪{位置(+)}

從音訊中剪切部分內容。可以給予任意數量的職位;在到達第一個位置之前,音訊不會發送到輸出。然後,效果在每個位置的複製和丟棄音訊之間交替。使用第一個位置參數的值 0 允許從音訊的開頭進行複製。

相關內容