gpt4 book ai didi

c# - 使用 FFMPEG 将启动画面添加到视频的开头

转载 作者:行者123 更新时间:2023-12-04 22:58:16 26 4
gpt4 key购买 nike

我正在努力添加闪屏。这就是我正在做的事情:

  • 将静止图像转换为带有静音音频流的“ts”文件
  • ffmpeg -loop 1 -i image.png -c:v libx264 -t 10 -c:a libvo_aacenc -b:a 160k -bsf:v h264_mp4toannexb -f mpegts -crf 32 image.ts
  • 现在,将原始视频也转换为“ts”文件
  • ffmpeg -i video.mp4 -c:v libx264 -c:a aac -b:a 160k -bsf:v h264_mp4toannexb -f mpegts -crf 32 video.ts
  • 现在,合并 2 个“ts”文件
  • ffmpeg -i "concat:image.ts|video.ts" -c:v libx264 -c:a aac -b:a 160k -bsf:v -y output.mp4问题:
  • 输出文件生成得很好,但音频完全丢失。第 3 步中生成的“output.mp4”视频实际上有一个音轨,但闪屏视频有静音音频。
  • 我也无法添加过渡。我对此进行了很多研究,但无法添加它,请帮忙。

  • 我真的很感激你的想法!谢谢

    最佳答案

    使用 concat 协议(protocol)或 demuxer 时,所有文件必须包含相应的流。在这种情况下,您的启动文件没有音频。让我们添加一个。ffmpeg -loop 1 -i image.png -f lavfi -i anullsrc -t 10 -pix_fmt yuv420p -c:v libx264 -crf 32 -ac 2 -ar 48000 -c:a aac -b:a 160k -f mpegts image.tsffmpeg -i video.mp4 -pix_fmt yuv420p -c:v libx264 -crf 32 -ac 2 -ar 48000 -c:a aac -b:a 160k -f mpegts video.tsffmpeg -i "concat:image.ts|video.ts" -c copy output.mp4(如果 libvo_aacenc 为您工作,那么您的 ffmpeg 太旧了。几年前已删除对它的支持。升级到 v4.3)

    如果您希望启动图像淡出,请更改为ffmpeg -loop 1 -i image.png -f lavfi -i anullsrc -t 10 -vf "fade=out:st=9:d=1" -c:v libx264 -pix_fmt yuv420p -crf 32 -ac 2 -ar 48000 -c:a aac -b:a 160k -f mpegts image.ts这将在 9 到 10 秒的时间范围内淡出启动图像。
    (注:我添加了 pix_fmt 选项以确保输出广泛兼容)

    关于c# - 使用 FFMPEG 将启动画面添加到视频的开头,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63481882/

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