Commit graph

68 commits

Author SHA1 Message Date
Michael Klingbeil
12fbd8111a
use opus_(re)alloc and opus_free for dnn and DRED related functions 2023-12-15 15:48:58 -05:00
Jean-Marc Valin
9f4fc8bbfa
Replacing RNN_ macros with existing OPUS_ ones 2023-06-23 00:02:12 -04:00
Jean-Marc Valin
b64a89feca
Using opus_int16 instead of short in LPCNet code 2023-06-22 18:07:26 -04:00
Marcus Asteborg
f36685fc97
Remove trailing whitespace in dnn 2023-06-22 13:58:37 -07:00
Jean-Marc Valin
abf60c33f7
remove LPCNET_EXPORT 2023-06-22 03:41:30 -04:00
Jean-Marc Valin
247e6a587c
Remove support for LPCNet quantization 2023-06-22 00:58:24 -04:00
Jean-Marc Valin
47bcd4a7f5 Don't use the VQ codebooks when building Opus 2023-06-06 23:01:00 -04:00
Jean-Marc Valin
ba5dde539a Add reset functions that don't clear the model 2023-06-01 04:09:57 -04:00
Jean-Marc Valin
fa7b432eed Initial blob loading support 2023-05-28 01:57:30 -04:00
xnorpx
879084f6f0 Fix some of C4244 double to float warnings 2023-05-24 00:30:19 -04:00
Jean-Marc Valin
c7b6935bf2 Add validation for weights blob 2023-05-20 14:23:02 -04:00
Jean-Marc Valin
0098fe70ac Defer calls to run_frame_network() to save CPU
Calls are deferred to the actual loss and we only process the minimum
required.
2023-05-19 18:12:18 -04:00
Jean-Marc Valin
580614f062 Make the code C90-compliant 2023-05-17 04:09:04 -04:00
Jean-Marc Valin
ebbf5721a2 Use new model struct 2023-05-17 01:08:28 -04:00
Jean-Marc Valin
5fbc037fa0 Skip sample rate update on received packets 2023-01-27 18:14:49 -05:00
Jean-Marc Valin
dd114baf4d Fix causal PLC for models with non-zero lookahead 2022-09-16 01:44:53 -04:00
Jean-Marc Valin
60450472a6 Merge branch 'plc_challenge' into master 2022-09-07 00:38:55 -04:00
janpbuethe
920300c546 Add lpc weighting and model parameter handling
Model now stores LPC gamma, look-ahead, and end-to-end.
Parameters aren't quite reliable yet, YMMV
2022-09-06 23:14:39 -04:00
Jean-Marc Valin
d1a14ac5d4 Making state update more robust to discontinuities 2022-02-16 00:58:40 -05:00
Jean-Marc Valin
f3bc6bacd2 Avoiding tmp buffer overflows 2022-02-03 00:27:20 -05:00
Jean-Marc Valin
2f5b51c94a Avoiding symbol clashes with Opus 2022-01-24 23:21:31 -05:00
Jean-Marc Valin
60a009b457 Making codebase C90-compliant 2022-01-19 18:10:44 -05:00
Jean-Marc Valin
969bd7662f Adding API for PLC
Packet loss concealment based on LPCNet (work in progress)
2022-01-19 17:07:10 -05:00
Jean-Marc Valin
3a47548536 Using KISS99 (taken from Daala) as RNG 2021-11-10 17:58:51 -05:00
Jean-Marc Valin
81229a7412 Fix the "no lookahead" case 2021-10-30 02:40:52 -04:00
Jean-Marc Valin
a9bf6cee8a Don't hardcode the number of bands 2021-10-20 23:35:59 -04:00
Jean-Marc Valin
9776e8e828 Refactoring frame rate network 2021-08-17 18:21:55 -04:00
Jean-Marc Valin
66c29fb620 Remove some useless buffers 2021-08-13 00:20:19 -04:00
Jean-Marc Valin
ab9a09266f Sharing conditioning network with LPC 2021-08-02 19:30:22 -04:00
Krishna Subramani
c1532559a2 Adds end-to-end LPC training
Making LPC computation and prediction differentiable
2021-08-02 19:28:27 -04:00
Jean-Marc Valin
6585843237 Removing the unused features
Down to 20 features
2021-07-29 03:20:59 -04:00
Jean-Marc Valin
c74330e850 Pre-compute GRU B conditioning
Adapted from PR: https://github.com/mozilla/LPCNet/pull/134
by zhuxiaoxu <zhuxiaoxu@ainirobot.com>
but had to be reworked due to previous weight quantization changes.
2021-07-15 16:06:56 -04:00
Jean-Marc Valin
7d8b00f11d Sampling directly from the logit
Avoids having to compute a sigmoid
2021-07-10 01:59:49 -04:00
Jean-Marc Valin
7cef98ec8c Minor optimization: merging all 3 embeddings 2021-07-10 01:59:49 -04:00
Jean-Marc Valin
d332100808 Representing output pdf as binary probability tree
Saves on the MDense/softmax computation since we only need to compute
8 values instead of 256.
2021-07-10 01:59:49 -04:00
Jean-Marc Valin
56d9f13efd Fix quantization bug where pitch can get too low
Would cause unused pitch embedding vectors to be used
2021-01-16 01:51:39 -05:00
Marcus Asteborg
171b1ba0ce Initialize excitation memory value to unquantized 0 2020-08-17 13:39:24 -04:00
Jean-Marc Valin
9f78e58392 Make param ordering consistent for lpcnet_synthesize() 2019-03-27 14:06:46 -04:00
Jean-Marc Valin
2bc20e65c7 Remove hack to match Python code 2019-03-20 03:21:03 -04:00
Jean-Marc Valin
2c0e96796e Fixing dynamic libraries 2019-03-18 21:53:28 -04:00
Jean-Marc Valin
54b057c9cd Add LPCNet decoder object 2019-03-18 14:13:07 -04:00
Jean-Marc Valin
fe608dfc51 Moving LPCNetState 2019-03-18 13:42:30 -04:00
Jean-Marc Valin
da456b09fa fix warning 2019-01-24 14:16:30 -05:00
Jean-Marc Valin
9fd3e45fd3 Avoid glitch at the beginning 2019-01-21 16:53:26 -05:00
Jean-Marc Valin
38cd5cf08f Remove useless (and possibly hurtful) residual connection
I guess it's a bad idea to forward inputs directly
2019-01-17 23:17:42 -05:00
Jean-Marc Valin
d75a4aec72 refactoring 2018-12-28 01:19:56 -05:00
Jean-Marc Valin
470a0a7e3e Properly delaying the pitch gain 2018-12-15 01:25:44 -05:00
Jean-Marc Valin
7d9affc385 Moving the frame out of lpcnet.c and into test_lpcnet.c 2018-12-11 16:59:07 -05:00
David Rowe
03dcb8195f Error messages
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2018-12-11 01:40:29 -05:00
Jean-Marc Valin
b9e0ea23e0 Fix flooring of the pitch period
Without the 0.1 bias, the rounding error could cause an offset of -1
2018-12-10 11:23:31 -05:00