shithub: opus

Download patch

ref: d9920f34e9c48472b5788d6b3cf288c908c2d2ba
parent: 7954065c77041eb1ba84b146553a47074ce5862e
author: Jean-Marc Valin <[email protected]>
date: Fri Aug 19 09:00:49 EDT 2011

Removes opus_encoder.h and opus_decoder.h

Moves opaque structs directly to .c files

--- a/opus_headers.txt
+++ b/opus_headers.txt
@@ -1,4 +1,2 @@
 OPUS_HEAD = \
-src/opus_decoder.h \
-src/opus_encoder.h \
 src/opus.h
--- a/src/opus_decoder.c
+++ b/src/opus_decoder.c
@@ -34,7 +34,7 @@
 #include <stdio.h>
 #include <stdarg.h>
 #include "celt.h"
-#include "opus_decoder.h"
+#include "opus.h"
 #include "entdec.h"
 #include "modes.h"
 #include "silk_API.h"
@@ -47,6 +47,29 @@
 #define celt_decode_native celt_decode_float
 #endif
 
+struct OpusDecoder {
+   int          celt_dec_offset;
+   int          silk_dec_offset;
+   int          channels;
+   int          stream_channels;
+
+    int          bandwidth;
+    /* Sampling rate (at the API level) */
+    int          Fs;
+    int          mode;
+    int          prev_mode;
+    int          frame_size;
+    int          prev_redundancy;
+
+    int          rangeFinal;
+};
+
+#ifdef FIXED_POINT
+static inline opus_int16 SAT16(opus_int32 x) {
+    return x > 32767 ? 32767 : x < -32768 ? -32768 : (opus_int16)x;
+};
+#endif
+
 /* Make sure everything's aligned to 4 bytes (this may need to be increased
    on really weird architectures) */
 static inline int align(int i)
@@ -161,6 +184,7 @@
     opus_int32 silk_frame_size;
     VARDECL(opus_int16, pcm_silk);
     VARDECL(opus_val16, pcm_transition);
+    VARDECL(opus_val16, redundant_audio);
 
     int audiosize;
     int mode;
--- a/src/opus_decoder.h
+++ /dev/null
@@ -1,56 +1,0 @@
-/* Copyright (c) 2010 Xiph.Org Foundation
-   Written by Jean-Marc Valin */
-/*
-   Redistribution and use in source and binary forms, with or without
-   modification, are permitted provided that the following conditions
-   are met:
-
-   - Redistributions of source code must retain the above copyright
-   notice, this list of conditions and the following disclaimer.
-
-   - Redistributions in binary form must reproduce the above copyright
-   notice, this list of conditions and the following disclaimer in the
-   documentation and/or other materials provided with the distribution.
-
-   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-   ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-   A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR
-   CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-   EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-   PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-   PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-   LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-   SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-#ifndef OPUS_DECODER_H
-#define OPUS_DECODER_H
-
-#include "celt.h"
-#include "opus.h"
-
-struct OpusDecoder {
-	int          celt_dec_offset;
-	int          silk_dec_offset;
-	int          channels;
-	int          stream_channels;
-
-    int          bandwidth;
-    /* Sampling rate (at the API level) */
-    int          Fs;
-    int          mode;
-    int          prev_mode;
-    int          frame_size;
-    int          prev_redundancy;
-
-    int          rangeFinal;
-};
-
-static inline opus_int16 SAT16(opus_int32 x) {
-    return x > 32767 ? 32767 : x < -32768 ? -32768 : (opus_int16)x;
-};
-
-#endif /* OPUS_DECODER_H */
-
--- a/src/opus_encoder.c
+++ b/src/opus_encoder.c
@@ -34,12 +34,13 @@
 #include <stdio.h>
 #include <stdarg.h>
 #include "celt.h"
-#include "opus_encoder.h"
 #include "entenc.h"
 #include "modes.h"
 #include "silk_API.h"
 #include "stack_alloc.h"
 #include "float_cast.h"
+#include "opus.h"
+#include "arch.h"
 
 #ifdef FIXED_POINT
 #define celt_encode_native celt_encode
@@ -46,6 +47,38 @@
 #else
 #define celt_encode_native celt_encode_float
 #endif
+
+#define MAX_ENCODER_BUFFER 480
+
+struct OpusEncoder {
+    int          celt_enc_offset;
+    int          silk_enc_offset;
+    silk_EncControlStruct silk_mode;
+    int          hybrid_stereo_width_Q14;
+    int          channels;
+    int          stream_channels;
+    int          force_mono;
+
+    int          mode;
+    int          application;
+    int          prev_mode;
+    int          signal_type;
+    int          bandwidth;
+    int          user_bandwidth;
+    int          voice_ratio;
+    /* Sampling rate (at the API level) */
+    int          Fs;
+    int          use_vbr;
+    int          vbr_constraint;
+    int          bitrate_bps;
+    int          user_bitrate_bps;
+    int          encoder_buffer;
+    int          delay_compensation;
+    int          first;
+    opus_val16   delay_buffer[MAX_ENCODER_BUFFER*2];
+
+    int          rangeFinal;
+};
 
 /* Transition tables for the voice and audio modes. First column is the
    middle (memoriless) threshold. The second column is the hysteresis
--- a/src/opus_encoder.h
+++ /dev/null
@@ -1,69 +1,0 @@
-/* Copyright (c) 2010 Xiph.Org Foundation
-   Written by Jean-Marc Valin */
-/*
-   Redistribution and use in source and binary forms, with or without
-   modification, are permitted provided that the following conditions
-   are met:
-
-   - Redistributions of source code must retain the above copyright
-   notice, this list of conditions and the following disclaimer.
-
-   - Redistributions in binary form must reproduce the above copyright
-   notice, this list of conditions and the following disclaimer in the
-   documentation and/or other materials provided with the distribution.
-
-   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-   ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-   A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR
-   CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-   EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-   PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-   PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-   LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-   SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-#ifndef OPUS_ENCODER_H
-#define OPUS_ENCODER_H
-
-#include "celt.h"
-#include "opus.h"
-#include "silk_API.h"
-#include "arch.h"
-
-#define MAX_ENCODER_BUFFER 480
-
-struct OpusEncoder {
-    int          celt_enc_offset;
-    int          silk_enc_offset;
-    silk_EncControlStruct silk_mode;
-    int          hybrid_stereo_width_Q14;
-    int          channels;
-    int          stream_channels;
-    int          force_mono;
-
-    int          mode;
-    int          application;
-    int          prev_mode;
-    int          signal_type;
-    int          bandwidth;
-    int          user_bandwidth;
-    int          voice_ratio;
-    /* Sampling rate (at the API level) */
-    int          Fs;
-    int          use_vbr;
-    int          vbr_constraint;
-    int          bitrate_bps;
-    int          user_bitrate_bps;
-    int          encoder_buffer;
-    int          delay_compensation;
-    int          first;
-    opus_val16   delay_buffer[MAX_ENCODER_BUFFER*2];
-
-    int          rangeFinal;
-};
-
-
-#endif /* OPUS_ENCODER_H */