gpt4 book ai didi

video - 从单个帧 (PNG) 制作视频并添加音轨

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

我一直在研究一种视频处理工具,它从输入视频中获取每一帧并将结果保存为一系列图像。所以,从本质上讲,如果我的视频长度为 5 分钟,帧率为 25 fps,我将获得 7500 个单独的帧。
然后我想要将其重新转换为视频格式,但同时还要添加原始来源的音轨。 ffmpeg可以做到这一点吗?此外,是否可以自动确定原始视频源上的 fps,然后将其用作新视频文件中视频 + 音轨的 ffmpeg 的 fps 值?

最佳答案

第 1 步:根据源文件:source.mp4 创建 PNG

ffmpeg -i source.mp4 img_%06d.png
该命令基于输入文件创建 PNG 文件。 %06 用 6 位数字格式化数字(例如 %06d => 000099 而不是 99)。
第 2 步:构建一个包含所有图像的文本文件(用作第 3 步中的输入)。
for f in ./img_*.png; do echo "file '$f'" >> mylist.txt; done
欲了解更多详情,请查看 concatenate page on FFmpeg wiki
第 3 步:编码视频(带图像)并添加音频:
ffmpeg -f concat -r 25 -safe 0 -i mylist.txt -i source.mp4 -c:v libx264 -map 0:v -map 1:a output.mp4
  • -f concat合并下一个输入文件内容
  • -r 25为 25fps
  • -safe 0允许文本文件中的相对路径
  • -i source.mp4添加原始文件(用于音频)
  • -c:v libx264创建一个新的 h264 视频
  • -map 0:v -map 1:a使用第一个输入的视频(我们连接的视频)和第二个输入文件的音频(原始视频的音频)

  • 还可以检测源视频的FPS: get video fps using FFProbe

    关于video - 从单个帧 (PNG) 制作视频并添加音轨,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65072958/

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