aboutsummaryrefslogtreecommitdiff
path: root/src/audio_core/renderer
AgeCommit message (Collapse)Author
2023-07-02Use spans over guest memory where possible instead of copying data.Kelebek1
2023-06-22Remove memory allocations in some hot pathsKelebek1
2023-06-07core_timing: Use CNTPCT as the guest CPU tickMorph
Previously, we were mixing the raw CPU frequency and CNTFRQ. The raw CPU frequency (1020 MHz) should've never been used as CNTPCT (whose frequency is CNTFRQ) is the only counter available.
2023-06-04audio_renderer: resolve adsp thread deadlock shutdownLiam
2023-05-18Smooth out the DSP callback by adding a 5ms wait time limitKelebek1
2023-05-01Wait for the terminate event before destroying a system instanceKelebek1
2023-04-01Merge pull request #9969 from bylaws/masterbunnei
Audio synchronisation improvements
2023-03-27Run clang-formatBilly Laws
2023-03-27audio: Wait for samples on the emulated DSP side to avoid desyncsBilly Laws
Waiting on the host side is inaccurate and leads to desyncs in the event of the sink missing a deadline that require stalls to fix. By waiting for the sink to have space before even starting rendering such desyncs can be avoided.
2023-03-26audio: Interpolate system manager sample count using host sink sample infoBilly Laws
This avoids the need to stall if the host sink sporadically misses the deadline, in such a case the previous implementation would report them samples as being played on-time, causing the guest to send more samples and leading to a gradual buildup.
2023-03-23memory: rename global memory references to application memoryLiam
2023-03-12general: fix spelling mistakesLiam
2023-03-10Merge pull request #9917 from Morph1984/the-real-timeliamwhite
native_clock: Re-adjust the RDTSC frequency to its real frequency
2023-03-07core: Promote CPU/GPU threads to time criticalMorph
And also demote Audren and CoreTiming to High thread priority.
2023-03-06hle: rename legacy errors to ResultsLiam
2023-03-02Fix a bug with the Reverb command in reading from the pre_delay line.Kelebek1
2023-02-16Merge pull request #9769 from Kelebek1/audio_oobbunnei
[audio_core] Fix depop prepare
2023-02-15Merge pull request #9796 from liamwhite/currentliamwhite
general: rename CurrentProcess to ApplicationProcess
2023-02-14remove static from pointer sized or smaller types for aesthetics, change ↵arades79
constexpr static to static constexpr for consistency Signed-off-by: arades79 <scravers@protonmail.com>
2023-02-14add static lifetime to constexpr values to force compile time evaluation ↵arades79
where possible Signed-off-by: arades79 <scravers@protonmail.com>
2023-02-13general: rename CurrentProcess to ApplicationProcessLiam
2023-02-13Fix biquad filter command's state buffer offsetKelebek1
2023-02-11Add fallback for memory read/write in case the address goes over a 4K pageKelebek1
2023-02-11Fix depop prepare receiving bad mix infos and writing out of bounds, and ↵Kelebek1
update aux a bit, may help
2023-02-10biquad_filter: Clamp f64 in ApplyBiquadFilterFloatMerry
2023-02-10biquad_filter: Fix rounding in ApplyBiquadFilterIntMerry
2023-01-14upsample: Fix coefficient formatMerry
2023-01-14audio_core: Fix off-by-one error in upsamplerMerry
2022-12-10audio_core: remove explicitly defaulted and implicitly deleted constructorsLiam
2022-12-03Merge pull request #9289 from liamwhite/fruit-companyliamwhite
general: fix compile for Apple Clang
2022-11-22general: fix compile for Apple ClangLiam
2022-11-22Use the maximum input index for samples buffer span size, not just the input ↵Kelebek1
count
2022-11-13Add break for default casesKyle Kienapfel
Visual Studio has an option to search all files in a solution, so I did a search in there for "default:" looking for any missing break statements. I've left out default statements that return something, and that throw something, even if via ThrowInvalidType. UNREACHABLE leads towards throw R_THROW macro leads towards a return
2022-10-22general: Resolve -Wclass-memaccessMorph
2022-10-19Update audio_core for firmware 15.0.0Kelebek1
2022-10-12kernel: remove KWritableEventLiam
2022-10-03common: remove "yuzu:" prefix from thread namesLiam
2022-09-21audio_renderer: Make GetCommandBuffer() take a u32Lioncash
This function is only ever called with unsigned types, and all of the other interface functions take session_id as a u32, so this makes the class a little more consistent.
2022-09-16Merge pull request #8914 from lioncash/audio-constbunnei
audio_core: Mark several member functions as const
2022-09-16Merge pull request #8911 from lioncash/cexpr-stringMorph
audio_device: Make AudioDeviceName constructor constexpr
2022-09-16audio_renderer: Pass command buffer by const referenceLioncash
This is just being copied and isn't modified at all.
2022-09-16node_states: Mark relevant member functions as constLioncash
2022-09-16i3dl2/reverb: Mark relevant member functions as constLioncash
These two don't modify member state.
2022-09-16behavior_info: Mark CopyErrorInfo as constLioncash
This doesn't modify member state. We can also mark the parameter of AppendError as const as well, since it isn't modified.
2022-09-16audio_device: Mark GetDeviceVolume as constLioncash
This doesn't modify instance state.
2022-09-15Merge pull request #8878 from Kelebek1/remove_pausebunnei
Remove pause callbacks from coretiming
2022-09-15Merge pull request #8901 from lioncash/docsliamwhite
audio_core: Amend documentation comment tags
2022-09-15audio_core: Amend documentation tagsLioncash
Resolves a wackload of -Wdocumentation warnings due to mismatching tags and whatnot.
2022-09-15audio_device: Mark member functions as const where applicableLioncash
These member functions don't modify any internal state.
2022-09-15audio_device: Make AudioDeviceName constructor constexprLioncash
These are used as read-only arrays, so we can make the data read-only and available at compile-time. Now constructing an AudioDevice no longer needs to initialize some tables