From 858540c3c559767ae3256664ca93559a3aade886 Mon Sep 17 00:00:00 2001 From: Mollusk Date: Mon, 18 May 2026 17:10:36 -0400 Subject: [PATCH] viewer: default mpv to --hwdec=auto Software H.264 decode at 1080p struggled on a low-power viewer (Intel UHD 620 laptop on battery / power-save governor), surfacing as choppy motion and A-V drift even though the host encode side was clean. mpv's auto hwdec picks vaapi/nvdec/etc. when available and silently falls back to software when not, so the default is strictly safer. Applied to both the headless banner recipe and the interactive player-picker spawn args. --- src/interactive.rs | 1 + src/viewer/mod.rs | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/interactive.rs b/src/interactive.rs index e8c31b5..473d6db 100644 --- a/src/interactive.rs +++ b/src/interactive.rs @@ -61,6 +61,7 @@ impl Player { &[ "--profile=low-latency", "--untimed", + "--hwdec=auto", "--audio-buffer=0.2", "--demuxer-max-bytes=2M", "--demuxer-readahead-secs=0.5", diff --git a/src/viewer/mod.rs b/src/viewer/mod.rs index 590a6b9..011c6be 100644 --- a/src/viewer/mod.rs +++ b/src/viewer/mod.rs @@ -56,7 +56,7 @@ fn print_viewer_banner(url: &str) { eprintln!("│ Connected to host. Open the stream in your player:"); eprintln!("│"); eprintln!( - "│ mpv --profile=low-latency --untimed --audio-buffer=0.2 --demuxer-max-bytes=2M --demuxer-readahead-secs=0.5 {url}" + "│ mpv --profile=low-latency --untimed --hwdec=auto --audio-buffer=0.2 --demuxer-max-bytes=2M --demuxer-readahead-secs=0.5 {url}" ); eprintln!("│ vlc --network-caching=200 --live-caching=200 {url}"); eprintln!("│");