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 648991 - asfdemux: infinite loop
asfdemux: infinite loop
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-ugly
git master
Other Linux
: Normal critical
: NONE
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2011-04-29 23:02 UTC by Nicola
Modified: 2012-02-18 20:04 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Nicola 2011-04-29 23:02:13 UTC
using a pipeline like this:

gst-launch-0.10 -m -v -t souphttpsrc timeout=8 location=http://10.144.52.40:9001  ! asfdemux ! ffdec_wmv1 ! ffmpegcolorspace ! xvimagesink sync=false

the video freeze after about 100 seconds and the log show an infinite loop:

0:01:43.218376920  9657      0x1974920 INFO               GST_EVENT gstevent.c:890:gst_event_new_qos_full: creating qos type 0, proportion 1,984084, diff 0, timestamp 0:00:52.962000000
0:01:43.378362224  9657      0x1974920 INFO               GST_EVENT gstevent.c:890:gst_event_new_qos_full: creating qos type 0, proportion 1,987020, diff 0, timestamp 0:00:53.046000000
0:01:43.504233480  9657      0x1974920 WARN                asfdemux asfpacket.c:494:gst_asf_demux_parse_packet:<asfdemux0> unexpected error correction length type 2
0:01:43.504248845  9657      0x1974920 WARN                asfdemux gstasfdemux.c:2054:gst_asf_demux_get_stream: Segment found for undefined stream: (75)
0:01:43.504259042  9657      0x1974920 WARN                asfdemux asfpacket.c:345:gst_asf_demux_parse_payload:<asfdemux0> Payload for unknown stream 75, skipping
0:01:43.504268191  9657      0x1974920 WARN                asfdemux gstasfdemux.c:2054:gst_asf_demux_get_stream: Segment found for undefined stream: (89)
0:01:43.504277061  9657      0x1974920 WARN                asfdemux asfpacket.c:345:gst_asf_demux_parse_payload:<asfdemux0> Payload for unknown stream 89, skipping
0:01:43.504285582  9657      0x1974920 WARN                asfdemux gstasfdemux.c:2054:gst_asf_demux_get_stream: Segment found for undefined stream: (103)
0:01:43.504294242  9657      0x1974920 WARN                asfdemux asfpacket.c:345:gst_asf_demux_parse_payload:<asfdemux0> Payload for unknown stream 103, skipping
0:01:43.504302693  9657      0x1974920 WARN                asfdemux gstasfdemux.c:2054:gst_asf_demux_get_stream: Segment found for undefined stream: (81)
0:01:43.504311004  9657      0x1974920 WARN                asfdemux asfpacket.c:345:gst_asf_demux_parse_payload:<asfdemux0> Payload for unknown stream 81, skipping
0:01:43.504319385  9657      0x1974920 WARN                asfdemux gstasfdemux.c:2054:gst_asf_demux_get_stream: Segment found for undefined stream: (20)
0:01:43.504327836  9657      0x1974920 WARN                asfdemux asfpacket.c:345:gst_asf_demux_parse_payload:<asfdemux0> Payload for unknown stream 20, skipping
0:01:43.504336147  9657      0x1974920 WARN                asfdemux gstasfdemux.c:2054:gst_asf_demux_get_stream: Segment found for undefined stream: (35)


these logs are repeated over and over and the video remains freezed (I waited for about 5 minutes)

using a pipeline like this:

gst-launch-0.10 -m -v -t souphttpsrc timeout=8 location=http://10.144.52.40:9001 ! asfparse ! asfdemux ! ffdec_wmv1 ! ffmpegcolorspace ! xvimagesink sync=false

cause the following error:

