brstm_fix/
brstm-fix.rs

1use std::{env::args, fs::File};
2
3use brstm::BrstmInformation;
4
5pub fn try_main() -> binrw::BinResult<()> {
6    let mut files = args().skip(1);
7    let in_filename = files.next().expect("no in filename");
8    let out_filename = files.next().expect("no out filename");
9    let mut f = File::open(in_filename)?;
10    let mut src = BrstmInformation::from_reader(&mut f)?.into_with_data(&mut f)?;
11    drop(f);
12    src.info.fix_tracks();
13    let mut outf = File::create(out_filename)?;
14    src.write_brstm(&mut outf)?;
15    Ok(())
16}
17
18pub fn main() {
19    try_main().unwrap();
20}