<html><head></head><body>We agreed that each decoder will have its own picture buffer management, a.k.a. pool. I don't think we said that the decoder core would take care of it; in fact, I'm pretty sure we said it wouldn't, at least not always.<br><br><div class="gmail_quote">Le 20 février 2019 13:17:37 GMT+02:00, Steve Lhomme <robux4@ycbcr.xyz> a écrit :<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<pre class="k9mail">On 20/02/2019 11:23, Rémi Denis-Courmont wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #729fcf; padding-left: 1ex;"> Hi,<br><br> I don't think that there is a question whether there should always be <br> a pool, because it now depends on the decoder plugin. <br></blockquote><br>That's not the direction I took. I thought we agreed on the previous <br>workshop that decoders will have their own pool. Each of them.<br><br><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #729fcf; padding-left: 1ex;">We don't know what the decoder does or does not do internally, so <br>there are no ways to generically allocate a pool outside on a <br>systematic basis.<br></blockquote><br>I agree, except we live fine with that for now with a pool "large" <br>enough that handled elsewhere, just by providing the DPB size and <br>i_extra_picture_buffers. I don't think we're planning to get rid of <br>these for now.<br><br>Also the current decoder_NewPicture taping in the pool from the vout, is <br>using picture_pool_Wait() meaning if it has used more than its DBP + <br>extra pictures, it will wait for new pictures. This allows a kind of <br>rate control for the decoder and avoid allocating all the memory of the <br>system if the decoder is faster to decode than the vout can handle. I <br>think we should keep that safety for all decoders.<br><br>Also we agreed that the format (metadata) change will now be handled by <br>signaling a change downstream, not by resetting everything. That will <br>impact how a potential pool would be used but that handling can be <br>centralized in decoder_UpdateVideoFormat(), rather than leaving each of <br>the 26 decoders deal with it. All they do is call <br>decoder_UpdateVideoFormat, decoder_NewPicture and decoder_QueueVideo. <br>They don't have to be changed at all for the change to push.<br><br>><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #729fcf; padding-left: 1ex;"> And it would be insane to allocate a whole pool for image decoders, <br> especially considering that pictures tend to be larger than video <br> frames. Image decoders should allocate their picture explicitly.<br><br> No, the first question is what would the determinant be to allocate a <br> pool for the decoder or let the decoder manage its pool.<br><br> Le 20 février 2019 12:01:52 GMT+02:00, Steve Lhomme <robux4@ycbcr.xyz> <br> a écrit :<br><br>     On 20/02/2019 09:56, Thomas Guillem wrote:<br><br>         Please, send future decoder patches on the ML first. <br><br><br>     BTW do we agree on my 13+1 patchset, generalizing the work on the output<br>     format passed to update_format() ?<br><br>     Later this format will be the one used for the decoder pool. And<br>     possibly set on dec->fmt_out.video, although in my branch I kept a<br>     separate one to check the pool format against it.<hr>     vlc-devel mailing list<br>     To unsubscribe or modify your subscription options:<br>     <a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a><br><br><br> -- <br> Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez <br> excuser ma brièveté.<hr> vlc-devel mailing list<br> To unsubscribe or modify your subscription options:<br> <a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a><br></blockquote><hr>vlc-devel mailing list<br>To unsubscribe or modify your subscription options:<br><a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a></pre></blockquote></div><br>-- <br>Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser ma brièveté.</body></html>