diff --git a/app/meson.build b/app/meson.build index 123bcf62..ef7a467e 100644 --- a/app/meson.build +++ b/app/meson.build @@ -69,7 +69,7 @@ else endif endif -v4l2_support = host_machine.system() == 'linux' +v4l2_support = get_option('v4l2') and host_machine.system() == 'linux' if v4l2_support src += [ 'src/v4l2_sink.c' ] endif diff --git a/app/src/cli.c b/app/src/cli.c index 5251c47c..19e21324 100644 --- a/app/src/cli.c +++ b/app/src/cli.c @@ -1549,7 +1549,8 @@ parse_args_with_getopt(struct scrcpy_cli_args *args, int argc, char *argv[], opts->v4l2_device = optarg; break; #else - LOGE("V4L2 (--v4l2-sink) is only available on Linux."); + LOGE("V4L2 (--v4l2-sink) is disabled (or unsupported on this " + "platform)."); return false; #endif case OPT_V4L2_BUFFER: diff --git a/meson_options.txt b/meson_options.txt index d64e357f..13227d8a 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -4,3 +4,4 @@ option('prebuilt_server', type: 'string', description: 'Path of the prebuilt ser option('portable', type: 'boolean', value: false, description: 'Use scrcpy-server from the same directory as the scrcpy executable') option('server_debugger', type: 'boolean', value: false, description: 'Run a server debugger and wait for a client to be attached') option('server_debugger_method', type: 'combo', choices: ['old', 'new'], value: 'new', description: 'Select the debugger method (Android < 9: "old", Android >= 9: "new")') +option('v4l2', type: 'boolean', value: true, description: 'Enable V4L2 feature when supported')