RTSP Sink is a GStreamer element which permits high performance streaming to multiple computers using the RTSP / RTP protocols. The GstRtspSink element leverages previous logic from GStreamer's RTSP server with extensions to create a GStreamer sink element providing benefits like greater flexibility, easy application integration and quick gst-launch prototyping.
With GstRtspSink you have the flexibility to stream different content to the same client, such as audio and video. You can also send different streams to different clients. This means that within a single GStreamer pipeline you can stream multiple videos, multiple audios and multiple lip-sync audio+video streams, each one to a different client using a different RTSP mapping. In the Advanced Examples page different streaming possibilities are shown.
GstRtspSink supports the following features:
- GStreamer-1.0 and Gstreamer-0.10 versions
- Configurable mappings for each stream. The mapping is the text string used at the end of the RTSP URL: rtsp://$SERVER_IP/$MAPPING
- Configurable TCP port number
- Automatic payloader detection according to the negotiated pipeline capabilities
- Multiple independent streams (1):
- Video only streams
- Audio only streams
- Video+Audio streams
- Multicast networking support
- RTSP over HTTP Tunneling support
- Basic Authentication control by user and password
- Fine-grained stream control
- Designed for use in embedded products: supports zero-copy pipelines
(1) The number of simultaneous streams is limited by the hardware capabilities.
GstRtspSink supports the following formats:
- H264 video encoding
- MPEG4 video encoding
- VP8 video encoding
- MJPEG video encoding
- AAC audio encoding
- AC3 audio encoding
- PCMA audio encoding
- PCMU audio encoding
- OPUS audio encoding
- Transport Stream A/V
Start navigating this wiki by going to the Getting the Code page in the table of contents.