13f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org/*
23f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org *  Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
33f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org *
43f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org *  Use of this source code is governed by a BSD-style license
53f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org *  that can be found in the LICENSE file in the root of the source
63f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org *  tree. An additional intellectual property rights grant can be found
73f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org *  in the file PATENTS.  All contributing project authors may
83f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org *  be found in the AUTHORS file in the root of the source tree.
93f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org */
103f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org
11ed0b4fb2f28fa291e726fc1cf6852611f2176392turaj@webrtc.org#ifndef WEBRTC_MODULES_AUDIO_CODING_MAIN_ACM2_ACM_RESAMPLER_H_
12ed0b4fb2f28fa291e726fc1cf6852611f2176392turaj@webrtc.org#define WEBRTC_MODULES_AUDIO_CODING_MAIN_ACM2_ACM_RESAMPLER_H_
133f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org
14f7c73b531c9f2aca2adb87044613a7b7fa94de84andrew@webrtc.org#include "webrtc/common_audio/resampler/include/push_resampler.h"
153f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org#include "webrtc/typedefs.h"
163f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org
173f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.orgnamespace webrtc {
180a1c75a50d10621f70d5921c5b8b9c0eb144bb42turaj@webrtc.orgnamespace acm2 {
190a1c75a50d10621f70d5921c5b8b9c0eb144bb42turaj@webrtc.org
203f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.orgclass ACMResampler {
213f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org public:
223f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org  ACMResampler();
233f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org  ~ACMResampler();
243f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org
253f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org  int Resample10Msec(const int16_t* in_audio,
263f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org                     int in_freq_hz,
273f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org                     int out_freq_hz,
283f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org                     int num_audio_channels,
291ca1e171947513f6ec70173aa74443f8a9c4dc22henrik.lundin@webrtc.org                     int out_capacity_samples,
303f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org                     int16_t* out_audio);
313f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org
323f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org private:
33708ff4d93770d863cdea26fd496ae71414eb8a53andrew@webrtc.org  PushResampler<int16_t> resampler_;
343f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org};
353f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org
360a1c75a50d10621f70d5921c5b8b9c0eb144bb42turaj@webrtc.org}  // namespace acm2
373f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org}  // namespace webrtc
383f39c00d9875d7e09062725757b789f4da375ef9turaj@webrtc.org
39ed0b4fb2f28fa291e726fc1cf6852611f2176392turaj@webrtc.org#endif  // WEBRTC_MODULES_AUDIO_CODING_MAIN_ACM2_ACM_RESAMPLER_H_
40