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 701519 - videomixer: pushes an incorrect segment event when all its sink pads are EOS
videomixer: pushes an incorrect segment event when all its sink pads are EOS
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
git master
Other Linux
: Normal normal
: 1.1.2
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2013-06-03 12:51 UTC by Mathieu Duponchelle
Modified: 2013-06-12 16:27 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Mathieu Duponchelle 2013-06-03 12:51:00 UTC
Sebastian Dröge asked me to implement that in commit 2d3910fc7901b5f29e16c0fdd4e9067a6d7f66fe , but I think it is not correct. May'be it should indeed push a segment event at that moment, but not with these values. Reverting this patch solves a problem I was experiencing here, with videomixer hanging when going from one clip to another. What do you think ?
Comment 1 Nicolas Dufresne (ndufresne) 2013-06-03 15:37:50 UTC
I should have mentionned that it might also be because GNLComposition compute the accumulation (segment->base) uppon segment event rather then EOS event. There is multiple segment event per actual segment, but only 1 EOS.

Just to double check (because my first impression is that the values should be good), it would be nice to move the base time calculation into the EOS handling. Will require caching the last seen segment (this mean the segment event that comes before EOS will be considered as an update from now on instead of being accumulated), and using that last segment to compute the new base.
Comment 2 Sebastian Dröge (slomo) 2013-06-04 15:42:07 UTC
So the event's values are correct and you just do accumulation on every segment event in gnonlin? In gnonlin's case it would make sense to just do the accumulation at EOS and nowhere else.
Comment 3 Sebastian Dröge (slomo) 2013-06-12 16:26:39 UTC
commit 01cc493944d1c0036d80243bea4d63ea79c33013
Author: Sebastian Dröge <slomo@circular-chaos.org>
Date:   Wed Jun 12 18:23:46 2013 +0200

    Revert "videomixer: When all sinkpads are eos, update output segment stop and forward it"
    
    This reverts commit 2d3910fc7901b5f29e16c0fdd4e9067a6d7f66fe.
    
    It's not solving any problem and instead causes code to fall apart.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=701519