GNU/Linux >> Linux の 問題 >  >> Linux

多くの mp3 ファイルを結合/マージする方法は?

これにより 2 つの mp3 ファイルが連結され、結果のメタデータは最初のファイルのメタデータになります:

ffmpeg -i "concat:file1.mp3|file2.mp3" -acodec copy output.mp3

これは、ffmpeg の場合、"concat:" の部分全体が 1 つの "入力ファイル" であり、そのメタデータが最初に連結されたファイルになるためです。代わりに 2 番目のファイルのメタデータを使用する場合は、それをダミーの入力ファイルとして追加し、そのメタデータを出力のメタデータにマップする必要があります:

ffmpeg -i "concat:file1.mp3|file2.mp3" -i file2.mp3 -acodec copy test.mp3 -map_metadata 0:1

2 つのメタデータからメタデータを構築する場合は、手動で行う必要があります。ファイルのメタデータをダンプできます

ffmpeg -i file1.mp3 -f ffmetadata file1.metadata

両方のメタデータをダンプして新しいメタデータを作成したら、-metadata を使用して出力ファイルに追加できます 、および -map_metadata を設定することでメタデータのコピーを無効にすることができます 負の入力ファイル番号からのマッピング。これにより、名前の値が設定され、その他のメタデータは設定されません:

ffmpeg -i "concat:file1.mp3|file2.mp3" -acodec copy -metadata "title=Some Song" test.mp3 -map_metadata 0:-1

これにより、MP3 でいっぱいのフォルダーが 1 つの MP3 ファイルに連結されます:

1) 連結する MP3 ファイルのリストを保存します。例:

$ cat mylist.txt
file '/tmp/01.mp3'
file '/tmp/02.mp3'
file '/tmp/03.mp3'
file '/tmp/04.mp3'
file '/tmp/05.mp3'
file '/tmp/06.mp3'
file '/tmp/07.mp3'

2) 次のコマンドを実行します (-safe 0 mylist.txt が代わりに相対パスを使用する場合は不要です):

$ ffmpeg -f concat -safe 0 -i mylist.txt -c copy output.mp3

Mp3Wrap - ファイル名や ID3 情報を失うことなく、再エンコードせずに、複数の MP3 ファイルを単一の再生可能な MP3 にラップするコマンドライン ユーティリティ。プレイリスト、情報ファイル、MP3 内のカバー画像などの非オーディオ データのアーカイブもサポートします。これらのファイルは後で解凍できます (mp3splt などを使用)。通常の MP3 デコーダーは、オーディオ ストリーム全体を 1 つの長いトラックとして再生できます。


Linux
  1. 2 つの CSV ファイルを結合するには?

  2. 複数の MP3 ファイルを結合する (ロスレス)

  3. .fuse_hidden* ファイルを削除するには?

  1. LinuxでファイルをUTF-8エンコーディングに変換する方法

  2. Linuxで2つのテキストファイルを結合する方法

  3. フォルダ内の多くのファイルの名前を変更するにはどうすればよいですか?

  1. Bashでファイルを1行ずつ読み取る方法

  2. Linuxで(空の)ファイルを切り捨てる方法

  3. AWK を使用して 2 つのファイルをマージする方法は?