motion + mplayer

Доброго времени суток!

сделал pacman -Syu
установил (настройки не менял) motion, запустил его “motion -n”. Через веб все работает.

хочу просматривать поток через mplayer :
[[email protected] ~]$ mplayer http://localhost:8081/
MPlayer SVN-r34799-4.6.3 (C) 2000-2012 MPlayer Team
183 audio & 398 video codecs
mplayer: could not connect to socket
mplayer: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.
Playing http://localhost:8081/.
Resolving localhost for AF_INET6...
Couldn't resolve name for AF_INET6: localhost
Resolving localhost for AF_INET...
Connecting to server localhost[127.0.0.1]: 8081...
Cache size set to 320 KBytes
Cache fill: 17.38% (56941 bytes)   
libavformat version 54.2.100 (internal)
Cache empty, consider increasing -cache and/or -cache-min. [performance issue]
Cache empty, consider increasing -cache and/or -cache-min. [performance issue]
Cache empty, consider increasing -cache and/or -cache-min. [performance issue]
Cache empty, consider increasing -cache and/or -cache-min. [performance issue]
Cache empty, consider increasing -cache and/or -cache-min. [performance issue]
Cache empty, consider increasing -cache and/or -cache-min. [performance issue]
Cache empty, consider increasing -cache and/or -cache-min. [performance issue]
Cache empty, consider increasing -cache and/or -cache-min. [performance issue]
Cache empty, consider increasing -cache and/or -cache-min. [performance issue]
и так до бесконечности. Картинка не появилась.

пытался подключиться на прямую к /dev/video0 (mplayer tv:// -tv device=/dev/video0), получил
"v4l2: ioctl set format failed: Device or resource busy"
. Ну оно и понятно.

Вычитал про vloopback. Поставил его
yaourt -S aur/vloopback-svn
, в консоли под рутом выполнил
modprobe vloopback
, в каталоге /dev ожидаемо появилось два новых устройства video1 video2.

внес в /etc/motion/motion.conf строку motion_video_pipe ‘-’. Перезапустил motion -n. И в консоли получил
[1] Resizing pre_capture buffer to 1 items
[1] Unable to decipher OS version: Invalid argument
[1] Failed to open video loopback
[1] Thread exiting
[1] Calling vid_close() from motion_cleanup
[1] Closing video device /dev/video0

Т.е. сервер не запустился. Что я делаю нет так?
продолжая экспериментировать и “научно тыкать”.

подсмотрел dmesg | grep vloop
[  281.885681] [vloopback_init] : video4linux loopback driver v1.4-trunk
[  281.885873] [vloopback_init] : Loopback 0 registered, input: video1, output: video2
[  281.885878] [vloopback_init] : Loopback 0 , Using 2 buffers
[25788.320108] [cleanup_vloopback_module] : Unregistering video4linux loopback devices
[25970.744238] [vloopback_init] : video4linux loopback driver v1.4-trunk
[25970.744424] [vloopback_init] : Loopback 0 registered, input: video1, output: video2
[25970.744429] [vloopback_init] : Loopback 0 , Using 2 buffers
[29280.818628] [cleanup_vloopback_module] : Unregistering video4linux loopback devices
[29982.035319] [vloopback_init] : video4linux loopback driver v1.4-trunk
[29982.035516] [vloopback_init] : Loopback 0 registered, input: video1, output: video2
[29982.035520] [vloopback_init] : Loopback 0 , Using 2 buffers
и переписал строку в /etc/motion/motion.conf так
motion_video_pipe '/dev/video1'
mention запустился, через веб картинка идет, mplayer молчит
[[email protected] ~]$ env LD_PRELOAD=/usr/lib/libv4l/v4l2convert.so mplayer tv:// -tv device=/dev/video2
MPlayer SVN-r34799-4.6.3 (C) 2000-2012 MPlayer Team
183 audio & 398 video codecs
mplayer: could not connect to socket
mplayer: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.
Playing tv://.
TV file format detected.
Selected driver: v4l2
 name: Video 4 Linux 2 input
 author: Martin Olschewski <[email protected]>;
 comment: first try, more to come ;-)
v4l2: ioctl query capabilities failed: Inappropriate ioctl for device
v4l2: ioctl set mute failed: Inappropriate ioctl for device
v4l2: 0 frames successfully processed, 0 frames dropped.
Exiting... (End of file)


