GstRtspSink - Multicast Audio Video: Difference between revisions

From RidgeRun Developer Wiki
mNo edit summary
mNo edit summary
Line 1: Line 1:
{{GstRtspSink/Head|previous=Dual_Multicast|next=C Examples|keywords=}}
{{GstRtspSink/Head|previous=Dual_Multicast|next=C Examples|keywords=}}


<table>
<tr>
<td><div class="clear; float:right">__TOC__</div></td>
<td valign=top>
{{GStreamer debug}}
{{GStreamer debug}}
</td>
</table>


<!------
<br>
<br>
<pre style="background-color:yellow">
<pre style="background-color:yellow">
  The multicast clients can't be in the same machine that the server. Please use at least 2 machines (one as server and one as client).
  The multicast clients can't be in the same machine that the server. Please use at least 2 machines (one as server and one as client).
</pre>
</pre>
---->


{{Ambox
|type=notice
|issue=The multicast clients can't be in the same machine that the server. Please use at least 2 machines (one as server and one as client).
}}
<br>
This wiki provides an example that combines a H264 video and an AAC audio stream into a single mapping and serves it to a multicast group.
This wiki provides an example that combines a H264 video and an AAC audio stream into a single mapping and serves it to a multicast group.



Revision as of 14:41, 16 April 2020



Previous: Dual_Multicast Index Next: C Examples




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



This wiki provides an example that combines a H264 video and an AAC audio stream into a single mapping and serves it to a multicast group.

GstRtspSink Pipeline

The following pipeline combines a H264 video and an AAC audio stream into a single mapping and serves it to a multicast group found between 239.255.255.253 and 239.255.255.255 and a port between 5000 and 6000.

PORT=12345
MAPPING=/stream
IP_MIN=239.255.255.253
IP_MAX=239.255.255.255
PORT_MIN=5000
PORT_MAX=6000
TTL=128

gst-launch-1.0 rtspsink name=sink \
service=$PORT multicast=true multicast-ip-min=${IP_MIN} multicast-ip-max=${IP_MAX} \
multicast-port-min=${PORT_MIN} multicast-port-max=${PORT_MAX}  multicast-ttl=${TTL} \
v4l2src device=/dev/video0 ! "video/x-raw,width=640,height=480" ! queue ! videoconvert ! \
queue ! x264enc key-int-max=10 ! h264parse ! capsfilter caps="video/x-h264, mapping=${MAPPING}" ! sink. \
audiotestsrc ! queue ! audioconvert ! queue ! voaacenc ! aacparse ! capsfilter caps="audio/mpeg, mapping=${MAPPING}" ! sink.


RTSP Clients

VLC

IP_ADDRESS=127.0.0.1
PORT=12345
MAPPING=stream

vlc rtsp://${IP_ADDRESS}:${PORT}/${MAPPING}

GStreamer

IP_ADDRESS=127.0.0.1
PORT=12345
MAPPING=stream

gst-launch-1.0 rtspsrc location=rtsp://${IP_ADDRESS}:${PORT}/${MAPPING} name=src \
src. ! rtph264depay ! h264parse ! avdec_h264 ! queue ! autovideosink \
src. ! rtpmp4adepay ! aacparse ! avdec_aac ! queue ! autoaudiosink

MPlayer

IP_ADDRESS=127.0.0.1
PORT=12345
MAPPING=stream

mplayer rtsp://${IP_ADDRESS}:${PORT}/${MAPPING}

Totem

IP_ADDRESS=127.0.0.1
PORT=12345
MAPPING=stream

totem rtsp://${IP_ADDRESS}:${PORT}/${MAPPING}



Previous: Dual_Multicast Index Next: C Examples