Timing out problem with souphttpsrc

Ian Daley ian at nian.com.au
Sun Feb 26 10:31:15 PST 2012


Further to this, please see below from the debug output.

On 02/27/2012 04:00 AM, Ian Daley wrote:
> Hi there,
>
> thanks for all the help so far... I think I have nearly got to the 
> bottom of it
>
> Now however, I have a problem with souphttpsrc and it just timing out 
> (without error)
>
> If you see the pipeline below... well it works and I am able to 
> capture the output reliably to a pipe except for one thing...
>
> After about 5 minutes, (usually between 5 to 7 minutes) the pipeline 
> just hangs. No errors, no feedback... it doesn't even say it has 
> paused... it just stops.
>
> gst-launch  souphttpsrc timeout=300 location="http://<ip 
> removed>/videostream.asf?user=admin&pwd=&resolution=24&rate=0" 
> do-timestamp=true is_live=true ! queue max-size-buffers=0 ! asfdemux 
> name=demux demux.audio_00 ! queue ! adpcmdec ! queue ! audioconvert ! 
> faac ! queue ! mux. demux.video_00 ! queue ! jpegdec ! queue ! 
> ffmpegcolorspace ! videorate ! 'video/x-raw-yuv,framerate=5/1' ! queue 
> ! x264enc byte-stream=true bitrate=256 ! queue ! mux. flvmux 
> name="mux" ! queue max-size-buffers=0 ! filesink location="/tmp/pipeV"
>
> I have tested this by catting the output and without fail it gets to 
> around the 5 ~ 6 minute mark and then just stalls with no feedback.
>
> If I remove the audio queue, it doesn't stall.

