blob: 0b311817d0f9b4a4664db54565534521f623be3d [file] [log] [blame]
minyue@webrtc.org0040a6e2014-08-04 14:41:57 +00001/*
2 * Copyright (c) 2014 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_CODECS_OPUS_OPUS_INST_H_
12#define MODULES_AUDIO_CODING_CODECS_OPUS_OPUS_INST_H_
minyue@webrtc.org0040a6e2014-08-04 14:41:57 +000013
minyue9a7c8382015-11-16 08:07:01 -080014#include <stddef.h>
15
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020016#include "rtc_base/ignore_wundef.h"
kwiberg77eab702016-09-28 17:42:01 -070017
18RTC_PUSH_IGNORING_WUNDEF()
minyue@webrtc.org0040a6e2014-08-04 14:41:57 +000019#include "opus.h"
Alex Loiko7a3e43a2019-01-29 12:27:08 +010020#include "opus_multistream.h"
kwiberg77eab702016-09-28 17:42:01 -070021RTC_POP_IGNORING_WUNDEF()
minyue@webrtc.org0040a6e2014-08-04 14:41:57 +000022
23struct WebRtcOpusEncInst {
Alex Loiko7a3e43a2019-01-29 12:27:08 +010024 union {
25 OpusEncoder* encoder;
26 OpusMSEncoder* multistream_encoder;
27 } encoder;
Peter Kasting69558702016-01-12 16:26:35 -080028 size_t channels;
minyue@webrtc.org0ca768b2014-12-11 16:09:35 +000029 int in_dtx_mode;
minyue@webrtc.org0040a6e2014-08-04 14:41:57 +000030};
31
32struct WebRtcOpusDecInst {
Alex Loiko7a3e43a2019-01-29 12:27:08 +010033 union {
34 OpusDecoder* decoder;
35 OpusMSDecoder* multistream_decoder;
36 } decoder;
minyue@webrtc.org0040a6e2014-08-04 14:41:57 +000037 int prev_decoded_samples;
Peter Kasting69558702016-01-12 16:26:35 -080038 size_t channels;
minyue@webrtc.org0ca768b2014-12-11 16:09:35 +000039 int in_dtx_mode;
minyue@webrtc.org0040a6e2014-08-04 14:41:57 +000040};
41
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020042#endif // MODULES_AUDIO_CODING_CODECS_OPUS_OPUS_INST_H_