--- /dev/null
+# RTSP
+
+* [RFC2326:Real Time Streaming Protocol (RTSP)](https://www.ietf.org/rfc/rfc2326.txt): Also explains meaning of RTSP specific SDP fields like "a:control:streamid=0"
+
+## Send to RTSP
+
+ ffmpeg -f x11grab -framerate 25 -video_size 1680x1050 -i :0.0 \
+ -f pulse -ac 2 -i default \
+ -vcodec libx264 -preset ultrafast -tune zerolatency -crf 0 -g 25 \
+ -async 1 -acodec libmp3lame \
+ -bsf:v h264_mp4toannexb \
+ -f rtsp -muxdelay 0.1 rtsp://localhost:5545/abc
+ gst-launch-1.0 videotestsrc ! avenc_mpeg4 ! video/mpeg, mapping=/stream1 ! rtspclientsink location=rtsp://127.0.0.1:5545/abcd
+
+
+## Receiving stream via RTSP
+
+ ffplay -i rtsp://localhost:554/abc
+ gst-launch-1.0 -v playbin uri=rtsp://127.0.0.1:554/abc
+ mpv --rtsp-transport=lavf rtsp://127.0.0.1:554/abc
+ mplayer rtsp://127.0.0.1:554/abc
+ vlc rtsp://127.0.0.1:554/abc # does not work
+
+
+## Server software
+
+* `rtsp-server-perl`
+ * Error handling SETUP: Can't call method "get_stream" on an undefined value at /usr/share/perl5/RTSP/Server/Client/Connection.pm line 100.
+ * RTSP/Server/Connection.pm:332, function get_mount
+* https://github.com/aler9/rtsp-simple-server