<div dir="ltr"><div>I am providing more details. It looks like that after the pipeline is set to "GST_STATE_PAUSED" state, "gst_base_src_loop" in gstbasesrc.c stopped being called. And it doesn't come back after the pipeline is in "PLAYING" state. "gst_base_src_loop" is initiated by gst_pad_start_task(), but I don't see either gst_pad_pause_task() or gst_pad_stop_task() called. Under what other circumstances will the task stop calling "gst_base_src_loop"?<br>
<br>Note that souphttpsrc's activitiy also stopped when "gst_base_src_loop" stopped being called.<br><br>I am attaching some debugging messages below.<br><br></div>Regards,<br><br>Lei<br><div><br>0:00:04.998506599 8962 0x91fb830 LOG souphttpsrc gstsouphttpsrc.c:1252:gst_soup_http_src_do_request:<radsrc> Running request for method: GET<br>
0:00:04.998541527 8962 0x91fb830 DEBUG souphttpsrc gstsouphttpsrc.c:1024:gst_soup_http_src_chunk_allocator:<radsrc> alloc 4096 bytes <= 4294967295<br>0:00:04.998579523 8962 0x91fb830 DEBUG souphttpsrc gstsouphttpsrc.c:1065:gst_soup_http_src_got_chunk_cb:<radsrc> got chunk of 121 bytes<br>
0:00:04.998612366 8962 0x91fb830 DEBUG basesrc gstbasesrc.c:2247:gst_base_src_do_sync:<radsrc> we have no clock<br>0:00:04.998630439 8962 0x91fb830 DEBUG basesrc gstbasesrc.c:2451:gst_base_src_get_range:<radsrc> buffer ok<br>
0:00:04.998651368 8962 0x91fb830 LOG basesrc gstbasesrc.c:2663:gst_base_src_loop:<radsrc> next_ts 0:00:00.000019577 size 4096<br>0:00:04.998672255 8962 0x91fb830 DEBUG basesrc gstbasesrc.c:2290:gst_base_src_update_length:<radsrc> reading offset 19577, length 4096, size -1, segment.stop -1, maxsize -1<br>
0:00:04.998692216 8962 0x91fb830 DEBUG basesrc gstbasesrc.c:2388:gst_base_src_get_range:<radsrc> calling create offset 19577 length 4096, time 0<br>0:00:04.998711542 8962 0x91fb830 LOG souphttpsrc gstsouphttpsrc.c:1252:gst_soup_http_src_do_request:<radsrc> Running request for method: GET<br>
0:00:04.998741419 8962 0x91fb830 DEBUG souphttpsrc gstsouphttpsrc.c:1024:gst_soup_http_src_chunk_allocator:<radsrc> alloc 4096 bytes <= 4294967295<br>0:00:04.998800031 8962 0x91fb830 DEBUG souphttpsrc gstsouphttpsrc.c:1065:gst_soup_http_src_got_chunk_cb:<radsrc> got chunk of 903 bytes<br>
0:00:04.998834142 8962 0x91fb830 DEBUG basesrc gstbasesrc.c:2247:gst_base_src_do_sync:<radsrc> we have no clock<br>0:00:04.998852145 8962 0x91fb830 DEBUG basesrc gstbasesrc.c:2451:gst_base_src_get_range:<radsrc> buffer ok<br>
0:00:04.998874038 8962 0x91fb830 LOG basesrc gstbasesrc.c:2663:gst_base_src_loop:<radsrc> next_ts 0:00:00.000020480 size 4096<br>0:00:04.998895617 8962 0x91fb830 DEBUG basesrc gstbasesrc.c:2290:gst_base_src_update_length:<radsrc> reading offset 20480, length 4096, size -1, segment.stop -1, maxsize -1<br>
0:00:04.998916734 8962 0x91fb830 DEBUG basesrc gstbasesrc.c:2388:gst_base_src_get_range:<radsrc> calling create offset 20480 length 4096, time 0<br>0:00:04.998935617 8962 0x91fb830 LOG souphttpsrc gstsouphttpsrc.c:1252:gst_soup_http_src_do_request:<radsrc> Running request for method: GET<br>
0:00:04.998947902 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1928:gst_base_src_default_event:<rheasrc> handle event reconfigure event: 0xae612ee0, time 99:99:99.999999999, seq-num 112, (NULL)<br>0:00:04.998967444 8962 0x91fb830 DEBUG souphttpsrc gstsouphttpsrc.c:1024:gst_soup_http_src_chunk_allocator:<radsrc> alloc 4096 bytes <= 4294967295<br>
0:00:04.998972891 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1928:gst_base_src_default_event:<radsrc> handle event reconfigure event: 0xae612ee0, time 99:99:99.999999999, seq-num 112, (NULL)<br>0:00:04.999013485 8962 0x91fb830 DEBUG souphttpsrc gstsouphttpsrc.c:1065:gst_soup_http_src_got_chunk_cb:<radsrc> got chunk of 121 bytes<br>
0:00:04.999045634 8962 0x91fb830 DEBUG basesrc gstbasesrc.c:2247:gst_base_src_do_sync:<radsrc> we have no clock<br>0:00:04.999063940 8962 0x91fb830 DEBUG basesrc gstbasesrc.c:2451:gst_base_src_get_range:<radsrc> buffer ok<br>
0:00:04.999084627 8962 0x91fb830 DEBUG basesrc gstbasesrc.c:3151:gst_base_src_negotiate:<radsrc> starting negotiation<br>0:00:04.999108442 8962 0x91fb830 DEBUG basesrc gstbasesrc.c:1248:gst_base_src_default_query:<radsrc> query caps returns 1<br>
0:00:04.999130342 8962 0x91fb830 DEBUG basesrc gstbasesrc.c:3081:gst_base_src_default_negotiate:<radsrc> caps of src: ANY<br>0:00:04.999148551 8962 0x91fb830 DEBUG basesrc gstbasesrc.c:3127:gst_base_src_default_negotiate:<radsrc> no negotiation needed<br>
0:00:05.000215382 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1928:gst_base_src_default_event:<rheasrc> handle event reconfigure event: 0xae612f18, time 99:99:99.999999999, seq-num 117, (NULL)<br>0:00:05.000246042 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1928:gst_base_src_default_event:<radsrc> handle event reconfigure event: 0xae612f18, time 99:99:99.999999999, seq-num 117, (NULL)<br>
0:00:05.000293225 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1928:gst_base_src_default_event:<rheasrc> handle event reconfigure event: 0xae612f50, time 99:99:99.999999999, seq-num 122, (NULL)<br>0:00:05.000309605 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1928:gst_base_src_default_event:<radsrc> handle event reconfigure event: 0xae612f50, time 99:99:99.999999999, seq-num 122, (NULL)<br>
0:00:05.002367895 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1928:gst_base_src_default_event:<rheasrc> handle event reconfigure event: 0xae612f88, time 99:99:99.999999999, seq-num 127, (NULL)<br>0:00:05.002400398 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1928:gst_base_src_default_event:<radsrc> handle event reconfigure event: 0xae612f88, time 99:99:99.999999999, seq-num 127, (NULL)<br>
0:00:05.002523781 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1011:gst_base_src_default_query:<rheasrc> duration query in format bytes<br>0:00:05.002540197 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:2290:gst_base_src_update_length:<rheasrc> reading offset 0, length 0, size 9898556, segment.stop -1, maxsize 9898556<br>
0:00:05.002559563 8962 0x91fba30 LOG basesrc gstbasesrc.c:1036:gst_base_src_default_query:<rheasrc> duration 9898556, format bytes<br>0:00:05.002572706 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1248:gst_base_src_default_query:<rheasrc> query duration returns 1<br>
0:00:05.002611822 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1248:gst_base_src_default_query:<rheasrc> query seeking returns 1<br>0:00:05.002637542 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1011:gst_base_src_default_query:<rheasrc> duration query in format time<br>
0:00:05.002648676 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:2290:gst_base_src_update_length:<rheasrc> reading offset 0, length 0, size 9898556, segment.stop -1, maxsize 9898556<br>0:00:05.002661903 8962 0x91fba30 LOG basesrc gstbasesrc.c:1036:gst_base_src_default_query:<rheasrc> duration 9898556, format bytes<br>
0:00:05.002676227 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1248:gst_base_src_default_query:<rheasrc> query convert returns 0<br>0:00:05.002688619 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1248:gst_base_src_default_query:<rheasrc> query duration returns 0<br>
0:00:05.002702194 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1011:gst_base_src_default_query:<radsrc> duration query in format time<br>0:00:05.002712775 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:2290:gst_base_src_update_length:<radsrc> reading offset 0, length 0, size -1, segment.stop -1, maxsize -1<br>
0:00:05.002725089 8962 0x91fba30 LOG basesrc gstbasesrc.c:1036:gst_base_src_default_query:<radsrc> duration -1, format bytes<br>0:00:05.002736267 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1248:gst_base_src_default_query:<radsrc> query duration returns 1<br>
0:00:05.003000748 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1928:gst_base_src_default_event:<rheasrc> handle event reconfigure event: 0xae613120, time 99:99:99.999999999, seq-num 140, (NULL)<br>0:00:05.003029170 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1928:gst_base_src_default_event:<radsrc> handle event reconfigure event: 0xae613120, time 99:99:99.999999999, seq-num 140, (NULL)<br>
0:00:05.003244157 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1928:gst_base_src_default_event:<rheasrc> handle event reconfigure event: 0xae613158, time 99:99:99.999999999, seq-num 145, (NULL)<br>0:00:05.003272560 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1928:gst_base_src_default_event:<radsrc> handle event reconfigure event: 0xae613158, time 99:99:99.999999999, seq-num 145, (NULL)<br>
0:00:05.003468077 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1928:gst_base_src_default_event:<rheasrc> handle event reconfigure event: 0xae613210, time 99:99:99.999999999, seq-num 151, (NULL)<br>0:00:05.003495689 8962 0x91fba30 DEBUG basesrc gstbasesrc.c:1928:gst_base_src_default_event:<radsrc> handle event reconfigure event: 0xae613210, time 99:99:99.999999999, seq-num 151, (NULL)<br>
</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Mar 19, 2014 at 4:42 PM, Lei Miao <span dir="ltr"><<a href="mailto:leimiao09@gmail.com" target="_blank">leimiao09@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div><div><div><div><div><div><div>Hi,<br><br></div>I am having troubles to port a plugin from 0.10 to 1.2.0. Basically, this plugin decrypts audio data fetched by souphttpsrc, and it is working well in 0.10. <br>
<br></div>Currently in 1.2.0, I am able to add a playbin and a sink to a pipeline, and all necessary elements seem to be identified correctly. I am also able to set the pipeline's state to "GST_STATE_PAUSED" and then to "GST_STATE_PLAYING". However, there is no audio output in the GST_STATE_PLAYING state. I have tried to examine the debug outputs. Here are the findings:<br>
<br></div>1. No GstBuffer activities when the pipeline is in GST_STATE_PLAYING state. There is some GstBuffer activities before that, and souphttpsrc is able to fetch some data before entering GST_STATE_PLAYING state too.<br>
<br></div>2. I am seeing query activities when the pipeline is in GST_STATE_PLAYING state.<br><br></div>3. The application cannot get duration and position: <br>"playbin gstplaybin2.c:2654:gst_play_bin_query:<playbin> Taking cached duration because of pending group switch: 1"<br>
<br></div>4. I am seeing the following message when the pipeline's state is changed to GST_STATE_PLAYING: <br>"gst_segment_to_stream_time: assertion 'segment->format == format' failed"<br><br></div>
5. "seekable" query result is false. It used to be true in 0.10.<br><br></div>Does anybody know what might be wrong? Any guesses are welcome. I can post more specific information if needed.<br><br></div>Regards,<br>
<br>LM<br><div><div><div><br></div></div></div></div>
</blockquote></div><br></div>