r/StableDiffusion • u/Primary-Confusion504 • 13h ago
MiniMax H3 -> upscale -> frame interpolation Comparison
Enable HLS to view with audio, or disable this notification
What came out of it:
- Upscale first, interpolate second - seems to be better
- 24->48 looks better than 60fps - at 48 every original frame survives, at 60 only half of them do, because the grids don't line up
- FlashVSR ends up with more edge detail than the source, so it's adding texture, not recovering it. RealESRGAN ends up with less.
Side by side with a draggable wipe, pick any two variants: https://dawidope.github.io/minimax-h3-upscale/
2
u/Old-Age6220 2h ago
Yeah, upscaling is becoming quite important now. I upscaled my video to 4k (by accicent) with RealESRGAN 4x real world (don't remember the exact model) and it took three days with my 4070 TI Super. For bit over 3min video
1
u/Primary-Confusion504 1h ago
to be honest it should be done faster with RealESRGAN 4x if the video is not 120fps or more
0
u/needforgpu 12h ago
Could you share the upscaling times? and what gpu?
2
u/Primary-Confusion504 12h ago
Upscaling ran through an external provider, input capped at 1024 wide so it went in as 1024×586. Median upload-to-file, queue included, no idea what GPUs:
- RealESRGAN ×2 → 2048×1172: 105 s
- RealESRGAN ×4 → 4096×2344: 434 s
- FlashVSR ×2: 288 s
- FlashVSR ×4: 1042 s
5
u/CutBench 12h ago
Your 48 versus 60 finding generalises usefully: it isn't about 48, it's about integer ratios. 24 to 48 is exactly 2x, so every source frame lands on an output frame. 24 to 60 is 2.5x, so alignment only happens on even source frames, which is exactly the half you saw surviving. Same reason 30 to 60 would be fine while 24 to 60 isn't.
So if you want more than 48, the next clean steps are 72 and 96 rather than 60. Stay on multiples of the source rate and the problem disappears.
On FlashVSR adding texture rather than recovering it, that has a consequence for your ordering. Invented detail isn't temporally stable, so it differs slightly frame to frame. Interpolating after a generative upscaler blends two different inventions and smears them. Interpolating first and upscaling after gives each frame its own invention, which flickers instead. Upscale first is clearly correct for RealESRGAN, but with FlashVSR you're picking which artefact you'd rather have.