diff options
author | Daniil Cherednik <dan.cherednik@gmail.com> | 2024-12-22 13:39:37 +0100 |
---|---|---|
committer | Daniil Cherednik <dan.cherednik@gmail.com> | 2024-12-22 14:44:27 +0100 |
commit | eb33c262156f4feb67c523908add841077574021 (patch) | |
tree | 2f1765702fc2021274ace815e471113b29d79dd0 /src/lib/mdct/mdct_ut.cpp | |
parent | e2605699b7c79a8cb5d06b0069f32c3b01d4ded4 (diff) | |
parent | 74d6e04c21bddd435bd74c34dbe027b883772a76 (diff) | |
download | atracdenc-eb33c262156f4feb67c523908add841077574021.tar.gz |
Merge branch 'master' into new_psy
Diffstat (limited to 'src/lib/mdct/mdct_ut.cpp')
-rw-r--r-- | src/lib/mdct/mdct_ut.cpp | 80 |
1 files changed, 40 insertions, 40 deletions
diff --git a/src/lib/mdct/mdct_ut.cpp b/src/lib/mdct/mdct_ut.cpp index 6f49b59..d997b08 100644 --- a/src/lib/mdct/mdct_ut.cpp +++ b/src/lib/mdct/mdct_ut.cpp @@ -26,24 +26,24 @@ using std::vector; using namespace NMDCT; -static vector<TFloat> mdct(TFloat* x, int N) { - vector<TFloat> res; +static vector<float> mdct(float* x, int N) { + vector<float> res; for (int k = 0; k < N; k++) { - TFloat sum = 0; + float sum = 0; for (int n = 0; n < 2 * N; n++) - sum += x[n]* cos((M_PI/N) * ((TFloat)n + 0.5 + N/2) * ((TFloat)k + 0.5)); + sum += x[n]* cos((M_PI/N) * ((float)n + 0.5 + N/2) * ((float)k + 0.5)); res.push_back(sum); } return res; } -static vector<TFloat> midct(TFloat* x, int N) { - vector<TFloat> res; +static vector<float> midct(float* x, int N) { + vector<float> res; for (int n = 0; n < 2 * N; n++) { - TFloat sum = 0; + float sum = 0; for (int k = 0; k < N; k++) - sum += (x[k] * cos((M_PI/N) * ((TFloat)n + 0.5 + N/2) * ((TFloat)k + 0.5))); + sum += (x[k] * cos((M_PI/N) * ((float)n + 0.5 + N/2) * ((float)k + 0.5))); res.push_back(sum); } @@ -53,12 +53,12 @@ static vector<TFloat> midct(TFloat* x, int N) { TEST(TMdctTest, MDCT32) { const int N = 32; TMDCT<N> transform(N); - vector<TFloat> src(N); + vector<float> src(N); for (int i = 0; i < N; i++) { src[i] = i; } - const vector<TFloat> res1 = mdct(&src[0], N/2); - const vector<TFloat> res2 = transform(&src[0]); + const vector<float> res1 = mdct(&src[0], N/2); + const vector<float> res2 = transform(&src[0]); EXPECT_EQ(res1.size(), res2.size()); auto eps = CalcEps(N); for (int i = 0; i < res1.size(); i++) { @@ -69,12 +69,12 @@ TEST(TMdctTest, MDCT32) { TEST(TMdctTest, MDCT64) { const int N = 64; TMDCT<N> transform(N); - vector<TFloat> src(N); + vector<float> src(N); for (int i = 0; i < N; i++) { src[i] = i; } - const vector<TFloat> res1 = mdct(&src[0], N/2); - const vector<TFloat> res2 = transform(&src[0]); + const vector<float> res1 = mdct(&src[0], N/2); + const vector<float> res2 = transform(&src[0]); EXPECT_EQ(res1.size(), res2.size()); auto eps = CalcEps(N); for (int i = 0; i < res1.size(); i++) { @@ -85,12 +85,12 @@ TEST(TMdctTest, MDCT64) { TEST(TMdctTest, MDCT128) { const int N = 128; TMDCT<N> transform(N); - vector<TFloat> src(N); + vector<float> src(N); for (int i = 0; i < N; i++) { src[i] = i; } - const vector<TFloat> res1 = mdct(&src[0], N/2); - const vector<TFloat> res2 = transform(&src[0]); + const vector<float> res1 = mdct(&src[0], N/2); + const vector<float> res2 = transform(&src[0]); EXPECT_EQ(res1.size(), res2.size()); auto eps = CalcEps(N * 4); for (int i = 0; i < res1.size(); i++) { @@ -101,12 +101,12 @@ TEST(TMdctTest, MDCT128) { TEST(TMdctTest, MDCT256) { const int N = 256; TMDCT<N> transform(N); - vector<TFloat> src(N); + vector<float> src(N); for (int i = 0; i < N; i++) { src[i] = i; } - const vector<TFloat> res1 = mdct(&src[0], N/2); - const vector<TFloat> res2 = transform(&src[0]); + const vector<float> res1 = mdct(&src[0], N/2); + const vector<float> res2 = transform(&src[0]); EXPECT_EQ(res1.size(), res2.size()); auto eps = CalcEps(N * 4); for (int i = 0; i < res1.size(); i++) { @@ -117,14 +117,14 @@ TEST(TMdctTest, MDCT256) { TEST(TMdctTest, MDCT256_RAND) { const int N = 256; TMDCT<N> transform(N); - vector<TFloat> src(N); - TFloat m = 0.0; + vector<float> src(N); + float m = 0.0; for (int i = 0; i < N; i++) { src[i] = rand(); m = std::max(m, src[i]); } - const vector<TFloat> res1 = mdct(&src[0], N/2); - const vector<TFloat> res2 = transform(&src[0]); + const vector<float> res1 = mdct(&src[0], N/2); + const vector<float> res2 = transform(&src[0]); EXPECT_EQ(res1.size(), res2.size()); auto eps = CalcEps(m * 8); for (int i = 0; i < res1.size(); i++) { @@ -135,12 +135,12 @@ TEST(TMdctTest, MDCT256_RAND) { TEST(TMdctTest, MIDCT32) { const int N = 32; TMIDCT<N> transform; - vector<TFloat> src(N); + vector<float> src(N); for (int i = 0; i < N/2; i++) { src[i] = i; } - const vector<TFloat> res1 = midct(&src[0], N/2); - const vector<TFloat> res2 = transform(&src[0]); + const vector<float> res1 = midct(&src[0], N/2); + const vector<float> res2 = transform(&src[0]); EXPECT_EQ(res1.size(), res2.size()); auto eps = CalcEps(N); for (int i = 0; i < N; i++) { @@ -151,12 +151,12 @@ TEST(TMdctTest, MIDCT32) { TEST(TMdctTest, MIDCT64) { const int N = 64; TMIDCT<N> transform; - vector<TFloat> src(N); + vector<float> src(N); for (int i = 0; i < N/2; i++) { src[i] = i; } - const vector<TFloat> res1 = midct(&src[0], N/2); - const vector<TFloat> res2 = transform(&src[0]); + const vector<float> res1 = midct(&src[0], N/2); + const vector<float> res2 = transform(&src[0]); EXPECT_EQ(res1.size(), res2.size()); auto eps = CalcEps(N); for (int i = 0; i < N; i++) { @@ -167,12 +167,12 @@ TEST(TMdctTest, MIDCT64) { TEST(TMdctTest, MIDCT128) { const int N = 128; TMIDCT<N> transform(N); - vector<TFloat> src(N); + vector<float> src(N); for (int i = 0; i < N/2; i++) { src[i] = i; } - const vector<TFloat> res1 = midct(&src[0], N/2); - const vector<TFloat> res2 = transform(&src[0]); + const vector<float> res1 = midct(&src[0], N/2); + const vector<float> res2 = transform(&src[0]); EXPECT_EQ(res1.size(), res2.size()); auto eps = CalcEps(N); for (int i = 0; i < N; i++) { @@ -183,12 +183,12 @@ TEST(TMdctTest, MIDCT128) { TEST(TMdctTest, MIDCT256) { const int N = 256; TMIDCT<N> transform(N); - vector<TFloat> src(N); + vector<float> src(N); for (int i = 0; i < N/2; i++) { src[i] = i; } - const vector<TFloat> res1 = midct(&src[0], N/2); - const vector<TFloat> res2 = transform(&src[0]); + const vector<float> res1 = midct(&src[0], N/2); + const vector<float> res2 = transform(&src[0]); EXPECT_EQ(res1.size(), res2.size()); auto eps = CalcEps(N * 2); for (int i = 0; i < N; i++) { @@ -199,14 +199,14 @@ TEST(TMdctTest, MIDCT256) { TEST(TMdctTest, MIDCT256_RAND) { const int N = 256; TMIDCT<N> transform(N); - vector<TFloat> src(N); - TFloat m = 0.0; + vector<float> src(N); + float m = 0.0; for (int i = 0; i < N/2; i++) { src[i] = rand(); m = std::max(m, src[i]); } - const vector<TFloat> res1 = midct(&src[0], N/2); - const vector<TFloat> res2 = transform(&src[0]); + const vector<float> res1 = midct(&src[0], N/2); + const vector<float> res2 = transform(&src[0]); EXPECT_EQ(res1.size(), res2.size()); auto eps = CalcEps(m * 4); for (int i = 0; i < N; i++) { |