mirror of
https://github.com/mpromonet/v4l2rtspserver
synced 2024-11-03 23:15:56 +00:00
inc | ||
src | ||
v4l2wrapper@cd2b5fc89b | ||
.gitignore | ||
.gitmodules | ||
.travis.yml | ||
CMakeLists.txt | ||
LICENSE | ||
README.md |
h264_v4l2_rtspserver
It is an RTSP server feed from an Video4Linux device that support H264 format.
It is based on :
- libv4l-dev to capture video frames
- liblivemedia-dev (http://www.live555.com) to implement RTSP server
The RTSP server support :
- RTP/UDP unicast
- RTP/UDP multicast
- RTP/TCP
- RTP/RTSP/HTTP
License
Domain public
Dependencies
- liblivemedia-dev > live.2012.01.07 (need StreamReplicator)
- libv4l-dev
- liblog4cpp5-dev
Build
cmake .
make
If it fails you will need to install libv4l-dev liblivemedia-dev liblog4cpp5-dev.
If it still not work you will need to read Makefile.
Install
cpack .
dpkg -i h264_v4l2_rtspserver*.deb
Raspberry Pi
This RTSP server works on Raspberry Pi using :
-
the unofficial V4L2 driver for the Raspberry Pi Camera Module http://www.linux-projects.org/modules/sections/index.php?op=viewarticle&artid=14
sudo uv4l --driver raspicam --auto-video_nr --encoding h264
-
the official V4L2 driver bcm2835-v4l2
sudo modprobe -v bcm2835-v4l2
Usage
./h264_v4l2_rtspserver [-v[v]][-m] [-P RTSP port][-P RTSP/HTTP port][-Q queueSize] [-M mulcast group] [-r] [-s] [-W width] [-H height] [-F fps] [-O file] [device]
-v : verbose
-vv : very verbose
-Q length: Number of frame queue (default 10)
-O output: Copy captured frame to a file or a V4L2 device
RTSP options :
-I addr : RTSP interface (default autodetect)
-P port : RTSP port (default 8554)
-T port : RTSP over HTTP port (default 0)
-u url : unicast url (default unicast)
-m url : multicast url (default multicast)
-M addr : multicast group (default is a random address)
-c : don't repeat config (default repeat config before IDR frame)
-t secs : RTCP expiration timeout (default 65)
V4L2 options :
-r : V4L2 capture using read interface (default use memory mapped buffers)
-s : V4L2 capture using live555 mainloop (default use a separated reading thread)
-F fps : V4L2 capture framerate (default 25)
-W width : V4L2 capture width (default 640)
-H height: V4L2 capture height (default 480)
device : V4L2 capture device (default /dev/video0)