Mercurial > sdl-ios-xcode
annotate src/timer/macos/FastTimes.h @ 3880:74e828c64315 SDL-1.2
Fixed bug #292
I might be on crack here.
It looks like SDL_ConvertMono() in src/audio/SDL_audiocvt.c adds the left and
right channels of a stereo stream together, and clamps the new mono channel if
it would overflow.
Shouldn't it be dividing by 2 to average the two sample points instead of
clamping? Otherwise the mono sample point's volume doubles in the conversion.
This would also make the conversion faster, as it replaces two branches per
sample frame with a bitwise shift.
--ryan.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Sun, 24 Sep 2006 15:45:37 +0000 |
parents | d910939febfa |
children | 782fd950bd46 c121d94672cb |
rev | line source |
---|---|
0 | 1 /* File "FastTimes.h" - Original code by Matt Slot <fprefect@ambrosiasw.com> */ |
1402
d910939febfa
Use consistent identifiers for the various platforms we support.
Sam Lantinga <slouken@libsdl.org>
parents:
0
diff
changeset
|
2 #include "SDL_config.h" |
0 | 3 /* Created 4/24/99 - This file is hereby placed in the public domain */ |
4 /* Updated 5/21/99 - Calibrate to VIA, add TBR support, renamed functions */ | |
5 /* Updated 10/4/99 - Use AbsoluteToNanoseconds() in case Absolute = double */ | |
6 /* Updated 2/15/00 - Check for native Time Manager, no need to calibrate */ | |
7 /* Updated 3/21/00 - Fixed ns conversion, create 2 different scale factors */ | |
8 /* Updated 5/03/00 - Added copyright and placed into PD. No code changes */ | |
9 | |
10 /* This file is Copyright (C) Matt Slot, 1999-2000. It is hereby placed into | |
11 the public domain. The author makes no warranty as to fitness or stability */ | |
12 | |
13 #ifndef __FAST_TIMES_HEADER__ | |
14 #define __FAST_TIMES_HEADER__ | |
15 | |
16 /* **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** */ | |
17 /* **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** */ | |
18 | |
19 extern void FastInitialize(void); | |
20 extern UInt64 FastMicroseconds(void); | |
21 extern UInt64 FastMilliseconds(void); | |
22 extern StringPtr FastMethod(void); | |
23 | |
24 /* **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** */ | |
25 /* **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** */ | |
26 | |
1402
d910939febfa
Use consistent identifiers for the various platforms we support.
Sam Lantinga <slouken@libsdl.org>
parents:
0
diff
changeset
|
27 #endif /* __FAST_TIMES_HEADER__ */ |