v1.1.1
v1.1.1 — Codec correctness and API polish
What's fixed
- Fixed mono decoders handling stereo CELT/hybrid packets by decoding stereo payloads with stereo CELT state before downmixing.
- Enforced the Opus 120 ms packet-duration limit on encode and decode paths.
- Rejected unsupported encoder frame sizes instead of silently padding or trimming non-20 ms multiples.
- Returned
ErrBufferTooSmallfromDecodeinstead of silently truncating output after advancing decoder state. - Made
GetLastPacketDurationreport the actual decoded packet duration. - Fixed mono SILK multi-frame LBRR side-symbol consumption to keep the range decoder aligned.
- Reset CELT final-range folding seed and hardened low-budget transient fallback.
- Fixed raw-only entropy
EncodeBitsflush behavior.
API additions since v1.1.0
- Added Encoder getters for bitrate, complexity, VBR state, and application mode.
- Exposed
SetSignalType/SignalTypeso callers can provide voice/music hints.
Validation
go test ./...go vet ./...
Upgrade: go get github.com/darui3018823/opus@v1.1.1