[Bug 654844] dts streams with non monotonically increasing timestamps from mkv containers sound broken
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Mon Nov 28 03:01:49 PST 2011
https://bugzilla.gnome.org/show_bug.cgi?id=654844
GStreamer | don't know | 0.10.34
Stefan Sauer (gstreamer, gtkdoc dev) <ensonic> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #192249|none |needs-work
status| |
--- Comment #6 from Stefan Sauer (gstreamer, gtkdoc dev) <ensonic at sonicpulse.de> 2011-11-28 11:01:44 UTC ---
Review of attachment 192249:
--> (https://bugzilla.gnome.org/review?bug=654844&attachment=192249)
::: ext/dts/gstdtsdec.c
@@ +810,3 @@
GST_TIME_ARGS (GST_BUFFER_DURATION (buf)));
+
+ /* There are two possible bugs: time from container can be bigger als,
s/als/as/
@@ +811,3 @@
+
+ /* There are two possible bugs: time from container can be bigger als,
+ * real time of stream, so there is silent; or less, then it is an
s/so so there is silent/so that there is silence/
@@ +813,3 @@
+ * real time of stream, so there is silent; or less, then it is an
+ * overlap */
+ /* time overlap - contaniers timestamp is defenetly brocken.
s/contaniers/containers/
s/defenetly/definitively/
s/brocken/broken/
@@ +814,3 @@
+ * overlap */
+ /* time overlap - contaniers timestamp is defenetly brocken.
+ * Ignor it as long as possible,
s/Ignor/Ignore/
@@ +816,3 @@
+ * Ignor it as long as possible,
+ * for example: 4096 samples = 16 * 256 dts blocks */
+ if (container_ts + sample_time * 4096 < dts->time) {
It would be nice to have a simple define somewhere for the tolerance. Could be
in audio.h / video.h. Do we need different values for audio/video?
Anyway I think this should be in time and not in samples.
@@ +818,3 @@
+ if (container_ts + sample_time * 4096 < dts->time) {
+ GST_DEBUG_OBJECT (dts, "overlaping samples: %lli",
+ /* time overlap - contaniers timestamp is defenetly brocken.
please use the GLIB macros "samples %"G_GINT64_TIME_FORMAT, GST_CLOCK_DIFF(...)
@@ +824,3 @@
+ /* we can tollerate small GAPs */
+ GST_DEBUG_OBJECT (dts, "GAP samples: %lli",
+ if (container_ts + sample_time * 4096 < dts->time) {
here too.
--
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