summaryrefslogtreecommitdiff
path: root/lib/rbcodec/codecs/libopus/opus_defines.h
diff options
context:
space:
mode:
authorNils Wallménius <nils@rockbox.org>2014-01-19 16:31:59 +0100
committerNils Wallménius <nils@rockbox.org>2014-07-13 11:12:40 +0200
commit9b7ec42403073ee887efc531c153e6b1b6c15bab (patch)
tree07e72fe9d817c65a6fede22955344a870842d5e6 /lib/rbcodec/codecs/libopus/opus_defines.h
parente557951c94c1efa769900257e466900f0ffeb53b (diff)
downloadrockbox-9b7ec42403073ee887efc531c153e6b1b6c15bab.tar.gz
rockbox-9b7ec42403073ee887efc531c153e6b1b6c15bab.zip
Sync to upstream libopus
Sync to commit bb4b6885a139644cf3ac14e7deda9f633ec2d93c This brings in a bunch of optimizations to decode speed and memory usage. Allocations are switched from using the pseudostack to using the real stack. Enabled hacks to reduce stack usage. This should fix crashes on sansa clip, although some files will not play due to failing allocations in the codec buffer. Speeds up decoding of the following test files: H300 (cf) C200 (arm7tdmi) ipod classic (arm9e) 16 kbps (silk) 14.28 MHz 4.00 MHz 2.61 MHz 64 kbps (celt) 4.09 MHz 8.08 MHz 6.24 MHz 128 kbps (celt) 1.93 MHz 8.83 MHz 6.53 MHz Change-Id: I851733a8a5824b61feb363a173091bc7e6629b58
Diffstat (limited to 'lib/rbcodec/codecs/libopus/opus_defines.h')
-rw-r--r--lib/rbcodec/codecs/libopus/opus_defines.h50
1 files changed, 25 insertions, 25 deletions
diff --git a/lib/rbcodec/codecs/libopus/opus_defines.h b/lib/rbcodec/codecs/libopus/opus_defines.h
index 265089f65e..84df7c7a18 100644
--- a/lib/rbcodec/codecs/libopus/opus_defines.h
+++ b/lib/rbcodec/codecs/libopus/opus_defines.h
@@ -454,14 +454,6 @@ extern "C" {
454 * @hideinitializer */ 454 * @hideinitializer */
455#define OPUS_GET_APPLICATION(x) OPUS_GET_APPLICATION_REQUEST, __opus_check_int_ptr(x) 455#define OPUS_GET_APPLICATION(x) OPUS_GET_APPLICATION_REQUEST, __opus_check_int_ptr(x)
456 456
457/** Gets the sampling rate the encoder or decoder was initialized with.
458 * This simply returns the <code>Fs</code> value passed to opus_encoder_init()
459 * or opus_decoder_init().
460 * @param[out] x <tt>opus_int32 *</tt>: Sampling rate of encoder or decoder.
461 * @hideinitializer
462 */
463#define OPUS_GET_SAMPLE_RATE(x) OPUS_GET_SAMPLE_RATE_REQUEST, __opus_check_int_ptr(x)
464
465/** Gets the total samples of delay added by the entire codec. 457/** Gets the total samples of delay added by the entire codec.
466 * This can be queried by the encoder and then the provided number of samples can be 458 * This can be queried by the encoder and then the provided number of samples can be
467 * skipped on from the start of the decoder's output to provide time aligned input 459 * skipped on from the start of the decoder's output to provide time aligned input
@@ -545,11 +537,6 @@ extern "C" {
545 * @hideinitializer */ 537 * @hideinitializer */
546#define OPUS_GET_LSB_DEPTH(x) OPUS_GET_LSB_DEPTH_REQUEST, __opus_check_int_ptr(x) 538#define OPUS_GET_LSB_DEPTH(x) OPUS_GET_LSB_DEPTH_REQUEST, __opus_check_int_ptr(x)
547 539
548/** Gets the duration (in samples) of the last packet successfully decoded or concealed.
549 * @param[out] x <tt>opus_int32 *</tt>: Number of samples (at current sampling rate).
550 * @hideinitializer */
551#define OPUS_GET_LAST_PACKET_DURATION(x) OPUS_GET_LAST_PACKET_DURATION_REQUEST, __opus_check_int_ptr(x)
552
553/** Configures the encoder's use of variable duration frames. 540/** Configures the encoder's use of variable duration frames.
554 * When variable duration is enabled, the encoder is free to use a shorter frame 541 * When variable duration is enabled, the encoder is free to use a shorter frame
555 * size than the one requested in the opus_encode*() call. 542 * size than the one requested in the opus_encode*() call.
@@ -649,18 +636,6 @@ extern "C" {
649 * @hideinitializer */ 636 * @hideinitializer */
650#define OPUS_GET_FINAL_RANGE(x) OPUS_GET_FINAL_RANGE_REQUEST, __opus_check_uint_ptr(x) 637#define OPUS_GET_FINAL_RANGE(x) OPUS_GET_FINAL_RANGE_REQUEST, __opus_check_uint_ptr(x)
651 638
652/** Gets the pitch of the last decoded frame, if available.
653 * This can be used for any post-processing algorithm requiring the use of pitch,
654 * e.g. time stretching/shortening. If the last frame was not voiced, or if the
655 * pitch was not coded in the frame, then zero is returned.
656 *
657 * This CTL is only implemented for decoder instances.
658 *
659 * @param[out] x <tt>opus_int32 *</tt>: pitch period at 48 kHz (or 0 if not available)
660 *
661 * @hideinitializer */
662#define OPUS_GET_PITCH(x) OPUS_GET_PITCH_REQUEST, __opus_check_int_ptr(x)
663
664/** Gets the encoder's configured bandpass or the decoder's last bandpass. 639/** Gets the encoder's configured bandpass or the decoder's last bandpass.
665 * @see OPUS_SET_BANDWIDTH 640 * @see OPUS_SET_BANDWIDTH
666 * @param[out] x <tt>opus_int32 *</tt>: Returns one of the following values: 641 * @param[out] x <tt>opus_int32 *</tt>: Returns one of the following values:
@@ -675,6 +650,14 @@ extern "C" {
675 * @hideinitializer */ 650 * @hideinitializer */
676#define OPUS_GET_BANDWIDTH(x) OPUS_GET_BANDWIDTH_REQUEST, __opus_check_int_ptr(x) 651#define OPUS_GET_BANDWIDTH(x) OPUS_GET_BANDWIDTH_REQUEST, __opus_check_int_ptr(x)
677 652
653/** Gets the sampling rate the encoder or decoder was initialized with.
654 * This simply returns the <code>Fs</code> value passed to opus_encoder_init()
655 * or opus_decoder_init().
656 * @param[out] x <tt>opus_int32 *</tt>: Sampling rate of encoder or decoder.
657 * @hideinitializer
658 */
659#define OPUS_GET_SAMPLE_RATE(x) OPUS_GET_SAMPLE_RATE_REQUEST, __opus_check_int_ptr(x)
660
678/**@}*/ 661/**@}*/
679 662
680/** @defgroup opus_decoderctls Decoder related CTLs 663/** @defgroup opus_decoderctls Decoder related CTLs
@@ -699,6 +682,23 @@ extern "C" {
699 * @hideinitializer */ 682 * @hideinitializer */
700#define OPUS_GET_GAIN(x) OPUS_GET_GAIN_REQUEST, __opus_check_int_ptr(x) 683#define OPUS_GET_GAIN(x) OPUS_GET_GAIN_REQUEST, __opus_check_int_ptr(x)
701 684
685/** Gets the duration (in samples) of the last packet successfully decoded or concealed.
686 * @param[out] x <tt>opus_int32 *</tt>: Number of samples (at current sampling rate).
687 * @hideinitializer */
688#define OPUS_GET_LAST_PACKET_DURATION(x) OPUS_GET_LAST_PACKET_DURATION_REQUEST, __opus_check_int_ptr(x)
689
690/** Gets the pitch of the last decoded frame, if available.
691 * This can be used for any post-processing algorithm requiring the use of pitch,
692 * e.g. time stretching/shortening. If the last frame was not voiced, or if the
693 * pitch was not coded in the frame, then zero is returned.
694 *
695 * This CTL is only implemented for decoder instances.
696 *
697 * @param[out] x <tt>opus_int32 *</tt>: pitch period at 48 kHz (or 0 if not available)
698 *
699 * @hideinitializer */
700#define OPUS_GET_PITCH(x) OPUS_GET_PITCH_REQUEST, __opus_check_int_ptr(x)
701
702/**@}*/ 702/**@}*/
703 703
704/** @defgroup opus_libinfo Opus library information functions 704/** @defgroup opus_libinfo Opus library information functions