meson: add a video codec support option

This allows to turn on/off all hw implementations for a specific video
codec across the tree. Patent encumbered codecs can cause problems for
distributions due to the nature of at least MPEG-LA licensing.

https://jina-liu.medium.com/settle-your-questions-about-h-264-license-cost-once-and-for-all-hopefully-a058c2149256
is probably the best explaination I can find.

From a distro pov, codecs are a jigsaw puzzle, you only seem to become a problem well you fit all the pieces.

This patch will allow disabling the mesa piece of the puzzle.

Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15258>
This commit is contained in:
Dave Airlie
2022-03-07 12:37:29 +10:00
committed by Marge Bot
parent 2c3178329b
commit 7d969fe9e9
3 changed files with 18 additions and 0 deletions

View File

@@ -320,6 +320,11 @@ if with_vulkan_beta
pre_args += '-DVK_ENABLE_BETA_EXTENSIONS'
endif
_codecs = get_option('video-codecs')
foreach c : ['vc1dec', 'h264dec', 'h264enc', 'h265dec', 'h265enc']
pre_args += '-DVIDEO_CODEC_@0@=@1@'.format(c.to_upper(), _codecs.contains(c).to_int())
endforeach
_platforms = get_option('platforms')
if _platforms.contains('auto')
if system_has_kms_drm
@@ -2273,6 +2278,9 @@ if with_gbm
endif
lines += ''
lines += 'Video Codecs: ' + ' '.join(_codecs)
lines += ''
if with_any_vk
lines += 'Vulkan drivers: ' + ' '.join(_vulkan_drivers)
lines += 'Vulkan ICD dir: ' + with_vulkan_icd_dir