Daniel Gibson
62d76b3d40
Fix segfault when s_openal=0 but USE_OPENAL=1
...
If the game was compiled with openal support (USE_OPENAL is defined),
but it's disabled via cvar (set s_openal 0) there could be segfaults
when calls to openal where done anyway, because the check
if(sound_started == SS_OAL) was forgotten.
This is fixed now.
2012-05-17 14:47:05 +02:00
Yamagi Burmeister
5bf1ee670d
Fix s_show when OpenAL is used
2012-05-12 15:11:17 +02:00
Yamagi Burmeister
aff51633d0
Add a sanity check against buffer overflows to S_BuildSoundList
2012-05-12 14:46:13 +02:00
Yamagi Burmeister
4a414b588e
Fix a buffer overflow in AL_AddLoopSounds
...
This fixes a crash in mine4.bsp and most likely some other problems.
The bug was reported by "mxmvasilyev0 [at] gmail [dot] com" and tracked
as Github issue #1 .
2012-05-12 14:42:15 +02:00
Christoph Mallon
ab034114b4
Whitespace fixes.
2012-04-30 08:25:59 +02:00
Daniel Gibson
31f9af817f
Last fixes and cleanups for OpenAL support
...
* New license header in snd_al.c
* README fixes
* Fix printing of used OpenAL device
* Cleanup in snd_al.c
2012-04-28 15:44:14 +00:00
Yamagi Burmeister
c62e5ac85b
- Implement AL_UnqueueRawSamples() and use it to stop the Vorbis playback
...
imediatly
- Increase Vorbis buffers to 64. 24 were to few
2012-04-27 14:06:08 +00:00
Yamagi Burmeister
2b6389a471
Filter sound samples (not the music) when under water
2012-04-27 13:55:45 +00:00
Yamagi Burmeister
1a0b4ebad5
Do not set / enable / show the s_openal CVAR if the binary is build
...
without OpenAL support. OpenAL is enabled in the default Makefile and if
it's disabled, it's shown at startup.
2012-04-27 12:00:22 +00:00
Yamagi Burmeister
a388254252
Fix a missmerge
2012-04-25 10:09:16 +00:00
Yamagi Burmeister
2c3c203097
Merge out new options framework from the trunk
2012-04-25 09:57:17 +00:00
Yamagi Burmeister
03015a686b
Hide music playback from CD behind CDA
2012-04-25 08:53:25 +00:00
Yamagi Burmeister
9d60a5de6a
Hide OGG/Vorbis support under OGG
2012-04-25 08:24:38 +00:00
Yamagi Burmeister
f836cef4c4
Rename qal_api.c to unix/qal.c and qal_api.h to unix/header/qal.h.
...
Both files are platform dependend and won't work on non unixoid
platforms.
2012-04-24 14:20:01 +00:00
Yamagi Burmeister
bf6d491af3
- Refactor AL_SoundInfo() into the platform dependent
...
QAL_SoundInfo().
- Use QAL_SoundInfo() to print the OpenAL infos
at startup and by the "soundinfo" command.
- Implement printing of all available OpenAL
devices at startup and by the "soundinfo"
command.
2012-04-24 14:07:33 +00:00
Yamagi Burmeister
79c137254a
Rework qal_api.c and qal_api.h:
...
- Reformat to match "our" coding style
- Unroll all unreadable macros
- Remove the use of goto
2012-04-24 13:22:05 +00:00
Yamagi Burmeister
479aae4a9c
*gna* This \n got lost on the way
2012-04-23 13:57:36 +00:00
Yamagi Burmeister
90d0811185
Delete all OpenAL sources at shutdown
2012-04-23 13:55:25 +00:00
Yamagi Burmeister
134878e996
- Some more minor style cleanup
...
- Much improved startup log messages
2012-04-23 13:44:12 +00:00
Yamagi Burmeister
678e50bf8d
Raise the volume of a positioned sample by 384 instead of 255 when using
...
OpenAL. This makes them much more distinguishable from the background
music.
2012-04-23 13:23:47 +00:00
Yamagi Burmeister
3bce2a212a
- Use a better way to calculate the number of buffers
...
used by OGG/Vorbis. 24 buffers are enough for smooth
and stutter free playback and ensure, that OGG_Stop()
is effective nearly immediately.
- Change C99 comments to C89, since snd_vorbis.c is
a C89 file. Caedes will beat me for this :/
2012-04-23 07:59:39 +00:00
Daniel Gibson
3d7013e12b
Fix: Cvar_Get needs a string as default value, not an int..
2012-04-22 20:28:41 +00:00
Daniel Gibson
8bfc61b564
Introduce s_openal to enable/disable OpenAL
...
And fix possible dangling else problem in that code
2012-04-22 20:27:02 +00:00
Daniel Gibson
efd85a76c6
Updated paintedtime in OpenAL mode so shotgun sounds right
...
probably fixes other issues as well.
2012-04-22 20:14:56 +00:00
Daniel Gibson
65914b342d
Allow DMA/SDL sound in OGG_Stream when compiling with USE_OPENAL
2012-04-22 17:59:03 +00:00
Yamagi Burmeister
e388a425b4
Enable OGG/Vorbis playback in OpenAL mode.
2012-04-22 17:50:15 +00:00
Daniel Gibson
04fd7f2cda
OpenAL Streaming Sound stuff
...
from zeq2, but adapted/stripped down for our needs.
Videos work (for me), music does not (yet)
2012-04-22 15:59:18 +00:00
Daniel Gibson
6384b850f1
Remove redundancy
2012-04-22 15:57:59 +00:00
Daniel Gibson
f4d5040a73
Add OpenAL stuff to Makefile, make it compile and work (no streaming sound yet)
...
It works \o/
It's still hacky so it needs more work.
And streaming sound (OGG music, sound from videos) is still missing.
2012-04-22 00:24:50 +00:00
Daniel Gibson
7e0a44825e
OpenAL support, from Q2Pro
...
Copied and adapted (hopefully) all relevant code from Q2Pro.
Did some small refactorings when needed.
Still TODO:
* Adapt Makefile
* OGG support when using OpenAL
* A cvar that switches between OpenAL and DMA/SDL
* Actually compiling and testing this stuff ;)
2012-04-15 02:58:01 +00:00
Yamagi Burmeister
77de60f274
Fix a rare crash by nullpointer
2011-10-13 13:16:59 +00:00
Yamagi Burmeister
0aa45e9736
Fix some warnings with clang
2011-06-27 14:40:16 +00:00
Yamagi Burmeister
bff20f6b7c
Nächter Soundpatch von Ozkan:
...
- Adds a "float volume" argument to snd_dma.c:S_RawSamples()
so that ogg can use it too
- That S_RawSamples now has a volume argument, the
cinematics now honor the volume adjustment instead of
playing at full volume all the time even if volume is
zeroed
- Moves endianism handling from S_RawSamples to codec
level
- Fixes an issue of S_RawSamples with 8 bit stereo samples
(not seen/tested with q2 but with my uhexen2)
- Other minor adjustments
2010-12-20 09:56:37 +00:00
Yamagi Burmeister
f5f5c0d2ca
Korrigiere Endianism im Vorbis-Code
2010-12-03 09:45:49 +00:00
Yamagi Burmeister
4b6c561acc
Erweitere Vorbis-Unterstützung:
...
- Support für Big-Endian Pamps (läuft yQ2 auf sowas überhaupt?)
- Unterstützung für 22khz Vorbis-Dateien (ermöglicht es die
Wave-Dateien aus den Pags in Vorbis zu konvertieren, wenn man denn
drauf steht.)
- Unterstützung für Mono-Dateien (Sinnvoll für Handhelds)
Patch von: Ozkan Sezer
2010-11-30 10:28:20 +00:00
Yamagi Burmeister
e57aba66c1
Man sollte strncmp() auch richtig anwenden
2010-11-27 11:19:59 +00:00
Yamagi Burmeister
8af8dd1559
Stoppe Ogg-Playback, wenn Track 0 gefordert wird
2010-11-27 10:45:09 +00:00
Yamagi Burmeister
758d82fe4c
Deregistriere ogg_init und ogg-shutdown
2010-11-01 15:48:01 +00:00
Yamagi Burmeister
f0fa091fde
s_khz per Default auf 44
2010-10-28 05:57:13 +00:00
Yamagi Burmeister
7c6551dc0f
Einen kleinen Bug gefixt, der zu Soundclipping führte
2010-10-28 05:56:20 +00:00
Yamagi Burmeister
09c87ea0cc
Reformatiere die Startup Ausgabe
2010-10-19 13:34:08 +00:00
Yamagi Burmeister
7ebccb34d4
- Formatiere Code neu
...
- Einige Änderungen für mehr Robustheit
- Vereinfache Code und reiße überflüssigen Müll raus
2010-10-14 06:59:42 +00:00
Yamagi Burmeister
ebe4cb1b45
- Formatiere Code neu
...
- Vereinfache Code
2010-10-14 06:29:53 +00:00
Yamagi Burmeister
90101b4dec
- Formatiere Code neu
...
- Vereinfache Code
2010-10-14 06:23:35 +00:00
Yamagi Burmeister
a8a61f0234
- Vereinfache Code
...
- Reformatiere
2010-10-14 06:14:35 +00:00
Yamagi Burmeister
2b405405dc
- Formatiere neu
...
- Vereinfache Code
2010-10-14 06:08:10 +00:00
Yamagi Burmeister
dc930150cf
Und noch ein paar Dinge mehr am Sound gemacht
2010-10-13 18:00:39 +00:00
Yamagi Burmeister
f20f8bddf4
Einige fixes für das Soundsystem
2010-10-13 17:07:29 +00:00
Yamagi Burmeister
67ef502a93
- Reduce sounds to 96
...
- Increase com_maxfps to 120
2010-10-01 16:11:00 +00:00
Yamagi Burmeister
0c020c4ee4
Intelligentere Deafults:
...
rate 8000 ist mehr als ausreichend bei allem, was kein Modem mehr ist.
s_mixahead 0.14 ist besser als 0.2, außer man will ein leichtes soundlag
cl_maxfps auf 60. Das reicht und verhindert bugs
2010-07-13 18:42:12 +00:00
Yamagi Burmeister
b554afa486
Headerguqards für den Client
2010-07-13 18:30:43 +00:00
Yamagi Burmeister
787686a976
Dateiheader neu formatiert und "particles.h" entfernt
2010-07-13 18:19:42 +00:00
Yamagi Burmeister
185063f1a9
Voice over Network weitergehend kommentiert
2010-07-13 08:54:23 +00:00
Yamagi Burmeister
c8927b0cee
Mehr Sounds
2010-07-13 08:48:09 +00:00
Yamagi Burmeister
f16ba343cc
s_primary war windows only
2010-07-13 08:44:06 +00:00
Yamagi Burmeister
c81863ef71
snd_local.h -> header/local.h
2010-06-19 19:10:31 +00:00
Yamagi Burmeister
3007608a22
Benenne snd_ogg.c in snd_vorbis.c um
2010-06-19 19:06:37 +00:00
Yamagi Burmeister
82b038590d
Die Sound-Header in ein eigenes verzeichnis
2010-06-19 19:04:39 +00:00
Yamagi Burmeister
8925af9878
Den Wave-Code in eine eigene Datei
2010-06-19 18:59:33 +00:00
Yamagi Burmeister
1c7ef236f9
sound.h reformatiert
2010-06-19 18:54:45 +00:00
Yamagi Burmeister
01e870b794
snd_loc.h umbenannt zu snd_local.h
2010-06-19 18:51:28 +00:00
Yamagi Burmeister
fe587b7148
weitere Dateien des Soundsystems neu formatiert und kommentiert
2010-06-19 17:04:32 +00:00
Yamagi Burmeister
0c4a7d291f
snd_dma überarbeitet was die Kommentare und die Formatierung betrifft
2010-06-19 08:47:14 +00:00
Yamagi Burmeister
6669ab3643
strtok ist seit Jahren durch strsep ersetzt. Es ist schneller und
...
besser.
2010-06-17 06:59:33 +00:00
Yamagi Burmeister
c7d5882fe1
22kHz Sound als Standardeinstellung
2010-02-01 15:09:47 +00:00
Yamagi Burmeister
c3dcd1c1fa
Behebt einen Absturz beim Levelwechsel, wenn zuvor OGG/Vorbis
...
deaktiviert wurde.
2010-01-28 21:11:46 +00:00
Yamagi Burmeister
afce443234
Die "Playing $file" Meldung weg. Sie nervt
2009-10-06 15:12:06 +00:00
Yamagi Burmeister
e4818d35d5
Speichern funktioniert nun wieder. Das Menü spinnt aber noch
2009-10-04 09:26:46 +00:00
Yamagi Burmeister
137c9ce5d7
Man sollte auch alle Dateien mergen...
2009-10-03 16:08:34 +00:00
Yamagi Burmeister
b6f5dadf4c
Merge in den Trunk:
...
- OGG/Vorbis Support
- pk3 Support (ungetestet)
2009-10-03 16:06:45 +00:00
Yamagi Burmeister
327c0352d2
Einen üblen Soundcrash entfernt
2009-03-10 20:29:15 +00:00
Yamagi Burmeister
0505ea55a9
Der Sound soll auch ohne rumeditieren mit Alsa laufen
2009-03-10 17:36:01 +00:00
Yamagi Burmeister
05e630158a
Dateien des Clients neu angeordnet
2009-03-03 13:43:32 +00:00