Using Mplayer With Video API

From ElphelWiki
Revision as of 10:07, 24 December 2005 by Ilya (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

in English | [[{{{de}}}|deutsch]] | [[{{{fr}}}|français]] | по-русски | автоперевод | 中文版 | 机械翻译


Video API позволяет принимать видеопоток как по HTTP, так и RTP/UDP. Нужно сказать, что в отличии от камер Axis камеры Elphel по RTP могут принимать поток MJPG или Theora.

HTTP

Пример команды получающей поток в формате MPJPG с камеры (Elphel, Axis etc) :

$mplayer -fps 6 -demuxer lavf http://192.168.0.9/mjpg/video.mjpg

Если нужно принять поток с произвольными параметрами, то нужно идти на небольшую хитрость. Дело в том, что lavf воспринимает поток как MPJPG, только если в конце имени файла или URL стоит расширение ".mjpg". Поэтому к URL нужно добавить фиктивный параметр c расширением ".mjpg", например так :

$mplayer -fps 6 -demuxer lavf http://192.168.0.9/axis-cgi/mjpg/video.cgi?resolution=1024x768&bogus.mjpg

mplayer может также воспроизводить файлы, с сохраненным MJPG потоком. Например, поток был сохранен таким образом :

$wget http://192.16.0.9/axis-cgi/mjpg/video.cgi?resolution=1024x768 -O video.mjpg

и fps был равен 6, то можно это файл воспроизвести так :

$mplayer -fps 6 -demuxer lavf video.mjpg

RTP

MJPG

Multicast

В стандартном Axis Video API нет возможности получить multicast поток по RTSP. Но есть возможность получения SDP-файла и на основе его принять поток.

Получить SDP-файл можно по адресу : http://192.168.0.9/mjpg/media.sdp

После этого можно воспроизвести поток :

$mplayer sdp://media.sdp

или сохранить в файл :

$mencoder -fps 2 sdp://media.sdp -ovc copy -o my.avi 

К сожалению mencoder требует для правильной работы указания fps, хотя в sdp-файле этот параметр присутствует.

Unicast

Можно обратиться по протоколу RTSP к RTSP-серверу в камере и получить unicast видео-поток.

Theora