ffmpegを使用すると、aevalsrcフィルターを使用して無音を生成し、2番目のコマンドでconcatプロトコルを使用して無損失でそれらを組み合わせることができます。
ffmpeg -filter_complex aevalsrc=0 -t 10 10SecSilence.mp3
ffmpeg -i "concat:input.mp3|10SecSilence.mp3" -c copy output.mp3
-t 10
秒単位で希望する時間に変更することで、沈黙の長さを制御できます。もちろん、沈黙を生成する必要があるのは1回だけです。それから、ファイルを保持し、それを使用して、必要な各ファイルにパディングできます。また、concat demuxerを検索することもできます。これは少しプロセッサに負荷がかかりますが、シェルスクリプトにドロップする方が簡単な場合があります。
単一のコマンドで実行する場合は、concatフィルターを使用できます。これには、オーディオを再エンコードする必要があります(フィルターグラフはと互換性がない-codec copy
ため)。上記のオプションがおそらく最適です。しかし、これは、オーディオをエンコードする前に最後に無音を追加しようとする生のPCMで作業しているすべての人に役立ちます。
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
任意の時間(秒単位)に変更して、沈黙の長さを制御します。この方法を使用する場合、このFFmpeg MP3エンコーディングガイドが役立つことがあります。