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 588205 - Pipeline with giostreamsrc will not enter playing state
Pipeline with giostreamsrc will not enter playing state
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
0.10.22
Other All
: Normal normal
: 0.10.24
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2009-07-09 23:40 UTC by W. Michael Petullo
Modified: 2009-07-10 05:22 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Test program that demonstrated the behavior documented in this report. (3.46 KB, text/plain)
2009-07-09 23:41 UTC, W. Michael Petullo
Details

Description W. Michael Petullo 2009-07-09 23:40:33 UTC
Please describe the problem:
I am having trouble developing an application that makes use of giostreamsrc.

I've attached a simplified program that operates similarly to how my  
application does. The only big difference is that I don't provide a  
"new-buffer" callback to appsink (whereas my application does).  
Despite this, the test program seems to exhibit the same behavior as  
my application:

./a.out short.mp3, a very short MP3 (2-3 seconds):
Seems to work. Prints "done."

./a.out typical.mp3, an MP3 of typical length:
Seemingly endless:
[...]
0:00:27.070157260 18595  0x82e04c0 INFO              GST_PADS gstpad.c: 
1805:gst_pad_link_prepare: trying to link id3demux197:src and  
id3demux198:sink
0:00:27.070805108 18595  0x82e04c0 INFO              GST_PADS gstpad.c: 
1942:gst_pad_link: linked id3demux197:src and id3demux198:sink,  
successful
0:00:27.071398759 18595  0x82e04c0 INFO      GST_ELEMENT_PADS  
gstelement.c:882:gst_element_get_static_pad: no such pad 'src' in  
element "id3demux198"
0:00:27.158970528 18595  0x82e04c0 INFO     typefindfunctions  
gsttypefindfunctions.c:906:mp3_type_find_at_offset: audio/mpeg  
calculated 86  =  100  *  5 / 5  *  (10000 - 1325) / 10000
0:00:27.236719538 18595  0x82e04c0 INFO               default  
gsttypefindhelper.c:186:helper_find_peek: typefind function returned:  
unexpected
0:00:27.288706606 18595  0x82e04c0 INFO      GST_ELEMENT_PADS  
gstelement.c:639:gst_element_add_pad:<id3demux198> adding pad 'src'
0:00:27.290270213 18595  0x82e04c0 INFO   GST_ELEMENT_FACTORY  
gstelementfactory.c:399:gst_element_factory_create: creating element  
"id3demux"
0:00:27.291146023 18595  0x82e04c0 INFO      GST_ELEMENT_PADS  
gstelement.c:639:gst_element_add_pad:<GstTagDemux@0x840d4f8> adding  
pad 'sink'
0:00:27.291785211 18595  0x82e04c0 INFO      GST_ELEMENT_PADS  
gstelement.c:885:gst_element_get_static_pad: found pad id3demux199:sink
0:00:27.292784500 18595  0x82e04c0 INFO            GST_STATES  
gstelement.c:2150:gst_element_continue_state:<id3demux199> completed  
state change to READY
0:00:27.293315853 18595  0x82e04c0 INFO            GST_STATES  
gstelement.c:2163:gst_element_continue_state:<id3demux199> posting  
state-changed NULL to READY
[...]

./a.out foo.ogg, a typical OGG Vorbis file:
[...]
0:00:00.485567715 18590  0x8b9d768 WARN              oggdemux  
gstoggdemux.c:2377:gst_ogg_demux_read_chain:<oggdemux0> page is not  
BOS page
0:00:00.492683705 18590  0x8b9d768 WARN              oggdemux  
gstoggdemux.c:2399:gst_ogg_demux_read_chain:<oggdemux0> no chain was  
found
0:00:00.493087387 18590  0x8b9d768 WARN              oggdemux  
gstoggdemux.c:2758:gst_ogg_demux_find_chains:<oggdemux0> error: can't  
get first chain
0:00:00.493919616 18590  0x8b9d768 INFO      GST_ERROR_SYSTEM  
gstelement.c:1675:gst_element_message_full:<oggdemux0> posting  
message: Could not demultiplex stream.
0:00:00.494615236 18590  0x8b9d768 INFO      GST_ERROR_SYSTEM  
gstelement.c:1698:gst_element_message_full:<oggdemux0> posted error  
message: Could not demultiplex stream.
0:00:00.495798068 18590  0x8b9d768 WARN              oggdemux  
gstoggdemux.c:3151:gst_ogg_demux_loop:<oggdemux0> error: Internal data  
stream error.
0:00:00.496323554 18590  0x8b9d768 WARN              oggdemux  
gstoggdemux.c:3151:gst_ogg_demux_loop:<oggdemux0> error: stream  
stopped, reason error
0:00:00.496935084 18590  0x8b9d768 INFO      GST_ERROR_SYSTEM  
gstelement.c:1675:gst_element_message_full:<oggdemux0> posting  
message: Internal data stream error.
0:00:00.497469789 18590  0x8b9d768 INFO      GST_ERROR_SYSTEM  
gstelement.c:1698:gst_element_message_full:<oggdemux0> posted error  
message: Internal data stream error.
0:00:00.498426615 18590  0x8ac94c0 INFO            GST_STATES gstbin.c: 
2355:gst_bin_change_state_func:<pipeline> child 'src' changed state to  
3(PAUSED) successfully
0:00:00.499175593 18590  0x8ac94c0 INFO            GST_STATES gstbin.c: 
1659:gst_bin_get_state_func:<pipeline> getting state
0:00:00.499767568 18590  0x8ac94c0 INFO            GST_STATES  
gstelement.c:1898:gst_element_get_state_func:<pipeline> waiting for  
element to commit state
0:00:05.499873727 18590  0x8ac94c0 INFO            GST_STATES  
gstelement.c:1902:gst_element_get_state_func:<pipeline> timed out

** (a.out:18590): WARNING **: State change failed for stream.

** (a.out:18590): WARNING **: done


Steps to reproduce:




Actual results:


Expected results:


Does this happen every time?


Other information:
Comment 1 W. Michael Petullo 2009-07-09 23:41:49 UTC
Created attachment 138161 [details]
Test program that demonstrated the behavior documented in this report.
Comment 2 W. Michael Petullo 2009-07-09 23:43:06 UTC
This bug seems to be fixed by:

commit b9c79380aa07e3cf2c00a190bbbcb0b0c252df96
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Thu Jul 9 13:45:13 2009 +0200

   gio: Make sure that we have the correct stream position when starting