From 5b2fe523780cdb98ce0acde99facc28b310cd513 Mon Sep 17 00:00:00 2001 From: Jason Wallace Date: Fri, 19 Apr 2024 15:52:46 +0200 Subject: [PATCH] Document user configurable settings (#1788) Resolves https://github.com/tiny-pilot/tinypilot/issues/1573 Since winning the war on Ansible, we've dropped support for many TinyPilot settings that were configurable via `/home/tinypilot/settings.yml`. Apart from this blog post ([/whats-new-in-2022-05/](https://github.com/tiny-pilot/tinypilotkvm.com/blob/ba842c50235005fb9253e316cf4f85a543548634/content/blog/whats-new-in-2022-05/index.md)) we haven't really documented (publicly) which settings are supported, deprecated, and unsupported. This PR does just that: * Document preview: [docs/user-configurable-settings.md](https://github.com/tiny-pilot/tinypilot/blob/document-user-configurable-settings/docs/user-configurable-settings.md) ### Notes 1. The list of [supported settings](https://github.com/tiny-pilot/tinypilot/blob/document-user-configurable-settings/docs/user-configurable-settings.md#supported-settings), were compiled from * [app/update/settings.py#L76-L86](https://github.com/tiny-pilot/tinypilot-pro/blob/78269651ca646746b7b55d83d19b377a943ec7de/app/update/settings.py#L76-L86) 3. The list of [deprecated settings](https://github.com/tiny-pilot/tinypilot/blob/document-user-configurable-settings/docs/user-configurable-settings.md#deprecated-settings-legacy), were compiled from a combination of * [debian-pkg/opt/ustreamer-launcher/launch#L95-L101](https://github.com/tiny-pilot/tinypilot-pro/blob/78269651ca646746b7b55d83d19b377a943ec7de/debian-pkg/opt/ustreamer-launcher/launch#L95-L101) * "Unsupported vars" from https://github.com/tiny-pilot/tinypilot-pro/issues/972#issue-1791847326 4. The list of [unsupported settings](https://github.com/tiny-pilot/tinypilot/blob/document-user-configurable-settings/docs/user-configurable-settings.md#unsupported-settings-non-configurable), were compiled from a combination of * [2.6.0/ansible-role/defaults/main.yml](https://github.com/tiny-pilot/tinypilot-pro/blob/2.6.0/ansible-role/defaults/main.yml) * [2.6.0/ansible-role-ustreamer/defaults/main.yml](https://github.com/tiny-pilot/tinypilot-pro/blob/2.6.0/ansible-role-ustreamer/defaults/main.yml) * [blog/whats-new-in-2022-05/index.md#enabling-h264-video](https://github.com/tiny-pilot/tinypilotkvm.com/blob/ba842c50235005fb9253e316cf4f85a543548634/content/blog/whats-new-in-2022-05/index.md#enabling-h264-video) ### Resources used * https://tinypilotkvm.com/pro/changes#261 * https://github.com/tiny-pilot/tinypilot-pro/issues/972 * [blog/whats-new-in-2022-05/](https://github.com/tiny-pilot/tinypilotkvm.com/blob/ba842c50235005fb9253e316cf4f85a543548634/content/blog/whats-new-in-2022-05/index.md) * [2.6.0/ansible-role/defaults/main.yml](https://github.com/tiny-pilot/tinypilot-pro/blob/2.6.0/ansible-role/defaults/main.yml) * [2.6.0/ansible-role-ustreamer/defaults/main.yml](https://github.com/tiny-pilot/tinypilot-pro/blob/2.6.0/ansible-role-ustreamer/defaults/main.yml) Review
on CodeApprove --- docs/user-configurable-settings.md | 66 ++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 docs/user-configurable-settings.md diff --git a/docs/user-configurable-settings.md b/docs/user-configurable-settings.md new file mode 100644 index 000000000..b6b098858 --- /dev/null +++ b/docs/user-configurable-settings.md @@ -0,0 +1,66 @@ +# User Configurable Settings + +It is no longer possible to make changes to TinyPilot's undocumented settings through the `/home/tinypilot/settings.yml` files. This document outlines which settings are supported, deprecated, and unsupported. + +## Supported Settings + +The following settings are supported and remain configurable through `settings.yml`: + +- `janus_stun_port` +- `janus_stun_server` +- `tinypilot_external_port` +- `tinypilot_external_tls_port` (Pro only) +- `tinypilot_manage_tls_keys` (Pro only) + - Whether TinyPilot manages TLS keys. Users can override this setting if they want to [provide their own TLS keys](https://tinypilotkvm.com/faq/own-tls-key). +- `ustreamer_desired_fps` + - Desired frames per second. Defaults to 30 when not set. +- `ustreamer_edid` + - EDID for TC358743 chip. +- `ustreamer_h264_bitrate` + - Set the bitrate in Kb/s for the H264 stream (e.g., 2000). The range of allowed values is [25, 20000]. Defaults to 5000 when not set. +- `ustreamer_quality` + - Quality of the JPEG encoding from 1 to 100 (best). Defaults to 80 when not set. + +## Deprecated Settings (Legacy) + +The following settings are still configurable through `settings.yml`, but we may remove configuration support for them in the future: + +- `tinypilot_keyboard_interface` +- `tinypilot_mouse_interface` +- `ustreamer_drop_same_frames` + - Number of same frames to drop. +- `ustreamer_encoder` + - Encoding method to use, such as `m2m-image`. +- `ustreamer_format` + - Device input format, such as `uyvy`. +- `ustreamer_resolution` + - Stream resolution, such as `1280x720`. +- `ustreamer_use_dv_timings` + - Whether to use Digital Video (DV) timings. +- `ustreamer_workers` + - Number of worker threads to use. + +## Unsupported Settings (Non-configurable) + +The following settings are unsupported and no longer configurable through `settings.yml`: + +- `tinypilot_debian_package_path` +- `tinypilot_enable_debug_logging` +- `tinypilot_install_janus` +- `tinypilot_interface` +- `tinypilot_port` +- `ustreamer_brightness` +- `ustreamer_capture_device` +- `ustreamer_compile_janus_plugin` +- `ustreamer_debian_package_path` +- `ustreamer_edids_dir` +- `ustreamer_h264_sink` +- `ustreamer_h264_sink_mode` +- `ustreamer_h264_sink_rm` +- `ustreamer_interface` +- `ustreamer_persistent` +- `ustreamer_port` +- `ustreamer_repo` +- `ustreamer_repo_version` +- `ustreamer_tcp_nodelay` +- `ustreamer_video_path`