我将使用什么命令将 mp4 或 mv4 视频文件转换为动画 gif,反之亦然。即,将动画 gif 转换为 mp4 或 mv4。
答案1
这对我有用:
ffmpeg -i animated.gif -movflags faststart -pix_fmt yuv420p -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" video.mp4
移动标志– 此选项优化 MP4 文件的结构,以便浏览器可以尽快加载它。
像素_fmt– MP4 视频以不同格式存储像素。我们包含此选项来指定在所有浏览器中具有最大兼容性的特定格式。
室颤– 使用 H.264 的 MP4 视频需要具有可被 2 整除的尺寸。此选项可确保这种情况。
来源:http://rigor.com/blog/2015/12/optimizing-animated-gifs-with-html5-video
答案2
就我而言,ffmpeg
直接使用就可以达到目的并提供最佳结果:
$ ffmpeg -f gif -i infile.gif outfile.mp4
答案3
旁注:重要的是要指定-pix_fmt yuv420p
,以免您的视频在各种工具中看起来是黑色矩形:
$ ffmpeg -i animated.gif -pix_fmt yuv420p output.mp4
参考
答案4
将 GIF 动画转换为视频的另一种方法:
ffmpeg -i your_gif.gif -c:v libvpx -crf 12 -b:v 500K output.mp4
-crf 值可以从 4 到 63。值越低意味着质量越好。 -b:v 是允许的最大比特率。更高意味着更好的质量。