aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--remuxer/src/snippet.rs4
-rw-r--r--transcoder/src/snippet.rs6
2 files changed, 8 insertions, 2 deletions
diff --git a/remuxer/src/snippet.rs b/remuxer/src/snippet.rs
index 75e0471..1429df1 100644
--- a/remuxer/src/snippet.rs
+++ b/remuxer/src/snippet.rs
@@ -185,7 +185,9 @@ pub fn write_snippet_into(
block.track = 1;
// TODO this does generate overflows sometimes
- block.timestamp_off = (index_block.pts - start_block.pts).try_into().unwrap();
+ block.timestamp_off = (index_block.pts as i64 - start_block.pts as i64)
+ .try_into()
+ .unwrap();
if let Some(duration) = duration {
blocks.push(MatroskaTag::BlockGroup(Master::Collected(vec![
MatroskaTag::BlockDuration(duration),
diff --git a/transcoder/src/snippet.rs b/transcoder/src/snippet.rs
index 9f21bf8..90512c4 100644
--- a/transcoder/src/snippet.rs
+++ b/transcoder/src/snippet.rs
@@ -26,7 +26,7 @@ pub async fn transcode(
&["snip-tc", key, &format!("{enc:?}")],
move |mut output| async move {
let _permit = LOCAL_VIDEO_TRANSCODING_TASKS.acquire().await?;
- debug!("transcoding snippet {key}");
+ debug!("transcoding snippet with {enc:?}");
let mut args = Vec::new();
match enc {
@@ -82,6 +82,10 @@ pub async fn transcode(
.args(args)
.args(&["-f", "webm", "pipe:1"])
.spawn()?;
+ // let mut proc = Command::new("cat")
+ // .stdin(Stdio::piped())
+ // .stdout(Stdio::piped())
+ // .spawn()?;
let stdin = proc.stdin.take().unwrap();
let mut stdout = proc.stdout.take().unwrap();