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 525807 - [vorbisenc] vorbisenc has problems with a gnlsource that isn't starting from the beginning
[vorbisenc] vorbisenc has problems with a gnlsource that isn't starting from ...
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other Windows
: Normal normal
: 0.10.22
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2008-04-02 18:03 UTC by Klaas
Modified: 2008-10-08 12:07 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
source to reproduce (3.51 KB, text/plain)
2008-04-02 18:05 UTC, Klaas
  Details
suggested patch (4.01 KB, patch)
2008-04-02 18:26 UTC, Klaas
none Details | Review
updated suggested patch (4.12 KB, patch)
2008-04-03 15:57 UTC, Klaas
none Details | Review
updated suggested patch with adjusted granulepos (5.43 KB, patch)
2008-04-03 17:59 UTC, Klaas
committed Details | Review

Description Klaas 2008-04-02 18:03:03 UTC
Setup:
a gnlsource with a silence audiotestsrc (start: 0 second, duration: 1 second)
a gnlfilesource with a wav (start: 1 second, duration: 4 seconds)
add those to a gnlcomposition and feed it to a vorbisenc and oggmux.

Output:
0:00:00.343750000  3688 02511900 WARN               default :0::<enc> Buffer is older than previous timestamp + duration (0:00:00.000000000< 0:00:01.000000000), cannot handle. Dropping buffer.
0:00:00.390625000  3688 02511900 WARN               default :0::<enc> Buffer is older than previous timestamp + duration (0:00:00.370793650< 0:00:01.000000000), cannot handle. Dropping buffer.
0:00:00.421875000  3688 02511900 WARN               default :0::<enc> Buffer is older than previous timestamp + duration (0:00:00.742312925< 0:00:01.000000000), cannot handle. Dropping buffer.
0:00:00.468750000  3688 02511900 WARN               default :0::<enc> Buffer is discontinuous, flushing encoder and restarting (Discont from 0:00:00.41859410 to 0:00:01.113832199)
Comment 1 Klaas 2008-04-02 18:05:00 UTC
Created attachment 108484 [details]
source to reproduce
Comment 2 Klaas 2008-04-02 18:26:16 UTC
Created attachment 108486 [details] [review]
suggested patch
Comment 3 Klaas 2008-04-03 15:57:26 UTC
Created attachment 108551 [details] [review]
updated suggested patch
Comment 4 Klaas 2008-04-03 17:59:29 UTC
Created attachment 108561 [details] [review]
updated suggested patch with adjusted granulepos
Comment 5 Klaas 2008-04-14 13:51:22 UTC
This patch probably will have problems with variant bitrates
Comment 6 Sebastian Dröge (slomo) 2008-10-08 12:07:53 UTC
Thanks, this is committed now with quite some changes...

2008-10-08  Sebastian Dröge  <sebastian.droege@collabora.co.uk>

	Based on a patch by: Klaas <klaas at rivercrew dot net>

	* ext/vorbis/vorbisenc.c: (gst_vorbis_enc_sink_event),
	(gst_vorbis_enc_buffer_check_discontinuous),
	(gst_vorbis_enc_chain), (gst_vorbis_enc_change_state):
	* ext/vorbis/vorbisenc.h:
	Keep track of the upstream segments and use the running time on that
	segment instead of the buffer timestamp everywhere. Fixes bug #525807.