Hacker News new | ask | show | jobs
by quantumet 3347 days ago
Mostly hardware.

Shortest explanation: The sensor exposure time register has a maximum value.

Next shortest: But it's actually in units of row readout time, on many sensors, which is also configurable, so the exposure time can be made longer at the cost of slower image readout. In normal operation, readout has to happen at 30fps at least, so extra code is needed to switch to slower readout for extended exposure values. This code then needs validation, the image processing tuning tables need to be updated and verified for the new long exposure durations, and any preview glitches, etc, from resetting base sensor configurations need to be addressed. So a lot of extra work, for a relatively niche feature on a smartphone.

Even longer: Many sensors also have an external shutter trigger signal pin, for unlimited exposure duration. But that needs to be wired to the CPU, and all the SW considerations above also apply.

1 comments

Couldn't it just be a heat dissipation issue? These sensors pack a lot of photo sites into a tiny package.
To first order, long exposures are probably less power-hungry - much of the sensor power is burned in the image readout, and longer exposures mean you're reading images less often.

When collecting light, an image sensor pixel isn't really using up any active power (each pixel is basically a capacitor collecting electrons generated by light hitting the silicon).

I don't believe this is entirely correct. DSLR sensors get very hot during long exposures - to the point where excessively long exposures can introduce noise into the output from this heat. I don't see why this wouldn't apply even more so to phone sensors, with their incredibly high photosite density.

However really long exposures are going to suffer from star trail effects - the earth is rotating relative to the stars, so a long exposure changes stars from a point to a short line, which _usually_ isn't what you want. On a 35mm camera with a fairly wide lens you can get away with ~ 30s of exposure time.

On a pixel phone I think you'd be able to get away with ~ 3s exposure time, but as it's going to get pretty hot over this time I'm not sure how much extra image quality you'd actually end up with.