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 707130 - output-selector: Changes the start of the segment it sends to a pad when making it active
output-selector: Changes the start of the segment it sends to a pad when maki...
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
git master
Other Linux
: Normal normal
: 1.1.90
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2013-08-30 14:14 UTC by Mathieu Duponchelle
Modified: 2013-09-18 16:49 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Mathieu Duponchelle 2013-08-30 14:14:30 UTC
In GES, transition bins are now going to look like that :

http://antopics.fr/transition.svg

We switch output selector's active pads when we want to go from a crossfade to a smpte type transition.

The problem is that our first clip has a positive segment start now, for example 1 second. When switching the active pad, output selector does the right thing, which is sending a segment to the newly activated pad. However, before doing so, it sets segment start to the current position when resend last buffer is FALSE.

That sounds wrong, and videomixer has a problem with that, in that it then gets buffers with timestamps [1 second, ...], and when converting them to running time still gets 1 second, when it should in fact have 0 to match them with the other pad's timestamps. This leads to having these buffers dropped, and having only the second pad's buffers blended.

In my opinion, output selector should just not change the start of the segment because it's not his business. Changing position makes sense though afaiu.
Comment 1 Sebastian Dröge (slomo) 2013-09-02 11:56:33 UTC
commit 8ba5fb0b28f479b924b779095dc44d9504ce7ce5
Author: Sebastian Dröge <slomo@circular-chaos.org>
Date:   Mon Sep 2 13:53:51 2013 +0200

    outputselector: Don't adjust segment->start to the current time when switching pads
    
    This does not make any sense at all and breaks timestamp->running_time
    calculations in unpredictable ways.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=707130