flashraw 0.1.0__tar.gz → 0.2.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (194) hide show
  1. {flashraw-0.1.0 → flashraw-0.2.0}/Cargo.lock +11 -11
  2. {flashraw-0.1.0 → flashraw-0.2.0}/Cargo.toml +7 -7
  3. {flashraw-0.1.0 → flashraw-0.2.0}/PKG-INFO +28 -4
  4. {flashraw-0.1.0 → flashraw-0.2.0}/README.md +21 -2
  5. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw/README.md +17 -0
  6. flashraw-0.2.0/crates/flashraw/src/ahd.rs +539 -0
  7. flashraw-0.2.0/crates/flashraw/src/bayer_alt.rs +454 -0
  8. flashraw-0.2.0/crates/flashraw/src/ca.rs +427 -0
  9. flashraw-0.2.0/crates/flashraw/src/camera_profile.rs +625 -0
  10. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw/src/color.rs +5 -5
  11. flashraw-0.2.0/crates/flashraw/src/edgeaware/bayer.bin +0 -0
  12. flashraw-0.2.0/crates/flashraw/src/edgeaware/mod.rs +1205 -0
  13. flashraw-0.2.0/crates/flashraw/src/edgeaware/xtrans.bin +0 -0
  14. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw/src/gpu.rs +96 -2
  15. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw/src/icc.rs +9 -0
  16. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw/src/lib.rs +95 -9
  17. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw/src/opcodes.rs +16 -2
  18. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw/src/options.rs +288 -6
  19. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw/src/process.rs +1044 -76
  20. flashraw-0.2.0/crates/flashraw-camera-db/README.md +37 -0
  21. flashraw-0.2.0/crates/flashraw-codecs/README.md +28 -0
  22. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/kodak.rs +17 -8
  23. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/packed.rs +14 -2
  24. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/panasonic.rs +36 -6
  25. flashraw-0.2.0/crates/flashraw-core/README.md +28 -0
  26. flashraw-0.2.0/crates/flashraw-core/src/camera_profile.rs +396 -0
  27. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/src/lib.rs +2 -0
  28. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/src/metadata.rs +5 -0
  29. flashraw-0.2.0/crates/flashraw-formats/README.md +28 -0
  30. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/dng.rs +1 -0
  31. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/kodak.rs +23 -12
  32. flashraw-0.2.0/crates/flashraw-gpu/README.md +29 -0
  33. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-gpu/shaders/develop.wgsl +7 -1
  34. flashraw-0.2.0/crates/flashraw-gpu/shaders/edge.wgsl +650 -0
  35. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-gpu/src/context.rs +83 -3
  36. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-gpu/src/kernels.rs +69 -2
  37. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-gpu/src/lib.rs +1 -1
  38. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-gpu/src/policy.rs +40 -1
  39. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-gpu/src/run.rs +212 -4
  40. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-python/README.md +21 -2
  41. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-python/src/rawfile.rs +60 -9
  42. flashraw-0.2.0/crates/flashraw-python/tests/test_camera_profile.py +87 -0
  43. flashraw-0.2.0/crates/flashraw-python/tests/test_develop_options.py +37 -0
  44. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-python/tests/test_errors.py +1 -1
  45. {flashraw-0.1.0 → flashraw-0.2.0}/pyproject.toml +6 -1
  46. {flashraw-0.1.0 → flashraw-0.2.0}/python/flashraw/__init__.py +66 -3
  47. {flashraw-0.1.0 → flashraw-0.2.0}/python/flashraw/_flashraw.pyi +8 -1
  48. flashraw-0.1.0/crates/flashraw-camera-db/README.md +0 -20
  49. flashraw-0.1.0/crates/flashraw-codecs/README.md +0 -11
  50. flashraw-0.1.0/crates/flashraw-core/README.md +0 -11
  51. flashraw-0.1.0/crates/flashraw-formats/README.md +0 -11
  52. flashraw-0.1.0/crates/flashraw-gpu/README.md +0 -12
  53. {flashraw-0.1.0 → flashraw-0.2.0}/LICENSE-APACHE +0 -0
  54. {flashraw-0.1.0 → flashraw-0.2.0}/LICENSE-MIT +0 -0
  55. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw/Cargo.toml +0 -0
  56. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw/LICENSE-APACHE +0 -0
  57. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw/LICENSE-MIT +0 -0
  58. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw/benches/kernels.rs +0 -0
  59. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw/src/fallback.rs +0 -0
  60. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw/src/frame.rs +0 -0
  61. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw/src/source.rs +0 -0
  62. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw/src/stagger.rs +0 -0
  63. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-camera-db/Cargo.toml +0 -0
  64. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-camera-db/LICENSE-APACHE +0 -0
  65. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-camera-db/LICENSE-MIT +0 -0
  66. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-camera-db/build.rs +0 -0
  67. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-camera-db/data/cameras.json +0 -0
  68. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-camera-db/src/lib.rs +0 -0
  69. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-camera-db/src/schema.rs +0 -0
  70. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-camera-db/src/tooling.rs +0 -0
  71. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/Cargo.toml +0 -0
  72. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/LICENSE-APACHE +0 -0
  73. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/LICENSE-MIT +0 -0
  74. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/canon_cr2.rs +0 -0
  75. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/canon_crw.rs +0 -0
  76. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/canon_crx/bits.rs +0 -0
  77. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/canon_crx/entropy.rs +0 -0
  78. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/canon_crx/layout.rs +0 -0
  79. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/canon_crx/mod.rs +0 -0
  80. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/canon_crx/plane.rs +0 -0
  81. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/canon_crx/wavelet.rs +0 -0
  82. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/canon_sraw.rs +0 -0
  83. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/dct12.rs +0 -0
  84. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/deflate.rs +0 -0
  85. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/dng_opcodes.rs +0 -0
  86. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/fuji_compressed.rs +0 -0
  87. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/hasselblad.rs +0 -0
  88. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/jpeg.rs +0 -0
  89. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/jxl.rs +0 -0
  90. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/leaf.rs +0 -0
  91. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/lib.rs +0 -0
  92. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/ljpeg.rs +0 -0
  93. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/ljpeg_par.rs +0 -0
  94. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/misc_packed.rs +0 -0
  95. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/nikon_huffman.rs +0 -0
  96. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/nikon_packed.rs +0 -0
  97. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/olympus.rs +0 -0
  98. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/par_entropy.rs +0 -0
  99. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/pentax_huffman.rs +0 -0
  100. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/phaseone.rs +0 -0
  101. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/samsung.rs +0 -0
  102. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/sony_arw1.rs +0 -0
  103. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/sony_arw2.rs +0 -0
  104. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/sony_arw6.rs +0 -0
  105. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/sony_arw6_curve.rs +0 -0
  106. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/sony_ycc.rs +0 -0
  107. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/vc5.rs +0 -0
  108. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-codecs/src/x3f.rs +0 -0
  109. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/Cargo.toml +0 -0
  110. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/LICENSE-APACHE +0 -0
  111. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/LICENSE-MIT +0 -0
  112. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/src/bits.rs +0 -0
  113. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/src/bmff.rs +0 -0
  114. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/src/bytes.rs +0 -0
  115. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/src/decoder.rs +0 -0
  116. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/src/error.rs +0 -0
  117. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/src/exif.rs +0 -0
  118. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/src/huffman.rs +0 -0
  119. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/src/image.rs +0 -0
  120. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/src/integrity.rs +0 -0
  121. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/src/orientation.rs +0 -0
  122. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/src/par.rs +0 -0
  123. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/src/profile.rs +0 -0
  124. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/src/simd.rs +0 -0
  125. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/src/tiff.rs +0 -0
  126. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-core/src/types.rs +0 -0
  127. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/Cargo.toml +0 -0
  128. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/LICENSE-APACHE +0 -0
  129. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/LICENSE-MIT +0 -0
  130. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/canon/cr2.rs +0 -0
  131. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/canon/cr3/container.rs +0 -0
  132. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/canon/cr3/mod.rs +0 -0
  133. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/canon/cr3/tests.rs +0 -0
  134. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/canon/crw.rs +0 -0
  135. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/canon/geometry.rs +0 -0
  136. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/canon/makernote.rs +0 -0
  137. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/canon/mod.rs +0 -0
  138. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/common.rs +0 -0
  139. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/fuji.rs +0 -0
  140. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/hasselblad.rs +0 -0
  141. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/lib.rs +0 -0
  142. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/medium/epson.rs +0 -0
  143. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/medium/mamiya.rs +0 -0
  144. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/medium/mod.rs +0 -0
  145. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/medium/sinar.rs +0 -0
  146. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/minolta.rs +0 -0
  147. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/misc/arri.rs +0 -0
  148. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/misc/mod.rs +0 -0
  149. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/misc/naked.rs +0 -0
  150. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/misc/rpi.rs +0 -0
  151. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/misc/tiff_ep.rs +0 -0
  152. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/nikon/conventions.rs +0 -0
  153. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/nikon/crypt.rs +0 -0
  154. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/nikon/makernote.rs +0 -0
  155. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/nikon/mod.rs +0 -0
  156. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/olympus.rs +0 -0
  157. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/orientation.rs +0 -0
  158. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/panasonic.rs +0 -0
  159. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/pentax.rs +0 -0
  160. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/phaseone.rs +0 -0
  161. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/samsung.rs +0 -0
  162. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/sigma/camf.rs +0 -0
  163. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/sigma/mod.rs +0 -0
  164. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/sony/crypt.rs +0 -0
  165. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/sony/mod.rs +0 -0
  166. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/sony/model_id.rs +0 -0
  167. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/sony/robustness.rs +0 -0
  168. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/sony/srf.rs +0 -0
  169. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-formats/src/sony/table.rs +0 -0
  170. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-gpu/Cargo.toml +0 -0
  171. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-gpu/LICENSE-APACHE +0 -0
  172. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-gpu/LICENSE-MIT +0 -0
  173. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-gpu/benches/gpu_pipeline.rs +0 -0
  174. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-gpu/shaders/common.wgsl +0 -0
  175. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-gpu/shaders/normalize.wgsl +0 -0
  176. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-gpu/shaders/to_texture.wgsl +0 -0
  177. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-gpu/shaders/unpack.wgsl +0 -0
  178. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-gpu/src/image.rs +0 -0
  179. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-gpu/src/oneshot.rs +0 -0
  180. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-python/Cargo.toml +0 -0
  181. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-python/LICENSE-APACHE +0 -0
  182. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-python/LICENSE-MIT +0 -0
  183. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-python/bench/bench.py +0 -0
  184. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-python/src/convert.rs +0 -0
  185. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-python/src/lib.rs +0 -0
  186. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-python/tests/conftest.py +0 -0
  187. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-python/tests/test_api.py +0 -0
  188. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-python/tests/test_color.py +0 -0
  189. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-python/tests/test_corpus.py +0 -0
  190. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-python/tests/test_threads.py +0 -0
  191. {flashraw-0.1.0 → flashraw-0.2.0}/crates/flashraw-python/tests/test_zero_copy.py +0 -0
  192. {flashraw-0.1.0 → flashraw-0.2.0}/python/flashraw/_errors.py +0 -0
  193. {flashraw-0.1.0 → flashraw-0.2.0}/python/flashraw/_types.py +0 -0
  194. {flashraw-0.1.0 → flashraw-0.2.0}/python/flashraw/py.typed +0 -0
