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 /shell.nix | |
| 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 'shell.nix')
| -rwxr-xr-x | shell.nix | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -12,7 +12,7 @@ pkgs.mkShellNoCC { git cmake clang gnumake patch jq pkg-config # libraries openssl boost fmt nlohmann_json lz4 zlib zstd - enet libopus vulkan-headers vulkan-utility-libraries + enet vulkan-headers vulkan-utility-libraries spirv-tools spirv-headers vulkan-loader unzip glslang python3 httplib cpp-jwt ffmpeg-headless libusb1 cubeb |
