Nreco ConvertMedia с настройками VB.Net - PullRequest
0 голосов
/ 12 сентября 2018

Здравствуйте, я пытаюсь заставить работать приведенный ниже код ... но я получаю сообщение об ошибке в строке conv.convertmedia. Значение типа 'String' не может быть преобразовано в '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)

Я пытался объявить inputpath как FFMpegInput (), но мне не удалось правильно использовать его с convertmedia.

редактировать: найдено решение

 Dim inputpaths As FFMpegInput() = {New FFMpegInput("video.mp4")}

    conv.ConvertMedia(inputpaths, "c:\temp\1.mkv", NReco.VideoConverter.Format.matroska, settings)

1 Ответ

0 голосов
/ 12 сентября 2018

Кажется, вы указали неверное количество ConvertMedia аргументов; и вам не нужно использовать перегрузку, которая ожидает массив FFMpegInput, если у вас есть только один входной файл. В исходном коде вы забыли указать 2-й параметр, который определяет формат ввода (он может быть нулевым, и в этом случае ffmpeg будет автоматически определять формат ввода):

conv.ConvertMedia(inputpath, null, "c:\temp\1.mkv", NReco.VideoConverter.Format.matroska, settings)
...