Commit graph

509 commits

Author SHA1 Message Date
Ragnvald Maartmann-Moe IV
2485bed45a Codestyle. Grr! 2004-01-07 08:45:18 +00:00
Bill Currie
e4416c1f66 fix some weird whitespace 2004-01-07 08:16:59 +00:00
Ragnvald Maartmann-Moe IV
3d14b29b38 Whitespace 2004-01-06 03:24:46 +00:00
Ragnvald Maartmann-Moe IV
5f76017d2a Update ALSA sound target to support 1.0.
Breaks 0.9 support, but 1.0 is in 2.6.0. So either update, or revert to older
snd_alsa.c & alsa_funcs_list.h.
2003-12-22 01:07:49 +00:00
Chris Ison
d2d0cb211c proper implementation to prevent the fastforward effect 2003-10-15 20:40:53 +00:00
Chris Ison
392902f5af added SND_NoResampleStereo so that streams that don't need resampling aren't forced to, also added midi support via libWildMidi, MIDI FILES RULE 2003-09-10 05:20:51 +00:00
Bill Currie
89833cb4d7 support streams that don't want any resampling 2003-09-09 22:20:10 +00:00
Bill Currie
0e6c56aa92 drop alsa 0.5 support and rename snd_alsa_0_9.c to snd_alsa.c. also rename
the alsa0_9 plugin to alsa.
2003-09-09 18:43:38 +00:00
Bill Currie
ba4ca3515d make the default pcm device "default" 2003-09-08 22:56:06 +00:00
Bill Currie
07d7f81e14 hopefully fix the alsa-lib assertion bug 2003-08-04 03:36:55 +00:00
Bill Currie
9210829573 PLUGIN_INFO decl cleanup 2003-08-01 19:53:46 +00:00
Bill Currie
14a9ff2e6b make dx default 2003-07-23 16:43:25 +00:00
Bill Currie
6efa0ca736 if at first you don't succeed... 2003-07-10 22:20:29 +00:00
Bill Currie
855fc53709 handle alloca properly 2003-07-09 06:28:09 +00:00
Bill Currie
21f7365bcc make "win" the default for snd_output on windows 2003-07-08 20:09:23 +00:00
Brian Koropoff
9e57425f4f Make the playcenter hack not screw up sound spatialization. 2003-05-28 04:49:09 +00:00
Brian Koropoff
124d90f84f Add the playcenter command to play a sound without 3d spatialization. 2003-05-15 22:39:34 +00:00
Bill Currie
5f3573143a the beginnings of a jihad against buffer overflows 2003-05-08 23:24:02 +00:00
Bill Currie
06608fbf37 round the mmap length up to the nearest page size 2003-04-30 14:55:58 +00:00
Bill Currie
95ae17acc1 I don't know why MAP_SHARED is needed, but it's not compatable with
write-only mode, so make it part of snd_oss_rw
2003-04-30 02:52:41 +00:00
Bill Currie
30b25af44b bring back the rw/wo code 2003-04-29 03:14:37 +00:00
Bill Currie
4a73d5dc45 this seems to fix the "end of file" issues on streams 2003-04-26 04:30:07 +00:00
Bill Currie
7d06343b2f make the opened sfx name usable 2003-04-21 18:09:53 +00:00
Bill Currie
848bb891b3 win32 compile fix 2003-04-21 17:28:56 +00:00
Bill Currie
eac5b83ea5 remove some debug info 2003-04-21 01:44:55 +00:00
Bill Currie
194c9aa097 fix the file handle leak 2003-04-21 01:39:07 +00:00
Bill Currie
efe9dd844f fix the segfault on starting a map only to die from file handle starvation :P 2003-04-21 01:24:53 +00:00
Bill Currie
714bd341fc 'copy' streams on openning. fixes the shared stream issues, though other
problems might arrise (eg, running out of file handles or memory)
2003-04-20 07:19:51 +00:00
Bill Currie
52f41f8095 make streams work in chunks of 256 samples (won't work so well for non power
of 2 resample rates :/)
2003-04-20 03:42:19 +00:00
Bill Currie
e4ba0ad5e5 move to static initialization for plugin info 2003-04-20 02:05:28 +00:00
Bill Currie
49571b257d crystal clear playback on resampled streams :) (still borked when shared,
though :/)
2003-04-17 17:43:21 +00:00
Bill Currie
51f7b934d1 more headpos resetage 2003-04-17 03:58:16 +00:00
Bill Currie
28cc2e24ef headpos needs resetting too at sfx end 2003-04-17 03:53:54 +00:00
Bill Currie
772b8d5961 more triage :P 2003-04-17 02:55:26 +00:00
Bill Currie
87025a4598 get sound (generally) working again 2003-04-17 02:40:17 +00:00
Bill Currie
eb099ae0d3 make qf gcc 3.3 clean 2003-04-17 00:01:48 +00:00
Bill Currie
63e6ae2869 report the name of the stream if reading is truncated 2003-04-15 21:11:41 +00:00
Bill Currie
37fa93e8e5 horrible hack for `fixing' glitchy sound effects when a stream is shared by
more than one object
2003-04-15 04:19:33 +00:00
Bill Currie
5505aba316 minor cleanups 2003-04-15 04:03:02 +00:00
Bill Currie
130a3f4d59 fix the -ve reads 2003-04-15 03:21:29 +00:00
Bill Currie
da44c783fb get the new sound system mostly working. just getting a bogus read count
in the stream reader at the moment, otherwise it's working wonderfully :)
2003-04-15 02:34:17 +00:00
Bill Currie
dfff6bcdb7 duplicate the vorbis file info when creating a stream 2003-04-14 16:28:20 +00:00
Bill Currie
9fda72c119 streamed sounds /almost/ work. sound like crap but no crashes 2003-04-14 15:47:08 +00:00
Bill Currie
aab4dcf931 getting there with streams. just need to get the painters working, I think.
(streaming currently disabled for anything < 30s :)
2003-04-14 06:11:53 +00:00
Bill Currie
38ef81ca78 set the buffer length as early as possible for cached sounds 2003-04-14 01:40:40 +00:00
Bill Currie
1b2d7b79a6 streams getting closer, not working yet, though 2003-04-13 06:46:24 +00:00
Bill Currie
23278d0706 fix looping 2003-04-12 00:03:56 +00:00
Bill Currie
4eaeb91cc4 disable debug 2003-04-11 23:52:18 +00:00
Bill Currie
b7ff08fba4 effectively disable streamed oggs for now 2003-04-11 23:50:45 +00:00
Bill Currie
e3f8c833ad getting closer. wav's successfully load, but playback is always looped (?).
oggs hang
2003-04-11 21:14:38 +00:00
Bill Currie
948c97a6a4 cached wav files almost work (seems cached ogg are borked now :/) 2003-04-11 18:59:14 +00:00
Bill Currie
725f1d0595 don't compile any vorbis code if it's unavailable 2003-04-11 14:38:31 +00:00
Bill Currie
8012a408b8 90% there for cache wav support. will likely segfault :) 2003-04-11 04:39:51 +00:00
Bill Currie
12724f5fa7 cached oggs work 2003-04-11 02:58:24 +00:00
Bill Currie
21e0e342a0 fix the calling of a null pointer (oops:) 2003-04-11 02:21:25 +00:00
Bill Currie
ccb56eea39 half way though the sfx loader re-write. nothing works :) 2003-04-11 01:17:48 +00:00
Bill Currie
c9f0652a95 start of split-out wav loader. not done yet (probably doesn't compile) but
easier to keep track of here :)
2003-04-09 07:30:49 +00:00
Bill Currie
b80357afda change _FOpenFile to take a dstring for foundname plugging a potential
buffer overflow.
2003-04-09 05:55:41 +00:00
Bill Currie
dd297bc12a start work on support for stereo samples 2003-04-08 22:23:16 +00:00
Bill Currie
ff2a40a7c6 WildCode's dx cleanups 2003-03-11 06:31:30 +00:00
Bill Currie
cf3aeadb42 more error checking ala WildCode 2003-03-10 21:28:18 +00:00
Bill Currie
cbd2c42178 WildCode's win32 sound fixes 2003-03-10 21:21:22 +00:00
Bill Currie
7f37260a9c this bit shouldn't know about windows 2003-02-28 16:22:42 +00:00
Bill Currie
6a687f5e45 rename all the globals in quakefs.[ch] to be QFS_* or qfs_* 2003-02-14 19:46:07 +00:00
Bill Currie
963fa8ef98 fix non-vorbis compile 2003-02-02 04:54:40 +00:00
Bill Currie
3fcc6ae176 a bit more cleanup with more _null deaths 2003-01-31 23:16:28 +00:00
Bill Currie
e6a6f7099b don't need this any more 2003-01-31 22:34:47 +00:00
Bill Currie
05fb5f9fb2 partial cleanup. more to come later :) 2003-01-31 20:51:04 +00:00
Bill Currie
93b767d4e0 reduce the heavy pointer dereferencing needed to access the sound plugins 2003-01-31 20:19:42 +00:00
Bill Currie
c103d77157 make SND_ClearBuffer get called directly by Block/UnblockSound and remove
S_ClearBuffer from the api
2003-01-31 19:55:21 +00:00
Bill Currie
881e7918c2 cut some overhead on sound rendering 2003-01-31 19:14:12 +00:00
Bill Currie
570a72497f patches from the FreeBSD ports that are still applicable 2003-01-31 18:19:55 +00:00
Bill Currie
c788a2ea57 remove a redundant call to S_Init_Cvars and call S_ClearBuffer when sound
is blocked and unblocked.
2003-01-31 17:56:05 +00:00
Bill Currie
761a7546dd re-arrange things so __attribute__ and __builtin_expect are properly
autoconfiscated so rcsid will continue to work with gcc 3.3
2003-01-15 15:31:36 +00:00
Bill Currie
f8eda03b63 fix a const correctness issue 2003-01-09 17:06:27 +00:00
Bill Currie
0926ab64ec make the plugin cvars rom rather than archive 2003-01-08 22:42:55 +00:00
Bill Currie
e7d138e727 string const correctness 2003-01-06 21:41:46 +00:00
Bill Currie
71196fedf6 make gcc more anal about prototypes, string constants and function
visibility (ie, global functions must have a prototype)
2003-01-06 18:28:13 +00:00
Bill Currie
ee30860cef fix a bunch of ;; typos 2002-11-20 21:44:04 +00:00
Bill Currie
261dcfe2a3 FreeBSD patch from q (see what happens for the other BSDs) 2002-11-20 17:20:52 +00:00
Bill Currie
eeb4e4f9a9 how that got past my compile tests is beyond me 2002-11-06 14:56:39 +00:00
Bill Currie
ca4b3acd6c big protototype cleanup. Now, except for a few cases, all non-static
prototypes are in headers files.
2002-11-05 19:12:51 +00:00
Bill Currie
98563c15d6 fix vorbis include handling when --with-vorbis is needed 2002-10-30 02:03:24 +00:00
Bill Currie
99350cf4f1 cleanup some bitrot that caused qf to seg when using the null sound driver 2002-10-15 17:32:47 +00:00
Bill Currie
9f7c669370 various win32 compile fixes for the latest mingw (not fully working due to
LPCWAVEFORMATEX)
2002-10-11 20:47:17 +00:00
Bill Currie
a055269654 workaround for buggy glibc memcpy (Closes: #28) 2002-10-11 03:29:39 +00:00
Ragnvald Maartmann-Moe IV
9648fbf181 Whitespace. 2002-10-10 19:24:36 +00:00
Bill Currie
4a1db5a998 fix the crash on focus loss when using in_snd_block and -nosound 2002-09-30 03:59:55 +00:00
Bill Currie
5b9d4fb241 close the file if vorbis doesn't like it 2002-09-26 19:37:01 +00:00
Bill Currie
be8df8bdaa fix a nasty bug with looped vorbis sound effects. samples with loop lengths
smaller than their unlooped sections were causing qf to hang.
2002-08-27 19:44:13 +00:00
Bill Currie
ec47e08e1c go back to using QFile, quakeio.h and quakefs.h 2002-08-27 07:16:28 +00:00
Ragnvald Maartmann-Moe IV
89412eee10 One step closer to BSD working. Now just needs some work on autoconfiscation... Yech. 2002-08-25 16:34:28 +00:00
Ragnvald Maartmann-Moe IV
9d6bdf5fca Attempt to work around BSD segfault. 2002-08-24 07:40:10 +00:00
Jeff Teunissen
87fd1adadb Enable compiling the null plugin by default. 2002-08-14 05:16:11 +00:00
Jeff Teunissen
2037db210c whitespace. 2002-08-14 05:12:57 +00:00
Bill Currie
2ce0f2ded2 we now require modern autoconf (2.52+), automake (1.6+) and libtool (1.4+).
This gives us a bunch more flexibility. plugins no longer have the "lib"
prefix or the version suffix, they're now installed in
$fs_sharepath/QFplugins,, builds should take much less time (in general,
only one of pic or non-pic versions are build), bins and libs can have
individual CFLAGS
2002-08-01 19:49:10 +00:00
Bill Currie
5fd916a0da looped oggs now work so long as they have a CUEPOINT= comment 2002-07-29 22:25:32 +00:00
Bill Currie
e5d8781150 win32 compile fixes. still have problems with DDActive, but Despair's going
to look at that.
2002-07-02 18:45:50 +00:00
Bill Currie
59dba829f2 fix an out-by-one error caused by over-optimisation of floats. 2002-06-17 00:26:13 +00:00
Bill Currie
76704e9daf the other part of the rename 2002-06-16 04:22:51 +00:00
Bill Currie
930ba48862 other than sounds that are ment to loop not looping (due to losing that info
when converting to ogg (I've got some ideas on that)), ogg/vorbis support is
working. Doesn't seem to be too much of a load-time hit.
2002-06-15 05:43:56 +00:00
Bill Currie
ddf4f257f4 *sigh*, sometimes I hate automake 2002-06-15 03:20:59 +00:00
Bill Currie
9f1e6f9c82 make the vorbis support mostly work. qf segs in Cache_TryAlloc when loading
a map, but I think that's related to some of our other sound resample bugs.
2002-06-14 22:55:57 +00:00
Bill Currie
f2f6041e05 at long last, vorbis support :) load time only, though, so not yet suitable
for huge samples.
Also, change the file search order so that .gz is checked before the
requested file.
2002-06-14 20:36:28 +00:00
Bill Currie
a7f1e1185b Patch to get oss sound working in BSD thanks to Alexander Leidinger
<Alexander@Leidinger.net>
2002-06-10 15:36:33 +00:00
Bill Currie
d7c7ac7891 don't add -version-info for static plugins 2002-06-03 16:34:46 +00:00
Bill Currie
44dcf74627 strip the \n from all(?) of the Sys_Error calls (Sys_Error itself will be
adding \n).
2002-05-14 06:12:29 +00:00
Bill Currie
08f12355c5 this /should/ fix CoolMoDee's autoconf 2.53 issues 2002-04-29 19:19:26 +00:00
Bill Currie
ef81af9245 the "two birds with one stone" commit
1) when /not/ building static plugins, the plugin info name is, once again,
   PluginInfo, but is still type_name_PluginInfo for static plugins. This
   allows plugins to be symlinked (highly desirable for the debian packages,
   and likely others). This also requires plugins to /not/ be loaded with
   RTLD_GLOBAL.
2) because of 1, snd_alsa_0_9 has to explicitly load libasound itself. This
   just happens to fix my segfault on shutdown in RedHat 6.2.
2002-04-19 20:08:54 +00:00
Bill Currie
e34ab5541c munmap the sound buffer when closing the device. This might help with some
hangs on shutdown.
2002-04-17 21:15:19 +00:00
Bill Currie
db75da7733 this should fix compiling snd_sun on solaris 2002-04-07 03:24:29 +00:00
Bill Currie
5a2538faaf dstring.[ch]:
create dsprintf and dvsprintf to do formated prints to dynamic strings.
rest
	Use the new functions :)
2002-03-08 23:11:42 +00:00
Bill Currie
26d7463be7 the majority of raptor's sgi build patch. I'll look at the last two bits
(server.c and vid_sdl.c) later.
2002-03-03 06:03:51 +00:00
Bill Currie
72bd704d13 BSD compile fixes 2002-01-31 07:37:56 +00:00
Bill Currie
03ae513559 compile fixes. we've finally got a sun sound user 2002-01-31 06:50:18 +00:00
Ragnvald Maartmann-Moe IV
38acbd9c0b Whitespace. Grr. 2002-01-10 21:22:51 +00:00
Bill Currie
013f503738 start getting const-correct on vec3_t params 2002-01-03 05:29:38 +00:00
Chris Ison
73f9c3aaa5 some minor tidy/speed up 2001-12-18 03:59:37 +00:00
Ragnvald Maartmann-Moe IV
489e23357e Change sound default. Null is a useless default. SDL default in windows, oss in linux. 2001-12-11 20:31:18 +00:00
Bill Currie
6039c210a7 compile fix for mandrake 2001-12-06 20:34:58 +00:00
Ragnvald Maartmann-Moe IV
eabfbd6c98 Remove ugly ifdef (and coincidentally support for early ALSA 0.9). 2001-11-24 08:05:44 +00:00
Bill Currie
46835e79fe more quakeforge compiling on alpha patches 2001-11-17 05:26:30 +00:00
Bill Currie
d168a3daee this should remove the requirement for gmake on bsd systems 2001-11-12 16:23:41 +00:00
Adam Olsen
ded1b4c057 - add some missing boundschecking to CDAudio_Play's track remap (in
specific plugins only)
- convert updateping, updatepl, updateentertime, updatestat,
  updatestatlong, cdtrack intermission, finale, muzzleflashchokecount,
  maxspeed, entgravity, and setpause on the client.  Can you say all
  that in one breath? :)
2001-11-05 16:17:45 +00:00
Bill Currie
85c9e0ab1e more externs cleaned up 2001-10-29 17:46:03 +00:00
Bill Currie
8071e8398a put a couple externs back for win32. they need a bit more thought on how to
arrange things.
2001-10-29 16:45:03 +00:00
Bill Currie
78a3e398d5 * taniwha gets medieval on extern 2001-10-28 04:23:37 +00:00
Adam Olsen
0a6ae4f36f - some strlen checking for strcpy. I don't feel like doing the rest
of the codebase :)
2001-10-26 00:20:00 +00:00
Adam Olsen
3bba5398ba - audit malloc usage. now everything checks the return value :) 2001-10-24 22:50:06 +00:00
Bill Currie
b3914eeaaa elimination of bare printf (with some exceptions) from libs: Sys_Printf is
used instead
2001-10-18 16:42:14 +00:00
Bill Currie
2d068c0745 massive windows.h and WIN32 cleanup. 2001-10-16 21:40:45 +00:00
Bill Currie
f18974bd89 fix a missing sys/types.h 2001-10-16 16:25:32 +00:00
Bill Currie
1ffb050bf9 and a memleak fix from _Muz_ 2001-10-15 17:41:53 +00:00
Bill Currie
7e0f676705 xmms info and session id patch from _Muz_ 2001-10-15 17:37:05 +00:00
Jeff Teunissen
0485fbe09e Makefile fixes. 2001-10-14 07:05:06 +00:00
Bill Currie
2dafd4a496 remove some (int) casts 2001-10-12 23:14:59 +00:00
Bill Currie
e97e06fe44 byte to int + xmms playlist support from _Muz_ 2001-10-12 19:26:56 +00:00
Bill Currie
0952af5529 fix up the sound restart code 2001-10-12 15:49:50 +00:00
Bill Currie
742bb9de91 static plugins now actually work 2001-10-10 16:22:41 +00:00
Bill Currie
8b2da8cbec make the static plugins link properly with older libtool 2001-10-10 15:44:35 +00:00
Bill Currie
eee1aaf283 static plugins (--with-static-plugins to force on, --without-static-plugins
to force off, defaults to off for *nix and on for win32). does not work yet
due to lack of support in libs/util/plugin.c, but that's next.
2001-10-10 05:52:14 +00:00
Chris Ison
fda073acb6 oops audio targets makefile fix 2001-10-09 21:43:01 +00:00
Chris Ison
15bdd4ad67 disabled -lm checking for cygwin and mingw32 and added plugin_LDFLAGS and plugin_LIBADD for win32 builds 2001-10-09 21:36:57 +00:00
Bill Currie
36508058ea QFPLUGIN now does the __declspec stuff and all plugins now use it on their
plgin info function. doesn't actually /work/ yet :(
2001-10-08 05:54:46 +00:00
Chris Ison
2f8efd7360 changes to get mingw32 sw clients to compile under cygwin 2001-10-07 12:45:47 +00:00
Bill Currie
7794acec66 clean up args for execvp 2001-10-05 21:09:48 +00:00
Bill Currie
042a036964 pass through indent and then clean up after some of indent's insanity 2001-10-05 20:29:55 +00:00
Bill Currie
936b70fe41 remove dependency on net_socket so cd_xmms works with nq as well as qw. Seems
to cause alsa some grief which is rather suprising as file decriptor counts
should have taken care of that nicely.
2001-10-05 20:06:48 +00:00
Bill Currie
44fc52bbb6 move the xmms command from cd.c to cd_xmms.c and have the cd command always
available
2001-10-05 19:52:56 +00:00
Bill Currie
a39ccf4a34 XMMS support from _Muz_ (Alexis Paul Musgrave <muz@cwcom.net>) 2001-10-05 19:36:35 +00:00
Adam Olsen
4937ad6c71 - some changes to snd_win.c that will hopefully bring it closer to
operation
2001-10-05 09:51:21 +00:00
Bill Currie
a1d2cf3532 duplicate file name cleanup and make dist works 2001-10-03 17:50:36 +00:00
Bill Currie
fcdc975bdd fix a thinko that prevented the cd command from being added 2001-10-02 18:12:27 +00:00
Bill Currie
f505e8630c fixes for rh 7.1 2001-09-30 23:24:53 +00:00
Chris Ison
b0dc19310a more compile under cygwin patches 2001-09-30 13:05:20 +00:00
Jeff Teunissen
d63243380f Aaaaaaand, it's done!
Special note: I hope to never do this again. :)
2001-09-28 10:31:20 +00:00
Bill Currie
b1f4a778f9 the rcsid commit from hell }:> 2001-09-28 06:26:31 +00:00
Jeff Teunissen
e6d7aec03a Build system updates/fixes for audio libs. MUCH cleaner, probably
faster, doesn't do anything unnecessary any more as far as I can tell.
2001-09-28 05:33:12 +00:00
Bill Currie
37495db521 this should work for older alsa 0.9 where asoundlib.h is still in sys instead of alsa 2001-09-27 17:12:17 +00:00
Chris Ison
0efd28abcc trying to get bootstrap to work in cygwin 2001-09-25 23:04:13 +00:00
Bill Currie
a439170dcf libasm cleanups 2001-09-25 22:12:55 +00:00
Bill Currie
06da30ac89 mingw build fixes again (including mostly working in sid: got some link issues) 2001-09-25 06:18:30 +00:00
Bill Currie
49a85718f8 total nukage of Con_*Printf calls from libs (except for video). Sys_*Printf
(Sys_DPrintf is new) is now used exclusively for all lib printing. Con_Init
sets the sys printf recirection to Con_Print (which has been revamped
appropriatly) and the server sets it to SV_Print (which was SV_Printf and
the new SV_Printf calls /it/). This should fix the rcon print redirection
issues.
2001-09-21 04:22:46 +00:00
Adam Olsen
893c8b784b - tweak the cl_maxfps sleeping to be more finely grained
- treat empty snd_render/snd_output strings as "don't load"
2001-09-19 05:32:20 +00:00
Ragnvald Maartmann-Moe IV
a474c7ad2f Update for current alsa header locations. 2001-09-14 12:08:52 +00:00
Ragnvald Maartmann-Moe IV
7af79b96ec Lots of whitespace, header cleanups, and a few tiny optimizations. 2001-09-09 21:41:35 +00:00
Bill Currie
888bdb7052 fix some static issues 2001-09-07 21:40:45 +00:00
Bill Currie
e9cf5b4eba include sys/types.h for freebsd 2001-09-07 04:41:13 +00:00
Adam Olsen
f1a016c8a5 - Refine the Cache_Get callback, to use a void * instead of a char *
- Switch alias models over to Cache_Get/Cache_Release
2001-08-31 12:22:45 +00:00
Adam Olsen
f54ef94fd0 remove the failure check from SND_CallbackLoad 2001-08-31 04:02:00 +00:00
Adam Olsen
6cab8cf4e0 - change Cache_Get calls to Cache_TryGet (which I just added), so they
can tollerate failure.
- minor error message tweak (an emptry string is not NULL!)
2001-08-31 03:48:26 +00:00
Bill Currie
2c51098ac9 the plugin structs /definitly/ have to be static and remove some debug from
alsa_0_9
2001-08-31 03:42:54 +00:00
Bill Currie
bcc768295f missed some vars that should be static 2001-08-31 00:16:31 +00:00
Bill Currie
e469b934ea get alsa0_9 working with latest cvs, we need to dlopen the plugin with
RTDL_GLOBAL. To use RTDL_GLOBAL, we need to make as much static as possible
 and PluginInfo needs a unique name (%s_%s_PluginInfo, type, name).
2001-08-31 00:05:58 +00:00
Bill Currie
2b18896bbb oh, the joys of asm in shared libs 2001-08-30 22:32:11 +00:00
Bill Currie
a625f178af better sound_started checking 2001-08-30 22:11:45 +00:00
Adam Olsen
e149094bd2 - rename Qalloc and friends to QA_alloc
- add a QA_strdup
- add Cache_{Add,Remove,Get,Release}, for the locking version of the
  cache
- Convert libs/audio/* over to locking cache functions
2001-08-30 11:37:50 +00:00
Ragnvald Maartmann-Moe IV
793efd6976 Whitespace. 2001-08-27 01:00:03 +00:00
Adam Olsen
9c9756c19a Start of non-mmaped OSS sound support. it uses a cvar, so it's not
active yet.
2001-08-24 02:38:28 +00:00
Adam Olsen
90849100fe Build fixes, notably for snd_sdl.c. It segfaults on shutdown though
:/
2001-08-23 11:40:53 +00:00
Adam Olsen
50e545292a remove extra calls to SNDDMA_Init_Cvars 2001-08-23 04:52:54 +00:00
Adam Olsen
62e1819ec5 build fixes 2001-08-23 04:18:55 +00:00
Adam Olsen
cad42cbc78 Put the sound renderer in it's proper place: as a full-fledged plugin.
Bugs expected.  Please report them :)
2001-08-23 04:01:46 +00:00
Ragnvald Maartmann-Moe IV
7a09f37e0b Lots of whitespace. 2001-08-22 20:26:25 +00:00
Bill Currie
8f269ee821 fix "cannot find -lQFsoundrenderer" on some systems 2001-08-22 03:54:26 +00:00
Bill Currie
e61c56af94 hopefully make sound plugin linking work better 2001-08-20 02:32:33 +00:00
Bill Currie
092d3486bd make cd plugins repect --with-plugin-path 2001-08-15 23:00:08 +00:00
Bill Currie
d48b3ee9d2 s/LIB_DEPS/DEPENDENCIES/ 2001-08-15 22:40:56 +00:00
Bill Currie
edf4b85cc7 don't need to (and seems that you shouldn't) specify a path for local libs 2001-08-15 22:31:07 +00:00
Adam Olsen
e3590642fb Moved the sound renderer into a seperate lib. You'll need to rerun
configure, else it won't build said lib and you'll get errors loading
sound plugins.
2001-08-15 21:03:10 +00:00
Ragnvald Maartmann-Moe IV
d96eb31db3 Grr, missed one. 2001-08-15 02:40:43 +00:00
Ragnvald Maartmann-Moe IV
cddaa521cc Change loadas8bit to snd_loadas8bit. 2001-08-15 00:53:37 +00:00
Ragnvald Maartmann-Moe IV
85992c58d3 Make more cvar names sane. _snd_mixahead is now snd_mixahead. 2001-08-04 18:18:33 +00:00
Bill Currie
0a4caac3c6 mingw compile fixes 2001-08-02 23:00:39 +00:00
Bill Currie
b455458629 exit cleanup. Sys_Error and Sys_Quit should be used whenever possible. 2001-08-02 17:16:12 +00:00
Bill Currie
2732797574 fix the undefined symbol error 2001-07-18 22:18:36 +00:00
Bill Currie
1c9e1b176f fear the mighty const correct patch 2001-07-15 07:04:17 +00:00
Bill Currie
3ab9ecd828 add this so it doesn't get lost. needs work. 2001-07-15 03:01:34 +00:00
Bill Currie
016563e77f found the snd_pcm_playback_pause function for 0.5 2001-07-05 20:24:41 +00:00
Bill Currie
fc09d2b00f port Bruce Momjian's patches from newtree with a less incestuous
implementation of his sound/focus patch. NOTE: only alsa 0.9 is tested
(Rhamph, can you test 0.5, please?) and only the alsa drivers stop the
hardware right ow.

WARNING!!! you /will/ have to re-install your plugins, or you will get
segfaults when the window gains/loses focus.

How do you tell if a window has focus on first mapping in X11?
2001-07-05 20:18:23 +00:00
Joseph Carter
11257134c0 dos is dead, really. This has never worked, and would need a full rewrite
from scratch before it would anyway.  That's not likely, so say goodbye!
2001-06-29 07:56:36 +00:00
Bill Currie
560b475880 gcc 3.0 compile fixes 2001-06-19 22:05:13 +00:00
Bill Currie
8c13809e9c don't process .S files when not using asm (either --disable-asmopt or non-x86
platforms). Done by moving the asm objects into libasm.la (yes, there's one in
each dir that needs it) so that the Makefiles don't explode.
2001-06-14 19:52:38 +00:00
Adam Olsen
9e19da13de function name cleanup. the sound mixer stuff (snd_dma.c, snd_mix.c, etc) use the SND_ prefix now, and drivers (snd_oss.c) use SNDDMA_ as before. 2001-06-10 15:48:24 +00:00
Adam Olsen
2195a9296c This thing was so far out of date, there's no point pretending it still exists in current cvs. 2001-06-10 15:01:07 +00:00
Adam Olsen
4486925f11 merge in the now obsolete snd_common.c 2001-06-10 14:25:19 +00:00
Bill Currie
3b2cf03b99 mingw compile fixes (vid_wgl.c isn't the right thing) 2001-06-07 16:44:22 +00:00
Bill Currie
ab9e025078 don't build cd or sound libs/plugins when not building clients 2001-06-07 03:37:05 +00:00
Adam Olsen
f7f6c460ce change void to static void, so it compiles for me 2001-06-03 05:58:01 +00:00
Ragnvald Maartmann-Moe IV
4826c5dd0f Change shm init to PROT_WRITE, instead of PROT_READ | PROT_WRITE.
This is required for mmap to succeed on my system. YMMV.
May cause a problem with incomplete shutdown.
2001-06-02 06:51:58 +00:00
Bill Currie
88d536933f move the creation of the cd command to cd.c 2001-06-02 04:36:42 +00:00
Ragnvald Maartmann-Moe IV
85333a9f96 Convert cd audio libs to plugins. Windows untested, dos and sgi not converted yet. 2001-06-01 22:55:33 +00:00
Adam Olsen
a187032ebf add #include "QF/cvar.h" for snd_alsa_0_5.c 2001-06-01 00:12:25 +00:00
Bill Currie
323015b11a include/QF header cleanup. including config.h (or any file from include) is
a nono because headers in include/QF get installed, but include don't and thus
would break quakeforge-dev.
2001-05-31 05:33:13 +00:00
Bill Currie
6bf58ab1af no header includes cvar.h now 2001-05-31 03:41:35 +00:00
Joseph Carter
05adfd0e53 quakefs.h -> vfs.h
quakeio.h -> vfile.h

More diff reduction between trunk and my VFS code.  Also took the time to
put some headers in order and fix a few #include's pointed out by moving
things around a bit.
2001-05-30 04:34:06 +00:00
Joseph Carter
186d577818 s/QFile/VFile/g - makes my diffs much smaller and more manageable for the
VFS work.
2001-05-30 03:21:19 +00:00
Bill Currie
5514f4870e --with-plugin-path now controls where plugins are installed, not just where
to look for them.
2001-05-28 19:30:32 +00:00
Ragnvald Maartmann-Moe IV
964ec6425d whitespace and comment cleanup. 2001-05-24 17:00:08 +00:00
Ragnvald Maartmann-Moe IV
a83c3d3af5 Cleanups. 2001-05-22 20:34:03 +00:00
Bill Currie
c500fd7479 make dist fixups 2001-05-22 17:09:03 +00:00
Ragnvald Maartmann-Moe IV
e7f25dc731 whitespace 2001-05-22 12:31:43 +00:00
Bill Currie
a79ab3faf8 abandon the oss write only attempts. 2001-05-21 17:40:12 +00:00
Bill Currie
f38a233786 make snd_oss_rw affect the rest of the places it needs to 2001-05-21 01:12:07 +00:00
Ragnvald Maartmann-Moe IV
a140bd1d13 Whitespace. *grmbl* 2001-05-20 20:52:27 +00:00
Bill Currie
5432983038 ignore generated files 2001-05-19 21:46:02 +00:00
Adam Olsen
aef4cd6da7 do shm = 0 after SNDDMA_Shutdown is called 2001-05-19 08:53:08 +00:00
Bill Currie
5fb17e384b fix the installation location of the plugins 2001-05-19 04:38:03 +00:00
Bill Currie
1e84684f27 fix the alsa plugin building 2001-05-19 02:09:59 +00:00
Adam Olsen
9cc30959e4 Sound now uses runtime plugins. Much thanks to Deek for doing all the
thinking :)
set fs_pluginpath to point to the right dir, and set snd_plugin to pick a sound
plugin.

Current issues:
- alsa 0.5 won't build properly, dunno why
- segfault on exit.  I think I know the cause of this, and how to fix it
- alsa 0.9, gus, sgi, sun, and win32 havn't been tested
2001-05-19 00:05:35 +00:00
Adam Olsen
2e11cbb8a4 some sdl audio tweaks that made it work with artsc output
thought I commited these before.. (where have we heard that before?) ;)
2001-05-17 23:21:26 +00:00
Bill Currie
d16dc87dfa fix oss' device openning mode. defaults to write only, but read/write can be
selected by setting snd_oss_rw (need better name?) to non-zero
2001-05-16 18:59:31 +00:00
Ragnvald Maartmann-Moe IV
b10ea42970 Update alsa support for most recent API changes. Old version temporarily left in as comments. 2001-05-08 17:16:49 +00:00
Adam Olsen
0dee26397c Make sdl audio work. And despite claims, it's not actually bad
(except for esd, but that's not sdl's fault).
I havn't tested it with other hardware or different config variables,
and I've experienced the occasional hang or segfault on exit, so
feedback is very welcome. :)
2001-04-27 07:41:47 +00:00
Bill Currie
00e510b96e --without-clients no longer builds client only libs 2001-04-18 18:04:22 +00:00
Bill Currie
527471a7de *-wgl finally links (who knows if it works?:) and some more conceptual
cleanup
2001-04-17 15:55:33 +00:00
Bill Currie
c0507f5610 update for the lastest alsa pcm mmap api. not as bad as at first appearance 2001-04-14 02:30:30 +00:00
Bill Currie
475a0b0d4a must not call snd_pcm_mmap_forward with a count of 0
this fixes the alsa assert at slower rates
2001-04-13 08:08:41 +00:00
Bill Currie
6b3b94bafc sound crashing bug fixes
snd_dma.c, {nq,qw}/source/cl_parse.c:
	change the type of snd_worldmodel from * to ** and init snd_worldmodel
	with the ADDRESS of cl.worldmodel so its changes get seen by snd_dma
snd_mixa.S:
	picize
2001-04-12 06:53:07 +00:00
Bill Currie
4ae2ad2949 qw-client-wgl now builds (nq-wgl next) 2001-04-11 05:10:42 +00:00
Bill Currie
fa936b1713 back out rhamph's premature commit 2001-04-11 04:17:55 +00:00
Adam Olsen
c45a4d2550 fix harmless cut&paste error 2001-04-11 03:22:52 +00:00
Bill Currie
f36fa31ba2 build snd_mixa.S at all times. it does the right thing when no intel asm is
wanted.
2001-04-11 03:16:01 +00:00
Bill Currie
9cd83e178f various fixes for out-of-srcdir building
configure.in:
	foo/Makefile MUST come before foo/bar/Makefile or foo/bar will NOT be
	created.
libs/*...*/Mkaefile.am: add INCLUDES so $(top_scrdir)/include gets searched
{qw,nq}/source/Makefile.am: fix fbset compiling (and cleaning for nq)
2001-04-11 03:09:24 +00:00
Adam Olsen
0f98bc01be Forgot to edit the comments :) 2001-04-11 02:42:53 +00:00
Adam Olsen
320bd35f1e Move common variables in snd_dma.c and snd_null.c into snd_common.c 2001-04-11 02:41:12 +00:00
Adam Olsen
2b4d8ecc97 Remove some extra files linked in with snd_null.c 2001-04-11 01:17:08 +00:00
Joseph Carter
75aa40276f A few more. Also removed a couple inaccurate comments. 2001-04-11 00:10:19 +00:00
Adam Olsen
b89fde285d Make snd_null.c actually work.
add --disable-sound to configure, for no sound at all :)
2001-04-10 23:18:08 +00:00
Bill Currie
7f5d4cd7e9 clients now build (sdl, sgl, wgl), but don't link yet 2001-04-10 22:09:41 +00:00
Bill Currie
8e2d89c4c2 fix up a mis-understanding about api headers
*taniwha larts himself for not explaining things to Despair
2001-04-10 21:45:42 +00:00
Ragnvald Maartmann-Moe IV
cbb4af711c Remove duplicate sound.h, move some things down from include/QF to include.
Prepare for joystick merge...
2001-04-10 20:15:18 +00:00
Bill Currie
dfbfd9463c mingw cross compile fixes. qw-server (only, so far) compiles but does not
yet link due to Sys_Error :/
2001-04-10 20:07:11 +00:00
Adam Olsen
5ebe111301 Probably want this :) 2001-04-10 09:53:00 +00:00
Adam Olsen
69022c7ffb Move sound targets into a library. Still doesn't pick one at runtime though. 2001-04-10 09:40:09 +00:00
Joseph Carter
27d177f978 The cdrom code now uses strequal where appropriate. Also, playing track 0
now stops the CD from playing.  CD track 0 is used this way already, even
by the Id-licensed mission packs.
2001-04-10 07:26:22 +00:00
Joseph Carter
b7a4c80b94 New Cvar in Linux: mus_cddevice, default is /dev/cdrom. Set it to none if
you don't want CD music.  Can be changed in-game, in which case it will
stop the current CD if one is playing before changing devices.  Note that
this is a blocking operation, don't do it in the heat of battle.
2001-04-10 05:41:21 +00:00
Bill Currie
e2935cecb6 add .gitignore 2001-04-09 23:46:52 +00:00
Ragnvald Maartmann-Moe IV
d7eb585502 Merge cd. Doesn't dlopen different cd drivers or anything exciting... Yet. 2001-04-09 21:15:09 +00:00