Decode RFC 6716 CELT PVQ bands#107
Conversation
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #107 +/- ##
==========================================
- Coverage 82.33% 82.13% -0.20%
==========================================
Files 17 20 +3
Lines 2694 3369 +675
==========================================
+ Hits 2218 2767 +549
- Misses 381 482 +101
- Partials 95 120 +25
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
RFC 6716 / 8251 conformationStatus: fail (informational) The action extracts the RFC 6716 reference implementation, applies the RFC 8251 decoder update patch, and then builds the patched reference tools. This check is informational while CELT support is incomplete; the workflow still reports success. Legend: numeric cells are rfc6716
rfc8251
Run output |
d443fec to
88fac34
Compare
There was a problem hiding this comment.
Pull request overview
Adds CELT PVQ band-shape decoding primitives (RFC 6716 §4.3.4) and supporting range-decoder helpers, along with targeted unit tests to validate the new PVQ/CWRS/band math and decoding paths.
Changes:
- Extend the range decoder with
SetStorageSize,DecodeCumulative, andUpdateCumulativeplus new tests. - Introduce CELT CWRS pulse decoding and PVQ residual normalization/rotation helpers with tests.
- Add recursive PVQ band decoding (
quantBand/quantAllBands) and math helpers with tests.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| internal/rangecoding/decoder.go | Adds storage truncation support and cumulative decode/update helpers for CELT-style symbols. |
| internal/rangecoding/decoder_test.go | Adds unit tests covering cumulative decoding and storage-size adjustment. |
| internal/celt/cwrs.go | Implements CWRS (PVQ pulse vector) decoding helpers. |
| internal/celt/cwrs_test.go | Adds tests for CWRS recurrence rows and decoding. |
| internal/celt/pvq.go | Implements PVQ residual normalization, spreading rotation, and stereo merge helpers. |
| internal/celt/pvq_test.go | Adds tests for PVQ residual helpers, rotation, alg unquant, and stereo merge. |
| internal/celt/bands.go | Adds recursive CELT band shape decoding (quantBand/quantAllBands) and associated math/Hadamard helpers. |
| internal/celt/bands_test.go | Adds tests covering quantBand/quantAllBands and helper math routines. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
88fac34 to
72fe5c1
Compare
Summary
unusedsuppressions because this PR intentionally stages the PVQ primitives before the following synthesis/wiring slice consumes them.RFC / reference notes