the-maddin
c0f351d92e
fix indents
2021-02-27 00:01:08 +01:00
the-maddin
003fa68582
Remove leftover default setting
2021-02-26 22:23:46 +01:00
the-maddin
063854384f
Set sane default volumes on audiostream creation.
...
Looking throughthe code, it appears that
sound volumes are typically set when calling
the "play" function for in-engine uses of sounds.
No default values were, in fact, set explicitly at
creation, so they were initialized to 0.0f.
Scripting documentation, however, refers to
default volumes per type where no volume is
passed. New engine functionality should also
be able to rely on this.
I'm setting sane values found in other
parts of the sound system at stream creation,
to be used or overwritten later.
2021-02-24 01:45:05 +01:00
the-maddin
9ffcd780e9
Deduplicate stream creation code
2021-02-24 01:45:05 +01:00
the-maddin
4125d0bdba
Fix stream slot leak
...
A wrong stream type could lead to a stream handle
being marked as used although no stream is created
2021-02-24 01:44:10 +01:00
the-maddin
34eed12988
Extract shared code from AudioStream::Create and CreateMem
...
Also cleaned up control flow on failure as far as used macros allow.
2021-02-22 00:58:41 +01:00
the-maddin
8770ad74f8
Add support for audiostream from in-memory sound
2021-02-19 01:19:05 +01:00
asarium
2dc2295a59
Make FFmpeg an optional requirement
...
This does some refactoring to make it possible to cimpile and run FSO
without needing to link to FFmpeg. Since that eliminates support for
cutscenes or sound this is mostly useful for running a standalone server
which has no need for this anyway.
This reduces the image size of the standalone Docker image to only 20MB
and also resolves any licensing issues that might have existed.
2020-02-29 17:24:56 +01:00
Taylor Richards
6b3f5051ea
avoid full stream reset when looping music
...
fixes #2097
2019-11-17 16:00:38 -05:00
Goober5000
ec19f9be98
change is_sexp_true return type from int to bool
2017-08-29 13:50:22 -04:00
asarium
787630e9de
Reset AudioStream data when beginning playback
...
This fixes an issue where the event music cuts off after ~ 3 seconds
because the fields tracking how much data has been read so far were not
reset. I also fixed the calculation of how much data may be read since
that was slightly broken by the new audio stream reading code.
2016-10-09 21:44:05 +02:00
asarium
1cf11d31fe
Use FFmpeg for normal audio loading
...
This is the last part of our code that does audio loading on its own.
After this is merged the WAV/ACM/Ogg code can be removed.
2016-10-05 11:02:36 +02:00
asarium
e760c58522
Use FFmpeg for audio stream decoding
...
This is the first step towards moving all audio decoding to FFmpeg which
will reduce the amount of external code we will need to include. This
only replaces the AudioStream code with an FFmpeg based solution which
should make the code easier to review.
2016-09-30 18:35:48 +02:00
asarium
20beb2eec1
64-bit warning fixes...
2016-08-23 23:17:41 +02:00
m!m
22c0255277
Fix a bunch of 64-bit MSVC warnings ( #709 )
...
* Fix a bunch of 64-bit warnings
* Fix Linux compilation error
* Fix Mac error
* Fix some issues
* Fix more GCC warnings
* Remote unwanted change
* Remove accidentally readded file
* Fix wrong limit check
* Use BEAM_INDEX macro for getting beam object index
* Fix 32-bit warning
* Use BEAM_INDEX instead of pointer arithmetic
2016-08-09 11:08:54 -07:00
asarium
c43d177a72
Merge branch 'master' into antipodes_/sync
...
Conflicts:
code/freespace2/freespace.cpp
code/globalincs/pstypes.h
2015-11-29 13:29:04 +01:00
Yarn366
b1e7a2a1bf
Don't add an extension to a sound's file name if the extension is supposed to be present already
2015-11-09 00:31:40 -05:00
asarium
f08466f0f3
Merge branch 'master' into antipodes_/sync
...
Conflicts:
ci/travis/before_install.sh
ci/travis/install.sh
code/sound/voicerec.cpp
2015-10-01 22:45:10 +02:00
Goober5000
56a9391e31
some const-correctness
2015-09-22 19:02:10 -04:00
asarium
e08ba026f8
Merge branch 'master' into antipodes_/sync
...
Conflicts:
.travis.yml
code/cmdline/cmdline.cpp
code/fs2netd/fs2netd_client.cpp
code/fs2netd/tcp_client.cpp
code/globalincs/pstypes.h
code/graphics/2d.cpp
code/graphics/2d.h
code/parse/lua.cpp
code/parse/scripting.cpp
code/windows_stub/stubs.cpp
configure.ac
projects/MSVC_2012/Freespace2.vcxproj
projects/MSVC_2012/code.vcxproj
projects/MSVC_2013/code.vcxproj
projects/MSVC_2015/code.vcxproj
2015-08-24 12:10:16 +02:00
asarium
273af3afdf
Don't mix NULL and integers
2015-07-15 17:26:18 +02:00
asarium
597000ca46
Use our CFILE system to handle audio IO
2015-07-03 19:08:56 +02:00
Echelon9
c5493bb480
Scripted sort and uniq on (internal) project includes. Improves search time and as a by product removed a number of duplicative includes.
2015-06-22 20:24:30 +10:00
asarium
7e77b5a67c
Merge branch 'master' into antipodes
...
Conflicts:
.gitignore
code/Makefile.am
code/ai/ai.h
code/ai/ai_profiles.cpp
code/ai/ai_profiles.h
code/ai/aibig.cpp
code/ai/aicode.cpp
code/ai/aiturret.cpp
code/asteroid/asteroid.cpp
code/asteroid/asteroid.h
code/bmpman/bm_internal.h
code/bmpman/bmpman.cpp
code/bmpman/bmpman.h
code/camera/camera.cpp
code/camera/camera.h
code/cfile/cfile.cpp
code/cmdline/cmdline.cpp
code/cmdline/cmdline.h
code/controlconfig/controlsconfig.h
code/controlconfig/controlsconfigcommon.cpp
code/cutscene/movie.cpp
code/cutscene/oggplayer.cpp
code/debugconsole/consoleparse.cpp
code/fred2/campaigneditordlg.cpp
code/fred2/fred.cpp
code/fred2/fred.rc
code/fred2/missionsave.cpp
code/fred2/resource.h
code/fred2/sexp_tree.cpp
code/fred2/sexp_tree.h
code/fred2/shipflagsdlg.cpp
code/fred2/shipflagsdlg.h
code/fred2/shiptexturesdlg.cpp
code/fred2/voiceactingmanager.cpp
code/freespace2/freespace.cpp
code/freespace2/freespace.rc
code/gamehelp/contexthelp.cpp
code/globalincs/alphacolors.cpp
code/globalincs/alphacolors.h
code/globalincs/version.h
code/globalincs/vmallocator.h
code/globalincs/windebug.cpp
code/graphics/2d.cpp
code/graphics/font.cpp
code/graphics/generic.cpp
code/graphics/generic.h
code/graphics/grinternal.h
code/graphics/gropengl.cpp
code/graphics/gropengldraw.cpp
code/graphics/gropenglextension.h
code/graphics/gropenglpostprocessing.cpp
code/graphics/gropenglstate.cpp
code/graphics/gropenglstate.h
code/graphics/gropengltexture.cpp
code/graphics/gropengltnl.cpp
code/hud/hud.cpp
code/hud/hud.h
code/hud/hudconfig.cpp
code/hud/hudlock.cpp
code/hud/hudmessage.cpp
code/hud/hudparse.cpp
code/hud/hudreticle.cpp
code/hud/hudreticle.h
code/hud/hudshield.cpp
code/hud/hudsquadmsg.cpp
code/hud/hudtarget.cpp
code/hud/hudtarget.h
code/hud/hudtargetbox.cpp
code/inetfile/cftp.cpp
code/inetfile/chttpget.cpp
code/io/joy.cpp
code/io/joy_ff.cpp
code/io/key.cpp
code/io/keycontrol.cpp
code/io/mouse.cpp
code/io/timer.cpp
code/localization/localize.cpp
code/localization/localize.h
code/math/fvi.cpp
code/math/vecmat.cpp
code/menuui/credits.cpp
code/menuui/mainhallmenu.cpp
code/menuui/mainhallmenu.h
code/menuui/optionsmenumulti.cpp
code/menuui/playermenu.cpp
code/mission/missionbriefcommon.cpp
code/mission/missioncampaign.cpp
code/mission/missiongoals.h
code/mission/missionmessage.cpp
code/mission/missionparse.cpp
code/mission/missionparse.h
code/missionui/missionbrief.cpp
code/missionui/missioncmdbrief.cpp
code/missionui/missiondebrief.cpp
code/missionui/missionscreencommon.cpp
code/missionui/missionshipchoice.cpp
code/missionui/missionweaponchoice.cpp
code/missionui/redalert.cpp
code/missionui/redalert.h
code/mod_table/mod_table.cpp
code/mod_table/mod_table.h
code/model/model.h
code/model/modelcollide.cpp
code/model/modelinterp.cpp
code/model/modelread.cpp
code/network/multi.cpp
code/network/multi_dogfight.cpp
code/network/multi_ingame.cpp
code/network/multi_log.cpp
code/network/multi_rate.cpp
code/network/multiteamselect.cpp
code/network/multiui.cpp
code/network/multiutil.cpp
code/network/stand_gui-unix.cpp
code/object/collideshipship.cpp
code/object/collideshipweapon.cpp
code/object/object.cpp
code/object/object.h
code/object/objectsnd.cpp
code/object/objectsort.cpp
code/osapi/osapi.cpp
code/osapi/osapi_unix.cpp
code/osapi/outwnd.h
code/parse/generic_log.cpp
code/parse/lua.cpp
code/parse/parselo.cpp
code/parse/parselo.h
code/parse/scripting.cpp
code/parse/scripting.h
code/parse/sexp.cpp
code/parse/sexp.h
code/physics/physics.cpp
code/pilotfile/csg.cpp
code/pilotfile/csg_convert.cpp
code/pilotfile/pilotfile.cpp
code/pilotfile/pilotfile_convert.h
code/playerman/playercontrol.cpp
code/radar/radardradis.cpp
code/radar/radardradis.h
code/radar/radarsetup.cpp
code/radar/radarsetup.h
code/ship/ship.cpp
code/ship/ship.h
code/ship/shipfx.cpp
code/ship/shiphit.cpp
code/sound/audiostr.cpp
code/sound/ds.cpp
code/sound/openal.cpp
code/sound/rtvoice.cpp
code/sound/sound.cpp
code/sound/voicerec.cpp
code/stats/medals.cpp
code/stats/medals.h
code/stats/scoring.cpp
code/ui/ui.h
code/weapon/beam.cpp
code/weapon/weapon.h
code/weapon/weapons.cpp
code/wxfred2/aboutbox.cpp
code/wxfred2/campaigneditor.cpp
code/wxfred2/campaigneditor.h
code/wxfred2/commandbriefingeditor.cpp
code/wxfred2/debriefingeditor.cpp
code/wxfred2/fredframe.cpp
code/wxfred2/fredframe.h
code/wxfred2/missionspecseditor.cpp
code/wxfred2/missionspecseditor.h
code/wxfred2/voiceactingmanagereditor.cpp
code/wxfred2/wxfred.xrc
code/wxfred2/wxfred2.cpp
code/wxfred2/wxfred2.h
configure.ac
fs2open.Doxyfile
jansson/LICENSE
jansson/dump.c
jansson/hashtable.c
jansson/hashtable.h
jansson/jansson.h
jansson/jansson_config.h
jansson/jansson_private.h
jansson/load.c
jansson/memory.c
jansson/pack_unpack.c
jansson/strbuffer.c
jansson/strbuffer.h
jansson/strconv.c
jansson/utf.c
jansson/utf.h
jansson/value.c
libpng/png.c
libpng/png.h
libpng/pngconf.h
libpng/pngdebug.h
libpng/pngerror.c
libpng/pngget.c
libpng/pnginfo.h
libpng/pnglibconf.h
libpng/pngmem.c
libpng/pngpread.c
libpng/pngpriv.h
libpng/pngread.c
libpng/pngrio.c
libpng/pngrtran.c
libpng/pngrutil.c
libpng/pngset.c
libpng/pngstruct.h
libpng/pngtrans.c
libpng/pngwio.c
libpng/pngwrite.c
libpng/pngwtran.c
libpng/pngwutil.c
projects/Eclipse/Freespace2/.project
projects/MSVC_2005/Fred2.vcproj
projects/MSVC_2005/Freespace2.sln
projects/MSVC_2005/Freespace2.vcproj
projects/MSVC_2005/code.vcproj
projects/MSVC_2005/wxFRED2.vcproj
projects/MSVC_2008/Fred2.vcproj
projects/MSVC_2008/Freespace2.doxproj
projects/MSVC_2008/Freespace2.vcproj
projects/MSVC_2008/code.vcproj
projects/MSVC_2010/Fred2.vcxproj
projects/MSVC_2010/Freespace2.vcxproj
projects/MSVC_2010/code.vcxproj
projects/MSVC_2010/code.vcxproj.filters
projects/MSVC_2010/wxFRED2.vcxproj
projects/MSVC_2011/Fred2.vcxproj
projects/MSVC_2011/Freespace2.vcxproj
projects/MSVC_2011/code.vcxproj
projects/MSVC_2011/code.vcxproj.filters
projects/MSVC_2011/wxFRED2.vcxproj
projects/MSVC_2013/Fred2.vcxproj
projects/MSVC_2013/Freespace2.vcxproj
projects/MSVC_2013/code.vcxproj
projects/MSVC_2013/code.vcxproj.filters
projects/MSVC_2013/libjpeg.vcxproj
projects/MSVC_2013/liblua.vcxproj
projects/MSVC_2013/libpng.vcxproj
projects/MSVC_2013/wxFRED2.vcxproj
projects/MSVC_2013/zlib.vcxproj
projects/MSVC_6/Fred2.dsp
projects/MSVC_6/Freespace2.dsp
projects/MSVC_6/code.dsp
projects/MSVC_6/wxFRED2.dsp
projects/Xcode/English.lproj/InfoPlist.strings
projects/Xcode/FS2_Open.xcodeproj/project.pbxproj
projects/Xcode4/English.lproj/InfoPlist.strings
projects/Xcode4/FS2_Open.xcodeproj/project.pbxproj
projects/Xcode4/Frameworks.tgz
projects/codeblocks/Freespace2/Freespace2.cbp
zlib/adler32.c
zlib/compress.c
zlib/crc32.c
zlib/crc32.h
zlib/deflate.c
zlib/deflate.h
zlib/infback.c
zlib/inffast.c
zlib/inffixed.h
zlib/inflate.c
zlib/inftrees.c
zlib/trees.c
zlib/uncompr.c
zlib/zconf.h
zlib/zlib.h
zlib/zutil.c
zlib/zutil.h
2015-04-25 16:48:43 +02:00
chief1983
26adf935f7
Globalize various file extension lists littered throughout the code so they can be referenced from other classes as needed, instead of being hardcoded multiple times.
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11327 387891d4-d844-0410-90c0-e4c51a9137d3
2015-04-23 12:09:18 +10:00
Goober5000
709f483617
PAUSE ALL THE STREAMS
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11197 387891d4-d844-0410-90c0-e4c51a9137d3
2014-12-12 16:12:16 +10:00
Goober5000
b02af2ef6e
a more future-proof way to keep track of explicitly paused audio
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11187 387891d4-d844-0410-90c0-e4c51a9137d3
2014-12-04 16:39:40 +10:00
Goober5000
2f734daf0d
when the game returns from a paused state, don't unpause the music paused by sexp
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11185 387891d4-d844-0410-90c0-e4c51a9137d3
2014-12-03 20:31:32 +10:00
The_E
753e82f5c6
Removes the CRITICAL_SECTION macros, as these were just obscuring calls to SDL functions
...
git-svn-id: svn://svn.icculus.org/fs2open/branches/antipodes@10230 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-06 19:24:13 +10:00
Echelon9
b397f376d8
SDL2 code changes to bring more common platform code into play
...
git-svn-id: svn://svn.icculus.org/fs2open/branches/antipodes@10104 387891d4-d844-0410-90c0-e4c51a9137d3
2013-11-25 18:40:18 +10:00
The_E
25915f6de0
IIt begins!
...
SDL2 Everywhere, from me and Flaming_Sword. Outstanding issues: FRED integration, project file updates, cleanup.
git-svn-id: svn://svn.icculus.org/fs2open/branches/antipodes@10062 387891d4-d844-0410-90c0-e4c51a9137d3
2013-11-25 18:40:16 +10:00
The_E
2f46cbe8a3
sync to trunk 10046
...
git-svn-id: svn://svn.icculus.org/fs2open/branches/antipodes@10047 387891d4-d844-0410-90c0-e4c51a9137d3
2013-11-25 18:40:16 +10:00
The_E
499c62b181
Trunk sync r9530
...
git-svn-id: svn://svn.icculus.org/fs2open/branches/antipodes@9531 387891d4-d844-0410-90c0-e4c51a9137d3
2013-11-25 18:40:14 +10:00
Goober5000
138e6b853f
yeesh... a veritable cascade of const-correctness
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9783 387891d4-d844-0410-90c0-e4c51a9137d3
2013-09-13 20:18:32 +10:00
Goober5000
6ab03f2e2b
might as well remove this unnecessary temporary variable
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9528 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
niffiwan
37c132318a
Fix for mantis 2785: when unpausing sounds, use the previous volume, not the detault
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk@9527 387891d4-d844-0410-90c0-e4c51a9137d3
2013-03-18 20:24:45 +10:00
Zacam
c9a1d1869c
Trunk Sync: r9195-9199
2012-09-13 17:21:17 +00:00
IssMneur
bc713b68bb
Fixes mantis 2711. AudioStream handles are leaked under certain conditions.
...
AudioStream handles that were to destroy and fade would not if the stream was already finished or not started.
2012-09-12 02:41:08 +00:00
The_E
b7db6702dc
TRunk sync r8270-8286, 8289
2012-01-21 12:12:25 +00:00
Echelon9
f0746c2524
LLVM Warning fix: This is a dead store to the value done_reading.
2012-01-21 06:10:45 +00:00
Zacam
6e648f5205
Trunk Sync r8013
2011-11-19 16:32:50 +00:00
Echelon9
19ae6528e0
Cases of commented out Int3() indicate areas of old, redundant code.
2011-11-17 11:07:53 +00:00
The_E
d8a728d5f1
Trunk sync r7593
2011-08-30 18:17:09 +00:00
The_E
0525e871d0
PVS Studio related: Mark false alarms as such.
2011-08-30 17:46:49 +00:00
Zacam
3a18295fb8
Trunk Sync - r6586.
2010-10-08 23:37:32 +00:00
Zacam
53a78a859b
Warning Fix: (audiostr.cpp "WaveFile::Read" / ds.cpp "ds_load_buffer")
...
Sets 'float **pcm' to start as NULL
2010-10-08 23:30:15 +00:00
Zacam
2edf65dfe0
Trunk Sync - r6556.
2010-10-02 00:51:18 +00:00
The_E
4512219c9f
Adding the ad.stopMusic() function to scripting
2010-10-01 22:27:37 +00:00
Zacam
88377709f3
This is more like it. These files diff'd as different than Trunk versions, so I over-rode them with Trunk versions so that Antipodes and Trunk can finally have some 1:1 parity.
2010-09-23 02:14:26 +00:00
Zacam
3bebbbbcd0
Trunk Sync r6269. I hope this works. This is supposed to be a Trunk overlay merge into Antipodes, which should mean that Antipodes is now a copy of Trunk in all respects.
2010-06-29 22:09:34 +00:00