0:01:46.115616098  9780      0x17fd400 INFO               GST_EVENT gstevent.c:890:gst_event_new_qos_full: creating qos type 0, proportion 2,000368, diff 0, timestamp 0:00:56.409000000
0:01:46.200936664  9780      0x17fd400 WARN                 default gstasfobjects.c:616:gst_asf_parse_packet: Packet size (payload=406874269 + padding=7242) doesn't match expected size 1460
0:01:46.200962296  9780      0x17fd400 ERROR               asfparse gstasfparse.c:153:gst_asf_parse_parse_packet:<asfparse0> Error while parsing data packet
0:01:46.200981503  9780      0x17fd400 INFO                 basesrc gstbasesrc.c:2519:gst_base_src_loop:<souphttpsrc0> pausing after gst_pad_push() = error
0:01:46.201007972  9780      0x17fd400 WARN                 basesrc gstbasesrc.c:2582:gst_base_src_loop:<souphttpsrc0> error: Errore interno nel flusso di dati.
0:01:46.201026899  9780      0x17fd400 WARN                 basesrc gstbasesrc.c:2582:gst_base_src_loop:<souphttpsrc0> error: streaming task paused, reason error (-5)
Comment 1 Tim-Philipp Müller 2011-05-01 12:55:54 UTC
Maybe you could capture the stream for us, so we can replay it? e.g. something like:

  gst-launch-0.10 -e -v souphttpsrc location=http://10.144.52.40:9001  ! tee name=t \
      t. ! queue ! asfdemux ! ffdec_wmv1 ! ffmpegcolorspace ! xvimagesink sync=false \
      t. ! queue ! gdppay ! filesink location=648991-asf.gdp

Then wait for it to wedge/loop, and press Control-C after a while, then attach the .gdp file to this bug report please (hopefully it's <1MB).
Comment 2 Nicola 2011-05-02 08:39:00 UTC
your pipeline doesn't work:

/GstPipeline:pipeline0/GstTee:t: alloc-pad = (GstPad) src1
Ottenuto messaggio #45 dall'elemento "gdppay0" (error): GstMessageError, gerror=(GError)NULL, debug=(string)"gstgdppay.c\(674\):\ gst_gdp_pay_chain\ \(\):\ /GstPipeline:pipeline0/GstGDPPay:gdppay0:\012first\ received\ buffer\ does\ not\ have\ caps\ set";
ERRORE: dall'elemento /GstPipeline:pipeline0/GstGDPPay:gdppay0: Lo stream è nel formato errato.
Informazioni di debug aggiuntive:
gstgdppay.c(674): gst_gdp_pay_chain (): /GstPipeline:pipeline0/GstGDPPay:gdppay0:
first received buffer does not have caps set

this one work:

gst-launch-0.10 -v -m -t souphttpsrc location=http://10.144.52.40:9001 ! tee name=t t.! queue ! asfdemux ! ffdec_wmv1 ! ffmpegcolorspace ! xvimagesink sync=false t. ! queue ! asfdemux ! gdppay ! filesink location=648991-asf.gdp

but obviously when the video freeze nothing is written to the file.

I noticed that this pipeline can play the stream for several minutes:

gst-launch-0.10 -v -m -t souphttpsrc location=http://10.144.52.40:9001 ! queue ! ffdemux_asf ! ffdec_wmv1 ! ffmpegcolorspace ! xvimagesink sync=false

however with ffdemux_asf I have jerky video, is a network dump using curl  http://10.144.52.40:9001 > 648991.asf good?
Comment 3 Tim-Philipp Müller 2011-05-02 09:17:10 UTC
> your pipeline doesn't work:
> /GstPipeline:pipeline0/GstGDPPay:gdppay0:
> first received buffer does not have caps set

Ah, sorry. Try putting a typefind element in front of gdppay, ie.

  t. ! queue ! typefind ! gdppay ! filesink location=...
Comment 4 Akhil Laddha 2011-06-15 05:32:38 UTC
Nicola, do you have any update for the bug ?
Comment 5 Nicola 2011-06-15 09:45:51 UTC
you can reproduce the issue with the following file:

http://77.43.75.110/temp/648991-asf.gdp
Comment 6 Vincent Penquerc'h 2012-01-31 13:54:24 UTC
This works fine here, with current git:

gst-launch-0.10 filesrc location=648991-asf.gdp ! gdpdepay ! asfdemux ! ffdec_wmv1 ! ffmpegcolorspace ! xvimagesink sync=false

Do you still see the issue ?
Comment 7 Nicola 2012-01-31 14:14:23 UTC
yes my dump works with current git and doesn't work with the latest released version (it segfault with gstreamer from ubuntu oneiric and works with gst-uninstalled), so the problem seems solved.

I have no more access to that stream to do other tests,

Nicola