Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Include config.h in mlp.cexp_lbr_tune14 | Jean-Marc Valin | 2016-07-16 | 1 | -0/+4 |
| | |||||
* | Adds some smoothing to the energy quantization | Jean-Marc Valin | 2016-07-16 | 2 | -2/+27 |
| | | | | | | | | When the energy is stable, we slightly bias energy quantization towards the previous error to make the gain more stable (a constant offset is better than fluctuations). We reduce the bitrate by about 0.2% to 1% at low bitrate for the same quality. | ||||
* | Tune SILK rate for hybrid with FEC enabled | Jean-Marc Valin | 2016-07-16 | 1 | -11/+14 |
| | |||||
* | Moving FEC decision to the Opus encoder level (from SILK level) | Jean-Marc Valin | 2016-07-16 | 6 | -27/+57 |
| | |||||
* | Taking loss rate into account in compute_equiv_rate() | Jean-Marc Valin | 2016-07-16 | 1 | -5/+8 |
| | |||||
* | Retuning the tf_analysis() lambda | Jean-Marc Valin | 2016-07-16 | 1 | -9/+1 |
| | | | | Increasing the value at low rate seems to help a bit. | ||||
* | Fixes equiv_rate for CBR | Jean-Marc Valin | 2016-07-16 | 1 | -2/+3 |
| | |||||
* | Minor TF cleanup (tf_sum was useless), plus comments | Jean-Marc Valin | 2016-07-16 | 2 | -11/+11 |
| | |||||
* | Use SPREAD_AGGRESSIVE on non-transient hybrid frames | Jean-Marc Valin | 2016-07-16 | 1 | -1/+9 |
| | |||||
* | Don't use too much temporal resolution on hybrid frames at low rate | Jean-Marc Valin | 2016-07-16 | 1 | -0/+7 |
| | | | | | Otherwise, we risk having "temporal holes" in the HF that anti-collapse can't always fill in. | ||||
* | Disable patch_transient_decision() on hybrid since it's causing artifacts | Jean-Marc Valin | 2016-07-16 | 1 | -1/+1 |
| | | | | It would trigger on the second frame of "S"s, causing holes in the spectrum | ||||
* | CBR: set gains to their previons values where we're busting the budget | Jean-Marc Valin | 2016-07-16 | 2 | -6/+42 |
| | |||||
* | Set pulses to zero if we can't meet rate target | Jean-Marc Valin | 2016-07-16 | 2 | -0/+26 |
| | |||||
* | Now that we're preventing huge gains, we no longer need to pretend there's | Jean-Marc Valin | 2016-07-16 | 2 | -7/+0 |
| | | | | no dither | ||||
* | CBR: lock the gain on a subframe when the number of pulses stops going down | Jean-Marc Valin | 2016-07-16 | 2 | -2/+50 |
| | |||||
* | merge back in the LTP gain safety limiter | Koen Vos | 2016-07-16 | 10 | -9/+74 |
| | |||||
* | CBR: Using the same gain increase for fixed-point as for float | Jean-Marc Valin | 2016-07-16 | 1 | -5/+10 |
| | |||||
* | Oops, edited the wrong comment in the previous commit | Jean-Marc Valin | 2016-07-16 | 1 | -2/+2 |
| | |||||
* | Re-tuning compute_equiv_rate() | Jean-Marc Valin | 2016-07-16 | 1 | -4/+4 |
| | |||||
* | Getting rid of the SILK penalty for hybrid CBR. | Jean-Marc Valin | 2016-07-16 | 1 | -2/+2 |
| | | | | That was likely a mistake from a misunderstanding on the SILK bit allocation | ||||
* | Improving CBR for hybrid mode | Jean-Marc Valin | 2016-07-16 | 1 | -6/+13 |
| | | | | | | | Hybrid CBR now simply forces the SILK CBR rate to the "target" value. Also, we're getting rid of the -2 kb/s offset for CBR, which appeared to be harmful. In the case of hybrid constrained VBR, the cap is computed in the same way as the target. | ||||
* | Making the encoder more aggressive at using wider bandwidths | Jean-Marc Valin | 2016-07-16 | 1 | -17/+17 |
| | |||||
* | comment about reduced codelength component in LTP quantizer error metric | Koen Vos | 2016-07-16 | 1 | -2/+3 |
| | |||||
* | avoid double if statement for finding best quantized LTP coefs | Koen Vos | 2016-07-16 | 1 | -4/+2 |
| | |||||
* | increase NSQ decision delay from 32 to 40 | Koen Vos | 2016-07-16 | 5 | -14/+20 |
| | |||||
* | reduced noise floor in noise shaping analysis by 2 dB | Koen Vos | 2016-07-16 | 1 | -1/+1 |
| | |||||
* | increase order of noise shaping filter | Koen Vos | 2016-07-16 | 6 | -13/+12 |
| | |||||
* | more conservative scaling of LTP corrs; remove assert that checks for ↵ | Koen Vos | 2016-07-16 | 7 | -41/+30 |
| | | | | negative residual energy; discard CB entries leading to such negative energies | ||||
* | Clean up: alignment of comments | Koen Vos | 2016-07-16 | 4 | -36/+36 |
| | |||||
* | Clean up: replace tabs by spaces | Koen Vos | 2016-07-16 | 23 | -146/+146 |
| | |||||
* | removed prefilter | Koen Vos | 2016-07-16 | 31 | -981/+257 |
| | | | | The NSQ SSE optimizations are disabled for now because they need to be updated | ||||
* | slight clean up | Koen Vos | 2016-07-16 | 9 | -94/+135 |
| | |||||
* | undo some loop unrolling | Koen Vos | 2016-07-16 | 3 | -20/+6 |
| | |||||
* | pitch analysis (in FIX) now scales the input down at the start, instead of ↵ | Koen Vos | 2016-07-16 | 2 | -58/+46 |
| | | | | at every stage | ||||
* | minor clean up of pointer offsets | Koen Vos | 2016-07-16 | 5 | -16/+13 |
| | |||||
* | simplified computation of LTP coefs | Koen Vos | 2016-07-16 | 22 | -1042/+268 |
| | |||||
* | Attenuate SILK PLC gain only for unvoiced speech | Felicia Lim | 2016-07-16 | 2 | -2/+5 |
| | |||||
* | We should now be able to be less conservative when using CBR | Jean-Marc Valin | 2016-07-16 | 1 | -7/+5 |
| | |||||
* | Makes the encoder more aggressive about meeting the rate target | Jean-Marc Valin | 2016-07-16 | 3 | -6/+45 |
| | |||||
* | Using more fine-grained complexity settings for SILK | Jean-Marc Valin | 2016-07-16 | 1 | -2/+24 |
| | | | | | Only complexity 0-1 now uses the plain non-delayed-decision NSQ since its quality is pretty bad. Previously 0-3 were using that plain NSQ. | ||||
* | Fixing bandwidth selection hysteresis | Jean-Marc Valin | 2016-07-16 | 1 | -2/+4 |
| | | | | | | Previously, the bandwidth detection could (e.g.) change the bandwidth from fullband to superwideband, and the hysteresis would then cause bandwidth to be stuck in superwideband. | ||||
* | Boosting the high-band bitrate on transients for hybrid mode | Jean-Marc Valin | 2016-07-16 | 1 | -1/+4 |
| | |||||
* | Fixes signed integer overlof in silk_ADD_POS_SAT32() | Jean-Marc Valin | 2016-07-16 | 3 | -12/+2 |
| | | | | Removes unused 64-bit version | ||||
* | Turn on DTX only when the noise is sufficiently quiet | Felicia Lim | 2016-07-16 | 1 | -3/+52 |
| | | | | | | | | Computes a pseudo SNR as the ratio between the running peak signal energy to instantaneous noise energy. DTX is turned on only if this is higher than a pre-determined threshold. Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca> | ||||
* | New DTX that works in all modes (SILK/CELT/HYBRID) | Felicia Lim | 2016-07-16 | 4 | -4/+60 |
| | | | | | | | | | | | A frame is marked as valid for DTX if it contains noise or only digital silence. As before, there is an overhang period of 200 ms and a maximum consecutive DTX period of 400 ms. If the new DTX cannot be used because of the complexity setting and sampling frequency chosen, the SILK DTX will be used instead. Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca> | ||||
* | Skip analysis if the frame contains only digital silence | Felicia Lim | 2016-07-16 | 1 | -7/+38 |
| | | | | Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca> | ||||
* | NLSF_VQ_MAX_SURVIVORS is no longer useful | Jean-Marc Valin | 2016-07-16 | 3 | -3/+0 |
| | |||||
* | take advantage of more efficient NLSF quantization by reducing number of ↵ | Koen Vos | 2016-07-16 | 6 | -35/+12 |
| | | | | | | survivors in search JMV: edited to be a little more conservative | ||||
* | NLSF_del_dec_quant minor clean up | Koen Vos | 2016-07-16 | 1 | -5/+3 |
| | |||||
* | NLSF_encode now also uses NLSF weights from table | Koen Vos | 2016-07-16 | 1 | -22/+10 |
| |