Здравствуйте, друзья.Есть у меня вебкамера, есть 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)