如何解决使用FFMPEG将启动画面添加到视频开始
我正在把头撞在墙上,试图添加一个启动画面。这是我在做什么:
- 使用静音音频流将静止图像转换为“ ts”文件
select all Pakages which have a length >= the user input OR which contain a Pole which has a length the user input
- 现在,拍摄原始视频并将其也转换为“ 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
- 现在,合并2个“ ts”文件
ffmpeg -i video.mp4 -c:v libx264 -c:a aac -b:a 160k -bsf:v h264_mp4toannexb -f mpegts -crf 32 video.ts
问题:
-
生成的输出文件很好,但是音频完全丢失。在第3步中生成的“ output.mp4”视频实际上具有音轨,但初始屏幕视频已使音频静音。
-
我也无法添加过渡。我对此进行了很多研究,但无法添加,请提供帮助。
非常感谢您的想法!谢谢
解决方法
使用concat协议或多路分配器时,所有文件必须包含相应的流。在这种情况下,您的启动文件没有音频。让我们添加一个。
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.ts
ffmpeg -i video.mp4 -pix_fmt yuv420p -c:v libx264 -crf 32 -ac 2 -ar 48000 -c:a aac -b:a 160k -f mpegts video.ts
ffmpeg -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选项以确保输出具有广泛的兼容性)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。