From: <sb...@us...> - 2007-11-05 19:42:15
|
Revision: 1268 http://iaxclient.svn.sourceforge.net/iaxclient/?rev=1268&view=rev Author: sbalea Date: 2007-11-05 11:42:15 -0800 (Mon, 05 Nov 2007) Log Message: ----------- Update speex patches and associated README. Modified Paths: -------------- branches/team/mihai/echocan/README.speex Added Paths: ----------- branches/team/mihai/echocan/speex-1.2beta2-loudness.patch branches/team/mihai/echocan/speex-1.2beta2-vad-probs.patch Removed Paths: ------------- branches/team/mihai/echocan/speex-1.2beta2.patch Modified: branches/team/mihai/echocan/README.speex =================================================================== --- branches/team/mihai/echocan/README.speex 2007-11-05 18:46:22 UTC (rev 1267) +++ branches/team/mihai/echocan/README.speex 2007-11-05 19:42:15 UTC (rev 1268) @@ -1,4 +1,8 @@ Echo cancellation features depend on the very latest version of the speex codec. To build this version of iaxclient you need one of the following: -- a patched version of speex-1.2beta2. The patch is included as speex-1.2beta2.patch. +- a patched version of speex-1.2beta2. There are two patches included with +iaxclient that need to be applied (in any order). - the latest development code, available via git from http://git.xiph.org/speex.git +Currently, speex-1.2beta2-vad-probs.patch needs to be applied to this code. +speex-1.2beta2-loudness.patch does not need to be applied since it was already +merged in. Copied: branches/team/mihai/echocan/speex-1.2beta2-loudness.patch (from rev 1267, branches/team/mihai/echocan/speex-1.2beta2.patch) =================================================================== --- branches/team/mihai/echocan/speex-1.2beta2-loudness.patch (rev 0) +++ branches/team/mihai/echocan/speex-1.2beta2-loudness.patch 2007-11-05 19:42:15 UTC (rev 1268) @@ -0,0 +1,26 @@ +diff -urN speex-1.2beta2.orig/include/speex/speex_preprocess.h speex-1.2beta2/include/speex/speex_preprocess.h +--- speex-1.2beta2.orig/include/speex/speex_preprocess.h 2007-01-23 06:59:04.000000000 -0500 ++++ speex-1.2beta2/include/speex/speex_preprocess.h 2007-10-29 12:06:48.000000000 -0400 +@@ -178,6 +178,9 @@ + /** Get maximal gain in dB (int32) */ + #define SPEEX_PREPROCESS_GET_AGC_MAX_GAIN 31 + ++/** Get loudness */ ++#define SPEEX_PREPROCESS_GET_AGC_LOUDNESS 32 ++ + #ifdef __cplusplus + } + #endif +diff -urN speex-1.2beta2.orig/libspeex/preprocess.c speex-1.2beta2/libspeex/preprocess.c +--- speex-1.2beta2.orig/libspeex/preprocess.c 2007-05-03 05:22:04.000000000 -0400 ++++ speex-1.2beta2/libspeex/preprocess.c 2007-10-29 13:35:53.000000000 -0400 +@@ -1163,6 +1163,9 @@ + case SPEEX_PREPROCESS_GET_ECHO_STATE: + ptr = (void*)st->echo_state; + break; ++ case SPEEX_PREPROCESS_GET_AGC_LOUDNESS: ++ (*(spx_int32_t*)ptr) = pow(st->loudness, 1.0/LOUDNESS_EXP); ++ break; + + default: + speex_warning_int("Unknown speex_preprocess_ctl request: ", request); Added: branches/team/mihai/echocan/speex-1.2beta2-vad-probs.patch =================================================================== --- branches/team/mihai/echocan/speex-1.2beta2-vad-probs.patch (rev 0) +++ branches/team/mihai/echocan/speex-1.2beta2-vad-probs.patch 2007-11-05 19:42:15 UTC (rev 1268) @@ -0,0 +1,24 @@ +diff -urN speex-1.2beta2.orig/libspeex/preprocess.c speex-1.2beta2/libspeex/preprocess.c +--- speex-1.2beta2.orig/libspeex/preprocess.c 2007-05-03 05:22:04.000000000 -0400 ++++ speex-1.2beta2/libspeex/preprocess.c 2007-11-05 14:34:37.000000000 -0500 +@@ -1124,16 +1124,16 @@ + break; + + case SPEEX_PREPROCESS_SET_PROB_START: +- *(spx_int32_t*)ptr = MIN32(Q15_ONE,MAX32(0, *(spx_int32_t*)ptr)); +- st->speech_prob_start = DIV32_16(MULT16_16(32767,*(spx_int32_t*)ptr), 100); ++ *(spx_int32_t*)ptr = MIN32(100,MAX32(0, *(spx_int32_t*)ptr)); ++ st->speech_prob_start = DIV32_16(MULT16_16(Q15ONE,*(spx_int32_t*)ptr), 100); + break; + case SPEEX_PREPROCESS_GET_PROB_START: + (*(spx_int32_t*)ptr) = MULT16_16_Q15(st->speech_prob_start, 100); + break; + + case SPEEX_PREPROCESS_SET_PROB_CONTINUE: +- *(spx_int32_t*)ptr = MIN32(Q15_ONE,MAX32(0, *(spx_int32_t*)ptr)); +- st->speech_prob_continue = DIV32_16(MULT16_16(32767,*(spx_int32_t*)ptr), 100); ++ *(spx_int32_t*)ptr = MIN32(100,MAX32(0, *(spx_int32_t*)ptr)); ++ st->speech_prob_continue = DIV32_16(MULT16_16(Q15ONE,*(spx_int32_t*)ptr), 100); + break; + case SPEEX_PREPROCESS_GET_PROB_CONTINUE: + (*(spx_int32_t*)ptr) = MULT16_16_Q15(st->speech_prob_continue, 100); Deleted: branches/team/mihai/echocan/speex-1.2beta2.patch =================================================================== --- branches/team/mihai/echocan/speex-1.2beta2.patch 2007-11-05 18:46:22 UTC (rev 1267) +++ branches/team/mihai/echocan/speex-1.2beta2.patch 2007-11-05 19:42:15 UTC (rev 1268) @@ -1,26 +0,0 @@ -diff -urN speex-1.2beta2.orig/include/speex/speex_preprocess.h speex-1.2beta2/include/speex/speex_preprocess.h ---- speex-1.2beta2.orig/include/speex/speex_preprocess.h 2007-01-23 06:59:04.000000000 -0500 -+++ speex-1.2beta2/include/speex/speex_preprocess.h 2007-10-29 12:06:48.000000000 -0400 -@@ -178,6 +178,9 @@ - /** Get maximal gain in dB (int32) */ - #define SPEEX_PREPROCESS_GET_AGC_MAX_GAIN 31 - -+/** Get loudness */ -+#define SPEEX_PREPROCESS_GET_AGC_LOUDNESS 32 -+ - #ifdef __cplusplus - } - #endif -diff -urN speex-1.2beta2.orig/libspeex/preprocess.c speex-1.2beta2/libspeex/preprocess.c ---- speex-1.2beta2.orig/libspeex/preprocess.c 2007-05-03 05:22:04.000000000 -0400 -+++ speex-1.2beta2/libspeex/preprocess.c 2007-10-29 13:35:53.000000000 -0400 -@@ -1163,6 +1163,9 @@ - case SPEEX_PREPROCESS_GET_ECHO_STATE: - ptr = (void*)st->echo_state; - break; -+ case SPEEX_PREPROCESS_GET_AGC_LOUDNESS: -+ (*(spx_int32_t*)ptr) = pow(st->loudness, 1.0/LOUDNESS_EXP); -+ break; - - default: - speex_warning_int("Unknown speex_preprocess_ctl request: ", request); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |