Record Video


I know from this page that I can record video with RetroArch, I really dig the lossless quality. But two issues, will this option be included in RGUI for the next RA v1.1? And second, it says it records at native resolution, but I did a test and recorded at display resolution, without shaders. Using this config: (works nice without config). With shaders it run very slow (although file played fine). Anyways with shaders probably native resolution isn’t possible, since shaders need 2x, or 3x resolutions to show fine if I’m not wrong, guessing here.

By default RA will record at native resolution, to record at a higher resolution, use --size then specify WIDTHxHEIGHT

video_gpu_recode means it will record the output post GPU. If you enable the shaders in the config file it should also record the output post shader.

If you want better recording, you’re probably better off using OBS with x264, Intel Quick Sync and/or Nvidia NVENC in Windows.

NB, if you have an AMD GPU, XSplit supports Video Codec Engine.

Recording in RA can use any codec that FFMPEG supports, lossy, lossless, whatever you want so it’s not gonna be better with an external tool. Faster maybe, not better and it can’t possibly be more flexible.

Yeah recording with shaders is slow, not much you can do about that, run in a window at 2x or something but at fullscreen it will always be slow, I have a 4k monitor and it really struggles with it…

If you want to add something like a webcam view, while recording, you’ll need an external tool.

Recording with shaders was utterly slow, so I’ll probably give ShadowPlay a chance. It can’t record lossless, but you can use very high bitrate with passable quality. Hopefully gameplay doesn’t suffers as video encodes on another chip in the card.

NVENC (the technology used for “ShadowPlay”) has lossless:

Screenshot is from OBS running in Windows.

Oh, that’s great, didn’t know of that program. With that the only thing left is a fast HDD (or SSD for that matter).

I tested OBS and it’s a bit strange. First it says lossless but it looks like it subsampled the chroma planes, when the source still says 4:4:4, it could be my player so I don’t want to say that very loud. But unlike Geforce Experience it fails to capture the monitor screen. It captures everything until I load RetroArch, with or without Layered Windows. If you are going to record “the whole experience”, of launching a game OBS is not for you, I guess you can still record game footage if you choose as source “game screen” instead of “monitor screen”.

If you have both a monitor source and a game capture source of RetroArch, both checkmarked in your sources, it captures everything pretty well. RetroArch is weird how it just shows a black screen on the capture when launched fullscreen without a specific capture source set for it. The same thing happens when I try to use Steam’s in home streaming. I haven’t found a way to get RetroArch to display fullscreen on that; it only shows up if I switch it to windowed mode. That was something I was just playing around with though, I don’t really have a use for in home streaming right now and it is kinda laggy on my old G router.

I see, that’s great I didn’t know you could add 2 capture sources at the same time. It worked on my side. What is disturbing though is that it’s not specified how the “lossless” is achieved. x264 achieves this by using --qp 0, but NVENC uses a propietary software, and I’m yet to read anything about NVENC + lossless, it feels like a undocumented feature, actually it seems to be a very recent addition on the May’s SDK4.0.

I’ve been testing that for several days, and that “lossless” indeed captures at a Hi444P profile, but chroma is subsampled to 4:2:0, so not lossless quality. On Retro games this is actually very easily noticeable.

The only option for lossless (or no chroma subsampling) is using CPU based encoders, but those really have a strong impact on performance.

Lame. Oh well. You can always just losslessly capture the pre-gpu output with RetroArch (which uses ffmpeg) and then figure out how to apply the shader(s) to the video later in a transcode.

Yes… well for now I’m not going to bother much, and just wait for OBS to fix that, that is in case the NVENC API allows for real 444 encoding (which is unknown to me), or wait another program makes a better use of the NVENC API.

As for post shaders in video it is still a green area, but recently a friend of mine pushed the limits forward so there are advances on that direction. Maybe someone can port cg shaders support to avisynth, who knows.

Can’t you use the libretro-ffmpeg to playback the lossless capture, and script it to capture the post gpu capture?

you have to find something to record in full screen ?

I use the video capture software Action! of Mirillis and not record in fullscreen! '(

When I record my fullscreen at the start of the recording,i hear the game start but the video stay on the RetroArch interface ???

PS : I know OBS, and I’ve it installed, but I am looking to use the software Action! :confused:


I’m trying to record gameplay, but I ran into a problem. If I turn on «Use GPU recording» option, I get a good video file (, but I can’t play while recording because of a disastrously small FPS (

If I turn off «Use GPU recording», then during the recording the FPS drop is not felt, but the video file is obtained with a broken image (

I have Ryzen 5 2400g without discrete GPU and last version of Retroarch. I would be very grateful for the advice.

Thank you!

Which core is that? have you tried any other NES cores?

Its Mesen core. I also tried Genesis Plus GX, Beetle PSX HW with the same exact result. I forgot to clarify that I use Windows 10 64 bits.

Hmm, just tested it with a nightly from May 31 (just what I had lying around) and it seemed okay with GL video driver on Win10 64bit. I got a black screen with d3d11, though. Which video driver are you using?