GstRtspSink - Live File Streaming
This wiki provides an example to live-stream a video recording through RTSP using GstRtspSink.
|
GstRtspSink Pipeline
The following pipeline takes a MP4 file containing a H264 video and a AAC audio elementary streams and streams them through RTSP using GstRtspSink.
PORT=12345 MAPPING=/stream FILE=/var/media/videos/recording.mp4 gst-launch-1.0 rtspsink name=sink service=${PORT} appsink0::sync=true appsink1::sync=true qtdemux name=demux \ filesrc location=${FILE} ! demux. \ demux. ! queue ! aacparse ! audio/mpeg,mapping=${MAPPING} ! sink. \ demux. ! queue ! h264parse ! video/x-h264,mapping=${MAPPING} ! sink.
RTSP Clients
VLC
IP_ADDRESS=192.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}