История изменений
Исправление fopen, (текущая версия) :
libavdevice используется через тот же avformat_open_input, как и при работе с файлами. Примеры ищи по словам «av_find_input_format (video4linux2 | vfwcap)».
f = av_find_input_format("video4linux2");
av_dict_set(&opts, "video_size", "640x480", 0);
av_dict_set(&opts, "pixel_format", "rgb", 0);
av_open_input_file(&ctx, "/dev/video0", f, &opts);
Дальше, если камера отдает в другом формате, decode и scale, как обычно.
ffmpeg не все параметры v4l2 настраивает, например, яркость и контрастность. Их через v4l2 придется устанавливать. Или допилить ffmpeg, что даже проще.
Исходная версия fopen, :
libavdevice используется через тот же avformat_open_input, как и при работе с файлами. Примеры ищи по словам «av_find_input_format (video4linux2 | vfwcap)».
f = av_find_input_format("video4linux2");
av_dict_set(&opts, "video_size", "640x480", 0);
av_dict_set(&opts, "pixel_format", "rgb", 0);
av_open_input_file(&ctx, "/dev/video0", f, 0, &opts);
Дальше, если камера отдает в другом формате, decode и scale, как обычно.
ffmpeg не все параметры v4l2 настраивает, например, яркость и контрастность. Их через v4l2 придется устанавливать. Или допилить ffmpeg, что даже проще.