GstRtspSink - Multicast Audio Video: Difference between revisions

From RidgeRun Developer Wiki
No edit summary
 
(8 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{GstRtspSink Page|
{{GstRtspSink/Head|previous=Dual_Multicast|next=C Examples|metakeywords=}}
[[GstRtspSink_-_Dual_Multicast|Dual Multicast]]|
[[GstRtspSink - C Examples|C Examples]]|
 
{{GStreamer debug}}


{{Ambox
|type=notice
|issue=The multicast clients can't be on the same machine as the server. Please use at least 2 machines (one as a server and one as a client).
}}
<br>
<br>
<pre style="background-color:yellow">
The multicast clients cant be in the same machine that the server. Please use at least 2 machines (one as server and one as client).
</pre>
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.
 
<br>
<br>
<table>
<tr>
<td><div class="clear; float:right">__TOC__</div></td>
<td valign=top>
{{GStreamer debug}}
</td>
</table>
== GstRtspSink Pipeline ==
== GstRtspSink Pipeline ==


Line 32: Line 36:
audiotestsrc ! queue ! audioconvert ! queue ! voaacenc ! aacparse ! capsfilter caps="audio/mpeg, mapping=${MAPPING}" ! sink.
audiotestsrc ! queue ! audioconvert ! queue ! voaacenc ! aacparse ! capsfilter caps="audio/mpeg, mapping=${MAPPING}" ! sink.
</syntaxhighlight>
</syntaxhighlight>


== RTSP Clients ==
== RTSP Clients ==
Line 38: Line 41:


<syntaxhighlight lang=bash>
<syntaxhighlight lang=bash>
IP_ADDRESS=127.0.0.1
IP_ADDRESS=<IP ADDRESS OF HOST>
PORT=12345
PORT=12345
MAPPING=stream
MAPPING=stream
Line 48: Line 51:


<syntaxhighlight lang=bash>
<syntaxhighlight lang=bash>
IP_ADDRESS=127.0.0.1
IP_ADDRESS=<IP ADDRESS OF HOST>
PORT=12345
PORT=12345
MAPPING=stream
MAPPING=stream
Line 60: Line 63:


<syntaxhighlight lang=bash>
<syntaxhighlight lang=bash>
IP_ADDRESS=127.0.0.1
IP_ADDRESS=<IP ADDRESS OF HOST>
PORT=12345
PORT=12345
MAPPING=stream
MAPPING=stream
Line 70: Line 73:


<syntaxhighlight lang=bash>
<syntaxhighlight lang=bash>
IP_ADDRESS=127.0.0.1
IP_ADDRESS=<IP ADDRESS OF HOST>
PORT=12345
PORT=12345
MAPPING=stream
MAPPING=stream
Line 76: Line 79:
totem rtsp://${IP_ADDRESS}:${PORT}/${MAPPING}
totem rtsp://${IP_ADDRESS}:${PORT}/${MAPPING}
</syntaxhighlight>
</syntaxhighlight>
}}
 
 
{{GstRtspSink/Foot|previous=Dual_Multicast|next=C Examples}}

Latest revision as of 15:22, 2 May 2024



Previous: Dual_Multicast Index Next: C Examples





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.

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

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=<IP ADDRESS OF HOST>
PORT=12345
MAPPING=stream

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

GStreamer

IP_ADDRESS=<IP ADDRESS OF HOST>
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=<IP ADDRESS OF HOST>
PORT=12345
MAPPING=stream

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

Totem

IP_ADDRESS=<IP ADDRESS OF HOST>
PORT=12345
MAPPING=stream

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



Previous: Dual_Multicast Index Next: C Examples