GstRtspSink - Multicast Audio Video: Difference between revisions
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
|
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). |
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}