Zephyron
9e49ff3897
Revert "audio_core: Improve audio renderer compatibility and error handling"
...
This reverts commit c8aeab799d .
2025-06-23 19:15:09 +10:00
Zephyron
39ed0afa1f
Revert "Implement IApplicationFunctions function 210 (RequestToAcquireUserUsedMemory)"
...
This reverts commit 1471d150d0 .
2025-06-23 19:14:23 +10:00
Zephyron
1471d150d0
Implement IApplicationFunctions function 210 (RequestToAcquireUserUsedMemory)
2025-06-20 15:52:14 +10:00
Zephyron
c8aeab799d
audio_core: Improve audio renderer compatibility and error handling
...
- Change mix size mismatch from error to warning with recovery
- Adjust input pointer when consumed size doesn't match header size
to prevent desync and allow processing to continue
- Expand VoiceInfo::InParameter struct by 24 bytes (0x170 -> 0x188)
to support newer audio renderer versions
- Update static_assert to reflect new structure size
This improves compatibility with games that use newer audio renderer versions or have slight structural differences.
Signed-off-by: Zephyron <zephyron@citron-emu.org >
2025-06-16 17:24:58 +10:00
Zephyron
abf5f6730b
audio_core: Add OpenAL audio backend support
...
- Add complete OpenAL sink implementation with robust error handling
- Support for device enumeration using ALC extensions
- Implement dummy streams for graceful degradation when OpenAL fails
- Add proper audio threading and buffer management
- Include comprehensive logging and diagnostic information
- Add stream limits and retry mechanisms for stability
Additional changes:
- Add ENABLE_OPENAL CMake option and OpenAL dependency management
- Include openal-soft in vcpkg dependencies
- Add OpenAL to audio engine settings enum
The OpenAL backend provides an alternative audio solution alongside
existing Cubeb and SDL2 backends, with enhanced device compatibility
and improved error recovery mechanisms.
Signed-off-by: Zephyron <zephyron@citron-emu.org >
2025-06-01 15:26:55 +10:00
Zephyron
1196001e08
audio_core: Update CurrentRevision from 11 to 15
...
Updates the audio core revision number to match newer firmware requirements, allowing the emulator to properly handle audio features from more recent Switch software.
Signed-off-by: Zephyron <zephyron@citron-emu.org >
2025-05-07 18:52:16 +10:00
Zephyron
b2d9cf4a01
chore: update project branding to CITRON
...
Signed-off-by: Zephyron <zephyron@citron-emu.org >
2025-05-06 16:11:33 +10:00
Zephyron
5e16e20427
chore: update project branding to Citron
...
Signed-off-by: Zephyron <zephyron@citron-emu.org >
2025-05-06 16:08:59 +10:00
Zephyron
bfb82e577c
chore: update project branding to citron
...
Signed-off-by: Zephyron <zephyron@citron-emu.org >
2025-05-06 16:06:48 +10:00
Liam
964e19ab56
oboe_sink: handle temporary stream creation failure
2024-02-23 10:30:52 -05:00
Liam
2c00599a53
audio: fix released buffer bounds check
2024-02-22 20:20:31 -05:00
Liam
2e4a6b7f92
audio: format
2024-02-20 22:51:39 -05:00
Liam
c575a85233
audio: rewrite IAudioDevice
2024-02-20 22:15:38 -05:00
Liam
ea4703cb31
audio: rewrite IHardwareOpusDecoderManager
2024-02-20 22:15:38 -05:00
Liam
6012c9fe3a
audio: rewrite IAudioRendererManager
2024-02-20 22:15:37 -05:00
Liam
a05bd3c47e
audio: rewrite IAudioOut
2024-02-20 22:15:37 -05:00
Liam
2a2c92f181
audio: rewrite IAudioInManager
2024-02-20 22:15:37 -05:00
FearlessTobi
310c1f50be
scope_exit: Make constexpr
...
Allows the use of the macro in constexpr-contexts.
Also avoids some potential problems when nesting braces inside it.
2024-02-19 16:00:46 +01:00
liamwhite
90cb852908
Merge pull request #12814 from Kelebek1/time_new_ipc
...
Move time services to new IPC and add debug printing
2024-01-29 09:08:46 -05:00
Kelebek1
19a2f12692
Use the input process handle to get the correct application's memory
2024-01-28 18:51:43 +00:00
Kelebek1
da410506a4
Move time services to new IPC.
...
Add some fixes/improvements to usage with the new IPC
2024-01-27 03:30:09 +00:00
Fernando Sahmkow
590d9b7e1d
Core: Clang format and other small issues.
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
0a2536a0df
SMMU: Initial adaptation to video_core.
2024-01-18 21:12:30 -05:00
Viktor Szépe
90ab89a0b0
Merge remote-tracking branch 'origin/master' into typos3
2024-01-16 00:09:00 +00:00
Viktor Szépe
2044ae6b3a
Fix more typos
2024-01-15 23:26:53 +00:00
Liam
d940974789
audio: fetch process object from handle table
2024-01-12 10:03:16 -05:00
Liam
f34d3d7e84
core_timing: remove user data value
2023-12-23 15:36:44 -05:00
Fernando S
d61df0f400
Merge pull request #12387 from liamwhite/oboe
...
android: add oboe audio sink
2023-12-19 16:15:07 +01:00
Liam
a7731abb72
oboe_sink: specify additional required parameters
2023-12-18 17:27:32 -05:00
Liam
797e8fdbc3
oboe_sink: set low latency performance mode
2023-12-17 21:05:00 -05:00
Liam
e01c535178
oboe_sink: implement channel count querying
2023-12-17 10:10:14 -05:00
Liam
7239547ead
android: add oboe audio sink
2023-12-17 01:42:59 -05:00
Liam
6851e93296
audio: skip coefficient normalization for downmix
2023-12-16 13:05:55 -05:00
Kelebek1
ffbba74c91
Have GetActiveChannelCount return the system channels instead of host device channels
2023-12-16 12:49:28 -05:00
Liam
de594995da
opus: fix stereo stream count check in multistream decoder object
2023-11-17 08:26:22 -05:00
Liam
ecaa038b4d
audio_core: ignore renderer wait when stream is paused
2023-11-12 23:10:53 -05:00
Kelebek1
90aa937593
Convert files to LF eol
2023-11-04 18:25:40 +00:00
Kelebek1
a294beb116
Allow 0 stereo count
2023-11-03 11:45:40 -04:00
Liam
68ea0a2b72
audio: fix shutdown deadlock in audio renderer
2023-10-13 16:34:31 -04:00
Kelebek1
ec6ddaf766
Clear DSP buffer after each execution
2023-10-10 18:22:08 +01:00
Liam
0448eb6f0f
ci: fix new codespell errors
2023-10-02 18:03:05 -04:00
liamwhite
d6cf54dd2f
Merge pull request #11520 from Kelebek1/estimated_time
...
Do not consider voice commands in time estimation, fix adpcm estimate
2023-09-18 09:30:56 -04:00
Kelebek1
5d7571114e
Do not consider voice commands in time estimation, fix adpcm estimate
2023-09-18 10:38:14 +01:00
Kelebek1
67e2d5c28b
Reimplement HardwareOpus
2023-09-16 11:56:25 -04:00
liamwhite
3df56dc790
Merge pull request #11465 from Kelebek1/skip_remaining_reset
...
[Audio] Do not reset the remaining command count each time
2023-09-10 13:40:32 -04:00
Kelebek1
800d6f7d0d
Fix data source version 1 command looping
2023-09-08 15:03:21 +01:00
Kelebek1
4baaaf6a99
Do not reset the command buffer command count each time
2023-09-07 20:53:48 +01:00
liamwhite
69949e7964
Merge pull request #11428 from Kelebek1/adsp_rework
...
Rework ADSP into a wrapper for apps
2023-09-06 09:13:06 -04:00
Kelebek1
ebd19dec99
Rework ADSP into a wrapper for apps
2023-09-04 17:12:16 +01:00
Danila Malyutin
785e480b62
msvc: set warning level to /W4 globally
...
And fix a bunch of warnings
2023-09-03 18:42:10 +04:00