1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
mod contiguous_buffer; mod coupled_bufread; mod decode; mod encode; pub use decode::{DecodeResult, Decoder, Frame}; pub use encode::{BitmapFrame, Encoder, JpegFrame}; pub use libjxl_sys::JxlBasicInfo as BasicInfo; pub fn decode_memory(data: &[u8]) -> Result<DecodeResult, &'static str> { let decoder = Decoder::default(); decoder.decode(&data) } pub fn check_signature(data: &[u8]) -> libjxl_sys::JxlSignature { unsafe { libjxl_sys::JxlSignatureCheck(data.as_ptr(), data.len()) } } pub fn encode_memory(data: &[u8], xsize: usize, ysize: usize) -> Result<Vec<u8>, &'static str> { let mut encoder = Encoder::default(); encoder.basic_info.xsize = xsize as u32; encoder.basic_info.ysize = ysize as u32; encoder.encode(&data) }