Fotufilm

Support

Help with the Fotufilm app and the open-source engine behind it.

Support happens in the open, on the project's issue tracker — so answers stay searchable for the next person who hits the same thing.

Reporting a problem

A good report gets fixed much faster than a vague one. Where you can, include:

  • Your device and OS version, and the app version from the App Store listing.
  • The film stock selected, and any settings you had moved away from their defaults.
  • What you expected to see, and what you actually saw.
  • A before-and-after image if the issue is visual — a description of a colour cast is much harder to act on than a picture of one.

Please don't attach photographs you would rather keep private: issues are public. If an image is the only way to show the problem and you can't share it, say so in the issue and describe the scene instead.

Common questions

The app asked for camera or photo access. Why?

The camera is needed only to show and develop the live viewfinder; the photo library is needed only to pick an image to develop and to save the result back. Nothing is uploaded — see the privacy policy for the full account. If you decline either permission the app still runs, with that feature unavailable.

Why does grain look different at different sizes?

Because it is modelled physically. A grain clump has a real size and areal density on the negative rather than a size in pixels, so the same stock at a larger output resolution shows finer-looking grain — exactly as a bigger enlargement from the same negative does.

Why is the halation red?

Halation is light that passed through the emulsion, reflected off the back of the film base and exposed the emulsion again. Red survives that round trip best, so the glow around bright highlights skews red. It is derived from the optics of the base, not added as a coloured glow.

Can I add my own film stock?

Yes. Stocks are JSON packs loaded at run time, not compiled-in constants, and the calibration pipeline that produces them ships with the engine in tools/calibration/. Any stock with a published datasheet can be calibrated from scratch. The Stocks section of the README documents what a pack has to supply.

Which stocks are included?

Five calibrated packs — Kodachrome 25, 64 and 200, PRO 400H and PRO 160NS — all traced from the manufacturers' own sensitometric and spectral plots, plus two synthetic example- packs used to exercise the model.

Is my data safe?

Fotufilm contains no networking code whatsoever: there is no server, no account and no analytics, and your images never leave your device. Since the app is open source you can verify that claim yourself rather than trusting it.

Contributing

Fotufilm is AGPL-3.0 licensed and open to contributions — bug fixes, new calibrated stocks, and improvements to the physics are all welcome. CONTRIBUTING.md covers how to build the project and what a good pull request looks like.

Security

If you believe you've found a security problem, please report it privately through GitHub's security advisory form rather than opening a public issue, so it can be fixed before it is described publicly.