您好,我正在尝试使以下代码工作...但是我在conv.convertmedia行遇到错误,无法将类型为“字符串”的值转换为“ FFMpegInput()”
Dim conv = New NReco.VideoConverter.FFMpegConverter()
AddHandler conv.ConvertProgress, AddressOf converter_progress
Dim settings As New OutputSettings
settings.SetVideoFrameSize(320, 320)
settings.VideoCodec = "h264"
Dim inputpath = TextBox1.Text
conv.ConvertMedia(inputpath, "c:\temp\1.mkv", NReco.VideoConverter.Format.matroska, settings)
我试图将输入路径声明为FFMpegInput(),但是我无法与convertmedia正确使用它。
编辑:找到了解决方法
Dim inputpaths As FFMpegInput() = {New FFMpegInput("video.mp4")}
conv.ConvertMedia(inputpaths, "c:\temp\1.mkv", NReco.VideoConverter.Format.matroska, settings)
答案 0 :(得分:0)
似乎您指定了错误数量的ConvertMedia参数;如果您只有一个输入文件,则不需要使用期望FFMpegInput
数组的重载。在您的原始代码中,您忘记指定第二个参数来确定输入格式(可以为null,在这种情况下ffmpeg将自动检测输入格式):
conv.ConvertMedia(inputpath, null, "c:\temp\1.mkv", NReco.VideoConverter.Format.matroska, settings)