gstreamer/gst/dvbsubenc/meson.build
Jan Schmidt 1cf3cae5e1 dvbsubenc: Add DVB Subtitle encoder
Add an element that converts AYUV video frames to a DVB
subpicture stream.

It's fairly simple for now. Later it would be good to support
input via a stream that contains only GstVideoOverlayComposition
meta.

The element searches each input video frame for the largest
sub-region containing non-transparent pixels and encodes that
as a single DVB subpicture region. It can also do palette
reduction of the input frames using code taken from
libimagequant.

There are various FIXME for potential improvements for now, but
it works.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1227>
2020-06-17 12:50:13 +10:00

31 lines
872 B
Meson

subenc_sources = [
'gstdvbsubenc.c',
'gstdvbsubenc-util.c',
]
libimagequant_sources = [
'libimagequant/blur.c',
'libimagequant/libimagequant.c',
'libimagequant/mediancut.c',
'libimagequant/mempool.c',
'libimagequant/nearest.c',
'libimagequant/pam.c',
'libimagequant/viter.c'
]
local_c_args = ['-DLIQ_PRIVATE='] # GStreamer already has the right hidden symbol visibility
if cc.has_argument ('-Wno-unknown-pragmas')
local_c_args += ['-Wno-unknown-pragmas']
endif
gstdvbsubenc = library('gstdvbsubenc',
subenc_sources + libimagequant_sources,
c_args : gst_plugins_bad_args + local_c_args,
include_directories : [configinc, libsinc],
dependencies : [gstbase_dep, gstvideo_dep, libm],
install : true,
install_dir : plugins_install_dir,
)
pkgconfig.generate(gstdvbsubenc, install_dir : plugins_pkgconfig_install_dir)
plugins += [gstdvbsubenc]