Невозможно создать захват из файла в Emgucv

if (_capture == null)
        {
            try
            {
                _capture = new Capture("video1.mpg");
            }
            catch (NullReferenceException ex)
            {   //show errors if there is any
                MessageBox.Show(ex.Message);
            }
        }

Файл video1.mpg находится в папке bin. Я конвертировал AVI файл в формат MPEG-1 с любым видео конвертером. Но все же этот формат не работает. Я попробовал Mencoder также. но все та же ошибка.

Unable to create capture from video1.mpg

как сделать его совместимым с эмгу Capture?

2 ответа

Решение

Конвертируйте видео в формат i420.

Загрузите этот конвертер.

Команда для выполнения преобразования:

mencoder inputVideo.avi -ovc raw -vf format=i420 -o convertedVideo.avi

Этот преобразованный Video.avi может быть захвачен сейчас.

Сначала вам нужно конвертировать ваш файл Vedio в формат.avi. И использовать какой-то другой инструмент для конвертации необходимого файла vedio. может быть вероятность того, что инструмент, который вы используете прямо сейчас, является демо-версией, поэтому он может не скрыть его должным образом... и затем попробовать следующий код:

   string nameOfFile = @"D:\somefile.avi";// your vedio path
Capture _capture = new Capture(name);
      try
        {
            _capture = new Capture(nameOfFile);
        }
        catch (NullReferenceException ex)
        {   //show errors if there is any
            MessageBox.Show(ex.Message);
        }
Другие вопросы по тегам