これは、しばらくの間私を悩ませてきたLinuxオーディオMP3パズルです。
MP3オーディオファイルの最初の数秒をトリミングする方法は? (ffmpeg -ss
が00:01または1.000のどちらの形式でも機能しません)
これまでのところ、私がやりたいことを実行するために、GUIを使用して実行しています。これは、単一のファイルの場合はおそらく遅くなり、ファイルのバッチの場合は明らかに遅くなります。
Linuxでmp3を編集するには、 sox をお勧めします。シンプルなtrim
エフェクトがあり、あなたが求めることを実行します(man sox
for datails-search(press/
)(「トリムスタート」)。例:
sox input.mp3 output.mp3 trim 1 5
あなたはそれについて言及しませんでしたが、あなたの目的がファイルの先頭にあるsilenceを削除することだけである場合は、silence
が見つかりますはるかに便利な効果(man sox
、「上期」を検索)
mp3splt を使用してみると、MP3ファイルとOggファイルを分割でき、ファイルを再エンコードしないため、品質の低下を防ぐことができます。
時間指定が時間で始まることを確認してください。
ffmpeg man page を引用するには:
位置は秒単位または「hh:mm:ss [.xxx]」形式のいずれかです。
つまり、2番目の構文を選択すると、.xxx
部分のみがオプションになります。それ以外の場合、ffmpegは秒として誤って解析する可能性があります。
同じことが期間についても言えます:
期間は秒数、または "hh:mm:ss [.xxx]"
もう1つの落とし穴は、ffmpeg引数の順序です(たとえば、入力ファイルの-ss
/-t
オプションは、-i
オプションの前に置く必要があります)。
$ wget http://traffic.libsyn.com/twiv/TWiV179.mp3
$ ffmpeg -ss 1:05:59.3 -t 00:02:03.9 -i TWiV179.mp3 -acodec copy \
what_is_a_hmm_twiv179.mp3
仕様-ss 1:05:59.3 -t 2:03.9
を使用すると、異なる結果が得られます(つまり、2秒の長いピース)。
(ffmpegバージョン0.10.7を使用してFedora 17でテストされています。)