diff options
Diffstat (limited to 'remuxer/src/import/seek_index.rs')
-rw-r--r-- | remuxer/src/import/seek_index.rs | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/remuxer/src/import/seek_index.rs b/remuxer/src/import/seek_index.rs index 3ab4a2c..efd2a78 100644 --- a/remuxer/src/import/seek_index.rs +++ b/remuxer/src/import/seek_index.rs @@ -10,6 +10,10 @@ use log::{debug, info, trace, warn}; use std::{collections::BTreeMap, fs::File, path::Path}; pub fn write_all(path: &Path) -> Result<()> { + if path.with_extension(&format!("si.1")).exists() { + info!("seek index already present"); + return Ok(()); + } let seek_index = { let input = File::open(&path).unwrap(); let mut input = EbmlReader::new(input); @@ -72,7 +76,7 @@ fn import_seek_index_segment( match item { MatroskaTag::Timestamp(ts) => pts = ts, MatroskaTag::BlockGroup(_) => { - debug!("group"); + trace!("group"); let mut children = children.unwrap(); // let position = children.position(); //? TODO where should this point to? cluster or block? // probably block while let Some(Ok(Unflat { @@ -104,11 +108,11 @@ fn import_seek_index_segment( } MatroskaTag::SimpleBlock(buf) => { let block = Block::parse(&buf)?; - debug!( + trace!( "simple block: track={} tso={}", block.track, block.timestamp_off ); - debug!("{pts} {}", block.timestamp_off); + trace!("{pts} {}", block.timestamp_off); seek_index .entry(block.track) .or_insert(SeekIndex { blocks: vec![] }) @@ -119,7 +123,7 @@ fn import_seek_index_segment( size: block.data.len(), }); } - _ => debug!("(rsc) tag ignored: {item:?}"), + _ => trace!("(rsc) tag ignored: {item:?}"), } } else { break; |