PCCar.ru - Ваш автомобильный компьютер

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   Софт для видеозахвата (http://pccar.ru/forumdisplay.php?f=102)
-   -   CarDVR - программа для видеорегистрации (http://pccar.ru/showthread.php?t=12867)

dues 23.08.2010 11:01

CarDVR - программа для видеорегистрации
 
Вложений: 4
Написал несложную программулину для записи видео с веб-камеры.

Возможности:
- скорость и координаты GPS на видео
- выбор кодека для сжатия (Video For Windows)
- выбор веб-камеры, разрешения записываемого видео, количества кадров в секунду для записи
- запись по циклу (выбор количества файлов + продолжительность одного файла)
- автозапуск в Windows + автостарт записи видео
- полно-оконное отображение видео

Планы:
- контроль записи. нужно уметь сигнализировать, если регистратор по каким-то причинам не пишет видео
- возможность скинуть в отдельную папку (флешку) последнюю поездку
- добавить еще одну камеру
- снятие отдельных кадров в отдельные файлы JPEG

Использую софтинку каждый день в своем CarPC.

Благодарности автору при желании могут быть отправлены на кошелек Яндекс.Деньги: 41001198065425

Исходники CarDVR
Библиотека для работы с видео: AForge Framework

Опыт форумчанина ciclop

Версия 1.9
+ Резервное копирование в выбранную папку, нажатием на кнопку
+ Отображение текущего рабочего состояния программы

Версия 1.8.6
+ Простой автосайз шрифта в зависимости от разрешения
* Исправлен баг с поворотом видео

Версия 1.8.5
+ Скрытие курсора мыши
- Отладочные FPS с главной формы

Версия 1.8.3
+ Сжатие делается в отдельном потоке, который занимается только сжатием
- Убрал FPS и счетчик кадров.

Версия 1.8.2
+ Текст на видео краснеет от напряжения, когда процессор не успевает жать видеопоток
+ Опция, отключающая отображение на форме, когда форма не активна

Версия 1.8
+ Выбор кодека
+ Выбор цвета для элементов интерфейса
+ Полно-оконное отображение видео
+ Локализация интерфейса
+ Ожидание сохранения текущего видео при закрытии программы
+ Настройка веб-камеры

Версия 1.7
+ Побеждена проблема с "убеганием" видео
+ Отображение текущего FPS, а так же общего счетчика кадров
(*) Правка багов

Версия 1.3
+ Поворот видео на 90, 180, 270 градусов
(*) Правка багов
(!) Кодек по прежнему XVID

Версия 1.2
+ Исправлена частота кадров источника видео и записываемого файла
+ Закрытие видеофайла после остановки записи



Прикрепил программу GSPOT - она при запуске детектит все установленные кодеки и регистрирует их в системе, если они зарегистрированы криво. Рекомендуется возпользоваться ей если кодеки пропали из списка.

Fasterpast 23.08.2010 11:17

Спасибо, попробую! Ибо CamGrabber вешает мой комп наглухо раз в 2 часа...

dues 23.08.2010 12:14

Именно из-за этого я и озадачился своей софтинкой. Камграббер вис наглухо через несколько минут, а "video4карпц" сразу сказала "давай деньги" :)

danclax 23.08.2010 12:19

Класс... На чем написана?
Подписываюсь на тему, обязательно заюзаю в будущем!

dues 23.08.2010 12:42

Написано на C#, скомпилена под .Net Framework 2.0
Для работы с видео использована библиотека AForge Framework.
Добавил в шапку ссылки на исходники и на библиотеку

C4ncer 23.08.2010 12:57

Я после перебора всех программ для видеорегистрации пока остановился на VideoRegistrator. (http://videoreg.ho.ua)
Надо и ваше творение затестить.

Serg_w 23.08.2010 18:03

Попробовал программу на домашнем компе - Pentium 4, 2,8, память 2,5 Гига. Камера Microsoft LifeCam HD-6000.
Весьма удобно, но загрузка ЦП 83-91% без других задач - разрешение поставил 640х480х15. Видео в окне просмотра программы отстает секунды на 2-3 от реальности.
При нажатии кнопки Stop, файл не закрывается, а закрывается только при закрытии самой программы.
Минута записи получается 10 Мб. Наверное из-за того что кадров всего 15 - изображение получается дерганным.
Почему то программы записала первый файл всего 2,48 минуты, хотя в настройках стоит 10 мин.

AlexanSNZ 23.08.2010 19:52

Попробовал сегодня софтинку. Камера определилась, но при каждом запуске появляется ошибка:
http://s006.radikal.ru/i215/1008/c2/d195599a530f.jpg

И на всех разрешениях одно и тоже. Программы 4-Video CarPC и VideoRegistrator работают без проблем.
В чем может быть проблема?
ОС: Win 7 англ. Камера: Logitech QuickCam Pro for Notebooks
Спасибо.

dues 23.08.2010 21:29

Извиняюсь, забыл частоту кадров выставлять в зависимости от выбранного :)
Сейчас выставляется всегда 25 кадров в секунду. Поэтому скорее всего у AlexanSNZ и не открывается видео-поток.

Serg_w
Почему первый файл получился маленьким - не понятно. То что он не закрывается до конца - поправим.

Объясню как происходит переключение записи из одного вайла в другой. За 10 секунд до предполагаемого окончания записи в файл (например, когда он примерно 9м50с из выбранных в настройках), создается новый файл .avi в новом потоке программы.
Когда файл до конца записывается, происходит быстрое переключение потоков записи - в основном потоке пишется новый файл, а записанный файл "закрывается" в другом потоке.

Так что не удивляйтесь появлению нового файла раньше чем дописался текущий.

Тогда пока особо не юзайте - выложу версию 1.2 - тогда уж...

dues 24.08.2010 00:48

Обновил программу, подправил найденные косячки.

Опробовал кодирование в MJPEG. На днях сделаю

lti1 24.08.2010 01:34

Что то у меня записывает с двойной скоростью. То есть запись длилась примерно минуту, а в плеере показывает 27 сек. Правда иногда записывает нормально, закономерности не заметил.

Fasterpast 24.08.2010 10:31

Может что-то с деинтерлейсингом?

У меня на обычном компе пока неплохо пашет.. При 640х480 загрузка C2D 2.3GGz, если дать ей одно ядро - 34%, пробовал писать 960х720х15, загрузка 50% на 2 ядра, но чёткость просто офигительная по сравнению с 640. Жаль, что атом скорее всего, такое не потянет. Камера даёт выбрать еще 1600х1200х5, но в таком не пишет вообще.

dues 24.08.2010 12:05

У меня на домашнем ноуте пишет в 640*480*30, загрузка проца 70% c XVID.
Вчера заюзал MJPEG кодек, загрузка упала в 2 раза :)