попробовал напрямую лить через ffmpeg
[[email protected] user]# ffmpeg -an -i /dev/video0 -f yuv4mpegpipe -s 320x240 -pix_fmt yuv420p -o /dev/video2
ffmpeg version 0.10.3 Copyright (c) 2000-2012 the FFmpeg developers
  built on May  9 2012 17:53:24 with gcc 4.7.0 20120505 (prerelease)
  configuration: --prefix=/usr --enable-libmp3lame --enable-libvorbis --enable-libxvid --enable-libx264 --enable-libvpx --enable-libtheora --enable-libgsm --enable-libspeex --enable-postproc --enable-shared --enable-x11grab --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libschroedinger --enable-libopenjpeg --enable-librtmp --enable-libpulse --enable-gpl --enable-version3 --enable-runtime-cpudetect --disable-debug --disable-static
  libavutil      51. 35.100 / 51. 35.100
  libavcodec     53. 61.100 / 53. 61.100
  libavformat    53. 32.100 / 53. 32.100
  libavdevice    53.  4.100 / 53.  4.100
  libavfilter     2. 61.100 /  2. 61.100
  libswscale      2.  1.100 /  2.  1.100
  libswresample   0.  6.100 /  0.  6.100
  libpostproc    52.  0.100 / 52.  0.100
[mp3 @ 0x9754aa0] Format mp3 detected only with low score of 1, misdetection possible!
Вроде работает, не прерывается, но mplayer по-прежнему ругается
[[email protected] ~]$ env LD_PRELOAD=/usr/lib/libv4l/v4l2convert.so mplayer tv:// -tv device=/dev/video2
MPlayer SVN-r34799-4.6.3 (C) 2000-2012 MPlayer Team
183 audio & 398 video codecs
mplayer: could not connect to socket
mplayer: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.
Playing tv://.
TV file format detected.
Selected driver: v4l2
 name: Video 4 Linux 2 input
 author: Martin Olschewski <[email protected]>;
 comment: first try, more to come ;-)
v4l2: unable to open '/dev/video2': Invalid argument
v4l2: ioctl set mute failed: Bad file descriptor
v4l2: 0 frames successfully processed, 0 frames dropped.
Exiting... (End of file)


что ж не так?
Может ему ещё какие-нибудь аргументы требуются?
http://forumnov.com/archive/index.php/t208249.html - см.?
bobart
Может ему ещё какие-нибудь аргументы требуются?
http://forumnov.com/archive/index.php/t208249.html - см.?
Да видел.
Пока грешу, что vloopback не корректно работает за ядрах 3.x (где-то проскальзывала подобная информация). Хотя надежды еще не потерял :)
покрутил v4l2loopback. Пример из их вики заработал, но motion c ним работать отказался :(
Ребята, неужто никто с vloopback не работал?
то же маялся похожим вопросом.

Идея была сделать на базе ноутбука автомобильный видеорегистратор + камера заднего вида: Были две камеры + нетбук + базовый archlinux, т.е. чистая консоль, без иксов.
С камерой заднего виде проблем не было поставил в бампер камеру и запускал mplayer tv:// -tv device=/dev/video0.
А вот с собственно регистратором так и не разобрался :(
motion записывал исправно с камеры /dev/video1, А вот просмотреть realtime-картинку не получилось. vloopback создавал два псевдодевайса /dev/video2 и /dev/video3. В motion.conf прописывал строку , как и у тебя, motion_video_pipe ‘/dev/video3’. Как я понял motion должен лить поток с /dev/video2, а из /dev/video3 его можно было просмотреть, однако mplayer tv:// -tv device=/dev/video3 не работал.
Хотя, допускаю, что я не правильно понял.

Если здешние гуру подскажут решение, было бы классно.
У меня тоже не хочет работать mplayer

На оф сайте
mplayer -demuxer lavf http://www.myurl.com:8081/stream.mjpg

Но как в первом посте - бесконечное кеширование и картинки нет
Как альтернатива
vlc -vvv --intf dummy http://www.myurl.com:8081/stream.mjpg
Работает нормально
 
Зарегистрироваться или войдите чтобы оставить сообщение.