Version 0.2.2

- Added and SSE3-specific SIMD intrinsic implementation for idct and color
  conversion. It will run if applicable targets are detect at _runtime_.
- The SIMD implementation is not bit-for-bit compatible with non-SIMD output.
  You can enable the `platform_independent` feature, to ensure that only
  bit-for-bit equivalent code runs and output is the same on all platforms.
- Improved performance some more by avoiding bounds checks with array types.
- Multithreading is now used more frequently, without the rayon target, except
  on an explicit list of unsupported platforms.

105fb082d64e2100074587f59a74231f771750c664af903f1f9f76c9dedfc6f1  target/package/jpeg-decoder-0.2.2.crate
Release notes and version bump to 0.2.2
2 files changed
tree: 2aebb4cb2cdea9addf4b69325422ce5530c53e4d
  1. .github/
  2. benches/
  3. examples/
  4. fuzz/
  5. fuzz-afl/
  6. src/
  7. tests/
  8. .gitignore
  9. appveyor.yml
  10. Cargo.toml
  11. CHANGELOG.md
  12. LICENSE-APACHE
  13. LICENSE-MIT
  14. README.md
  15. rust-toolchain
README.md

jpeg-decoder

Rust CI AppVeyor Build Status Crates.io

A Rust library for decoding JPEGs.

Documentation

Example

Cargo.toml:

[dependencies]
jpeg-decoder = "0.2"

main.rs:

extern crate jpeg_decoder as jpeg;

use std::fs::File;
use std::io::BufReader;

fn main() {
    let file = File::open("hello_world.jpg").expect("failed to open file");
    let mut decoder = jpeg::Decoder::new(BufReader::new(file));
    let pixels = decoder.decode().expect("failed to decode image");
    let metadata = decoder.info().unwrap();
}

Requirements

This crate compiles with rust >= 1.48. Minimum Supported Rust Version:

  • All releases 0.1.* compile with rust >= 1.36.
  • The releases 0.2.* may bump Rust Version requirements (TBD).