xref: /aosp_15_r20/external/webrtc/modules/audio_coding/codecs/ilbc/do_plc.h (revision d9f758449e529ab9291ac668be2861e7a55c2422)
1 /*
2  *  Copyright (c) 2011 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 
11 /******************************************************************
12 
13  iLBC Speech Coder ANSI-C Source Code
14 
15  WebRtcIlbcfix_DoThePlc.h
16 
17 ******************************************************************/
18 
19 #ifndef MODULES_AUDIO_CODING_CODECS_ILBC_MAIN_SOURCE_DO_PLC_H_
20 #define MODULES_AUDIO_CODING_CODECS_ILBC_MAIN_SOURCE_DO_PLC_H_
21 
22 #include <stddef.h>
23 #include <stdint.h>
24 
25 #include "modules/audio_coding/codecs/ilbc/defines.h"
26 
27 /*----------------------------------------------------------------*
28  *  Packet loss concealment routine. Conceals a residual signal
29  *  and LP parameters. If no packet loss, update state.
30  *---------------------------------------------------------------*/
31 
32 void WebRtcIlbcfix_DoThePlc(
33     int16_t* PLCresidual, /* (o) concealed residual */
34     int16_t* PLClpc,      /* (o) concealed LP parameters */
35     int16_t PLI,          /* (i) packet loss indicator
36                                                                 0 - no PL, 1 = PL */
37     int16_t* decresidual, /* (i) decoded residual */
38     int16_t* lpc,         /* (i) decoded LPC (only used for no PL) */
39     size_t inlag,         /* (i) pitch lag */
40     IlbcDecoder* iLBCdec_inst
41     /* (i/o) decoder instance */
42     );
43 
44 #endif
45