Ah, Anarch! That’s a great retro FPS. It’s designed to be extremely portable and can run in various modes.
Anarch supports multiple SDL backends. In TTY mode, it most likely uses SDL framebuffer or SDL with fbcon/fbdev.
ffmpeg -f fbdev -framerate 30 -i /dev/fb0 \
-vf "scale=1024:-2" \
-c:v libx264 -preset ultrafast -crf 23 \
output.mkv
ffmpeg -f alsa -i default \
-f fbdev -framerate 30 -i /dev/fb0 \
-vf "scale=1024:-2" \
-c:v libx264 -preset ultrafast -crf 23 \
-c:a aac -b:a 128k \
output.mkv
Start ffmpeg capture in one TTY (e.g., TTY2):
sudo ffmpeg -f fbdev -framerate 30 -i /dev/fb0 -c:v libx264 -preset ultrafast output.mkv
Switch to another TTY (Ctrl+Alt+F3) and run Anarch
Play the game - it’s being captured!
Stop recording: Switch back to TTY2 (Ctrl+Alt+F2) and press q to stop ffmpeg
Since Anarch is lightweight but you’re capturing video:
-framerate 20 or -framerate 15 if you get slowdown-preset ultrafast (already in command)-crf 28 for smaller files with acceptable qualityIf the framebuffer capture shows a black screen, Anarch might be using a different rendering method. Try:
# Check what SDL backend Anarch is using
SDL_VIDEODRIVER=fbcon ./anarch
or force it to use framebuffer:
SDL_VIDEODRIVER=fbcon ./anarch &
ffmpeg -f fbdev -framerate 30 -i /dev/fb0 output.mkv
Let me know if you run into issues - Anarch is pretty straightforward but SDL backend detection can be tricky!