Commit graph

27 commits

Author SHA1 Message Date
Jean-Marc Valin
73142b100a Makes the speech/music probability estimation mode conservative
This is done using an adaptive beta and an estimate of the speech
and music detection confidence
2013-02-28 15:30:51 -05:00
Jean-Marc Valin
742aac1056 Adds silence probability to speech/music detector
Avoids biasing the decision when it's all silence/noise.
2013-02-22 16:44:56 -05:00
Jean-Marc Valin
51f4a32ec2 Adds support for delayed decision
Variable duration option renamed to OPUS_SET_EXPERT_FRAME_DURATION,
with new API.
Also moves up the analysis to avoid having to do int->float conversion
on large buffers.
2013-02-20 04:08:34 -05:00
Jean-Marc Valin
48ac122141 Makes analysis usable for all frame sizes 2013-02-10 00:15:49 -05:00
Jean-Marc Valin
7ebacf430a Moves analysis to the beginning of opus_encode() 2013-02-10 00:05:46 -05:00
Jean-Marc Valin
d683c76b88 Fixes MSVC warnings for double->float and float->int conversion 2012-12-21 16:17:38 -05:00
Jean-Marc Valin
7509fdb813 New bandwidth detection code
Can now work up to full-band and uses lsb_depth to fix the noise issue.
2012-12-21 11:51:45 -05:00
Joshua Bowman
3b60e81d79 Fix the MSVC build.
Updates the project files to include the new encoder source files.
Use OPUS_RESTRICT and include config.h to set the proper defines
for build under MSVC.
2012-10-23 12:20:32 -07:00
Jean-Marc Valin
b2e19ecd0c copysignf() was C99-only 2012-10-09 19:13:04 -04:00
Jean-Marc Valin
0e490591b7 Gets rid of unused boost analysis code that never worked anyway.
Also removes the -exp_analysis suffix from opus_get_version_string()
and fixes a "ISO C90 forbids mixed declarations and code" warning.
2012-10-09 13:51:44 -04:00
Jean-Marc Valin
317ffc203e Tuning the speech/music probability model 2012-10-09 02:12:02 -04:00
Jean-Marc Valin
027ff070f0 Shrinks tansig table, makes data static const 2012-09-14 15:49:18 -04:00
Jean-Marc Valin
c5880fe48b Builds the analysis files more cleanly than #including C files 2012-07-13 14:50:37 -04:00
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
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
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
7609b67e6e Adds low-energy feature, training with noise 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
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