# Add film halation to your photos > Add a film halation glow around the bright lights in your photos, free and in your browser, with the xMosaique app's halation controls. No upload. The red-orange glow film gives street lights, sun on water and bright windows. Free, in your browser, and your photo never leaves your device. Halation tool 1.0.0. Choose a photo: https://xmosaique.com/tools/halation/ ## How to add halation to a photo 1. Choose a photo, or drop it on the tool. Night scenes, backlight and sun on water show the glow best. 2. Set Brightness for which lights glow, Intensity for how strong the glow is, and Radius for how far it reaches. 3. Pick red, orange or amber, set Saturation, and press Show original to compare. 4. Choose JPEG or PNG and press Save photo. ## What halation is Halation is the glow film gets around very bright lights. Light passes through the emulsion, bounces off the back of the film and comes up again a little way off, where it reaches the red-sensitive layer first. So street lights, sun on water and bright windows get a soft red to orange halo, while the rest of the picture stays as it was. A digital sensor has no such layer, which is why the glow reads as film. ## How the tool makes it 1. It finds the lights: everything above the Brightness level, with clipped lamps counting far more than a bright wall, and a lamp that stands well above a dark room counting even when it is not clipped. 2. It spreads that light outwards by the Radius, measured in pixels of your full-size photo. 3. Only the light that spills onto the surroundings shows, so the glow lands around lights and along bright edges, never on a lamp's face or across an evenly bright sky. 4. It adds the glow in the colour you chose and holds back the colour's opposite, so a halo over a white wall still reads red. Everything the glow does not reach is left exactly as it was. ## Tips for a natural look - Keep the glow on the lights: raise Brightness until only lamps, windows and highlights glow. - Radius is in pixels, so a large photo wants a larger radius. 60 suits a 12-megapixel phone photo. - Real halation is subtle. Start low and stop just before you notice it. ## Halation live in the camera xMosaique, the free iPhone and iPad camera app from the same maker, renders halation live in the viewfinder, with grain and the look you shoot with, so you see the glow before you press the shutter. This tool follows the app's halation, with the same Saturation, Brightness, Intensity and Radius, and adds amber to the app's red and orange. How film grain and halation work in xMosaique: https://xmosaique.com/guides/film-grain-halation.md ## Halation questions **Is the halation tool free, and is my photo uploaded?** It is free, with no account and no watermark. The photo is processed in your browser, in a part of the page that is not allowed to connect to the internet, so it never leaves your device. **Which photos does it accept?** Any photo your browser can open: JPEG, PNG and WebP everywhere, and HEIC where the browser supports it, such as Safari. Up to 50 MB. It is saved at full size up to 40 megapixels, or at the largest size your browser can hold, and the page says when that is smaller. **Does it keep my photo's metadata?** No. Location, camera and date details are not copied into the saved file, and the result is saved in sRGB. **Is this the same halation as in the xMosaique app?** Yes, it follows it: the same way of finding the lights and spreading the glow, the same controls and defaults, and red and orange as in the app, plus amber. The app works from the frame before its look is applied; here your photo is that frame. **Can an AI agent use the tool?** Yes. In browsers with WebMCP the page offers two tools, add_halation and set_halation_settings. Settings can also go in the address, for example ?intensity=70&color=orange. ## WebMCP - `add_halation`: Add a film halation glow (a red to orange halo around bright lights) to a photo and return the result, with the same model and settings as the xMosaique app's halation. The photo is processed locally in this page and is not uploaded. It is also shown on the page. - `image` (string, required): The photo as base64 or a data: URL (JPEG, PNG or WebP; HEIC where the browser can open it). - `name` (string): File name, for the result's name. - `saturation` (number, 0–100): How coloured the glow is: 100 is the full film colour, 0 a white glow. Default 100. - `brightness` (number, 0–255): The level, on the photo's 0–255 scale, above which lights glow. Lower makes more of the picture glow; 250 keeps it to the brightest lights. Default 166. - `intensity` (number, 0–100): How strong the glow is; 0 is no change. Default 50. - `radius` (number, 5–100): How far the glow reaches, in pixels of the full-size photo (60 suits a 12-megapixel photo). Default 60. - `color` (string: red | orange | amber): Glow colour (default red). - `format` (string: jpeg | png): Format of the result (default: the page's, jpeg until changed). - `max_edge` (number): Long edge of the returned image in pixels (default 2048). The person can still save the full size from the page. - Returns: The image (base64, image/jpeg or image/png), then a line with its file name, size and the settings used. Or a line starting `Error:`. - `set_halation_settings`: Set the halation sliders on this page for the person using it; the preview updates. Returns the settings now in effect and whether a photo is open. - `saturation` (number, 0–100): How coloured the glow is: 100 is the full film colour, 0 a white glow. Default 100. - `brightness` (number, 0–255): The level, on the photo's 0–255 scale, above which lights glow. Lower makes more of the picture glow; 250 keeps it to the brightest lights. Default 166. - `intensity` (number, 0–100): How strong the glow is; 0 is no change. Default 50. - `radius` (number, 5–100): How far the glow reaches, in pixels of the full-size photo (60 suits a 12-megapixel photo). Default 60. - `color` (string: red | orange | amber): Glow colour (default red). - Returns: JSON: `{"settings": {…}, "photoOpen": true|false}`, the settings after clamping. ## Changelog - **1.0.0** (2026-10-27) — First release: the xMosaique app's halation, with its saturation, brightness, intensity and radius, in red, orange or amber, saved as JPEG or PNG. --- ## Download on the App Store xMosaique is an iPhone and iPad camera app that applies Adobe Lightroom and Camera Raw XMP presets and .cube LUTs live in the viewfinder, before capture. - **App Store**: https://apps.apple.com/us/app/xmosaique-preset-lut-camera/id6800525371 - **Price**: Free. No subscription, no in-app purchases and no ads. - **Platform**: iPhone and iPad - **Requires**: iOS 18.0 or later - **Current version**: 1.8.4 — 2026-10-25 - **Android**: In development. Not released, and there is no sign-up list yet. --- - Canonical HTML page: https://xmosaique.com/tools/halation/ - This page in other languages: [Français (France)](https://xmosaique.com/fr/tools/halation.md) · [Deutsch (Deutschland)](https://xmosaique.com/de/tools/halation.md) · [हिन्दी (भारत)](https://xmosaique.com/hi/tools/halation.md) · [Indonesia (Indonesia)](https://xmosaique.com/id/tools/halation.md) · [Italiano (Italia)](https://xmosaique.com/it/tools/halation.md) · [日本語 (日本)](https://xmosaique.com/ja/tools/halation.md) · [한국어 (대한민국)](https://xmosaique.com/ko/tools/halation.md) · [简体中文](https://xmosaique.com/zh-Hans/tools/halation.md) · [繁體中文](https://xmosaique.com/zh-Hant/tools/halation.md) · [Português (Brasil)](https://xmosaique.com/pt-BR/tools/halation.md) · [Español (Latinoamérica)](https://xmosaique.com/es-419/tools/halation.md) · [Español (España)](https://xmosaique.com/es-ES/tools/halation.md) - All pages in this language: https://xmosaique.com/index.md - Consolidated brief (all pages, all languages): https://xmosaique.com/AI_info.md