iLBC: Handle a case of bad input data
We detect an unreasonable state (caused by a bad encoded stream) before it can lead to problems, and handle it by resetting the decoder. NOPRESUBMIT=true BUG=chromium:617124 Review-Url: https://codereview.webrtc.org/2255203002 Cr-Commit-Position: refs/heads/master@{#13888}
This commit is contained in:
@ -19,20 +19,21 @@
|
||||
#ifndef WEBRTC_MODULES_AUDIO_CODING_CODECS_ILBC_MAIN_SOURCE_CB_CONSTRUCT_H_
|
||||
#define WEBRTC_MODULES_AUDIO_CODING_CODECS_ILBC_MAIN_SOURCE_CB_CONSTRUCT_H_
|
||||
|
||||
#include <stdbool.h>
|
||||
#include "defines.h"
|
||||
|
||||
/*----------------------------------------------------------------*
|
||||
* Construct decoded vector from codebook and gains.
|
||||
*---------------------------------------------------------------*/
|
||||
|
||||
void WebRtcIlbcfix_CbConstruct(
|
||||
int16_t *decvector, /* (o) Decoded vector */
|
||||
int16_t *index, /* (i) Codebook indices */
|
||||
int16_t *gain_index, /* (i) Gain quantization indices */
|
||||
int16_t *mem, /* (i) Buffer for codevector construction */
|
||||
size_t lMem, /* (i) Length of buffer */
|
||||
size_t veclen /* (i) Length of vector */
|
||||
);
|
||||
|
||||
// Returns true on success, false on failure.
|
||||
bool WebRtcIlbcfix_CbConstruct(
|
||||
int16_t* decvector, /* (o) Decoded vector */
|
||||
int16_t* index, /* (i) Codebook indices */
|
||||
int16_t* gain_index, /* (i) Gain quantization indices */
|
||||
int16_t* mem, /* (i) Buffer for codevector construction */
|
||||
size_t lMem, /* (i) Length of buffer */
|
||||
size_t veclen /* (i) Length of vector */
|
||||
) WARN_UNUSED_RESULT;
|
||||
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user