Ммм… Описание API v4l2: linuxtv.org/downloads/v4l-dvb-apis/
Чтобы не изучать всё подряд, можно запустить какой-нибудь видеостример под strace и посмотреть какие ioctl он вызывает.
Хорошая идея, а как потом это использовать. Я не силён в прямой работе с системными вызовами. И ещё одна подстава, у меня нет пакета starce под openwrt а из исходников он не собрался :( — прелести bleeding edge
может пустить motion под strace на другом компе. Посмотреть логи и сделать выводы. Но что потом?
А видео в итоге захватывается на openwrt? Если c помощью ffmpeg записать в файл и потом посмотреть?
Можно написать простую программу, которая открывает видео устройство и посылает данные по сети (лучше UDP). Правда не знаю на сколько это реализуемо на openwrt.
Вто вся и суть, чтобы OpenWRT ничего не знал про видео и таки образм не нагружать процессор.
Вся обработка потока должна быть на другом хосте в той же локалке.
Предположительно ей будет заниматься motion или рекомендованый выше mjpeg-streamer.
Просто возможна ситуация, что камера на самом деле не работает. Должны присутсвовать соответсвующие драйвера в ядре. Вот и говорю, что надо проверить как-нибудь.
Самописная программа на С в итоге будет занимать меньше всего процессорного времени.
Камера проверенно работает. Если запустить motion на роутере локально то можно спокойно смотреть поток через браузер. Однако нагрузка на проц запредельная.