Commit Graph

70 Commits

Author SHA1 Message Date
Unknown W. Brackets
23441d12fb Sas: Estimate time taken for mixing.
Tests seem to show it's not affected by mhz.
2015-11-25 18:44:34 -08:00
Unknown W. Brackets
6b413a808f Atrac: Handle SAS end the same way as other types.
It makes sense to match, and this sounds right in Sol Trigger.  Haven't
tested in detail yet, but it should prevent cutting off sounds.
2015-11-08 12:23:32 -08:00
Unknown W. Brackets
42222ad497 Sas: Support the dry flag as well as wet. 2015-11-01 20:32:35 -08:00
Unknown W. Brackets
a13683e777 Add some param validation for sas functions. 2015-10-31 09:20:14 -07:00
Henrik Rydgard
9fa6f1f89d Minor improvements to audio debug display 2015-10-31 13:02:19 +01:00
Henrik Rydgard
22f71f1e9a Show simple info about currently playing audio in on-screen Debug Statistics 2015-10-28 21:20:20 +01:00
Henrik Rydgard
85c8f7d3c2 Hook up SasReverb. It sounds more like a buzzsaw than a reverb at the moment, needs debugging.
Added a bit of code that only enables it when a reverbed sound is active. This will need to be turned off later but useful right now for hearing when it's used..
2015-10-27 12:36:30 +01:00
Unknown W. Brackets
ec2d88cf17 Make the vag block buffer s16.
The values are clamped already, anyway.
2015-10-24 13:08:10 -07:00
Unknown W. Brackets
03bd1b9b69 Initialize a few sas values earlier.
This just makes things a little safer, none of these ought to be used
without Start or similar.
2015-03-28 13:06:57 -07:00
Lioncash
f830d5dec7 Core: Mark some functions as const 2014-12-03 15:16:11 -05:00
Unknown W. Brackets
4702ae0e41 Add breakpoints to most sceAtrac mem access. 2014-09-23 11:33:18 -07:00
Henrik Rydgard
c8e719e165 Inline ADSREnvelope::Step (thanks @unknownbrackets)
(Some compilers want it declared inline in the header too)
2014-03-22 09:31:09 +01:00
Unknown W. Brackets
d65af7353b Avoid some ChunkFile includes. 2014-03-15 11:32:57 -07:00
Unknown W. Brackets
c806ae0982 Revert "Optimize mixing samples at common pitches."
This reverts commit dd434cd7c5.

Conflicts:
	Core/HW/SasAudio.cpp
2014-02-23 08:48:30 -08:00
Unknown W. Brackets
ff920f6af6 Fix sceSas outputMode = 1 (which is not mono.)
May fix games that played audio only on the left side, or something.
2014-02-22 07:52:18 -08:00
Unknown W. Brackets
11df9dabf9 Add an extra delay to VAG keyon.
It seems to come in an extra sample late.  PCM doesn't.

