summaryrefslogtreecommitdiff
path: root/servers/audio/sample_manager_sw.cpp
diff options
context:
space:
mode:
authorSaracen <SaracenOne@gmail.com>2015-11-18 23:18:10 +0000
committerSaracen <SaracenOne@gmail.com>2015-11-18 23:18:10 +0000
commitdd00452997122029dd2f74a278574d781fd2bf5f (patch)
treee36f0c62cac499500724c2929100c042972d1a5c /servers/audio/sample_manager_sw.cpp
parentc1d19ad258139c73e7aa81cf6e1fbd99e1bfe38b (diff)
parent94fdd01241749cb7a575ed5f9fa4c7bbb286901a (diff)
Merge branch 'master' of https://github.com/okamstudio/godot into shadow_color
Conflicts: drivers/gles2/shader_compiler_gles2.cpp
Diffstat (limited to 'servers/audio/sample_manager_sw.cpp')
-rw-r--r--servers/audio/sample_manager_sw.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/servers/audio/sample_manager_sw.cpp b/servers/audio/sample_manager_sw.cpp
index 9195136a5d..375aa88cd2 100644
--- a/servers/audio/sample_manager_sw.cpp
+++ b/servers/audio/sample_manager_sw.cpp
@@ -38,12 +38,8 @@ SampleManagerSW::~SampleManagerSW()
RID SampleManagerMallocSW::sample_create(AS::SampleFormat p_format, bool p_stereo, int p_length) {
- ERR_EXPLAIN("IMA-ADPCM and STEREO are not a valid combination for sample format.");
- ERR_FAIL_COND_V( p_format == AS::SAMPLE_FORMAT_IMA_ADPCM && p_stereo,RID());
Sample *s = memnew( Sample );
int datalen = p_length;
- if (p_stereo)
- datalen*=2;
if (p_format==AS::SAMPLE_FORMAT_PCM16)
datalen*=2;
else if (p_format==AS::SAMPLE_FORMAT_IMA_ADPCM) {
@@ -53,6 +49,10 @@ RID SampleManagerMallocSW::sample_create(AS::SampleFormat p_format, bool p_stere
datalen/=2;
datalen+=4;
}
+
+ if (p_stereo)
+ datalen*=2;
+
#define SAMPLE_EXTRA 16
s->data = memalloc(datalen+SAMPLE_EXTRA); //help the interpolator by allocating a little more..