Steve Checkoway
99c41cde08
Cleanup registered threads.
2005-12-20 03:20:31 +00:00
Glenn Maynard
dcfff261ed
use RageThreadRegister. These should be freed properly, so things still work if the driver is recreated for some reason. There may be no guarantee that the same thread will always call the I/O callback--it may recreate the thread on overload, for example ...
2005-12-19 02:06:56 +00:00
Steve Checkoway
510254abb4
Add more property listeners, name the two threads created by the audio HAL.
2005-12-17 13:10:23 +00:00
Steve Checkoway
223c541ecc
This stops crashes when headphones are removed. If they're removed during gameplay, the arrows stop scrolling and the receptors stop flashing to the beat. After the hardware reconfigures itself (~.5s), the music resumes.
...
My guess (which I don't have time to test right now) is that the returned position is reset when the hardware starts back up.
2005-12-15 11:44:46 +00:00
Glenn Maynard
6497ac8f94
style
2005-12-07 03:03:21 +00:00
Glenn Maynard
321931c19a
not used
2005-12-07 03:01:23 +00:00
Glenn Maynard
b617542b62
cleanup
2005-12-07 03:00:27 +00:00
Glenn Maynard
b6ba17a7bb
fix busy looping on slower systems, inefficient buffer filling
2005-11-28 17:17:35 +00:00
Glenn Maynard
b948f686cc
cleanup
2005-11-25 20:38:03 +00:00
Glenn Maynard
9ed3cde95a
cleanup
2005-11-25 18:36:44 +00:00
Renaud Lepage
6e6e89276d
Fix for Xbox compilation. It was easier with HAVE_FOO, but oh well.
2005-11-16 04:38:28 +00:00
Glenn Maynard
3bbfe9ebc0
Two tests for not filling a buffer:
...
if( m_iBufferBytesFilled > m_iWriteAhead )
int iNumBytesEmpty = m_iWriteAhead - m_iBufferBytesFilled;
if( iNumBytesEmpty < iChunksize )
The latter, manipulated a bit, is actually:
if( m_iBufferBytesFilled+iChunksize >= m_iWriteAhead )
These do almost the same thing. This isn't what was intended. The
former checks whether we *want* to write another buffer (based on our
preferred writeahead). The latter was meant to check whether it's *possible*
to fit another chunk into the buffer. It should check against m_iBufferSize,
not m_iWriteAhead.
This fixes writeahead: 4096 means "write if we have less than 4096 frames
buffered", not "write if writing the new chunk would result in still having
less than 4096 frames buffered". This is important on slower devices, like
USB headsets.
2005-11-10 22:10:05 +00:00
Steve Checkoway
8310140755
Set new arbitrary values with the input handler above the sound decoder.
2005-10-24 11:40:43 +00:00
Steve Checkoway
05201a047c
Header cleanup. Use SetThreadPrecedence() and add potential replacement code for GetCurrentTime().
2005-10-24 11:21:17 +00:00
Steve Checkoway
aa0f90feae
__MACOSX__ --> MACOSX, keep __MACOSX__ for ogg.
2005-10-24 10:37:56 +00:00
Steve Checkoway
35ad7eb289
Support preferred sample rates and report the latency more correctly.
2005-10-24 08:55:25 +00:00
Steve Checkoway
cb229a8774
Remove redundant defines.
2005-10-24 08:17:12 +00:00
Glenn Maynard
539ec6aa5c
HAVE_WIN32 -> WINDOWS. HAVE_LINUXKERNEL -> LINUX. If some features originating in Linux work on other systems, then define them specifically (eg. HAVE_LINUX_JOYSTICKS).
2005-10-24 07:22:28 +00:00
Steve Checkoway
532b115aa6
Remove unnecessary. (Funny comment though.)
2005-10-24 06:51:20 +00:00
Glenn Maynard
2791f8f90b
remove unneeded
...
fix use before init
2005-10-24 05:38:04 +00:00
Steve Checkoway
a2c1b1443d
Cleanup.
2005-10-24 05:28:38 +00:00
Glenn Maynard
06d12e2239
support PREFSMAN->m_iSoundPreferredSampleRate
2005-10-24 02:45:45 +00:00
Glenn Maynard
4bd59b5a7b
cleanup
2005-10-24 02:42:56 +00:00
Glenn Maynard
5507c323da
cleanup
2005-10-24 02:41:58 +00:00
Glenn Maynard
bcf1d288f9
support PREFSMAN->m_iSoundPreferredSampleRate
2005-10-24 02:37:04 +00:00
Glenn Maynard
ee5e5dd25a
cleanup
2005-10-24 02:28:31 +00:00
Glenn Maynard
74ee22ad04
cleanup
2005-10-24 02:14:43 +00:00
Glenn Maynard
9d32f5e9f5
use PREFSMAN->m_iSoundPreferredSampleRate
2005-10-24 01:21:07 +00:00
Glenn Maynard
9d7ce29cdd
report the fake sample rate, so changes to it work
2005-10-23 22:00:23 +00:00
Glenn Maynard
49e8dd1327
cleanup
2005-10-23 21:53:32 +00:00
Glenn Maynard
3044155ce8
fix crash if DirectSoundCreate fails (eg. no sound devices)
2005-10-22 03:10:53 +00:00
Chris Danford
e80dcafbdd
tracking down volume related assert
2005-10-07 05:29:33 +00:00
Chris Danford
7b345b5c75
make volume changes affect playing sounds
2005-10-02 08:35:46 +00:00
Chris Danford
48ebc53549
return NULL -> return CString() for clarity and efficiency
2005-09-04 16:55:21 +00:00
Glenn Maynard
94abe52637
headers don't include global.h
2005-07-12 04:39:57 +00:00
Glenn Maynard
8661d15ac6
fix includes
2005-06-08 21:21:32 +00:00
Glenn Maynard
9213e57569
style cleanup
2005-06-08 21:19:49 +00:00
Glenn Maynard
d9374832cf
style
2005-06-04 00:16:27 +00:00
Glenn Maynard
f9a3918d37
style
2005-06-03 23:55:04 +00:00
Glenn Maynard
81584d4879
update paths
2005-05-22 03:00:59 +00:00
Glenn Maynard
38b10ca499
one line
2005-05-20 00:18:15 +00:00
Steve Checkoway
c0c82a0527
Fix Linux compile.
2005-05-18 02:01:00 +00:00
Glenn Maynard
4e6d716027
GetRedirContents -> GetFileContents
2005-05-17 02:20:43 +00:00
Steve Checkoway
15ce1c2cdd
Unused.
2005-05-14 07:39:34 +00:00
Thad Ward
5949e5bc90
(this is possibly going to annoy some people, but..)
...
put all (obvious) MSVC lines in #if defined(_MSC_VER) blocks, primarilly
to allow alternative win32 compilers to be used.
2005-05-11 04:43:54 +00:00
Steve Checkoway
9b68e25fc8
it is an int
2005-03-26 05:05:24 +00:00
Steve Checkoway
3134764b83
Attempt to support more audio hardware. (I have no way to really test this.)
2005-03-26 02:33:44 +00:00
Steve Checkoway
203caf2ac8
Remove QT1. I do not think it even works any longer. Regardless, it is not needed.
2005-03-23 21:18:01 +00:00
Steve Checkoway
47de0f1783
Yes, Darwin (and OS X) is POSIX, see
...
http://www.xyroth-enterprises.co.uk/posixos.htm
SDL is used on OS X for some things, but not all.
Use #if defined(...) instead of #ifdef in most of the Selector_*.h files.
2005-03-23 21:15:12 +00:00
Ben Anderson
167e5aebc0
Put all the Make* functions into a single .h/.cpp file (yes, kinda like the way it was), and add Make* functions for DialogDrivers. This means there's only one object that's affected by drivers being added/removed. (Driver default changes are a little different -- 2 or 3 objects.) Also one or two minor cleanups. (note: I apparently don't know much about CVS, it appears that some files might not make it into the repository; hang tight, I'm trying to find a solution.)
2005-03-15 00:30:26 +00:00