[FFmpeg-devel] [PATCH] Yield on AVERROR(EAGAIN).

Luca Abeni lucabe72
Mon Mar 8 11:41:30 CET 2010

Luca Abeni wrote:
> Anyway, I ran some new tests receiving an RTP stream, and these are the
> results:
> 1) For RTP input, modifying the rtp_read() in rtpproto.c is useless,
> since such function is called from rtsp.c, which already implements the
> "select()" thing. So, I'd think that all the select and timeout stuff in
> rtpproto.c is useless (in fact, it seems to me that it is never used).
> Of course, udp.c is a different story.
> 2) If I modify the code to honour the NONBLOCK flag, trying to receive a
> non-existing RTP stream consumes 100% of the CPU time.
> 3) Even if the stream exists, 100% of the CPU time is consumed in the
> first seconds (during av_find_stream_info(), and probably while
> processing the packets buffered during av_find_stream_info()).

For reference, here is the patch that I am using.
BTW, the patch shows that the select() timeout and the url_interrupt_cb()
check in rtpproto.c are quite pointless... Why have are they there?

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: rtsp_nonblock.diff
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20100308/2701d40d/attachment.txt>

More information about the ffmpeg-devel mailing list