Commit graph

48 commits

Author SHA1 Message Date
Jean-Marc Valin
b64a89feca
Using opus_int16 instead of short in LPCNet code 2023-06-22 18:07:26 -04:00
Jean-Marc Valin
abe817c3fc
Remove pcount that's no longer useful
We're back to processing 10 ms at a time and have no need for 40-ms
"superframes".
2023-06-22 18:07:25 -04:00
Jean-Marc Valin
abf60c33f7
remove LPCNET_EXPORT 2023-06-22 03:41:30 -04:00
Jean-Marc Valin
07bb3f01b4
cleanup: get rid of non-causal PLC and DC handling 2023-06-22 00:58:25 -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
ec6e42ba3d misc fixes 2023-05-31 15:58:11 -04:00
Jean-Marc Valin
fa7b432eed Initial blob loading support 2023-05-28 01:57:30 -04:00
Jean-Marc Valin
98da335009 Convert PLC weights to blob format 2023-05-22 03:32:53 -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
b9ea868380 Define M_PI when needed 2023-05-18 00:41:14 -04:00
Jean-Marc Valin
5fbc037fa0 Skip sample rate update on received packets 2023-01-27 18:14:49 -05:00
Jean-Marc Valin
5b9b4381eb Add call to clear FEC buffer 2022-12-20 21:55:28 -05:00
Jean-Marc Valin
70ce2bd71b Cleanup, simplifying the no-crossfade PLC case 2022-12-19 17:11:33 -05:00
Jean-Marc Valin
e7f2360936 Making it possible to mix DRED with PLC 2022-12-16 12:53:26 -05:00
Jean-Marc Valin
b6ac1c78bb FEC hooks in the PLC code
Can now inject FEC features to be used by the PLC when available
2022-09-27 02:24:21 -04: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
Jean-Marc Valin
27348d1b88 Running new features twice on resync
Helps forget concealment features faster
2022-03-04 16:23:40 -05:00
Jean-Marc Valin
d2d847bcae Boosting pitch correlation at inference time 2022-03-04 16:20:56 -05:00
Jean-Marc Valin
099f0872f7 Compensating for DC filter offset during blending 2022-03-04 16:19:56 -05:00
Jean-Marc Valin
8ca2ccf17a fix another warning 2022-02-25 13:57:51 -05:00
Jean-Marc Valin
a814a6235a Silencing a warning
Variable cannot be uninitialized
2022-02-25 13:56:09 -05:00
Jean-Marc Valin
3982144f8e Revert PLC state to use Burg in the causal overlap 2022-02-24 03:22:04 -05:00
Jean-Marc Valin
a7b2420300 Setting PLC options at run-time
Causal vs non-causal, DC filter, and blending are now configurable
2022-02-21 21:36:08 -05:00
Jean-Marc Valin
0eb9f0bd38 Updating the DC tracker even during packet loss
Makes the offset signal more continuous
2022-02-21 02:34:44 -05:00
Jean-Marc Valin
3883f3d372 Synchronizing DC removal for noncausal PLC 2022-02-19 18:03:22 -05:00
Jean-Marc Valin
a11e68dd74 Evening out CPU load for non-causal PLC
Defer some of the extra resync work to the next packet
2022-02-19 17:28:28 -05:00
Jean-Marc Valin
86bf0cb9d5 Remove pitch periodicity attenuation 2022-02-16 03:44:02 -05:00
Jean-Marc Valin
cb4dbe05d0 oops 2022-02-16 03:28:13 -05:00
Jean-Marc Valin
78e682950b Handle DC offset
Remove DC, conceal, add it back at the end
2022-02-16 02:14:59 -05:00
Jean-Marc Valin
527841d03e Avoiding discontinuities in the RNN update 2022-02-16 01:58:49 -05:00
Jean-Marc Valin
8e3ce6e839 Add no-blending version 2022-02-09 14:14:23 -05:00
Jean-Marc Valin
b2847687e0 Getting rid of prediction delay 2022-02-09 03:06:41 -05:00
Jean-Marc Valin
7a7913f388 cleanup 2022-02-07 15:14:56 -05:00
Jean-Marc Valin
fd45fba905 Reduce look-ahead to 5 ms 2022-02-07 04:01:36 -05:00
Jean-Marc Valin
5d32ab8f3a optional bi-directional concealment 2022-02-06 01:14:03 -05:00
Jean-Marc Valin
dc539a9ce9 WIP non-causal PLC 2022-02-05 22:57:53 -05:00
Jean-Marc Valin
2e18f0d160 Using Burg cepstrum for feature prediction 2022-02-04 22:04:23 -05:00
Jean-Marc Valin
f3bc6bacd2 Avoiding tmp buffer overflows 2022-02-03 00:27:20 -05:00
Jean-Marc Valin
3e2198c6e1 Learning to predict time t+1 from time t
Instead of t from t
2022-02-02 15:00:24 -05:00
Jean-Marc Valin
d816477c58 Add decay 2022-02-02 03:54:05 -05:00
Jean-Marc Valin
186fa61680 oops, fix initialization 2022-02-01 02:57:23 -05:00
Jean-Marc Valin
4866e632cd minus stupid bug 2022-02-01 01:31:49 -05:00
Jean-Marc Valin
32a63fd31d WIP: PLC prediction 2022-01-31 23:21:55 -05:00
Jean-Marc Valin
c45963d40a Code for testing PLC models 2022-01-31 18:49:19 -05:00
Jean-Marc Valin
6b0705065f Implement lpcnet_plc_get_size() 2022-01-27 02:45:47 -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