cgbwebcam
A downloadable tool for Windows
https://cybre.tech/lifning/cgbwebcam1,2, licensed under the CCLv2
(and with no expectation of support)
this is a simple C + SDL3 program that emulates (with mGBA) three gameboys camera simultaneously, decomposes your webcam's feed into separate red/green/blue channels, feeds one to each emulator, and then reconstitutes a 64-color output image from their grayscale screens. useful as a mirror for euphoria purposes if you've got a sufficiently glitchy aesthetic/gender/etc., and for re-capturing with OBS and feeding into a virtual webcam so you can get mildly frustrated at understatements of "oh that's cool, uh, is that a filter" when video calling family members, telemedicine appointments, work meetings, et al.
compile as described in the git repo, and run as follows:3
cgbwebcam "/path/to/Game Boy Camera.gb"
(or on windows, drag the .gb file onto the .exe file)
control mappings
keyboard | gameboy |
---|---|
arrow keys | dpad |
z | a |
x | b |
enter | start |
backspace | select |
in gbcamera, you can use select (backspace) to open the settings for dither/flip/palette.
(you can technically back out of the camera mode and access the rest of the gbcamera minigame stuff, but it'll be running unplayably fast since we try to run the emulated gb's much faster than realtime to keep up a decent framerate)
i will likely revisit the rust version of this project in the future (when sdl3 bindings for the camera subsystem have formed up and matured) to add UI polish, some fun additional effects, etc., but for now i wanted to share this more broadly in case anyone else is infected with the same sense of aesthetic sensibilities as me. thanks to viv and flurry for helping me make a windows build, DotMaetrix for battle-testing this for me on her stream, and of course endrift for mGBA and icculus (et al.) for SDL and its shiny new camera support!
-
windows users may find a pre-built .exe either here on itch or on the git repo's releases page, taking care to read the notes about how to provide the required ROM dump. it currently requires x86_64 and Vista or newer.
-
that's "C gbwebcam", not "CGB webcam" -- these are emulated DMG's, not a gameboy color! (contrast with "rgbwebcam", short for "Rust gbwebcam" and "RGB webcam" -- i had originally written this in Rust before SDL3 landed camera support.
-
you'll have to provide your own ROM dump, which you can obtain from a physical GB Camera using an appropriate cartridge reader.
Download
Install instructions
you'll have to provide your own ROM dump, which you can obtain from a physical GB Camera using an appropriate cartridge reader, and provide it as the first command-line argument to the program to launch it. (on Windows, you can achieve this by dragging the .gb file onto the .exe file)