-
Notifications
You must be signed in to change notification settings - Fork 0
WebP and Performance
alsi-lawr edited this page Jul 21, 2026
·
2 revisions
WebP recording is composable across capture source, encoder, and processing pipeline. The conservative default remains:
frames_per_second = 30
[webp]
source = "png_screencast"
encoder = "libwebp_full"
pipeline = "spooled"
mode = "lossy"
quality = 75
method = 0-
png_screencastis the default. -
jpeg_screencastacceptssource_qualityfrom 0 through 100 and defaults to 95.
Still capture remains PNG.
-
libwebp_fullis the default and coalesces exact consecutive source frames while preserving duration. -
libwebp_animuses libwebp's animation encoder. -
ffmpegrequires an unbundledffmpegwithlibwebp_animonPATH. Viset validates it before browser startup.
-
spooledrecords compressed source frames before production. -
liveprocesses concurrently, keeps at most eight pending compressed frames in memory, and spills overflow to temporary disk in order.
mode is lossy or lossless. quality ranges from 0 through 100 and defaults
to 75 for lossy or 50 effort for lossless. method ranges from 0 through 6.
Viset prints acquisition and WebP production timing for recordings. The source repository retains component reports, end-to-end measurements, sample WebPs, and rejected-candidate evidence in benchmarks/.
Alternative defaults require representative end-to-end evidence and human visual approval. Strict 1600x900 capture at a P95 below the 16.67 ms 60 FPS interval is a future optimisation target, not a current guarantee.