Built in AVI frame dumping possible?

Is it possible to add a internal way to dump frames and audio to an AVI container? It would be a nice feature to have since recording externally has its side effects still (emulation slow down)

1 Like

hmn doing it “correctly”(as you want) would be a challenge and may be hacky because of how the emulated gpu and emulated audio work.

It’s better to wait for the long-term gpu async which will split work between gpu and cpu in 2 different host cores.

It would be possible (and very cool), but at this time, it’s not feasible, specially having in count that Citra is still an experimental emulator.
But you can still record it with external programs, like OBS, through.

Totally possible to implement, but I don’t think it’ll be included in the emulator any time soon, since it’s a fairly niche feature with good workarounds (e.g. use OBS) and is pretty heavy-weight (need to bundle ffmpeg for video codecs).

Ah ok well thank you for the replies. i hope it happens soon then. frame shutters and audio cracks are just annoying lol. plus i was hoping to get some hd or uhd video for a game series i do on youtube.

the easiest way would be to use a paid copy of FRAPS which will slow stuff down, though if you are fine with .mp4 OBS will work just fine and with little to no slowdown

The emulator would still slow down…
Better recorders actually have the option to add speedhacks to slow down the system timers. That way you can record properly. Granted, this is still a problem for realtime playing.

However, if your PC is fast enough you shouldn’t have any performance problems while recording. If you want a better solution you should probably get a capture card (which is also what some streamers etc. use).
You can also try recording GPU operations like with apitrace and then record while replaying those.

  • there are literally a ton of options available.

Also noteworthy that external solutions (soft- and hardware) will probably work better than if we include frame dumping in Citra. That’s simply because we have to worry about emulation and can’t focus on optimizing video-compression / streaming.
As frame-dumping is not too tightly integrated with the emulation core external programs are just as powerful as code included in Citra. So instead of adding features to Citra these can be kept in external programs which can be optimized and made more feature rich by others.

I thought id bump this since citra has progressed quite a lot from a year ago. now is it possible to integrate avi dumping?

Selby has gotten some sort of recording working before, but it was built on a foundation of dirty hacks and not at all good enough to PR

Ah ok well once it is implemented i hope its better than dolphins crappy dumper lol. you cant even choose a codec any more.

Even if the feature is implemented I doubt it would be better than any existing software. Citra would have to do the same exact work as Fraps or OBS While emulating at the same time. Fraps is optimized to record with minimal performance impact, so I think that’s the best option so far.

A performance boost might be RAW video output for those who’s got a lot of storage space

There’s more to it than speed, too. For TASing, when replaying a movie, in Dolphin you can dump frames at a resolution higher than what you’re running at, and replay the movie at full speed.