What It Is
FilmFrame is a camera app I built for my Pixel because the stock camera app doesn’t give you real manual control. ISO, shutter speed, focus, white balance — the stuff you’d expect from a proper camera body — plus real film simulation applied via LUTs on the GPU in real-time.
Film Stocks
17 film simulations including Kodak Portra 160/800, Ektar 100, Tri-X 400, Fuji Eterna, CineStill 800T, and Ilford HP5. Each has its own grain profile with luminance-weighted noise — not Perlin, actual per-crystal white noise like real film.
The LUT pipeline parses .cube files, builds Hald CLUT textures, and applies them in a GLSL fragment shader with trilinear interpolation. Live preview runs at camera frame rate.
XPan Mode
Hasselblad XPan-style panoramic crops — 2.7:1, 3:1, cinematic 2.39:1, plus the usual 16:9, 4:3, and 1:1. Full sensor data is preserved so you can uncrop later if you want.
The Camera Nerd Stuff
- GPU focus peaking via Sobel edge detection
- Real-time histogram overlay
- Horizon level indicator with sensor fusion
- DNG/RAW export with a 7-stage GPU compute pipeline (black level, white balance, demosaic, CCM, tone curve, LUT, grain)
- EXIF preservation with film simulation metadata baked into UserComment