diff --git a/libs/celt/README_LLCON b/libs/celt/README_LLCON index bebe87bb..aa7efd02 100755 --- a/libs/celt/README_LLCON +++ b/libs/celt/README_LLCON @@ -7,6 +7,7 @@ Changes made to libcelt to be compatible to llcon: - replaced all "restricted" by "__restricted" and all "inline" by "__inline" +- added a "cc6_" prior to all file names, functions and global variables ---------------------------------------------------------------------------------- Attempt to use newer version failed due to the following reasons: diff --git a/libs/celt/_kiss_fft.c b/libs/celt/cc6__kiss_fft.c similarity index 100% rename from libs/celt/_kiss_fft.c rename to libs/celt/cc6__kiss_fft.c diff --git a/libs/celt/_kiss_fft_guts.h b/libs/celt/cc6__kiss_fft_guts.h similarity index 100% rename from libs/celt/_kiss_fft_guts.h rename to libs/celt/cc6__kiss_fft_guts.h diff --git a/libs/celt/_kiss_fftr.c b/libs/celt/cc6__kiss_fftr.c similarity index 100% rename from libs/celt/_kiss_fftr.c rename to libs/celt/cc6__kiss_fftr.c diff --git a/libs/celt/arch.h b/libs/celt/cc6_arch.h similarity index 100% rename from libs/celt/arch.h rename to libs/celt/cc6_arch.h diff --git a/libs/celt/bands.c b/libs/celt/cc6_bands.c similarity index 100% rename from libs/celt/bands.c rename to libs/celt/cc6_bands.c diff --git a/libs/celt/bands.h b/libs/celt/cc6_bands.h similarity index 100% rename from libs/celt/bands.h rename to libs/celt/cc6_bands.h diff --git a/libs/celt/celt.c b/libs/celt/cc6_celt.c similarity index 100% rename from libs/celt/celt.c rename to libs/celt/cc6_celt.c diff --git a/libs/celt/celt_header.h b/libs/celt/cc6_celt_header.h similarity index 100% rename from libs/celt/celt_header.h rename to libs/celt/cc6_celt_header.h diff --git a/libs/celt/celt_types.h b/libs/celt/cc6_celt_types.h similarity index 95% rename from libs/celt/celt_types.h rename to libs/celt/cc6_celt_types.h index 02b5f940..2915d592 100755 --- a/libs/celt/celt_types.h +++ b/libs/celt/cc6_celt_types.h @@ -12,7 +12,7 @@ ******************************************************************** function: #ifdef jail to whip a few platforms into the UNIX ideal. - last mod: $Id: celt_types.h,v 1.1 2009-08-12 18:50:49 corrados Exp $ + last mod: $Id: cc6_celt_types.h,v 1.1 2013-02-13 17:02:23 corrados Exp $ ********************************************************************/ /** diff --git a/libs/celt/cwrs.c b/libs/celt/cc6_cwrs.c similarity index 100% rename from libs/celt/cwrs.c rename to libs/celt/cc6_cwrs.c diff --git a/libs/celt/header.c b/libs/celt/header.c index 2df23189..a24fa5ba 100755 --- a/libs/celt/header.c +++ b/libs/celt/header.c @@ -1,140 +1,140 @@ -/* (C) 2008 Jean-Marc Valin, CSIRO -*/ -/* - 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. -*/ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include "celt_header.h" -#include "os_support.h" -#include "modes.h" - -/*typedef struct { - char codec_id[8]; - char codec_version[20]; - celt_int32_t version_id; - celt_int32_t header_size; - celt_int32_t mode; - celt_int32_t sample_rate; - celt_int32_t nb_channels; - celt_int32_t bytes_per_packet; - celt_int32_t extra_headers; -} CELTHeader;*/ - -static celt_uint32_t -_le_32 (celt_uint32_t i) -{ - celt_uint32_t ret=i; -#if !defined(__LITTLE_ENDIAN__) && ( defined(WORDS_BIGENDIAN) || defined(__BIG_ENDIAN__) ) - ret = (i>>24); - ret += (i>>8) & 0x0000ff00; - ret += (i<<8) & 0x00ff0000; - ret += (i<<24); -#endif - return ret; -} - -int celt_header_init(CELTHeader *header, const CELTMode *m) -{ - - if (check_mode(m) != CELT_OK) - return CELT_INVALID_MODE; - if (header==NULL) - return CELT_BAD_ARG; - - CELT_COPY(header->codec_id, "CELT ", 8); - CELT_COPY(header->codec_version, "experimental ", 20); - - celt_mode_info(m, CELT_GET_BITSTREAM_VERSION, &header->version_id); - header->header_size = 56; - header->sample_rate = m->Fs; - header->nb_channels = m->nbChannels; - header->frame_size = m->mdctSize; - header->overlap = m->overlap; - header->bytes_per_packet = -1; - header->extra_headers = 0; - return CELT_OK; -} - -int celt_header_to_packet(const CELTHeader *header, unsigned char *packet, celt_uint32_t size) -{ - celt_int32_t * h; - - if ((size < 56) || (header==NULL) || (packet==NULL)) - return CELT_BAD_ARG; /* FAIL */ - - CELT_MEMSET(packet, 0, sizeof(*header)); - /* FIXME: Do it in an alignment-safe manner */ - - /* Copy ident and version */ - CELT_COPY(packet, (unsigned char*)header, 28); - - /* Copy the int32 fields */ - h = (celt_int32_t*)(packet+28); - *h++ = _le_32 (header->version_id); - *h++ = _le_32 (header->header_size); - *h++ = _le_32 (header->sample_rate); - *h++ = _le_32 (header->nb_channels); - *h++ = _le_32 (header->frame_size); - *h++ = _le_32 (header->overlap); - *h++ = _le_32 (header->bytes_per_packet); - *h = _le_32 (header->extra_headers); - - return sizeof(*header); -} - -int celt_header_from_packet(const unsigned char *packet, celt_uint32_t size, CELTHeader *header) -{ - celt_int32_t * h; - - if ((size < 56) || (header==NULL) || (packet==NULL)) - return CELT_BAD_ARG; /* FAIL */ - - CELT_MEMSET((unsigned char*)header, 0, sizeof(*header)); - /* FIXME: Do it in an alignment-safe manner */ - - /* Copy ident and version */ - CELT_COPY((unsigned char*)header, packet, 28); - - /* Copy the int32 fields */ - h = (celt_int32_t*)(packet+28); - header->version_id = _le_32(*h++); - header->header_size = _le_32(*h++); - header->sample_rate = _le_32(*h++); - header->nb_channels = _le_32(*h++); - header->frame_size = _le_32(*h++); - header->overlap = _le_32(*h++); - header->bytes_per_packet = _le_32(*h++); - header->extra_headers = _le_32(*h); - - return sizeof(*header); -} - +/* (C) 2008 Jean-Marc Valin, CSIRO +*/ +/* + 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. +*/ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include "cc6_celt_header.h" +#include "os_support.h" +#include "modes.h" + +/*typedef struct { + char codec_id[8]; + char codec_version[20]; + celt_int32_t version_id; + celt_int32_t header_size; + celt_int32_t mode; + celt_int32_t sample_rate; + celt_int32_t nb_channels; + celt_int32_t bytes_per_packet; + celt_int32_t extra_headers; +} CELTHeader;*/ + +static celt_uint32_t +_le_32 (celt_uint32_t i) +{ + celt_uint32_t ret=i; +#if !defined(__LITTLE_ENDIAN__) && ( defined(WORDS_BIGENDIAN) || defined(__BIG_ENDIAN__) ) + ret = (i>>24); + ret += (i>>8) & 0x0000ff00; + ret += (i<<8) & 0x00ff0000; + ret += (i<<24); +#endif + return ret; +} + +int celt_header_init(CELTHeader *header, const CELTMode *m) +{ + + if (check_mode(m) != CELT_OK) + return CELT_INVALID_MODE; + if (header==NULL) + return CELT_BAD_ARG; + + CELT_COPY(header->codec_id, "CELT ", 8); + CELT_COPY(header->codec_version, "experimental ", 20); + + celt_mode_info(m, CELT_GET_BITSTREAM_VERSION, &header->version_id); + header->header_size = 56; + header->sample_rate = m->Fs; + header->nb_channels = m->nbChannels; + header->frame_size = m->mdctSize; + header->overlap = m->overlap; + header->bytes_per_packet = -1; + header->extra_headers = 0; + return CELT_OK; +} + +int celt_header_to_packet(const CELTHeader *header, unsigned char *packet, celt_uint32_t size) +{ + celt_int32_t * h; + + if ((size < 56) || (header==NULL) || (packet==NULL)) + return CELT_BAD_ARG; /* FAIL */ + + CELT_MEMSET(packet, 0, sizeof(*header)); + /* FIXME: Do it in an alignment-safe manner */ + + /* Copy ident and version */ + CELT_COPY(packet, (unsigned char*)header, 28); + + /* Copy the int32 fields */ + h = (celt_int32_t*)(packet+28); + *h++ = _le_32 (header->version_id); + *h++ = _le_32 (header->header_size); + *h++ = _le_32 (header->sample_rate); + *h++ = _le_32 (header->nb_channels); + *h++ = _le_32 (header->frame_size); + *h++ = _le_32 (header->overlap); + *h++ = _le_32 (header->bytes_per_packet); + *h = _le_32 (header->extra_headers); + + return sizeof(*header); +} + +int celt_header_from_packet(const unsigned char *packet, celt_uint32_t size, CELTHeader *header) +{ + celt_int32_t * h; + + if ((size < 56) || (header==NULL) || (packet==NULL)) + return CELT_BAD_ARG; /* FAIL */ + + CELT_MEMSET((unsigned char*)header, 0, sizeof(*header)); + /* FIXME: Do it in an alignment-safe manner */ + + /* Copy ident and version */ + CELT_COPY((unsigned char*)header, packet, 28); + + /* Copy the int32 fields */ + h = (celt_int32_t*)(packet+28); + header->version_id = _le_32(*h++); + header->header_size = _le_32(*h++); + header->sample_rate = _le_32(*h++); + header->nb_channels = _le_32(*h++); + header->frame_size = _le_32(*h++); + header->overlap = _le_32(*h++); + header->bytes_per_packet = _le_32(*h++); + header->extra_headers = _le_32(*h); + + return sizeof(*header); +} + diff --git a/llcon.pro b/llcon.pro index 9d15d030..8033e501 100755 --- a/llcon.pro +++ b/llcon.pro @@ -97,7 +97,7 @@ HEADERS += src/audiomixerboard.h \ src/util.h \ libs/celt/cc6_celt.h \ libs/celt/celt_types.h \ - libs/celt/celt_header.h \ + libs/celt/cc6_celt_header.h \ libs/celt/_kiss_fft_guts.h \ libs/celt/arch.h \ libs/celt/bands.h \ @@ -155,7 +155,7 @@ SOURCES += src/audiomixerboard.cpp \ libs/celt/entenc.c \ libs/celt/header.c \ libs/celt/kfft_single.c \ - libs/celt/_kiss_fft.c \ + libs/celt/cc6__kiss_fft.c \ libs/celt/_kiss_fftr.c \ libs/celt/laplace.c \ libs/celt/mdct.c \