Commit graph

3235 commits

Author SHA1 Message Date
Ralph Giles
b30b2ba21e Try to clarify frame packing.
Marko was concerned that RFC 6716 section 3.2.1 narrowly describes
zero-length DTX frames _only_ for code 2 and 3 packets, and therefore
wanted this sentence to state clearly that code 0 and 1 can be used
with zero-byte frames as well. I've tried to do that.
2014-01-17 15:22:57 -08:00
Ralph Giles
e26ed59ad0 Use SILK/CELT everywhere describing modes.
There was some attempt to use LP/MDCT instead, to avoid confusion
of the Opus modes with the earlier codecs of the same name, but
Jean-Marc says they gave up on doing that in the Opus RFC, and in
particular the tables a reader would need to reference from RFC 6716
Section 3.2 mentions SILK and CELT, so I think it's important to use
the same terms here.
2014-01-17 14:33:54 -08:00
Ron
af807b28c3 Drop the oddball hyphenation of MDCT-mode
It's not hyphenated anywhere else.
2014-01-17 14:28:27 -08:00
Ron
64f558557e Clarify that MB->WB is better than MB->NB
I hope.  Now that it's been clarified for me what this originally meant
to say, it's tricky to know if this actually contains the missing clue
for other readers.  Hopefully it should be obvious to anyone actually
implementing it once they look at what modes they have to choose from.
2014-01-17 14:28:17 -08:00
Ralph Giles
6d27d40c79 Remove line about undefined speaker configurations.
Ron's suggestion. We think it's clear enough as is and
removing it avoids confusion about this specification
versus future extensions.
2014-01-17 14:26:58 -08:00
Ralph Giles
1474e710e6 Bump Ogg draft version and date. 2014-01-17 12:10:50 -08:00
Ralph Giles
3ba1bb01db Replace MAY with SHOULD in the gap-filling guidelines.
This is really the best implementations can do as far as we
understand the possibilies, so it's better to be straightforward.
2014-01-17 12:09:45 -08:00
Ralph Giles
0f9c40499f Update Ralph's phone number. 2014-01-17 11:15:34 -08:00
Jean-Marc Valin
49e6c050a3 Update authors in RTP draft 2014-01-17 14:05:37 -05:00
Mark Harris
283853539d Another nit in the update draft
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2014-01-16 12:49:29 -05:00
Ralph Giles
221a8b70c7 Bump the static version string in version.mk.
We failed to do this before the 1.1 release, so that went out
still marked at 1.1 beta. The plan was to get rid of this file
but it's still used as a fallback by the msvc build.
2014-01-15 09:08:08 -08:00
Ralph Giles
bfcc1dd4f4 Reword framing bit ommission, again. 2014-01-15 09:02:01 -08:00
Ron
d63b0dd7b4 Be a bit less ambiguous about the comment framing bit 2014-01-15 19:41:21 +10:30
Ralph Giles
1e0b6fd9f7 Rewrite gap filling section.
Incorporate list feedback from Mark Harris, Tim and Jean-Marc
and try to improve clarity.
2014-01-14 17:23:00 -08:00
Ralph Giles
998e9e00fd Add Tim's gap repair text.
From http://www.ietf.org/mail-archive/web/codec/current/msg03030.html
2014-01-14 15:40:16 -08:00
Ralph Giles
4784e0717e Fix malloc_hook warning on glibc 2.17 and later.
In glib 2.17 the __malloc_ptr define was removed in favour
of using void* directly. Our declaration of mhook using this
type for the second argument therefore rightly generates a warning
on modern systems, since the type is assumed to be an int, which
is too narrow to hold a pointer on 64 bit architectures.

