<div>Hi Edward and All, Please give your kind help.</div>
<div>last week, I raised the question about &quot;question about seek on HTTP wav stream over either neonhttpsrc or gnomevfssrc.&quot;</div>
<div>thanks Edward respond with below advices, i tried these steps, but seems there are problem too.</div>
<div>Just make sure i understand this advice well, i attached my codes and logs at the end of mail:</div>
<div>&nbsp;</div>
<div>the steps from Edward:</div>
<div><em><font style="BACKGROUND-COLOR: #ffff66">This is not specific to http, but common to any non-live pipeline. The<br>problem is that the state change to PAUSED/PLAYING happens<br>asynchronously. What you want to do is the following:</font></em></div>

<div><em><font style="BACKGROUND-COLOR: #ffff66">&nbsp;* set state to PAUSED<br>&nbsp;* WAIT (in the mainloop or polling) for the confirmation that the<br>pipeline has changed state to PAUSED. This means that all sinks are<br>prerolled (one buffer is waiting in each sink) and the pipeline is fully<br>
responsive to seeks/playback/...<br>&nbsp;* Do your seek.<br>&nbsp;* You don&#39;t need to wait for the pipeline to be pre-rolled (PAUSED)<br>again to set it to PLAYING, you can straight away set it to PLAYING.</font></em></div>
<div><em><font style="BACKGROUND-COLOR: #ffff66">&nbsp;You might also want to listen for ERROR/EOS messages on the pipeline<br>bus, because although the remote http uri accepts seeks according to its<br>headers (which is why the seek would return True), many things could go<br>
wrong in between also.</font></em></div>
<div>-<em><font style="BACKGROUND-COLOR: #ffff66">&nbsp;&nbsp; Edward</font></em></div>
<div>&nbsp;</div>
<div><br>This question cause me several days without final idea.</div>
<p>My purpose is to seek on HTTP wav stream over either neonhttpsrc or<br>gnomevfssrc(, maybe there are other plugin).<br>But the problem is seek cannot jump to the position which i want to seek and<br>cannot change the state.<br>
with error:</p>
<p>&lt;neonhttpsrc&gt; pausing after gst_pad_push() = wrong-state<br>basesink gstbasesink.c:2099:gst_base_sink_render_object:&lt;alsasink0&gt; do_sync<br>returned wrong-state</p>
<p><br>I first give my codes logic, then with the debug logs.<br>The gst version on my FEDORA 8<br>gstreamer.i386&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0.10.15-1.fc8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; installed<br>gstreamer-devel.i386&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0.10.15-1.fc8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; installed<br>
gstreamer-ffmpeg.i386&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0.10.3-7.fc8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; installed<br>gstreamer-plugins-bad.i386&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0.10.5-16.fc8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; installed<br>gstreamer-plugins-base.i386&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0.10.15-4.fc8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; installed<br>
gstreamer-plugins-base-devel.i386&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0.10.15-4.fc8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; installed<br>gstreamer-plugins-good.i386&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0.10.6-7.fc8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; installed<br>gstreamer-plugins-pulse.i386&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0.9.5-0.4.svn20070924. installed<br>
gstreamer-plugins-ugly.i386&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0.10.6-6.fc8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; installed<br>gstreamer-python.i386&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0.10.8-2.fc8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; installed<br>gstreamer-tools.i386&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0.10.15-1.fc8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; installed<br>
codes logic:<br>-------------------------------------------------------------------------------------------<br>&nbsp;&nbsp; const char *src_name = &quot;neonhttpsrc&quot;;</p>
<p>&nbsp;&nbsp; memset(&amp;(renderer-&gt;audioDecoder), 0, sizeof(renderer-&gt;audioDecoder));<br>&nbsp;&nbsp; memset(pHttpDecoder, 0, sizeof(*pHttpDecoder));<br>&nbsp;&nbsp; renderer-&gt;selectionFlag |= pkSTREAM_SELECTION_FLAG_AUDIO;<br>&nbsp;&nbsp; renderer-&gt;audioDecoder.pipeline =<br>
gst_pipeline_new(&quot;pcm-decoder-over-http&quot;);<br>&nbsp;//1. open src:<br>&nbsp;&nbsp; pHttpDecoder-&gt;fakesrc = gst_element_factory_make(src_name,src_name);<br>&nbsp;&nbsp; if(!(pHttpDecoder-&gt;fakesrc))<br>&nbsp;&nbsp; {<br>&nbsp;&nbsp; }<br>&nbsp;&nbsp; g_object_set (G_OBJECT (pHttpDecoder-&gt;fakesrc), &quot;location&quot;, pcszUrl,<br>
NULL);</p>
<p><br>&nbsp;&nbsp; //2. open wavparse<br>&nbsp;&nbsp; pHttpDecoder-&gt;decoder = gst_element_factory_make(&quot;wavparse&quot;,<br>&quot;wavparse0&quot;);</p>
<p>&nbsp;&nbsp; //3. open audioconvert<br>&nbsp;&nbsp; pHttpDecoder-&gt;convert = gst_element_factory_make(&quot;audioconvert&quot;,<br>&quot;audioconvert0&quot;);<br>&nbsp;&nbsp; //4. open audioconvert<br>&nbsp;&nbsp; pHttpDecoder-&gt;aresample = gst_element_factory_make(&quot;audioresample&quot;,<br>
&quot;audioresample0&quot;);<br>&nbsp;&nbsp; //5. open alsasink<br>&nbsp;&nbsp; pHttpDecoder-&gt;audiosink = gst_element_factory_make(&quot;alsasink&quot;,<br>&quot;alsasink0&quot;);<br>&nbsp;&nbsp; /* Setup pipeline */<br>&nbsp;&nbsp; gst_bin_add_many(GST_BIN(renderer-&gt;audioDecoder.pipeline),<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pHttpDecoder-&gt;fakesrc,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pHttpDecoder-&gt;decoder,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pHttpDecoder-&gt;convert,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pHttpDecoder-&gt;aresample,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pHttpDecoder-&gt;audiosink, NULL);<br>&nbsp;&nbsp; gst_element_link_many(pHttpDecoder-&gt;fakesrc, pHttpDecoder-&gt;decoder,<br>
NULL);<br>&nbsp;&nbsp; gst_element_link_many(pHttpDecoder-&gt;decoder, pHttpDecoder-&gt;convert,<br>NULL);</p>
<p>&nbsp;&nbsp; g_signal_connect(pHttpDecoder-&gt;decoder, &quot;pad-added&quot;,<br>G_CALLBACK(NewPad_Cb), pHttpDecoder-&gt;convert);</p>
<p>&nbsp;&nbsp; gst_element_link_many(pHttpDecoder-&gt;convert, pHttpDecoder-&gt;aresample,<br>pHttpDecoder-&gt;audiosink, NULL);<br>&nbsp;&nbsp; gst_element_set_state(pipeline, GST_STATE_PAUSED);<br>&nbsp;&nbsp; for(index=0; index &lt; 5; index++)<br>
&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gst_element_get_state (pipeline, &amp;cur_state, NULL, 1 * GST_SECOND);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ( WaitchangeToState != cur_state )<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {break;}<br>&nbsp;&nbsp; }<br>&nbsp;&nbsp; // begin seek.<br>&nbsp;&nbsp; b_seek_result = gst_element_seek (audiosink, 1.0, format, SeekFlags ,<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_SEEK_TYPE_SET, time_nanoseconds,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_SEEK_TYPE_NONE, GST_CLOCK_TIME_NONE);</p>
<p>&nbsp;&nbsp; gst_element_set_state(hRenderer-&gt;audioDecoder.pipeline,<br>GST_STATE_PLAYING);</p>
<p><br>-------------------------------------------------------------------------------------------<br>logs:</p>
<p>-------------------------------------------------------------------------------------------</p>
<p>0:00:26.600566000 32405 0xb9dc3e0 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>gstbasesink.c:1718:gst_base_sink_do_sync:&lt;alsasink0&gt; non syncable object<br>0x8ccb278<br>0:00:26.600574000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_EVENT<br>
gstpad.c:4214:gst_pad_send_event:&lt;audioresample0:sink&gt; have event type 19<br>(FLUSH_START)<br>0:00:26.600577000 32405 0xb9dc3e0 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>gstbasesink.c:2057:gst_base_sink_render_object:&lt;alsasink0&gt; rendering event<br>
0x8ccb278, type newsegment<br>0:00:26.600584000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_EVENT<br>gstpad.c:4220:gst_pad_send_event:&lt;audioresample0:sink&gt; set flush flag<br>0:00:26.600589000 32405 0xb9dc3e0 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; baseaudiosink<br>
gstbaseaudiosink.c:629:gst_base_audio_sink_event:&lt;alsasink0&gt; new segment<br>rate of 1.000000<br>0:00:26.600596000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_EVENT<br>gstpad.c:4214:gst_pad_send_event:&lt;alsasink0:sink&gt; have event type 19<br>
(FLUSH_START)<br>0:00:26.600610000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_EVENT<br>gstpad.c:4220:gst_pad_send_event:&lt;alsasink0:sink&gt; set flush flag<br>0:00:26.600606000 32405 0xb9dc3e0 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>gstbasesink.c:1122:gst_base_sink_configure_segment:&lt;alsasink0&gt; configured<br>
NEWSEGMENT update 0, rate 1.000000, applied rate 1.000000, format<br>GST_FORMAT_TIME, 0:00:00.000000000 -- 0:04:42.906660998, time<br>0:00:00.000000000, accum 0:00:00.000000000<br>0:00:26.600623000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>
gstbasesink.c:2309:gst_base_sink_event:&lt;alsasink0&gt; event 0x8ccb2c8<br>(flush-start)<br>0:00:26.600639000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ringbuffer<br>gstringbuffer.c:1112:gst_ring_buffer_clear_all:&lt;audiosinkringbuffer0&gt; clear<br>
all segments<br>0:00:26.600641000 32405 0xb9dc3e0 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>gstbasesink.c:2091:gst_base_sink_render_object:&lt;alsasink0&gt; object unref<br>after render 0x8ccb278<br>0:00:26.600661000 32405 0xb9dc3e0 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>
gstbasesink.c:2215:gst_base_sink_queue_object_unlocked:&lt;alsasink0&gt; rendering<br>queued object 0x8d054a0<br>0:00:26.600662000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ringbuffer<br>gstringbuffer.c:866:gst_ring_buffer_pause_unlocked:&lt;audiosinkringbuffer0&gt;<br>
pausing ringbuffer<br>0:00:26.600674000 32405 0xb9dc3e0 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>gstbasesink.c:1718:gst_base_sink_do_sync:&lt;alsasink0&gt; non syncable object<br>0x8d054a0<br>0:00:26.600680000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ringbuffer<br>
gstringbuffer.c:895:gst_ring_buffer_pause_unlocked:&lt;audiosinkringbuffer0&gt;<br>was not started<br>0:00:26.600684000 32405 0xb9dc3e0 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>gstbasesink.c:2057:gst_base_sink_render_object:&lt;alsasink0&gt; rendering event<br>
0x8d054a0, type tag<br>0:00:26.600690000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>gstbasesink.c:2375:gst_base_sink_event:&lt;alsasink0&gt; flush-start 0x8ccb2c8<br>0:00:26.600694000 32405 0xb9dc3e0 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>
gstbasesink.c:2091:gst_base_sink_render_object:&lt;alsasink0&gt; object unref<br>after render 0x8d054a0<br>0:00:26.600751000 32405 0xb9dc3e0 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>gstbasesink.c:1344:gst_base_sink_get_sync_times:&lt;alsasink0&gt; got times start:<br>
0:00:00.000000000, stop: 0:00:00.023219955, do_sync 0<br>0:00:26.600764000 32405 0xb9dc3e0 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>gstbasesink.c:1653:gst_base_sink_do_sync:&lt;alsasink0&gt; prerolling object<br>0xb9ddca0<br>0:00:26.600777000 32405 0xb9dc3e0 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>
gstbasesink.c:1506:gst_base_sink_wait_preroll:&lt;alsasink0&gt; waiting in preroll<br>for flush or PLAYING<br>0:00:26.600792000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>gstbasesink.c:2713:gst_base_sink_set_flushing:&lt;alsasink0&gt; flushing out data<br>
thread, need preroll to TRUE<br>0:00:26.600802000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>gstbasesink.c:1067:gst_base_sink_preroll_queue_flush:&lt;alsasink0&gt; flushing<br>queue 0xb9ac040<br>0:00:26.600820000 32405 0xb9dc3e0 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>
gstbasesink.c:1519:gst_base_sink_wait_preroll:&lt;alsasink0&gt; preroll<br>interrupted<br>0:00:26.600830000 32405 0xb9dc3e0 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>gstbasesink.c:1723:gst_base_sink_do_sync:&lt;alsasink0&gt; we are flushing<br>
0:00:26.600839000 32405 0xb9dc3e0 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>gstbasesink.c:2099:gst_base_sink_render_object:&lt;alsasink0&gt; do_sync returned<br>wrong-state<br>0:00:26.600848000 32405 0xb9dc3e0 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>
gstbasesink.c:2091:gst_base_sink_render_object:&lt;alsasink0&gt; object unref<br>after render 0xb9ddca0<br>0:00:26.600862000 32405 0xb9dc3e0 WARN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; wavparse<br>gstwavparse.c:1645:gst_wavparse_stream_data:&lt;wavparse0&gt; Error pushing on<br>
srcpad 0xb99e630, is linked? = 1<br>0:00:26.600873000 32405 0xb9dc3e0 INFO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesrc<br>gstbasesrc.c:2054:gst_base_src_loop:&lt;neonhttpsrc&gt; pausing after<br>gst_pad_push() = wrong-state<br>0:00:26.600885000 32405 0xb9dc3e0 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesrc<br>
gstbasesrc.c:2080:gst_base_src_loop:&lt;neonhttpsrc&gt; pausing task, reason<br>wrong-state<br>0:00:26.600887000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_STATES<br>gstelement.c:2209:gst_element_lost_state:&lt;alsasink0&gt; lost state of PAUSED to<br>
PAUSED<br>0:00:26.600900000 32405 0xb9dc3e0 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_PADS<br>gstpad.c:4394:gst_pad_pause_task:&lt;neonhttpsrc:src&gt; pause task<br>0:00:26.600912000 32405 0xb9dc3e0 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; task<br>gsttask.c:476:gst_task_pause:&lt;task0&gt; Pausing task 0xb859948<br>
0:00:26.600910000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_BUS<br>gstbus.c:337:gst_bus_post:&lt;bus0&gt; [msg 0x8d0e158] posting on bus, type<br>state-changed, GstMessageState, old-state=(GstState)GST_STATE_PAUSED,<br>new-state=(GstState)GST_STATE_PAUSED,<br>
pending-state=(GstState)GST_STATE_PAUSED; from source &lt;alsasink0&gt;<br>0:00:26.600939000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bin<br>gstbin.c:2699:gst_bin_handle_message_func:&lt;pcm-decoder-over-http&gt; [msg<br>0x8d0e158] handling child alsasink0 message of type state-changed<br>
0:00:26.600949000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bin<br>gstbin.c:2903:gst_bin_handle_message_func:&lt;pcm-decoder-over-http&gt; posting<br>message upward<br>0:00:26.600960000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_BUS<br>
gstbus.c:337:gst_bus_post:&lt;bus1&gt; [msg 0x8d0e158] posting on bus, type<br>state-changed, GstMessageState, old-state=(GstState)GST_STATE_PAUSED,<br>new-state=(GstState)GST_STATE_PAUSED,<br>pending-state=(GstState)GST_STATE_PAUSED; from source &lt;alsasink0&gt;<br>
0:00:26.600986000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_BUS<br>gstbus.c:367:gst_bus_post:&lt;bus1&gt; [msg 0x8d0e158] pushing on async queue<br>0:00:26.600998000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_BUS<br>gstbus.c:372:gst_bus_post:&lt;bus1&gt; [msg 0x8d0e158] pushed on async queue<br>
0:00:26.601008000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_BUS<br>gstbus.c:363:gst_bus_post:&lt;bus0&gt; [msg 0x8d0e158] dropped<br>0:00:26.601022000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_BUS<br>gstbus.c:337:gst_bus_post:&lt;bus0&gt; [msg 0x8d0e198] posting on bus, type<br>
async-start, GstMessageAsyncStart, new-base-time=(boolean)true; from source<br>&lt;alsasink0&gt;<br>0:00:26.601043000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pipeline<br>gstpipeline.c:326:reset_stream_time:&lt;pcm-decoder-over-http&gt; reset<br>
stream_time to 0<br>0:00:26.601053000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bin<br>gstbin.c:2699:gst_bin_handle_message_func:&lt;pcm-decoder-over-http&gt; [msg<br>0x8d0e198] handling child alsasink0 message of type async-start<br>
0:00:26.601065000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bin<br>gstbin.c:2833:gst_bin_handle_message_func:&lt;pcm-decoder-over-http&gt;<br>ASYNC_START message 0x8d0e198, alsasink0<br>0:00:26.601075000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bin<br>
gstbin.c:739:find_message:&lt;pcm-decoder-over-http&gt; no message found matching<br>types 00100000<br>0:00:26.601085000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bin<br>gstbin.c:775:bin_replace_message:&lt;pcm-decoder-over-http&gt; got new message<br>
0x8d0e198, async-start from alsasink0<br>0:00:26.601095000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_STATES<br>gstbin.c:2464:bin_handle_async_start:&lt;pcm-decoder-over-http&gt; lost state of<br>PAUSED, new PAUSED<br>0:00:26.601109000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_BUS<br>
gstbus.c:337:gst_bus_post:&lt;bus1&gt; [msg 0x8d0e1d8] posting on bus, type<br>state-changed, GstMessageState, old-state=(GstState)GST_STATE_PAUSED,<br>new-state=(GstState)GST_STATE_PAUSED,<br>pending-state=(GstState)GST_STATE_PAUSED; from source<br>
&lt;pcm-decoder-over-http&gt;<br>0:00:26.601136000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_BUS<br>gstbus.c:367:gst_bus_post:&lt;bus1&gt; [msg 0x8d0e1d8] pushing on async queue<br>0:00:26.601146000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_BUS<br>
gstbus.c:372:gst_bus_post:&lt;bus1&gt; [msg 0x8d0e1d8] pushed on async queue<br>0:00:26.601158000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_BUS<br>gstbus.c:363:gst_bus_post:&lt;bus0&gt; [msg 0x8d0e198] dropped<br>0:00:26.601172000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_PADS<br>
gstpad.c:4261:gst_pad_send_event:&lt;alsasink0:sink&gt; sent event, result 1<br>0:00:26.601183000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_PADS<br>gstpad.c:4261:gst_pad_send_event:&lt;audioresample0:sink&gt; sent event, result 1<br>
0:00:26.601193000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_PADS<br>gstpad.c:4261:gst_pad_send_event:&lt;audioconvert0:sink&gt; sent event, result 1<br>0:00:26.601202000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; wavparse<br>gstwavparse.c:800:gst_wavparse_perform_seek:&lt;wavparse0&gt; stopped streaming at<br>
23219955<br>0:00:26.601212000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; wavparse<br>gstwavparse.c:809:gst_wavparse_perform_seek:&lt;wavparse0&gt; configuring seek<br>0:00:26.601221000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; wavparse<br>
gstwavparse.c:819:gst_wavparse_perform_seek:&lt;wavparse0&gt; cur_type =2<br>0:00:26.601244000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; query<br>gstquery.c:371:gst_query_new: creating new query 0x8d9b4e0 2<br>0:00:26.601256000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_PADS<br>
gstpad.c:3053:gst_pad_query:&lt;neonhttpsrc:src&gt; sending query 0x8d9b4e0<br>0:00:26.601268000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesrc<br>gstbasesrc.c:776:gst_base_src_default_query:&lt;neonhttpsrc&gt; duration query in<br>
format bytes<br>0:00:26.601283000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesrc<br>gstbasesrc.c:884:gst_base_src_default_query:&lt;neonhttpsrc&gt; query duration<br>returns 1<br>0:00:26.601295000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; wavparse<br>
gstwavparse.c:868:gst_wavparse_perform_seek:&lt;wavparse0&gt; seek: offset<br>17992828, end 49904764, segment 0:01:42.000000000 -- 0:04:42.906660998<br>0:00:26.601307000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; wavparse<br>gstwavparse.c:874:gst_wavparse_perform_seek:&lt;wavparse0&gt; sending flush stop<br>
0:00:26.601317000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_EVENT<br>gstevent.c:286:gst_event_new: creating new event 0x8ccb2f0 flush-stop 39<br>0:00:26.601329000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_EVENT<br>gstpad.c:4224:gst_pad_send_event:&lt;audioconvert0:sink&gt; cleared flush flag<br>
0:00:26.601341000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_EVENT<br>gstpad.c:4224:gst_pad_send_event:&lt;audioresample0:sink&gt; cleared flush flag<br>0:00:26.601351000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp; libaudioresample<br>resample.c:130:resample_input_flush: flush<br>
0:00:26.601364000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_EVENT<br>gstpad.c:4224:gst_pad_send_event:&lt;alsasink0:sink&gt; cleared flush flag<br>0:00:26.601374000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>gstbasesink.c:2309:gst_base_sink_event:&lt;alsasink0&gt; event 0x8ccb2f0<br>
(flush-stop)<br>0:00:26.601384000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ringbuffer<br>gstringbuffer.c:1112:gst_ring_buffer_clear_all:&lt;audiosinkringbuffer0&gt; clear<br>all segments<br>0:00:26.601399000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; basesink<br>
gstbasesink.c:2404:gst_base_sink_event:&lt;alsasink0&gt; flush-stop 0x8ccb2f0<br>0:00:26.601413000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_PADS<br>gstpad.c:4261:gst_pad_send_event:&lt;alsasink0:sink&gt; sent event, result 1<br>
0:00:26.601424000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_PADS<br>gstpad.c:4261:gst_pad_send_event:&lt;audioresample0:sink&gt; sent event, result 1<br>0:00:26.601442000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_PADS<br>gstpad.c:4261:gst_pad_send_event:&lt;audioconvert0:sink&gt; sent event, result 1<br>
0:00:26.601451000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; wavparse<br>gstwavparse.c:906:gst_wavparse_perform_seek:&lt;wavparse0&gt; Creating newsegment<br>from 102000000000 to 282906660998<br>0:00:26.601463000 32405 0x8cb5560 INFO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_EVENT<br>
gstevent.c:528:gst_event_new_new_segment_full: creating newsegment update 0,<br>rate 1.000000, format GST_FORMAT_TIME, start 0:01:42.000000000, stop<br>0:04:42.906660998, position 0:01:42.000000000<br>0:00:26.601482000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_EVENT<br>
gstevent.c:286:gst_event_new: creating new event 0x8ccb318 newsegment 102<br>0:00:26.601495000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; wavparse<br>gstwavparse.c:918:gst_wavparse_perform_seek:&lt;wavparse0&gt; mark DISCONT, we did<br>
a seek to another position<br>0:00:26.601508000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_PADS<br>gstpad.c:4261:gst_pad_send_event:&lt;wavparse0:src&gt; sent event, result 1<br>0:00:26.601526000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_PADS<br>
gstpad.c:4261:gst_pad_send_event:&lt;audioconvert0:src&gt; sent event, result 1<br>0:00:26.601539000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_PADS<br>gstpad.c:4261:gst_pad_send_event:&lt;audioresample0:src&gt; sent event, result 1<br>
():Line[2361]: Seek success!<br>():LINE[2507] seeking returned result 0<br>0:00:26.601558000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_STATES<br>gstelement.c:2283:gst_element_set_state_func:&lt;pcm-decoder-over-http&gt;<br>set_state to PLAYING<br>
0:00:26.601568000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_STATES<br>gstelement.c:2319:gst_element_set_state_func:&lt;pcm-decoder-over-http&gt; current<br>PAUSED, old_pending PAUSED, next PAUSED, old return ASYNC<br>0:00:26.601579000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_STATES<br>
gstelement.c:2373:gst_element_set_state_func:&lt;pcm-decoder-over-http&gt; element<br>was busy with async state change<br>0:00:26.601591000 32405 0x8cb5560 INFO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_STATES<br>gstbin.c:1537:gst_bin_get_state_func:&lt;pcm-decoder-over-http&gt; getting state<br>
0:00:26.601600000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_STATES<br>gstelement.c:1840:gst_element_get_state_func:&lt;pcm-decoder-over-http&gt; getting<br>state, timeout 0:00:01.000000000<br>0:00:26.601615000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_STATES<br>
gstelement.c:1845:gst_element_get_state_func:&lt;pcm-decoder-over-http&gt; RETURN<br>is ASYNC<br>0:00:26.601625000 32405 0x8cb5560 INFO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_STATES<br>gstelement.c:1881:gst_element_get_state_func:&lt;pcm-decoder-over-http&gt; waiting<br>
for element to commit state<br>0:00:27.601655000 32405 0x8cb5560 INFO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_STATES<br>gstelement.c:1885:gst_element_get_state_func:&lt;pcm-decoder-over-http&gt; timed<br>out<br>0:00:27.601688000 32405 0x8cb5560 DEBUG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GST_STATES<br>
gstelement.c:1918:gst_element_get_state_func:&lt;pcm-decoder-over-http&gt; state<br>current: PAUSED, pending: PLAYING, result: ASYNC<br>():Line[2512]: cur_state is 3<br>&nbsp;returned with retVal 0x(0)</p>