Ffmpeg ile sessizlik oluşturmak için aevalsrc filtresini kullanabilir ve ardından ikinci bir komutta bunları kayıpsız bir şekilde birleştirmek için concat protokolünü kullanabilirsiniz:
ffmpeg -filter_complex aevalsrc=0 -t 10 10SecSilence.mp3
ffmpeg -i "concat:input.mp3|10SecSilence.mp3" -c copy output.mp3
Sessizliğin uzunluğunu, -t 10saniye cinsinden istediğiniz zamanı değiştirerek kontrol edebilirsiniz . Tabii ki, sadece bir kez sessizliği oluşturmanız gerekir, o zaman dosyayı etrafında tutabilir ve istediğiniz dosyaların her birini doldurmak için kullanabilirsiniz. Concat demuxer'ı da aramak isteyebilirsiniz - biraz daha işlemci yoğunluğu vardır, ancak bir kabuk betiğine düşmeyi daha kolay bulabilirsiniz.
Bunu tek bir komutta yapmak istiyorsanız, concat filtreyi kullanabilirsiniz - bu, sesinizi yeniden kodlamanızı gerektirir (filtre filtreleri ile uyumlu olmadığından -codec copy), bu nedenle yukarıdaki seçenek muhtemelen sizin için en iyi olacaktır. Ancak bu, sesi kodlamadan önce sonuna kadar sessizlik eklemek isteyen ham PCM ile çalışan herkes için yararlı olabilir:
ffmpeg -i input.mp3 \
-filter_complex 'aevalsrc=0::d=10[silence];[0:a][silence]concat=n=2:v=0:a=1[out]' \
-map [out] -c:a libmp3lame -q:a 2 output.mp3
d=10İstediğiniz zamana (saniye cinsinden) geçerek sessizliğin uzunluğunu kontrol edin . Bu yöntemi kullanırsanız, bu FFmpeg MP3 kodlama kılavuzunu kullanışlı bulabilirsiniz.