合并 2 个编辑视频而不使用 ffmpeg 保存它们

2022-01-12 00:00:00 python ffmpeg pyqt pyqt5 video-editing

问题描述

我想合并 2 个视频,假设它们之间是相互编辑的

I want to combine 2 videos assume even they are edited among themselves

我们平时是怎么做的

视频 1:

ffmpeg -i 1.mp4 -filter:a "volume=0.0" test1.mp4

视频 2:

ffmpeg -i 2.mp4 -filter:a "volume=10.0" test2.mp4  

现在我可以将它们组合使用

now I can combine them using

ffmpeg -i test1.mp4 -i test2.mp4 -filter_complex [0:v:0][0:a:0][1:v:0][1:a:0]concat=n=2:v=1:a=1[outv][outa] -map [outv] -map [outa] out.put.mp4

所以我的问题是,有没有办法将这 3 步流程变成 1 步,并且不保存第 1 步和第 2 步的文件

So my question is, Is there a way to make this 3 steps process into 1 step and without saving files of step 1 and step 2

我知道我们可以使用 &&但我的主要查询是有一种方法可以不保存编辑文件的 video1 和 video2 文件

I do know that we can combine into one using && but my main query is there a way to do without saving the files of video1 and video2 that edited files

希望我的查询有点清楚

问题已编辑/添加:

ffmpeg -i test.mp4 -filter:a "volume=8.0,atempo=4.0" -vf "transpose=2,transpose=2,setpts=1/4*PTS" -s 640x480 test.mkv 

我们能否在合并命令中也执行所有这些选项(更改视频速度、分辨率、旋转、帧率和修剪等操作)?

can we do all these options also in the merge command(operations like change video Speed, resolution, rotation, framerate, and trim)?


解决方案

在将音频流馈送到 concat 之前应用音量过滤器.

Apply the volume filters before feeding the audio streams to concat.

ffmpeg -i test1.mp4 -i test2.mp4 -filter_complex "[0:a:0]volume=0.0[a0];[1:a:0]volume=10.0[a1];[0:v:0][a0][1:v:0][a1]concat=n=2:v=1:a=1[outv][outa]"-map [outv] -map [outa] output.mp4

相关文章