xiph / xiph/opus

how much difference is expected after data round trip?

Open
#236 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
3.3k
Forks
808
PR merge metrics
No merged PRs in 30d

Description

Hello opus community,

I could use a sanity check from somebody with opus expertise...

We are using opus through libsndfile to read/write OggOpus files, and we observed significant differences between data were are trying to write and the data we read back. The absolute differences for individual values can be as large as about 1.

This was specifically for randomly-generated data in the [-1, 1] range. See my post on libsndflie github for more details, such as repro code, data, and pictures.

The more I am looking into it, the more I am inclined to think this is as expected, and randomly generated data is just a bad edge case and not informative to use. We observe much more reasonable differences with something like a pure tone sine wave. But I would really appreciate a confirmation from somebody more familiar with opus codec.

Thank you!

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Review the linked libsndfile issue for the repro code, data, and pictures, then compare the observed round-trip behavior for random samples and a sine wave with Opus expectations. Done means confirming whether the differences are expected or identifying a reproducible codec defect; this issue does not name an Opus source file or test.

Written by the indexing model from the issue text.

Assessment

Domain
audio-video-rtc
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.