[FFmpeg-devel] [PATCH] libavdevice: JACK demuxer
Fri Feb 27 21:30:05 CET 2009
Olivier Guilyardi wrote:
>> What do you need usleep() for? Sleeping in an input handler smells of
>> bad design.
> The jack process callback, which runs in the JACK realtime thread, reads audio
> from JACK. It then places this data into a ringbuffer, for the
> audio_read_packet() callback to fetch it, and return it in a AVPacket. It the
> ringbuffer is empty at this point, audio_read_packet() sleeps a period, tries
> again, etc.... It times out after 2 seconds.
I think you should return EAGAIN if AVFMT_FLAG_NONBLOCK is set or block
if it is not set... Using usleep() and polling does not look a nice
solution, but I do not know if there are other possibilities.
More information about the ffmpeg-devel