Since it was only ever a define we could use an #ifndef to define
__malloc_ptr ourselves. However we only use it once, so using void*
in the signature directly is cleaner. This should cause no problems
on older systems where it will match either the void* or the char*
(for non __STDC__ code) the define resolved to.
2014-01-14 11:07:37 -08:00
Mark Harris
2c7eb787f0 Minor nits on update draft
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2014-01-13 16:30:55 -05:00
Jean-Marc Valin
0b644be506 Update draft accepted as WG document 2014-01-13 15:31:01 -05:00
Gregory Maxwell
a65db56e54 Fix declaration after statement in fixed point. 2014-01-08 11:48:38 -08:00
Gregory Maxwell
5b215d8423 Add tests/test_ to Makefile.unix. 2014-01-08 11:04:29 -08:00
Mark Harris
fe69528133 Fixes the decode_fec case for b76888d
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2014-01-07 21:33:03 -05:00
Jean-Marc Valin
e775090427 pseudostack instrumentation (off by default) 2014-01-07 21:32:41 -05:00
Jean-Marc Valin
0b9f7f9944 Minor refactoring of the SILK PLC code to save more stack 2014-01-07 21:25:09 -05:00
Jean-Marc Valin
b76888dc86 Preventing unnecessary stack use when using a large decode buffer
This was causing pseudostack builds to fail because opus_demo uses a 2-second
buffer.
2014-01-07 21:00:18 -05:00
Jean-Marc Valin
9134e96cb2 Fixes SMALL_FOOTPRINT for float 2014-01-07 17:50:46 -05:00
Jean-Marc Valin
81af25950f Another aliasing hack in the SILK PLC with SMALL_FOOTPRINT 2014-01-07 16:26:27 -05:00
Jean-Marc Valin
e17ca25617 Don't allocate pulses on the stack when calling the SILK PLC.
Also minor C89 fix for the previous commit
2014-01-07 15:27:02 -05:00
Jean-Marc Valin
b63e7110cb Moves CELT PLC pitch search to a separate function to reduce peak stack 2014-01-07 15:02:43 -05:00
Jean-Marc Valin
c25836205d Delaying allocation of the SILK temporary output buffer to reduce peak stack 2014-01-07 13:46:06 -05:00
Jean-Marc Valin
5f807c176f Adds SMALL_FOOTPRINT hack to the CELT PLC too 2014-01-07 04:48:42 -05:00
Jean-Marc Valin
9d1b6fef2a Moves deemphasis() call out of celt_decode_lost() to reduce peak stack 2014-01-07 04:32:41 -05:00
Jean-Marc Valin
dce69d2b9b Store decoded SILK pulses as 16-bit vector
This saves 640 bytes on the peak stack usage.
2014-01-06 21:59:48 -05:00
Jean-Marc Valin
ad8371d172 Cleaning up leftovers of "freq" in celt_decode_with_ec() 2014-01-06 17:45:57 -05:00
Jean-Marc Valin
4d07b1357e Reduces the decoder stack use by removing the pcm_silk buffer in fixed-point
We only keep when concealing less than 10ms with SILK.
2014-01-06 17:43:20 -05:00
Jean-Marc Valin
14ca4ed682 Moves the remains of compute_inv_mdcts() to celt_synthesis() 2014-01-06 09:31:09 -05:00
Jean-Marc Valin
32454dcadc Hack that makes the SMALL_FOOTPRINT CELT decoder use only 4.25 kB of stack. 2014-01-06 09:11:52 -05:00
Jean-Marc Valin
bdc7b93358 Reduces decoder stack usage by only storing one channel of denormalized MDCT 2014-01-06 08:58:38 -05:00
Jean-Marc Valin
4a6744a446 Some cleaning up of the synthesis code. 2014-01-05 21:40:02 -05:00
Jean-Marc Valin
ed01a596dc Making exp_rotation1() use MAC16_16(), which saves a few cycles on ARM 2014-01-04 21:06:24 -05:00
Jean-Marc Valin
ccec752a38 Silences unused parameter warning 2014-01-04 00:49:46 -05:00
Jean-Marc Valin
ef0eac497f Moving the radix-2 to expose trivial twiddle factors 2014-01-03 23:55:52 -05:00
Jean-Marc Valin
c8f62a4aed Improving the accuracy of the fixed-point radix-3 and radix-5 2013-12-31 00:00:37 -05:00
Jean-Marc Valin
e1f846208e Minor cleanup -- nothing to see here 2013-12-29 18:45:49 -05:00
Jean-Marc Valin
05291fd6a6 Fixed-point: slight accuracy improvement in the comb filter 2013-12-29 18:31:17 -05:00
Jean-Marc Valin
30f52cbe2d Remove a SAVE_STACK that was pasted accidentally in the previous commit 2013-12-29 16:21:06 -05:00
Jean-Marc Valin
e1dc1e2238 Unifying scaling of fixed-point and float FFT 2013-12-29 13:34:17 -05:00
Jean-Marc Valin
dbb96ab5cc Fixes C89 issue 2013-12-29 00:09:06 -05:00
Jean-Marc Valin
4c1a90a847 Getting rid of some negations
Since we're doing two rotations, we can invert the sign on both.
Also adding a few comments for optimizing the FFT.
2013-12-28 23:14:26 -05:00
Jean-Marc Valin
cc344fb8ff Slightly improving the accuracy of the fixed-point MDCT downscale
Also simplifying the code
2013-12-28 19:10:44 -05:00
Jean-Marc Valin
e0c00e27d8 Commit 99968ab was causing us to allocate too much stack in the MDCT 2013-12-27 03:16:34 -05:00