Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Amateur photographer here.

This should be the future of DSLRs. Provide some sort of API so that I can create recipes for my photography project. Bonus if the hardware is powerful enough for me to process the way I want to on it (as opposed to the builtin, mostly useless, features).

As a silly example, say I want to take 10 photos. I want the first photo to be 1/30s. The next 1/15s, and so on - doubling the interval each time. I just want to be able to program this, and assign it to a button/menu item, so it will do it automatically.

Or I want to do custom focus stacking. It should automatically take N shots of predefined focal distances, and if powerful enough, stack them.

I've never coded Android apps, so I don't know how much control over the camera is exposed to you, but why can't camera companies provide the same level of control?



You can do this sort of thing already with Magic Lantern[1] on a Canon DSLR. It has a lot of features for running large custom brackets, complex intervalometer sequences, focus bracketing and so on. If that's not enough there's also a Lua scripting capability[2] that lets you control the camera programmatically.

The one thing it doesn't do is much in the way of image processing on board the camera. Generally it is left to the user to perform post-processing on a PC - partly due to lack of CPU power on the camera, and partly because you can get far better tools and hence results on a PC anyway.

[1] http://www.magiclantern.fm/

[2] http://www.magiclantern.fm/forum/index.php?topic=14828.0


Cool.

I'd heard of Magic Lantern, but never looked into it as it's for Canons. I own a Pentax :-(


If you're looking to try out camera scripting on the cheap, Canon high-end P&S / superzoom cameras also support it (through CHDK). With something like a used ~$100 Canon SX40 you can get relatively decent image quality.


CHDK is amazing and is supported by [many Canon Powershot or Canon IXUS cameras](http://mighty-hoernsche.de).

It inserts hooks into the Canon firmware to give you many professional features, and supports scripting so you can customise what it does.


http://www.pktether.com/

I haven't used it (yet) but it might do what you need.

Also the Android (and probably iPhone) stores have many like this https://play.google.com/store/apps/details?id=de.dslrremote


For more recent Pentax cameras pktriggercord [1] seems to be the best option. It's a shame Pentax can't just use PTP for tethering instead of their weird extensions to the USB mass storage mode.

[1] https://github.com/asalamon74/pktriggercord


Amateur astrophotographer here.

The techniques in that blog post are known since 10 years ago. In fact they are quite crude, as they don't account for other types of noise like readout noise, also it does not takes a map of individual pixel sensitivity taking "flat" frames.

Stacking pictures is the foundation of astrophotography and there are many free utilities that does this, for example:

http://deepskystacker.free.fr/

BTW digital cameras already take a "black" frame and substract it from the "light" frame automatically, that's why sometimes the camera takes some time to show you a long-exposure picture: it's taking a black frame with the same exposure time.


I'm well aware of all these techniques. However, I'm looking for more flexibility, like the type I mentioned in my comment.

Something like auto focus stacking. The camera need not do the stacking - just automatically focus on various portions of the scene and take pictures. I can then stack on my computer. Currently I have to focus at one spot, take the picture, then focus on another, take the picture, etc. What I'd like to do is to specify the five focus points, and have it then do the rest of the work.

The in-built bracketing capability in cameras is really minimal.

I was looking at Magic Lantern, and it has a time lapse that essentially maintains a constant brightness - so when the day transitions into night, the camera auto-adjusts the exposure to make sure the subject does not become darker.

Lots of possibilities.


You make it sound like DSLRs do this automatically, which is not the case. My Nikon doesn't and my old Canon definitely had the option but didn't by default.


I've never tried it before, but Sony allows you to purchase third party camera apps to do such a thing. Example: https://www.playmemoriescameraapps.com/portal/usbdetail.php?...


You can even write your own apps, but since that's not officially supported by Sony the process is probably quite painful. See https://github.com/ma1co/OpenMemories-Framework


That's cool.

I never considered Sony. Too limited in terms of lens choices. But if this capability is flexible/powerful enough, then it does kind of compensate.


Sony has gotten a lot better in the last 5 years. Their OLED viewfinders are an incredible improvement in photography.


This is an excellent idea, but I suspect the camera manufacturers aren't keen on it as they use software features for price discrimination.

There are some options available: http://chdk.wikia.com/wiki/CHDK , http://magiclantern.wikia.com/wiki/Magic_Lantern_Firmware_Wi...


Other people have mentioned Magic Lantern, but it's also possible from an Android, there's an app called DSLR Controller which let's you do photo bracketing. You just use an OTG cable, and I think if your camera supports it you can connect through Wi-Fi too.


> there's an app called DSLR Controller

Link to said app: https://play.google.com/store/apps/details?id=eu.chainfire.d...

DSLR Controller is written by Chainfire. The same developer who also created SuperSU, FlashFire, CF-Auto-Root etc.


> This should be the future of DSLRs. Provide some sort of API so that I can create recipes for my photography project. Bonus if the hardware is powerful enough for me to process the way I want to on it (as opposed to the builtin, mostly useless, features).

Most DSLRs already have something like that. Both Nikon and Canon, at least, have free SDKs downloadable from their websites, and on Linux gphoto supports a ton of cameras.

As far as doing everything on camera, most higher end DSLRs have built-in controls for bracketing, multiple exposures, time lapse, etc.


Sadly, Nikon's SDKs are quite limited, specially on supported devices


Limited in what ways?

I haven't used it directly myself, but Capture One uses the Nikon SDK, and it's able to fully control my camera with live view. In fact, they even have an iPad app for controlling the camera, with live view on the iPad.


DSLR camera should integrate Android + Phone SOC inside.

Get the best of both world by combine Android as GUI/API layer + some big DSLR sensor/ custom image processing HW magic.


I love this idea. I'm imagining a user interface something like Apple Automator, where the user selects from a library of inputs (bracketing, long/short exposures, delays), then stacks some operators (HDR merge, noise-cancelling algorithms), and then outputs (tone mapping, other post-processing). It could be a whole new sandbox to play in before an image even touches Lightroom.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: