提交 9d71c0ee authored 作者: Anthony Minessale's avatar Anthony Minessale

reduce cpu requirement for generated comfort noise

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@10584 d0543943-73ff-0310-b7d9-9358b9ac24b2
上级 33200c42
...@@ -203,15 +203,17 @@ SWITCH_DECLARE(void) switch_swap_linear(int16_t *buf, int len) ...@@ -203,15 +203,17 @@ SWITCH_DECLARE(void) switch_swap_linear(int16_t *buf, int len)
SWITCH_DECLARE(void) switch_generate_sln_silence(int16_t *data, uint32_t samples, uint32_t divisor) SWITCH_DECLARE(void) switch_generate_sln_silence(int16_t *data, uint32_t samples, uint32_t divisor)
{ {
int16_t rnd, x; int16_t rnd = 0, rnd2, x;
uint32_t i; uint32_t i;
int sum_rnd = 0; int sum_rnd = 0;
assert(divisor); assert(divisor);
rnd2 = (int16_t) (intptr_t) &data + switch_timestamp(NULL);
for (i = 0; i < samples; i++, sum_rnd = 0) { for (i = 0; i < samples; i++, sum_rnd = 0) {
for (x = 0; x < 7; x++) { for (x = 0; x < 10; x++) {
rnd = (int16_t) (rand() * sizeof(int16_t)); rnd += ((x + i) * rnd2);
sum_rnd += rnd; sum_rnd += rnd;
} }
switch_normalize_to_16bit(sum_rnd); switch_normalize_to_16bit(sum_rnd);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论