search for: split_cb_search_shape_sign

Displaying 20 results from an estimated 29 matches for "split_cb_search_shape_sign".

2006 Feb 22
1
Some aditional details about split_cb_search_shape_sign
Hi all. I'm starting to study how speex works because I would like to understand in deep how a CELP coder/decoder works. I have some difficult understanding the vector quantization performed in the split_cb_search_shape_sign function. It's a bit hard to understand. Could you please explain me the algorithm step by step? I'm indagating the 5950 bps narrowband. Thank you. Gio.
2005 May 29
0
cpu utilization across speex versions
...usage not due to Speex at only about 0.02% at most. And no, I wasn't trying to optimize this 0.02%! :) Anyway, here are the results with just the top functions listed. Note that Speex distributes its CPU load across many functions... Speex 1.0.1: With preprocessor: (overall 2.51%) 0.43% split_cb_search_shape_sign 0.26% speex_preprocess 0.26% fir_mem_up 0.23% filter_mem2 0.23% vq_nbest 0.18% open_loop_nbest_pitch 0.12% qmf_decomp No preprocessor: (overall 2.12%) 0.43% split_cb_search_shape_sign 0.23% fir_mem_up 0.22% filter_mem2 0.21% vq_nbest 0.18% open_loop_nbest_pitch 0.11% qmf_decomp Speex 1.0.7: With...
2009 Jan 27
1
VQ: elucidations!
Dear Valin, Please, can you explain me the mean of the routines' parameters: 1. void vq_nbest(); 2. static void compute_weighted_codebook(); 3. static inline void target_update(); 4. void split_cb_search_shape_sign(); 5. void split_cb_shape_sign_unquant(); 6. void noise_codebook_quant(); 7. void noise_codebook_unquant(); and what they do briefly??? It's very difficult understand a code written by another person! I thank you in advance. ----------------------------------------------------------------...
2009 Jun 15
1
Performance and Optimization
...EC in order to not overload the cpu. Am I correct to assume that there are massive floating point calculations happening? I did a quick profile with CodeAnalyst and identified the most expensive functions as (in order): CPU Clocks, Function 4657, kiss_fft_stride 4456, speex_echo_cancellation 2494, split_cb_search_shape_sign 1490, fir_mem16 1419, speex_preprocess_run I'm looking for advise on how to boost the performance with as little code rewrite as possible. The architecture for release build will be SSE/SSE2 capable. 1) Compiler optimizations: Recommended options? 2) SIMD. Is Speex written to take advantage of...
2004 Aug 06
1
Compile issue with gcc3.2
...2.95.3 with no problems. When using gcc 3.2 I get the following output: gcc -DHAVE_DLFCN_H=1 -DHAVE_SYS_SOUNDCARD_H=1 -DHAVE_LIBOGG=1 -DHAVE_LIBM=1 -DVERSION=\"1.0beta1\" -I. -I. -march=pentium4 -mcpu=pentium4 -O3 -pipe -c high_lsp_tables.c -o high_lsp_tables.o cb_search.c: In function `split_cb_search_shape_sign': cb_search.c:500: unable to find a register to spill in class `FLOAT_REGS' cb_search.c:500: this is the insn: (insn 716 713 717 (set (reg:SF 8 st(0) [214]) (subreg:SF (reg/v:DI 22 rxmm1 [186]) 0)) 90 {*movsf_1} (nil) (nil)) cb_search.c:500: confused by earlier errors, bailing o...
2006 Sep 18
2
Exc CB Search very little Question
Hello, just to make sure I haven't gotten anything wrong: In cb_search.c (function split_cb_search_shape_sign) after all that searching nb_subvect CB entries are being written into the stream. These are all taken from the same codebook. If I wanted to, I could just change their order, couldn't I? Because important is only the linear combination of them all together, which I keep invariant by just swit...
2009 Jun 18
2
Performance and Optimization
...e are massive floating point calculations > > happening? > > I did a quick profile with CodeAnalyst and identified the most expensive > > functions as (in order): > > CPU Clocks, Function > > 4657, kiss_fft_stride > > 4456, speex_echo_cancellation > > 2494, split_cb_search_shape_sign > > 1490, fir_mem16 > > 1419, speex_preprocess_run > > I'm looking for advise on how to boost the performance with as little > code > > rewrite as possible. The architecture for release build will be SSE/SSE2 > > capable. > > 1) Compiler optimizations: Rec...
2006 Oct 04
2
Crash in cb_search.c, line 414
...t from a user about my application crashing on him. After a bit of trouble, I got him to report back the module and offset it crashed at (win32). I always retain a copy of my symbol files for my release builds, so tracking down the crash address leads to: (gdb) list *0x6d5c2213 0x6d5c2213 is in split_cb_search_shape_sign (cb_search.c:414). 409 break; 410 } 411 for (j=0;j<N;j++) 412 { 413 /*previous target (we don't care what happened before*/ 414 for (m=(i+1)*subvect_size;m<nsf;m++) 415 nt[j][m]=ot[best_ntarget[j]][m];...
2006 Sep 11
2
Distances in codebook search
Hello, I recently measured the distances ndist[0][nb_subvect-1] which are used to make the decicion, which codebook entries are to be used in libspeex/cb_search.c (function split_cb_search_shape_sign). For that I took a couple of audio books (all german speech), downsampled the tracks to 8kHz and encoded them with "speexenc -n --bitrate 15000 ..." (I used svn revision 11825). Usually, the distances are in average 7.544420 and the deviation of the distances is around 2.139503. But t...
2006 Sep 19
2
Exc CB Search very little Question
...lowing: 1. What is the point in multiplying a codebook index with some number ant adding a loop variable to it as done in the exc unquant function. for (j=0;j<subvect_size;j++) exc[subvect_size*i+j]+=s*0.03125*shape_cb[ind[i]*subvect_size+j]; 2. How does the CB search function split_cb_search_shape_sign work? I know the parameter N defines the number of candidates for each of the nb_subvect CB line numbers which are later on written into the stream. But especially, how the best_ntarget list is being updated, I am a little clueless. Regards, Bj?rn PS: for me personally, I'd like to know how...
2007 Aug 06
2
11kbps narrowband on a 24bit DSP
...bps medium bit-rate mode */ static const SpeexSubmode nb_submode4 = { -1, 0, 1, 0, /*LSP quantization*/ lsp_quant_lbr, lsp_unquant_lbr, /*Pitch quantization*/ pitch_search_3tap, pitch_unquant_3tap, &ltp_params_med, /*Innovation quantization*/ split_cb_search_shape_sign, split_cb_shape_sign_unquant, &split_cb_nb_med, QCONST16(.45,15), 220 }; /* Parameters for Long-Term Prediction (LTP)*/ static const ltp_params ltp_params_lbr = { gain_cdbk_lbr, 5, 7 }; /* Split-VQ innovation parameters narrowband */ static const split_cb...
2006 Sep 20
2
Denoiser level and AEC problem
...lowing: 1. What is the point in multiplying a codebook index with some number ant adding a loop variable to it as done in the exc unquant function. for (j=0;j<subvect_size;j++) exc[subvect_size*i+j]+=s*0.03125*shape_cb[ind[i]*subvect_size+j]; 2. How does the CB search function split_cb_search_shape_sign work? I know the parameter N defines the number of candidates for each of the nb_subvect CB line numbers which are later on written into the stream. But especially, how the best_ntarget list is being updated, I am a little clueless. Regards, Bjvrn PS: for me personally, I'd like to know how...
2006 Sep 21
1
Denoiser level and AEC problem
...he point in multiplying a codebook index with some number > ant adding a loop variable to it as done in the exc unquant function. > for (j=0;j<subvect_size;j++) > exc[subvect_size*i+j]+=s*0.03125*shape_cb[ind[i]*subvect_size+j]; > 2. How does the CB search function split_cb_search_shape_sign work? I > know the parameter N defines the number of candidates for each of the > nb_subvect CB line numbers which are later on written into the stream. > But especially, how the best_ntarget list is being updated, I am a > little clueless. > > Regards, > > Bjvrn > &gt...
2005 Mar 07
0
Questions about "Complexity"
...l with "Complexity". I know that the CPU requirements for complexity 10 is about 5 times higher than for complexity 1. I have verified it while performing my experiments. Complexity is being actively used in the following functions in the libspeex library for Win32: File: cb_search.c split_cb_search_shape_sign -----vq_nbest_sign -----vq_nbest File: ltp.c Function: pitch_search_3tap -----open_loop_nbest_pitch 1) What is "Complexity" used for? What is its role in the codebook search algorithm besides allocating the stack sizes? 2) How does "Complexity" effect the search through the c...
2006 Jul 23
0
Double codebook
...just an internal parameter that describes how the encoding is done at different bit-rate. In practice, it's only enabled at very high bit-rate. > The second thing you immediately see when using none of these fancy > options is that the codebook entries found in > libspeex/cb_search.c::split_cb_search_shape_sign and written into the > stream by speex_bits_pack are (in one subframe) very often the same > (I've seen the numbers 63, 45 and 171 being written into the stream very > often I do expect some to be more common than others, but I don't think it's only a handful of entries that g...
2006 Sep 11
0
Distances in codebook search
...n Thalheim Sent: Monday, September 11, 2006 4:43 AM To: speex-dev@xiph.org Subject: [Speex-dev] Distances in codebook search Hello, I recently measured the distances ndist[0][nb_subvect-1] which are used to make the decicion, which codebook entries are to be used in libspeex/cb_search.c (function split_cb_search_shape_sign). For that I took a couple of audio books (all german speech), downsampled the tracks to 8kHz and encoded them with "speexenc -n --bitrate 15000 ..." (I used svn revision 11825). Usually, the distances are in average 7.544420 and the deviation of the distances is around 2.139503. But t...
2006 Sep 19
0
Exc CB Search very little Question
...ion. > for (j=0;j<subvect_size;j++) > exc[subvect_size*i+j]+=s*0.03125*shape_cb[ind[i]*subvect_size+j]; That's just how you represent a 2D array in C: the codebook has shape_cb_size entries and subvect_size samples per entry. > 2. How does the CB search function split_cb_search_shape_sign work? I > know the parameter N defines the number of candidates for each of the > nb_subvect CB line numbers which are later on written into the stream. > But especially, how the best_ntarget list is being updated, I am a > little clueless. Hard to explain simply. It's a fundamenta...
2006 Oct 04
0
Crash in cb_search.c, line 414
...ication crashing on him. > After a bit of trouble, I got him to report back the module and offset > it crashed at (win32). I always retain a copy of my symbol files for my > release builds, so tracking down the crash address leads to: > > (gdb) list *0x6d5c2213 > 0x6d5c2213 is in split_cb_search_shape_sign (cb_search.c:414). > 409 break; > 410 } > 411 for (j=0;j<N;j++) > 412 { > 413 /*previous target (we don't care what happened before*/ > 414 for (m=(i+1)*subvect_size;m<nsf;m++) > 415...
2009 Jan 25
1
Speex: getting started
Hello! I'm an Italian student in computer engineering (University "Federico II" of Naples) and I have to write my graduation thesis in the field of signal processing. My teacher (Prof. Giovanni Poggi http://www.diet.unina.it/giovanni.poggi/) has published a research about multiple description vector quantizers by means of the self organizing maps, applying his idea to the images and
2009 Jun 15
0
Performance and Optimization
...I > correct to assume that there are massive floating point calculations > happening? > I did a quick profile with CodeAnalyst and identified the most expensive > functions as (in order): > CPU Clocks, Function > 4657, kiss_fft_stride > 4456, speex_echo_cancellation > 2494, split_cb_search_shape_sign > 1490, fir_mem16 > 1419, speex_preprocess_run > I'm looking for advise on how to boost the performance with as little code > rewrite as possible. The architecture for release build will be SSE/SSE2 > capable. > 1) Compiler optimizations: Recommended options? > 2) SIMD. Is...