forked from Mirrors/freeswitch
Merge pull request #1354 in FS/freeswitch from ~DRAGOS_OANCEA_NX/freeswitch-dragos-nx:feature/FS-10551/opus_16khz_init_fec_map to master
* commit '2f914e37fa663737fccc2ba4fe7cf17d2918ab9f': FS-10551: [mod_opus] added FEC bitrates map for opus@16000h (for the "keep-fec-enabled" setting)
This commit is contained in:
commit
f48fc352b7
@ -437,7 +437,7 @@ static switch_bool_t switch_opus_has_fec(const uint8_t* payload,int payload_leng
|
|||||||
* at the beginning of the call. */
|
* at the beginning of the call. */
|
||||||
static int switch_opus_get_fec_bitrate(int fs, int loss)
|
static int switch_opus_get_fec_bitrate(int fs, int loss)
|
||||||
{
|
{
|
||||||
int threshold_bitrates[25] = {
|
int threshold_bitrates_8k[25] = {
|
||||||
15600,15200,15200,15200,14800,
|
15600,15200,15200,15200,14800,
|
||||||
14800,14800,14800,14400,14400,
|
14800,14800,14800,14400,14400,
|
||||||
14400,14000,14000,14000,13600,
|
14400,14000,14000,14000,13600,
|
||||||
@ -445,15 +445,29 @@ static int switch_opus_get_fec_bitrate(int fs, int loss)
|
|||||||
13200,12800,12800,12800,12400
|
13200,12800,12800,12800,12400
|
||||||
};
|
};
|
||||||
|
|
||||||
|
int threshold_bitrates_16k[25] = {
|
||||||
|
20400, 20400, 20000, 20000, 19600,
|
||||||
|
19600, 19600, 19200, 19200, 18800,
|
||||||
|
18800, 18800, 18400, 18400, 18000,
|
||||||
|
18000, 18000, 17600, 17600, 17200,
|
||||||
|
17200, 17200, 16800, 16800, 16400
|
||||||
|
};
|
||||||
|
|
||||||
if (loss <= 0){
|
if (loss <= 0){
|
||||||
return SWITCH_STATUS_FALSE;
|
return SWITCH_STATUS_FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (fs == 8000) {
|
if (fs == 8000) {
|
||||||
if (loss >=25) {
|
if (loss >=25) {
|
||||||
return threshold_bitrates[24];
|
return threshold_bitrates_8k[24];
|
||||||
} else {
|
} else {
|
||||||
return threshold_bitrates[loss-1];
|
return threshold_bitrates_8k[loss-1];
|
||||||
|
}
|
||||||
|
} else if (fs == 16000) {
|
||||||
|
if (loss >=25) {
|
||||||
|
return threshold_bitrates_16k[24];
|
||||||
|
} else {
|
||||||
|
return threshold_bitrates_16k[loss-1];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user