Age | Commit message (Collapse) | Author |
|
Should no longer cause discontinuities in the noise after 5 packets
|
|
Previously silence would cause the divide approximation on 0/0 to return a
very large value, which would be interpreted as a transient
|
|
|
|
Gradual downmix now happens in the 24 kb/s to 32 kb/s range
|
|
Turns out that even low bitrates benefit from VBR
|
|
|
|
|
|
|
|
|
|
|
|
Also remove most <preamble>/<postamble> usage for expository text,
as most places center the result, which looks ugly (only local
xml2rfc HTML output does not center: tools.ietf.org HTML output
still does, as does the .txt version).
|
|
To avoid confusion with an RFC 6716 encoder/decoder.
No part of this document is intended to update RFC 6716.
|
|
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
|
|
|
|
I *think* all we need to do is document this and the RFC editors
will take care of it.
|
|
We mention this in the description of Channel Mapping Family 0.
Might as well link to RFC 7587.
Review comment from Mo Zanaty.
|
|
This improves readability in the xml2rfc html output, but
generates Markdown-style *bold* in the txt output, and
more importantly in the nroff-like html output of the
tools.ietf.org toolchain, which Mo Zanaty and some in
IRC objected to.
|
|
Based on Mo Zanaty's review comments.
|
|
Response to comments from Mo Zanaty. Using "muxer/demuxer"
really isn't less ambiguous than "encoder/decoder" but does
help distinguish between this draft and a 'codec encoder/decoder'
described by the Opus RFC.
|
|
Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
|
|
Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
|
|
|
|
|
|
Fixes build failure on platforms with MAY_HAVE_SSE4_1 (but not PRESUME_SSE4_1) with --enable-intrinsics.
|
|
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
|
|
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
|
|
These were causing "syntax error near unexpected token `fi'" in the
generated configure on some systems, because they produced an
else
fi
with no commands between the two.
|
|
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
|
|
Some of the fields present in NE10's float state struct are not
present in the fixed-point version, but we were generating
initializers for them anyway.
Also, the float modes were not up-to-date with the output of
dump_modes.
|
|
Extends usage of NEON optimized fixed-point FFT optimizations
in libNE10 to clt_mdct_forward and clt_mdct_backward.
Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
|
|
Uses NEON optimized fixed point FFT routines in NE10 library.
Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
|
|
Signed-off-by: Viswanath Puttagunta <viswanath.puttagunta@linaro.org>
Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
|
|
Optimize opus decode (float only) use case using ARM NE10.
Mainly effects opus_ifft and ctl_mdct_backward and related
functions.
Work based on previous Encode optimization using ARM NE10
library. See previous commit for details on how to enable
this.
Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
|
|
Optimize opus encode (float only) usecase using ARM NE10
library. Mainly effects opus_fft and ctl_mdct_forward
and related functions.
This optimization can be used for ARM CPUs that have NEON
VFP unit. This patch only enables optimizations for ARMv7.
Official ARM NE10 library page available at
http://projectne10.github.io/Ne10/
To enable this optimization, use
--enable-intrinsics --with-NE10=<install_prefix>
or
--enable-intrinsics --with-NE10-libraries=<NE10_lib_dir> --with-NE10-includes=<NE10_includes_dir>
Compile time checks made during configure process to make sure
optimization option available only when compiler supports NEON
instrinsics.
Runtime checks made to make sure optimized functions only called
on appropriate hardware.
Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
|
|
This library is linked statically with libopus.so, so nothing
changes on an installed system.
This merely simplifies linking in the unit tests.
Based in part on a patch originally by Viswanath Puttagunta
<viswanath.puttagunta@linaro.org>.
|
|
This is needed for the SMALL_DIV_TABLE constants added in commit
ec5d01cbe486.
|
|
Brings MIPS in sync with the ARM/SSE optimizations that added "arch" parameters.
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
|
|
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
|
|
Fix out-of-bounds memory read in multichannel surround analysis
with float input that contains NaNs. Found by afl-fuzz.
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
|
|
|
|
autoreconf looks for ACLOCAL_*FLAGS in Makefile.am and will
pass that on when it invokes aclocal. Furthermore, setting
a local like this doesn't make it available to subcommands,
so the line has no effect.
|
|
This patch lets you pass paths for opus_demo and opus_compare to the
run_vectors.sh script.
The motivation for this was for my aarch64 patches (forthcoming),
which I've been testing under qemu. I want to run an emulated
opus_demo, but a native opus_compare, so the script completes in a
reasonable amount of time.
|
|
be used.
This patch adds a macro abstracting the condition under which the silk
math macros use opus_int64-based calculations rather than opus_int32.
No substantive change, but will make it easier to adjust if additional
such platforms are found in the future.
|
|
so build dependencies are right.
Actually add source code to opus_demo project, and fix its include paths.
|
|
|
|
Enable x86 intrinsics when building in floating-point mode.
Support SSE as an arch value.
Use RTCD to conditionally enable existing floating-point Celt SSE code.
Call functions directly (without RTCD) when their architecture can be presumed.
Use SSE4.1 intrinsics optimized code for Silk even in floating-point mode.
|
|
with appropriate compiler flags. Otherwise, compilers are allowed to take advantage of (e.g.) -msse4.1 to generate code that uses SSE4.1 instructions, even when no SSE4.1 intrinsics are explicitly used in the source.
|
|
|
|
|
|
|