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
97e8f36a9b
Revert "Actually use the resample buffer."
...
This reverts commit dc5d17971c
.
2014-02-23 08:46:33 -08:00
Unknown W. Brackets
d6f203db99
Revert "Reset resample hist on keyon, round up read."
...
This reverts commit 3edebbfba9
.
2014-02-23 08:45:46 -08:00
Unknown W. Brackets
3edebbfba9
Reset resample hist on keyon, round up read.
...
If we have an uneven pitch, round up so that we get the next sample to
resample in.
2014-02-22 22:38:03 -08:00
Unknown W. Brackets
9cba543a4b
sceSasCoreWithMix() returns an error in raw mode.
...
And does not reschedule, specifically.
2014-02-22 08:48:55 -08:00
Unknown W. Brackets
0939065333
Report the raw output mode to find examples.
...
I can't find any games actually leaving the output mode at 1.
2014-02-22 08:07:51 -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
Henrik Rydgård
4e93573422
Merge pull request #5486 from raven02/patch-25
...
Use GE_CMODE instead of TPSM_PIXEL_STORAGE_MODE
2014-02-20 18:48:10 +07:00
Unknown W. Brackets
a1283644ab
If never set, loop to the first vag block.
...
Not the second (0 = second.)
2014-02-19 01:03:11 -08:00
Unknown W. Brackets
a36f7bf267
Fill in predict_nr's above 5, fix clamping.
...
We weren't processing vag properly when it hit the edges.
The coefficients were found with testing about 384 samples.
2014-02-19 01:01:56 -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
dc5d17971c
Actually use the resample buffer.
...
Fixes static in Final Fantasy Tactics music.
2014-02-17 23:23:44 -08:00
Unknown W. Brackets
93060e3aef
Avoid some divisions, just in case.
2014-02-17 23:19:30 -08:00
Unknown W. Brackets
b5bdac211a
Ignore pitch > 0x1000 for pcm.
...
It seems to be supported only below 0x1000. Also, drop optimization for
double for now, simpler this way and doesn't seem common?
2014-02-17 21:09:44 -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
1efcebb121
Smooth SAS resampling when pitch != 0x1000.
2014-02-17 21:09:43 -08:00
Unknown W. Brackets
8ded863231
Reset sampleFrac on keyon.
...
Since we're starting the samples over.
2014-02-17 21:09:42 -08:00
Unknown W. Brackets
38053df4ca
Don't drop the last mix of vag samples.
...
Wait instead until the end of mixing to end the envelope.
2014-02-17 21:09:42 -08:00
Unknown W. Brackets
3899e18422
Always key on for 32 samples regardless of pitch.
...
Before it would be more or less depending on pitch. It's always 32.
2014-02-17 21:09:41 -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
55507d7844
Fix the default adsr sustain mode.
...
Probably doesn't matter, games always set it.
2014-02-17 01:39:57 -08:00
Unknown W. Brackets
d097ac5394
Don't change height when keying off a voice.
...
Tests show that the height does not revert to the sustain level.
2014-02-17 01:39:56 -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
Unknown W. Brackets
684caa01ec
Correct SAS bent linear curve.
...
Tests shows that at 0x30000000 it still goes up the full amount.
2014-02-17 01:39:54 -08:00
raven02
84bbbc3e51
Use GE_CMODE instead of TPSM_PIXEL_STORAGE_MODE
2014-02-16 23:15:17 +08:00
Henrik Rydgård
561dcf8fd1
Merge pull request #5407 from raven02/patch-18
...
Return -1 when no atrac inited
2014-02-12 15:26:54 +01:00
raven02
4f744436bb
Return -1 when no atrac inited
2014-02-12 21:55:36 +08:00
Henrik Rydgård
caf729e01e
Remove call to SetState, superfluous now that the state variables are gone.
2014-02-11 17:05:46 +01:00
raven02
7dcf355cd6
MediaEngine : getAudioTimeStamp() returns m_audiopts
2014-02-11 19:24:51 +08:00
Henrik Rydgård
079f653cff
Sas envelopes: Simplify away some redundant state.
2014-02-11 11:56:24 +01:00
Unknown W. Brackets
0265fc757d
Flip and shift instead of signed divide.
...
Clearer than all those zeroes and maybe faster...
2014-02-11 01:29:33 -08:00
Unknown W. Brackets
b398a84517
Attack switches to decay at max height already.
...
It does not wait until it goes above.
2014-02-11 00:18:36 -08:00
Unknown W. Brackets
95a8af9e60
Decay does not switch to release at height max.
...
This can happen with an exponent rate of 0. It stays there.
2014-02-11 00:17:13 -08:00
Unknown W. Brackets
f11d362be3
Fix integer overflow in exponent decrease.
2014-02-11 00:11:07 -08:00
Unknown W. Brackets
f981d39f94
Sustain defaults to 0, not 0x100.
...
Not sure how I came to that mistaken idea.
2014-02-10 23:48:10 -08: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
df7d25f4bf
Correct a case where release rate was set negative.
...
Seems to be capped at INT_MAX like the others, oops.
2014-02-09 11:30:15 -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
Unknown W. Brackets
074ef84559
Correct the rates set by sceSasSetSimpleADSR().
...
They were wrong for a few combinations before. Could have effected how
accurate sound effects were (they may have been too quite, or dropped off
wrong, etc.)
2014-02-07 22:29:54 -08:00
raven02
3f20b5ad77
sceSas : should be always delay thread
2014-02-04 20:03:54 +08:00
Unknown W. Brackets
a00d5a2df8
Set a voice as keyed off when its envelope ends.
2014-02-04 01:35:53 -08:00
Henrik Rydgård
169844cc8c
MediaEngine/atrac: Initialize some variables, remove use of some deprecated functions
2014-01-27 14:08:05 +01:00
Henrik Rydgård
a8eb92f395
Merge pull request #5237 from raven02/patch-6
...
Return without delay if voicesPlayingCount is zero
2014-01-27 04:16:48 -08:00
raven02
8e8329abec
Fix audio gitches
2014-01-27 19:32:35 +08:00
Unknown W. Brackets
10f52fa2b0
Just in case, also clear results on shutdown.
2014-01-26 19:10:20 -08:00
Unknown W. Brackets
0ca769721a
Log more information about duplicate io operations.
2014-01-26 19:05:07 -08:00
Henrik Rydgård
cc4882267a
Merge pull request #5231 from unknownbrackets/swap
...
Merge just some endian / swap related fixes
2014-01-26 14:44:52 -08:00