MLT(媒体爱好工具包)照片幻灯片视频

MLT (Media Lovin' Toolkit) Photo Slide Video

我在一系列图像上从命令行使用 MLT。当我 运行:

melt 0.jpg 1.jpg 2.jpg 3.jpg

生成每张照片占一帧的视频(4帧长视频)。我希望每张照片占据 100 帧。我已经尝试了我能想到的所有属性组合,例如:

melt 0.jpg out=100 1.jpg in=100 out=200 2.jpg in=200 out=300 等等

但结果并不如预期。我也试过组织成曲目,并从 XML 文件中融合。充其量,我已经能够让照片显示在第一个预期的帧上,然后是 99 个空白帧。

延长照片可见长度的最佳做法是什么?举个简单的例子,我想要一个包含 10 张照片的轨道,其中每张照片被组织成后续的 100 帧。最终,我将合并视频和照片。

处理视频时,我没有遇到任何问题,我的理解是 inout 属性是为视频设计的,但我无法找到任何如何延长图像制作者可见长度的示例。

感谢您的任何想法或提示!我真的很高兴能学习这个很棒的工具。

您正在寻找的魔法是"ttl"。将 ttl 参数设置为您希望图像持续的帧数。

melt .all.jpg ttl=100

这里有一些很好的例子:

https://github.com/mltframework/mlt/blob/master/demo/mlt_slideshow

https://github.com/mltframework/mlt/blob/master/demo/mlt_slideshow2

https://github.com/mltframework/mlt/blob/master/demo/mlt_slideshow_black

这里还有一个有趣的博客 post:

http://mltframework.blogspot.com/2010/08/making-nice-slideshows.html

更新:

“*.jpg”语法对我不起作用。我很确定你必须使用“.all.jpg”。看来您的安装可能遇到了一些问题。这里有一些尝试...

MLT 有几个可以处理图像的模块。如果您不指定模块,MLT 会为您选择一个。尝试明确指定两个模块,看看一个是否比另一个更好:

melt pixbuf:.all.jpg ttl=100

和:

melt qimage:.all.jpg ttl=100

此外,也许可以尝试添加引号?

melt pixbuf:".all.jpg" ttl=100

以上所有对我有用。

如果以上所有方法都失败,请尝试列出所有生产者并检查 pixbuf 和 qimage:

melt -query producers

我正在使用 Ubuntu,所以如果这是 OSX 的特定问题,我不会提供太多帮助。但我可以告诉你,MLT 绝对需要针对 qt 或 gtk 进行编译,以获得你正在寻找的图像行为。

这对你有用吗?

melt \
0.jpg length=100 \
1.jpg length=100 \
2.jpg length=100

如果您寻求更多控制(如果您希望一张图像持续 200 帧,另一张图像持续 50 帧),此方法可能会更好。

但是,如果这无关紧要,假设您的所有图像都以 .jpg 结尾,Brian 的方法会更方便。

当您使用 in=200 out=300 时,也就是说图像从第 200 帧开始,到第 300 帧结束。

因为它是一张图片,所以没有必要从第 200 帧开始。如果它是一段视频,那么您将跳过前 199 帧,它会在第 300 帧结束。希望你明白了!