summaryrefslogtreecommitdiffstats
path: root/src/audio_core/sink/sink_stream.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* sink_stream: Resolve heap buffer corruption due to out of bounds writeMorph2023-06-301-14/+20
| | | | Also, remove the use of ScratchBuffer when upmixing, as other channels may not be initialized with zeroed out data.
* Remove memory allocations in some hot pathsKelebek12023-06-221-7/+8
|
* core_timing: Use CNTPCT as the guest CPU tickMorph2023-06-081-1/+0
| | | | | 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.
* android: audio_core: sink_stream: Remove unnecessary check.bunnei2023-06-061-3/+0
|
* Merge pull request #10508 from yuzu-emu/limebunnei2023-06-061-0/+3
|\ | | | | Project Lime - yuzu Android Port
| * android: audio_core: Avoid shutdown hang.bunnei2023-06-031-0/+3
| |
* | audio_renderer: resolve adsp thread deadlock shutdownLiam2023-06-041-2/+3
|/
* Audren wait as suggested by ByLawsKelebek12023-05-271-0/+3
|
* Smooth out the DSP callback by adding a 5ms wait time limitKelebek12023-05-181-2/+2
|
* Use GetGlobalTimeNs as opposed to clock ticksBilly Laws2023-04-081-3/+2
|
* Add some explicit latency to sample count reportingBilly Laws2023-04-041-1/+2
| | | | Some games have very tight scheduling requirements for their audio which can't really be matched on the host, adding a constant to the reported value helps to provide some leeway.
* audio_core: No longer stall when sink queue is fullBilly Laws2023-03-271-43/+0
| | | | Now the audout and audren update rates are tied to the sink status stalling is no longer necessary.
* Run clang-formatBilly Laws2023-03-271-5/+5
|
* audio: Wait for samples on the emulated DSP side to avoid desyncsBilly Laws2023-03-271-0/+15
| | | | 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.
* audio: Interpolate system manager sample count using host sink sample infoBilly Laws2023-03-261-0/+21
| | | | 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.
* Merge pull request #9796 from liamwhite/currentliamwhite2023-02-151-2/+2
|\ | | | | general: rename CurrentProcess to ApplicationProcess
| * general: rename CurrentProcess to ApplicationProcessLiam2023-02-141-2/+2
| |
* | remove static from pointer sized or smaller types for aesthetics, change constexpr static to static constexpr for consistencyarades792023-02-141-6/+6
| | | | | | | | Signed-off-by: arades79 <scravers@protonmail.com>
* | add static lifetime to constexpr values to force compile time evaluation where possiblearades792023-02-141-6/+6
|/ | | | Signed-off-by: arades79 <scravers@protonmail.com>
* Merge pull request #9289 from liamwhite/fruit-companyliamwhite2022-12-031-4/+4
|\ | | | | general: fix compile for Apple Clang
| * general: fix compile for Apple ClangLiam2022-11-231-4/+4
| |
* | audio_core: sink_stream: Hold the suspend lock when process is stalled.bunnei2022-11-301-5/+6
|/ | | | - Prevents us from clashing with other callers trying to un/stall.
* Do not try to pause core timing from the audio thread when using single-coreKelebek12022-09-221-2/+7
|
* Merge pull request #8878 from Kelebek1/remove_pausebunnei2022-09-151-0/+16
|\ | | | | Remove pause callbacks from coretiming
| * Remove pause callbacks from coretimingKelebek12022-09-131-0/+16
| |
* | Remove a pragma once from a cpp fileKelebek12022-09-121-2/+0
|/
* Don't stall with nvdecKelebek12022-09-041-1/+7
|
* Rework audio output, connecting AudioOut into coretiming to fix desync during heavy loads.Kelebek12022-09-021-0/+259