В машине Core i3-530, картинка 800*600*30, загрузка с XVID 35% примерно.
Вот она сила современных процев :)

Интересно сколько будет жрать кодировка в MJPEG.

Вообщем, надо экспериментировать.

AlexanSNZ 24.08.2010 14:03

Цитата:

Сообщение от dues (Сообщение 152209)
Обновил программу, подправил найденные косячки.

Версия 1,2 выдает туже ошибку.
Толи я дурак, толи лыжи...:wacko2:

dues 24.08.2010 16:16

Цитата:

Сообщение от AlexanSNZ (Сообщение 152259)
Версия 1,2 выдает туже ошибку.
Толи я дурак, толи лыжи...:wacko2:

Нужно попробовать пересохранить настройки

Fasterpast 25.08.2010 18:40

Сегодня попробовал "в деле". Пока нравится..
Пожелание: добавить опции "перевернуть видео" по горизонтали и вертикали :)

zesar2000 25.08.2010 23:10

Цитата:

Сообщение от AlexanSNZ (Сообщение 152259)
Версия 1,2 выдает туже ошибку.
Толи я дурак, толи лыжи...:wacko2:

То же самое и у меня...
карта захвата на чипе Conexant bt848. Сама простая.
Драйвер: Conexant's BtPCI WDM Video Capture

Fasterpast 25.08.2010 23:23

