After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 581294 - rtspext: extensions configure_stream methods conflict
rtspext: extensions configure_stream methods conflict
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
git master
Other Linux
: Normal normal
: 0.10.26
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2009-05-04 11:17 UTC by Mark Nauwelaerts
Modified: 2010-09-06 09:25 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Mark Nauwelaerts 2009-05-04 11:17:35 UTC
As rtspsrc queries extensions whether it should configure a stream, the rtspwms extension might indicate that the rtx stream should not be configured (i.e. it returns FALSE), after which another extension (e.g. real rtsp) might simply return TRUE (e.g. if no configure_stream is implemented).

The net effect is that the stream is configured.  On the one hand, this is not the way the extension knowing about the stuff in question intended it.  On the other hand, an inconvenient side effect is that the UDP ports of the RTX stream might be retried for the video stream (rather than those of the audio stream), leading to unsupported transport failure in setting up video stream (due to MS RTSP specs).  So, (usually) video over UDP (for MS WMS servers) might randomly seem to appear or not depending on whether other extensions are present and in what order they are executed.

There may be some way to remedy the latter side effect, though likely no really clean one.  As for the basic problem; maybe gst_rtsp_ext_list_configure_stream should check whether configure_stream method is implemented, or a method should be able to return "do not know/care" ?
Comment 1 Tim-Philipp Müller 2009-06-15 20:37:42 UTC
Came across this a few days ago - the aggregation of the return values looks dodgy/broken. Didn't know there was actually a case where this mattered though.
Comment 2 Wim Taymans 2010-07-26 15:53:10 UTC
I would say that as soon as some extension returns FALSE, we don't configure the stream. So, the aggregation needs improving.
Comment 3 Wim Taymans 2010-09-06 09:25:23 UTC
commit 3bae70ceea96cc98985dc84c75efe8a046f82b7e
Author: Wim Taymans <wim.taymans@collabora.co.uk>
Date:   Wed Aug 25 09:58:20 2010 +0200

    rtspext: stop configuration on first failure
    
    Stop the configuration of a stream as soon as some of the extensions return
    FALSE.
    
    Fixes #581294