OLD | NEW |
| (Empty) |
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 #ifndef WEBRTC_MODULES_AUDIO_CODING_CODECS_ISAC_FIX_INTERFACE_ISACFIX_H_ | |
12 #define WEBRTC_MODULES_AUDIO_CODING_CODECS_ISAC_FIX_INTERFACE_ISACFIX_H_ | |
13 | |
14 #include <stddef.h> | |
15 | |
16 #include "webrtc/modules/audio_coding/codecs/isac/bandwidth_info.h" | |
17 #include "webrtc/typedefs.h" | |
18 | |
19 typedef struct { | |
20 void *dummy; | |
21 } ISACFIX_MainStruct; | |
22 | |
23 | |
24 #if defined(__cplusplus) | |
25 extern "C" { | |
26 #endif | |
27 | |
28 | |
29 /************************************************************************** | |
30 * WebRtcIsacfix_AssignSize(...) | |
31 * | |
32 * Functions used when malloc is not allowed | |
33 * Output the number of bytes needed to allocate for iSAC struct. | |
34 * | |
35 */ | |
36 | |
37 int16_t WebRtcIsacfix_AssignSize(int *sizeinbytes); | |
38 | |
39 /************************************************************************** | |
40 * WebRtcIsacfix_Assign(...) | |
41 * | |
42 * Functions used when malloc is not allowed, it | |
43 * places a struct at the given address. | |
44 * | |
45 * Input: | |
46 * - *ISAC_main_inst : a pointer to the coder instance. | |
47 * - ISACFIX_inst_Addr : address of the memory where a space is | |
48 * for iSAC structure. | |
49 * | |
50 * Return value : 0 - Ok | |
51 * -1 - Error | |
52 */ | |
53 | |
54 int16_t WebRtcIsacfix_Assign(ISACFIX_MainStruct **inst, | |
55 void *ISACFIX_inst_Addr); | |
56 | |
57 /**************************************************************************** | |
58 * WebRtcIsacfix_Create(...) | |
59 * | |
60 * This function creates an ISAC instance, which will contain the state | |
61 * information for one coding/decoding channel. | |
62 * | |
63 * Input: | |
64 * - *ISAC_main_inst : a pointer to the coder instance. | |
65 * | |
66 * Return value : 0 - Ok | |
67 * -1 - Error | |
68 */ | |
69 | |
70 int16_t WebRtcIsacfix_Create(ISACFIX_MainStruct **ISAC_main_inst); | |
71 | |
72 | |
73 /**************************************************************************** | |
74 * WebRtcIsacfix_Free(...) | |
75 * | |
76 * This function frees the ISAC instance created at the beginning. | |
77 * | |
78 * Input: | |
79 * - ISAC_main_inst : a ISAC instance. | |
80 * | |
81 * Return value : 0 - Ok | |
82 * -1 - Error | |
83 */ | |
84 | |
85 int16_t WebRtcIsacfix_Free(ISACFIX_MainStruct *ISAC_main_inst); | |
86 | |
87 | |
88 /**************************************************************************** | |
89 * WebRtcIsacfix_EncoderInit(...) | |
90 * | |
91 * This function initializes an ISAC instance prior to the encoder calls. | |
92 * | |
93 * Input: | |
94 * - ISAC_main_inst : ISAC instance. | |
95 * - CodingMode : 0 - Bit rate and frame length are automatically | |
96 * adjusted to available bandwidth on | |
97 * transmission channel. | |
98 * 1 - User sets a frame length and a target bit | |
99 * rate which is taken as the maximum short-ter
m | |
100 * average bit rate. | |
101 * | |
102 * Return value : 0 - Ok | |
103 * -1 - Error | |
104 */ | |
105 | |
106 int16_t WebRtcIsacfix_EncoderInit(ISACFIX_MainStruct *ISAC_main_inst, | |
107 int16_t CodingMode); | |
108 | |
109 | |
110 /**************************************************************************** | |
111 * WebRtcIsacfix_Encode(...) | |
112 * | |
113 * This function encodes 10ms frame(s) and inserts it into a package. | |
114 * Input speech length has to be 160 samples (10ms). The encoder buffers those | |
115 * 10ms frames until it reaches the chosen Framesize (480 or 960 samples | |
116 * corresponding to 30 or 60 ms frames), and then proceeds to the encoding. | |
117 * | |
118 * Input: | |
119 * - ISAC_main_inst : ISAC instance. | |
120 * - speechIn : input speech vector. | |
121 * | |
122 * Output: | |
123 * - encoded : the encoded data vector | |
124 * | |
125 * Return value : >0 - Length (in bytes) of coded data | |
126 * 0 - The buffer didn't reach the chosen framesiz
e | |
127 * so it keeps buffering speech samples. | |
128 * -1 - Error | |
129 */ | |
130 | |
131 int WebRtcIsacfix_Encode(ISACFIX_MainStruct *ISAC_main_inst, | |
132 const int16_t *speechIn, | |
133 uint8_t* encoded); | |
134 | |
135 | |
136 | |
137 /**************************************************************************** | |
138 * WebRtcIsacfix_EncodeNb(...) | |
139 * | |
140 * This function encodes 10ms narrow band (8 kHz sampling) frame(s) and insert
s | |
141 * it into a package. Input speech length has to be 80 samples (10ms). The enc
oder | |
142 * interpolates into wide-band (16 kHz sampling) buffers those | |
143 * 10ms frames until it reaches the chosen Framesize (480 or 960 wide-band sam
ples | |
144 * corresponding to 30 or 60 ms frames), and then proceeds to the encoding. | |
145 * | |
146 * The function is enabled if WEBRTC_ISAC_FIX_NB_CALLS_ENABLED is defined | |
147 * | |
148 * Input: | |
149 * - ISAC_main_inst : ISAC instance. | |
150 * - speechIn : input speech vector. | |
151 * | |
152 * Output: | |
153 * - encoded : the encoded data vector | |
154 * | |
155 * Return value : >0 - Length (in bytes) of coded data | |
156 * 0 - The buffer didn't reach the chosen framesiz
e | |
157 * so it keeps buffering speech samples. | |
158 * -1 - Error | |
159 */ | |
160 | |
161 | |
162 #ifdef WEBRTC_ISAC_FIX_NB_CALLS_ENABLED | |
163 int16_t WebRtcIsacfix_EncodeNb(ISACFIX_MainStruct *ISAC_main_inst, | |
164 const int16_t *speechIn, | |
165 int16_t *encoded); | |
166 #endif // WEBRTC_ISAC_FIX_NB_CALLS_ENABLED | |
167 | |
168 | |
169 | |
170 /**************************************************************************** | |
171 * WebRtcIsacfix_DecoderInit(...) | |
172 * | |
173 * This function initializes an ISAC instance prior to the decoder calls. | |
174 * | |
175 * Input: | |
176 * - ISAC_main_inst : ISAC instance. | |
177 */ | |
178 | |
179 void WebRtcIsacfix_DecoderInit(ISACFIX_MainStruct* ISAC_main_inst); | |
180 | |
181 /**************************************************************************** | |
182 * WebRtcIsacfix_UpdateBwEstimate1(...) | |
183 * | |
184 * This function updates the estimate of the bandwidth. | |
185 * | |
186 * Input: | |
187 * - ISAC_main_inst : ISAC instance. | |
188 * - encoded : encoded ISAC frame(s). | |
189 * - packet_size : size of the packet in bytes. | |
190 * - rtp_seq_number : the RTP number of the packet. | |
191 * - arr_ts : the arrival time of the packet (from NetEq) | |
192 * in samples. | |
193 * | |
194 * Return value : 0 - Ok | |
195 * -1 - Error | |
196 */ | |
197 | |
198 int16_t WebRtcIsacfix_UpdateBwEstimate1(ISACFIX_MainStruct *ISAC_main_inst, | |
199 const uint8_t* encoded, | |
200 size_t packet_size, | |
201 uint16_t rtp_seq_number, | |
202 uint32_t arr_ts); | |
203 | |
204 /**************************************************************************** | |
205 * WebRtcIsacfix_UpdateBwEstimate(...) | |
206 * | |
207 * This function updates the estimate of the bandwidth. | |
208 * | |
209 * Input: | |
210 * - ISAC_main_inst : ISAC instance. | |
211 * - encoded : encoded ISAC frame(s). | |
212 * - packet_size : size of the packet in bytes. | |
213 * - rtp_seq_number : the RTP number of the packet. | |
214 * - send_ts : the send time of the packet from RTP header, | |
215 * in samples. | |
216 * - arr_ts : the arrival time of the packet (from NetEq) | |
217 * in samples. | |
218 * | |
219 * Return value : 0 - Ok | |
220 * -1 - Error | |
221 */ | |
222 | |
223 int16_t WebRtcIsacfix_UpdateBwEstimate(ISACFIX_MainStruct *ISAC_main_inst, | |
224 const uint8_t* encoded, | |
225 size_t packet_size, | |
226 uint16_t rtp_seq_number, | |
227 uint32_t send_ts, | |
228 uint32_t arr_ts); | |
229 | |
230 /**************************************************************************** | |
231 * WebRtcIsacfix_Decode(...) | |
232 * | |
233 * This function decodes an ISAC frame. Output speech length | |
234 * will be a multiple of 480 samples: 480 or 960 samples, | |
235 * depending on the framesize (30 or 60 ms). | |
236 * | |
237 * Input: | |
238 * - ISAC_main_inst : ISAC instance. | |
239 * - encoded : encoded ISAC frame(s) | |
240 * - len : bytes in encoded vector | |
241 * | |
242 * Output: | |
243 * - decoded : The decoded vector | |
244 * | |
245 * Return value : >0 - number of samples in decoded vector | |
246 * -1 - Error | |
247 */ | |
248 | |
249 int WebRtcIsacfix_Decode(ISACFIX_MainStruct *ISAC_main_inst, | |
250 const uint8_t* encoded, | |
251 size_t len, | |
252 int16_t *decoded, | |
253 int16_t *speechType); | |
254 | |
255 | |
256 /**************************************************************************** | |
257 * WebRtcIsacfix_DecodeNb(...) | |
258 * | |
259 * This function decodes a ISAC frame in narrow-band (8 kHz sampling). | |
260 * Output speech length will be a multiple of 240 samples: 240 or 480 samples, | |
261 * depending on the framesize (30 or 60 ms). | |
262 * | |
263 * The function is enabled if WEBRTC_ISAC_FIX_NB_CALLS_ENABLED is defined | |
264 * | |
265 * Input: | |
266 * - ISAC_main_inst : ISAC instance. | |
267 * - encoded : encoded ISAC frame(s) | |
268 * - len : bytes in encoded vector | |
269 * | |
270 * Output: | |
271 * - decoded : The decoded vector | |
272 * | |
273 * Return value : >0 - number of samples in decoded vector | |
274 * -1 - Error | |
275 */ | |
276 | |
277 #ifdef WEBRTC_ISAC_FIX_NB_CALLS_ENABLED | |
278 int WebRtcIsacfix_DecodeNb(ISACFIX_MainStruct *ISAC_main_inst, | |
279 const uint16_t *encoded, | |
280 size_t len, | |
281 int16_t *decoded, | |
282 int16_t *speechType); | |
283 #endif // WEBRTC_ISAC_FIX_NB_CALLS_ENABLED | |
284 | |
285 | |
286 /**************************************************************************** | |
287 * WebRtcIsacfix_DecodePlcNb(...) | |
288 * | |
289 * This function conducts PLC for ISAC frame(s) in narrow-band (8kHz sampling)
. | |
290 * Output speech length will be "240*noOfLostFrames" samples | |
291 * that equevalent of "30*noOfLostFrames" millisecond. | |
292 * | |
293 * The function is enabled if WEBRTC_ISAC_FIX_NB_CALLS_ENABLED is defined | |
294 * | |
295 * Input: | |
296 * - ISAC_main_inst : ISAC instance. | |
297 * - noOfLostFrames : Number of PLC frames (240 sample=30ms) to produc
e | |
298 * NOTE! Maximum number is 2 (480 samples = 60ms) | |
299 * | |
300 * Output: | |
301 * - decoded : The decoded vector | |
302 * | |
303 * Return value : Number of samples in decoded PLC vector | |
304 */ | |
305 | |
306 #ifdef WEBRTC_ISAC_FIX_NB_CALLS_ENABLED | |
307 size_t WebRtcIsacfix_DecodePlcNb(ISACFIX_MainStruct *ISAC_main_inst, | |
308 int16_t *decoded, | |
309 size_t noOfLostFrames); | |
310 #endif // WEBRTC_ISAC_FIX_NB_CALLS_ENABLED | |
311 | |
312 | |
313 | |
314 | |
315 /**************************************************************************** | |
316 * WebRtcIsacfix_DecodePlc(...) | |
317 * | |
318 * This function conducts PLC for ISAC frame(s) in wide-band (16kHz sampling). | |
319 * Output speech length will be "480*noOfLostFrames" samples | |
320 * that is equevalent of "30*noOfLostFrames" millisecond. | |
321 * | |
322 * Input: | |
323 * - ISAC_main_inst : ISAC instance. | |
324 * - noOfLostFrames : Number of PLC frames (480sample = 30ms) | |
325 * to produce | |
326 * NOTE! Maximum number is 2 (960 samples = 60ms) | |
327 * | |
328 * Output: | |
329 * - decoded : The decoded vector | |
330 * | |
331 * Return value : Number of samples in decoded PLC vector | |
332 */ | |
333 | |
334 size_t WebRtcIsacfix_DecodePlc(ISACFIX_MainStruct *ISAC_main_inst, | |
335 int16_t *decoded, | |
336 size_t noOfLostFrames ); | |
337 | |
338 | |
339 /**************************************************************************** | |
340 * WebRtcIsacfix_ReadFrameLen(...) | |
341 * | |
342 * This function returns the length of the frame represented in the packet. | |
343 * | |
344 * Input: | |
345 * - encoded : Encoded bitstream | |
346 * - encoded_len_bytes : Length of the bitstream in bytes. | |
347 * | |
348 * Output: | |
349 * - frameLength : Length of frame in packet (in samples) | |
350 * | |
351 */ | |
352 | |
353 int16_t WebRtcIsacfix_ReadFrameLen(const uint8_t* encoded, | |
354 size_t encoded_len_bytes, | |
355 size_t* frameLength); | |
356 | |
357 /**************************************************************************** | |
358 * WebRtcIsacfix_Control(...) | |
359 * | |
360 * This function sets the limit on the short-term average bit rate and the | |
361 * frame length. Should be used only in Instantaneous mode. | |
362 * | |
363 * Input: | |
364 * - ISAC_main_inst : ISAC instance. | |
365 * - rate : limit on the short-term average bit rate, | |
366 * in bits/second (between 10000 and 32000) | |
367 * - framesize : number of milliseconds per frame (30 or 60) | |
368 * | |
369 * Return value : 0 - ok | |
370 * -1 - Error | |
371 */ | |
372 | |
373 int16_t WebRtcIsacfix_Control(ISACFIX_MainStruct *ISAC_main_inst, | |
374 int16_t rate, | |
375 int framesize); | |
376 | |
377 void WebRtcIsacfix_SetInitialBweBottleneck(ISACFIX_MainStruct* ISAC_main_inst, | |
378 int bottleneck_bits_per_second); | |
379 | |
380 /**************************************************************************** | |
381 * WebRtcIsacfix_ControlBwe(...) | |
382 * | |
383 * This function sets the initial values of bottleneck and frame-size if | |
384 * iSAC is used in channel-adaptive mode. Through this API, users can | |
385 * enforce a frame-size for all values of bottleneck. Then iSAC will not | |
386 * automatically change the frame-size. | |
387 * | |
388 * | |
389 * Input: | |
390 * - ISAC_main_inst : ISAC instance. | |
391 * - rateBPS : initial value of bottleneck in bits/second | |
392 * 10000 <= rateBPS <= 32000 is accepted | |
393 * - frameSizeMs : number of milliseconds per frame (30 or 60) | |
394 * - enforceFrameSize : 1 to enforce the given frame-size through out | |
395 * the adaptation process, 0 to let iSAC change | |
396 * the frame-size if required. | |
397 * | |
398 * Return value : 0 - ok | |
399 * -1 - Error | |
400 */ | |
401 | |
402 int16_t WebRtcIsacfix_ControlBwe(ISACFIX_MainStruct *ISAC_main_inst, | |
403 int16_t rateBPS, | |
404 int frameSizeMs, | |
405 int16_t enforceFrameSize); | |
406 | |
407 | |
408 | |
409 /**************************************************************************** | |
410 * WebRtcIsacfix_version(...) | |
411 * | |
412 * This function returns the version number. | |
413 * | |
414 * Output: | |
415 * - version : Pointer to character string | |
416 * | |
417 */ | |
418 | |
419 void WebRtcIsacfix_version(char *version); | |
420 | |
421 | |
422 /**************************************************************************** | |
423 * WebRtcIsacfix_GetErrorCode(...) | |
424 * | |
425 * This function can be used to check the error code of an iSAC instance. When | |
426 * a function returns -1 a error code will be set for that instance. The | |
427 * function below extract the code of the last error that occured in the | |
428 * specified instance. | |
429 * | |
430 * Input: | |
431 * - ISAC_main_inst : ISAC instance | |
432 * | |
433 * Return value : Error code | |
434 */ | |
435 | |
436 int16_t WebRtcIsacfix_GetErrorCode(ISACFIX_MainStruct *ISAC_main_inst); | |
437 | |
438 | |
439 /**************************************************************************** | |
440 * WebRtcIsacfix_GetUplinkBw(...) | |
441 * | |
442 * This function return iSAC send bitrate | |
443 * | |
444 * Input: | |
445 * - ISAC_main_inst : iSAC instance | |
446 * | |
447 * Return value : <0 Error code | |
448 * else bitrate | |
449 */ | |
450 | |
451 int32_t WebRtcIsacfix_GetUplinkBw(ISACFIX_MainStruct *ISAC_main_inst); | |
452 | |
453 | |
454 /**************************************************************************** | |
455 * WebRtcIsacfix_SetMaxPayloadSize(...) | |
456 * | |
457 * This function sets a limit for the maximum payload size of iSAC. The same | |
458 * value is used both for 30 and 60 msec packets. | |
459 * The absolute max will be valid until next time the function is called. | |
460 * NOTE! This function may override the function WebRtcIsacfix_SetMaxRate() | |
461 * | |
462 * Input: | |
463 * - ISAC_main_inst : iSAC instance | |
464 * - maxPayloadBytes : maximum size of the payload in bytes | |
465 * valid values are between 100 and 400 bytes | |
466 * | |
467 * | |
468 * Return value : 0 if sucessful | |
469 * -1 if error happens | |
470 */ | |
471 | |
472 int16_t WebRtcIsacfix_SetMaxPayloadSize(ISACFIX_MainStruct *ISAC_main_inst, | |
473 int16_t maxPayloadBytes); | |
474 | |
475 | |
476 /**************************************************************************** | |
477 * WebRtcIsacfix_SetMaxRate(...) | |
478 * | |
479 * This function sets the maximum rate which the codec may not exceed for a | |
480 * singel packet. The maximum rate is set in bits per second. | |
481 * The codec has an absolute maximum rate of 53400 bits per second (200 bytes | |
482 * per 30 msec). | |
483 * It is possible to set a maximum rate between 32000 and 53400 bits per secon
d. | |
484 * | |
485 * The rate limit is valid until next time the function is called. | |
486 * | |
487 * NOTE! Packet size will never go above the value set if calling | |
488 * WebRtcIsacfix_SetMaxPayloadSize() (default max packet size is 400 bytes). | |
489 * | |
490 * Input: | |
491 * - ISAC_main_inst : iSAC instance | |
492 * - maxRateInBytes : maximum rate in bits per second, | |
493 * valid values are 32000 to 53400 bits | |
494 * | |
495 * Return value : 0 if sucessful | |
496 * -1 if error happens | |
497 */ | |
498 | |
499 int16_t WebRtcIsacfix_SetMaxRate(ISACFIX_MainStruct *ISAC_main_inst, | |
500 int32_t maxRate); | |
501 | |
502 /**************************************************************************** | |
503 * WebRtcIsacfix_CreateInternal(...) | |
504 * | |
505 * This function creates the memory that is used to store data in the encoder | |
506 * | |
507 * Input: | |
508 * - *ISAC_main_inst : a pointer to the coder instance. | |
509 * | |
510 * Return value : 0 - Ok | |
511 * -1 - Error | |
512 */ | |
513 | |
514 int16_t WebRtcIsacfix_CreateInternal(ISACFIX_MainStruct *ISAC_main_inst); | |
515 | |
516 | |
517 /**************************************************************************** | |
518 * WebRtcIsacfix_FreeInternal(...) | |
519 * | |
520 * This function frees the internal memory for storing encoder data. | |
521 * | |
522 * Input: | |
523 * - ISAC_main_inst : an ISAC instance. | |
524 * | |
525 * Return value : 0 - Ok | |
526 * -1 - Error | |
527 */ | |
528 | |
529 int16_t WebRtcIsacfix_FreeInternal(ISACFIX_MainStruct *ISAC_main_inst); | |
530 | |
531 | |
532 /**************************************************************************** | |
533 * WebRtcIsacfix_GetNewBitStream(...) | |
534 * | |
535 * This function returns encoded data, with the recieved bwe-index in the | |
536 * stream. It should always return a complete packet, i.e. only called once | |
537 * even for 60 msec frames | |
538 * | |
539 * Input: | |
540 * - ISAC_main_inst : ISAC instance. | |
541 * - bweIndex : index of bandwidth estimate to put in new bitstr
eam | |
542 * - scale : factor for rate change (0.4 ~=> half the rate, 1
no change). | |
543 * | |
544 * Output: | |
545 * - encoded : the encoded data vector | |
546 * | |
547 * Return value : >0 - Length (in bytes) of coded data | |
548 * -1 - Error | |
549 */ | |
550 | |
551 int16_t WebRtcIsacfix_GetNewBitStream(ISACFIX_MainStruct *ISAC_main_inst, | |
552 int16_t bweIndex, | |
553 float scale, | |
554 uint8_t* encoded); | |
555 | |
556 | |
557 /**************************************************************************** | |
558 * WebRtcIsacfix_GetDownLinkBwIndex(...) | |
559 * | |
560 * This function returns index representing the Bandwidth estimate from | |
561 * other side to this side. | |
562 * | |
563 * Input: | |
564 * - ISAC_main_inst : iSAC struct | |
565 * | |
566 * Output: | |
567 * - rateIndex : Bandwidth estimate to transmit to other side. | |
568 * | |
569 */ | |
570 | |
571 int16_t WebRtcIsacfix_GetDownLinkBwIndex(ISACFIX_MainStruct* ISAC_main_inst, | |
572 int16_t* rateIndex); | |
573 | |
574 | |
575 /**************************************************************************** | |
576 * WebRtcIsacfix_UpdateUplinkBw(...) | |
577 * | |
578 * This function takes an index representing the Bandwidth estimate from | |
579 * this side to other side and updates BWE. | |
580 * | |
581 * Input: | |
582 * - ISAC_main_inst : iSAC struct | |
583 * - rateIndex : Bandwidth estimate from other side. | |
584 * | |
585 */ | |
586 | |
587 int16_t WebRtcIsacfix_UpdateUplinkBw(ISACFIX_MainStruct* ISAC_main_inst, | |
588 int16_t rateIndex); | |
589 | |
590 | |
591 /**************************************************************************** | |
592 * WebRtcIsacfix_ReadBwIndex(...) | |
593 * | |
594 * This function returns the index of the Bandwidth estimate from the bitstrea
m. | |
595 * | |
596 * Input: | |
597 * - encoded : Encoded bitstream | |
598 * - encoded_len_bytes : Length of the bitstream in bytes. | |
599 * | |
600 * Output: | |
601 * - rateIndex : Bandwidth estimate in bitstream | |
602 * | |
603 */ | |
604 | |
605 int16_t WebRtcIsacfix_ReadBwIndex(const uint8_t* encoded, | |
606 size_t encoded_len_bytes, | |
607 int16_t* rateIndex); | |
608 | |
609 | |
610 /**************************************************************************** | |
611 * WebRtcIsacfix_GetNewFrameLen(...) | |
612 * | |
613 * This function return the next frame length (in samples) of iSAC. | |
614 * | |
615 * Input: | |
616 * -ISAC_main_inst : iSAC instance | |
617 * | |
618 * Return value : frame lenght in samples | |
619 */ | |
620 | |
621 int16_t WebRtcIsacfix_GetNewFrameLen(ISACFIX_MainStruct *ISAC_main_inst); | |
622 | |
623 /* Fills in an IsacBandwidthInfo struct. */ | |
624 void WebRtcIsacfix_GetBandwidthInfo(ISACFIX_MainStruct* ISAC_main_inst, | |
625 IsacBandwidthInfo* bwinfo); | |
626 | |
627 /* Uses the values from an IsacBandwidthInfo struct. */ | |
628 void WebRtcIsacfix_SetBandwidthInfo(ISACFIX_MainStruct* ISAC_main_inst, | |
629 const IsacBandwidthInfo* bwinfo); | |
630 | |
631 #if defined(__cplusplus) | |
632 } | |
633 #endif | |
634 | |
635 | |
636 | |
637 #endif /* WEBRTC_MODULES_AUDIO_CODING_CODECS_ISAC_FIX_INTERFACE_ISACFIX_H_ */ | |
OLD | NEW |