Как добавить обложку альбома с помощью ffmpeg?
Я застрял, чтобы добавить обложку альбома в mp3 файлы.
Я уже исследовал и погуглил эту проблему, но пока не нашел решения. Документация ffmpeg
рекомендует этот скрипт для добавления изображения (обложки альбома) в mp3:
ffmpeg -i input.mp3 -i cover.png -c copy -map 0 -map 1 -metadata:s:v title="Album cover" -metadata:s:v comment="Cover (Front)" out.mp3
Источник: http://www.ffmpeg.org/ffmpeg-all.html#mp3
Но это не работает. Мой консольный вывод:
Unrecognized option 'c'
Failed to set value 'copy' for option 'c'
Я искал другое решение и получил это: http://trac.ffmpeg.org/ticket/2221:
ffmpeg -i input.mp3 -i cover.png -map 0:0 -map 1:0 -c copy -id3v2_version 3 -metadata:s:v title="Album cover" -metadata:s:v comment="Cover (Front)" out.mp3
Это возвращает тот же результат:
Unrecognized option 'c'
Failed to set value 'copy' for option 'c'
Кто-нибудь может мне помочь, пожалуйста?
Примечание: я использую Ubuntu 12.04 и ffmpeg версии 0.8.6-4: 0.8.6-0.
Благодарю.
Ответы
Ответ 1
С последней версией,
ffmpeg -i in.mp3 -i test.png -map 0:0 -map 1:0 -c copy -id3v2_version 3 -metadata:s:v title="Album cover" -metadata:s:v comment="Cover (front)" out.mp3
Используйте -map
для связывания входного потока с выходом
Использовать -c copy
для прямого demux/remux
-id3v2_version 3
- это то, что отсутствует в вашей командной строке. Обратите внимание, что wil пишет IDV2.3, но вы можете запросить 2.4 (-id3v2_version 4
)
с -id3v2_version 3
опция -metadata
будет хорошо интерпретирована
Примечание: комментарий метаданных чувствителен к регистру.
Ответ 2
Здесь очень важно заметить, что я потерял час работы:
ffmpeg -i in.mp3 -i test.jpeg -map 0:0 -map 1:0 -codec copy -id3v2_version 3 \
-metadata:s:v title="Album cover" -metadata:s:v comment="Cover (front)" out.mp3
Значение f
в comment="Cover (front)"
должно быть строчным. Если нет, тип изображения в заголовке ID3 не будет установлен!
Еще один намек, который может помочь кому-то: Чтобы изображение JPEG-изображения было преобразовано в png, вам нужно установить -codec copy
.
Ответ 3
проблема в том, что вы не определяете, какой кодек вы хотите скопировать. В случае аудио должно быть -c:a copy
обложки распознается как видео (иди на фигуру !!), поэтому -c:v copy
ffmpeg -i audio-in.mp3 -i picture.png -c:a copy -c:v copy -map 0:0 -map 1:0 -id3v2_version 3 -metadata:s:v title="Album cover" -metadata:s:v comment="Cover (front)" audio-out.mp3