Closed jeffmikels closed 3 years ago
The Stream Decoder assumes (according to its documentation) that every frame given to it is a whole frame. But if I remember correctly, mumble only sends whole frames when using opus. So I dont think the problem is with buffring...
You are using 2 channels, could you test if this problem occurs too if you use 1 channel?
Edit: you could also try after the map call: add something like .retainWhere (frame=>frame.isNotEmpty). We once got an error were mumble sendet empty frames.
Unpredictably, we are getting an OpusException (-1) invalid argument error when using the StreamOpusDecoder.
Here's the relevant code:
NOTES:
Bottom line, it appears that StreamOpusDecoder is not correctly buffering the packets to wait for full-sized opus packets before attempting to decode.