Displaying 20 results from an estimated 224 matches for "mdct".
2003 May 31
4
faster mdct's
Hello Vorbis folks,
I'm one of the FFTW authors (www.fftw.org), and a few days ago I was
playing with our codelet generator for fun and modified it to spit out
hard-coded MDCTs of small sizes. The code (at
jdj.mit.edu/~stevenj/mdct_128nr.c) for 256 samples (128 outputs) seems to
be almost twice as fast as the Vorbis MDCT code for that size on my 2.2GHz
P-IV (gcc 3.2.2 and flags "-O1 -mcpu=pentium4 -fomit-frame-pointer
-fstrict-aliasing -malign-double"), in sin...
2014 Feb 21
2
Make check failure on clone from 31 January
I tracked down the bug to an incorrect use of restrict.
I would not consider this a compiler bug: we are lying to the optimizer by
telling it that a pointer is restrict when in fact it isn't.
This can be fixed like so:
diff --git a/celt/mdct.c b/celt/mdct.c
index 1634e8e..fa5098c 100644
--- a/celt/mdct.c
+++ b/celt/mdct.c
@@ -276,8 +276,8 @@ void clt_mdct_backward(const mdct_lookup *l,
kiss_fft_scalar *in, kiss_fft_scala
/* Post-rotate and de-shuffle from both ends of the buffer at once to
make
it in-place. */
{
- k...
2017 Apr 11
2
MDCT implementation and his overlapped relationship
Dear all
I'm working on the implementation of the MDCT for the processor
ARM-Cortex-M4 I'm trying to replicate the behavior of the MDCT for several
overlapped values however I realized that current implementation of the
MDCT is very close to the theory only in case in which we have and overlap
exactly equal to N/2 where N is the size of the input...
2014 Feb 24
1
Make check failure on clone from 31 January
After a few experiments, I found that both alternatives are very similar, and 2~5% slower compared to the following:
diff --git a/celt/mdct.c b/celt/mdct.c
index 1634e8e..e490c3b 100644
--- a/celt/mdct.c
+++ b/celt/mdct.c
@@ -277,7 +277,7 @@ void clt_mdct_backward(const mdct_lookup *l, kiss_fft_scalar *in, kiss_fft_scala
it in-place. */
{
kiss_fft_scalar * OPUS_RESTRICT yp0 = out+(overlap>>1);
- kiss_fft_sc...
2010 Jun 02
1
C55xx Linking Error
...pecific optimizations in my config.h file per this
<http://lists.xiph.org/pipermail/celt-dev/2008-December/000033.html> post.
However, I am getting several "undefined symbol" linking errors that do not
make sense to me. According to the error message, these all appear to be
part of mdct.obj. But looking at the code in mdct.c, there is no reference
to "alloca". Nor have I defined "USE_ALLOCA" since the TI complier does not
support it. Can anyone spot an error on my part, or is this yet another
quirk of the CCS4 suite (there have been many).
Here's a list...
2000 Nov 06
1
Problems compiling with --with-ogg-prefix=xxx
...e --with-ogg-prefix=/home/warren/local
make
I get the following error during the make:
gcc -DPACKAGE=\"libvorbis\" -DVERSION=\"1.0.0\" -DHAVE_ALLOCA_H=1
-DHAVE_ALLOCA=1 -I. -I. -I../include -O20 -ffast-math -mno-ieee-fp
-D_REENTRANT -fsigned-char -DUSE_MEMORY_H -Wp,-MD,.deps/mdct.pp -c -fPIC
-DPIC mdct.c -o .libs/mdct.lo
In file included from mdct.h:22,
from mdct.c:40:
../include/vorbis/codec.h:27: ogg/ogg.h: No such file or directory
In file included from mdct.c:41:
os.h:22: ogg/os_types.h: No such file or directory
I have tracked down the problem to li...
2002 Mar 19
1
mdct as hardware
Hi vorbis-dev!
I'm working with Pattara in the oggonachip project, and wondering about
the implementation of mdct.c as hardware. According your recomendations
about using the floating point version, I would say, we have to implement
the integerized
version of mdct as a core, and use the fpu only to round the input
values. By doing
that, you think the result would be still acceptable?
How feasible is adapt one...
2013 Jul 08
2
Request for MDCT theoretical reference
Dear Experts,
Can anybody please direct me to proper MDCT theory reference which will
help me understand the code better?
I'm trying to optimize MDCT for a embedded platform. So need good
understanding about theory behind & implementation.
Thanks in advance for your time.
Warm Regards,
Mahantesh
-------------- next part --------------
An HTML a...
2000 Oct 20
2
mdct question
Hi,
Can someone tell me which MDCT and invMDCT equation uses? I implemented the
invMDCT one given in
eusipco.corrected.ps file (handed out by Monty way back) and it produces
different time domain samples.
I tried both the FFT method and the slow way directly from the equation and
couldn't reproduce the results
from the origina...
2005 Jan 26
2
Butterflies in mdct.c
In mdct.c there's some functions including some-point butterfly. In 32-point and 16-point there are calling of smaller-point function everytime twice on each half of data. When I looked on it I found that's just linear algebra. So it can be rewritten to matrix multiplication. Some one can say: ther...
2004 Jun 02
4
Transient coding: AAC vs. Vorbis
...AC can encode castanets with much less pre-echo at
SS>> ABR 128 kbps, then hopefully there will be an imaginative
SS>> (and non-patented) way of doing this in Vorbis without the
SS>> bitrate inflation of GTune and QKTune.
[Segher Boessenkool]
SB> Use some different transform? MDCT isn't the best audio transform
SB> ever invented, esp. not for non-steady waveforms.
Steven is talking about Vorbis, Segher.
Vorbis makes use of the MDCT.
<p>Let's see... Vorbis I versus AAC in transient coding...
(simplified ASCII art following)
audio wave ('-'=low vol...
2003 Jul 12
1
mdct query
Hi,
I have a doubt regarding MDCT window size for OggVorbis decoder.
Can the MDCT window size vary from 64 samples to 8192 samples?
Specification says that "legal frame sizes are powers of two from
64 to 8192 samples" .
Is this same as MDCT window size?
Please help me out..
Regards,
shikha
<p>--- >8 ----
List...
2000 Aug 22
1
optimization progress
Hi all,
The decoder is down 30% execution time, identical bit output.
Didn't get the mdct yet; 1024 point mdct is a bit much to brute-force,
and I'm not going to hand-unroll the whole thing either (the machine-
unrolled version produced a 1.5M executable; understandably, it wasn't
very fast. Still waiting for processors with 1.5M L1 code caches ;-)
Slowest parts now are:
-- md...
2017 May 03
0
MDCT implementation and his overlapped relationship
...o much for your answer.
>
> On Thu, Apr 13, 2017 at 8:59 AM, Jean-Marc Valin <jmvalin at jmvalin.ca>
> wrote:
>
>> Hi Diego,
>>
>> You might find figure 3 or this paper useful:
>> https://jmvalin.ca/papers/aes135_opus_celt.pdf
>>
>> It shows the MDCT window for a 5 ms frame, but the (non-zero) overlap is
>> always 120 samples regarless of the frame size. You can either see it as
>> partial overlap, or as a full-overlap with a window that has zeros on
>> the sides.
>>
>> Cheers,
>>
>> Jean-Marc
&...
1999 Aug 15
1
Vorbis transform description
...be in
another mail.
Vorbis is a hybrid transform domain general purpose audio encoder,
like MPEG in some respects (it is rooted in much of the same basic
theory). For the most part, the similarity comes from the fact that
(like nearly all modern audio compressions), Vorbis codes primarily in
the MDCT domain, using nominal 50% overlap with a y=sin(2PI*sin^2(x))
window (the window is a bit unique). The current Vorbis code and
working spec support switching between two block sizes which must
result in power-of-two sized windowed blocks. From here, the details
diverge.
(Sidetrack note that will m...
2002 Mar 26
2
size of vectors to be fed to MDCT
Hi,
as we are trying to implement MDCT in hardware, we are caring now about
the "n" (size of input and output vectors to and from MDCT).
As I have looked in the code, this "n" is chosen from the Ogg/Vorbis
stream data in info.c:_vorbis_unpack_info() which means this "n" can vary
aribitrarily (as the power...
2015 May 15
0
[RFC V3 7/8] armv7, armv8: Optimize fixed point fft using NE10 library
...lt/arm/celt_ne10_fft.c | 98 +++++----
celt/arm/fft_arm.h | 26 ++-
celt/dump_modes/Makefile | 3 +-
celt/dump_modes/dump_modes_arch.h | 6 +
celt/dump_modes/dump_modes_arm_ne10.c | 43 ++--
celt/kiss_fft.h | 4 +-
celt/mdct.h | 2 +-
celt/static_modes_fixed.h | 25 +++
celt/static_modes_fixed_arm_ne10.h | 388 ++++++++++++++++++++++++++++++++++
celt/tests/test_unit_dft.c | 6 +-
celt/tests/test_unit_mdct.c | 4 +-
celt_headers.mk...
2003 Mar 12
2
encoder block diagram
...cess (as I understood it)
WINDOWING
- Vorbis uses overlapping windows with sizes between 64 and 8192 Samples (powers of two)
- short blocks and one long blocks are used (short blocks must be smaller or equal to long blocks), can be set to any allowed size
- selected window size depends on bitrate
MDCT
- transforms audio data to frequency domain
PSYCHOACOUSTIC MODEL
- Vorbis uses its own psychoacoustic model
- FFT for tonal analys and MDCT for noise analysis
Floor
- a psychoacoustic floor is created from the data, given from the
psychacoustic model
- the floor is a spectral envelope and represe...
2002 Aug 21
1
MDCT input and output data blocks
Hi,
I'm trying to determine how the frequency data that is passed to the
MDCT, and output time domain data obtained from the MDCT, is changed
when setting #define MDCT_INTEGERIZED
For instance, the trig array, for a size 256 window begins
1.000000
0.000000
0.998795
-0.049068
0.995185
-0.098017
if INTEGERIZED is set, then it begins
16384
0
16364
-803
16305
-1605
which is s...
2003 Jun 03
1
libvorbis install prob
I'm haivng trouble compiling the libvoribis source. I'm getting errors I don't
understand, could somebody please look at the below and tell me if they have
any ideas??
<p>make[2]: Entering directory `/root/libvorbis-1.0/lib'
source='mdct.c' object='mdct.lo' libtool=yes \
depfile='.deps/mdct.Plo' tmpdepfile='.deps/mdct.TPlo' \
depmode=gcc3 /bin/sh ../depcomp \
/bin/sh ../libtool --mode=compile gcc -DPACKAGE_NAME=\"\"
-DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STR...