mp3→mp3(またはflac→mp3)変換を実行するときに、-map_metadata
入力ファイルから出力ファイルにメタデータをコピーするために使用できます。
ffmpeg -hide_banner -loglevel warning -nostats -i "${source}" -map_metadata 0 -vn -ar 44100 -b:a 256k -f mp3 "${target}"
しかし、試してみると、すべてのメタデータが正しくコピーされないことがわかりました。ツールを使うeyeD3
、入出力ファイルを確認し、以下を確認しました。
$ eyeD3 input.mp3
input.mp3 [ 4.15 MB ]
--------------------------------------------------------------------------------
Time: 01:46 MPEG1, Layer III [ 320 kb/s @ 44100 Hz - Stereo ]
--------------------------------------------------------------------------------
ID3 v2.3:
title: Track title
artist: Artist Name
album: Album Name
album artist: Various Artists
composer: Composer Name
recording date: 2019
eyed3.id3:WARNING: Non standard genre name: Soundtracks
track: 17/37 genre: Soundtracks (id None)
disc: 1/1
FRONT_COVER Image: [Size: 86555 bytes] [Type: image/jpeg]
Description:
PRIV: [Data: 42 bytes]
Owner Id: Google/StoreId
PRIV: [Data: 40 bytes]
Owner Id: Google/StoreLabelCode
--------------------------------------------------------------------------------
$ eyeD3 path/to/output.mp3
/tmp/test.mp3 [ 3.26 MB ]
--------------------------------------------------------------------------------
Time: 01:46 MPEG1, Layer III [ 256 kb/s @ 44100 Hz - Stereo ]
--------------------------------------------------------------------------------
ID3 v2.4:
title: Track title
artist: Artist Name
album: Album Name
album artist: Various Artists
composer: Composer Name
recording date: 2019
eyed3.id3:WARNING: Non standard genre name: Soundtracks
track: 17/37 genre: Soundtracks (id None)
disc: 1/1
PRIV: [Data: 40 bytes]
Owner Id: Google/StoreLabelCode
PRIV: [Data: 42 bytes]
Owner Id: Google/StoreId
--------------------------------------------------------------------------------
特に、画像を正しくコピーできませんFRONT_COVER
。どういうわけか途中で画像が削除されます。
FRONT_COVER Image
変換中にコピーされたことを確認するには?
答え1
カバーは特別な構成のビデオストリームとして扱われます。を使用すると-vn
処理が無効になります。
使用
ffmpeg -hide_banner -loglevel warning -nostats -i "${source}" -map_metadata 0 -c:v copy -disposition:v:0 attached_pic -ar 44100 -b:a 256k -f mp3 "${target}"