gpt4 book ai didi

bash - FFmpeg 如何使用 bash 生成视频序列

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

我尝试编写一个读取文件夹的 .sh 创建一个 mp4 文件的播放列表,然后生成一个唯一的大视频,其中包含在文件夹中找到的所有视频序列,并将其编码为破折号:

printf "file '%s'\n" ./*.mp4 > playlist.sh
ffmpeg -f concat -safe 0 -i playlist.sh -c copy concat.mp4

直到现在我按照 demux concat 官方 guido 访问 ffmpeg 网站。
没有结果,以下内容也给了我“序列视频之间重复的超过 1000 帧”
ffmpeg -f concat -i playlist.sh -c:a aac -b:a 384k -ar 48000 -ac 2 -c:v libx264 -x264opts 'keyint=50:min-keyint=50:no-scenecut' -r 25 -b:v 2400k -maxrate 2400k -bufsize 1200k -vf "scale=-1:432 " out.mp4

非常感谢

最佳答案

对不起,不能评论(还)...

您的命令是正确的,我可以连接一些示例视频。
您是否总是收到上述错误或其他错误?视频是否正常工作,或者没有创建视频?
在大多数情况下,输入视频不正确。错误的输入格式(不适合文件扩展名)或更糟糕的是以错误的帧结尾。
也许您可以提供视频?

PS:需加-safe 0到第二个命令以避免错误 [concat @ 0x7fbfd1000000] Unsafe file name './small.mp4'
提示:不要使用文件扩展名 .sh为您的视频文件列表。此扩展用于 shell 脚本,因此可能会造成混淆。只需使用 .txt .

更新@Massimo Vantaggio

我们不应该创造新的答案,但我不能评论你的答案,我也不知道如何继续我们的讨论,所以我编辑了我的答案。

您的视频看起来并没有太大的不同。看不出来,第一个有什么问题。

也许你可以使用 ffprobe -report input.mp4获取更多信息。查找错误或警告。

我的假设仍然是视频被硬切(通过转换软件),所以关键帧被弄乱了或其他什么。

您也可以尝试先使用 ffmpeg 重新编码您的视频。之后,它应该与 ffmpeg 完全兼容;)

像这样的东西:

ffmpeg -i small.mp4 -acodec aac -ab 192k -vcodec libx264 -vb 1024k -f mp4 output.mp4

使用 -ab-vb来自您的输入视频,或者至少来自输入的比特率。质量会降低一点,文件大小会增加,但应该没问题。

关于bash - FFmpeg 如何使用 bash 生成视频序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48428756/

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