60 Commits

Author SHA1 Message Date
hiker
a18766e3e6 Handle looping in sfx thread. 2014-10-16 16:57:12 +11:00
hiker
aae834ba4b Run the music manager from the sfx thread. 2014-10-16 08:13:55 +11:00
hiker
bba7156aff Handle the setting of the listener position in the sfx thread. 2014-10-15 23:42:59 +11:00
hiker
8fcc373b2a Add volume, speed, and position settings to be done by the sfx
thread. Removed more unnecessary error checks (which mostly flood
stdout with 'not playing ...' messages), and renamed volume, position
and speed to setVolume, setPosition and setSpeed.
2014-10-15 07:55:18 +11:00
hiker
665f146923 Moved SFXStatus enum to SFXBase. 2014-10-14 08:05:04 +11:00
hiker
bfe84612fa Let all SFX commands be handled by the sfx manager thread (otherwise
events could be handled in the wrong order, e.g. a delete from the
main thread before the play in the manager thread, resulting in a crash).
Should fix #1511 and #1604.
2014-10-13 08:26:45 +11:00
hiker
216575a732 Started to let all sfx related command be executed from the sfx manager
to avoid race condition and crashes.
2014-10-11 11:55:02 +11:00
hiker
99fd49bdc0 Run SFX in a separate thread (for #1511). 2014-09-22 17:04:14 +10:00
hiker
c147dacbc2 Queue up sfx instead of starting them immediately. Preparation for
threading the sfx manager.
2014-09-18 11:43:26 +10:00
hiker
64fc2dd968 Added comments. 2014-09-18 07:55:24 +10:00
hiker
8c3beef69b Removed unnecessary static variable. 2014-09-18 07:48:31 +10:00
hiker
66da6d9435 Removed old/unused declaration. 2014-09-17 22:08:43 +10:00
hiker
86b351fbf4 Turn sfx_manager into a singleton. 2014-09-17 21:38:21 +10:00
hikerstk
c5b8732087 Probably biggest commit (in terms of number of files) ever -
updated the (c) line of all files to -2013, added missing (c), 
changed format in some cases so that it will be easier in
the future to change them by script. No actualy code change.


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@14447 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-11-15 11:43:21 +00:00
curaga
5d7e846969 Parallelize SFX loading, 7% speedup in load time
Vorbis and AL are thread-safe.


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@13549 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-08-22 15:43:24 +00:00
curaga
e3ebbbbb04 sfx mgr: Remove unused function declaration
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@13079 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-07-04 19:31:19 +00:00
curaga
57c3cbae3e Space cleanup pass on the headers
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@12817 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2013-05-30 19:47:39 +00:00
auria
78d964b79d try to fix sound leaks
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@12222 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2012-12-09 23:30:26 +00:00
auria
65d897915a Manually implement muting sounds when too far since OpenAL doesn't seem to have that feature, and use it to finally make the spaceship sound in the intro work
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@11422 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2012-07-22 20:05:38 +00:00
auria
9f909b4c26 undo my attempts at configuring the attenuation model per-source, after closer inspection OpenAL doesn't support what I was trying to do :(
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@11421 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2012-07-22 19:20:41 +00:00
auria
1574ff472d Add specifying SFX rolloff type
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@11356 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2012-06-30 18:49:35 +00:00
auria
92eb0ebd2a Ran a small bash script to remove all of those annoying strings. The only thing they gave us were the need to rebuild after committing
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@10363 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2011-12-06 18:43:36 +00:00
auria
407c5319b5 More work to fix building without OpenAL for Android
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@10267 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2011-11-27 18:15:12 +00:00
auria
c5ddfb1d6d Add nice little race end fanfare and race summary song by Dundersylt
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@8648 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2011-05-21 01:07:06 +00:00
auria
16158e434f Make per-material sounds always positional
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@8428 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2011-04-23 16:09:23 +00:00
auria
cdc61fda1e Fixed non-positional bridge sound in canyon
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@8338 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2011-04-13 20:59:22 +00:00
auria
7f97094b87 Fixed numerous leaks, especially audio leaks + add debug functions to be able to easily check for audio leaks
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@6903 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2010-12-08 22:18:55 +00:00
auria
2df77fbc5e Fixed machine gun effect when riding on zipper ramps
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@6576 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2010-11-15 19:15:34 +00:00
auria
3f0f1d4b57 More work on audio : enabling SFX in-game now works significantly better, cakes and zippers now work properly. Disabling SFX in-game still not checked; when when enabling SFX in-game, looping sounds like kart engines are not started
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@6245 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2010-10-11 02:13:45 +00:00
auria
65fdc2f2ee Link each Sound Source to a Buffer, even if OpenAL is not inited. This will help correct the SFX enable bug
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@6244 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2010-10-11 02:00:36 +00:00
auria
3adaeef476 Started refactoring audio code so that the SFX enable bug can be fixed easier later (bug not yet fixed)
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@6243 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2010-10-11 01:45:12 +00:00
hikerstk
c13933a792 Added more NoCopy.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@5922 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2010-09-08 11:39:19 +00:00
hikerstk
f1438d6354 Added support for terrain specific sfx. As an example
this has been used for the wooden terrain in snowtuxpeak.
Note that atm changing the pitch is used to make the sfx
depend on speed, but since I am not too happy with this
I might add support for a customisable pause between
looping the sfx.


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@5527 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2010-06-20 23:01:23 +00:00
auria
2810193fb2 Lots of small changes to make the output Doxygen file much more useful
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@5249 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2010-04-23 20:36:13 +00:00
auria
c12618a48a Moved some audio code around because the previous organisation was confusing, there was some SFX code among the music code
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@5227 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2010-04-21 17:16:49 +00:00
hikerstk
9e9cac587f 1) Fixed crash when errors occurred during audio initialisation:
quickSound did not test if sfx were correctly initialsed. There
   are still outstanding bugs when audio doesn't work, related to
   the sfx not loaded. Had to make quickSound non-static, since
   otherwise it couldn't test if sfx were initialised.
