Я пытаюсь преобразовать серию PNG в MP4 видео. Я использую ffmpeg и хочу кодировать видео с помощью кодека H.264. Используя команду
ffmpeg -y -r 30 -b 1800k -i _tmp%04d.png -vcodec libx264 out.mp4
Я получаю следующее предупреждение
Incompatible pixel format 'bgra' for codec 'libx264', auto-selecting format 'yuv420p'
Насколько я понимаю, в pngs есть альфа-канал, который не может обработать кодер x264. Есть ли способ обойти эту проблему? Есть ли, например, способ заставить кодировщик игнорировать альфа-канал (мои pngs на самом деле не имеют прозрачных элементов)?
Я знаю, что могу предварительно преобразовать png-файлы для обрезки альфа-канала, но последовательность изображений создается другой программой, и необходимость предварительной обработки изображений каждый раз, когда я делаю видео, будет менее чем оптимальной.
Изменить: после удаления альфа-канала из каждого кадра с помощью команды
convert in.png -background white -flatten +matte out.png
ffmpeg выдает предупреждение
Incompatible pixel format 'pal8' for codec 'libx264', auto-selecting format 'yuv420p'
так что до сих пор нет игры в кости.