Есть задача записывать видео с камеры и on-line, при записи, накладывать на видео
картинку (картинка меняется во времени).
Видео размером не меньше 720х480, а лучше в hd.
Я вижу это примерно так:
— мини комп. Устройство будет стоять в автомобиле, поэтому размер имеет значение но не сильно критичен. Насколько я смог нагуглить, есть варианты небольших, почти «карманных» системников на via процессорах и на arm-ах.
— подключенная к нему камера которая пишет видео, на него накладываются нужные данные (скорость ввиде спидометра, обороты ввиде тахометра, положение дросселя и т.д.) и сохраняется на SD карту.
Есть ли в linux средства, для наложения картинки на видео «on-line», при записи? Нужны естественно консольные инструменты.
Есть ли HD камеры, которые можно к компьютеру подключить?
Может имеет смысл вместо PC попробовать найти некую платформу с андроидом?
PS: я не прошу конкретного решения, интересуют направления, куда поискать и какими средствами вы бы решали эту задачу.
mencoder умеет только что-то совсем простое, типа надписи. Если надо сложнее, то mencoder-ом можно разложить видео на картинки, наложить на каждую из картинок свое изображение каким-нибудь скриптом и потом собрать из картинок видео опять же mencoder. Я сейчас собственно так и делаю. Но это «off-line» решение, которое требует времени. Я хочу сделать «on-line», чтобы на момент окончания записи видео уже был готовый результат.
нет, менкодер ещё картинку накладывает, я этим занимался как-то. но по-моему только статическую. как насчёт выведения видео с камеры на экран, наложения надписей и картинок с камеры поверх прозрачным окном и непрерывным дампом писалкой экрана?
Я думаю вполне, если смогут HD картинку выдавать. Я думал, может есть решения из область видеонаблюдения? Мне кажется там качество картинки должно быть получше.
думаю, что будут проблемы с тем чтобы подцепить к такой barebone-системе.
а вот веб-камеры вполне, есть и hd, и fullhd + поддержка линуха, и в пределах 2-3к.
но, действительно, не знаю как будет качество картинки, всё же вебка, цель которой в полуметре-метре. Я бы советовал взять и провести тест-драйв.
Можно еще ffmpeg для этого использовать, например, вот так:
ffmpeg -i вход_видео -vf «movie=картинка [logo]; [in][logo] overlay=10:10 [out]» выход_видео
Если я правильно понимаю, то это для наложения статичной картинки, вроде логотипа на видео. В моем случае, картинка генерируется для каждого кадра своя.
Этот способ не требует разложения видео на кадры.
Однако, у вас могут быть проблемы с наложением картинки: если программа, формирующая ее, обновляет изображение, просто перезаписывая файл, то в результирующем видео показатели меняться не будут (т.к. удаленный файл, первоначально открытый ffmpeg'ом, будет продолжать накладываться на видео, невзирая на обновленный inode для файла с картинкой).
С помощью библиотеки OpenCV можно быстро сделать. Особенно если в последствие будет более сложная задача, чем наложение картинки.
Есть HD веб камеры от Microsoft, даже против солнца неплохо снимают. Или на сетевые посмотрите.