<html><head></head><body>No. The name is correct. That's thewhole point of distinguish between decoder device and video context.<br><br>The decoder device abstracts the video decoding DSP, and shields the decoder abstraction from depending on windowing systems (so that headless decoding is possible).<br><br>The video context provides abstracts the GPU for video processing purpose - filter, conversion, blend and render. The video context is guaranteed to have a window underneath it, since rendering may depend on the intended display controller.<br><br><div class="gmail_quote">Le 19 septembre 2019 10:19:13 GMT+03: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 2019-09-19 8:40, 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;">It's called "decoder device" because it's for the decoder.<br></blockquote><br>The name itself is not correct. As explained, it is also used by filters <br>to create video context from scratch (that will output pictures <br>compatible with the "decoder device" used by the display module). We <br>could call it "output device" or even "output adapter" since it seems to <br>always be tied to a display adapter.<br><br>In the case of transcoding it's actually the device used by the encoder, <br>that the decoder needs to try to match.<br><br>As Alexandre reminded, it's mostly a hint for the decoder (and filters) <br>to match the output. So we could also call it "device hint".<br><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #729fcf; padding-left: 1ex;">And the decoder device does not have to come from a window. That's not how it's going to work for transcoding.<br></blockquote><br>It doesn't have to in most cases. But for devices like VAAPI it needs to <br>know the type and ID of the window so the decoder can actually be used <br>(not sure if there are encoders for VAAPI and if they can use a dummy <br>VADisplay value). See the Open() of the VAAPI decoder device [1]. No <br>window => no "decoder device". No "decoder device" => no decoder.<br><br>We actually designed the "decoder device" during the workshop because of <br>that. I did not originally go that way since on Windows I never need to <br>know the window (and in fact I can't know the adapter from the HWND).<br><br>[1] <br><a href="https://code.videolan.org/videolan/vlc/blob/master/modules/hw/vaapi/decoder_device.c#L223">https://code.videolan.org/videolan/vlc/blob/master/modules/hw/vaapi/decoder_device.c#L223</a><br><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #729fcf; padding-left: 1ex;">Le 19 septembre 2019 09:30:30 GMT+03:00, Steve Lhomme <robux4@ycbcr.xyz> a écrit :<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #ad7fa8; padding-left: 1ex;">On 2019-09-19 8:11, Steve Lhomme wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #8ae234; padding-left: 1ex;">On 2019-09-18 18:16, Rémi Denis-Courmont wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #fcaf3e; padding-left: 1ex;">Le keskiviikkona 18. syyskuuta 2019, 17.13.18 EEST Steve Lhomme a<br></blockquote></blockquote>écrit :<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #8ae234; padding-left: 1ex;"><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #fcaf3e; padding-left: 1ex;"><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #e9b96e; padding-left: 1ex;">The decoder device ("dec-dev") should be tied to the lifecyle of<br></blockquote></blockquote></blockquote>the<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #8ae234; padding-left: 1ex;"><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #fcaf3e; padding-left: 1ex;"><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #e9b96e; padding-left: 1ex;">window.<br></blockquote>Well, no. It's tied to an enabled window, which is longer than a<br></blockquote></blockquote>vout,<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #8ae234; padding-left: 1ex;"><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #fcaf3e; padding-left: 1ex;">but<br>shorter than a window.<br></blockquote> I can change it to:<br> The decoder device ("dec-dev") should be tied to the lifecyle of an<br> enabled window.<br><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #fcaf3e; padding-left: 1ex;">And AFAIK, the vout should not know about the decoder or decoder<br>device at<br>all. It should use the video context only.<br></blockquote>And how do you plan to convey this decoder device instance to the<br>decoder/filters without going through the vout ?<br></blockquote>For the record, the decoder device is created with a vout_window_t,<br>because in some cases (VAAPI for example) it needs to know about which<br>window is used. This vout_window_t is created and stored by the vout.<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>-- <br>Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez 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><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>