gpt4 book ai didi

batch-file - Windows : unable to control output video length and problems with using wildcards 上的 MLT 融化幻灯片

转载 作者:行者123 更新时间:2023-12-04 23:33:34 25 4
gpt4 key购买 nike

我在批处理脚本中使用以下命令,希望最终以编程方式创建带有过渡的简单视频幻灯片:

melt 131.jpg 132.jpg 133.jpg ttl=75 -attach crop center=1 -filter luma cycle=75 duration=25 -transition mix -consumer avformat:out.mp4 frame_rate_num=30 frame_rate_den=1
该命令的大部分内容是对 this 的 Windows 的改编。 MLT 网站博客上的命令(缩放和转换图像的部分除外)。但是,由于某种原因,当我运行它时,输出视频文件长达 25 分钟!
我有两个主要问题:
一个。如何正确控制视频中每个图像的持续时间?我已经对更改参数进行了相当多的实验,并且对它们的含义有一个半体面的理解(我是 MLT 的新手,但我认为仅在 FFMPEG 中没有办法轻松地做这样的事情)。我发现通过任意数量的控制来减少持续时间的唯一方法是将输出帧速率提高到荒谬的数字(当然,这并不理想,因为它会浪费大量时间和精力,而且仍然不能真正解决问题)。
湾。如何使用通配符输入 Windows 文件夹中的所有 .jpg 文件?我尝试添加 *.jpg 但这不起作用,我不知道如何在批处理脚本中执行它(我尝试使用以下代码将文件名作为变量获取,但我无法使字符串连接正常工作,因为它只输出最终文件名)
set files=
for /r %%i in (*.jpg) do (
echo %%i
set files=%files% "%%i"
)
echo %files%
感谢您的任何建议!

最佳答案

当你指定一个 .jpg 文件时,melt 会在内部自动选择一个生产者。根据您的环境和版本,该生产者将是 qimage 或 pixbuf 生产者。
两个生产者都提供了一个“ttl”参数来指定图像序列的图像持续时间(以帧为单位)
https://mltframework.org/plugins/ProducerQimage/#ttl
https://mltframework.org/plugins/ProducerPixbuf/#ttl
在您链接的示例中,使用特殊语法创建图像序列:photos/.all.jpg ttl=75在您的示例中,您指定了一个特定的文件名。所以没有创建图像序列。相反,会为每个文件创建一个新的生产者。生产者的默认长度是 15000 帧。
https://github.com/mltframework/mlt/blob/master/src/framework/mlt_producer.c#L102
长度可以在命令行中指定。

melt 131.jpg length=100 132.jpg length=100 133.jpg length=100

关于batch-file - Windows : unable to control output video length and problems with using wildcards 上的 MLT 融化幻灯片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64733177/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com