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 384140 - [neonhttpsrc] id3demux autoplug loop streaming mp3 with ID3v2 tag
[neonhttpsrc] id3demux autoplug loop streaming mp3 with ID3v2 tag
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
git master
Other All
: Normal normal
: 0.10.4
Assigned To: Tim-Philipp Müller
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2006-12-09 19:09 UTC by Frank Scholz
Modified: 2006-12-12 12:46 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
debug log (206.32 KB, application/octet-stream)
2006-12-09 19:15 UTC, Frank Scholz
Details

Description Frank Scholz 2006-12-09 19:09:53 UTC
Please describe the problem:
the command used is

$ gst-launch-0.10 playbin uri=http://host/file
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Caught interrupt -- handling interrupt.
Interrupt: Setting pipeline to PAUSED ...
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...

From my Python app:

Playing: http://192.168.213.200:30020/QejmeqSHLozklDpXBycN/12555
play <--
on_message <gst.Message GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_VOID_PENDING from player at 0x834e510>
on_message <gst.Message GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_PAUSED from test at 0x834e710>
on_message <gst.Message GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_VOID_PENDING from fakesink at 0x834e750>
on_message <gst.Message GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_VOID_PENDING from typefind at 0x834e790>
on_message <gst.Message GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_PAUSED from decodebin0 at 0x834e818>
on_message <gst.Message GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING from typefind at 0x834e858>
on_message <gst.Message GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_PAUSED from source at 0x834e898>
on_message <gst.Message GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING from source at 0x834e8d8>
on_message <gst.Message GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_VOID_PENDING from id3demux0 at 0x834ea98>
on_message <gst.Message GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING from id3demux0 at 0x834ead8>
on_message <gst.Message GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_VOID_PENDING from id3demux1 at 0x834eb18>
on_message <gst.Message GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING from id3demux1 at 0x834eb58>
on_message <gst.Message taglist, artist=(string)"Jimmy\ Somerville\ -\ Bronski\ Beat\ And\ The\ Communards", album=(string)"The\ very\ Best\ Of\ Jimmy\ Somerville\ -\ Bronski\ Beat\ And\ The\ Communards" from id3demux0 at 0x834eb98>
on_message <gst.Message GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_VOID_PENDING from id3demux2 at 0x840b800>
on_message <gst.Message GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING from id3demux2 at 0x840b840>
on_message <gst.Message taglist, artist=(string)"Jimmy\ Somerville\ -\ Bronski\ Beat\ And\ The\ Communards", album=(string)"The\ very\ Best\ Of\ Jimmy\ Somerville\ -\ Bronski\ Beat\ And\ The\ Communards" from id3demux1 at 0x840b880>

I'll attach a debug log from

GST_DEBUG_NO_COLOR=1 GST_DEBUG=*:5  gst-launch-0.10 playbin uri=http://192.168.213.200:30020/QejmeqSHLozklDpXBycN/12555  2>dbg.log

as soon as I find out how I can do this.

Thx,
dev



Steps to reproduce:
1. 
2. 
3. 


Actual results:


Expected results:


Does this happen every time?
yes

Other information:
Comment 1 Frank Scholz 2006-12-09 19:15:43 UTC
Created attachment 78044 [details]
debug log
Comment 2 Frank Scholz 2006-12-09 19:22:02 UTC
the file actually plays fine when accessed via file:///...
Comment 3 Frank Scholz 2006-12-09 21:39:05 UTC
To be more specific, the problem above happens when the neonhttpsrc
(CVS/CVS+patch in 375264) is used.

After adding the gnomevfssrc to the plugins the file could be played.

Nevertheless I would like to abstain from gnomevfssrc due to its dependencies.
Comment 4 Tim-Philipp Müller 2006-12-12 11:16:33 UTC
Can reproduce with neonhttpsrc. Two problems here:

 - neonhttpsrc does not set the offset on the first buffer to 0, this
   confuses id3demux

 - id3demux doesn't handle a first buffer with a non-zero offset very
   smartly
Comment 5 Tim-Philipp Müller 2006-12-12 12:46:41 UTC
 2006-12-12  Tim-Philipp Müller  <tim at centricular dot net>

        * ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_create),
        (send_request_and_redirect):
          Set offset on buffers pushed out (id3demux gets confused if the
          first buffer does not have an offset of 0). Fixes #384140.