Crate quickraw

Source
Expand description

A pure rust library to handle camera raw files.

quickraw is a pure rust library to decode and renderer image from camera raw files.

§Examples

§Export thumbnail
use quickraw::Export;
 
let raw_data = std::fs::read("sample.ARW").unwrap();
let (thumbnail_data, orientation) = Export::export_thumbnail_data(&raw_data).unwrap();
 
// notice that this function is available on feature `image` only.
quickraw::Export::export_thumbnail_to_file("sample.ARW", "sample.thumbnail.jpg").unwrap();
§Get EXIF data
use quickraw::Export;
let info = Export::export_exif_info(Input::ByFile("sample.ARW")).unwrap();
 
// info is a `quickexif::ParsedInfo` type, for more info please check https://docs.rs/quickexif
let width = info.usize("width").unwrap();
§Export image
use quickraw::{data, DemosaicingMethod, Input, Output, Export, OutputType};
 
let demosaicing_method = DemosaicingMethod::Linear;
let color_space = data::XYZ2SRGB;
let gamma = data::GAMMA_SRGB;
let output_type = OutputType::Raw16;
let auto_crop = false;
let auto_rotate = false;
 
let export_job = Export::new(
    Input::ByFile("sample.ARW"),
    Output::new(
        demosaicing_method,
        color_space,
        gamma,
        output_type,
        auto_crop,
        auto_rotate,
    ),
).unwrap();
 
let (image, width, height) = export_job.export_16bit_image();
 
// or you can also export an image with quality(only works when the output type is JPEG).
// notice that this function is available on feature `image` only.
export_job.export_image(92).unwrap();

Re-exports§

pub use export::Export;

Modules§

data
Contains predefined color spaces from XYZ to target, predefined gamma parameters and color spaces from CAM to XYZ for different cameras.
export
Contains all the functions needed to export image.

Structs§

Output
Contains options for image rendering.

Enums§

DemosaicingMethod
All the demosaicing method currently supported.
Input
Chooses the input from a file or a buffer.
OutputType
Decides if the output should be 8bit or 16bit.
RawFileReadingError
Errors of raw file reading.

Constants§

BENCH_FLAG
A flag to enable benchmark for several key processes.

Functions§

new_image_from_buffer
Gets RawImage from a buffer
new_image_from_file
Gets RawImage from a file