This corrects timing for VAG samples so they match up exactly.  Really
minor, of course...
2014-02-18 23:32:37 -08:00
Unknown W. Brackets
93060e3aef Avoid some divisions, just in case. 2014-02-17 23:19:30 -08:00
Unknown W. Brackets
dd434cd7c5 Optimize mixing samples at common pitches.
Doesn't seem to be a big help but may matter more on mobile.
2014-02-17 21:09:44 -08:00
Unknown W. Brackets
139c91fe19 Return an error for an invalid pitch, per tests. 2014-02-17 21:09:43 -08:00
Unknown W. Brackets
e006ab5b2d Don't read the first 32 samples after keyon.
The way I'm approximating this is ugly...
2014-02-17 01:39:59 -08:00
Unknown W. Brackets
6b984c5593 Don't loop PCM samples when loopPos < 0. 2014-02-17 01:39:59 -08:00
Unknown W. Brackets
95fc9624b4 Fix PCM looping in SAS.
The parameter specifies where the loop restarts at.
2014-02-17 01:39:58 -08:00
Unknown W. Brackets
d53ab02e5b Don't change height immediately on keyon.
This replicates the PSP's behavior, which is a 32-grain lead in, plus the
height remains what it was before until processing happens.
2014-02-17 01:39:55 -08:00
Henrik Rydgård
079f653cff Sas envelopes: Simplify away some redundant state. 2014-02-11 11:56:24 +01:00
Unknown W. Brackets
6392307cbd Calculate the curve on the fly per the PSP.
Values based on lots of testing from the PSP, and match exactly.
2014-02-10 08:43:01 -08:00
Unknown W. Brackets
a14850c16b Drop height to 0 when VAG ends.
Otherwise we will set it to !playing and never step the height.
Should fix Yu-Gi-Oh again.  Probably release before was miscalculated as
0 which is why it worked before.
2014-02-09 10:53:47 -08:00
raven02
3f20b5ad77 sceSas : should be always delay thread 2014-02-04 20:03:54 +08:00
raven02
7701784608 Not reschelding if voicesPlayingCount == 0 2014-01-26 19:52:31 +08:00
Henrik Rydgard
0de71f27cb Optimize the VAGADPCM decoder. 2014-01-04 01:59:20 +01:00
Henrik Rydgård
00c32ddadb Mostly get rid of including "Globals.h" 2013-12-30 10:17:11 +01:00
Henrik Rydgard
b30495c8e8 Reapply the "duration" SasAudio optimization. 2013-11-17 16:49:43 +01:00
Henrik Rydgard
5f51432de7 Revert "More minor SasAudio optimizations"
Will reapply later in pieces.

This reverts commit cd251af345.
2013-11-17 16:46:26 +01:00
Henrik Rydgård
cd251af345 More minor SasAudio optimizations 2013-11-15 12:28:16 +01:00
Henrik Rydgård
21006dc6a7 SasAudio: Compute envelope duration on state changes only. 2013-11-15 12:05:10 +01:00
Henrik Rydgard
f0e47838c6 Just break out some functions in SasAudio 2013-10-24 01:19:08 +02:00
Henrik Rydgard
a790c0a723 SasAudio: Add some comments about reverb, and add the reverb type list 2013-10-23 22:59:42 +02:00
Unknown W. Brackets
e95f55a5fe Fix some enum type warnings. 2013-10-19 14:57:45 -07:00
Henrik Rydgård
ac2334386a Move BufferQueue out of the at3 plugin header 2013-10-17 12:31:22 +02:00
Unknown W. Brackets
fe1f4d53c6 Return an error on bad SAS sample rate.
Also reorder the types to fit the PSP's flag values.
2013-09-01 16:59:37 -07:00
Unknown W. Brackets
16b0a99e5f Adjust some default values for SAS audio. 2013-06-12 08:02:56 -07:00
Unknown W. Brackets
b5ac7eead1 Cleanup some SAS constructors. 2013-06-11 00:37:29 -07:00
Unknown W. Brackets
3aaabfb987 Revert #1974, the other fixes are better.
This is no longer needed for games I have, and it breaks Final Fantasy
Tactics' sound effects.

Looking at JPCSP for insight, I saw that it re-enables loops if you set a
voice even with a different address (I think?) but that seems strange.
2013-06-09 22:47:01 -07:00
oioitff
c98adee757 Implement __sceSasConcatenateATRAC3.
.
2013-06-09 19:07:02 +08:00
oioitff
883d60fad3 Use a pointer for sampleQueue in SasAtrac3. 2013-06-09 01:58:06 +08:00
oioitff
3c13b574e3 Partly implement __sceSasSetVoiceATRAC3.
Fix Sol Trigger hang up issue.
2013-06-09 01:34:38 +08:00
Unknown W. Brackets
42ced72b13 Fix undead VAG loops, KeyOff should stop them. 2013-05-28 23:05:34 -07:00
Unknown W. Brackets
e8be3d8da2 Decode VAG samples in one shot, not two. 2013-05-27 18:16:40 -07:00
oioitff
99f8041375 Implement pcm voice correctly. 2013-05-24 00:42:15 +08:00
oioitff
8d10724b64 Implement volume control for _sceSasCoreWithMix.
Tested with Fate Unlimited Code.
2013-05-11 04:30:02 +08:00
oioitff
62f79989bd Implement _sceSasCoreWithMix correctly.
The inoutAddr should be both input and output buffer address.
2013-04-23 22:00:14 +08:00