[vlc-devel] [PATCH] avcodec: tell the vout not to peek in the decoder pool anymore when closing

Steve Lhomme robux4 at gmail.com
Wed Dec 20 18:49:58 CET 2017


It's necessary to make sure the vout has no "active" decoder picture
in use before killing the va. At least this is the case with DXVA2 as
there might be some pending copies in the driver that our code has no
idea about. But we release the DLL before this is done, resulting in
crashes. It doesn't happen with D3D11 because we mostly use 0-copy and
so the vout owns the buffers.

On Wed, Dec 20, 2017 at 5:08 PM, Rémi Denis-Courmont <remi at remlab.net> wrote:
> Le keskiviikkona 20. joulukuuta 2017, 18.01.26 EET Rémi Denis-Courmont a
> écrit :
>> Le keskiviikkona 20. joulukuuta 2017, 14.26.57 EET Steve Lhomme a écrit :
>> > There's still the vout->p->displayed.current picture that may be owned by
>> > the hardware acceleration that is still not released.
>>
>> Nack. This is UB, completely counter-sensical how reference counting works.
>
> Well, it´s not actually UB, it´s timing-dependent. But that is neither needed
> nor necessary to dereference the decoder pool. So still nack.
>
> --
> 雷米‧德尼-库尔蒙
> https://www.remlab.net/
>
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel


More information about the vlc-devel mailing list