--- title: FlashVSR+ Video Super-Resolution emoji: ⚡ colorFrom: red colorTo: pink sdk: gradio sdk_version: 6.30.0 app_file: app.py python_version: "3.12" startup_duration_timeout: 1h short_description: One-step video super-resolution at up to 4K --- **FlashVSR+** — *Efficient Video Super-Resolution via Hybrid Attention and Reward-Yield Distribution Matching* — super-resolves videos in a single diffusion step. This Space runs the official **turbo** preset (hybrid sliding attention + Triton block-sparse stream attention + TinyDecoder) from the [FlashVSR_Plus](https://github.com/OpenImagingLab/FlashVSR_Plus) codebase with the [ruchangyao/FlashVSR_plus](https://huggingface.co/ruchangyao/FlashVSR_plus) weights. ## How it works 1. Upload a video (any resolution/FPS; audio is preserved when present). 2. Pick the **output resolution** — the input is center-cropped and resized to this size, then super-resolved in place. Both output sides must be multiples of 128. 3. Optionally lower *temporal compression* to 2 or 1 for large-motion content (slower), or enable *color correction* to match low-frequency colors to the input. 4. Press **Super-resolve**. The requested height/width **is** the output resolution; FPS and audio of the input are kept. ## Technical notes - Inference runs one stream chunk (4 latent frames) at a time with `--decode-every 28` incremental decoding, bounding RAM so 4K output resolutions fit the ZeroGPU card. - Attention uses the project's vendored Triton block-sparse kernel (`flashvsr_attn`), plus the hybrid sliding attention of the turbo preset. - The example inputs are the videos shipped in the official repository (Apache-2.0). ## Citation ```bibtex @misc{yao2026flashvsrefficientvideosuperresolution, title={FlashVSR+: Efficient Video Super-Resolution via Hybrid Attention and Reward-Yield Distribution Matching}, author={Yao, Ruchang and others}, year={2026}, } ```