[vlc-devel] [PATCH 2/2] decoder: fix input_DecoderWait deadlock
Rémi Denis-Courmont
remi at remlab.net
Tue Dec 15 11:38:04 CET 2015
Le 2015-12-15 12:15, Thomas Guillem a écrit :
>> 2) If so, how do you fix it the empty FIFO case? Especially
>> asynchronous decoding.
>
> The empty FIFO case is fixed by this patch, but in a ugly way I
> agree.
No. This patch fixes a deadlock in the case of empty FIFO. Now instead
of locking up, it returns immediately. That is not what
input_DecoderWait is supposed to do. input_DecoderWait() is supposed to
wait for the decoder to output something.
> That's why I don't think a decoder module should process input blocks
> asynchronously.
A decoder is an algorithm that takes input and returns output. Either
it is synchronous, or it is not. It cannot have synchronous input and
asynchronous output or vice-versa.
As for the process of sending input to the decoder, it has been
asynchronous for as long as the VLC decoder thread has existed.
--
Rémi Denis-Courmont
http://www.remlab.net/
More information about the vlc-devel
mailing list