112bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani/*
212bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani * Copyright (C) 2012 The Android Open Source Project
312bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani *
412bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani * Licensed under the Apache License, Version 2.0 (the "License");
512bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani * you may not use this file except in compliance with the License.
612bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani * You may obtain a copy of the License at
712bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani *
812bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani *      http://www.apache.org/licenses/LICENSE-2.0
912bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani *
1012bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani * Unless required by applicable law or agreed to in writing, software
1112bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani * distributed under the License is distributed on an "AS IS" BASIS,
1212bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1312bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani * See the License for the specific language governing permissions and
1412bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani * limitations under the License.
1512bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani */
1612bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani
1712bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani#define LOG_TAG "ResamplerCoefficients"
185dea84c39b5e790315b525009c635806e33c97e0Glenn Kasten//#define LOG_NDEBUG 0
1912bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani
209bcb476a95a26e62f5706d1f00f4873cf44f9e04Glenn Kasten#include <utils/Log.h>
219bcb476a95a26e62f5706d1f00f4873cf44f9e04Glenn Kasten
229bcb476a95a26e62f5706d1f00f4873cf44f9e04Glenn Kasten#include "filter_coefficients.h"
239bcb476a95a26e62f5706d1f00f4873cf44f9e04Glenn Kasten
249bcb476a95a26e62f5706d1f00f4873cf44f9e04Glenn Kastenconst int32_t RESAMPLE_FIR_NUM_COEF = 16;
259bcb476a95a26e62f5706d1f00f4873cf44f9e04Glenn Kastenconst int32_t RESAMPLE_FIR_LERP_INT_BITS = 7;
2612bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani
2712bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Maniusing namespace android;
289bcb476a95a26e62f5706d1f00f4873cf44f9e04Glenn Kasten
2912bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani#ifdef __cplusplus
3012bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Maniextern "C" {
3112bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani#endif
329bcb476a95a26e62f5706d1f00f4873cf44f9e04Glenn Kasten
3312bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Maniconst int32_t* readResamplerCoefficients(bool upSample) {
3412bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani
3512bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani    ALOGV("readResamplerCoefficients");
369bcb476a95a26e62f5706d1f00f4873cf44f9e04Glenn Kasten    if (upSample) {
3770dc7025fac462e502803108e55911e6b3301bfeGlenn Kasten        return (const int32_t *) up_sampler_filter_coefficients;
389bcb476a95a26e62f5706d1f00f4873cf44f9e04Glenn Kasten    } else {
3970dc7025fac462e502803108e55911e6b3301bfeGlenn Kasten        return (const int32_t *) dn_sampler_filter_coefficients;
4012bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani    }
4112bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani
4212bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani}
4312bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani
4412bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Maniint32_t readResampleFirNumCoeff() {
4512bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani    return RESAMPLE_FIR_NUM_COEF;
4612bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani}
4712bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani
4812bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Maniint32_t readResampleFirLerpIntBits() {
499bcb476a95a26e62f5706d1f00f4873cf44f9e04Glenn Kasten    return RESAMPLE_FIR_LERP_INT_BITS;
5012bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani}
519bcb476a95a26e62f5706d1f00f4873cf44f9e04Glenn Kasten
5212bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani#ifdef __cplusplus
5312bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani}
5412bff5dd87e6b863482e6bfd9f4561078ebcf3f0SathishKumar Mani#endif
55