-project('nageru', 'cpp', default_options: ['buildtype=debugoptimized'], version: '2.2.2-pre')
+project('nageru', 'cpp', default_options: ['buildtype=debugoptimized'], version: '2.3.1-pre')
+
+add_project_arguments('-Wno-unqualified-std-cast-call', language: 'cpp')
cxx = meson.get_compiler('cpp')
qt5 = import('qt5')
sdl2_imagedep = dependency('SDL2_image', required: false)
sdl2dep = dependency('sdl2', required: false)
srtdep = dependency('srt', required: false)
-svtav1dep = dependency('SvtAv1Enc', required: false, version: '>=1.0.0')
+svtav1dep = dependency('SvtAv1Enc', required: false, version: '>=1.5.0')
sqlite3dep = dependency('sqlite3')
threaddep = dependency('threads')
vadrmdep = dependency('libva-drm')
nageru_build_rpath = ''
nageru_install_rpath = ''
+kaeru_srcs = ['nageru/kaeru.cpp']
kaeru_link_with = []
kaeru_extra_deps = []
cef_dll_target = custom_target('libcef_dll_wrapper',
input: join_paths(cef_dir, 'libcef_dll/CMakeLists.txt'),
- output: ['libcef_dll_wrapper.a', 'cef-stamp'],
+ output: ['libcef_dll_wrapper.a'],
command: [cef_compile_script, '@BUILD_DIR@', cef_dir, cmake, '@OUTPUT@'])
- # Putting the .a in sources seemingly hits a bug where the .a files get sorted
- # in the wrong order. This is a workaround; see
- # https://github.com/mesonbuild/meson/issues/3613#issuecomment-408276296 .
- cefdlldep = declare_dependency(sources: cef_dll_target[1], link_args: cef_dll_target.full_path())
+ cefdlldep = declare_dependency(link_with: cef_dll_target)
nageru_deps += cefdlldep
endif
# Mixer objects.
nageru_srcs += ['nageru/chroma_subsampler.cpp', 'nageru/v210_converter.cpp', 'nageru/mixer.cpp', 'nageru/pbo_frame_allocator.cpp',
'nageru/theme.cpp', 'nageru/scene.cpp', 'nageru/image_input.cpp', 'nageru/alsa_output.cpp',
- 'nageru/timecode_renderer.cpp', 'nageru/tweaked_inputs.cpp', 'nageru/mjpeg_encoder.cpp']
+ 'nageru/timecode_renderer.cpp', 'nageru/tweaked_inputs.cpp', 'nageru/mjpeg_encoder.cpp', 'nageru/srt_metrics.cpp']
# Streaming and encoding objects (largely the set that is shared between Nageru and Kaeru).
stream_srcs = ['nageru/quicksync_encoder.cpp', 'nageru/video_encoder.cpp',
# CEF input.
if have_cef
nageru_srcs += ['nageru/nageru_cef_app.cpp', 'nageru/cef_capture.cpp']
+ kaeru_srcs += ['nageru/cef_encoder_adapter.cpp', 'nageru/nageru_cef_app.cpp', 'nageru/cef_capture.cpp']
endif
nageru_srcs += qt_files
meson.add_install_script('nageru/scripts/setup_nageru_symlink.sh')
# Kaeru executable.
-executable('kaeru', 'nageru/kaeru.cpp',
+executable('kaeru', kaeru_srcs,
dependencies: [nageru_deps, kaeru_extra_deps],
include_directories: nageru_include_dirs,
link_with: [stream, aux, kaeru_link_with],