GstRtspSink - Dual H264 Video Streaming

From RidgeRun Developer Connection
Revision as of 13:54, 15 April 2020 by Spalli (talk | contribs)
Jump to: navigation, search


Previous: Advanced examples Index Next: Audio%2BVideo_Streaming




Error something wrong.jpg Problems running the pipelines shown on this page?
Please see our GStreamer Debugging guide for help.


This wiki provides a dual H264 streaming example using GstRtspSink.

GstRtspSink Pipeline

The following pipeline sends two different H264 streams through two different mappings: stream1 and stream2. Any of them can be accessed independently.

PORT=12345
MAPPING1=/stream1
MAPPING2=/stream2

gst-launch-1.0 rtspsink name=sink service=$PORT \
v4l2src ! x264enc tune=zerolatency ! h264parse ! capsfilter caps="video/x-h264, mapping=${MAPPING1}" ! sink. \
videotestsrc ! x264enc tune=zerolatency ! h264parse ! capsfilter caps="video/x-h264, mapping=${MAPPING2}" ! sink.


RTSP Clients

VLC

IP_ADDRESS=192.0.0.1
PORT=12345
MAPPING1=stream1
MAPPING2=stream2

# Stream 1
vlc rtsp://${IP_ADDRESS}:${PORT}/${MAPPING1}

# Stream 2
vlc rtsp://${IP_ADDRESS}:${PORT}/${MAPPING2}

GStreamer

IP_ADDRESS=192.0.0.1
PORT=12345
MAPPING1=stream1
MAPPING2=stream2

# Stream 1
gst-launch-1.0 rtspsrc location=rtsp://${IP_ADDRESS}:${PORT}/${MAPPING1} ! rtph264depay ! h264parse ! avdec_h264 ! queue ! autovideosink

# Stream 2
gst-launch-1.0 rtspsrc location=rtsp://${IP_ADDRESS}:${PORT}/${MAPPING2} ! rtph264depay ! h264parse ! avdec_h264 ! queue ! autovideosink

MPlayer

IP_ADDRESS=192.0.0.1
PORT=12345
MAPPING1=stream1
MAPPING2=stream2

# Stream 1
mplayer rtsp://${IP_ADDRESS}:${PORT}/${MAPPING1}

# Stream 2
mplayer rtsp://${IP_ADDRESS}:${PORT}/${MAPPING2}

Totem

IP_ADDRESS=192.0.0.1
PORT=12345
MAPPING1=stream1
MAPPING2=stream2

# Stream 1
totem rtsp://${IP_ADDRESS}:${PORT}/${MAPPING1}

# Stream 2
totem rtsp://${IP_ADDRESS}:${PORT}/${MAPPING2}



Previous: Advanced examples Index Next: Audio%2BVideo_Streaming