:06:14.849659719 12149      0x22a9f00 DEBUG               GST_PADS 
gstpad.c:2957:gst_pad_alloc_buffer_full:<queue0:src> offset 
18446744073709551615, size 4096, caps (NULL)
0:06:14.849685807 12149      0x22a9f00 DEBUG               GST_PADS 
gstpad.c:2878:gst_pad_buffer_alloc_unchecked:<demux:sink> calling 
bufferallocfunc &(NULL) (@(nil)) for size 4096 offset NONE
0:06:14.850739079 12149      0x22a9f00 DEBUG               GST_PADS 
gstpad.c:2927:gst_pad_buffer_alloc_unchecked:<demux:sink> fallback 
buffer alloc
0:06:14.850770864 12149      0x22a9f00 DEBUG            souphttpsrc 
gstsouphttpsrc.c:1003:gst_soup_http_src_got_chunk_cb:<souphttpsrc0> got 
chunk of 1356 bytes
0:06:14.850796541 12149      0x22a9f00 DEBUG              GST_CLOCK 
gstclock.c:848:gst_clock_get_internal_time:<GstSystemClock> internal 
time 630:20:34.210323221
0:06:14.850814463 12149      0x22a9f00 DEBUG              GST_CLOCK 
gstclock.c:893:gst_clock_get_time:<GstSystemClock> adjusted time 
630:20:34.210323221
0:06:14.850830648 12149      0x22a9f00 DEBUG                basesrc 
gstbasesrc.c:1953:gst_base_src_do_sync:<souphttpsrc0> no sync needed
0:06:14.850845261 12149      0x22a9f00 DEBUG                basesrc 
gstbasesrc.c:2120:gst_base_src_get_range:<souphttpsrc0> buffer ok
0:06:14.850863252 12149      0x22a9f00 DEBUG                basesrc 
gstbasesrc.c:1989:gst_base_src_update_length:<souphttpsrc0> reading 
offset 44360446, length 4096, size -1, segment.stop -1, maxsize -1
0:06:14.850880607 12149      0x22a9f00 DEBUG                basesrc 
gstbasesrc.c:2079:gst_base_src_get_range:<souphttpsrc0> calling create 
offset 44360446 length 4096, time 0
0:06:14.850907316 12149      0x22a9f00 DEBUG            souphttpsrc 
gstsouphttpsrc.c:964:gst_soup_http_src_chunk_allocator:<souphttpsrc0> 
alloc 4096 bytes <= 18446744073665191170
0:06:14.850925127 12149      0x22a9f00 DEBUG               GST_PADS 
gstpad.c:2957:gst_pad_alloc_buffer_full:<souphttpsrc0:src> offset 
18446744073709551615, size 4096, caps (NULL)
0:06:14.850944687 12149      0x22a9f00 DEBUG               GST_PADS 
gstpad.c:2878:gst_pad_buffer_alloc_unchecked:<queue0:sink> calling 
bufferallocfunc &gst_queue_bufferalloc (@0x7fecd40d1660) for size 4096 
offset NONE
0:06:14.850963449 12149      0x22a9f00 DEBUG               GST_PADS 
gstpad.c:2957:gst_pad_alloc_buffer_full:<queue0:src> offset 
18446744073709551615, size 4096, caps (NULL)
0:06:14.850981788 12149      0x22a9f00 DEBUG               GST_PADS 
gstpad.c:2878:gst_pad_buffer_alloc_unchecked:<demux:sink> calling 
bufferallocfunc &(NULL) (@(nil)) for size 4096 offset NONE
0:06:14.850999155 12149      0x22a9f00 DEBUG               GST_PADS 
gstpad.c:2927:gst_pad_buffer_alloc_unchecked:<demux:sink> fallback 
buffer alloc
0:06:14.881612429 12149      0x22a9f00 DEBUG            souphttpsrc 
gstsouphttpsrc.c:964:gst_soup_http_src_chunk_allocator:<souphttpsrc0> 
alloc 4096 bytes <= 18446744073665191170
0:06:14.881636660 12149      0x22a9f00 DEBUG               GST_PADS 
gstpad.c:2957:gst_pad_alloc_buffer_full:<souphttpsrc0:src> offset 
18446744073709551615, size 4096, caps (NULL)
0:06:14.881658302 12149      0x22a9f00 DEBUG               GST_PADS 
gstpad.c:2878:gst_pad_buffer_alloc_unchecked:<queue0:sink> calling 
bufferallocfunc &gst_queue_bufferalloc (@0x7fecd40d1660) for size 4096 
offset NONE
0:06:14.881678309 12149      0x22a9f00 DEBUG               GST_PADS 
gstpad.c:2957:gst_pad_alloc_buffer_full:<queue0:src> offset 
18446744073709551615, size 4096, caps (NULL)
0:06:14.881697176 12149      0x22a9f00 DEBUG               GST_PADS 
gstpad.c:2878:gst_pad_buffer_alloc_unchecked:<demux:sink> calling 
bufferallocfunc &(NULL) (@(nil)) for size 4096 offset NONE
0:06:14.881715224 12149      0x22a9f00 DEBUG               GST_PADS 
gstpad.c:2927:gst_pad_buffer_alloc_unchecked:<demux:sink> fallback 
buffer alloc
0:06:14.881744012 12149      0x22a9f00 DEBUG            souphttpsrc 
gstsouphttpsrc.c:1003:gst_soup_http_src_got_chunk_cb:<souphttpsrc0> got 
chunk of 1356 bytes
0:06:14.881770709 12149      0x22a9f00 DEBUG              GST_CLOCK 
gstclock.c:848:gst_clock_get_internal_time:<GstSystemClock> internal 
time 630:20:34.241297374
0:06:14.881788898 12149      0x22a9f00 DEBUG              GST_CLOCK 
gstclock.c:893:gst_clock_get_time:<GstSystemClock> adjusted time 
630:20:34.241297374
0:06:14.881805059 12149      0x22a9f00 DEBUG                basesrc 
gstbasesrc.c:1953:gst_base_src_do_sync:<souphttpsrc0> no sync needed
0:06:14.881819948 12149      0x22a9f00 DEBUG                basesrc 
gstbasesrc.c:2120:gst_base_src_get_range:<souphttpsrc0> buffer ok
0:06:14.881837801 12149      0x22a9f00 DEBUG         queue_dataflow 
gstqueue.c:963:gst_queue_chain:<queue0> queue is full, waiting for free 
space

^-------------- this last line is where it hangs ~ I guess a queue is 
full... but which queue and how to free the space?



More information about the gstreamer-devel mailing list