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 657316 - capsfilter is racy when changing the caps during initial pipeline startup
capsfilter is racy when changing the caps during initial pipeline startup
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
git master
Other Linux
: Normal normal
: 0.10.36
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2011-08-25 10:06 UTC by Sjoerd Simons
Modified: 2011-08-26 08:24 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
proposed patch (1.45 KB, patch)
2011-08-25 10:06 UTC, Sjoerd Simons
committed Details | Review

Description Sjoerd Simons 2011-08-25 10:06:23 UTC
_set_caps only gets called when the buffer is actually pushed, so there
is a reasonably big window between when the initial caps are retrieved
and when the caps are set on our src pad. So we can't assume the not
having negotiated caps on our src pad means _get_caps still has to be
called.
Comment 1 Sjoerd Simons 2011-08-25 10:06:42 UTC
Created attachment 194687 [details] [review]
proposed patch
Comment 2 Sebastian Dröge (slomo) 2011-08-26 08:24:29 UTC
commit 341d7a4c0dbd69f86faaf1ffd2e94e99bac6f8c9
Author: Sjoerd Simons <sjoerd.simons@collabora.co.uk>
Date:   Wed Jul 20 14:05:27 2011 +0200

    capsfilter: don't assume _get_caps still has to be
    
    _set_caps only gets called when the buffer is actually pushed, so there
    is a reasonably big window between when the initial caps are retrieved
    and when the caps are set on our src pad. So we can't assume the not
    having negotiated caps on our src pad means _get_caps still has to be
    called.
    
    Instead simply always suggest the new caps on buffer_alloc.