1use cd_da_reader::CdReader;
2
3fn main() -> Result<(), Box<dyn std::error::Error>> {
4 read_cd()?;
5 Ok(())
6}
7
8#[cfg(target_os = "windows")]
9fn read_cd() -> Result<(), Box<dyn std::error::Error>> {
10 let reader = CdReader::open(r"\\.\E:")?;
11 let toc = reader.read_toc()?;
12 println!("{:#?}", toc);
13
14 let data = reader.read_track(&toc, 11)?;
15 let wav_track = CdReader::create_wav(data);
16 std::fs::write("myfile.wav", wav_track)?;
17
18 Ok(())
19}
20
21#[cfg(target_os = "macos")]
22fn read_cd() -> Result<(), Box<dyn std::error::Error>> {
23 let reader = CdReader::open("disk6")?;
24 let toc = reader.read_toc()?;
25 println!("{:#?}", toc);
26
27 let data = reader.read_track(&toc, 11)?;
28 let wav_track = CdReader::create_wav(data);
29 std::fs::write("myfile.wav", wav_track)?;
30
31 Ok(())
32}
33
34#[cfg(target_os = "linux")]
35fn read_cd() -> Result<(), Box<dyn std::error::Error>> {
36 let reader = CdReader::open("/dev/sr0")?;
37 let toc = reader.read_toc()?;
38 println!("{:#?}", toc);
39
40 let data = reader.read_track(&toc, 11)?;
41 let wav_track = CdReader::create_wav(data);
42 std::fs::write("myfile.wav", wav_track)?;
43
44 Ok(())
45}