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 599718 - [asf] support chained asfs
[asf] support chained asfs
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-ugly
git master
Other All
: Normal enhancement
: 0.10.16
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2009-10-27 00:26 UTC by Thiago Sousa Santos
Modified: 2010-06-24 22:50 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Chained asf (375.83 KB, video/x-ms-asf)
2009-10-27 20:46 UTC, Thiago Sousa Santos
  Details
Patch (9.50 KB, patch)
2009-10-27 20:52 UTC, Thiago Sousa Santos
none Details | Review

Description Thiago Sousa Santos 2009-10-27 00:26:58 UTC
While fixing #599333 we noticed we don't support chained ASFs. We should.

Currently, asfdemux doesn't notice a new asf started and just keeps posting warnings about wrong packets.
Comment 1 Thiago Sousa Santos 2009-10-27 00:30:57 UTC
An example stream that contains chained asfs: mms://195.245.168.21/haydn

Each ASF in this stream is long, it might take a while to happen.
Comment 2 Thiago Sousa Santos 2009-10-27 20:46:36 UTC
Created attachment 146371 [details]
Chained asf
Comment 3 Thiago Sousa Santos 2009-10-27 20:52:09 UTC
Created attachment 146372 [details] [review]
Patch

Patch for push supporting chained asfs in push mode (pay attention to this when testing with the file attached).

Unfortunatelly, it still doesn't work, asfdemux detects the new asf header and resets its state, but I don't know why the second stream doesn't play.
Comment 4 Thiago Sousa Santos 2009-11-10 13:29:58 UTC
Pushed some fixes that makes it work with local files and over http, but this particular mms stream still doesn't work.
Comment 5 Thiago Sousa Santos 2009-11-10 23:39:55 UTC
It seems that libmms sometimes gets a bogus packet (or interprets it wrong) and it leads to it storing negative offsets, once that happens, streaming ends up stopping.

 Not sure what to do here, as it seems libmms project is kind of dead.
Comment 6 Edward Hervey 2010-06-23 09:43:24 UTC
Any news on this ?
Comment 7 Thiago Sousa Santos 2010-06-23 23:50:25 UTC
In pull mode it plays both but seems to finish with an error and not EOS (easy to test with playbin2).

Tested push mode using decodebin2, it fails with not-negotiated, so I assume some switching is happening. I'll test this properly tomorrow by trying hacking uridecodebin to use filesrc in push mode.
Comment 8 Tim-Philipp Müller 2010-06-23 23:59:40 UTC
> I'll test this properly tomorrow by trying hacking
> uridecodebin to use filesrc in push mode.

uridecodebin uri=pushfile://...

should do the trick.
Comment 9 Thiago Sousa Santos 2010-06-24 22:50:05 UTC
This fixed it.

Module: gst-plugins-ugly
Branch: master
Commit: ec3b13a250633d9fd97729f359882000f7c2a524
URL:    http://cgit.freedesktop.org/gstreamer/gst-plugins-ugly/commit/?id=ec3b13a250633d9fd97729f359882000f7c2a524

Author: Thiago Santos <thiago.sousa.santos@collabora.co.uk>
Date:   Thu Jun 24 19:29:17 2010 -0300

asfdemux: Fix sending eos event for chained asfs

Properly push EOS event when finishing a chained asf file
in pull mode

Fixes #599718