[Speex-dev] [patch] speex_preprocess_ctl
Mihai Balea
mihai at hates.ms
Mon Nov 5 11:59:50 PST 2007
I checked it against the latest code in the git repository and it
wasn't there.
Mihai
PS: if JM wants a @hates.ms address, I could prolly hook him up.
Especially if he throws in some VAD code that's not "a hack" :)
On Nov 5, 2007, at 2:08 PM, Tom Grandgent wrote:
> Did you check it against the trunk in SVN?
>
> If it's not applied, and you can hook Jean-Marc up with an email
> address like yours, I'm sure he will get right on it. :)
>
> Tom
>
> Mihai Balea <mihai at hates.ms> wrote:
>>
>> Hi all,
>>
>> Did anything happen to this patch?
>> It seems to me that it fixes a valid issue, but I'm not an expert.
>> Anyways, I didn't see and follow-up or reply...
>>
>> Cheers,
>> Mihai
>>
>> On Oct 29, 2007, at 7:14 PM, Mikael Magnusson wrote:
>>
>>> There is a problem in speex_preprocess_ctl. Both speech_prob_start
>>> and speech_prob_continue are set to 327.67 for all input values
>>> except 0 which results in 0. This is in floating point mode.
>>>
>>> I think the included patch fixes the problem.
>>>
>>> Mikael
>>> Index: libspeex/preprocess.c
>>> ===================================================================
>>> --- libspeex/preprocess.c (revision 13983)
>>> +++ libspeex/preprocess.c (arbetskopia)
>>> @@ -1126,16 +1126,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);
>>> _______________________________________________
>>> Speex-dev mailing list
>>> Speex-dev at xiph.org
>>> http://lists.xiph.org/mailman/listinfo/speex-dev
>
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2411 bytes
Desc: not available
Url : http://lists.xiph.org/pipermail/speex-dev/attachments/20071105/132d7638/smime.bin
More information about the Speex-dev
mailing list