Skip to content

QVAC-23713 fix(minimax-h3): preserve tiled decode and effective fps - #28

Merged
aegioscy merged 7 commits into
2026-08-11from
fix/minimax-h3-video-decode
Aug 19, 2026
Merged

QVAC-23713 fix(minimax-h3): preserve tiled decode and effective fps#28
aegioscy merged 7 commits into
2026-08-11from
fix/minimax-h3-video-decode

Conversation

@aegioscy

Copy link
Copy Markdown

Summary

  • restore upstream-compatible tiled MiniMax-H3 VAE decoding to eliminate grid corruption
  • propagate MiniMax-H3’s enforced 24 FPS to CLI and server container encoding
  • keep the fabric-based QVAC GGML submodule pin unchanged

Test plan

  • Build build-cli on macstudio
  • Generate a seeded UD-Q2/Q2 H3 clip at 640x384 with default requested FPS
  • Confirm output contains 39 frames at 24 FPS and muxed A/V duration is 1.583333 seconds
  • Compare first frame against upstream reference: 41.45 dB PSNR; no grid artifacts

Restore the upstream tiled VAE path so H3 video frames do not corrupt, and mux the generated audio/video at the model-enforced 24 FPS.
@aegioscy aegioscy changed the title fix(minimax-h3): preserve tiled decode and effective fps QVAC-23713 fix(minimax-h3): preserve tiled decode and effective fps Aug 18, 2026
Comment thread src/stable-diffusion.cpp
@dev-nid

dev-nid commented Aug 18, 2026

Copy link
Copy Markdown

`fps` is request metadata for the generated sequence and is echoed in the completed job result.

This now returns the effective FPS rather than always echoing the requested value. Could we update this sentence to match the behavior and line 1205?

@dev-nid

dev-nid commented Aug 18, 2026

Copy link
Copy Markdown

Not introduced by this PR. But just posting it

cli_params.preview_fps = gen_params.fps;

MiniMax-H3 previews still use the requested FPS, while generation and final output use the enforced 24 FPS.

@github-actions

Copy link
Copy Markdown

Review Status

Current Status: ❌ PENDING
Approvals so far: none

Pending reviews: Needs 1 Management or Team Lead, and 1 more from Management, Team Lead, or Member.

Use one FPS resolver for generation and public callers, then configure CLI
previews with the model's effective rate so H3 consistently uses 24 FPS.
@aegioscy

Copy link
Copy Markdown
Author

Addressed the remaining MiniMax-H3 review notes in 7adccbe:

  • Updated examples/server/api.md to distinguish requested FPS from the effective playback FPS returned in the result.
  • Updated CLI preview encoding to use H3's enforced 24 FPS, matching generated and final output.

The pending approval-status message needs reviewer action and has no code change.

@amangupta-tether amangupta-tether left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just some non-blocking comments

Comment thread src/stable-diffusion.cpp Outdated
Comment thread src/model/vae/minimax_h3_vae.hpp
aegioscy added 5 commits August 18, 2026 14:49
Use the public effective-FPS API in generation and warn when callers request
the H3 decode mode that intentionally uses the tiled path.
Use the 2026-08-11 GGML revision that removes the duplicate Vulkan gradient
declaration blocking Linux and Windows CI.
Support FL2VA and REF2VA GGUF selections with verified shared VAE downloads
for reproducible MiniMax-H3 testing.
Pair realrebelai denoisers with the stable-diffusion.cpp compatible Unsloth
Qwen3-VL GGUF instead of ComfyUI-specific encoder layouts.
Prevent the realrebelai download helper from presenting ComfyUI-layout
checkpoints as stable-diffusion.cpp-compatible H3 models.
@aegioscy
aegioscy merged commit fbd710f into 2026-08-11 Aug 19, 2026
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants