GNOME Bugzilla – Bug 792804
DESCRIBE and ANNOUNCE fail for mount points that are a prefix, causing VLC to conclude that the URL is wrong
Last modified: 2018-11-03 15:41:32 UTC
I was trying to create an RTSP/HTTP proxy using the gst-rtsp-server framework. I created a factory and tried to mount it on /proxy in hopes that I could serve up media when a client connected to rtsp://localhost:8554/proxy/bigbuckbunny or rtsp://localhost:8554/proxy/caminandes . Unfortunately it appears that gst_rtsp_mount_points_match will not return the factory for a partial match if the gint*matched parameter is NULL. This happens to be the case when handle_describe_request() calls find_media(). Likewise handle_announce_request(). So while the factory might be usable in a SETUP call, it causes a 404 for the media in a DESCRIBE RTSP request. If it is important for the gst_rtsp_mount_points_match to return null for prefix matches when matched==null (which appears to be the behavior described in the API documentation), then I recommend you adjust handle_announce_request and handle_describe_request to pass in a non-zero matched pointer.
Created attachment 367319 [details] [review] experimental fix to make DESCRIBE and ANNOUNCE not malfunction I am using the attached patch, but this allows the VLC session setup to proceed further and hit other bugs (which I'm not sure are shortcomings in the framework, or bugs in my code).
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-rtsp-server/issues/36.