1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
See [[http://libopenraw.freedesktop.org/|http://libopenraw.freedesktop.org/]] for up to date information.
---
libopenraw is an ongoing project to provide a free software implementation for camera RAW files decoding. One of the main reason is that [[dcraw|http://www.cybercom.net/~dcoffin/dcraw/]] is not suited for easy integration into applications, and there is a need for an easy to use API to build free software digital image processing application.
It also has the goal to address missing feature from [[dcraw|http://www.cybercom.net/~dcoffin/dcraw/]] like meta-data decoding and easy thumbnail extraction.
# Status
This is currently a work in progress. The only code available is in git. Once a release will be made, it will be announced here.
# Planned feature
* Support for as much file format as possible. NEF, CRW, CR2 and DNG obviously as they are the most common (well DNG not really but it is "standard").
* Modular low level API that allow:
* Identify the file
* Parse the file
* Extract the meta-data and the previews
* Allow processing the RAW data in different way, including having them extracted for an application custom processor.
* High level API that allow:
* Provide and standard thumbnail - **Done**
* Preprocess the file using standard parameters
* Extract the metadata as EXIF (and XMP)
* Convert to a DNG file
# Plans
* Get a basic thumbnail extractor for CR2, CRW, DNG, NEF, ORF - **Done**
* Get a basic metadata extractor for CR2, CRW, DNG, NEF, ORF
* Get a basic RAW processor for CR2, CRW, DNG, NEF, ORF
# Getting code from git
* Anonymous git
* `git clone git://anongit.freedesktop.org/git/libopenraw.git`
* For developers (needs authorization).
* Get a username if you don't have one: See [[http://www.freedesktop.org/wiki/AccountRequests|http://www.freedesktop.org/wiki/AccountRequests]] for details.
* Check out the tree: `git clone git+ssh://git.freedesktop.org/git/libopenraw.git`
# Links to documentation
Given how manufacturer document these formats, we have to reverse-engineer or use documentation issued from reverse engineering.
## Implementation
* [[dcraw|http://www.cybercom.net/~dcoffin/dcraw/]] the current reference implementation for RAW decoding.
* [[jrawio|http://www.tidalwave.it/infoglueDeliverLive/ViewPage.action?siteNodeId=180&languageId=1&contentId=206]] a Java library that implements RAW image decoding
## File format
* [[RAW file standards|http://www.rags-int-inc.com/PhotoTechStuff/RawStandards/]] try to match current standard with currently undocumented file formats and its [[summary|http://www.rags-int-inc.com/PhotoTechStuff/RawStandards/RawSummary.html]].
* [[TIFF|http://partners.adobe.com/public/developer/tiff/index.html]] on which DNG and apparently other RAW format are based on.
* [[Adobe DNG|http://www.adobe.com/products/dng/main.html]] a "standard" format that Adobe tries to push.
* [[X3F Foveon|http://www.x3f.info/spp/v2_1/english.html#Format]], the Foveon partial documentation.
* [[MRW Minolta RAW|http://www.dalibor.cz/minolta/raw_file_format.htm]]
* [[RAWpository|http://www.glasslantern.com/RAWpository/]] archive of sample image data in RAW formats
## Metadata
TBD
-- [[HubertFiguiere|HubertFiguiere]]
## Communication
There is mailing list for developers available now. Visit [[http://lists.freedesktop.org/mailman/listinfo/libopenraw-dev|http://lists.freedesktop.org/mailman/listinfo/libopenraw-dev]] to subscribe
|