mirror of
https://github.com/m1k1o/neko.git
synced 2026-11-03 00:11:48 -06:00
feat(capture): toggle mouse pointer via capture.video.show_pointer (#691)
* feat(capture): toggle mouse pointer via capture.video.show_pointer - config: register capture.video.show_pointer config option - config: default pointer to visible (ShowPointer: true) on the hardcoded fallback pipeline, override applies only when the flag is explicitly set, so per-pipeline YAML overrides stay untouched - compose: document NEKO_CAPTURE_VIDEO_SHOW_POINTER example * fix(capture): apply show_pointer to all pipelines - capture: thread capture.video.show_pointer into broadcast and screencast gstreamer pipelines, previously hardcoded show-pointer=true and silently ignored the flag - config: resolve capture.video.show_pointer once into Capture.VideoShowPointer so all pipeline builders share one value - docs: document capture.video.show_pointer in configuration/capture.md, including its reach into broadcast and screencast, and regenerate help.txt/help.json - compose: drop stray commented-out example, default compose file is not meant to list every option
This commit is contained in:
@@ -35,6 +35,7 @@ The Gstreamer pipeline is started when the first client requests the video strea
|
||||
"capture.video.ids",
|
||||
"capture.video.pipeline",
|
||||
"capture.video.pipelines",
|
||||
"capture.video.show_pointer",
|
||||
]} comments={false} />
|
||||
|
||||
- <Def id="video.display" /> is the name of the [X display](https://www.x.org/wiki/) that you want to capture. If not specified, the environment variable `DISPLAY` will be used.
|
||||
@@ -42,6 +43,7 @@ The Gstreamer pipeline is started when the first client requests the video strea
|
||||
- <Def id="video.ids" /> is a list of pipeline ids that are defined in the <Opt id="video.pipelines" /> section. The first pipeline in the list will be the default pipeline.
|
||||
- <Def id="video.pipeline" /> is a shorthand for defining [Gstreamer pipeline description](#video.gst_pipeline) for a single pipeline. This is option is ignored if <Opt id="video.pipelines" /> is defined.
|
||||
- <Def id="video.pipelines" /> is a dictionary of pipeline configurations. Each pipeline configuration is defined by a unique pipeline id. They can be defined in two ways: either by building the pipeline dynamically using [Expression-Driven Configuration](#video.expression) or by defining the pipeline using a [Gstreamer Pipeline Description](#video.gst_pipeline).
|
||||
- <Def id="video.show_pointer" /> overrides <Opt id="video.pipelines.show_pointer" /> for every video pipeline, only if explicitly set (per-pipeline `show_pointer` in `config.yaml` is left untouched when this flag is unset). It also controls the mouse pointer for the [Broadcast](#broadcast) and [Screencast](#screencast) pipelines, which do not have a per-pipeline setting of their own.
|
||||
|
||||
### Expression-Driven Configuration {#video.expression}
|
||||
|
||||
|
||||
@@ -192,6 +192,16 @@
|
||||
"defaultValue": {},
|
||||
"description": "pipelines config used for video streaming"
|
||||
},
|
||||
{
|
||||
"key": [
|
||||
"capture",
|
||||
"video",
|
||||
"show_pointer"
|
||||
],
|
||||
"type": "boolean",
|
||||
"defaultValue": "true",
|
||||
"description": "show mouse pointer in captured video, overrides show_pointer of all video pipelines"
|
||||
},
|
||||
{
|
||||
"key": [
|
||||
"capture",
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
--capture.video.ids strings ordered list of video ids
|
||||
--capture.video.pipeline string shortcut for configuring only a single gstreamer pipeline, ignored if pipelines is set
|
||||
--capture.video.pipelines string pipelines config used for video streaming (default "{}")
|
||||
--capture.video.show_pointer show mouse pointer in captured video, overrides show_pointer of all video pipelines (default true)
|
||||
--capture.webcam.device string v4l2sink device used for webcam (default "/dev/video0")
|
||||
--capture.webcam.enabled enable webcam stream
|
||||
--capture.webcam.height int webcam stream height (default 720)
|
||||
|
||||
Reference in New Issue
Block a user