Lynne
6b22e28f4c
opusdsp: adjust and optimize C function to match assembly
...
The C and asm versions behaved differently _outside_ of the codec.
The C version returned pre-multiplied 'state' for the next execution
to use right away, while the assembly version outputted non-multiplied
'state' for the next execution to multiply to save instructions.
Since the initial state when initialized or seeking is always 0,
and since C and asm versions were never mixed, there was no issue.
However, comparing outputs directly in checkasm doesn't work without
dividing the initial state by CELT_EMPH_COEFF and multiplying the
returned state by CELT_EMPH_COEFF for the assembly function.
Since its actually faster to do this in C as well, copy the behavior the
asm versions use. As a reminder, the initial state 0 is divided by
CELT_EMPH_COEFF on seek and init (just in case in the future this is
changed, its technically more correct to init with CELT_EMPH_COEFF than 0,
however when seeking this will result in more audiable pops, unlike with 0
where the output gets in sync over a few samples).
2019-09-11 03:28:22 +01:00
..
2019-08-15 13:29:22 +01:00
2019-09-10 17:21:53 +02:00
2019-08-13 16:48:38 +02:00
2019-08-11 19:13:21 +02:00
2019-08-23 14:38:42 +02:00
2019-09-04 10:07:12 -03:00
2019-07-26 11:57:16 +01:00
2019-07-25 15:13:09 +01:00
2019-08-26 10:36:40 +02:00
2019-08-29 21:04:54 +02:00
2019-09-02 18:09:11 +02:00
2019-08-27 18:28:31 -07:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-09-05 19:45:53 +02:00
2019-07-27 01:43:00 +02:00
2019-08-27 17:57:44 +02:00
2019-07-28 18:23:07 +01:00
2019-08-29 21:04:54 +02:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-09-02 18:09:11 +02:00
2019-09-02 18:09:11 +02:00
2019-09-04 10:07:12 -03:00
2019-07-27 01:43:00 +02:00
2019-08-22 21:38:41 +02:00
2019-09-04 10:07:12 -03:00
2019-08-29 15:16:18 +02:00
2019-08-05 17:53:14 +02:00
2019-07-29 22:25:10 +01:00
2019-07-29 19:57:06 +01:00
2019-08-28 21:57:48 +02:00
2019-07-29 22:25:10 +01:00
2019-07-29 22:25:10 +01:00
2019-07-29 23:17:46 +01:00
2019-07-29 22:25:10 +01:00
2019-07-29 22:25:10 +01:00
2019-07-29 22:25:10 +01:00
2019-07-29 22:25:10 +01:00
2019-09-04 10:07:12 -03:00
2019-08-05 17:54:24 +02:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-08-29 21:04:54 +02:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-08-11 19:13:21 +02:00
2019-09-04 10:07:12 -03:00
2019-08-05 17:54:24 +02:00
2019-08-13 22:14:03 +02:00
2019-08-28 17:30:55 +02:00
2019-08-28 17:30:55 +02:00
2019-08-28 17:28:16 +02:00
2019-09-04 10:07:12 -03:00
2019-07-29 22:58:43 +02:00
2019-07-29 22:58:43 +02:00
2019-08-11 22:32:42 +02:00
2019-08-15 01:26:21 +02:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-08-11 00:03:35 +02:00
2019-09-04 10:07:12 -03:00
2019-08-04 16:12:02 +02:00
2019-07-29 19:57:09 +01:00
2019-09-10 12:19:23 +02:00
2019-08-28 16:31:00 +02:00
2019-09-10 12:19:23 +02:00
2019-08-27 10:56:41 -03:00
2019-08-11 19:13:21 +02:00
2019-08-13 16:48:38 +02:00
2019-08-12 08:45:07 +02:00
2019-08-23 14:38:42 +02:00
2019-09-05 19:45:53 +02:00
2019-08-29 21:04:54 +02:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-08-03 17:44:23 +02:00
2019-08-29 15:57:54 +02:00
2019-09-02 09:26:52 +02:00
2019-09-04 10:07:12 -03:00
2019-08-23 22:24:07 +02:00
2019-08-23 10:56:34 -07:00
2019-08-14 22:01:05 -03:00
2019-08-25 16:09:40 +02:00
2019-08-15 01:26:21 +02:00
2019-09-02 09:26:52 +02:00
2019-09-10 13:51:05 -07:00
2019-09-10 13:51:05 -07:00
2019-07-22 08:57:33 +02:00
2019-07-22 08:57:33 +02:00
2019-09-09 13:25:09 -07:00
2019-09-10 13:51:05 -07:00
2019-09-02 09:26:52 +02:00
2019-09-02 09:26:52 +02:00
2019-08-24 20:16:00 -03:00
2019-08-24 20:16:00 -03:00
2019-08-24 22:41:52 -03:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-08-11 19:13:21 +02:00
2019-07-24 15:32:15 +02:00
2019-07-27 22:00:43 +01:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-08-05 17:54:24 +02:00
2019-08-05 17:54:24 +02:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-09-02 13:46:11 -07:00
2019-09-01 20:00:58 -03:00
2019-09-11 03:28:22 +01:00
2019-09-11 03:28:22 +01:00
2019-09-04 10:07:12 -03:00
2019-08-23 22:26:50 +02:00
2019-08-23 22:26:50 +02:00
2019-09-02 21:37:18 +02:00
2019-09-10 17:21:54 +02:00
2019-08-23 22:26:50 +02:00
2019-09-06 22:26:55 +02:00
2019-08-20 13:34:02 +08:00
2019-08-20 13:34:04 +08:00
2019-08-20 13:34:03 +08:00
2019-08-20 13:34:04 +08:00
2019-08-20 13:34:03 +08:00
2019-08-20 13:34:03 +08:00
2019-09-04 10:07:12 -03:00
2019-08-11 02:06:44 +02:00
2019-09-02 21:37:18 +02:00
2019-08-23 22:24:07 +02:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-08-05 18:42:51 +02:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-09-02 09:26:53 +02:00
2019-09-02 09:26:52 +02:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-08-29 15:57:54 +02:00
2019-09-04 10:07:12 -03:00
2019-07-25 00:06:10 +02:00
2019-09-10 19:12:47 -07:00
2019-09-02 15:06:28 -07:00
2019-09-10 19:01:13 -07:00
2019-09-10 18:52:37 -07:00
2019-09-10 19:05:18 -07:00
2019-09-10 19:05:31 -07:00
2019-09-10 19:01:13 -07:00
2019-09-10 19:01:13 -07:00
2019-07-28 22:34:26 +01:00
2019-07-28 22:34:26 +01:00
2019-07-28 22:34:26 +01:00
2019-07-28 22:34:26 +01:00
2019-07-28 22:34:26 +01:00
2019-08-30 20:23:02 +02:00
2019-07-28 22:34:26 +01:00
2019-08-29 15:18:42 +02:00
2019-08-31 18:34:05 +02:00
2019-09-06 22:24:50 +02:00
2019-08-31 18:34:05 +02:00
2019-08-11 00:06:12 +02:00
2019-09-01 20:00:58 -03:00
2019-09-04 10:51:20 -07:00
2019-08-11 10:52:15 -04:00
2019-09-04 10:07:12 -03:00
2019-09-06 22:06:12 +02:00
2019-09-02 18:09:11 +02:00
2019-07-24 15:32:15 +02:00
2019-08-22 18:35:44 +02:00
2019-08-22 18:35:44 +02:00
2019-08-22 18:35:44 +02:00
2019-07-28 19:02:34 +01:00
2019-08-13 16:48:38 +02:00
2019-09-05 19:45:53 +02:00
2019-09-04 10:07:12 -03:00
2019-09-10 17:21:54 +02:00
2019-09-04 10:07:12 -03:00
2019-09-04 10:07:12 -03:00
2019-08-11 23:43:14 +02:00