Displaying 10 results from an estimated 10 matches for "q15one".
2009 Dec 02
1
bug found in CELT 0.6.1, fix proposed.
...f, 0.f, 0.f, 0.f, 0.f, 0.f, 0.f, 0.f};
#endif
/* FIXME: Implement for stereo */
***************
*** 113,119 ****
celt_word16 q; /* dB */
celt_word16 x; /* dB */
celt_word16 f; /* Q8 */
! celt_word16 mean = (i < E_MEANS_SIZE) ? MULT16_16_Q15(Q15ONE-coef,eMeans[i]) : 0;
x = eBands[i+c*m->nbEBands];
#ifdef FIXED_POINT
f = x-mean -MULT16_16_Q15(coef,oldEBands[i+c*m->nbEBands])-prev[c];
--- 112,118 ----
celt_word16 q; /* dB */
celt_word16 x; /* dB */
celt_word16 f; /* Q8 */
!...
2007 Nov 05
2
[patch] speex_preprocess_ctl
...15_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_CONTINU...
2007 Oct 29
1
[patch] speex_preprocess_ctl
...SS_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));
-...
2011 Apr 23
1
Inside the psydecay_init function
Good Morning;
Fo this portion of code in the psydecay_init( ) of CELT (psy.c)?:
decayR[i]=Q15ONE*power(0.1f,deriv)?? /commented: decay corresponding to -10
dB/Bark.
decayL[i]=Q15ONE*power(0.0031623f,deriv)?? /commented: decay corresponding to
-25 dB/Bark.
Why 0.1 (or 0.0031623)?is being raised to the power of deriv? what is the
meaning of this? why 0.1(or 0.0031623) ?not other number? is...
2011 Mar 02
1
[PATCH] Fix CNG when effEBands is less than nbEBands.
...+ blen = (st->mode->eBands[i+1]-st->mode->eBands[i])<<LM;
+ for (j=0;j<blen;j++)
+ {
+ seed = lcg_rand(seed);
+ X[boffs+j] = (celt_int32)(seed)>>20;
+ }
+ renormalise_vector(X+boffs, blen, Q15ONE);
+ }
}
st->rng = seed;
- for (c=0;c<C;c++)
- for (i=0;i<st->mode->nbEBands;i++)
- renormalise_vector(X+N*c+(st->mode->eBands[i]<<LM), (st->mode->eBands[i+1]-st->mode->eBands[i])<<LM, Q15ONE);
- denorm...
2009 Jan 14
0
[PATCH] Pitch now quantised at the band level, got rid of all the VQ code.
...i)]&0xff00U)>>1) )
-#define PGAIN_ODD14(codebook, i) PGAIN_ODD(codebook, i)
-#define PGAIN_EVEN14(codebook, i) PGAIN_EVEN(codebook, i)
-#endif
-
-#define PGAIN(codebook, i) ((i)&1 ? PGAIN_ODD(codebook, (i)>>1) : PGAIN_EVEN(codebook, (i)>>1))
-
-
-#define Q1515ONE MULT16_16(Q15ONE,Q15ONE)
-
-/** Taken from Speex.Finds the index of the entry in a codebook that best matches the input*/
-int vq_index(const celt_pgain_t *in, const celt_uint16_t *codebook, int len, int entries)
-{
- int i,j;
- int ind = 0;
- celt_word32_t min_dist=VERY_LARGE32;
- int best_index=0;
- for...
2007 Nov 05
0
[patch] speex_preprocess_ctl
...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_PREPRO...
2011 Mar 03
1
fixed point code
...this array? Or you may kindly provide us with ROM tables of the array for each possible combination of frame size and sampling freq...?
CELTMode *celt_mode_create(celt_int32 Fs, int frame_size, int *error)
{
....
....
#ifndef FIXED_POINT
for (i=0;i<mode->overlap;i++)
window[i] = Q15ONE*sin(.5*M_PI* sin(.5*M_PI*(i+.5)/mode->overlap) * sin(.5*M_PI*(i+.5)/mode->overlap));
#else
for (i=0;i<mode->overlap;i++)
window[i] = MIN32(32767,floor(.5+32768.*sin(.5*M_PI* sin(.5*M_PI*(i+.5)/mode->overlap) * sin(.5*M_PI*(i+.5)/mode->overlap))));
#endif
.....
.....
}...
2016 Jun 17
5
ARM NEON optimization -- celt_fir()
Hi all,
This is Linfeng Zhang from Google. I'll work on ARM NEON optimization in the
next few months.
I'm submitting 2 patches in the following couple of emails, which have the new
created celt_fir_neon().
I revised celt_fir_c() to not pass in argument "mem" in Patch 1. If there are
concerns to this change, please let me know.
Many thanks to your comments.
Linfeng Zhang
2016 Jul 14
6
Several patches of ARM NEON optimization
I rebased my previous 3 patches to the current master with minor changes.
Patches 1 to 3 replace all my previous submitted patches.
Patches 4 and 5 are new.
Thanks,
Linfeng Zhang