Как я могу скопировать coverart из flac в opus с помощью ffmpeg

984
Tupsi

Я пытаюсь преобразовать некоторые файлы flac, которые все имеют встроенный в opus с ffmpeg. Все, кроме coverart, прекрасно копируется, но я не могу переместить обложку. Перепробовал все виды материала -mapmetadata, которые я смог найти до сих пор, но не повезло, в результате всегда не хватает общего показателя.

В то время как оригинальный .flac сообщает о наличии видеопотока с coverart

Duration: 00:02:53.51, start: 0.000000, bitrate: 910 kb/s Stream #0:0: Audio: flac, 44100 Hz, stereo, s16 Stream #0:1: Video: mjpeg, yuvj420p(pc, bt470bg/unknown/unknown), 500x500 [SAR 1:1 DAR 1:1], 90k tbr, 90k tbn, 90k tbc 

созданные файлы опуса не имеют графики:

size= 2815kB time=00:02:53.51 bitrate= 132.9kbits/s speed= 104x video:0kB audio:2793kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.811556% 

Я пробовал -vcodec copy, -mapmetadata 0, -mapmetadata 0: s: 0, но безуспешно. Кажется, что-то не так с opus, так как у меня та же проблема с преобразованием в aac.

Так есть ли способ вытащить обложку из файла flac и переместить его в новый файл на ходу, используя ffmpeg, или мне нужно сначала извлечь его, а затем снова приклеить обратно к новому файлу с помощью дополнительных команд ?

6
Вы пробовали с `-map 0` * и *` -vcodec copy`? Картинка регистрируется как обычный поток, а не как метаданные. Gyan 6 лет назад 0
Я уже пробовал копировать -vcodec, как упоминалось выше. -карта 0 дает мне ошибку, Tupsi 6 лет назад 0

2 ответа на вопрос

2
Gyan

Эта функция добавления обложек в файлы Opus или Ogg еще не реализована в ffmpeg. Существующий билет .

поэтому я бы сначала сбросил обложку в файл (с помощью ffmpeg?), преобразовал бы его в opus, а затем прошил обложку обратно в файл opus другой программой? Tupsi 6 лет назад 0
да ладно, все просто, только что нашел opusenc и он отлично работает, что мне нужно. В любом случае, спасибо за указатели! Tupsi 6 лет назад 0
1
user935687

ffmpeg не сохраняет coverart для выходного файла opus, но сохраняет для выходного файла flac.

самодельный:

$ ffmpeg -i 01.mp3 -f flac - | opusenc - 01.opus

Похожие вопросы