Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
Create OpusCodec class, similar to CeltCodec, in order to load Opus' functions from a shared library #3431
In the past we already encountered a problem where we couldn't link statically to both Opus and CELT at the same time, because there are multiple symbols (functions) shared across the two libraries, as Opus is the successor of CELT.
Initially this was solved by building Opus in C++ mode. which provides name mangling for the symbols, but since version 1.1 this isn't possible anymore:
We currently build Opus as static library and CELT as shared, loading it through the
#3427 adds support for RNNoise, an advanced noise suppression library, which has some functions shared with Opus, resulting in a linker error.
This pull request adds a new class called
Please provide context so I don’t have to work through and think about an entire other PR to make sense of this. This adds a ton of overhead for me when you already have the context and could describe it.
Kissaki left a comment
The commit message should be improved. The summary line holds too much information, and ends up being too long.