2) Made several minor layout changes to follow our style and be
   easier to understand.


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@5014 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2010-03-17 04:48:01 +00:00
mbjornstk
0d97bfe2c4 Add string include.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@4732 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2010-02-15 22:32:53 +00:00
auria
100883034e Remove unecessary #include (sorry everyone, will cause a full rebuild)
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@4731 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2010-02-15 21:57:39 +00:00
auria
93cc5209f7 Converted sound effects file to XML. Along the way, refactored the audio code to be more flexible. before, when a sound changed, you needed to edit the config file of STK, edit the enum in the header, edit the loader in the .cpp... was annoying. Now you only need to edit the config file.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@4728 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2010-02-15 19:17:35 +00:00
auria
2f1c755596 Added sound effect to using the Swapper powerup
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@4723 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2010-02-15 02:37:54 +00:00
mbjornstk
5fe41e5625 Run expand -t4 to convert tabs to spaces. No other whitespace fixes, but
there are still trailing spaces and lines with 5 spaces as indent (fix them
as the files are changed for other reasons). src/guiengine/CGUIFont.* and
src/bullet/ not processed to allow cleaner updates from upstream.


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@4320 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-12-18 00:36:35 +00:00
auria
8158bc01b0 Added ear-candy to previous commit + made it easier to add sound effects in menus
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@4158 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-10-28 23:57:10 +00:00
auria
73a925e3b6 Started implementing locking (follow-the-leader is now locked) + 3 strikes must not appear in single player
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@4024 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-09-15 23:49:58 +00:00
rforder
bbfb30d4c5 Implemented voice event when attachment occurs.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3898 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-08-20 21:22:34 +00:00
rforder
8da41850d3 Cleaning up new custom kart sfx code, better documentation, more readable.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3896 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-08-20 20:04:24 +00:00
rforder
97bbad19e7 Implementing easily extensible kart sfx system. See sfx_manager.hpp for sparse notes.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3895 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-08-20 18:29:59 +00:00
rforder
4f2f272d37 Implemented ability to add custom horn sounds to each kart in order to test code that will support character voices. Adding a horn-sound
tag to the .irrkart file that specifies the filename of the sound effect will ensure that sound effect will act as a horn for that kart 
(see tux for an example).  Added m_horn_sfx_file attribute to kart_properties class.



git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3892 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-08-20 03:44:32 +00:00
rforder
6c0f94190b Created addSingleSfx() to the sfx_manager. Extends ability of sfx_manager to load custom sounds during run-time. Will be used for loading character voices. Replaced SFXType with int in several places and added bounds checking.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3891 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-08-19 18:34:49 +00:00
auria
87a274fc77 started removing SDL from STK. Gamepad input broken, maybe keyboard a bit too. Default bindings changed because some keys on mac are ignored by irrlicht (known bug, fixed in enxt version IIRC)
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3421 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-04-25 17:55:39 +00:00
auria
35d046ee42 skinned gauges. default value is now read from audio managers - it just doesn't work for music yet because no default value is set for music volume in preferences.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3391 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-04-16 01:29:06 +00:00