[gstreamer-bugs] [Bug 540300] New: [souphttpsrc] souphttpsrc does not seek ahead in http stream

GStreamer (bugzilla.gnome.org) bugzilla-daemon at bugzilla.gnome.org
Thu Jun 26 04:29:48 PDT 2008


If you have any questions why you received this email, please see the text at
the end of this email. Replies to this email are NOT read, please see the text
at the end of this email. You can add comments to this bug at:
  http://bugzilla.gnome.org/show_bug.cgi?id=540300

  GStreamer | gst-plugins-good | Ver: HEAD CVS
           Summary: [souphttpsrc] souphttpsrc does not seek ahead in http
                    stream
           Product: GStreamer
           Version: HEAD CVS
          Platform: Other
        OS/Version: All
            Status: UNCONFIRMED
          Severity: major
          Priority: Normal
         Component: gst-plugins-good
        AssignedTo: gstreamer-bugs at lists.sourceforge.net
        ReportedBy: BugZilla at zx2c4.com
         QAContact: gstreamer-bugs at lists.sourceforge.net
     GNOME version: Unspecified
   GNOME milestone: Unspecified


Please describe the problem:
When seeking ahead in a streaming mp3 over http with souphttpsrc, the song
immediately comes to a stop instead of seeking ahead, and reports that it
cannot play the file.

Debugging log of this:
0:00:17.206289766  3069 0x93d27b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:804:gst_soup_http_src_got_chunk_cb:<souphttpsrc0> got chunk of
4096 bytes
0:00:17.269479990  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1070:gst_soup_http_src_unlock:<souphttpsrc0> unlock()
0:00:17.269771996  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1085:gst_soup_http_src_unlock_stop:<souphttpsrc0>
unlock_stop()
0:00:17.269989971  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1121:gst_soup_http_src_do_seek:<souphttpsrc0> do_seek(24864)
0:00:17.271205209  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1070:gst_soup_http_src_unlock:<souphttpsrc0> unlock()
0:00:17.271390987  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1085:gst_soup_http_src_unlock_stop:<souphttpsrc0>
unlock_stop()
0:00:17.271539539  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1121:gst_soup_http_src_do_seek:<souphttpsrc0> do_seek(93312)
0:00:17.273910371  3069 0x93d27b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:764:gst_soup_http_src_chunk_allocator:<souphttpsrc0> alloc
4096 bytes <= 5491594
0:00:17.274174092  3069 0x93d27b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:804:gst_soup_http_src_got_chunk_cb:<souphttpsrc0> got chunk of
4096 bytes
0:00:17.277144162  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1070:gst_soup_http_src_unlock:<souphttpsrc0> unlock()
0:00:17.277383229  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1085:gst_soup_http_src_unlock_stop:<souphttpsrc0>
unlock_stop()
0:00:17.277567749  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1121:gst_soup_http_src_do_seek:<souphttpsrc0> do_seek(138944)
0:00:17.281744328  3069 0x93d27b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:764:gst_soup_http_src_chunk_allocator:<souphttpsrc0> alloc
4096 bytes <= 5487498
0:00:17.282059102  3069 0x93d27b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:804:gst_soup_http_src_got_chunk_cb:<souphttpsrc0> got chunk of
4096 bytes
0:00:17.285654322  3069 0x93d27b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:764:gst_soup_http_src_chunk_allocator:<souphttpsrc0> alloc
4096 bytes <= 5483402
0:00:17.286480893  3069 0x93d27b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:804:gst_soup_http_src_got_chunk_cb:<souphttpsrc0> got chunk of
4096 bytes
0:00:17.331547305  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1070:gst_soup_http_src_unlock:<souphttpsrc0> unlock()
0:00:17.331608417  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1085:gst_soup_http_src_unlock_stop:<souphttpsrc0>
unlock_stop()
0:00:17.331635864  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1121:gst_soup_http_src_do_seek:<souphttpsrc0> do_seek(321456)
0:00:17.332419344  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1070:gst_soup_http_src_unlock:<souphttpsrc0> unlock()
0:00:17.332602747  3069 0x93d27b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:696:gst_soup_http_src_finished_cb:<souphttpsrc0> finished
0:00:17.332639414  3069 0x93d27b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:843:gst_soup_http_src_response_cb:<souphttpsrc0> got response
1: Cancelled
0:00:17.332717356  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1085:gst_soup_http_src_unlock_stop:<souphttpsrc0>
unlock_stop()
0:00:17.332777210  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1121:gst_soup_http_src_do_seek:<souphttpsrc0> do_seek(777760)
0:00:17.335225147  3069 0x93d27b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:972:gst_soup_http_src_create:<souphttpsrc0> Reconnecting
0:00:17.335309725  3069 0x93d27b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:985:gst_soup_http_src_create:<souphttpsrc0> Queueing
connection request
0:00:17.336278843  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1070:gst_soup_http_src_unlock:<souphttpsrc0> unlock()
0:00:17.336348544  3069 0x93d27b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:696:gst_soup_http_src_finished_cb:<souphttpsrc0> finished
0:00:17.336375852  3069 0x93d27b0 WARN           souphttpsrc
gstsouphttpsrc.c:708:gst_soup_http_src_finished_cb:<souphttpsrc0> error:
Cancelled
0:00:17.336397503  3069 0x93d27b0 WARN           souphttpsrc
gstsouphttpsrc.c:708:gst_soup_http_src_finished_cb:<souphttpsrc0> error:
libsoup status code 1
0:00:17.336496608  3069 0x93d27b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:843:gst_soup_http_src_response_cb:<souphttpsrc0> got response
1: Cancelled
0:00:17.336558976  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1085:gst_soup_http_src_unlock_stop:<souphttpsrc0>
unlock_stop()
0:00:17.336598506  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1121:gst_soup_http_src_do_seek:<souphttpsrc0> do_seek(914640)
0:00:17.339719992  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1070:gst_soup_http_src_unlock:<souphttpsrc0> unlock()
0:00:17.340002221  3069 0x93d27b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:696:gst_soup_http_src_finished_cb:<souphttpsrc0> finished
0:00:17.340166697  3069 0x93d27b0 WARN           souphttpsrc
gstsouphttpsrc.c:708:gst_soup_http_src_finished_cb:<souphttpsrc0> error:
Cancelled
0:00:17.340316507  3069 0x93d27b0 WARN           souphttpsrc
gstsouphttpsrc.c:708:gst_soup_http_src_finished_cb:<souphttpsrc0> error:
libsoup status code 1
0:00:17.340494951  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1085:gst_soup_http_src_unlock_stop:<souphttpsrc0>
unlock_stop()
0:00:17.340672976  3069 0x80687b0 DEBUG          souphttpsrc
gstsouphttpsrc.c:1051:gst_soup_http_src_stop:<souphttpsrc0> stop()


However, if I change line 951 from:

if (src->session_io_status == GST_SOUP_HTTP_SRC_SESSION_IO_STATUS_IDLE) {

to:

if (TRUE) {

seeking works *if I do not seek ahead too quickly*.

Somewhere along the way src->session_io_status is not being put in the correct
state. Or, src->session_io_status is not an proper way of deciding.


Steps to reproduce:


Actual results:


Expected results:


Does this happen every time?


Other information:


-- 
See http://bugzilla.gnome.org/page.cgi?id=email.html for more info about why you received
this email, why you can't respond via email, how to stop receiving
emails (or reduce the number you receive), and how to contact someone
if you are having problems with the system.

You can add comments to this bug at http://bugzilla.gnome.org/show_bug.cgi?id=540300.




More information about the Gstreamer-bugs mailing list