Jean-Marc Valin
b15b30ce6d
Speeds up analysis by getting rid of calls to atan2() and cos()
...
atan2() is replaced by Monty's approximation.
2012-07-13 14:50:36 -04:00
Gregory Maxwell
a85577d345
Rename version flag to exp_wip5 to exp_analysis.
2012-07-13 14:50:36 -04:00
Gregory Maxwell
7d99c2ff00
Add exp_wip5 tag to version string.
2012-07-13 14:50:36 -04:00
Jean-Marc Valin
9265e28370
Reverts the transient_analysis() changes from 4e8b9905
...
This was found to cause a quality regression (e.g. in the velvet sample)
2012-07-13 14:50:36 -04:00
Jean-Marc Valin
19ce448bf8
Fixes issues when downmixing to mono or when encoding below fullband
2012-07-13 14:50:36 -04:00
Jean-Marc Valin
0892c169c6
Tonality and pitch tuning
...
Tuned the tonality estimator to trigger on signals where only part of the
spectrum is tonal. Also tuned the pitch detector not to be confused
by short-term correlation.
2012-07-13 14:50:36 -04:00
Jean-Marc Valin
ac2e623d25
Converting most of the new code to fixed-point (not complete yet)
2012-07-13 14:50:36 -04:00
Jean-Marc Valin
db13c3890f
Fixes some issues discovered with a log sweep
...
- New DC rejection filter that avoids numerical issues
- Higher cap on HF dynalloc
- Proper filter memory for transient detector
- Prevents transient detector from detecting low-freq tones as transients
2012-07-13 14:50:36 -04:00
Jean-Marc Valin
37df5f1df6
Tuning the dynalloc adjustments and checking for LF transients
2012-07-13 14:50:36 -04:00
Jean-Marc Valin
0869829f34
Adds a 3 Hz high-pass filter and boost allocation on leakage
...
Fixes two leakage problems on the wood blocks sample
- Removes DC which causes leakage with no masking
- Detect leakage by comparing short-MDCT energy to long-MDCT energy
and boost allocation for bands with leakage
2012-07-13 14:50:35 -04:00
Jean-Marc Valin
96d7a07942
Dynalloc based on a bands that stand out of the "noise floor"
2012-07-13 14:50:35 -04:00
Jean-Marc Valin
2a9fdbc93d
Transient/VBR tuning, give more bits to frames where pitch changes
2012-07-13 14:50:35 -04:00
Jean-Marc Valin
971b055090
New transient code, weighted tonality
2012-07-13 14:50:35 -04:00
Jean-Marc Valin
70d90d115d
VBR tuning
2012-07-13 14:50:35 -04:00
Jean-Marc Valin
a20545781e
Adds automatic bandwidth detection
...
Haven't tested it much and not sure not to use it without risk
for high-quality streams that may change bandwidth
2012-07-13 14:50:35 -04:00
Jean-Marc Valin
3e52daed26
Better training set
2012-07-13 14:50:35 -04:00
Jean-Marc Valin
7609b67e6e
Adds low-energy feature, training with noise
2012-07-13 14:50:35 -04:00
Jean-Marc Valin
0fcc99b3d0
Better training
2012-07-13 14:50:35 -04:00
Jean-Marc Valin
747c817d96
Adds MFCC standard deviation features
2012-07-13 14:50:35 -04:00
Jean-Marc Valin
cd213ea19c
Down to 17 features with same error rate
2012-07-13 14:50:34 -04:00
Jean-Marc Valin
ac3ac4a30c
Adds cepstral mean subtraction (CMS) to analysis
2012-07-13 14:50:34 -04:00
Jean-Marc Valin
bb7b4f4e5e
Continuous trim calculations, tapset/spread now use new analysis
2012-07-13 14:50:34 -04:00
Jean-Marc Valin
9987a3b574
Speech/music discrimination (not used for anything yet)
...
Also, reducing the VBR rate on panned mono
2012-07-13 14:50:34 -04:00
Jean-Marc Valin
73eb363e2c
Cleanup, slightly changed analysis band layout, MFCC-like features
2012-07-13 14:50:34 -04:00
Jean-Marc Valin
e9c353a09b
Cleans up the most ugly parts of the analysis code
...
Should be mostly usable now.
2012-07-13 14:50:34 -04:00
Jean-Marc Valin
1a2e7650f9
Adds an analysis function to control VBR
...
Conflicts:
src/opus_encoder.c
2012-07-13 14:50:34 -04:00
Jean-Marc Valin
9cf62baafc
Implements a better transient metric for VBR
2012-07-13 14:50:34 -04:00
Jean-Marc Valin
27aea5c902
Using a "pure L1" metric for tf analysis
2012-07-13 14:50:34 -04:00
Jean-Marc Valin
d4165179b7
Unconstrained VBR no longer attempt to hit an average rate
2012-07-13 14:50:34 -04:00
Gian-Carlo Pascutto
619aa8b268
Fix MSVC Debug builds, set missing dependencies for tests.
2012-07-13 10:04:59 +02:00
Gian-Carlo Pascutto
c0edd63737
Make tests work on MSVC.
...
Add project files for Opus tests, fixup test source for Win32.
2012-07-12 18:00:46 -04:00
Gian-Carlo Pascutto
f57be69f07
Remove non-existent ReadMe.txt references.
2012-07-12 18:00:29 -04:00
Gian-Carlo Pascutto
a7bdbf7602
Add opus_demo target and project files.
2012-07-12 18:00:08 -04:00
Gian-Carlo Pascutto
d2fa2edfd8
Make compiler settings consistent. Actually produce the libary, remove the opus_demo for now.
2012-07-12 17:59:26 -04:00
Gian-Carlo Pascutto
cb42735813
Add missing multistream sources to MSVC project file.
2012-07-12 17:58:52 -04:00
Jean-Marc Valin
bdf87401da
RTP draft fix
...
This is what got submitted as version 01
2012-07-11 15:54:55 -04:00
Jean-Marc Valin
37d9e1348d
Fixes a hybrid encoder bug on 24 kHz stereo input
2012-07-11 15:53:39 -04:00
Gregory Maxwell
03105f5b70
Make OPUS_SET_GAIN survive decode reset.
...
This is the less-surprising behavior and will hopefully
result in fewer corner case bugs (e.g. losing gain
after seeking). This commit also updates the documentation.
2012-07-11 02:33:55 -04:00
Gregory Maxwell
9881484dbd
test_opus_api: Fix valgrind expectations broken by last commit.
...
The last commit changed some of the multistream tests to use a
dual-mono setup instead of a single-stereo setup. Some of the
accompanying explicit valgrind checks were still setup to
look for stereo streams.
2012-07-11 02:18:44 -04:00
Gregory Maxwell
28b41ae5ae
Add OPUS_{GET|SET}_GAIN CTLs for adjusting output gain.
...
This CTL was requested by Nicolas George for FFmpeg.
2012-07-11 00:04:24 -04:00
Gregory Maxwell
c329045758
Make stack-protector check use AC_LINK_IFELSE.
2012-07-07 02:29:56 -04:00
Gregory Maxwell
27a0a5fa46
Avoid using win32 lrintf ASM on mingw even when config.h is broken.
2012-07-07 02:01:44 -04:00
Timothy B. Terriberry
a7df963437
Typo fix.
...
Thanks to Ron Lee for pointing it out.
2012-07-05 14:26:02 -07:00
Timothy B. Terriberry
a2b2e0b88a
Initial revision of Ogg Opus draft.
...
Adapted from http://wiki.xiph.org/OggOpus
2012-07-05 08:34:15 -07:00
Gregory Maxwell
1616230245
Add configure option to disable stack protector.
2012-06-28 20:22:26 -04:00
Gregory Maxwell
0c9060781c
Dos2unix, trailing whitespace on draft-spittka-payload-rtp-opus.xml.
2012-06-19 09:11:40 -04:00
Jean-Marc Valin
25aec47575
Adds a copy of the RTP payload XML
2012-06-14 10:56:12 -04:00
Gregory Maxwell
de9b437eb2
Add -fixed to the version string & clarify that fixed disables float.
2012-06-11 19:19:55 -04:00
Ron
9a89d56d46
Include the doc dir in DIST_SUBDIRS instead of EXTRA_DIST
...
And explicitly specify what we want included in EXTRA_DIST of doc/Makefile.am,
otherwise make dist picks up whatever random junk you might have laying around
in that dir at the time you run it.
Tweak the top level delegation targets, because this means distclean will be
run in the doc dir by default now without our help.
2012-06-11 15:33:57 -04:00
Jean-Marc Valin
99aaff5233
opus_compare.m was outdated
2012-06-11 14:37:44 -04:00