# libmirage-rs
[](https://docs.rs/libmirage)
[](https://crates.io/crates/libmirage)
Rust bindings for [libMirage](https://cdemu.sourceforge.io/about/libmirage/)—a CD-ROM image access library.
## Requirements
* libmirage >= 3.0.0
<details>
<summary>Building</summary>
libMirage is not that widely packaged, so you might have to build it yourself:
```sh
git clone https://github.com/cdemu/cdemu.git --branch libmirage-3.3.2
cd cdemu/libmirage
cmake -GNinja -B _build
cmake --build _build --config Release
sudo cmake --install _build
```
</details>
## Example
```rust,no_run
use libmirage::{self, Context, prelude::*};
unsafe { libmirage::init() }.unwrap();
let context = Context::new();
let disc = context.load_image(&["'ALLELUJAH! DON'T BEND ASCEND.toc"]).unwrap();
println!("number of tracks: {}", disc.number_of_tracks());
```
## [Docs](https://docs.rs/libmirage)
## License
Licensed under the LGPLv3 or any later version
([copying.txt](copying.txt) or <https://www.gnu.org/licenses/lgpl-3.0.en.html>)