aboutsummaryrefslogtreecommitdiff
path: root/remuxer/src/trim_writer.rs
diff options
context:
space:
mode:
Diffstat (limited to 'remuxer/src/trim_writer.rs')
-rw-r--r--remuxer/src/trim_writer.rs18
1 files changed, 11 insertions, 7 deletions
diff --git a/remuxer/src/trim_writer.rs b/remuxer/src/trim_writer.rs
index 65d3589..bed90e7 100644
--- a/remuxer/src/trim_writer.rs
+++ b/remuxer/src/trim_writer.rs
@@ -4,7 +4,7 @@ use std::{
};
use anyhow::anyhow;
-use log::warn;
+use log::{trace, warn};
pub struct TrimWriter<W> {
inner: W,
@@ -36,12 +36,16 @@ impl<W: Write> Write for TrimWriter<W> {
));
}
- let buf = &buf[start..end];
- if !buf.is_empty() {
- self.inner.write_all(buf)?;
- self.position += buf.len()
- }
- Ok(buf.len())
+ let tbuf = &buf[start..end];
+ Ok(if !tbuf.is_empty() {
+ trace!("trim={start}..{end} avail={}", buf.len());
+ let sz = self.inner.write(tbuf)?;
+ self.position += sz;
+ sz
+ } else {
+ trace!("skip={}", buf.len());
+ buf.len()
+ })
}
fn flush(&mut self) -> std::io::Result<()> {