我正在尝试将介绍视频连接到主视频。这是我的命令:
// Select the track and the input element.
const video = document.getElementById('my_video_1');
const track = video.querySelector('track');
const stamp = document.getElementById('hidden-tstamp');
// Listen for the cuechange event.
// Check if there are active cues and use them as value.
track.addEventListener('cuechange', event => {
const currentCues = event.target.track.activeCues;
if (currentCues.length) {
stamp.value = currentCues[0].text;
} else {
stamp.value = '';
}
});
在cmd中运行此命令时,出现以下错误:
Scanner input = new Scanner(System.in);
int nSize;
System.out.println("Enter size of array to store data..:");
nSize = input.nextInt();
String[] names = new String[nSize]; // name array
int[] phone = new int[nSize]; //phone array
for (int i = 0; i < nSize; i++) {
System.out.println("Enter name..:");
names[i] = input.next();
System.out.println("Enter phone number..:");
phone[i] = input.nextInt()`enter code here`;
}
我不是视频忍者。我知道参数是不同的,但是经过数小时的搜索后我不知道如何解决这个问题。很多在线视频服务将这两个视频连接在一起,并给我一个合理的结果。他们虽然有一个GUI。我需要用代码来完成它,以便我可以使其自动化。
如何解决这些错误?
更新:这是第二个错误:
ffmpeg -i C:\Temp\intro.mp4 -i C:\Temp\main.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]" C:\Temp\output.mp4
答案 0 :(得分:2)
concat过滤器抱怨两个视频之间的分辨率不匹配。将其中一个调整为另一个的大小。
下面,我将介绍视频重新缩放并填充到主视频的大小。
ffmpeg -i C:\Temp\intro.mp4 -i C:\Temp\main.mp4 -filter_complex "[0:v:0]scale=640:640:force_original_aspect_ratio=decrease,pad=640:640:-1:-1,setsar=1[v0];[v0][0:a:0][1:v:0][1:a:0]concat=n=2:v=1:a=1[outv][outa]" -map "[outv]" -map "[outa]" -vsync vfr C:\Temp\output.mp4
由于concat过滤器的最新变化,建议在连接具有不同帧频的剪辑时使用-vsync vfr
。