Commit graph

56 commits

Author SHA1 Message Date
wheremyfoodat
b251f84ab1 DSP: Add option to enable/disable AAC 2024-11-28 19:10:55 +02:00
wheremyfoodat
04d047ff75 Some formatting 2024-11-22 02:48:32 +02:00
wheremyfoodat
83aafa31f0 Better audio playback code 2024-11-22 02:33:57 +02:00
wheremyfoodat
878ff419fd DSP: Add SSE quad-conversion code
Co-Authored-By: Kelpsy <138107494+kelpsyberry@users.noreply.github.com>
2024-11-20 18:09:57 +02:00
wheremyfoodat
33f45cf1f5 Merge branch 'master' into more-dsp 2024-11-20 02:40:20 +02:00
wheremyfoodat
889c2453de
Audio: Properly close audio device on emulator destruction (#637)
* Audio: Properly close audio device on emulator destruction

* Undo oopsie
2024-11-19 23:41:52 +02:00
wheremyfoodat
47ffd76fae HLE DSP: Fix temporary quad -> stereo conversion 2024-11-19 01:36:32 +02:00
wheremyfoodat
66be960150 HLE DSP: Stub audio output 2024-11-19 01:27:42 +02:00
wheremyfoodat
e22bc58060 HLE DSP: Format 2024-11-10 14:55:31 +02:00
wheremyfoodat
7a4f3f4836 HLE DSP: Add passthrough mix detection 2024-11-10 14:53:07 +02:00
wheremyfoodat
6a79309722 HLE DSP: Fix up resampling a bit 2024-11-09 23:52:29 +02:00
wheremyfoodat
c70388dbeb HLE DSP: Actually interpolate audio 2024-11-09 23:18:41 +02:00
wheremyfoodat
69e8e1c2c4 Add audio interpolation helpers 2024-11-09 23:11:19 +02:00
wheremyfoodat
8cfffb8119 HLE DSP: Actually parse InterpolationMode config 2024-11-07 22:08:28 +02:00
wheremyfoodat
b299609a9b More HLE DSP work 2024-11-06 19:26:57 +02:00
wheremyfoodat
07cee43a2b HLE DSP: Implement per-voice mixing stage 2024-11-03 19:50:27 +02:00
wheremyfoodat
70d93a1ad8 HLE DSP: Enable AAC by default 2024-11-02 21:58:27 +02:00
wheremyfoodat
89d129211e
HLE DSP: Add AAC decoder toggle for enabling/disabling AAC decoding (#611)
* HLE DSP: Add AAC decoder toggle

* Fix derp
2024-10-19 17:23:54 +03:00
wheremyfoodat
3e72323653 HLE DSP: Initial mixer work 2024-09-29 00:32:51 +03:00
Jonian Guveli
c12c3bce8d
Prevent app crash when miniaudio samples bigger than capacity (#596)
* Prevent app crash when miniaudio samples bigger than capacity

* Update miniaudio_device.cpp

---------

Co-authored-by: wheremyfoodat <44909372+wheremyfoodat@users.noreply.github.com>
2024-09-07 16:20:41 +03:00
wheremyfoodat
545bbd5c45 HLE DSP: Implement AAC audio decoder 2024-09-05 00:06:48 +03:00
wheremyfoodat
88e0782f71 HLE DSP: Fix source resetting 2024-08-14 20:13:38 +03:00
wheremyfoodat
85bae2e94e HLE DSP: Handle cycle drifting 2024-08-04 16:46:43 +03:00
wheremyfoodat
e666afd1a3 DSP HLE: Fix buffer queue metadata 2024-07-31 02:51:40 +03:00
wheremyfoodat
e26f58595e HLE DSP: Reset flags should take priority 2024-07-30 00:36:16 +03:00
wheremyfoodat
6668ba3e37 HLE DSP: Fix embedded buffer starting sample position 2024-07-29 23:46:36 +03:00
wheremyfoodat
57ecc18f32 HLE DSP: Implement buffer queue dirty bit 2024-07-29 23:03:17 +03:00
wheremyfoodat
45dd69d62a HLE DSP: Pop unused samples when loading new buffer 2024-07-29 21:58:00 +03:00
wheremyfoodat
c7db6fe5dc FIx DSP region calculation 2024-07-29 19:54:46 +03:00
wheremyfoodat
908222f26f
HLE DSP: Don't printf on buffer queue dirty 2024-07-28 19:05:50 +03:00
wheremyfoodat
e557bd2976
Fix HLE__DSP::RecvData 2024-07-28 19:03:05 +03:00
wheremyfoodat
800c11ff62 HLE DSP: Add PCM8 audio decoding 2024-07-02 17:19:20 +03:00
wheremyfoodat
e4b81d61a4 HLE DSP: Fix AAC response stub 2024-05-01 16:10:51 +03:00
wheremyfoodat
ad380b8c5a Warn on invalid AAC request 2024-05-01 01:59:32 +03:00
wheremyfoodat
0490c6753f HLE DSP: Stub AAC 2024-05-01 01:56:17 +03:00
wheremyfoodat
fb8130a868 HLE DSP: Remove debug artifacts 2024-05-01 00:21:21 +03:00
wheremyfoodat
2fc9c0a573 DSP HLE: Broken PCM16 and handle DSP voice status better 2024-05-01 00:21:21 +03:00
wheremyfoodat
609eb6d880
DSP HLE: Get ADPCM audio decoding working (#499)
* Start decoding ADPCM

* Fix accidentally skipping ADPCM samples

* DSP HLE: ADPCM weights are signed

* Format

* Format

* Fix broken amend
2024-04-27 00:53:17 +03:00
wheremyfoodat
ea6818eb4b HLE DSP: Formatting 2024-04-14 13:13:19 +03:00
wheremyfoodat
1cc3bbf68d HLE DSP: Fix format and source type for audio buffers 2024-04-06 19:12:58 +03:00
wheremyfoodat
1c355041fa HLE DSP: Add embedded buffers 2024-04-06 16:56:11 +03:00
wheremyfoodat
37f9f5d894 HLE DSP: Track voice status better 2024-04-06 00:54:15 +03:00
wheremyfoodat
43a1c89478 HLE DSP: Init/deinit sources better 2024-04-05 20:53:17 +03:00
wheremyfoodat
5da93d17bd HLE DSP: More of it 2024-04-05 19:42:18 +03:00
wheremyfoodat
2548bde538 HLE DSP: Add frame types 2024-04-05 01:50:27 +03:00
wheremyfoodat
a85ca0459a HLE DSP: Proper audio pipe responses 2024-04-05 01:13:02 +03:00
wheremyfoodat
2e696deccf Add HLE DSP files 2024-04-05 00:44:31 +03:00
wheremyfoodat
d459cb1d6c
Get audio output working with LLE DSP (#419)
* Implement audio output

* Semi-proper audio output

* Add audio enable and vsync settings

* Add audio enable and vsync settings

* Optimize audio output a bit

* Make max ring buffer timeout smaller

* Make max ring buffer timeout smaller

* Revert to spinlocking for audio sync

* Sleep emulator thread if too many samples queued

* Fix Teakra submodule breaking

* Don't start audio device too soon

* Fix IWYU errors

* Fix compilation errors on GCC/Clang

* Ignore std::hardware_destructive_interference_size on Android NDK

* Fix more IWYU errors
2024-02-24 03:26:23 +02:00
wheremyfoodat
f7c6ec3b57 Properly handle DSP interrupts in HLE 2024-02-19 18:50:41 +02:00
wheremyfoodat
7a5bb2859e Make DSP backends properly configurable 2024-02-19 17:57:21 +02:00