@@ -448,7 +448,7 @@ checksum = "aedcfb3409746eddb02b9e19ebda1c3394f759a152e48ee875a0844d1b955484"
448
448
 
449
449
  [[package]]
450
450
  name = "flashraw"
451
- version = "0.1.0"
451
+ version = "0.2.0"
452
452
  dependencies = [
453
453
  "criterion",
454
454
  "flashraw-camera-db",
@@ -465,7 +465,7 @@ dependencies = [
465
465
 
466
466
  [[package]]
467
467
  name = "flashraw-camera-db"
468
- version = "0.1.0"
468
+ version = "0.2.0"
469
469
  dependencies = [
470
470
  "serde",
471
471
  "serde_json",
@@ -473,7 +473,7 @@ dependencies = [
473
473
 
474
474
  [[package]]
475
475
  name = "flashraw-capi"
476
- version = "0.1.0"
476
+ version = "0.2.0"
477
477
  dependencies = [
478
478
  "flashraw",
479
479
  "memmap2",
@@ -482,7 +482,7 @@ dependencies = [
482
482
 
483
483
  [[package]]
484
484
  name = "flashraw-cli"
485
- version = "0.1.0"
485
+ version = "0.2.0"
486
486
  dependencies = [
487
487
  "clap",
488
488
  "flashraw",
@@ -495,7 +495,7 @@ dependencies = [
495
495
 
496
496
  [[package]]
497
497
  name = "flashraw-codecs"
498
- version = "0.1.0"
498
+ version = "0.2.0"
499
499
  dependencies = [
500
500
  "flashraw-core",
501
501
  "jxl-oxide",
@@ -508,7 +508,7 @@ dependencies = [
508
508
 
509
509
  [[package]]
510
510
  name = "flashraw-core"
511
- version = "0.1.0"
511
+ version = "0.2.0"
512
512
  dependencies = [
513
513
  "libc",
514
514
  "proptest",
@@ -519,7 +519,7 @@ dependencies = [
519
519
 
520
520
  [[package]]
521
521
  name = "flashraw-formats"
522
- version = "0.1.0"
522
+ version = "0.2.0"
523
523
  dependencies = [
524
524
  "flashraw-camera-db",
525
525
  "flashraw-codecs",
@@ -529,7 +529,7 @@ dependencies = [
529
529
 
530
530
  [[package]]
531
531
  name = "flashraw-gpu"
532
- version = "0.1.0"
532
+ version = "0.2.0"
533
533
  dependencies = [
534
534
  "bytemuck",
535
535
  "flashraw",
@@ -542,7 +542,7 @@ dependencies = [
542
542
 
543
543
  [[package]]
544
544
  name = "flashraw-libraw-compat"
545
- version = "0.1.0"
545
+ version = "0.2.0"
546
546
  dependencies = [
547
547
  "flashraw",
548
548
  "libc",
@@ -550,7 +550,7 @@ dependencies = [
550
550
 
551
551
  [[package]]
552
552
  name = "flashraw-python"
553
- version = "0.1.0"
553
+ version = "0.2.0"
554
554
  dependencies = [
555
555
  "flashraw",
556
556
  "memmap2",
@@ -562,7 +562,7 @@ dependencies = [
562
562
 
563
563
  [[package]]
564
564
  name = "flashraw-wasm"
565
- version = "0.1.0"
565
+ version = "0.2.0"
566
566
  dependencies = [
567
567
  "flashraw",
568
568
  "js-sys",
@@ -3,7 +3,7 @@ resolver = "3"
3
3
  members = ["crates/flashraw", "crates/flashraw-core", "crates/flashraw-codecs", "crates/flashraw-formats", "crates/flashraw-camera-db", "crates/flashraw-gpu", "crates/flashraw-python"]
4
4
 
5
5
  [workspace.package]
6
- version = "0.1.0"
6
+ version = "0.2.0"
7
7
  edition = "2024"
8
8
  rust-version = "1.85"
9
9
  license = "MIT OR Apache-2.0"
@@ -12,12 +12,12 @@ homepage = "https://flashraw.ybouane.com"
12
12
  authors = ["Yassine Bouanane"]
13
13
 
14
14
  [workspace.dependencies]
15
- flashraw = { path = "crates/flashraw", version = "0.1.0", default-features = false }
16
- flashraw-core = { path = "crates/flashraw-core", version = "0.1.0" }
17
- flashraw-codecs = { path = "crates/flashraw-codecs", version = "0.1.0" }
18
- flashraw-formats = { path = "crates/flashraw-formats", version = "0.1.0" }
19
- flashraw-camera-db = { path = "crates/flashraw-camera-db", version = "0.1.0" }
20
- flashraw-gpu = { path = "crates/flashraw-gpu", version = "0.1.0" }
15
+ flashraw = { path = "crates/flashraw", version = "0.2.0", default-features = false }
16
+ flashraw-core = { path = "crates/flashraw-core", version = "0.2.0" }
17
+ flashraw-codecs = { path = "crates/flashraw-codecs", version = "0.2.0" }
18
+ flashraw-formats = { path = "crates/flashraw-formats", version = "0.2.0" }
19
+ flashraw-camera-db = { path = "crates/flashraw-camera-db", version = "0.2.0" }
20
+ flashraw-gpu = { path = "crates/flashraw-gpu", version = "0.2.0" }
21
21
  rayon = "1.12"
22
22
  memmap2 = "0.9"
23
23
  thiserror = "2"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: flashraw
3
- Version: 0.1.0
3
+ Version: 0.2.0
4
4
  Classifier: Development Status :: 4 - Beta
5
5
  Classifier: Intended Audience :: Developers
6
6
  Classifier: Intended Audience :: Science/Research
@@ -26,13 +26,26 @@ Author: Yassine Bouanane
26
26
  License-Expression: MIT OR Apache-2.0
27
27
  Requires-Python: >=3.9
28
28
  Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
29
+ Project-URL: Author on X, https://x.com/ybouane
29
30
  Project-URL: Changelog, https://github.com/ybouane/flashraw/blob/main/CHANGELOG.md
31
+ Project-URL: Demo, https://flashraw.ybouane.com
30
32
  Project-URL: Documentation, https://github.com/ybouane/flashraw/blob/main/docs/python.md
31
- Project-URL: Homepage, https://github.com/ybouane/flashraw
33
+ Project-URL: Homepage, https://flashraw.ybouane.com
34
+ Project-URL: Issues, https://github.com/ybouane/flashraw/issues
35
+ Project-URL: Repository, https://github.com/ybouane/flashraw
32
36
  Project-URL: Source, https://github.com/ybouane/flashraw
37
+ Project-URL: Website, https://flashraw.ybouane.com
33
38
 
34
39
  # flashraw
35
40
 
41
+ <!-- flashraw-intro -->
42
+ <p align="center"><a href="https://flashraw.ybouane.com"><img src="https://raw.githubusercontent.com/ybouane/flashraw/main/branding/readme-banner.png" alt="FlashRaw: the fast, safe camera RAW decoder" width="100%"></a></p>
43
+
44
+ **[FlashRaw](https://flashraw.ybouane.com)** is a fast, memory-safe camera RAW decoder written in Rust, with Rust, C, C++, Python and JavaScript (WebAssembly) bindings. It decodes about 40 RAW formats (CR2, CR3, NEF, ARW, RAF, DNG, RW2, ORF, PEF and more) with SIMD kernels, multithreading and an optional GPU backend, converts to display-ready RGB with ICC colour management, and runs in the browser.
45
+
46
+ **Official website and live demo: [flashraw.ybouane.com](https://flashraw.ybouane.com)** (it decodes your file locally in the browser) · [Source on GitHub](https://github.com/ybouane/flashraw) · Follow [@ybouane on X](https://x.com/ybouane)
47
+ <!-- /flashraw-intro -->
48
+
36
49
  Fast, safe camera RAW decoding for Python, with zero-copy NumPy output.
37
50
 
38
51
  `flashraw` reads RAW files from most cameras (1,980 of the 2,016 files of the raw.pixls.us corpus; the rest are formats not supported yet, see docs/formats.md) — DNG, CR2, CR3, CRW, NEF/NRW,
@@ -99,12 +112,14 @@ Outputs (`output=`, the first argument of `decode` / `imread`):
99
112
  | `rgb16` | uint16 `(h, w, 3)` | display-ready sRGB at 16 bits, orientation applied |
100
113
 
101
114
  Options of `decode`: `backend` (`"auto"`, `"cpu"`, `"simd"`, `"gpu"`), `threads`, `region`, `crop`
102
- (`True`, or `"active"` for raw outputs), `demosaic` (`"bilinear"`, `"half-size"`), `apply_opcodes`,
115
+ (`True`, or `"active"` for raw outputs), `demosaic` (`"bilinear"`, `"half-size"`, `"edge-aware"`), `highlights` (`"clip"`, `"neutral"`, `"blend"`, `"reconstruct"`), `white_balance` (`"as-shot"`, `"auto"`), `apply_opcodes`,
103
116
  `corruption_policy` (`"recover"`, `"strict"`), `exposure`, `black_point`, `white_point`,
104
117
  `preview_fallback` (RGB outputs of undecodable sensor data return the embedded full-size
105
118
  preview, `frame.source == "preview"`), `color_space` (`"srgb"`, `"display-p3"`, `"adobe-rgb"`,
106
119
  `"prophoto"`, `"rec2020"`; `frame.icc_profile` is the matching ICC profile), `output_profile` (convert
107
- to any RGB ICC profile; with `intent` and `black_point_compensation`). `flashraw.open` takes
120
+ to any RGB ICC profile; with `intent` and `black_point_compensation`), `camera_profile` (render with a DNG
121
+ camera profile: the bytes or path of a `.dcp` file, or `"embedded"` for the profile stored in the DNG; CPU
122
+ only). `flashraw.open` takes
108
123
  `max_samples` and `max_dimension` to tighten the limits for untrusted files. Names that differ from
109
124
  the other bindings: [docs/api-names.md](https://github.com/ybouane/flashraw/blob/main/docs/api-names.md).
110
125
 
@@ -129,3 +144,12 @@ FlashRaw is also available as a Rust crate, a command-line tool and an npm packa
129
144
 
130
145
  MIT OR Apache-2.0.
131
146
 
147
+ <!-- flashraw-outro -->
148
+ ## Built with FlashRaw
149
+
150
+ - **[LightFlow](https://lightflow.dev)**: professional photo correction and colour grading, running locally in your browser with WebGPU.
151
+ - **[ImageFlow](https://imageflow.dev)**: a Photoshop-class image editor in your browser.
152
+
153
+ Official website: **[flashraw.ybouane.com](https://flashraw.ybouane.com)** · Created by [@ybouane](https://x.com/ybouane) · Licence: MIT OR Apache-2.0
154
+ <!-- /flashraw-outro -->
155
+
@@ -1,5 +1,13 @@
1
1
  # flashraw
2
2
 
3
+ <!-- flashraw-intro -->
4
+ <p align="center"><a href="https://flashraw.ybouane.com"><img src="https://raw.githubusercontent.com/ybouane/flashraw/main/branding/readme-banner.png" alt="FlashRaw: the fast, safe camera RAW decoder" width="100%"></a></p>
5
+
6
+ **[FlashRaw](https://flashraw.ybouane.com)** is a fast, memory-safe camera RAW decoder written in Rust, with Rust, C, C++, Python and JavaScript (WebAssembly) bindings. It decodes about 40 RAW formats (CR2, CR3, NEF, ARW, RAF, DNG, RW2, ORF, PEF and more) with SIMD kernels, multithreading and an optional GPU backend, converts to display-ready RGB with ICC colour management, and runs in the browser.
7
+
8
+ **Official website and live demo: [flashraw.ybouane.com](https://flashraw.ybouane.com)** (it decodes your file locally in the browser) · [Source on GitHub](https://github.com/ybouane/flashraw) · Follow [@ybouane on X](https://x.com/ybouane)
9
+ <!-- /flashraw-intro -->
10
+
3
11
  Fast, safe camera RAW decoding for Python, with zero-copy NumPy output.
4
12
 
5
13
  `flashraw` reads RAW files from most cameras (1,980 of the 2,016 files of the raw.pixls.us corpus; the rest are formats not supported yet, see docs/formats.md) — DNG, CR2, CR3, CRW, NEF/NRW,
@@ -66,12 +74,14 @@ Outputs (`output=`, the first argument of `decode` / `imread`):
66
74
  | `rgb16` | uint16 `(h, w, 3)` | display-ready sRGB at 16 bits, orientation applied |
67
75
 
68
76
  Options of `decode`: `backend` (`"auto"`, `"cpu"`, `"simd"`, `"gpu"`), `threads`, `region`, `crop`
69
- (`True`, or `"active"` for raw outputs), `demosaic` (`"bilinear"`, `"half-size"`), `apply_opcodes`,
77
+ (`True`, or `"active"` for raw outputs), `demosaic` (`"bilinear"`, `"half-size"`, `"edge-aware"`), `highlights` (`"clip"`, `"neutral"`, `"blend"`, `"reconstruct"`), `white_balance` (`"as-shot"`, `"auto"`), `apply_opcodes`,
70
78
  `corruption_policy` (`"recover"`, `"strict"`), `exposure`, `black_point`, `white_point`,
71
79
  `preview_fallback` (RGB outputs of undecodable sensor data return the embedded full-size
72
80
  preview, `frame.source == "preview"`), `color_space` (`"srgb"`, `"display-p3"`, `"adobe-rgb"`,
73
81
  `"prophoto"`, `"rec2020"`; `frame.icc_profile` is the matching ICC profile), `output_profile` (convert
74
- to any RGB ICC profile; with `intent` and `black_point_compensation`). `flashraw.open` takes
82
+ to any RGB ICC profile; with `intent` and `black_point_compensation`), `camera_profile` (render with a DNG
83
+ camera profile: the bytes or path of a `.dcp` file, or `"embedded"` for the profile stored in the DNG; CPU
84
+ only). `flashraw.open` takes
75
85
  `max_samples` and `max_dimension` to tighten the limits for untrusted files. Names that differ from
76
86
  the other bindings: [docs/api-names.md](https://github.com/ybouane/flashraw/blob/main/docs/api-names.md).
77
87
 
@@ -95,3 +105,12 @@ FlashRaw is also available as a Rust crate, a command-line tool and an npm packa
95
105
  ## License
96
106
 
97
107
  MIT OR Apache-2.0.
108
+
109
+ <!-- flashraw-outro -->
110
+ ## Built with FlashRaw
111
+
112
+ - **[LightFlow](https://lightflow.dev)**: professional photo correction and colour grading, running locally in your browser with WebGPU.
113
+ - **[ImageFlow](https://imageflow.dev)**: a Photoshop-class image editor in your browser.
114
+
115
+ Official website: **[flashraw.ybouane.com](https://flashraw.ybouane.com)** · Created by [@ybouane](https://x.com/ybouane) · Licence: MIT OR Apache-2.0
116
+ <!-- /flashraw-outro -->
@@ -1,5 +1,13 @@
1
1
  # flashraw
2
2
 
3
+ <!-- flashraw-intro -->
4
+ <p align="center"><a href="https://flashraw.ybouane.com"><img src="https://raw.githubusercontent.com/ybouane/flashraw/main/branding/readme-banner.png" alt="FlashRaw: the fast, safe camera RAW decoder" width="100%"></a></p>
5
+
6
+ **[FlashRaw](https://flashraw.ybouane.com)** is a fast, memory-safe camera RAW decoder written in Rust, with Rust, C, C++, Python and JavaScript (WebAssembly) bindings. It decodes about 40 RAW formats (CR2, CR3, NEF, ARW, RAF, DNG, RW2, ORF, PEF and more) with SIMD kernels, multithreading and an optional GPU backend, converts to display-ready RGB with ICC colour management, and runs in the browser.
7
+
8
+ **Official website and live demo: [flashraw.ybouane.com](https://flashraw.ybouane.com)** (it decodes your file locally in the browser) · [Source on GitHub](https://github.com/ybouane/flashraw) · Follow [@ybouane on X](https://x.com/ybouane)
9
+ <!-- /flashraw-intro -->
10
+
3
11
  Fast, safe camera RAW decoding in Rust: DNG, CR2, CR3, NEF, ARW, RAF, RW2, ORF, PEF and more, with
4
12
  bounds-checked parsing, configurable `Limits` for untrusted files, multithreaded CPU decoding, an
5
13
  optional GPU backend and the same API compiled to WebAssembly, Python and C.
@@ -28,3 +36,12 @@ formats that are not supported yet (28 Nikon High Efficiency NEF, Light L16, Cas
28
36
  * API documentation: <https://docs.rs/flashraw> (feature table on the crate page)
29
37
  * Guide, benchmarks, CLI, Python, JavaScript and C bindings: [README](https://github.com/ybouane/flashraw/blob/main/README.md), [docs/packages.md](https://github.com/ybouane/flashraw/blob/main/docs/packages.md)
30
38
  * MSRV 1.85. Licence: MIT OR Apache-2.0.
39
+
40
+ <!-- flashraw-outro -->
41
+ ## Built with FlashRaw
42
+
43
+ - **[LightFlow](https://lightflow.dev)**: professional photo correction and colour grading, running locally in your browser with WebGPU.
44
+ - **[ImageFlow](https://imageflow.dev)**: a Photoshop-class image editor in your browser.
45
+
46
+ Official website: **[flashraw.ybouane.com](https://flashraw.ybouane.com)** · Created by [@ybouane](https://x.com/ybouane) · Licence: MIT OR Apache-2.0
47
+ <!-- /flashraw-outro -->