Live data from Hacker News

Scientific Breakthrough Lets SnappyCam App Take 20 Full-Res Photos Per Second

techcrunch.com

141–150 of 262 posts

Re: Scientific Breakthrough Lets SnappyCam App Take 20 Full-Res Photos Per Second

#141

jpap, if you ever find yourself stranded in Canberra, I'll buy you a beer (a proper Australian one).

Cheers mate, I'm from Melbourne and might just take you up on that! (I live here in SFO at the moment, but try to get back as much as I can.)

Re: Scientific Breakthrough Lets SnappyCam App Take 20 Full-Res Photos Per Second

#143
post #130

Amazing work, and the living photo thing could be a hit. Out of curiosity and a bit unrelated, I've been craving for real raw capture on the iPhone (before bayer interpolation, white balance, noise removal). Is it possible?

It may not be possible, even for Apple. If you have a look at the data sheets, for example [1], you'll see YCbCr or RGB output formats being listed. I guess it would make sense for as much signal processing to be done as early in the chain in the interests of lowering power consumption. (Less data to transfer over a serial bus into more circuitry, at the very least.) [1] http://www.ovt.com/products/sensor.php?id=134…

In general sensors output raw and the ISP does the image pipeline including demosaicing, so a phone could support raw with different ISP firmware. (Reportedly Nokia wrote custom ISP firmware for their fancy camera, for example.) I wouldn't be surprised if one of the upcoming Samsung or Sony phone-cameras supports raw.

Re: Scientific Breakthrough Lets SnappyCam App Take 20 Full-Res Photos Per Second

#145
post #60

Earlier quoted context omitted.

Thanks for the download! Let me know if you've got any feedback, I can be easily contacted through the app. :D I'd just like to add that in addition to handcrafted code, choosing the right algorithm and always trying to "do less work" (less cycles, less data IO, better use of registers) makes a big difference.

I'd love to make the jump from "just" web development to some proper embedded development. Any pointers?

Practice. A lot.

A good start is actually the ARM processor; since it's a RISC instruction set, it's quite simple.

I've done lots of assembly in my ugrad days, even writing a Motorola HC11 micro-controller emulator, but ARM would be a much better choice right now.

I found the "Tonic: Whirlwind Tour of Assembly" [1] site invaluable to get me started for SnappyCam, as it covers a lot of the ARM ISA.

For iOS-related assembly, I'd recommend [2].

And for a taste of ARM NEON SIMD, have a look at [3]. The one thing that "clicked" for me on SIMD is that you should look at each register "lane" as trying to unroll a loop. I initially dived in thinking I'd just make a sequential algorithm parallel, which is often too difficult to arrange.

[1] http://www.coranac.com/tonc/text/asm.htm [2] http://www.shervinemami.info/armAssembly.html [3] http://hilbert-space.de/?p=22

Re: Scientific Breakthrough Lets SnappyCam App Take 20 Full-Res Photos Per Second

#146
post #21

Earlier quoted context omitted.

Don't forget that SnappyCam pumps both CPU cores when available. The actual DCT algorithm created and used in the app is different to the typical AAN (Arai, Agui, Nakajima) DCT algorithm that's used in JPEG codecs, at least all the ones I've seen. It's all about doing as little work as possible to achieve the end result. That's why there's so much asm implementation, with carefully chosen NEON instructions for each s…

One of my colleagues at work (Bart Smaalders) is known for the saying (paraphrasing?): "The easiest way to go faster is to do less work." Well done on realising something that seems obvious in retrospect, but most people still miss.

haha, very cool. Smart man! :D

Re: Scientific Breakthrough Lets SnappyCam App Take 20 Full-Res Photos Per Second

#147
post #142

jpap, Could you take the 'trimmed' section and create a looping GIF from that? (Can I do that already?)

It's now on the list. Had a few requests for it, and agreed, it'd be cool. :)

Great, I'm not actually sure how the iPhone photo library handles GIFs.. but I'd much rather be able to choose 'export as GIF' & 'export this frame' than to save all 100 photos.

great app man, thanks

Re: Scientific Breakthrough Lets SnappyCam App Take 20 Full-Res Photos Per Second

#148
post #133
post #128

Earlier quoted context omitted.

Out of curiosity, what kind of educational background do you have if you don't mind the question? As a highschool dropout it interests me. :)

I'm Aussie, so I did my schooling in Melbourne, Australia. I don't recommend the same path for everyone, but my ugrad at RMIT University, dual bachelors of EE and CS. I then went on to do a Ph.D at the University of Melbourne in EE. My dissertation was on mathematical optimization of wireless and wireline DSL. (Prof Jamie Evans is an awesome guy if you're on the lookout for an advisor!) I've been in SFO for just over…

Congrats fellow Australian. Two of us here in an office in Adelaide just bought the app.

Guy behind me said "Hey, this is pretty cool. Have you seen... oh, you're looking at it already."

Re: Scientific Breakthrough Lets SnappyCam App Take 20 Full-Res Photos Per Second

#149
post #103

Earlier quoted context omitted.

1. It really depends on what you're after: are you looking for a video sequence that plays back, or an individual still? Video is better for the former, SnappyCam for the latter. 2. It's a lot of work, hinted at in another thread here on HN. The entire "app" build on top of the JPEG codec needs to be built from scratch; new artwork is required, etc. 3. I just tried it from another machine and works for me. My backend…

I have the same issue (3), on Safari and Chrome: mouse clicks in the menus after they're opened are ignored, but the keyboard works to select a video.

Weird. Could be a bug in the dropdown component I wrote in AngularJS. :( Glad the keyboard still works.

Will look into it...

Post reply on HN