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 649369 - basesrc: do not set first buffer timestamp to 0 for live sources
basesrc: do not set first buffer timestamp to 0 for live sources
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
git master
Other All
: Normal normal
: 0.10.34
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2011-05-04 12:44 UTC by Vincent Penquerc'h
Modified: 2011-05-12 17:17 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
basesrc: do not set first buffer timestamp to 0 for live sources (1.08 KB, patch)
2011-05-04 12:44 UTC, Vincent Penquerc'h
none Details | Review
Uses is_live directly (1.06 KB, patch)
2011-05-04 14:23 UTC, Vincent Penquerc'h
committed Details | Review

Description Vincent Penquerc'h 2011-05-04 12:44:41 UTC
Created attachment 187182 [details] [review]
basesrc: do not set first buffer timestamp to 0 for live sources

Doing so avoids a large timestamp gap between first and second buffer
for live sources which take time to start up.
The first buffer now has a "live" timestamp based on the running time,
as other buffers do.
Comment 1 Edward Hervey 2011-05-04 13:10:47 UTC
do we need to go through the gst_base_src_is_live() method (instead of just checking ->is_live) at that point ? It would avoid taking/releasing the object lock.

Otherwise it makes sense
Comment 2 Vincent Penquerc'h 2011-05-04 14:23:49 UTC
Created attachment 187195 [details] [review]
Uses is_live directly

Updated to use is_live directly.
Comment 3 Sebastian Dröge (slomo) 2011-05-05 15:15:50 UTC
Do we want this in 0.10.33?
Comment 4 Tim-Philipp Müller 2011-05-12 17:16:43 UTC
I've pushed this now for the quick-fix 0.10.34 release (since we're doing one anyway, we may just as well put this in):

 commit 03050fd71ddede6980440ec205678b068f84a738
 Author: Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
 Date:   Wed May 4 15:31:56 2011 +0300

    basesrc: do not set first buffer timestamp to 0 for live sources
    
    Doing so avoids a large timestamp gap between first and second buffer
    for live sources which take time to start up.
    The first buffer now has a "live" timestamp based on the running time,
    as other buffers do.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=649369

Some more context:

<tpm> that basesrc is-live timestamp patch, what exactly does it actually fix? (what elements?)
<v> my particular case was a shmsrc. It would emit its first buffer a while after being started.
<v> The first buffer would get retimstamped to 0, and the second would have its 23 seconds timestamp left.