Hi All
Long time lurker over the last couple of years. Thanks to all the devs for making this incredible hack - it truly is remarkable!
Don't know if this has been discussed or even possible, (and I have read a LOT of posts and didn't see anything), but are there any plans on creating a module that could write either ProRes or DNXHD to the CF card? I don't mind not having RAW controls and would love the option of having a 10-bit 4:2:2 Prores I could work with. Even maybe MJPEG (like the 1DC) would be good for me.
Cheers
Heheh, prores? DNxHD?
Let me know when you have an implementation running on PII 233mhz real time, then we'll put it in ML.
What 1% is saying is a little more complex to those who don't understand codecs and the hardware inside portable devices..
From my understanding the DIGIC is a ASIC ARM processor that controls the majority of the image processing on the camera and is responsible for image output. A JPEG is a type of image file format where the data from the CMOS sensor is processed by the DIGIC and compressed in a number of ways, including lowering it to an 8-bit-per-channel bit depth.
The information going into the DIGIC is the raw image data. As is common on most cameras these days, this information doesn't need to be compressed down into a JPEG. In fact we have access as a still image and refer to it as a RAW file. Side note: nomenclature is such that we refer to a RAW image in caps, but I don't know why specifically.
Now since a RAW image is essentially unprocessed, it's very "easy" for us to recorder this information. the DIGIC has specific hard coded algorithms for decoding a RAW image and compressing it into a JPEG image, thus its hardware accelerated and doesn't require [much] software/code to produce.
However, a format such as ProRes or DNXHD would have to be implemented purely in software since the compression algorithms are not in the hardware. Given it's relative performance of a Pentium II @ 233 MHz, our ARM chip is not capable of running such code/software capable of compressing the RAW feed into any requested format without taking a reeeaaalllyyy long time. For HD or near HD resolutions, it's extremely unlikely to get any of those formats codec to run at those resolutions and fast enough to chug away at 24-60 fps.
Now, our DIGICs have a H.264 encoder in hardware as well, but with limited options and we cannot really access many of the registers to control it. However, we can, thanks to ML, adjust bit rate and general compression quality. As such, you have h.264 for video or RAW and for still images we have a lossless 4:2:2 silent photo, RAW, and JPEG.