[vlc-devel] [PATCH 00/16] Windows Seven video integration
Pierre Lamot
pierre at videolabs.io
Thu Aug 6 09:43:46 CEST 2020
This patchset provides video integration for Windows Seven and superior when
DirectComposition is not available or can't be used.
It also supports OS where composition (DWM) or D3D is unavailable or
deactivated. In this case Qt software backend is used, allowing interface to be
properly displayed (the dummy compositor requires OpenGL or ANGLE), though video
can't be integrated when there is no composition as we can't see through the
interface.
Branch is also available at:
https://code.videolan.org/chub/vlc/-/tree/win7_video
Pierre Lamot (16):
qt: don't use DComp when texture initialisation fails
qt: don't load DComp backend when the device doesn't support D3D11
features
qt: don't use SHARED_NTHANDLE on platforms that don't support it
qt: fallback when d3dcompiler is missing when using DComp
qt: don't release vout window when the interface has already been
destroyed
qml: allow to explicitly disable video surface in the player
qt: only forward video resize event when VideoSurface is enabled
qt: report video size when a video is reattached to the QML video
surface
qt: separate video window handling code from main interface
qt: use video window handler in DirectComposition compositor
qt: remove video window handling functions from MainInterface
qt: allow passing QMainWindow window flags when creating MainInterface
qt: separate Taskbar buttons creation from MainInterfaceWin32
qt: extract interface window handling from MainInterface
vout:win32: remove SetThumbnailClip
qt: provide video integration for windows 7
modules/gui/qt/Makefile.am | 13 +-
modules/gui/qt/maininterface/compositor.cpp | 8 +
modules/gui/qt/maininterface/compositor.hpp | 3 +-
.../gui/qt/maininterface/compositor_dcomp.cpp | 75 +++-
.../gui/qt/maininterface/compositor_dcomp.hpp | 6 +-
.../compositor_dcomp_uisurface.cpp | 47 ++-
.../compositor_dcomp_uisurface.hpp | 4 +-
.../gui/qt/maininterface/compositor_dummy.cpp | 5 +-
.../gui/qt/maininterface/compositor_dummy.hpp | 10 +-
.../gui/qt/maininterface/compositor_win7.cpp | 347 +++++++++++++++++
.../gui/qt/maininterface/compositor_win7.hpp | 85 +++++
.../interface_window_handler.cpp | 229 ++++++++++++
.../interface_window_handler.hpp | 72 ++++
.../gui/qt/maininterface/main_interface.cpp | 312 +---------------
.../gui/qt/maininterface/main_interface.hpp | 108 ++++--
.../qt/maininterface/main_interface_win32.cpp | 350 ++++++++++--------
.../qt/maininterface/main_interface_win32.hpp | 61 ++-
.../qt/maininterface/video_window_handler.cpp | 164 ++++++++
.../qt/maininterface/video_window_handler.hpp | 75 ++++
modules/gui/qt/maininterface/videosurface.cpp | 11 +-
modules/gui/qt/maininterface/videosurface.hpp | 4 +-
modules/gui/qt/player/qml/Player.qml | 13 +-
modules/gui/qt/player/qml/TopBar.qml | 2 +-
modules/gui/qt/qt.cpp | 25 +-
modules/gui/qt/widgets/native/qvlcframe.hpp | 6 +-
modules/video_output/win32/common.c | 56 ---
26 files changed, 1479 insertions(+), 612 deletions(-)
create mode 100644 modules/gui/qt/maininterface/compositor_win7.cpp
create mode 100644 modules/gui/qt/maininterface/compositor_win7.hpp
create mode 100644 modules/gui/qt/maininterface/interface_window_handler.cpp
create mode 100644 modules/gui/qt/maininterface/interface_window_handler.hpp
create mode 100644 modules/gui/qt/maininterface/video_window_handler.cpp
create mode 100644 modules/gui/qt/maininterface/video_window_handler.hpp
--
2.25.1
More information about the vlc-devel
mailing list