Вот такое у меня получается качество... К вопросу о читаемости номеров.
http://s60.radikal.ru/i170/1008/4b/145366ee4fbd.jpg
Разрешение стоит 1280х1024х15, при этом 1-ядерный атом ТЯНЕТ запись.
Напомню, что камера - вебка от ееерс, чудес от неё ждать не стОит... Буду менять потом.

lti1 26.08.2010 01:21

Цитата:

Сообщение от Fasterpast (Сообщение 152227)
Может что-то с деинтерлейсингом?

Можно поподробнее.

Fasterpast 26.08.2010 10:28

Цитата:

Сообщение от lti1 (Сообщение 152450)
Можно поподробнее.

Какое устройство захвата?

lti1 26.08.2010 10:50

Цитата:

Сообщение от Fasterpast (Сообщение 152490)
Какое устройство захвата?

Веб камера ноутбука, USB 2.0 1.3M UVC WebCam.

Fasterpast 26.08.2010 11:26

Хм, тогда вряд ли деинтерлейсинг...
А конфигурация компа какая? Мож у него производительности не хватает, и он пропускает кадры, а в итоге видео получается ускоренным... Ну и разрешение выбираете с нормальной частотой кадров?

dues 26.08.2010 13:07

Не важно какое разрешение и частоту выбираете в списке, оно должно воспроизводиться 1 в 1 по времени, без ускорений и замедлений. Единственное, что может быть - это то, что вы выбрали разрешение с 30 кадрами в секунду (avi файл настраивается на 30 кадров в секунду), а комп не справляется с записью и пожатием этих 30 кадров, поэтому в avi попадает только 15, например, кадров. В этом случае видео будет воспроизводиться в 2 раза быстрее. Можно будет добавить настройку в программу для ограничения записи по количеству кадров.

Я добавил поворот изображения, а так же изменил кодек XVID на fddshow, таким образом вы сможете сами в настройках fddshow устанавливать любой кодек какой хотите, хоть MJPEG..

Эту версию я сам погоняю, затем выложу. Пока выложена старая.

dues 26.08.2010 13:20

Цитата:

Сообщение от zesar2000 (Сообщение 152438)
То же самое и у меня...
карта захвата на чипе Conexant bt848. Сама простая.
Драйвер: Conexant's BtPCI WDM Video Capture

Программа сейчас не очень правильное сообщение выводит :)
На самом деле проблема не в открытии источника видео, а в том, что не получается создать AVI файл.

Проверьте наличие папки, которую вы указали для видеофайлов, а так же прав на запись в нее.
В новой версии я сделал нормальную диагностику.

AlexanSNZ 26.08.2010 14:47

dues, когда будем тестить версию 1,3? :)

dues 26.08.2010 14:55

Цитата:

Сообщение от AlexanSNZ (Сообщение 152533)
dues, когда будем тестить версию 1,3? :)

Если успею, вечером выложу. У тебя должна заработать 1.2, проверь папку для авишек :)

lti1 26.08.2010 15:37

Цитата:

Сообщение от Fasterpast (Сообщение 152501)
Хм, тогда вряд ли деинтерлейсинг...
А конфигурация компа какая? Мож у него производительности не хватает, и он пропускает кадры, а в итоге видео получается ускоренным... Ну и разрешение выбираете с нормальной частотой кадров?

Core 2 Duo 2,2 Ггц 2Гб, загрузка ЦП не больше 50%.
Кстати когда статичная картинка скорость в норме, при появлении движения, даже в середине записи, скорость удваивается на всю запись.

dues 30.08.2010 14:51

Тестировал в пятницу MJPEG. Мне не понравилось. Размер файла вырос в разы, а качество настолько же ухудшилось, номера не читабельные совсем. Думаю в таком случае переходить на fddshow смысла нет.

Сегодня вечерком проверю и выложу 1.3

dues 31.08.2010 11:48

Выложил 1.3

Если использовали до этого предыдущие версии, нужно зайти в настройки программы и нажать ОК, чтобы настройки пересохранились.

NiMar 31.08.2010 22:45

какие камеры использовать чтоб номера читались?

dues 31.08.2010 23:59

у меня камера Logitech Portable Webcam C905
Номера читаются, но не так хорошо, как хотелось бы.
У встречных номера не видно, смазываются. У авто впереди видно метрах в 10.
Нужно еще экспериментировать. С настройками, качеством сжатия.

