Steve Lhomme pushed to branch master at VideoLAN / VLC


Commits:
06d5eb50 by Steve Lhomme at 2023-02-05T06:41:37+00:00
meson: remove obsolete TODO

- - - - -
72fb0cfe by Steve Lhomme at 2023-02-05T06:41:37+00:00
meson: add d3d11 video output

- - - - -
49979663 by Steve Lhomme at 2023-02-05T06:41:37+00:00
meson: add d3d9 video output

- - - - -
e0558395 by Steve Lhomme at 2023-02-05T06:41:37+00:00
meson: add wingdi video output

- - - - -
af6bbd5f by Steve Lhomme at 2023-02-05T06:41:37+00:00
meson: add windows inhibit plugin

- - - - -
eaabbefd by Steve Lhomme at 2023-02-05T06:41:37+00:00
meson: add window and drawable plugins

- - - - -
b6ff8e67 by Steve Lhomme at 2023-02-05T06:41:37+00:00
meson: add wgl plugin

- - - - -
55ef06a3 by Steve Lhomme at 2023-02-05T06:41:37+00:00
meson: add glwin32 plugin

- - - - -
37d78c97 by Steve Lhomme at 2023-02-05T06:41:37+00:00
meson: add interop_dxva2 plugin

- - - - -


4 changed files:

- modules/codec/meson.build
- modules/video_output/meson.build
- modules/video_output/opengl/meson.build
- + modules/video_output/win32/meson.build


Changes:

=====================================
modules/codec/meson.build
=====================================
@@ -620,8 +620,6 @@ if get_option('libva').require(
 
 endif
 
-# D3D9 common library
-# TODO: Do not build for Winstore
 if host_system == 'windows'
     d3d11_common_lib = static_library('d3d11_common',
         files(


=====================================
modules/video_output/meson.build
=====================================
@@ -20,6 +20,10 @@ if libplacebo_dep.found()
     subdir('libplacebo')
 endif
 
+if host_system == 'windows'
+    subdir('win32')
+endif
+
 # Dummy video output
 vlc_modules += {
     'name' : 'vdummy',


=====================================
modules/video_output/opengl/meson.build
=====================================
@@ -66,3 +66,17 @@ if host_system in ['darwin', 'android'] or 
opengl_dep.found() or opengles2_dep.f
         'c_args' : interop_sw_cargs,
     }
 endif
+
+# interop_dxva2
+if have_win_desktop
+    opengl32_lib = cc.find_library('opengl32', required: false)
+    if opengl32_lib.found()
+        vlc_modules += {
+            'name' : 'interop_dxva2',
+            'sources' : files('interop_dxva2.c'),
+            'c_args' : [ contrib_inc_args ],
+            'dependencies' : [ opengl32_lib ],
+            'link_with' : [ d3d9_common_lib ]
+        }
+    endif
+endif


=====================================
modules/video_output/win32/meson.build
=====================================
@@ -0,0 +1,78 @@
+#
+# Win32 Video output modules
+#
+
+# Direct3D11 video output
+d3d11_sources = files('direct3d11.cpp', 'd3d11_quad.cpp', 'd3d11_shaders.cpp', 
'd3d_shaders.c', 'd3d_dynamic_shader.c', 'd3d11_swapchain.cpp', 
'dxgi_swapchain.cpp', 'common.c')
+d3d11_link_with = [ d3d11_common_lib ]
+if get_option('winstore_app')
+    d3d11_link_with += [
+        cc.find_library('d3d11'),
+        cc.find_library('d3dcompiler_47')
+    ]
+else
+    d3d11_sources += files('events.c', 'sensors.cpp', 'win32touch.c')
+    d3d11_link_with += [ chroma_copy_lib ]
+endif
+
+vlc_modules += {
+    'name' : 'direct3d11',
+    'sources' : d3d11_sources,
+    'link_with' : d3d11_link_with
+}
+
+if have_win_desktop
+    # Direct3D9 video output
+    vlc_modules += {
+        'name' : 'direct3d9',
+        'sources' : files('direct3d9.c', 'common.c', 'events.c', 
'sensors.cpp', 'win32touch.c'),
+        'link_with' : [ d3d9_common_lib, chroma_copy_lib ]
+    }
+
+    # GDI video output
+    vlc_modules += {
+        'name' : 'wingdi',
+        'sources' : files('wingdi.c', 'common.c', 'events.c', 'win32touch.c'),
+        'link_with' : [ chroma_copy_lib ]
+    }
+
+    opengl32_lib = cc.find_library('opengl32', required: false)
+    if opengl32_lib.found()
+        # glwin32
+        vlc_modules += {
+            'name' : 'glwin32',
+            'sources' : [
+                files('glwin32.c', 'common.c', 'events.c', 'sensors.cpp', 
'win32touch.c'),
+                opengl_vout_commonsources
+            ],
+            'c_args' : [ contrib_inc_args ],
+            'dependencies' : [ gl_common_dep, opengl32_lib ]
+        }
+
+        # WGL
+        vlc_modules += {
+            'name' : 'wgl',
+            'sources' : files('wgl.c'),
+            'c_args' : [ contrib_inc_args ],
+            'dependencies' : [ opengl32_lib ]
+        }
+    endif
+
+    # Desktop inhibit
+    vlc_modules += {
+        'name' : 'winhibit',
+        'sources' : files('inhibit.c')
+    }
+
+    # Window
+    vlc_modules += {
+        'name' : 'win32_window',
+        'sources' : files('window.c')
+    }
+
+    # Windows drawable
+    vlc_modules += {
+        'name' : 'drawable',
+        'sources' : files('drawable.c')
+    }
+endif



View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/compare/daa4105fb8fcdaaf40ed2961c306b6d508a03adf...37d78c972aa6b7c186a484ec8f4a3bc5aecc3bae

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/compare/daa4105fb8fcdaaf40ed2961c306b6d508a03adf...37d78c972aa6b7c186a484ec8f4a3bc5aecc3bae
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance
_______________________________________________
vlc-commits mailing list
vlc-commits@videolan.org
https://mailman.videolan.org/listinfo/vlc-commits

Reply via email to