merge - 我想加入两个 ffmpeg 命令来收集
问题描述
此命令用于将视频添加到视频:
ffmpeg -i 1.mp4 -i over.mp4 -filter_complex "[0:v]setpts=PTS-STARTPTS,scale=224x400[top];[1:v]setpts=PTS-STARTPTS,scale=100x44[bottom]; [top][bottom]overlay=x=115:y=346:eof_action=pass;[0]volume=0.7[a1];[1]volume=0.3[a2];[a1][a2]amix=inputs= 2[a]" -acodec aac -vcodec libx264 -map 0:v -map "[a]" out.mp4
此命令用于在视频中添加水印和用户名文本:
ffmpeg -i 1.mp4 -i watermark.png -filter_complex "overlay=main_w-overlay_w-5:main_h-overlay_h-15,drawtext=fontfile=/path/to/font.ttf:text='@Unknown': fontcolor=白色:fontsize=10:box=1:boxcolor=black@0.0:boxborderw=5:x=160:y=380" -codec:a copy output.mp4
如果我想一起执行这两个命令,那么我必须做什么或者如何将这两个命令合二为一?
解决方案
在叠加层之后添加水印和drawtext。
ffmpeg -i 1.mp4 -i over.mp4 -i watermark.png -filter_complex "[0:v]setpts=PTS-STARTPTS,scale=224x400[top];[1:v]setpts=PTS-STARTPTS,scale=100x44[bottom];[top][bottom]overlay=x=115:y=346:eof_action=pass[vid];[vid][2]overlay=main_w-overlay_w-5:main_h-overlay_h-15,drawtext=fontfile=/path/to/font.ttf:text=‘@Unknown': fontcolor=white: fontsize=10: box=1: boxcolor=black@0.0: boxborderw=5: x=160: y=380;[0]volume=0.7[a1];[1]volume=0.3[a2];[a1][a2]amix=inputs=2" -acodec aac -vcodec libx264 out.mp4
推荐阅读
- snowflake-cloud-data-platform - Snowflake:将暂存的 S3 URL 转换为表格的列
- c++ - 一个简单向量的奇怪索引问题
- javascript - 在 FlatList 中反应原生 onPress 按钮
- laravel - Laravel 观察者更新/更新
- javascript - 使用 JavaScript 从客户端上传压缩图像文件
- browserify - 使用 Browserify(或替代方案)创建可读的模块化 vanilla JS
- kotlin - Room + Kotlin Flow 没有发出结果
- powershell - 测试路径失败但不做其他事情
- c# - 在 azure devops 管道中构建 uwp windows store 10 应用程序时无法签名错误
- python - 将 NodeJS HTTP post 脚本转换为 Python