Commit Graph

300 Commits

Author SHA1 Message Date
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