<分区>
任何人都可以向我指出如何使用 svg 图像制作幻灯片(使用 ffmpeg)。 通常的方式,
ffmpeg -i bloch_0%2d.svg bloch2.mp4
不起作用,因为 ffmpeg 显然无法处理 svg 文件(处理输入时发现无效数据)有没有简单的方法可以做到这一点?
谢谢
<分区>
任何人都可以向我指出如何使用 svg 图像制作幻灯片(使用 ffmpeg)。 通常的方式,
ffmpeg -i bloch_0%2d.svg bloch2.mp4
不起作用,因为 ffmpeg 显然无法处理 svg 文件(处理输入时发现无效数据)有没有简单的方法可以做到这一点?
谢谢
最佳答案
首先将 SVG 图像转换为光栅格式,例如 PNG 或 JPEG。如果您的 SVG 编辑器不支持导出为光栅格式,可以使用 ImageMagick 的 convert
命令来完成:
convert bloch_*.svg bloch_%03d.png
注意:为了获得最佳的 SVG 支持,请确保将 ImageMagick 编译为使用 RSVG 库。 Details
接下来,使用 ffmpeg
将光栅图像转换为 MP4 中的 H.264:
ffmpeg -r 1 -i bloch_%03d.png -pix_fmt yuv420p bloch2.mp4
-r 1
选项将输入的帧速率设置为每秒 1 帧,但您可以将其设置为任何您喜欢的值,具体取决于这些图像是独立图像还是某些图像的连续动画排序。
-pix_fmt yuv420p
不是必需的,但是 PNG 颜色没有二次采样。 H.264 视频可以支持具有专门配置文件的非子采样颜色,但大多数播放器仅支持 4:2:0 颜色子采样,因此您可能希望将其转换为 4:2:0。 JPEG 通常使用 4:2:0,因此如果您的输入是 JPEG,那么您通常不需要此选项。
关于带有 ffmpeg 的 svg 幻灯片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15118609/