From 28e3d3c6faf80e1ed88d14a12b7fc683a0e1e825 Mon Sep 17 00:00:00 2001 From: Jack Andersen Date: Tue, 10 May 2016 18:51:22 -1000 Subject: [PATCH] Moved DSP decoder to amuse --- Runtime/Audio/CMakeLists.txt | 1 - Runtime/Audio/dsp.c | 85 ------------------------------- Runtime/Audio/dsp.h | 31 ----------- Runtime/Graphics/CMoviePlayer.cpp | 2 +- amuse | 2 +- hecl | 2 +- specter | 2 +- 7 files changed, 4 insertions(+), 121 deletions(-) delete mode 100644 Runtime/Audio/dsp.c delete mode 100644 Runtime/Audio/dsp.h diff --git a/Runtime/Audio/CMakeLists.txt b/Runtime/Audio/CMakeLists.txt index 962a38d8a..27dfc4710 100644 --- a/Runtime/Audio/CMakeLists.txt +++ b/Runtime/Audio/CMakeLists.txt @@ -3,7 +3,6 @@ set(AUDIO_SOURCES CAudioStateWin.hpp CAudioStateWin.cpp CSfxManager.hpp CSfxManager.cpp CSfxHandle.hpp CSfxHandle.cpp - dsp.c dsp.h g721.c g721.h) runtime_add_list(Audio AUDIO_SOURCES) diff --git a/Runtime/Audio/dsp.c b/Runtime/Audio/dsp.c deleted file mode 100644 index ad5cfad1c..000000000 --- a/Runtime/Audio/dsp.c +++ /dev/null @@ -1,85 +0,0 @@ -#include "dsp.h" - -static const int32_t NibbleToInt[16] = {0,1,2,3,4,5,6,7,-8,-7,-6,-5,-4,-3,-2,-1}; - -void DSPDecompressFrame(int16_t* out, const uint8_t* in, - const int16_t coefs[8][2], int16_t* prev1, int16_t* prev2, - unsigned lastSample) -{ - uint8_t cIdx = (in[0]>>4) & 0xf; - int32_t factor1 = coefs[cIdx][0]; - int32_t factor2 = coefs[cIdx][1]; - uint8_t exp = in[0] & 0xf; - for (int s=0 ; s<14 && s>4)&0xf]; - sampleData <<= exp; - sampleData <<= 11; - sampleData += 1024; - sampleData += - factor1 * ((int32_t)(*prev1)) + - factor2 * ((int32_t)(*prev2)); - sampleData >>= 11; - sampleData = DSPSampClamp(sampleData); - out[s] = sampleData; - *prev2 = *prev1; - *prev1 = sampleData; - } -} - -void DSPDecompressFrameStereoStride(int16_t* out, const uint8_t* in, - const int16_t coefs[8][2], int16_t* prev1, int16_t* prev2, - unsigned lastSample) -{ - uint32_t cIdx = (in[0]>>4) & 0xf; - int32_t factor1 = coefs[cIdx][0]; - int32_t factor2 = coefs[cIdx][1]; - uint32_t exp = in[0] & 0xf; - for (int s=0 ; s<14 && s>4)&0xf]; - sampleData <<= exp; - sampleData <<= 11; - sampleData += 1024; - sampleData += - factor1 * ((int32_t)(*prev1)) + - factor2 * ((int32_t)(*prev2)); - sampleData >>= 11; - sampleData = DSPSampClamp(sampleData); - out[s*2] = sampleData; - *prev2 = *prev1; - *prev1 = sampleData; - } -} - -void DSPDecompressFrameStereoDupe(int16_t* out, const uint8_t* in, - const int16_t coefs[8][2], int16_t* prev1, int16_t* prev2, - unsigned lastSample) -{ - uint8_t cIdx = (in[0]>>4) & 0xf; - int32_t factor1 = coefs[cIdx][0]; - int32_t factor2 = coefs[cIdx][1]; - uint8_t exp = in[0] & 0xf; - for (int s=0 ; s<14 && s>4)&0xf]; - sampleData <<= exp; - sampleData <<= 11; - sampleData += 1024; - sampleData += - factor1 * ((int32_t)(*prev1)) + - factor2 * ((int32_t)(*prev2)); - sampleData >>= 11; - sampleData = DSPSampClamp(sampleData); - out[s*2] = sampleData; - out[s*2+1] = sampleData; - *prev2 = *prev1; - *prev1 = sampleData; - } -} diff --git a/Runtime/Audio/dsp.h b/Runtime/Audio/dsp.h deleted file mode 100644 index 21c1fb263..000000000 --- a/Runtime/Audio/dsp.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef _DSP_h -#define _DSP_h - -#ifdef __cplusplus -extern "C" { -#endif - -#include - -static inline int16_t DSPSampClamp(int32_t val) -{ - if (val < -32768) val = -32768; - else if (val > 32767) val = 32767; - return val; -} - -void DSPDecompressFrame(int16_t* out, const uint8_t* in, - const int16_t coefs[8][2], int16_t* prev1, int16_t* prev2, - unsigned lastSample); -void DSPDecompressFrameStereoStride(int16_t* out, const uint8_t* in, - const int16_t coefs[8][2], int16_t* prev1, int16_t* prev2, - unsigned lastSample); -void DSPDecompressFrameStereoDupe(int16_t* out, const uint8_t* in, - const int16_t coefs[8][2], int16_t* prev1, int16_t* prev2, - unsigned lastSample); - -#ifdef __cplusplus -} -#endif - -#endif // _DSP_h diff --git a/Runtime/Graphics/CMoviePlayer.cpp b/Runtime/Graphics/CMoviePlayer.cpp index 4f6cae542..ba3b52a6a 100644 --- a/Runtime/Graphics/CMoviePlayer.cpp +++ b/Runtime/Graphics/CMoviePlayer.cpp @@ -3,7 +3,7 @@ #include "specter/View.hpp" #include "CGraphics.hpp" #include "Audio/g721.h" -#include "Audio/dsp.h" +#include "amuse/dsp.h" #include "CDvdRequest.hpp" #include diff --git a/amuse b/amuse index 60f873e76..1102d50f8 160000 --- a/amuse +++ b/amuse @@ -1 +1 @@ -Subproject commit 60f873e76e5fecdb302073b5b0d1c34ef141cfaf +Subproject commit 1102d50f8f8c3f1a0fabdcafd657ab1d4564b908 diff --git a/hecl b/hecl index 5ef33fff8..17a36b0d4 160000 --- a/hecl +++ b/hecl @@ -1 +1 @@ -Subproject commit 5ef33fff84051c55004438ff83f379867f6b9fb6 +Subproject commit 17a36b0d4d2281eed7e73b75932af1bcca77441e diff --git a/specter b/specter index a48e2b4ec..feccc7684 160000 --- a/specter +++ b/specter @@ -1 +1 @@ -Subproject commit a48e2b4ec5087bcb167f15763c84fbac2ca4c272 +Subproject commit feccc768424181f2c7287ed9e936f1ae3acdaca7