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 719660 - asfdemux: some dvr-ms files don't play
asfdemux: some dvr-ms files don't play
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-ugly
git master
Other All
: Normal normal
: 1.3.3
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2013-12-01 19:54 UTC by Matej Knopp
Modified: 2014-05-26 07:57 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Patch to ignore the first 0 timestamp if next timestamp is significantly larger (2.55 KB, patch)
2013-12-01 19:54 UTC, Matej Knopp
committed Details | Review

Description Matej Knopp 2013-12-01 19:54:40 UTC
Created attachment 263249 [details] [review]
Patch to ignore the first 0 timestamp if next timestamp is significantly larger

The issue is timestamp of first packet, which is 0, while the rest of the timestamps are much larger (couple of hours). The first timestamp should have been -1, but for some reason is 0, which means that the rest of the timestamps are not properly adjusted and there is a huge gap in resulting timestamps.

However the 0 timestamp can not always be discarded (as -1 would be), because there are files where the first 0 timestamp is valid (and the rest of the timestamps are counting from it)

I haven't found a "proper" way to distinguish between those two cases unfortunately. The patch fixes this by discarding the 0 timestamp if the gap between it and the second timestamp is larger than one second.
Comment 1 Matej Knopp 2013-12-01 19:55:01 UTC
Unfortunately I can't submit a sample file as the only sample file that I have is over 2 gigabytes.
Comment 2 Tim-Philipp Müller 2013-12-01 23:45:17 UTC
For what it's worth, the first few MB might be enough to reproduce the issue. ASF is a streaming format, there's just headers followed by packets.
Comment 3 Matej Knopp 2013-12-02 00:45:09 UTC
That's a good point. I did cut a small sample file, available here
https://s3.amazonaws.com/MatejK/Samples/timestamp-problem.dvr-ms

The duration will be reported wrong of course, but the issue should be reproducible.
Comment 4 Sebastian Dröge (slomo) 2014-05-26 07:57:24 UTC
commit eb6569625198ceff40736360758a242aa6031e00
Author: Matej Knopp <matej.knopp@gmail.com>
Date:   Sun Dec 1 20:53:03 2013 +0100

    asfdemux: Handle initial 0 timestamp that should have been -1
    
    https://bugzilla.gnome.org/show_bug.cgi?id=719660