Opened 5 years ago

Last modified 3 years ago

#8076 new defect

QSV HW Context types mismach

Reported by: fortman Owned by:
Priority: normal Component: avfilter
Version: git-master Keywords: hwcontext_qsv
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no


Summary of the bug:

When reviewing the conde of the QSV HW Context I discovered a mismatch between the "handle_types" and "supported_handle_types". These variables are used to defined the surfaces for the context: D3D11, D3D9, VAAPI, etc.

However, the values are defined multiple times, instead of just one time:

And futhermore:

As a consequence, when for example a new surface is created in Windows, the surface selected is D3D9, instead of D3D11. But when some other filter creates a context with a D3D11 surface and this surface is passed to the QSV HW Context, the surface is used without any problem.

So I request to refactor the code and eliminate the multiple declarations. And then to initialize first to D3D11 surfaces in Windows.

Thank you!

Change History (3)

comment:1 by fortman, 5 years ago

No comments?

comment:2 by wenbin,chen, 3 years ago

Hi fortman

if you use command line, the handler for enc, dec and vpp are got from the same session. This session is stored in device_ctx which is shared by enc, dec and vpp, so the handler should be the same.


comment:3 by wenbin,chen, 3 years ago

Cc: added
Note: See TracTickets for help on using tickets.