Fasterpast 08.09.2010 17:15

http://s005.radikal.ru/i209/1009/de/fad88a9bb77e.png
Вот такая картинка у меня получается из окна. Камера logitech sphere af, разрешение 960х720. Вроде бы ничего, но можно заметить что даже с фокусом вручную выставленным на самое дальнее расстояние - камера все равно фокусируется слишком близко. Логично в принципе, веб камеры не работают на расстоянии более 5-6 метров...

@lex 09.09.2010 09:32

Цитата:

Сообщение от dues (Сообщение 153021)
у меня камера Logitech Portable Webcam C905
Номера читаются, но не так хорошо, как хотелось бы.
У встречных номера не видно, смазываются. У авто впереди видно метрах в 10.
Нужно еще экспериментировать. С настройками, качеством сжатия.

Бестолку. Матрица там реально 800х600. А 2 заявленных мегапикселя звездёжь и провокация... Попробуй в 100% качестве пофоткать тестовую картинку - сам убедишься, что после 0,48 мегапикселя всё остальное - экстраполяция. Лучше б взял 9000Pro :(

dues 09.09.2010 09:40

А я не ставлю разрешение более 800*600, знаю что там реально столько.
И чем же лучше 9000 Pro. По моему это то же самое, что C905, только в другом корпусе

admin 09.09.2010 10:20

Цитата:

Сообщение от Fasterpast (Сообщение 153777)
Вот такая картинка у меня получается из окна. Камера logitech sphere af, разрешение 960х720. Вроде бы ничего, но можно заметить что даже с фокусом вручную выставленным на самое дальнее расстояние - камера все равно фокусируется слишком близко. Логично в принципе, веб камеры не работают на расстоянии более 5-6 метров...

Что за очистные сооружения у тебя во дворе?

Fasterpast 09.09.2010 10:59

admin, всего лишь пруды-отстойники ) Грязь из забранной в трубы речки удаляет перед тем как она в барисовские пруды попадёт ) Таких много по Москве.
Видок с одной стороны канеш не оч, а с другой - от них не пахнет ничем, а значит фиг с ними

@lex 10.09.2010 14:14

Цитата:

Сообщение от Fasterpast (Сообщение 152441)
Вот такое у меня получается качество... К вопросу о читаемости номеров.
http://s60.radikal.ru/i170/1008/4b/145366ee4fbd.jpg
Разрешение стоит 1280х1024х15

Такое разрешение камера от ееешки не даст!!! Поэтому выставлять больше 640х480 не стОит. Кстати, где установлена камера? Чё-то по-моему низковато для вида из салона...

П.С.: на стоп-кадре Феад как у меня, только цвет другой ))
Цитата:

Сообщение от dues (Сообщение 153843)
А я не ставлю разрешение более 800*600, знаю что там реально столько.
И чем же лучше 9000 Pro. По моему это то же самое, что C905, только в другом корпусе

Та по краям не так смазывает картинку. Геометрические искажения те же, но нет такой замыленности. Говорю уверенно, потому как юзал обе (9000 на работе есть) и повёлся на то, что если начинка одна - зачем платить больше? Теперь жалею.

Fasterpast 11.09.2010 13:57

Цитата:

Сообщение от @lex (Сообщение 153989)
Такое разрешение камера от ееешки не даст!!! Поэтому выставлять больше 640х480 не стОит. Кстати, где установлена камера? Чё-то по-моему низковато для вида из салона...

Субъективно при 1280 картинка лучше, чем при 640, скорее всего из-за особенностей сжатия, но факт. В любом случае камеру надо менять, и чем быстрее, тем лучше.
А что касается вида - у меня мотоцикл... Стоит над фарой )

V0ldemar 22.10.2010 02:19

Предлагаю тему для размышления. Железо- ЖПС навигатор с видео входом (аналоговый), система WinCE 6.0. Можно ли написать прогу для видео регистрации?

NiMar 22.10.2010 07:57

нет, т.к. навигатор с видео входом (аналоговый) - видео никак в виндоус не заходит.


Часовой пояс GMT +4, время: 17:55.

Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot