RustDesk/flutter/lib/common/widgets
21pages bc6f98bc30 Use CQP rate control for "Best" image quality to improve visual fidelity
When image quality is set to "Best", switch hardware encoders (nvenc/qsv/amf)
  to Constant QP (CQP) mode and VPX to Constrained Quality (CQ) mode, instead
  of the default CBR. This gives the encoder direct quantization control for
  consistently higher image quality at the cost of variable bitrate.

changes:
  - Add unified QP model: piecewise-linear interpolation mapping bitrate ratio
    to QP/qmin/qmax (working range 18-44), shared across all encoder backends
  - Upgrade hwcodec to 0.8.0 with dynamic QP reconfigure support
  - Add ffmpeg patches for nvenc dynamic constQP and amfenc dynamic QP/qmin/qmax
    reconfiguration
  - Replace EncoderApi::bitrate() with rc_state() to expose full rate control
    state (bitrate, qp, qp_min, qp_max, qp_mode)
  - Add rc_changed() to detect rate control mode switch, triggering encoder
    re-creation when user toggles image quality
  - Adapt QoS: in CQP mode, limit QP decrease to 1 step per adjustment period;
    hide target bitrate in quality monitor when not applicable

Signed-off-by: 21pages <sunboeasy@gmail.com>
2026-02-28 17:48:10 +08:00
..
address_book.dart show peer note (#13140) 2025-10-12 14:59:42 +08:00
animated_rotation_widget.dart don't use Offstage as widget of animated loading, reuse refresh as 2023-08-18 12:58:37 +08:00
audio_input.dart feat: macos, audio, loopback (#10025) 2024-11-23 19:41:27 +09:00
autocomplete.dart refact: Remote ID editor, only select text on focus (#10854) 2025-02-20 19:35:04 +08:00
chat_page.dart fix: linux, flutter, workaround freeze (#10324) 2024-12-20 09:24:08 +08:00
connection_page_title.dart refact: web desktop, web_id_input_tip (#9490) 2024-09-27 21:56:10 +08:00
custom_password.dart password lowercase check like uppercase (#9343) 2024-09-13 09:29:00 +08:00
custom_scale_base.dart fix: scale custom on mobile (#13324) 2025-10-31 11:08:03 +08:00
dialog.dart ask for note at end of connection (#13499) 2025-11-13 23:35:40 +08:00
gestures.dart fix issue: #13911 'Double Click' bug on iPad with Magic Mouse (#14086) 2026-01-28 15:14:06 +08:00
login.dart refact: tls, native-tls fallback rustls-tls (#13263) 2025-11-03 23:21:01 +08:00
my_group.dart clear selected device group or user when search text changes (#10815) 2025-02-18 09:08:38 +08:00
overlay.dart Use CQP rate control for "Best" image quality to improve visual fidelity 2026-02-28 17:48:10 +08:00
peer_card.dart show peer note (#13140) 2025-10-12 14:59:42 +08:00
peer_tab_page.dart fix: load local peers, called two times on select tab (#10859) 2025-02-20 22:47:42 +08:00
peers_view.dart show peer note (#13140) 2025-10-12 14:59:42 +08:00
remote_input.dart fix(iPad): Magic Mouse, click (#14188) 2026-01-29 15:25:44 +08:00
setting_widgets.dart refact: option, touch mode, move to local (#13055) 2025-10-17 13:36:46 +08:00
toolbar.dart feat: Add relative mouse mode (#13928) 2026-01-09 10:03:14 +08:00