From 913be3c631b40f87bb8f190e95b75eb4522c8a6d Mon Sep 17 00:00:00 2001 From: "j.foucher" Date: Mon, 2 Mar 2026 14:28:18 +0100 Subject: [PATCH] Add server-side Opus encoding diagnostic logs Logs compressed audio size in HandleAudioReceived to diagnose why MulticastReceiveAgentAudio (Unreliable) never reaches clients. Co-Authored-By: Claude Opus 4.6 --- .../PS_AI_ConvAgent_ElevenLabsComponent.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Private/PS_AI_ConvAgent_ElevenLabsComponent.cpp b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Private/PS_AI_ConvAgent_ElevenLabsComponent.cpp index ad5e354..a2db8d2 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Private/PS_AI_ConvAgent_ElevenLabsComponent.cpp +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Private/PS_AI_ConvAgent_ElevenLabsComponent.cpp @@ -648,8 +648,23 @@ void UPS_AI_ConvAgent_ElevenLabsComponent::HandleAudioReceived(const TArray CompressedData; CompressedData.Append(OpusWorkBuffer.GetData(), CompressedSize); + + if (bDebug) + { + UE_LOG(LogPS_AI_ConvAgent_ElevenLabs, Log, + TEXT("[NET-SRV] Multicasting Opus audio: %d bytes PCM → %d bytes Opus (%.1f:1 ratio)"), + PCMData.Num(), CompressedSize, + PCMData.Num() > 0 ? static_cast(PCMData.Num()) / CompressedSize : 0.f); + } + MulticastReceiveAgentAudio(CompressedData); } + else + { + UE_LOG(LogPS_AI_ConvAgent_ElevenLabs, Warning, + TEXT("[NET-SRV] Opus encode produced 0 bytes from %d bytes PCM — audio not sent."), + PCMData.Num()); + } } // Server local playback (Listen Server is also a client).