我有一系列png映像:image_00.png、image_01.png、image_02.png等等。我想将它们转换为gif,所以我尝试了命令
ffmpeg -i image_%02d.png video.gif不幸的是,由此产生的gif扭曲了颜色。更具体地说,它在视频中添加了一种奇怪的黄色阴影。
我还尝试使用上面的命令使用所有可能的像素格式选项(我使用命令ffmpeg -h encoder=gif确定了这些选项):rgb8、bgr8、rgb4_byte、bgr4_byte、gray、pal8。例如,ffmpeg -i image_%02d.png -pix_fmt rgb8 video.gif。不幸的是,所有产生的gifs都有某种颜色失真。
我还注意到,如果将图像转换为mp4而不是gif,则不会发生这种失真。但是,如果我尝试将那个mp4转换成一个gif,我就会再次出现失真。
如何在没有颜色失真的情况下产生这个gif?
发布于 2019-11-13 07:19:31
我能够通过首先为所有png映像生成调色板来解决这个问题。然后,我使用该调色板创建gif:
ffmpeg -i image_%02d.png -vf palettegen palette.png
ffmpeg -i image_%02d.png -i palette.png -lavfi paletteuse video.gif有关更多信息,请参见https://ffmpeg.org/ffmpeg-filters.html的"palettegen“和"paletteuse”部分。
https://stackoverflow.com/questions/58832085
复制相似问题