连接错误:无法使用.NET(C#)的NReco视频转换器连接媒体
本文关键字:连接 NReco 视频 媒体 转换器 NET 错误 | 更新日期: 2023-09-27 18:20:32
我想使用.NET(C#)FFMpeg包装器的视频转换器将两个视频连接成一个但我有"无法连接媒体"的异常。。我是不是错过了什么。。这是我的源代码:
var ffMpeg = new NReco.VideoConverter.FFMpegConverter();
NReco.VideoConverter.ConcatSettings set = new NReco.VideoConverter.ConcatSettings();
string videoRootPath = @"E:'Sam'Recording Feature'WebApplication2'WebApplication2'Video'";
string tobename = "test";
string[] _fileNames = { @"E:'Sam'Recording Feature'WebApplication2'WebApplication2'Video'1.mov",
@"E:'Sam'Recording Feature'WebApplication2'WebApplication2'Video'2.mov"};
ffMpeg.ConcatMedia(_fileNames, videoRootPath + tobename + ".mov", NReco.VideoConverter.Format.mov, set);
请帮助
文件无法合并为一个结果文件的最常见原因是帧大小和/或帧速率不同(所有输入文件都应该具有相同的帧大小和帧速率)。
另外请注意,ContactMedia仅使用以下参数调用FFMpeg:
ffmpeg.exe -i [file1] -i [file2] -i [file3] -filter_complex "concat=n=3:v=1:a=1 [v] [a]" -map "[v]" -map "[a]" [outputFile]
您可以从文件的命令行运行它,然后查看问题所在。请注意,如果您想使用另一种方法来合并视频文件(FFMpeg支持多种方法),您可以使用FFMpegConverter类的Invoke或ConvertMedia方法。
你用过剪接器吗?下面是供参考的链接。https://splicer.codeplex.com/discussions/66271
string video1 = @"D:'Video'vid1.mp4";
string video2 = @"D:'Video'vid2.mp4";
string newvid = @"D:'Video'finalvid.mp4";
var ffMpeg = new FFMpegConverter();
ConcatSettings set = new ConcatSettings();
ffMpeg.ConcatMedia(new string[] { video1,video2 }, newvid, Format.mp4, set);