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 691986 - basesrc: set NEED_RECONFIGURE flag if negotiate fails
basesrc: set NEED_RECONFIGURE flag if negotiate fails
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
1.x
Other Linux
: Normal major
: 1.0.6
Assigned To: GStreamer Maintainers
GStreamer Maintainers
: 687793 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2013-01-18 01:06 UTC by Niv Sardi
Modified: 2013-01-24 14:48 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
0002-gst_base_src_loop-set-NEED_RECONFIGURE-flag-if-negoc.patch (1.43 KB, patch)
2013-01-18 01:06 UTC, Niv Sardi
none Details | Review
0002-gst_base_src_loop-set-NEED_RECONFIGURE-flag-if-negoc.patch (1.56 KB, patch)
2013-01-24 04:35 UTC, Niv Sardi
none Details | Review

Description Niv Sardi 2013-01-18 01:06:59 UTC
Created attachment 233709 [details] [review]
0002-gst_base_src_loop-set-NEED_RECONFIGURE-flag-if-negoc.patch

gst_base_src_loop: set NEED_RECONFIGURE flag if negociate fails,
    
    this is found tracking a bug in gnonlin, negociate actually calls ->set_allocation.
    gst_base_src_negociate:
    -\ gst_base_src_prepare_allocation (GstBaseSrc * basesrc, GstCaps * caps)
    --\ gst_base_src_set_allocation
    
    if it's not called, no buffer pool is asociated with the element, and the allocation fail as 
    
    anyway, this shuts up the error:
    0:00:00.299381517 17157      0x1cfc590 ERROR                default video-frame.c:142:gst_vid
    
    in the gnonlin testsuite
    
    Signed-off-by: Niv Sardi <xaiki@evilgiggle.com>
Comment 1 Niv Sardi 2013-01-18 01:09:46 UTC
(got cut...)

    this is found tracking a bug in gnonlin, negociate actually calls ->set_allocation.
    gst_base_src_negociate:
    -\ gst_base_src_prepare_allocation (GstBaseSrc * basesrc, GstCaps * caps)
    --\ gst_base_src_set_allocation
    
    if it's not called, no buffer pool is asociated with the element, and the allocation fail as they get the wrong size. (is that a bug too ?).
    
    anyway, this shuts up the error:
    0:00:00.299381517 17157      0x1cfc590 ERROR                default video-frame.c:142:gst_video_frame_map_id: invalid buffer size 4096 < 115200
    
    in the gnonlin testsuite
Comment 2 Olivier Crête 2013-01-24 03:10:35 UTC
*** Bug 687793 has been marked as a duplicate of this bug. ***
Comment 3 Olivier Crête 2013-01-24 03:35:18 UTC
You should call gst_pad_mark_reconfigure(pad) instead of touching the flags directly.
Comment 4 Niv Sardi 2013-01-24 04:35:30 UTC
Created attachment 234275 [details] [review]
0002-gst_base_src_loop-set-NEED_RECONFIGURE-flag-if-negoc.patch

    update0: use gst_pad_mark_reconfigure (pad) thanks to Olivier Crête
Comment 5 Wim Taymans 2013-01-24 11:23:10 UTC
commit d285109a5cba6afe5632cdafea71da2b1be6612c
Author: Niv Sardi <xaiki@evilgiggle.com>
Date:   Thu Jan 17 21:43:25 2013 -0300

    basesrc: set NEED_RECONFIGURE flag if negotiate fails
    
    When negotiation fails, mark the pad as needing a reconfigure again so
    that it gets picked up again next time.
    
    Signed-off-by: Niv Sardi <xaiki@evilgiggle.com>
    
    Fixes https://bugzilla.gnome.org/show_bug.cgi?id=691986