search for: celtdecode

Displaying 20 results from an estimated 22 matches for "celtdecode".

Did you mean: celtdecoder
2009 Jul 22
2
Allocating all memory up front
Hi guys, I'm currently working on a CELT implementation for FMOD, and one of the things we want to do is have all memory required allocated beforehand. This is before we have any information about what sounds will be played. We would like to create all of our CELTDecode instances up front. Because celt_mode_create() requires a sample rate and number of channels passed in, this doesn't seem like it is currently possible. What I am thinking of doing is calling celt_mode_create() and celt_decoder_create() up front with the maximum values for sample rate and...
2009 Oct 23
1
Implications of reducing MAX_PERIOD
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> </head> <body bgcolor="#ffffff" text="#000000"> Hi,<br> <br> I have been looking into reducing memory usage of the CELTDecoder and was wondering what the implications of reducing MAX_PERIOD were? Reducing it to 512, I haven''t noticed any difference besides the reduction in memory usage. Is there a minimum value this can be set to? <br> <br> <div class="moz-signature">-- <br> <...
2011 Mar 02
1
[PATCH] Fix CNG when effEBands is less than nbEBands.
...); else prefilter_tapset = 0; + fprintf(stderr,"pitch_index: %4i gain %0.2f tapset: %i\n",pitch_index,gain1,prefilter_tapset); gain1 = QCONST16(0.09375f,15)*(qg+1); pf_on = 1; } @@ -1967,17 +1968,26 @@ static void celt_decode_lost(CELTDecoder * restrict st, celt_word16 * restrict p log2Amp(st->mode, st->start, st->end, bandE, backgroundLogE, C); seed = st->rng; - for (i=0;i<C*N;i++) + for (c=0;c<C;c++) { - seed = lcg_rand(seed); - X[i] = (celt_int32)(seed)>>...
2010 Mar 03
2
uint decode error on visual studio...
...ameSize,&error); if(mode2==NULL || error!=CELT_OK) { printf("ERROR: celt_mode_create 2 %s\n",celt_strerror(error)); return -1; } encodedfile=fopen(encodedfilename,"rb"); if(!encodedfile) { printf("ERROR opening %s for reading\n",encodedfilename); return -1; } CELTDecoder* decoder=celt_decoder_create(mode2,gNrChannels,&error); if(decoder==NULL || error!=CELT_OK) { printf("ERROR: celt_decoder_create %s\n",celt_strerror(error)); return -1; } fseek(encodedfile,0,2); int filesize=ftell(encodedfile); fseek(encodedfile,0,0); offset=0; while((res=fread...
2011 May 09
1
V11.1 Problem
...============================================================================ ==================== .and ============================================================================ ==================== #ifdef FIXED_POINT #ifndef DISABLE_FLOAT_API CELT_STATIC int celt_decode_with_ec_float(CELTDecoder * restrict st, const unsigned char *data, int len, float * restrict pcm, int frame_size, ec_dec *dec) { int j, ret, C, N; VARDECL(celt_int16, out); ALLOC_STACK; SAVE_STACK; <<<<<<<<<<<<<<<ERROR Here "declaration may not appear afte...
2009 Jan 14
0
[PATCH] Pitch now quantised at the band level, got rid of all the VQ code.
...offsets[i] = 0; bits = nbCompressedBytes*8 - ec_enc_tell(&enc, 0) - 1; + if (has_pitch) + bits -= st->mode->nbPBands; #ifndef STDIN_TUNING compute_allocation(st->mode, offsets, stereo_mode, bits, pulses, fine_quant); #endif @@ -991,10 +988,6 @@ int celt_decode_float(CELTDecoder * restrict st, unsigned char *data, int len, c if (has_pitch) { - int id; - /* Get the pitch gains and index */ - id = ec_dec_bits(&dec, 7); - unquant_pitch(id, gains, st->mode->nbPBands); pitch_index = ec_dec_uint(&dec, MAX_PERIOD-(2*N-2*N4));...
2013 May 23
2
ASM runtime detection and optimizations
...t;math.h> @@ -69,6 +70,7 @@ struct OpusCustomDecoder { int downsample; int start, end; int signalling; + int arch; /* Everything beyond this point gets cleared on a reset */ #define DECODER_RESET_START rng @@ -159,6 +161,7 @@ OPUS_CUSTOM_NOSTATIC int opus_custom_decoder_init(CELTDecoder *st, const CELTMod st->signalling = 1; st->loss_count = 0; + st->arch = opus_select_arch(); opus_custom_decoder_ctl(st, OPUS_RESET_STATE); @@ -430,7 +433,7 @@ static void celt_decode_lost(CELTDecoder * OPUS_RESTRICT st, opus_val16 * OPUS_R { VARDECL( o...
2015 Mar 04
0
[RFC PATCH v1] armv7(float): Optimize decode usecase using NE10 library
...dct, &freq[b], out_syn[c]+NB*b, mode->window, overlap, shift, B); + clt_mdct_backward(&mode->mdct, &freq[b], out_syn[c]+NB*b, mode->window, overlap, shift, B, arch); } while (++c<CC); } RESTORE_STACK; @@ -509,7 +510,7 @@ static void celt_decode_lost(CELTDecoder * OPUS_RESTRICT st, int N, int LM) DECODE_BUFFER_SIZE-N+(overlap>>1)); } while (++c<C); - celt_synthesis(mode, X, out_syn, plcLogE, start, effEnd, C, C, 0, LM, st->downsample, 0); + celt_synthesis(mode, X, out_syn, plcLogE, start, effEnd, C, C, 0, LM,...
2015 Apr 28
0
[RFC PATCH v1 2/8] armv7(float): Optimize decode usecase using NE10 library
...dct, &freq[b], out_syn[c]+NB*b, mode->window, overlap, shift, B); + clt_mdct_backward(&mode->mdct, &freq[b], out_syn[c]+NB*b, mode->window, overlap, shift, B, arch); } while (++c<CC); } RESTORE_STACK; @@ -509,7 +510,7 @@ static void celt_decode_lost(CELTDecoder * OPUS_RESTRICT st, int N, int LM) DECODE_BUFFER_SIZE-N+(overlap>>1)); } while (++c<C); - celt_synthesis(mode, X, out_syn, plcLogE, start, effEnd, C, C, 0, LM, st->downsample, 0); + celt_synthesis(mode, X, out_syn, plcLogE, start, effEnd, C, C, 0, LM,...
2015 Mar 04
1
[RFC PATCH v1] Decode(float) optimize using libNe10
Hello All, I extended the libNE10 optimizations for float towards mdct_backwards/opus_ifft. I am able to get about 14.26% improvement for Decode use case now on my Beaglebone Black. Please see [1] for measurements. Questions 1. Since this patch needs to go in after Encode [2] patch) should I submit this as patch series? 2. Since Jonathan Lennox posted intrinsics cleanup [3] patch, should
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
2009 Jan 14
0
[PATCH] Moved the application of the pitch gain to (un)quant_bands(). This doesn't change anything to the codec, but will make the next changes easier.
..._bands(st->mode, X, P, NULL, has_pitch, gains, bandE, stereo_mode, pulses, shortBlocks, has_fold, nbCompressedBytes*8, &enc); /* Re-synthesis of the coded audio if required */ if (st->pitch_available>0 || optional_synthesis!=NULL) @@ -1034,14 +1033,13 @@ int celt_decode_float(CELTDecoder * restrict st, unsigned char *data, int len, c compute_band_energies(st->mode, freq, bandEp); normalise_bands(st->mode, freq, P, bandEp); /* Apply pitch gains */ - pitch_quant_bands(st->mode, P, gains); } else { for (i=0;i<C*N;i++) P[i] =...
2011 Mar 03
0
[PATCH] Eliminate the ec_int32 and ec_uint32 typedefs.
...f_decode(int start, int end, int isTransient, int *tf_res, int LM, int tf_select_rsv; int tf_changed; int logp; - ec_uint32 budget; - ec_uint32 tell; + celt_uint32 budget; + celt_uint32 tell; budget = dec->storage*8; tell = ec_tell(dec); @@ -1810,7 +1810,7 @@ struct CELTDecoder { /* Everything beyond this point gets cleared on a reset */ #define DECODER_RESET_START rng - ec_uint32 rng; + celt_uint32 rng; int last_pitch_index; int loss_count; int postfilter_period; diff --git a/libcelt/cwrs.c b/libcelt/cwrs.c index 40dcc55..21d278f 100644 --- a/libc...
2015 Mar 13
1
[RFC PATCH v3] Intrinsics/RTCD related fixes. Mostly x86.
..._filter_const_c(y, x, T, N, g10, g11, g12)) +#endif void init_caps(const CELTMode *m,int *cap,int LM,int C); diff --git a/celt/celt_decoder.c b/celt/celt_decoder.c index 304f334..505a6ef 100644 --- a/celt/celt_decoder.c +++ b/celt/celt_decoder.c @@ -699,7 +699,7 @@ static void celt_decode_lost(CELTDecoder * OPUS_RESTRICT st, int N, int LM) comb_filter(etmp, buf+DECODE_BUFFER_SIZE, st->postfilter_period, st->postfilter_period, overlap, -st->postfilter_gain, -st->postfilter_gain, - st->postfilter_tapset, st->postfilter_tapset, NUL...
2015 Mar 12
1
[RFC PATCHv2] Intrinsics/RTCD related fixes. Mostly x86.
..._filter_const_c(y, x, T, N, g10, g11, g12)) +#endif void init_caps(const CELTMode *m,int *cap,int LM,int C); diff --git a/celt/celt_decoder.c b/celt/celt_decoder.c index 304f334..505a6ef 100644 --- a/celt/celt_decoder.c +++ b/celt/celt_decoder.c @@ -699,7 +699,7 @@ static void celt_decode_lost(CELTDecoder * OPUS_RESTRICT st, int N, int LM) comb_filter(etmp, buf+DECODE_BUFFER_SIZE, st->postfilter_period, st->postfilter_period, overlap, -st->postfilter_gain, -st->postfilter_gain, - st->postfilter_tapset, st->postfilter_tapset, NUL...
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
2015 Mar 18
5
[RFC PATCH v1 0/4] Enable aarch64 intrinsics/Ne10
Hi All, Since I continue to base my work on top of Jonathan's patch, and my previous Ne10 fft/ifft/mdct_forward/backward patches, I thought it would be better to just post all new patches as a patch series. Please let me know if anyone disagrees with this approach. You can see wip branch of all latest patches at https://git.linaro.org/people/viswanath.puttagunta/opus.git Branch:
2015 Mar 31
6
[RFC PATCH v1 0/5] aarch64: celt_pitch_xcorr: Fixed point series
Hi Timothy, As I mentioned earlier [1], I now fixed compile issues with fixed point and resubmitting the patch. I also have new patch that does intrinsics optimizations for celt_pitch_xcorr targetting aarch64. You can find my latest work-in-progress branch at [2] For reference, you can use the Ne10 pre-built libraries at [3] Note that I am working with Phil at ARM to get my patch at [4]
2015 Mar 02
13
Patch cleaning up Opus x86 intrinsics configury
The attached patch cleans up Opus's x86 intrinsics configury. It: * Makes ?enable-intrinsics work with clang and other non-GCC compilers * Enables RTCD for the floating-point-mode SSE code in Celt. * Disables use of RTCD in cases where the compiler targets an instruction set by default. * Enables the SSE4.1 Silk optimizations that apply to the common parts of Silk when Opus is built in
2015 May 08
8
[RFC PATCH v2]: Ne10 fft fixed and previous 0/8]
Hi All, As per Timothy's suggestion, disabling mdct_forward for fixed point. Only effects armv7,armv8: Extend fixed fft NE10 optimizations to mdct Rest of patches are same as in [1] For reference, latest wip code for opus is at [2] Still working with NE10 team at ARM to get corner cases of mdct_forward. Will update with another patch when issue in NE10 gets fixed. Regards, Vish [1]: