On Mon, Jan 15, 2024 at 10:37:25PM +0200, Paul Orlyk wrote: > Fixes server compatibility issues with rtspclientsink GStreamer plugin. > > > From specification: > RFC 7826 "Real-Time Streaming Protocol Version 2.0" (https://datatracker.ietf.org/doc/html/rfc7826), section 18.54: > mode: The mode parameter indicates the methods to be supported for > this session. The currently defined valid value is "PLAY". If > not provided, the default is "PLAY". The "RECORD" value was > defined in RFC 2326; in this specification, it is unspecified > but reserved. RECORD and other values may be specified in the > future. > RFC 2326 "Real Time Streaming Protocol (RTSP)" (https://datatracker.ietf.org/doc/html/rfc2326), section 12.39: > mode: > The mode parameter indicates the methods to be supported for > this session. Valid values are PLAY and RECORD. If not > provided, the default is PLAY. > > mode=receive was always like this, from the initial commit 'a8ad6ffa rtsp: Add listen mode'. > > For comparison, Wowza was used to push RTSP stream to. Both GStreamer and FFmpeg had no issues. > Here is the capture of Wowza responding to SETUP request: > 200 OK > CSeq: 3 > Server: Wowza Streaming Engine 4.8.26+4 build20231212155517 > Cache-Control: no-cache > Expires: Mon, 15 Jan 2024 19:40:31 GMT > Transport: RTP/AVP/UDP;unicast;client_port=11640-11641;mode=record;source=172.17.0.2;server_port=6976-6977 > Date: Mon, 15 Jan 2024 19:40:31 GMT > Session: 1401457689;timeout=60 > > Test setup: > Server: ffmpeg -loglevel trace -y -rtsp_flags listen -i rtsp://0.0.0.0:30800/live.stream t.mp4 > FFmpeg client: ffmpeg -re -i "Big Buck Bunny - FULL HD 30FPS.mp4" -c:v libx264 -f rtsp rtsp://127.0.0.1:30800/live.stream > GStreamer client: gst-launch-1.0 videotestsrc is-live=true pattern=smpte ! queue ! videorate ! videoscale ! video/x-raw,width=640,height=360,framerate=60/1 ! timeoverlay font-desc="Sans, 84" halignment=center valignment=center ! queue ! videoconvert ! tee name=t t. ! x264enc bitrate=9000 pass=cbr speed-preset=ultrafast byte-stream=false key-int-max=15 threads=1 ! video/x-h264,profile=baseline ! queue ! rsink. audiotestsrc ! voaacenc ! queue ! rsink. t. ! queue ! autovideosink rtspclientsink name=rsink location=rtsp://localhost:30800/live.stream > > Test results: > modified FFmpeg client -> stock server : ok > stock FFmpeg client -> modified server : ok > modified FFmpeg client -> modified server : ok > GStreamer client -> modified server : ok > > Signed-off-by: Paul Orlyk > --- > libavformat/rtspdec.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) Thats a nice commit message will apply thx [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Whats the most studid thing your enemy could do ? Blow himself up Whats the most studid thing you could do ? Give up your rights and freedom because your enemy blew himself up.