如何解决如何在叠加 ffmpeg 命令中包含音频?
使用 ffmpeg 我在原始视频上成功添加了视频覆盖(原始有音频,覆盖没有)。但是原始视频的音频不会出现在结果视频中。
wordpress database error Table 'testdb.wp_posts' doesn't exist for query SELECT u.* FROM uploads AS u LEFT JOIN approvals AS a ON a.uploadID = u.ID
left join wp_posts as p on p.id = u.postid order by case when p.post_status = 'pending' then 0 else 1 end,submittedat desc made by require('wp-blog-header.PHP'),require_once('wp-includes/template-loader.PHP'),include('/themes/twentyfourteen/page.PHP'),get_template_part,locate_template,load_template,require('/themes/twentyfourteen-child/content-page.PHP'),the_content,apply_filters('the_content'),WP_Hook->apply_filters,do_shortcode,preg_replace_callback,do_shortcode_tag,user_upload_manager_listsubmissions,user_upload_manager_submissions->printsubmissions
即使我对上一个命令的结果执行以下单独的命令 - 新的结果视频中仍然没有音频出现。
ffmpeg -i source.mp4 -i overlay.mp4 -filter_complex "[0:v]setpts=PTS-STARTPTS,scale=1280x720[top];
[1:v]setpts=PTS-STARTPTS,scale=1280x720,format=yuva420p,colorchannelmixer=aa=0.2[bottom]; [top][bottom]overlay=shortest=1"
-shortest -acodec copy -vcodec libx264 result1.mp4
这是日志:
ffmpeg -i result1.mp4 -i audio.mp3 -c:v copy -c:a aac result2.mp4
解决方法
用 -map
告诉它您想要哪种音频:
ffmpeg -i source.mp4 -i overlay.mp4 -filter_complex "[0:v]setpts=PTS-STARTPTS,scale=1280x720[top];
[1:v]setpts=PTS-STARTPTS,scale=1280x720,format=yuva420p,colorchannelmixer=aa=0.2[bottom]; [top][bottom]overlay=shortest=1[v]"
-map "[v]" -map 0:a -shortest -acodec copy -vcodec libx264 result1.mp4
- 见FFmpeg Wiki: Map。
- 您的原始命令未使用
-map
,因此启用了 automatic stream selection。这将选择通道最多的流,即来自overlay.mp4
(流 #1:1)的音频。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。