Hapus keheningan dari file audio sambil meninggalkan celah

16

Saat ini kami menggunakan perintah ini dalam skrip shell untuk menghapus keheningan dari file audio:

ffmpeg -i $INFILE -af silenceremove=0:0:0:-1:1:${NOISE_TOLERANCE}dB -ac 1 $SILENCED_FILE -y

Ini berfungsi dengan baik kecuali bahwa itu menghilangkan semua keheningan, menyebabkan audio yang tersisa diperas bersama-sama.

Bagaimana ini bisa dilakukan sambil menyisakan dua atau tiga detik di antara setiap bagian audio?

Solusinya harus sangat efisien karena kami akan memproses banyak audio dan harus menggunakan alat yang dapat dengan mudah diinstal pada Linux dan OSX, seperti ffmpeg atau sox.

Nathan ReinstateMonica Arthur
sumber

Jawaban:

25

Cara terbaik yang pernah saya lihat adalah dengan menambahkan -lbendera ke diam sebagai berikut:

sox in.wav out6.wav silence -l 1 0.1 1% -1 2.0 1%

Saya telah menyalin perintah ini dari Contoh 6 dari posting blog yang sangat berguna ini bernama The Sox of Silence

Ben T
sumber
Diuji, dan melakukan persis apa yang saya butuhkan. Terima kasih!
Nathan ReinstateMonica Arthur
Akhirnya solusi tentang cara kerjanya. Terima kasih.
vr_driver
Saya ingin melakukan ini untuk video dan memangkas keheningan - akankah SoX bekerja? Apa alternatif terbaik?
zero_cool