gstreamer/subprojects/gst-plugins-good/ext/adaptivedemux2/hls/meson.build
Edward Hervey af78c16dd5 New HLS, DASH and MSS adaptive demuxer elements
This provides new HLS, DASH and MSS adaptive demuxer elements as a single plugin.

These elements offer many improvements over the legacy elements. They will only
work within a streams-aware context (`urisourcebin`, `uridecodebin3`,
`decodebin3`, `playbin3`, ...).

Stream selection and buffering is handled internally, this allows them to
directly manage the elementary streams and stream selection.

Authors:
* Edward Hervey <edward@centricular.com>
* Jan Schmidt <jan@centricular.com>
* Piotrek Brzeziński <piotr@centricular.com>
* Tim-Philipp Müller <tim@centricular.com>

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2117>
2022-04-18 14:11:23 +00:00

41 lines
1.1 KiB
Meson

hls_sources = [
'hls/gsthlsdemux.c',
'hls/gsthlsdemux-util.c',
'hls/gsthlselement.c',
'hls/m3u8.c',
]
hls_cargs = []
hls_crypto = get_option('hls-crypto')
hls_crypto_dep = dependency('', required : false)
if ['auto', 'nettle'].contains(hls_crypto)
hls_crypto_dep = dependency('nettle', version : '>= 3.0', required : false)
if hls_crypto_dep.found()
hls_cargs += ['-DHAVE_NETTLE']
endif
endif
if not hls_crypto_dep.found() and ['auto', 'libgcrypt'].contains(hls_crypto)
hls_crypto_dep = cc.find_library('gcrypt', required : false)
if hls_crypto_dep.found()
hls_cargs += ['-DHAVE_LIBGCRYPT']
endif
endif
if not hls_crypto_dep.found() and ['auto', 'openssl'].contains(hls_crypto)
hls_crypto_dep = dependency('openssl', required : false)
if hls_crypto_dep.found()
hls_cargs += ['-DHAVE_OPENSSL']
endif
endif
if not hls_crypto_dep.found()
if hls_crypto == 'auto'
message('Could not find a supported crypto library for HLS support')
else
error('HLS crypto support library "@0@" not found'.format(hls_crypto))
endif
endif
hls_dep = declare_dependency(include_directories : include_directories('.'))