From 68a0ae056905375d997979d3ca327966d4242697 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Mon, 2 Oct 2023 14:07:30 +0200 Subject: segment transcoding --- stream/src/segment.rs | 6 +++++- transcoder/src/snippet.rs | 4 +++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/stream/src/segment.rs b/stream/src/segment.rs index 02f3100..08d3efa 100644 --- a/stream/src/segment.rs +++ b/stream/src/segment.rs @@ -50,7 +50,11 @@ pub async fn segment_stream( ) .await?; let mut output = File::open(location.path()).await?; - tokio::io::copy(&mut output, &mut b).await?; + tokio::task::spawn(async move { + if let Err(err) = tokio::io::copy(&mut output, &mut b).await { + warn!("cannot write stream: {err}") + } + }); } else { let b = SyncIoBridge::new(b); tokio::task::spawn_blocking(move || { diff --git a/transcoder/src/snippet.rs b/transcoder/src/snippet.rs index 5afeb15..3cc9736 100644 --- a/transcoder/src/snippet.rs +++ b/transcoder/src/snippet.rs @@ -50,6 +50,8 @@ pub async fn transcode( ] .to_vec(), }; + info!("encoding with {:?}", args.join(" ")); + let mut proc = Command::new("ffmpeg") .stdin(Stdio::piped()) .stdout(Stdio::piped()) @@ -63,7 +65,7 @@ pub async fn transcode( input(stdin); copy(&mut stdout, &mut output).await?; - + proc.wait().await.unwrap().exit_ok()?; info!("done"); Ok(()) -- cgit v1.2.3-70-g09d2