From 7b5be35112a292d1fa7adb055a4d5cac0a88d90e Mon Sep 17 00:00:00 2001 From: Jacob Date: Thu, 28 May 2026 11:30:48 -0400 Subject: [PATCH] fix: encode to a new vec instead of an empty one when rendering, log more stuff for debugging --- src/command/render.rs | 1 - src/render_data.rs | 11 +++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/command/render.rs b/src/command/render.rs index 773ddd4..0835544 100644 --- a/src/command/render.rs +++ b/src/command/render.rs @@ -304,7 +304,6 @@ pub async fn handle(state: State, interaction: Interaction) { .between_in_vc(start, end, guild_id, voice_channel_id); while let Some(recording) = recordings.try_next().await.expect("TODO") { - tracing::debug!(?recording); let recording_data = state .recording_manager .read(&recording) diff --git a/src/render_data.rs b/src/render_data.rs index c0ac44f..1f2fd4d 100644 --- a/src/render_data.rs +++ b/src/render_data.rs @@ -66,13 +66,16 @@ impl RenderManager { (), Infallible, // TODO: a real error type > { - let mut bytes = Vec::new(); - let mut encoder = opus2::Encoder::new(sample_rate, channels, Application::Audio).expect("TODO"); - let encode_result = encoder.encode(&samples, &mut bytes); - tracing::info!(?encode_result); + const MAX_SIZE: usize = usize::MAX / 4; + let encode_result = encoder.encode_vec(&samples, MAX_SIZE); + if let Err(error) = &encode_result { + tracing::error!(?error); + } else { + tracing::info!("encode ok"); + } encode_result.expect("TODO"); let path = render.to_string();