[Bug 708345] liveadder: round when calculation length from duration

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Sat Sep 28 04:31:55 PDT 2013


https://bugzilla.gnome.org/show_bug.cgi?id=708345
  GStreamer | gst-plugins-bad | git

Sebastian Dröge (slomo) <slomo> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|HEAD                        |1.3.1

--- Comment #1 from Sebastian Dröge (slomo) <slomo at circular-chaos.org> 2013-09-28 11:31:48 UTC ---
commit 93ec45a6dfaa9fb0047742fb85314c4946b35070
Author: Michael Olbrich <m.olbrich at pengutronix.de>
Date:   Wed Sep 18 17:51:26 2013 +0200

    liveadder: round when calculation length from duration

    liveadder sometimes calculates the offsets incorrectly before adding. The
    resulting errors can easily be heard when mixing silence with a sine.
    I'm not sure what the exact conditions are to trigger this, but it
definitively
    happens when the buffers of two streams have a different duration and
buffer
    length and duration don't match exactly for one stream because of rounding
    errors (e.g.  duration=0:00:00.021333333)

    I have to admit, I got lost in the math somewhere but it seems that not
    rounding in gst_live_adder_length_from_duration() causes 1 sample overlaps
in
    consecutive buffers from the same stream.
    When using gst_util_uint64_scale_int_round() instead of just truncating the
    sine sound correctly again.

    https://bugzilla.gnome.org/show_bug.cgi?id=708345

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list