| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license | 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 | 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 | 6 * tree. An additional intellectual property rights grant can be found |
| 7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
| 8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
| 9 */ | 9 */ |
| 10 | 10 |
| 11 /* | 11 /* |
| 12 * codec.h | 12 * codec.h |
| 13 * | 13 * |
| 14 * This header file contains the calls to the internal encoder | 14 * This header file contains the calls to the internal encoder |
| 15 * and decoder functions. | 15 * and decoder functions. |
| 16 * | 16 * |
| 17 */ | 17 */ |
| 18 | 18 |
| 19 #ifndef WEBRTC_MODULES_AUDIO_CODING_CODECS_ISAC_MAIN_SOURCE_CODEC_H_ | 19 #ifndef WEBRTC_MODULES_AUDIO_CODING_CODECS_ISAC_MAIN_SOURCE_CODEC_H_ |
| 20 #define WEBRTC_MODULES_AUDIO_CODING_CODECS_ISAC_MAIN_SOURCE_CODEC_H_ | 20 #define WEBRTC_MODULES_AUDIO_CODING_CODECS_ISAC_MAIN_SOURCE_CODEC_H_ |
| 21 | 21 |
| 22 #include "structs.h" | 22 #include "structs.h" |
| 23 | 23 |
| 24 | 24 |
| 25 void WebRtcIsac_ResetBitstream(Bitstr* bit_stream); | 25 void WebRtcIsac_ResetBitstream(Bitstr* bit_stream); |
| 26 | 26 |
| 27 int WebRtcIsac_EstimateBandwidth(BwEstimatorstr* bwest_str, Bitstr* streamdata, | 27 int WebRtcIsac_EstimateBandwidth(BwEstimatorstr* bwest_str, Bitstr* streamdata, |
| 28 int32_t packet_size, | 28 size_t packet_size, |
| 29 uint16_t rtp_seq_number, | 29 uint16_t rtp_seq_number, |
| 30 uint32_t send_ts, uint32_t arr_ts, | 30 uint32_t send_ts, uint32_t arr_ts, |
| 31 enum IsacSamplingRate encoderSampRate, | 31 enum IsacSamplingRate encoderSampRate, |
| 32 enum IsacSamplingRate decoderSampRate); | 32 enum IsacSamplingRate decoderSampRate); |
| 33 | 33 |
| 34 int WebRtcIsac_DecodeLb(const TransformTables* transform_tables, | 34 int WebRtcIsac_DecodeLb(const TransformTables* transform_tables, |
| 35 float* signal_out, | 35 float* signal_out, |
| 36 ISACLBDecStruct* ISACdec_obj, | 36 ISACLBDecStruct* ISACdec_obj, |
| 37 int16_t* current_framesamples, | 37 int16_t* current_framesamples, |
| 38 int16_t isRCUPayload); | 38 int16_t isRCUPayload); |
| (...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 188 | 188 |
| 189 void WebRtcIsac_Spec2time(const TransformTables* tables, | 189 void WebRtcIsac_Spec2time(const TransformTables* tables, |
| 190 double* inre, | 190 double* inre, |
| 191 double* inim, | 191 double* inim, |
| 192 double* outre1, | 192 double* outre1, |
| 193 double* outre2, | 193 double* outre2, |
| 194 FFTstr* fftstr_obj); | 194 FFTstr* fftstr_obj); |
| 195 | 195 |
| 196 /******************************* filter functions ****************************/ | 196 /******************************* filter functions ****************************/ |
| 197 | 197 |
| 198 void WebRtcIsac_AllPoleFilter(double* InOut, double* Coef, int lengthInOut, | 198 void WebRtcIsac_AllPoleFilter(double* InOut, double* Coef, size_t lengthInOut, |
| 199 int orderCoef); | 199 int orderCoef); |
| 200 | 200 |
| 201 void WebRtcIsac_AllZeroFilter(double* In, double* Coef, int lengthInOut, | 201 void WebRtcIsac_AllZeroFilter(double* In, double* Coef, size_t lengthInOut, |
| 202 int orderCoef, double* Out); | 202 int orderCoef, double* Out); |
| 203 | 203 |
| 204 void WebRtcIsac_ZeroPoleFilter(double* In, double* ZeroCoef, double* PoleCoef, | 204 void WebRtcIsac_ZeroPoleFilter(double* In, double* ZeroCoef, double* PoleCoef, |
| 205 int lengthInOut, int orderCoef, double* Out); | 205 size_t lengthInOut, int orderCoef, double* Out); |
| 206 | 206 |
| 207 | 207 |
| 208 /***************************** filterbank functions **************************/ | 208 /***************************** filterbank functions **************************/ |
| 209 | 209 |
| 210 void WebRtcIsac_SplitAndFilterFloat(float* in, float* LP, float* HP, | 210 void WebRtcIsac_SplitAndFilterFloat(float* in, float* LP, float* HP, |
| 211 double* LP_la, double* HP_la, | 211 double* LP_la, double* HP_la, |
| 212 PreFiltBankstr* prefiltdata); | 212 PreFiltBankstr* prefiltdata); |
| 213 | 213 |
| 214 | 214 |
| 215 void WebRtcIsac_FilterAndCombineFloat(float* InLP, float* InHP, float* Out, | 215 void WebRtcIsac_FilterAndCombineFloat(float* InLP, float* InHP, float* Out, |
| 216 PostFiltBankstr* postfiltdata); | 216 PostFiltBankstr* postfiltdata); |
| 217 | 217 |
| 218 | 218 |
| 219 /************************* normalized lattice filters ************************/ | 219 /************************* normalized lattice filters ************************/ |
| 220 | 220 |
| 221 void WebRtcIsac_NormLatticeFilterMa(int orderCoef, float* stateF, float* stateG, | 221 void WebRtcIsac_NormLatticeFilterMa(int orderCoef, float* stateF, float* stateG, |
| 222 float* lat_in, double* filtcoeflo, | 222 float* lat_in, double* filtcoeflo, |
| 223 double* lat_out); | 223 double* lat_out); |
| 224 | 224 |
| 225 void WebRtcIsac_NormLatticeFilterAr(int orderCoef, float* stateF, float* stateG, | 225 void WebRtcIsac_NormLatticeFilterAr(int orderCoef, float* stateF, float* stateG, |
| 226 double* lat_in, double* lo_filt_coef, | 226 double* lat_in, double* lo_filt_coef, |
| 227 float* lat_out); | 227 float* lat_out); |
| 228 | 228 |
| 229 void WebRtcIsac_Dir2Lat(double* a, int orderCoef, float* sth, float* cth); | 229 void WebRtcIsac_Dir2Lat(double* a, int orderCoef, float* sth, float* cth); |
| 230 | 230 |
| 231 void WebRtcIsac_AutoCorr(double* r, const double* x, int N, int order); | 231 void WebRtcIsac_AutoCorr(double* r, const double* x, size_t N, size_t order); |
| 232 | 232 |
| 233 #endif /* WEBRTC_MODULES_AUDIO_CODING_CODECS_ISAC_MAIN_SOURCE_CODEC_H_ */ | 233 #endif /* WEBRTC_MODULES_AUDIO_CODING_CODECS_ISAC_MAIN_SOURCE_CODEC_H_ */ |
| OLD | NEW |