From 016b8fec6ed9908e11e72ec7b9930e5908d58a02 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Fri, 4 Aug 2023 10:16:02 +0200 Subject: move seek index write code --- remuxer/src/import/seek_index.rs | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'remuxer') diff --git a/remuxer/src/import/seek_index.rs b/remuxer/src/import/seek_index.rs index 363a12f..0427287 100644 --- a/remuxer/src/import/seek_index.rs +++ b/remuxer/src/import/seek_index.rs @@ -7,7 +7,24 @@ use jellymatroska::{ MatroskaTag, }; use log::{debug, info, trace, warn}; -use std::collections::BTreeMap; +use std::{collections::BTreeMap, fs::File, path::Path}; + +pub fn write_all(path: &Path) -> Result<()> { + let seek_index = { + let input = File::open(&path).unwrap(); + let mut input = EbmlReader::new(input); + import_seek_index(&mut input)? + }; + for (tn, index) in seek_index { + info!("writing index {tn} with {} blocks", index.blocks.len()); + bincode::encode_into_std_write( + index, + &mut File::create(path.with_extension(&format!("si.{tn}")))?, + bincode::config::standard(), + )?; + } + Ok(()) +} pub fn import_seek_index(input: &mut EbmlReader) -> Result> { let mut seek_index = BTreeMap::new(); -- cgit v1.2.3-70-g09d2