Using Mplayer With Video API
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 видео-поток.