blob: 462201f9a8d62c0da75ae0a3d0808e708a849ab3 [file] [log] [blame]
turaj@webrtc.org7959e162013-09-12 18:30:26 +00001/*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
3 *
4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
10
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020011#ifndef MODULES_AUDIO_CODING_ACM2_ACM_RESAMPLER_H_
12#define MODULES_AUDIO_CODING_ACM2_ACM_RESAMPLER_H_
turaj@webrtc.org7959e162013-09-12 18:30:26 +000013
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020014#include "common_audio/resampler/include/push_resampler.h"
15#include "typedefs.h"
turaj@webrtc.org7959e162013-09-12 18:30:26 +000016
17namespace webrtc {
turaj@webrtc.org6d5d2482013-10-06 04:47:28 +000018namespace acm2 {
19
turaj@webrtc.org7959e162013-09-12 18:30:26 +000020class ACMResampler {
21 public:
22 ACMResampler();
23 ~ACMResampler();
24
25 int Resample10Msec(const int16_t* in_audio,
26 int in_freq_hz,
27 int out_freq_hz,
Peter Kasting69558702016-01-12 16:26:35 -080028 size_t num_audio_channels,
Peter Kastingdce40cf2015-08-24 14:52:23 -070029 size_t out_capacity_samples,
turaj@webrtc.org7959e162013-09-12 18:30:26 +000030 int16_t* out_audio);
31
32 private:
andrew@webrtc.orgf5a33f12014-04-19 00:32:07 +000033 PushResampler<int16_t> resampler_;
turaj@webrtc.org7959e162013-09-12 18:30:26 +000034};
35
turaj@webrtc.org6d5d2482013-10-06 04:47:28 +000036} // namespace acm2
turaj@webrtc.org7959e162013-09-12 18:30:26 +000037} // namespace webrtc
38
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020039#endif // MODULES_AUDIO_CODING_ACM2_ACM_RESAMPLER_H_