diff options
| author | lizzie <lizzie@eden-emu.dev> | 2026-09-12 09:59:33 +0200 |
|---|---|---|
| committer | crueter <crueter@eden-emu.dev> | 2026-09-12 09:59:33 +0200 |
| commit | ff8368c6066faf3962e2f77af7da4954e2ff6a43 (patch) | |
| tree | 34addf136793c9f69495c261dd4e0c64ef444ba8 /CMakeLists.txt | |
| parent | 8a22f1845b8b7ec19fbb518b696513e36d42b317 (diff) | |
[audio] Replace libopus with FFmpeg (#4169)
FFmpeg offers two opus decoders:
- libopus, this one is fed the same data (that affects output) as the previous libopus decoder had as well
- native opus decoder: this only takes Float32 samples, we then need to invoke swrescale to translate between s16 (what switch sends) and float32 (what FFmpeg expects), the process is computationally more expensive, but trades off neatly as the native opus decoder is very optimised
It also relegates the handling to FFmpeg, which simplifies existing code (more concretely, by using the "fill/drain" scheme for packets/frames)
Closes #2897
Signed-off-by: lizzie <lizzie@eden-emu.dev>
Co-authored-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4169
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Reviewed-by: Maufeat <sahyno1996@gmail.com>
Diffstat (limited to 'CMakeLists.txt')
| -rw-r--r-- | CMakeLists.txt | 15 |
1 files changed, 0 insertions, 15 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 266331b0ac..f5c360b294 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -464,21 +464,6 @@ if (NOT YUZU_STATIC_ROOM) if (ZLIB_ADDED) add_library(ZLIB::ZLIB ALIAS zlibstatic) endif() - - # Opus - AddJsonPackage(opus) - - if (Opus_ADDED) - if (MSVC AND CXX_CLANG) - target_compile_options(opus PRIVATE - $<$<COMPILE_LANGUAGE:C,CXX>:-Wno-implicit-function-declaration> - ) - endif() - endif() - - if (NOT TARGET Opus::opus) - add_library(Opus::opus ALIAS opus) - endif() endif() if(NOT TARGET Boost::headers) |
