diff options
author | Jean-Marc Valin <jean-marc.valin@octasic.com> | 2010-06-30 22:29:45 +0400 |
---|---|---|
committer | Jean-Marc Valin <jean-marc.valin@octasic.com> | 2010-06-30 22:29:45 +0400 |
commit | 24af30377eb98a9821e0069e7c8d41b612015569 (patch) | |
tree | 8efb2eeaee65a6276cfb1668713090e137c72fb1 /src | |
parent | 3e66e912659593119fc82d010a225440f3cf772a (diff) |
API file
Diffstat (limited to 'src')
-rw-r--r-- | src/hybrid.h | 39 | ||||
-rw-r--r-- | src/hybrid_encoder.c | 4 | ||||
-rw-r--r-- | src/hybrid_encoder.h | 13 | ||||
-rw-r--r-- | src/test_hybrid.c | 41 |
4 files changed, 87 insertions, 10 deletions
diff --git a/src/hybrid.h b/src/hybrid.h new file mode 100644 index 00000000..37d7f020 --- /dev/null +++ b/src/hybrid.h @@ -0,0 +1,39 @@ +/* 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. + + - Neither the name of the Xiph.org Foundation nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + 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. +*/ + +typedef struct HybridEncoder HybridEncoder; + +HybridEncoder *hybrid_encoder_create(); + +int hybrid_encode(HybridEncoder *st, short *pcm, int frame_size, + unsigned char *data, int bytes_per_packet); + +void hybrid_encoder_destroy(HybridEncoder *st); diff --git a/src/hybrid_encoder.c b/src/hybrid_encoder.c index 29393e6a..b7120529 100644 --- a/src/hybrid_encoder.c +++ b/src/hybrid_encoder.c @@ -35,6 +35,7 @@ #include <stdlib.h> #include "hybrid_encoder.h" +#include "celt/libcelt/entenc.h" HybridEncoder *hybrid_encoder_create() @@ -58,6 +59,9 @@ int hybrid_encode(HybridEncoder *st, short *pcm, int frame_size, unsigned char *data, int bytes_per_packet) { int celt_ret; + ec_enc enc; + + /* FIXME: Call SILK encoder for the low band */ /* This should be adjusted based on the SILK bandwidth */ diff --git a/src/hybrid_encoder.h b/src/hybrid_encoder.h index b8dc6f80..2b2a4e9a 100644 --- a/src/hybrid_encoder.h +++ b/src/hybrid_encoder.h @@ -33,20 +33,13 @@ #define HYBRID_ENCODER_H #include "celt/libcelt/celt.h" +#include "hybrid.h" -typedef struct { +struct HybridEncoder { CELTMode *celt_mode; CELTEncoder *celt_enc; void *silk_enc; -} HybridEncoder; - - -HybridEncoder *hybrid_encoder_create(); - -int hybrid_encode(HybridEncoder *st, short *pcm, int frame_size, - unsigned char *data, int bytes_per_packet); - -void hybrid_encoder_destroy(HybridEncoder *st); +}; #endif /* HYBRID_ENCODER_H */ diff --git a/src/test_hybrid.c b/src/test_hybrid.c new file mode 100644 index 00000000..2e25da56 --- /dev/null +++ b/src/test_hybrid.c @@ -0,0 +1,41 @@ +/* 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. + + - Neither the name of the Xiph.org Foundation nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + 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. +*/ + + +#include "hybrid.h" + +int main(int argc, char **argv) +{ + HybridEncoder *enc; + + enc = hybrid_encoder_create(); + return 0; +} |