Displaying 19 results from an estimated 19 matches for "max_period".
2011 Mar 22
1
MAX_PERIOD
Hi,
In order to fit the decoder in memory in our embedded architecture we set
the MAX_PERIOD #define equal to the frame size. This doesn't affect the
code bit accuracy in normal decoding. The #define it's used
celt_decode_lost function though. Is it possible to get celt_decode_lost
to work with a value different from the default?
Thanks
Riccardo
Riccardo Micci
Senior DSP En...
2009 Oct 23
1
Implications of reducing MAX_PERIOD
...t;-//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>
<span
style="font-size: 10pt; font-family: "Arial"...
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 28
0
[PATCH] Optimize silk_LPC_analysis_filter() for ARM NEON
...AGE.
+*/
+
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
+#include <stdio.h>
+#include <string.h>
+
+#include "modes.h"
+#include "SigProc_FIX.h"
+
+#define MAX_ORDER 32
+
+static int test_silk_LPC_analysis_filter(int arch)
+{
+ opus_int16 out_org[MAX_PERIOD], out_opt[MAX_PERIOD]; /* O Output signal */
+ opus_int16 in[MAX_PERIOD + MAX_ORDER]; /* I Input signal */
+ opus_int16 B[MAX_ORDER]; /* I MA predictio...
2010 Jan 27
1
Some additions to CELT_RESET_STATE for 0.7.1
...>fold_decision = 1;
st->tonal_average = QCONST16(1.,8);
st->gain_prod = 0;
st->vbr_reservoir = 0;
st->vbr_drift = 0;
st->vbr_offset = 0;
st->vbr_count = 0;
st->xmem = 0;
CELT_MEMSET(st->pitch_buf, 0, (MAX_PERIOD>>1)+2);
and the following lines should be added to CELT_RESET_STATE in
celt_decoder_ctl:
#ifdef NEW_PLC
CELT_MEMSET(st->lpc, 0, C*LPC_ORDER);
#endif
BTW 0.7.1 is working very nicely for me.
Cheers,
John Ridges
2016 Jul 14
0
[PATCH 2/5] Optimize fixed-point celt_fir_c() for ARM NEON
...OM_MODES
+# define CUSTOM_MODES
+#endif
+
+#include <stdio.h>
+#include <string.h>
+
+#ifndef CELT_C
+# define CELT_C
+#endif
+#include "celt_lpc.h"
+#include "modes.h"
+
+#ifdef FIXED_POINT
+
+#define MAX_ORDER 32
+
+static int test_fir(int arch)
+{
+ opus_val16 x[MAX_PERIOD+MAX_ORDER];
+ opus_val16 num[MAX_ORDER];
+ opus_val16 yorg[MAX_PERIOD], yopt[MAX_PERIOD];
+ int N, ord;
+ unsigned int i;
+
+ printf("%50s", "celt_fir() ...");
+ for(ord=0;ord<=MAX_ORDER;ord++)
+ {
+ for(N=ord;N<=MAX_PERIOD;N++) /* N is larger than or eq...
2013 May 23
2
ASM runtime detection and optimizations
...6,7 +499,7 @@ static void celt_decode_lost(CELTDecoder * OPUS_RESTRICT st, opus_val16 * OPUS_R
ROUND16(buf[DECODE_BUFFER_SIZE-exc_length-1-i], SIG_SHIFT);
}
/* Compute the excitation for exc_length samples before the loss. */
- celt_fir(exc+MAX_PERIOD-exc_length, lpc+c*LPC_ORDER,
+ celt_fir[st->arch&OPUS_ARCHMASK](exc+MAX_PERIOD-exc_length, lpc+c*LPC_ORDER,
exc+MAX_PERIOD-exc_length, exc_length, LPC_ORDER, lpc_mem);
}
diff --git a/celt/celt_encoder.c b/celt/celt_encoder.c
index 26e6ebb..08fddd0 10...
2016 Jul 01
1
silk_warped_autocorrelation_FIX() NEON optimization
Hi all,
I'm sending patch "Optimize silk_warped_autocorrelation_FIX() for ARM NEON" in an separate email.
It is based on Tim’s aarch64v8 branch https://git.xiph.org/?p=users/tterribe/opus.git;a=shortlog;h=refs/heads/aarch64v8
Thanks for your comments.
Linfeng
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
2009 Jan 14
0
[PATCH] Pitch now quantised at the band level, got rid of all the VQ code.
...}
if (has_pitch)
{
- unquant_pitch(id, gains, st->mode->nbPBands);
ec_enc_bits(&enc, has_pitch, 1); /* Pitch flag */
ec_enc_bits(&enc, has_fold, 1); /* Folding flag */
- ec_enc_bits(&enc, id, 7);
ec_enc_uint(&enc, pitch_index, MAX_PERIOD-(2*N-2*N4));
} else {
if (!shortBlocks)
@@ -618,6 +613,8 @@ int celt_encode_float(CELTEncoder * restrict st, const celt_sig_t * pcm, celt_si
for (i=0;i<st->mode->nbEBands;i++)
offsets[i] = 0;
bits = nbCompressedBytes*8 - ec_enc_tell(&enc, 0) - 1;
+ if (has_p...
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.
....61aa1fb 100644
--- a/libcelt/celt.c
+++ b/libcelt/celt.c
@@ -575,7 +575,6 @@ int celt_encode_float(CELTEncoder * restrict st, const celt_sig_t * pcm, celt_si
ec_enc_bits(&enc, has_fold, 1); /* Folding flag */
ec_enc_bits(&enc, id, 7);
ec_enc_uint(&enc, pitch_index, MAX_PERIOD-(2*N-2*N4));
- pitch_quant_bands(st->mode, P, gains);
} else {
if (!shortBlocks)
{
@@ -626,7 +625,7 @@ int celt_encode_float(CELTEncoder * restrict st, const celt_sig_t * pcm, celt_si
quant_fine_energy(st->mode, bandE, st->oldBandE, error, fine_quant, &enc);...
2015 Mar 04
0
[RFC PATCH v1] armv7(float): Optimize decode usecase using NE10 library
...ILTER_MINPERIOD);
diff --git a/celt/celt_encoder.c b/celt/celt_encoder.c
index 7a2c71b..5f48638 100644
--- a/celt/celt_encoder.c
+++ b/celt/celt_encoder.c
@@ -2072,7 +2072,8 @@ int celt_encode_with_ec(CELTEncoder * OPUS_RESTRICT st, const opus_val16 * pcm,
out_mem[c] = st->syn_mem[c]+2*MAX_PERIOD-N;
} while (++c<CC);
- celt_synthesis(mode, X, out_mem, oldBandE, start, effEnd, C, CC, isTransient, LM, st->upsample, silence);
+ celt_synthesis(mode, X, out_mem, oldBandE, start, effEnd,
+ C, CC, isTransient, LM, st->upsample, silence, st->arch);...
2015 Apr 28
0
[RFC PATCH v1 2/8] armv7(float): Optimize decode usecase using NE10 library
...ILTER_MINPERIOD);
diff --git a/celt/celt_encoder.c b/celt/celt_encoder.c
index 7a2c71b..5f48638 100644
--- a/celt/celt_encoder.c
+++ b/celt/celt_encoder.c
@@ -2072,7 +2072,8 @@ int celt_encode_with_ec(CELTEncoder * OPUS_RESTRICT st, const opus_val16 * pcm,
out_mem[c] = st->syn_mem[c]+2*MAX_PERIOD-N;
} while (++c<CC);
- celt_synthesis(mode, X, out_mem, oldBandE, start, effEnd, C, CC, isTransient, LM, st->upsample, silence);
+ celt_synthesis(mode, X, out_mem, oldBandE, start, effEnd,
+ C, CC, isTransient, LM, st->upsample, silence, st->arch);...
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
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 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]:
2015 May 15
11
[RFC V3 0/8] Ne10 fft fixed and previous
Hi All,
Changes from RFC v2 [1]
armv7,armv8: Extend fixed fft NE10 optimizations to mdct
- Overflow issue fixed by Phil at ARM. Ne10 wip at [2]. Should be upstream soon.
- So, re-enabled using fixed fft for mdct_forward which was disabled in RFCv2
armv7,armv8: Optimize fixed point fft using NE10 library
- Thanks to Jonathan Lennox, fixed some build fixes on iOS and some copy-paste errors
Rest
2015 Apr 28
10
[RFC PATCH v1 0/8] Ne10 fft fixed and previous
Hello Timothy / Jean-Marc / opus-dev,
This patch series is follow up on work I posted on [1].
In addition to what was posted on [1], this patch series mainly
integrates Fixed point FFT implementations in NE10 library into opus.
You can view my opus wip code at [2].
Note that while I found some issues both with the NE10 library(fixed fft)
and with Linaro toolchain (armv8 intrinsics), the work