refactor(audio): extract IFormatDecoder/WavFormatDecoder and wire Content-Type to JS format selection

StreamDecoder is now format-agnostic; WavFormatDecoder delegates to WavUtils; contentType flows C# to JS.
This commit is contained in:
daniel-c-harvey
2026-06-11 06:08:09 -04:00
parent f8186fb7c7
commit 0b0bcb3dee
9 changed files with 308 additions and 105 deletions
@@ -65,9 +65,9 @@ public class AudioInteropService : IAsyncDisposable
}
// Streaming methods
public async Task<AudioOperationResult> InitializeStreaming(string playerId, long totalStreamLength)
public async Task<AudioOperationResult> InitializeStreaming(string playerId, long totalStreamLength, string contentType)
{
return await InvokeJsAsync<AudioOperationResult>("DeepDrftAudio.initializeStreaming", playerId, totalStreamLength);
return await InvokeJsAsync<AudioOperationResult>("DeepDrftAudio.initializeStreaming", playerId, totalStreamLength, contentType);
}
public async Task<StreamingResult> ProcessStreamingChunk(string playerId, byte[] audioChunk)