On Wednesday, 27 July 2016 04:36:31 UTC+2, Jonathan Pittman wrote: > > Well me too! I am looking to see what level of interest there is in the > Go community to see this happen. I am also looking for people who are > interested in working on this. >
(a bit late to the party) I am the author of RawSpeed - https://github.com/klauspost/rawspeed - which is a RAW decoding library which currently supports >700 cameras. It decodes to CFA-level images, so processing is still required to make the image "viewable". It is used by "Darktable" as well as other open source projects. It has even been stolen (oh sorry - converted) by raw.pics.io for their browser based decoding. In my own humble opinion the code quality is way above dcraw, and I and other people have spent a lot of time trying to work out what goes on under the hood. Metadata is in a readable separate XML file (yes, this was designed in 2008), and not scattered around a single CPP file. Furthermore it is LGPL v2, but with a rewrite to Go, it should probably be MIT or similar. The code should translate rather well to Go - there is no big problems with it. Finding a decoder, parsing file structure and decoding images are nicely separated. Only the "RawImageData" seems to have accumulated a lot of fields and methods over time. It is rather sparsely commented, but I think the code should be pretty clear for a Gopher. There are some design decision made that makes it faster by design. It decodes from raw memory and not a stream which makes it much faster to "jump around" without having to seek in the input stream. It decodes to unpadded memory which makes it use less memory and generally faster. Decoders have been heavily optimized for speed, while always maintaining full quality. I have considered converting it to Go almost since I started programming, but since the demand for it is probably pretty small and I don't have a few months to spend on it, I have not done so. I am willing to help out the extent my knowledge /Klaus > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.