Windows: Improve EVR presenter.
Removed hard dependency to Angle; it's now required only when rendering to a texture. If Angle is not used, the buffers are now mappable to system memory. This enables HW-accelerated video decoding in QML for non-ANGLE builds. Note that the frame data have to do a round-trip through system memory, which is not ideal but still faster than SW decoding. Task-number: QTBUG-45593 Change-Id: Icc3503142df4e8dbb53b4e11f409b161fd2f9bde Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
This commit is contained in:
@@ -1,28 +1,20 @@
|
||||
INCLUDEPATH += $$PWD/evr
|
||||
|
||||
qtHaveModule(widgets): QT += widgets
|
||||
QT += gui-private
|
||||
|
||||
LIBS += -lmf -lmfplat -lmfuuid -ld3d9 -ldxva2 -lwinmm -levr
|
||||
|
||||
HEADERS += \
|
||||
$$PWD/evr/evrvideowindowcontrol.h \
|
||||
$$PWD/evr/evrcustompresenter.h \
|
||||
$$PWD/evr/evrd3dpresentengine.h \
|
||||
$$PWD/evr/evrhelpers.h \
|
||||
$$PWD/evr/evrdefs.h
|
||||
|
||||
SOURCES += \
|
||||
$$PWD/evr/evrvideowindowcontrol.cpp \
|
||||
$$PWD/evr/evrcustompresenter.cpp \
|
||||
$$PWD/evr/evrd3dpresentengine.cpp \
|
||||
$$PWD/evr/evrhelpers.cpp \
|
||||
$$PWD/evr/evrdefs.cpp
|
||||
|
||||
contains(QT_CONFIG, angle)|contains(QT_CONFIG, dynamicgl) {
|
||||
LIBS += -lmf -lmfplat -lmfuuid -ld3d9 -ldxva2 -lwinmm -levr
|
||||
QT += gui-private
|
||||
|
||||
DEFINES += CUSTOM_EVR_PRESENTER
|
||||
|
||||
HEADERS += \
|
||||
$$PWD/evr/evrcustompresenter.h \
|
||||
$$PWD/evr/evrd3dpresentengine.h \
|
||||
$$PWD/evr/evrhelpers.h
|
||||
|
||||
SOURCES += \
|
||||
$$PWD/evr/evrcustompresenter.cpp \
|
||||
$$PWD/evr/evrd3dpresentengine.cpp \
|
||||
$$PWD/evr/evrhelpers.cpp
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user