[vlc-devel] [PATCH] vaapi: support using DRM in the gl output

Thomas Guillem thomas at gllm.fr
Fri Jun 30 13:29:42 CEST 2017


On Fri, Jun 30, 2017, at 12:21, Mathieu Velten wrote:
> Le ven. 30 juin 2017 à 00:10, Thomas Guillem <thomas at gllm.fr> a écrit
> :>> 
>> 
>> On Thu, Jun 29, 2017, at 22:47, Rémi Denis-Courmont wrote:
>>  > Le torstaina 29. kesäkuuta 2017, 21.43.16 EEST Mathieu Velten a
>>  > écrit :>>  > > Fixes #18445
>>  >
>>  > This does not fix #18445.
>> 
>>  I did the same patch for the vaapi converter locally but didn't
>>  have an>>  internet connection to propose it. I'm ok with your
>>  converter_vaapi.c>>  changes but you shouldn't touch avcodec/vaapi.c. This module should>>  still be usable if interop is not working.
>> 
>>  For me, it fixes #18445. This is no reason to prefer the old
>>  avcodec/vaapi DRM with software rendering when there is the direct
>>  rendering one working. This old module will be used if your
>>  system can't>>  do interop.
> 
> The changes in vaapi.c allows gl output + DRM (non DR) to work.
> I think it is doable to only initialize VADisplay in the decoder, and
> the gl vout can> pick up this display on first image displayed. I'll have a look after
> the weekend.
I would say the contrary.
The vout need to initialize the VDisplay in the Open function. That way,
if it fails (drivers doesn't support interop, permissions issues), you
can fallback to the generic converter that will ask for I420 (so, there
will be a VAAPI_OPAQUE to I420 conversion). In that failing case, the
avcodec vaapi drm module will work. If the vaapi gl converter succeed,
the vout will own the vaapi instance (that can be drm/x11/wl) and the
avcodec vaapi *dr* module will be used.
> 
> However I think Rémi has a point, even with that patch something is
> wrong when doing DRM + other vout.> It seems to decode well but it looks like we have a pixel format
> negotiation problem somewhere,> SPU is not working and I get a bunch of:
> [00007fa58801ca50] blend blend error: no matching alpha blending
> routine (chroma: YUVA -> VAOP)> [00007fa58801ca50] core blend error: blending YUVA to VAOP failed
> 
> 
>> 
>> 
>> >
>>  > --
>>  > 雷米‧德尼-库尔蒙
>>  > https://www.remlab.net/
>>  > _______________________________________________
>>  > vlc-devel mailing list
>>  > To unsubscribe or modify your subscription options:
>>  > https://mailman.videolan.org/listinfo/vlc-devel
>>  _______________________________________________
>>  vlc-devel mailing list
>>  To unsubscribe or modify your subscription options:
>> https://mailman.videolan.org/listinfo/vlc-devel
> _________________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20170630/58732799/attachment.html>


More information about the vlc-devel mailing list