Marc Zinnschlag
e0c9265148
Merge remote-tracking branch 'origin/master'
2015-12-03 15:56:24 +01:00
scrawl
86881bcf39
In first person mode, attach sound listener to the camera
2015-12-03 15:16:20 +01:00
Chris Robinson
f19f1c47c8
Fix playing pending voices without a Ptr
2015-12-02 16:09:25 -08:00
Chris Robinson
2face3d0a9
Combine duplicate code
2015-12-02 16:09:25 -08:00
Chris Robinson
1407366e51
Use a premade SoundStream object for the output's streamSound functions
2015-12-02 16:09:25 -08:00
Chris Robinson
2ee3265b66
Use a premade Sound object for the output's playSound functions
2015-12-02 16:09:25 -08:00
Chris Robinson
53718a5ca0
Use a typedef for the sound instance handle
2015-12-02 16:09:25 -08:00
Chris Robinson
3a39a92b93
Keep track of audio tracks
2015-12-02 16:09:24 -08:00
Chris Robinson
2883cdba5c
Initialize the Sound object before modifying the pitch variable
2015-12-02 16:09:24 -08:00
Chris Robinson
a6db96b2d8
Update sound and stream parameters
2015-12-02 16:09:24 -08:00
Chris Robinson
4bd235284b
Rename a couple members to avoid confusion
2015-12-02 16:09:24 -08:00
Chris Robinson
1ce3e7f5b9
Use a separate type for streams
...
They're basically the same, but it's to help avoid accidents with passing non-
streaming sounds to the stream functions, or vice-versa.
2015-12-02 16:09:24 -08:00
Chris Robinson
816015d6e6
Avoid inheriting from Sound for sound types
2015-12-02 16:09:24 -08:00
Alexander "Ace" Olofsson
24340bff95
Add a space
2015-11-30 17:47:36 +01:00
Alexander "Ace" Olofsson
6823298516
Different way to solve the type deduction issue
2015-11-30 17:42:25 +01:00
Alexander "Ace" Olofsson
a69e751089
Revert "Fix windows builds"
...
This reverts commit b085c09f86
.
2015-11-30 17:38:46 +01:00
Alexander "Ace" Olofsson
b085c09f86
Fix windows builds
...
Can't instantiate a container (at least with MSVC) without knowing the exact size of the object being stored, forward-declares only work with pointers.
I couldn't see a simple way to remove the forward declare, so pointers and memory management it is.
2015-11-30 13:36:15 +01:00
Chris Robinson
4ee409af84
Load loudness data asynchronously
...
Currently abuses the output audio streams' background processing thread to do
the work, since there's no generalized threaded processing mechanism.
2015-11-27 09:47:14 -08:00
Chris Robinson
0f05ccf72a
Use a non-recursive mutex and properly end the streaming thrread
2015-11-27 08:13:23 -08:00
Chris Robinson
b5ed2e65f8
Add a method to get the sound stream delay
...
This helps avoid a lock during the movie player's read method, since it needs
to sync with the current playback position which would otherwise need to get
the movie decoder's current position.
2015-11-27 06:01:50 -08:00
Chris Robinson
f3c035907c
Rename Sound::update to Sound::applyUpdates
2015-11-27 04:55:17 -08:00
Chris Robinson
9568aa6a84
Use a condition variable to wake up the audio stream thread
...
This should make starting streams a bit more responsive, and allows us to do
more in it that really shouldn't wait for its next wake up.
2015-11-27 04:30:09 -08:00
Chris Robinson
4a078725d4
Play player voices locally
2015-11-27 02:57:44 -08:00
Chris Robinson
449eca4fb4
Properly mark streams as 2D or 3D
2015-11-27 02:36:33 -08:00
Chris Robinson
21bb2e9314
Use a deque for loudness buffers with a map lookup
...
Similar to Sound_Buffer, this allows individual Sound_Loudness objects to
retain a constant pointer when new ones are inserted on to the end.
2015-11-27 02:01:18 -08:00
Chris Robinson
5f8a09df97
Play player sounds (except footsteps) local to the listener
2015-11-27 02:01:18 -08:00
Chris Robinson
82f3651f81
Treat the sound offset as the offset in seconds
2015-11-27 02:01:17 -08:00
Chris Robinson
8b7587f9a6
Track whether a sound is 3D
2015-11-27 02:01:17 -08:00
Chris Robinson
fc912b135f
Avoid unnecessarily friending classes
2015-11-27 02:01:17 -08:00
Chris Robinson
d4238a6d91
Add config options for the sound buffer cache size
...
The cache size is specified with a min/max range, intended to avoid constant
unloading once the limit is reached. This way, buffers can be unloaded down to
a reasonable mimimum, allowing some more buffers to be subsequently loaded
without causing more unloading.
2015-11-26 02:13:37 -08:00
Chris Robinson
8715add72f
Store sound buffers in a deque that's filled in as needed
...
A deque allows existing Sound_Buffer references to remain valid as long as new
ones are back-inserted. These references can be used instead of indices.
2015-11-26 01:26:33 -08:00
Chris Robinson
8f08ca9cba
Revert "Avoid unsafe sizeof(x)/sizeof(x[0]) constructs for array counting"
...
This reverts commit 0d4fea896c
.
2015-11-25 06:06:27 -08:00
Chris Robinson
04f885d8cc
Rename mReferences to mUses
2015-11-25 04:24:27 -08:00
Chris Robinson
0d4fea896c
Avoid unsafe sizeof(x)/sizeof(x[0]) constructs for array counting
2015-11-25 04:24:27 -08:00
Chris Robinson
a1bdb544db
Avoid an unnecessary string copy
2015-11-25 04:24:27 -08:00
Chris Robinson
aac903484c
Remove a really unnecessary method
2015-11-25 04:24:26 -08:00
Chris Robinson
73448c72f6
Replace Play_NoTrack with playManualSound3D, and rename the latter
2015-11-25 04:24:26 -08:00
Chris Robinson
caae305ddd
Use a sorted list for unused buffers
...
Helps ensure the buffers being unloaded due to cache limits are not likely to
be needed anytime soon.
2015-11-25 04:24:26 -08:00
Chris Robinson
669b7a2295
Batch update changes together, when possible
...
Certain OpenAL implementations, including Rapture3D, Creative's hardware
drivers, and more recent versions of OpenAL Soft, can batch together changes so
that they all occur at once, avoiding potential discontinuities with one sound
being changed before another, or the listeenr being changed before sounds are.
On other implementaitons, this is a no-op and maintains existing behavior.
2015-11-25 04:24:26 -08:00
Chris Robinson
ea70b0baee
Don't store the buffer in the sound struct
2015-11-25 04:24:25 -08:00
Chris Robinson
fd7d58fe7e
Reset the sound handle back to null after unloading
2015-11-25 04:24:25 -08:00
Chris Robinson
4801661b34
Stop all sounds of the given id
2015-11-25 04:24:25 -08:00
Chris Robinson
8a69f676ec
Remove some duplicate code
2015-11-25 04:24:25 -08:00
Chris Robinson
45628316f8
Remove an unnecessary check
2015-11-25 04:24:25 -08:00
Chris Robinson
574c1923fe
Clear unused buffers after unloading them all
2015-11-25 04:24:25 -08:00
Chris Robinson
5ad772c3b3
Fix streaming sound time
2015-11-25 04:24:25 -08:00
Chris Robinson
3ce6aee98b
Return a decoder from the loadVoice function
2015-11-25 04:24:25 -08:00
Chris Robinson
24f8c78fca
Store sound buffer references by index instead of string
2015-11-25 04:24:24 -08:00
Chris Robinson
f7218f5a25
Use proper mutex mechanisms and don't check al errors in the stream thread
2015-11-25 04:24:24 -08:00
Chris Robinson
f9e18cd966
Prepare all Sound_Buffer objects when one is needed
...
This simply sets up the Sound record data to be used by the sound output. The
actual audio buffers, stored in the Sound_Handle, are still loaded on-demand.
2015-11-25 04:24:24 -08:00
Chris Robinson
6c3953766e
Use separate lists for the sound name and its buffer
...
This should make sound lookup a bit more efficient, especially when an integer
ID can be used.
2015-11-25 04:24:24 -08:00
Chris Robinson
fbfcc4050f
Stream voice clips
...
Voices tend to be a bit long, and not individually replayed often. So it's
better to stream them instead of loading theminto a sound buffer. The loudness
data is very small, though, so that can be kept buffered indefinitely.
2015-11-25 04:24:24 -08:00
Chris Robinson
eee6a19e31
Add a method to stream sounds in 3D
2015-11-25 04:24:24 -08:00
Chris Robinson
f1a1dc8408
Pass relevant sound parameters to the OpenAL_SoundStream constructor
2015-11-25 04:24:24 -08:00
Chris Robinson
83721092f2
Refactor the audio streaming code to be a bit saner
2015-11-25 04:24:23 -08:00
Chris Robinson
16f72886e9
Use separate lists for openal sounds and streams
2015-11-25 04:24:23 -08:00
Chris Robinson
0f33f41d8d
Actually unload sounds when running over
2015-11-25 04:24:23 -08:00
Chris Robinson
22a6811425
Limit the sound buffer cache to 15MB
2015-11-25 04:24:23 -08:00
Chris Robinson
0b2747098c
Keep track of unused sound buffers
2015-11-25 04:24:23 -08:00
Chris Robinson
4073495070
Add some missing sound handling
2015-11-25 04:24:23 -08:00
Chris Robinson
e362896817
Combine some duplicate code
2015-11-25 04:24:23 -08:00
Chris Robinson
febc7b510a
Remove an unneeded method
2015-11-25 04:24:23 -08:00
Chris Robinson
3fdc3c4ea9
Use a separate map for say sounds
...
Also restores lip movement
2015-11-25 04:24:22 -08:00
Chris Robinson
9d0018e1bc
Reorder active sound data to make lookup by Ptr better
2015-11-25 04:24:22 -08:00
Chris Robinson
495e138907
Load sound loudness and store it with the Sound_Buffer
...
Still not used for say yet, though
2015-11-25 04:24:22 -08:00
Chris Robinson
f4c22ec49e
Hold a separate list for voice sound buffers
...
This fixes say. Ideally voices would be streamed, but the loudness/"lip" buffer
extraction should be separated from the buffer loading code.
2015-11-25 04:24:22 -08:00
Chris Robinson
4571218827
Load the sound as needed and pass it directly to the play methods
...
This breaks say sounds, loudness handling, and the cache limit. Fixes are
forthcoming.
2015-11-25 04:24:22 -08:00
Chris Robinson
e2beefd8b5
Store info calculated from the ESM::Sound record
2015-11-25 04:24:22 -08:00
scrawl
f08cfa19ea
Fix SoundManager::isPlaying to consider multiple entries with the same Ptr/id
...
Now it returns true if *any* sounds matching the given Ptr and id are playing. The previous behaviour was causing problems with "zombie" sounds (sounds that have finished playing, but weren't removed from the map yet) making the isPlaying method return false even though there's another legitimately playing sound in the map.
2015-11-19 01:06:51 +01:00
Bret Curtis
3ea3d07d44
really purge libav
2015-11-12 16:39:29 +01:00
dteviot
77a1d947cc
extracted MWMechanics::getPlayer()
2015-08-21 21:12:39 +12:00
scrawl
cd2e6d4436
Move the __STDC_CONSTANT_MACROS define to cmakelists
2015-06-28 05:53:03 +02:00
scrawl
4bb3cbf0fb
Remove last remains of Ogre
2015-06-03 23:04:35 +02:00
scrawl
84fd682e4e
Fix for unnecessary exceptions when opening sounds
...
This would throw often during normal play, even though the throws are caught and ignored, can be annoying when the debugger is set to 'catch throw'.
2015-06-01 00:41:44 +02:00
scrawl
76dd3e4034
Fix lip animation regression
2015-05-24 04:40:09 +02:00
scrawl
152d690a7a
Minor cleanup
2015-05-23 23:10:53 +02:00
scrawl
22f01b1232
Merge branch 'master' of https://github.com/OpenMW/openmw into osg
...
Conflicts:
apps/launcher/graphicspage.cpp
apps/opencs/editor.cpp
apps/opencs/model/doc/document.cpp
apps/opencs/view/render/cell.cpp
apps/opencs/view/render/mousestate.cpp
apps/opencs/view/render/textoverlay.cpp
apps/opencs/view/render/worldspacewidget.cpp
apps/openmw/mwclass/creature.cpp
apps/openmw/mwclass/npc.cpp
apps/openmw/mwgui/inventorywindow.cpp
apps/openmw/mwgui/loadingscreen.cpp
apps/openmw/mwgui/mapwindow.cpp
apps/openmw/mwgui/pickpocketitemmodel.cpp
apps/openmw/mwgui/waitdialog.cpp
apps/openmw/mwmechanics/combat.cpp
apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
apps/openmw/mwrender/globalmap.cpp
apps/openmw/mwworld/physicssystem.cpp
apps/openmw/mwworld/refdata.cpp
apps/openmw/mwworld/scene.cpp
apps/openmw/mwworld/worldimp.cpp
components/sdlutil/sdlinputwrapper.cpp
extern/shiny/Main/Factory.cpp
extern/shiny/Main/MaterialInstance.cpp
extern/shiny/Main/Platform.cpp
extern/shiny/Main/ShaderSet.cpp
2015-05-23 20:33:44 +02:00
Rohit Nirmal
396fba7fa9
Silence -Wreorder warnings, and remove -Wno-reorder.
2015-05-21 22:46:44 -05:00
scrawl
7a3bc69df7
Readded sound listener
2015-05-12 19:02:56 +02:00
scrawl
a59940a2c7
Move MyGUI platform to components
2015-05-01 01:44:21 +02:00
scrawl
8c810e3620
Move rng to components
2015-04-22 17:58:55 +02:00
scrawl
c53a56ed6e
clear stream errors before attempting the read
2015-04-21 16:10:11 +02:00
scrawl
92ef9b1c57
Rename to osg-ffmpeg-videoplayer
2015-04-19 20:14:06 +02:00
scrawl
42f6d9e15b
Port video player
2015-04-19 20:07:18 +02:00
scrawl
8c7c89a4aa
Port SoundManager
2015-04-13 22:48:37 +02:00
scrawl
4e69e7cc0f
OpenMW compiles and runs w/o render window
2015-04-01 17:02:15 +02:00
Marc Zinnschlag
86d39cede9
Merge remote-tracking branch 'dteviot/Rng'
2015-03-15 22:04:26 +01:00
dteviot
3f28634d1f
consolidate random number logic
...
Note, I suspect Rng::rollClosedProbability() is not needed. The only difference between it and rollProbability() is that one time in 37k (on Windows), it will give an output of 1.0.
On some versions of Linux, the value of 1.0 will occur about 1 time in 4 billion.
2015-03-15 14:07:47 +13:00
dteviot
1d7f3474fa
Fixed more MSVC 2013 warnings.
2015-03-15 08:49:03 +13:00
scrawl
3879ce6ac1
Get rid of "player" string checks ( Fixes #2216 )
2015-03-11 23:07:39 +01:00
dteviot
e197f5318b
fixing MSVC 2013 warning C4244: & C4305
...
conversion from 'const float' to 'int', possible loss of data
conversion from 'double' to 'int', possible loss of data
conversion from 'float' to 'int', possible loss of data
2015-03-08 13:07:29 +13:00
dteviot
407cd50890
fixed warning C4099:
...
type name first seen using 'class' now seen using 'struct'
2015-03-06 21:36:42 +13:00
scrawl
ad8790fba0
Fix setWaterLevel script instruction not affecting physics
2015-02-08 15:50:40 +01:00
scrawl
fec8cf91f5
Add exception handling to various uses of DataStream::read
2015-01-31 22:40:42 +01:00
scrawl
855fe33c59
Add vanilla-compatible range limiting for playloopsound ( Fixes #244 , Fixes #1342 )
2014-12-08 23:58:20 +01:00
scrawl
cf85cbbc8e
Switch sound distance model to AL_INVERSE_DISTANCE
2014-12-08 17:43:56 +01:00
scrawl
fbed429b25
Use GMSTs for sound fading distance
2014-12-08 17:25:17 +01:00
Marc Zinnschlag
29c9b6bd01
Merge remote-tracking branch 'scrawl/master'
2014-11-02 10:38:42 +01:00
scrawl
17cb181f88
Use av_get_default_channel_layout for unknown channel layouts
2014-11-01 19:37:54 +01:00
scrawl
efa4d09c48
Fix crash when avcodec_decode_audio4 doesn't return a full frame ( Fixes #2088 )
2014-11-01 19:32:07 +01:00
Marc Zinnschlag
8b3d876534
Merge remote-tracking branch 'lgro/ffmpeg_decoder'
2014-11-01 10:57:21 +01:00
scrawl
ac067564ea
Don't include al.h in decoder classes, format support check will need to be redone later. For now, resample all formats that might not be supported on any hardware.
2014-10-25 20:50:41 +02:00
scrawl
55c9c0a266
Audio resampling fixes
...
- Don't try to use float audio or extended channel layouts if the hardware does not support them
- Add channel layout resampling support to ffmpeg_decoder
2014-10-25 17:17:57 +02:00
scrawl
b39d69e98c
Videoplayer fixes, play/pause & seeking
...
- Fix rindex overflow
- Fix audio sample size bugs (was using sample_fmt and channel count of the decoder, instead of the resampled settings). We didn't notice this bug before, because the OpenAL MovieAudioFactory tries to resample to a format of the same byte size.
- Add support for play/pause and seeking controls (not used by cutscenes in OpenMW)
- Closing the video when arriving at the stream end is now handled by the user (we may also want to keep the video open and seek back)
The video player now has a standalone demo, at https://github.com/scrawl/ogre-ffmpeg-videoplayer
2014-10-24 21:31:11 +02:00
scrawl
eb1c24ffe6
Refactor video player engine to get rid of MWSound dependencies
...
- Split video player to separate source files.
- Move video player engine sources to extern/ (repository will be set up on github soon).
- Audio is handled in a MovieAudioFactory, implemented by the user (here in MWSound subsystem).
- Handle conversion of unsupported channel layouts via ffmpeg's swresample.
2014-10-22 22:33:32 +02:00
Marc Zinnschlag
eb45793eab
Merge remote-tracking branch 'thoronador/fix-numeric-limits-usage'
2014-10-13 11:03:03 +02:00
Thoronador
4d62541b62
fix usage of numeric_limits static functions min() and max()
...
Functions min() and max() of std::numeric_limits<T> are static
and can therefore be accessed via class name and :: operator.
2014-10-12 23:28:16 +02:00
scrawl
9edcc332ec
Don't remove player's sounds when unloading a cell
2014-10-12 18:35:15 +02:00
scrawl
7252cb63a6
Fix cppcheck issues
2014-09-26 17:48:14 +02:00
Lukasz Gromanowski
c72369fafe
Simplified casting when comparing to AV_NOPTS_VALUE.
...
AV_NOPTS_VALUE is casted to int64_t when compared with pts,
so with libavc >= 56.1 it should be no-op because in that version
it's already signed int.
Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2014-09-21 20:11:03 +02:00
Lukasz Gromanowski
7ad6a94523
Removed a warning about comparision between signed and unsigned variable in ffmpeg_decoder.
...
Added ifdefs because changes in API were introduced in libavc 56.1
and this code doesn't compile with older versions (ie. on Ubuntu, or Debian)
Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2014-09-21 16:13:54 +02:00
Lukasz Gromanowski
6987dd768a
Removed a warning about comparision between signed and unsigned variable in ffmpeg_decoder.
...
Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2014-09-21 09:52:31 +02:00
cc9cii
1107156334
Workaround incorrectly reported channel_layout
2014-09-12 21:18:54 +10:00
cc9cii
675d11c0e5
Mental note: need to get a linux box
2014-09-12 11:25:11 +10:00
cc9cii
8fe6877cb2
More include madness b/w different systems & compilers
2014-09-12 11:05:02 +10:00
cc9cii
de41dfc314
Add includes.
2014-09-12 10:52:10 +10:00
cc9cii
0121fdca2c
Don't use C99 in printf.
2014-09-12 10:31:49 +10:00
cc9cii
be74db8b24
Don't use to_string()
2014-09-12 10:04:46 +10:00
cc9cii
ecd9dd81ea
Moved debug statements before exception..
2014-09-12 08:41:33 +10:00
cc9cii
ce3077c970
Test version with debug statements. Also moved some common code out to a separate file.
2014-09-12 08:27:25 +10:00
cc9cii
48a36442c6
Add libswresample and libavresample support for sounds.
2014-09-11 21:15:18 +10:00
scrawl
45af34d189
Merge branch 'master' of https://github.com/OpenMW/openmw
2014-07-29 19:35:44 +02:00
scrawl
a59620f643
Cache loudness vector in the buffer cache
2014-07-29 14:32:44 +02:00
scrawl
0943ff0886
Fix normalizing sample values
2014-07-29 14:19:12 +02:00
scrawl
598c0c4ae7
Implement mouth animation for NPCs based on say sound ( Fixes #642 )
2014-07-29 01:15:22 +02:00
bogglez
b56cb7e5ee
Remove defunct option for building without FFmpeg
...
- Added REQUIRED to find_package(FFmpeg)
- Removed USE_FFMPEG option from CMakeLists.txt
- Always use FFmpeg for sound input
- Removed SOUND_DEFINE from CMakeLists.txt
- Removed #else branch from videoplayer.cpp with dummy VideoState code
(FFmpeg is now guaranteed to exist and the code was incomplete)
- Remove #ifdef OPENMW_USE_FFMPEG in ffmpeg_decoder.cpp, it is guaranteed to be used
- Remove #ifdef OPENMW_USE_FFMPEG from soundmanagerimp.cpp, it is guaranteed to be used
2014-07-28 17:46:41 +02:00
scrawl
7b1e1d03d8
Merge branch 'master' of https://github.com/OpenMW/openmw
...
Conflicts:
apps/openmw/mwrender/sky.hpp
2014-06-26 04:29:03 +02:00
scrawl
09926a86cb
Fix comparing outdated listener position with up-to-date cell ( Fixes #1499 )
2014-06-25 18:10:26 +02:00
slothlife
9ea22324f7
Fix some MSVC warnings.
...
Several fixes are warnings about truncations on 64-bit, while others are
complaints about mixed signed / unsigned integer operations.
2014-06-23 01:13:30 -05:00
scrawl
80f66e2157
Fix crash when avformat_open_input fails ( Fixes #1522 )
2014-06-18 16:57:53 +02:00
scrawl
be6f1fe4fe
Fix a sign error
2014-06-13 02:26:52 +02:00
scrawl
d970cc06d7
Don't play the same music track twice in a row ( Fixes #746 )
2014-06-11 18:11:16 +02:00
Marc Zinnschlag
f7c89015f9
Merge remote-tracking branch 'scrawl/master'
2014-05-17 11:50:31 +02:00
scrawl
e5a21aca53
Refactor projectiles to no longer use MW-objects
2014-05-16 13:33:30 +02:00
slothlife
f33559fead
Fixes for MSVC warnings, less overall changes
...
Kept some fixes from the first round of review. Found out that several
targets weren't being built with the same basic warnings disabled.
Disabled a few warnings for external libraries specifically, rather than
applying them to all targets.
2014-05-14 20:12:52 -05:00
slothlife
c160a04ede
Revert "Fixes for warnings when building with MSVC"
...
This reverts commit 46eb20b98c
.
2014-05-14 00:03:30 -05:00
slothlife
46eb20b98c
Fixes for warnings when building with MSVC
...
Most warnings are innocuous (wrong type-specifier for forward
declarations, conversion of literals into unsigned integers, warnings
about methods optimized out), but I believe actual bugs were revealed in
vartypedelegate.cpp and combat.cpp.
2014-05-09 08:32:52 -05:00
Thoronador
620a8ccaf3
remove Audiere and MPG123+Sndfile decoder sources
2014-05-03 21:49:57 +02:00
Thoronador
1b8c975d5b
minor performance improvements in apps/openmw
...
Checking for emptiness using size() might be inefficient, because
it can take linear time, while empty() is guaranteed to take only
constant time.
For non-primitive types, postfix ++ operators are inefficient
compared to prefix ++ operators, because post-increment usually
involves keeping a copy of the previous value around.
2014-04-27 19:10:23 +02:00
scrawl
c8c0e5de38
Fixed code issues found with unity build. Missing include guards, duplicated functions, ...
2014-03-16 23:49:06 +01:00
Bret Curtis
ab224f93c9
remove our stdint.h version that uses boost and force usage of system stdint.h
2014-03-05 17:08:58 +01:00
Marc Zinnschlag
f9d2fde783
Merge branch 'openmw-29'
...
Conflicts:
apps/openmw/mwmechanics/aicombat.cpp
2014-03-04 09:34:38 +01:00
Marc Zinnschlag
367919200f
moved CellRefList into a separate file
2014-02-23 20:11:05 +01:00
Marc Zinnschlag
7693f712bc
started making CellStore into a proper class; encapsulated mCell member
2014-02-21 11:35:46 +01:00
Marc Zinnschlag
736644de05
Revert " #1041 in progress: decode first sample batch right in OpenAL_SoundStream::play()"
...
This reverts commit 51fb9f65ea
.
2014-02-20 12:31:40 +01:00
Nikolay Kasyanov
51fb9f65ea
#1041 in progress: decode first sample batch right in OpenAL_SoundStream::play()
2014-02-17 02:59:23 +04:00
Nikolay Kasyanov
5e8cb2e466
Another attempt to fix #1041 . This time I'm sending real data from decoder
...
once after playback started.
2014-02-17 02:35:13 +04:00
Marc Zinnschlag
1b5301eec0
Merge branch 'savedgame'
...
Conflicts:
apps/openmw/mwbase/mechanicsmanager.hpp
apps/openmw/mwbase/soundmanager.hpp
apps/openmw/mwgui/mapwindow.hpp
apps/openmw/mwmechanics/actors.cpp
apps/openmw/mwmechanics/mechanicsmanagerimp.hpp
apps/openmw/mwsound/soundmanagerimp.hpp
components/esm/loadcell.cpp
2014-02-01 18:16:32 +01:00
scrawl
03cf383be7
Merge branch 'master' of https://github.com/zinnschlag/openmw into savedgame
...
Conflicts:
apps/openmw/mwgui/referenceinterface.cpp
apps/openmw/mwmechanics/actors.cpp
apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
apps/openmw/mwmechanics/mechanicsmanagerimp.hpp
apps/openmw/mwscript/cellextensions.cpp
apps/openmw/mwworld/cells.cpp
apps/openmw/mwworld/cells.hpp
apps/openmw/mwworld/cellstore.cpp
apps/openmw/mwworld/store.cpp
apps/openmw/mwworld/worldimp.cpp
2014-01-24 18:28:35 +01:00
Marc Zinnschlag
9ebe66e693
improved cleanup; failed loads will now drop back into the main menu instead of crashing
2014-01-21 14:50:58 +01:00
Marc Zinnschlag
0f60898517
adding missing cleanup for SoundManager
2014-01-21 14:13:13 +01:00
scrawl
ba5300b071
Update the Ptr in SoundManager for references moved to a different cell. Fixes looping sounds not stopping after a moved object was already deleted.
2014-01-20 12:05:13 +01:00
scrawl
e410eb5273
Play 'Idle' voiced dialogue entries in AIWander. Tweak voice max distance.
2014-01-17 10:55:46 +01:00
scrawl
396efd580b
Fix a leftover of the old coordinate system
2014-01-14 03:26:56 +01:00
scrawl
2196ce427a
Closes #556 : Link movie volume to 'master' volume slider, instead of 'music'.
2014-01-14 03:08:37 +01:00
scrawl
098f9712f1
Add getPlayerPtr() utility method. Reduces dependencies a lot.
2014-01-08 18:39:44 +01:00
scrawl
62774fcc4a
Merge branch 'master' into HEAD
...
Conflicts:
apps/openmw/mwbase/world.hpp
apps/openmw/mwinput/inputmanagerimp.cpp
apps/openmw/mwmechanics/actors.cpp
apps/openmw/mwworld/worldimp.cpp
apps/openmw/mwworld/worldimp.hpp
components/esm/loadtes3.cpp
2014-01-06 00:23:17 +01:00
Marc Zinnschlag
a6e6411686
Merge remote-tracking branch 'scrawl/master'
2014-01-02 12:12:52 +01:00
scrawl
531bef6193
Shorter Vector3 initialisation
2014-01-01 22:46:10 +01:00
Lukasz Gromanowski
2d4e06cd50
Updated comments about freeing format_ctx->pb->buffer.
...
Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2014-01-01 17:05:49 +01:00
Lukasz Gromanowski
6107d5bad2
Updated ffmpeg decoder fix
...
Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-30 22:16:06 +01:00
Lukasz Gromanowski
5c5f87445b
Fixes for "Conditional jump or move depends on uninitialised value(s)"
...
and memleaks reported by valgrind.
Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-30 21:47:06 +01:00
Marc Zinnschlag
e818d43bc3
removed an outdated typedef and some dead code
2013-12-05 13:21:26 +01:00
Chris Robinson
f216b25be8
Slightly randomize time between environment sounds
...
We should use the "Minimum Time Between Environmental Sounds" and
"Maximum Time Between Environmental Sounds" INI/fallback settings, but we don't
have them.
2013-08-27 16:04:19 -07:00
Chris Robinson
02df8ab841
Store the underwater sound to easily stop it
2013-08-27 13:48:20 -07:00
Chris Robinson
16331bf1ed
Avoid a hack to play the underwater sound properly
2013-08-27 13:26:57 -07:00
PLkolek
86020ad94d
Added underwater and drowning sounds.
2013-08-08 20:57:15 +02:00
Marc Zinnschlag
5cafe65cd7
Merge remote-tracking branch 'scrawl/cppcheck'
2013-07-31 20:00:35 +02:00
scrawl
7dc30a01cd
Some changes suggested by cppcheck
2013-07-31 18:46:32 +02:00
PLkolek
f297c21e4d
Old door sound fades out on door open/close. Door sound is synchronised to angle on action.
2013-07-31 15:46:23 +02:00
scrawl
90a5d8b6f5
Fix uninitialized AL listener position/orientation when the game is paused during the first frame
2013-07-30 23:24:18 +02:00
Chris Robinson
f73008546f
Keep a sound updated with its object's position
2013-07-27 07:24:18 -07:00
Chris Robinson
ad6d663e09
Remove some unnecessary debug messages
2013-07-23 03:44:52 -07:00
Chris Robinson
14e0c182f3
Allow specifying the sound type to playSound and playSound3D
2013-07-18 21:50:11 -07:00
Miroslav Puda
743b3dec99
Correction of libavutil version
2013-06-26 07:17:29 +02:00
eroen
d75391de8e
libav-9 - fix missing includes
...
With libav-9 and ffmpeg-1.0, libavcodec/avcodec.h no longer defines the
AV_CH_LAYOUT_* constants. They have been defined in libavutil/channel_layout.h
for a long time prior to this.
2013-06-24 21:08:28 +02:00
eroen
2850032d9e
libc++ fixes: avcodec/avformat workaround
...
With libc++, string includes stdint.h, which breaks the fragile avformat.h
workaround, which depends on __STDC_CONSTANT_MACROS being defined before
stdint.h is included.
Moving the string inclusion after that eyesore shouldn't break anything.
2013-05-26 12:01:01 +02:00
scrawl
c41f119ba6
Added new game button
2013-05-15 17:54:18 +02:00
scrawl
48a88f1917
Fix startRandomTitle
2013-04-04 15:10:27 +02:00
Chris Robinson
35e2b6942a
Merge remote-tracking branch 'zini/master' into misc-cleanup
2013-02-26 10:21:28 -08:00
Chris Robinson
ceafcc2ebb
Support float samples with ffmpeg
...
Requires the AL_EXT_FLOAT32 extension in OpenAL
2013-02-26 10:19:33 -08:00
Nathan Jeffords
21f502e3dd
properly handle potentially non 16 bit planar audio formats
2013-02-26 09:37:18 -08:00
Nathan Jeffords
7ea1f6a02a
fixes for using FFMPEG on windows
2013-02-24 09:42:08 -08:00
Nikolay Kasyanov
0d4b0bfd93
Trying to resolve sound issues on OS X with ffmpeg backend
2013-02-07 23:40:20 +04:00
Chris Robinson
8a073c113e
Use const references where appropriate
2013-01-15 12:07:15 -08:00
Nathan Jeffords
39d27b87c9
fixed build error with Audiere coded enabled
2013-01-08 09:14:56 -08:00
Chris Robinson
1dd9276ceb
Add missing decoder method declarations
2012-12-28 11:26:41 -08:00
Chris Robinson
85850c7440
Fix DEFAULT_OUTPUT declaration
2012-12-18 10:43:04 -08:00
Chris Robinson
7b2c3e6cd3
Pass a proper PlayMode enum to playSound and playSound3D
2012-12-18 06:01:21 -08:00
Chris Robinson
3b7edae7c3
Don't hold a list of all sound sources
2012-12-18 05:19:32 -08:00
Chris Robinson
fe36cc1de7
Don't try to resume sound types that aren't paused
2012-12-18 04:35:24 -08:00
Chris Robinson
2f8daec379
Allow pausing only certain types of sounds
2012-12-18 04:19:35 -08:00
Chris Robinson
b4e36d4f31
Add a method to get the volume from the sound type
2012-12-18 02:01:04 -08:00
Chris Robinson
a5356e194e
Allow specifying a type for the playTrack method
2012-12-18 01:35:20 -08:00
Chris Robinson
72ffceb206
Add type flags to the sound play mode
2012-12-18 00:57:57 -08:00
Chris Robinson
dd3e568a00
Set the sound properties at initialization
2012-12-17 23:35:20 -08:00
Chris Robinson
20321c4552
Keep track of the actual active sounds
2012-12-17 21:50:01 -08:00
Chris Robinson
d348435a1d
Improve audio open error message
2012-12-17 21:09:57 -08:00
Chris Robinson
e9d833be03
Use the packet pts to calculate the decoder sample offset
2012-12-16 01:56:52 -08:00
Chris Robinson
1a771ae671
Merge the stream struct into the parent decoder
2012-12-15 23:46:32 -08:00