The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Устойчивая Webcam"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на рабочей станции (Мультимедиа / Linux)
Изначальное сообщение [ Отслеживать ]

"Устойчивая Webcam"  +/
Сообщение от mikra1 on 29-Июл-10, 22:11 
Здравствуйте, друзья.

Есть у меня вебкамера, есть VLC.
Делаю чтобы велась круглосуточная запись видео в файлы.
Устройство /dev/video0, запись ведется, все чудесно. Если интересно, расскажу в деталях,а пока главное.

Если выдернуть вебкамеру из USB, а затем повторно вставить, то произойдет следующее:
1. VLC выругается, запись прекратит, но не сдохнет.
2. Появится новое устройство /dev/video1, а старое /dev/video0 будет занято, пока VLC не остановишь.
3. VLC перезапускается за счет параметра --run-time и цикла в скрипте каждый час, чтобы ролики были не дольше часа и вменяемых размеров. Если произойдет такое выключение-включение камеры, то будет потеряна запись на срок до 1 часа, что неприемлемо.

Подкиньте идею, как сделать чтобы VLC убивался при отключении вебкамеры.
Строка запуска:

/usr/bin/cvlc v4l2://$dev :input-slave="alsa://hw:1,0" :v4l2-fps=25 :v4l2-caching=300 :v4l2-aspect-ratio=16\:9 --sout '#transcode{vcodec=mp4v,vb=6000,acodec=mp4a,ab=128,channels=1,fps=25,audio-sync,venc=ffmpeg{keyint=30}} :duplicate{dst=std{access=file,mux=mp4,dst='$filmpath$fn'.m4v}}' --run-time $filmlen vlc://quit

При отключении вебкамеры выдает

[0xb6d050c0] v4l2 demux error: Failed to unlock (VIDIOC_QBUF)
[0xb6d050c0] v4l2 demux error: Failed to unlock (VIDIOC_QBUF)
[0xb6d050c0] v4l2 demux error: Failed to wait (VIDIOC_DQBUF)
[0xb6d050c0] v4l2 demux error: Failed to wait (VIDIOC_DQBUF)

Высказать мнение | Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Устойчивая Webcam"  +/
Сообщение от allez (ok) on 30-Июл-10, 09:01 
>Здравствуйте, друзья.
>
>Есть у меня вебкамера, есть VLC.
>Делаю чтобы велась круглосуточная запись видео в файлы.
>Устройство /dev/video0, запись ведется, все чудесно. Если интересно, расскажу в деталях,а пока
>главное.
>Если выдернуть вебкамеру из USB, а затем повторно вставить, то произойдет следующее:

Встречный вопрос: а кто и зачем выдергивает камеру из USB-порта?

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

2. "Устойчивая Webcam"  +/
Сообщение от mikra1 on 30-Июл-10, 19:32 
>>Здравствуйте, друзья.
>>
>>Есть у меня вебкамера, есть VLC.
>>Делаю чтобы велась круглосуточная запись видео в файлы.
>>Устройство /dev/video0, запись ведется, все чудесно. Если интересно, расскажу в деталях,а пока
>>главное.
>>Если выдернуть вебкамеру из USB, а затем повторно вставить, то произойдет следующее:
>
>Встречный вопрос: а кто и зачем выдергивает камеру из USB-порта?

Ну всяко может быть, камера на домашнем сервере работает. ТэЗэ вобщем такое :)

Как решить красиво не придумал. Сделал watchdog скрыпт, который каждую секунду проверяет, не появилось ли нового девайса /dev/videoX, где X от 0 до 9. Если появился, то убивает старый VLC и поднимает новый на новом девайсе. Конечно подключение второй вебкамеры зациклит механизм, но пока можно и так.

Новые идеи все еще актуальны, пишите свои предложения :)

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

3. "Устойчивая Webcam"  +/
Сообщение от anonymous (??) on 30-Июл-10, 20:09 
>[оверквотинг удален]
>Ну всяко может быть, камера на домашнем сервере работает. ТэЗэ вобщем такое
>:)
>
>Как решить красиво не придумал. Сделал watchdog скрыпт, который каждую секунду проверяет,
>не появилось ли нового девайса /dev/videoX, где X от 0 до
>9. Если появился, то убивает старый VLC и поднимает новый на
>новом девайсе. Конечно подключение второй вебкамеры зациклит механизм, но пока можно
>и так.
>
>Новые идеи все еще актуальны, пишите свои предложения :)

Ну можно попробовать с помощью udev пускать скрипт при появлении/удалении камеры.

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

4. "Устойчивая Webcam"  +/
Сообщение от mikra1 on 01-Авг-10, 07:28 
>Ну можно попробовать с помощью udev пускать скрипт при появлении/удалении камеры.

Почитаем, почитаем...

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

5. "Устойчивая Webcam"  +/
Сообщение от mikra1 on 01-Авг-10, 08:00 
>Ну можно попробовать с помощью udev пускать скрипт при появлении/удалении камеры.

udevadm info говорит про камеру следующее
  looking at device '/devices/pci0000:00/0000:00:1d.7/usb2/2-6/2-6:1.0/video4linux/video0':
    KERNEL=="video0"
    SUBSYSTEM=="video4linux"
    DRIVER==""
    ATTR{name}=="UVC Camera (046d:080a)"
    ATTR{index}=="0"

Эх, если бы тут выдавался серийник моей камеры... А тож ведь от недостатков моего решения это избавиться не поможет.
Но эстетически несомненно красивее :)

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру