Поддержка кодеков OpenCV2

Я читаю в видео файлах с openCV, я использую следующий простой код, чтобы сделать это.

std::string arg = argv[1];
VideoCapture capture(arg); //try to open string, this will attempt to open it as a video file
if (!capture.isOpened()) {
cerr << "Failed to open video file!\n" << endl;
help(argv);
system("Pause");
return 1;
}

Я могу загрузить и управлять несколькими видео, но у меня есть проблемы с другими. Я полагаю, что это связано с проблемами кодека. Я могу воспроизводить видео, используя Win Media Media старого стиля, так что кодеки в системе, но я думаю, не доступны в OpenCV?

Кто-нибудь знает, какие кодеки и видео формат определенно будут воспроизводиться на opencv и что является хорошим вариантом для конвертации видео в эти форматы?

Большое спасибо

0

Решение

Действительно, поддерживаемый кодек OpenCV зависит от вашей платформы и доступных кодеков.

Этот урок Создание видео с OpenCV объясняет видео кодек OpenCV четко. Хотя он предназначен для записи видео, я думаю, что основной принцип такой же, как и при чтении видео.

Функция C++: double VideoCapture::get(int propId) можно получить свойство кодека вашего загруженного видео, установив propId = CV_CAP_PROP_FOURCC, Интерпретация FOURCC может быть найдена на этом сайт. Если у вас есть проблемы с чтением видео .avi, весьма вероятно, что коды не установлены на вашей платформе.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector