summaryrefslogtreecommitdiffstats
path: root/branches/1.0/thirdparties/android
diff options
context:
space:
mode:
Diffstat (limited to 'branches/1.0/thirdparties/android')
-rw-r--r--branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bitpack.h35
-rw-r--r--branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bv16.h47
-rw-r--r--branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bv16cnst.h132
-rw-r--r--branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bv16externs.h157
-rw-r--r--branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bv16strct.h96
-rw-r--r--branches/1.0/thirdparties/android/include/BroadVoice16/bv16/g192.h30
-rw-r--r--branches/1.0/thirdparties/android/include/BroadVoice16/bv16/postfilt.h34
-rw-r--r--branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/basop32.h22
-rw-r--r--branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/bvcommon.h130
-rw-r--r--branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/mathutil.h47
-rw-r--r--branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/memutil.h31
-rw-r--r--branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/typedef.h36
-rw-r--r--branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/utility.h31
-rw-r--r--branches/1.0/thirdparties/android/include/g729a/BASIC_OP.H64
-rw-r--r--branches/1.0/thirdparties/android/include/g729a/LD8A.H623
-rw-r--r--branches/1.0/thirdparties/android/include/g729a/OPER_32B.H18
-rw-r--r--branches/1.0/thirdparties/android/include/g729a/TAB_LD8A.H45
-rw-r--r--branches/1.0/thirdparties/android/include/g729a/TYPEDEF.H36
-rw-r--r--branches/1.0/thirdparties/android/include/g729b/basic_op.h63
-rw-r--r--branches/1.0/thirdparties/android/include/g729b/dtx.h99
-rw-r--r--branches/1.0/thirdparties/android/include/g729b/ld8a.h629
-rw-r--r--branches/1.0/thirdparties/android/include/g729b/octet.h20
-rw-r--r--branches/1.0/thirdparties/android/include/g729b/oper_32b.h17
-rw-r--r--branches/1.0/thirdparties/android/include/g729b/sid.h23
-rw-r--r--branches/1.0/thirdparties/android/include/g729b/tab_dtx.h28
-rw-r--r--branches/1.0/thirdparties/android/include/g729b/tab_ld8a.h52
-rw-r--r--branches/1.0/thirdparties/android/include/g729b/typedef.h35
-rw-r--r--branches/1.0/thirdparties/android/include/g729b/vad.h30
-rw-r--r--branches/1.0/thirdparties/android/include/gsm.h71
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/FrameClassify.h27
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/LPCdecode.h52
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/LPCencode.h27
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/StateConstructW.h31
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/StateSearchW.h52
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/anaFilter.h30
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/constants.h81
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/createCB.h58
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/doCPLC.h28
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/enhancer.h36
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/filter.h81
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/gainquant.h29
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/getCBvec.h24
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/helpfun.h107
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/hpInput.h23
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/hpOutput.h23
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/iCBConstruct.h40
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/iCBSearch.h37
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/iLBC_decode.h42
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/iLBC_define.h220
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/iLBC_encode.h39
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/lsf.h26
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/packing.h68
-rw-r--r--branches/1.0/thirdparties/android/include/ilbc/syntFilter.h23
-rw-r--r--branches/1.0/thirdparties/android/include/libavcodec/avcodec.h4045
-rw-r--r--branches/1.0/thirdparties/android/include/libavcodec/avfft.h99
-rw-r--r--branches/1.0/thirdparties/android/include/libavcodec/dxva2.h68
-rw-r--r--branches/1.0/thirdparties/android/include/libavcodec/opt.h211
-rw-r--r--branches/1.0/thirdparties/android/include/libavcodec/vaapi.h167
-rw-r--r--branches/1.0/thirdparties/android/include/libavcodec/vdpau.h88
-rw-r--r--branches/1.0/thirdparties/android/include/libavcodec/xvmc.h172
-rw-r--r--branches/1.0/thirdparties/android/include/libavcore/avcore.h58
-rw-r--r--branches/1.0/thirdparties/android/include/libavcore/imgutils.h53
-rw-r--r--branches/1.0/thirdparties/android/include/libavcore/parseutils.h53
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/adler32.h42
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/attributes.h121
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/avconfig.h6
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/avstring.h117
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/avutil.h89
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/base64.h54
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/bswap.h124
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/common.h346
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/crc.h44
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/error.h74
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/eval.h111
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/fifo.h116
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/intfloat_readwrite.h40
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/intreadwrite.h522
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/lfg.h62
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/log.h138
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/lzo.h66
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/mathematics.h112
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/md5.h36
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/mem.h126
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/pixdesc.h154
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/pixfmt.h163
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/random_seed.h31
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/rational.h129
-rw-r--r--branches/1.0/thirdparties/android/include/libavutil/sha1.h57
-rw-r--r--branches/1.0/thirdparties/android/include/libswscale/swscale.h331
-rw-r--r--branches/1.0/thirdparties/android/include/ogg/config_types.h11
-rw-r--r--branches/1.0/thirdparties/android/include/ogg/ogg.h208
-rw-r--r--branches/1.0/thirdparties/android/include/ogg/os_types.h139
-rw-r--r--branches/1.0/thirdparties/android/include/opencore-amrnb/interf_dec.h34
-rw-r--r--branches/1.0/thirdparties/android/include/opencore-amrnb/interf_enc.h50
-rw-r--r--branches/1.0/thirdparties/android/include/opencore-amrwb/dec_if.h36
-rw-r--r--branches/1.0/thirdparties/android/include/opencore-amrwb/if_rom.h33
-rw-r--r--branches/1.0/thirdparties/android/include/speex/speex.h424
-rw-r--r--branches/1.0/thirdparties/android/include/speex/speex_bits.h174
-rw-r--r--branches/1.0/thirdparties/android/include/speex/speex_buffer.h68
-rw-r--r--branches/1.0/thirdparties/android/include/speex/speex_callbacks.h134
-rw-r--r--branches/1.0/thirdparties/android/include/speex/speex_echo.h170
-rw-r--r--branches/1.0/thirdparties/android/include/speex/speex_header.h94
-rw-r--r--branches/1.0/thirdparties/android/include/speex/speex_jitter.h197
-rw-r--r--branches/1.0/thirdparties/android/include/speex/speex_preprocess.h219
-rw-r--r--branches/1.0/thirdparties/android/include/speex/speex_resampler.h340
-rw-r--r--branches/1.0/thirdparties/android/include/speex/speex_stereo.h91
-rw-r--r--branches/1.0/thirdparties/android/include/speex/speex_types.h133
-rw-r--r--branches/1.0/thirdparties/android/include/theora/codec.h591
-rw-r--r--branches/1.0/thirdparties/android/include/theora/theora.h784
-rw-r--r--branches/1.0/thirdparties/android/include/theora/theoradec.h325
-rw-r--r--branches/1.0/thirdparties/android/include/theora/theoraenc.h500
-rw-r--r--branches/1.0/thirdparties/android/include/vorbis/codec.h243
-rw-r--r--branches/1.0/thirdparties/android/include/vorbis/vorbisenc.h112
-rw-r--r--branches/1.0/thirdparties/android/include/vorbis/vorbisfile.h206
-rw-r--r--branches/1.0/thirdparties/android/lib/pkgconfig/libavcodec.pc14
-rw-r--r--branches/1.0/thirdparties/android/lib/pkgconfig/libavutil.pc14
-rw-r--r--branches/1.0/thirdparties/android/lib/pkgconfig/libswscale.pc14
-rw-r--r--branches/1.0/thirdparties/android/lib/pkgconfig/ogg.pc14
-rw-r--r--branches/1.0/thirdparties/android/lib/pkgconfig/opencore-amrnb.pc10
-rw-r--r--branches/1.0/thirdparties/android/lib/pkgconfig/opencore-amrwb.pc10
-rw-r--r--branches/1.0/thirdparties/android/lib/pkgconfig/theora.pc14
-rw-r--r--branches/1.0/thirdparties/android/lib/pkgconfig/theoradec.pc14
-rw-r--r--branches/1.0/thirdparties/android/lib/pkgconfig/theoraenc.pc14
-rw-r--r--branches/1.0/thirdparties/android/lib/pkgconfig/vorbis.pc14
-rw-r--r--branches/1.0/thirdparties/android/lib/pkgconfig/vorbisenc.pc14
-rw-r--r--branches/1.0/thirdparties/android/lib/pkgconfig/vorbisfile.pc14
-rw-r--r--branches/1.0/thirdparties/android/lib/pkgconfig/x264.pc10
127 files changed, 0 insertions, 17596 deletions
diff --git a/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bitpack.h b/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bitpack.h
deleted file mode 100644
index 032cf42..0000000
--- a/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bitpack.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*****************************************************************************/
-/* BroadVoice(R)16 (BV16) Fixed-Point ANSI-C Source Code */
-/* Revision Date: November 13, 2009 */
-/* Version 1.1 */
-/*****************************************************************************/
-
-/*****************************************************************************/
-/* Copyright 2000-2009 Broadcom Corporation */
-/* */
-/* This software is provided under the GNU Lesser General Public License, */
-/* version 2.1, as published by the Free Software Foundation ("LGPL"). */
-/* This program is distributed in the hope that it will be useful, but */
-/* WITHOUT ANY SUPPORT OR WARRANTY; without even the implied warranty of */
-/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LGPL for */
-/* more details. A copy of the LGPL is available at */
-/* http://www.broadcom.com/licenses/LGPLv2.1.php, */
-/* or by writing to the Free Software Foundation, Inc., */
-/* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-/*****************************************************************************/
-
-
-
-/*****************************************************************************
- bitpack.h: BV16 bit packing routines
-
- $Log$
-******************************************************************************/
-
-#ifndef BITPACK_H
-#define BITPACK_H
-
-void BV16_BitPack(UWord8 * PackedStream, struct BV16_Bit_Stream * BitStruct );
-void BV16_BitUnPack(UWord8 * PackedStream, struct BV16_Bit_Stream * BitStruct );
-
-#endif
diff --git a/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bv16.h b/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bv16.h
deleted file mode 100644
index df9e5ce..0000000
--- a/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bv16.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/*****************************************************************************/
-/* BroadVoice(R)16 (BV16) Fixed-Point ANSI-C Source Code */
-/* Revision Date: November 13, 2009 */
-/* Version 1.1 */
-/*****************************************************************************/
-
-/*****************************************************************************/
-/* Copyright 2000-2009 Broadcom Corporation */
-/* */
-/* This software is provided under the GNU Lesser General Public License, */
-/* version 2.1, as published by the Free Software Foundation ("LGPL"). */
-/* This program is distributed in the hope that it will be useful, but */
-/* WITHOUT ANY SUPPORT OR WARRANTY; without even the implied warranty of */
-/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LGPL for */
-/* more details. A copy of the LGPL is available at */
-/* http://www.broadcom.com/licenses/LGPLv2.1.php, */
-/* or by writing to the Free Software Foundation, Inc., */
-/* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-/*****************************************************************************/
-
-
-/*****************************************************************************
- bv16.h :
-
- $Log$
-******************************************************************************/
-
-void Reset_BV16_Encoder(
-struct BV16_Encoder_State *cs);
-
-void BV16_Encode(
-struct BV16_Bit_Stream *bs,
-struct BV16_Encoder_State *cs,
-Word16 *inx);
-
-void Reset_BV16_Decoder(
-struct BV16_Decoder_State *ds);
-
-void BV16_Decode(
-struct BV16_Bit_Stream *bs,
-struct BV16_Decoder_State *ds,
-Word16 *xq);
-
-void BV16_PLC(
-struct BV16_Decoder_State *ds,
-Word16 *x);
-
diff --git a/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bv16cnst.h b/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bv16cnst.h
deleted file mode 100644
index f6b42b5..0000000
--- a/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bv16cnst.h
+++ /dev/null
@@ -1,132 +0,0 @@
-/*****************************************************************************/
-/* BroadVoice(R)16 (BV16) Fixed-Point ANSI-C Source Code */
-/* Revision Date: November 13, 2009 */
-/* Version 1.1 */
-/*****************************************************************************/
-
-/*****************************************************************************/
-/* Copyright 2000-2009 Broadcom Corporation */
-/* */
-/* This software is provided under the GNU Lesser General Public License, */
-/* version 2.1, as published by the Free Software Foundation ("LGPL"). */
-/* This program is distributed in the hope that it will be useful, but */
-/* WITHOUT ANY SUPPORT OR WARRANTY; without even the implied warranty of */
-/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LGPL for */
-/* more details. A copy of the LGPL is available at */
-/* http://www.broadcom.com/licenses/LGPLv2.1.php, */
-/* or by writing to the Free Software Foundation, Inc., */
-/* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-/*****************************************************************************/
-
-
-/*****************************************************************************
- bv16cnst.h : BV16 constants
-
- $Log$
-******************************************************************************/
-
-#ifndef BV16CNST_H
-#define BV16CNST_H
-
-/* ----- Basic Codec Parameters ----- */
-#define FRSZ 40 /* frame size */
-#define WINSZ 160 /* lpc analysis WINdow SiZe */
-#define MAXPP 137 /* MAXimum Pitch Period */
-#define MINPP 10 /* MINimum Pitch Period */
-#define PWSZ 120 /* Pitch analysis Window SiZe */
-#define MAXPP1 (MAXPP+1)/* MAXimum Pitch Period + 1 */
-
-/* Quantization parameters */
-#define VDIM 4 /* excitation vector dimension */
-#define CBSZ 16 /* excitation codebook size */
-#define PPCBSZ 32 /* pitch predictor codebook size */
-#define LGPORDER 8 /* Log-Gain Predictor OODER */
-#define LGPECBSZ 16 /* Log-Gain Prediction Error CodeBook SiZe */
-#define LSPPORDER 8 /* LSP MA Predictor ORDER */
-#define LSPECBSZ1 128 /* codebook size of 1st-stage LSP VQ */
-#define LSPECBSZ2 64 /* codebook size of 2nd-stage LSP VQ; 1-bit for sign */
-
-/* Excitation gain quantization */
-#define GPO 8 /* order of MA prediction */
-#define NG 18 /* number of relative gain bins */
-#define GLB -24. /* lower relative gain bound */
-#define NGC 12 /* number of gain change bins */
-#define GCLB -8. /* lower gain change bound */
-#define Minlg 0. /* minimum log-gain */
-#define TMinlg 1. /* minimum linear gain */
-#define LGCBSZ 16 /* size of codebook */
-
-/* Definitions for periodicity to gain scaling mapping */
-#define ScPLCGmin 1639 /* 0.1 Q14 */
-#define ScPLCGmax 14746 /* 0.9 Q14 */
-#define ScPLCG_b -32768 /* -2.0 in Q14 */
-#define ScPLCG_a 31129 /* 1.9 in Q14 */
-#define HoldPLCG 8
-#define AttnPLCG 50
-#define AttnFacPLCG 20971
-
-/* Level Estimation */
-#define estl_alpha 32760
-#define estl_alpha1 32640
-#define estl_beta 32704
-#define estl_beta1 64
-#define estl_a 32640
-#define estl_a1 128
-#define estl_TH 6554
-#define Nfdm 100 /* Max number of frames with fast decay of Lmin */
-
-/* Log-Gain Limitation */
-#define LGLB -24 /* Log-Gain Lower Bound */
-#define LGCLB -8 /* Log-Gain Change Lower Bound */
-#define NGB 18 /* Number of Gain Bins */
-#define NGCB 12 /* Number of Gain Change Bins */
-
-/* Buffer offsets and sizes */
-#define XOFF MAXPP1 /* offset for x() frame */
-#define LX (XOFF+FRSZ) /* Length of x() buffer */
-#define XQOFF (MAXPP1) /* xq() offset before current subframe */
-#define LXQ (XQOFF+FRSZ) /* Length of xq() buffer */
-#define LTMOFF (MAXPP1) /* Long-Term filter Memory OFFset */
-
-/* Long-term postfilter */
-#define DPPQNS 4 /* Delta pitch period for search */
-#define NINT 20 /* length of filter interpolation */
-#define ATHLD1 18022 /* 0.55 Q15 threshold on normalized pitch correlation */
-#define ATHLD2 26214 /* 0.80 Q15 threshold on normalized pitch correlation */
-#define ScLTPF 9830 /* 0.3 Q15 scaling of LTPF coefficient */
-
-/* Coarse pitch search */
-#define MAX_NPEAKS 7
-#define TH1 23921 /* first threshold for cor*cor/energy */
-#define TH2 13107 /* second threshold for cor*cor/energy */
-#define LPTH1 25887 /* Last Pitch cor*cor/energy THreshold 1 */
-#define LPTH2 14090 /* Last Pitch cor*cor/energy THreshold 2 */
-#define MPDTH 2130 /* Multiple Pitch Deviation THreshold */
-#define SMDTH 3113 /* Sub-Multiple pitch Deviation THreshold 0.125 */
-#define MPTH4 9830
-
-/* Decimation parameters */
-#define DECF 4 /* DECimation Factor for coarse pitch period search */
-#define FRSZD (FRSZ/DECF) /* FRame SiZe in DECF:1 lowband domain */
-#define MAXPPD (MAXPP/DECF) /* MAX Pitch in DECF:1, */
-#define MINPPD ((int)(MINPP/DECF)) /* MINimum Pitch Period in DECF:1 */
-#define PWSZD (PWSZ/DECF) /* Pitch ana Window SiZe in DECF:1 domain */
-#define DFO 4
-#define MAXPPD1 (MAXPPD+1)
-#define LXD (MAXPPD1+PWSZD)
-#define XDOFF (LXD-FRSZD)
-#define HMAXPPD (MAXPPD/2)
-#define M1 (MINPPD-1)
-#define M2 MAXPPD1
-#define HDECF (DECF/2)
-
-/* Front-end 150 Hz highpass filter */
-#define HPO 2 /* High-pass filter order */
-
-/* LPC weighting filter */
-#define LTWF 4096 /* 0.5 in Q13 perceptual Weighting Factor Lowband */
-
-/* pole-zero NFC shaping filter */
-#define NSTORDER 8
-
-#endif /* BV16CNST_H */
diff --git a/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bv16externs.h b/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bv16externs.h
deleted file mode 100644
index dc61fb5..0000000
--- a/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bv16externs.h
+++ /dev/null
@@ -1,157 +0,0 @@
-/*****************************************************************************/
-/* BroadVoice(R)16 (BV16) Fixed-Point ANSI-C Source Code */
-/* Revision Date: November 13, 2009 */
-/* Version 1.1 */
-/*****************************************************************************/
-
-/*****************************************************************************/
-/* Copyright 2000-2009 Broadcom Corporation */
-/* */
-/* This software is provided under the GNU Lesser General Public License, */
-/* version 2.1, as published by the Free Software Foundation ("LGPL"). */
-/* This program is distributed in the hope that it will be useful, but */
-/* WITHOUT ANY SUPPORT OR WARRANTY; without even the implied warranty of */
-/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LGPL for */
-/* more details. A copy of the LGPL is available at */
-/* http://www.broadcom.com/licenses/LGPLv2.1.php, */
-/* or by writing to the Free Software Foundation, Inc., */
-/* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-/*****************************************************************************/
-
-
-/*****************************************************************************
- bv16externs.c : BV16 Fixed-Point externs
-
- $Log$
-******************************************************************************/
-
-/* POINTERS */
-extern Word16 winl[WINSZ];
-extern Word16 sstwinl_h[];
-extern Word16 sstwinl_l[];
-extern Word16 gfsz[];
-extern Word16 gfsp[];
-extern Word16 idxord[];
-extern Word16 hpfa[];
-extern Word16 hpfb[];
-extern Word16 adf_h[];
-extern Word16 adf_l[];
-extern Word16 bdf[];
-extern Word16 x[];
-extern Word16 x2[];
-extern Word16 MPTH[];
-
-/* LSP Quantization */
-extern Word16 lspecb1[];
-extern Word16 lspecb2[];
-extern Word16 lspmean[];
-extern Word16 lspp[];
-
-/* Log-Gain Quantization */
-extern Word16 lgpecb[];
-extern Word16 lgp[];
-extern Word16 lgmean;
-
-/* Log-Gain Limitation */
-extern Word16 lgclimit[];
-
-/* Excitation Codebook */
-extern Word16 cccb[];
-
-/* Function Prototypes */
-Word32 estlevel(
-Word32 lg,
-Word32 *level,
-Word32 *lmax,
-Word32 *lmin,
-Word32 *lmean,
-Word32 *x1,
-Word16 ngfae,
-Word16 nggalgc,
-Word16 *estl_alpha_min); /* Q15 */
-
-void excdec_w_synth(
-Word16 *xq, /* (o) Q0 quantized signal vector */
-Word16 *ltsym, /* (i/o) Q16 quantized excitation signal vector */
-Word16 *stsym, /* (i/o) Q0 short-term predictor memory */
-Word16 *idx, /* (o) quantizer codebook index for uq[] vector */
-Word16 *b, /* (i) Q15 coefficient of 3-tap pitch predictor */
-Word16 *cb, /* (i) Q0 codebook */
-Word16 pp, /* pitch period (# of 8 kHz samples) */
-Word16 *aq, /* (i) Q12 short-term predictor coefficients */
-Word16 gain_exp, /* gain_exp of current sub-frame */
-Word32 *EE
-);
-
-Word32 gaindec(
-Word32 *lgq, /* Q25 */
-Word16 gidx,
-Word16 *lgpm, /* Q11 */
-Word32 *prevlg, /* Q25 */
-Word32 level, /* Q25 */
-Word16 *nggalgc,
-Word32 *lg_el);
-
-void gainplc(Word32 E, Word16 *lgeqm, Word32 *lgqm);
-
-void lspdec(
-Word16 *lspq, /* Q15 */
-Word16 *lspidx,
-Word16 *lsppm, /* Q15 */
-Word16 *lspqlast);
-
-void lspdecplc(
-Word16 *lspq, /* Q15 */
-Word16 *lsppm); /* Q15 */
-
-Word16 coarsepitch(
-Word16 *xw, /* (i) Q1 weighted low-band signal frame */
-struct BV16_Encoder_State *c); /* (i/o) coder state */
-
-Word16 refinepitch(
-Word16 *x,
-Word16 cpp,
-Word16 *ppt);
-
-Word16 pitchtapquan(
-Word16 *x,
-Word16 pp,
-Word16 *b,
-Word32 *re);
-
-void excquan(
-Word16 *idx, /* quantizer codebook index for uq[] vector */
-Word16 *s, /* (i) Q0 input signal vector */
-Word16 *aq, /* (i) Q12 noise feedback filter coefficient array */
-Word16 *fsz, /* (i) Q12 short-term noise feedback filter - numerator */
-Word16 *fsp, /* (i) Q12 short-term noise feedback filter - denominator */
-Word16 *b, /* (i) Q15 coefficient of 3-tap pitch predictor */
-Word16 beta, /* (i) Q13 coefficient of pitch feedback filter */
-Word16 *stsym, /* (i/o) Q0 filter memory */
-Word16 *ltsym, /* (i/0) Q0 long-term synthesis filter memory */
-Word16 *ltnfm, /* (i/o) Q0 long-term noise feedback filter memory */
-Word16 *stnfz, /* (i/o) Q0 filter memory */
-Word16 *stnfp, /* (i/o) Q0 filter memory */
-Word16 *cb, /* (i) scalar quantizer codebook - normalized by gain_exp */
-Word16 pp, /* pitch period (# of 8 kHz samples) */
-Word16 gain_exp
-);
-
-Word16 gainquan(
-Word32 *gainq, /* Q18 */
-Word32 *ee, /* Q3 */
-Word16 *lgpm, /* Q11 */
-Word32 *prevlg, /* Q25 */
-Word32 level); /* Q25 */
-
-void lspquan(
-Word16 *lspq,
-Word16 *lspidx,
-Word16 *lsp,
-Word16 *lsppm);
-
-void preprocess(
-struct BV16_Encoder_State *cs,
-Word16 *output, /* (o) Q0 output signal, less factor 1.5 */
-Word16 *input, /* (i) Q0 input signal */
-Word16 N); /* length of signal */
diff --git a/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bv16strct.h b/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bv16strct.h
deleted file mode 100644
index ee6895f..0000000
--- a/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/bv16strct.h
+++ /dev/null
@@ -1,96 +0,0 @@
-/*****************************************************************************/
-/* BroadVoice(R)16 (BV16) Fixed-Point ANSI-C Source Code */
-/* Revision Date: November 13, 2009 */
-/* Version 1.1 */
-/*****************************************************************************/
-
-/*****************************************************************************/
-/* Copyright 2000-2009 Broadcom Corporation */
-/* */
-/* This software is provided under the GNU Lesser General Public License, */
-/* version 2.1, as published by the Free Software Foundation ("LGPL"). */
-/* This program is distributed in the hope that it will be useful, but */
-/* WITHOUT ANY SUPPORT OR WARRANTY; without even the implied warranty of */
-/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LGPL for */
-/* more details. A copy of the LGPL is available at */
-/* http://www.broadcom.com/licenses/LGPLv2.1.php, */
-/* or by writing to the Free Software Foundation, Inc., */
-/* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-/*****************************************************************************/
-
-
-/*****************************************************************************
- bv16strct.h : BV16 data structures
-
- $Log$
-******************************************************************************/
-
-#ifndef BV16STRCT_H
-#define BV16STRCT_H
-
-struct BV16_Decoder_State {
-Word16 stsym[LPCO];
-Word16 ltsym[LTMOFF];
-Word16 xq[XQOFF];
-Word16 lsppm[LPCO*LSPPORDER];
-Word16 lgpm[LGPORDER];
-Word16 lsplast[LPCO];
-Word32 prevlg[2];
-Word32 lmax;
-Word32 lmin;
-Word32 lmean;
-Word32 x1;
-Word32 level;
-Word16 pp_last;
-Word16 cfecount;
-Word16 ngfae;
-Word16 bq_last[3];
-Word16 nggalgc;
-Word16 estl_alpha_min;
-UWord32 idum;
-Word16 per; /* Q15 */
-Word32 E;
-Word16 atplc[LPCO+1];
-Word16 ma_a;
-Word16 b_prv[2];
-Word16 pp_prv;
-};
-
-struct BV16_Encoder_State {
-Word32 prevlg[2];
-Word32 lmax;
-Word32 lmin;
-Word32 lmean;
-Word32 x1;
-Word32 level;
-Word16 x[XOFF]; /* Signal memory */
-Word16 xwd[XDOFF]; /* Memory of DECF:1 decimated version of xw() */
-Word16 xwd_exp; /* or block floating-point in coarptch.c */
-Word16 dq[XOFF]; /* Q0 - Quantized short-term pred error */
-Word16 dfm_h[DFO]; /* Decimated xwd() filter memory */
-Word16 dfm_l[DFO];
-Word16 stwpm[LPCO]; /* Q0 - Short-term weighting all-pole filter memory */
-Word16 stsym[LPCO]; /* Q0 - Short-term synthesis filter memory */
-Word16 stnfz[NSTORDER]; /* Q0 - Short-term noise feedback filter memory - zero section */
-Word16 stnfp[NSTORDER]; /* Q0 - Short-term noise feedback filter memory - pole section */
-Word16 ltnfm[MAXPP1]; /* Q0 - Long-term noise feedback filter memory */
-Word16 lsplast[LPCO];
-Word16 lsppm[LPCO*LSPPORDER]; /* Q15 - LSP Predictor Memory */
-Word16 lgpm[LGPORDER]; /* Q11 - Log-Gain Predictor Memory */
-Word16 cpplast; /* Pitch period pf the previous frame */
-Word16 hpfzm[HPO];
-Word16 hpfpm[2*HPO];
-Word16 old_A[1+LPCO]; /* Q12 - LPC of previous frame */
-};
-
-struct BV16_Bit_Stream {
-Word16 lspidx[2];
-Word16 ppidx;
-Word16 bqidx;
-Word16 gidx;
-Word16 qvidx[FRSZ/VDIM];
-};
-
-#endif /* BV16STRCT_H */
-
-
diff --git a/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/g192.h b/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/g192.h
deleted file mode 100644
index 26e3c8e..0000000
--- a/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/g192.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/*****************************************************************************/
-/* BroadVoice(R)16 (BV16) Fixed-Point ANSI-C Source Code */
-/* Revision Date: November 13, 2009 */
-/* Version 1.1 */
-/*****************************************************************************/
-
-/*****************************************************************************/
-/* Copyright 2000-2009 Broadcom Corporation */
-/* */
-/* This software is provided under the GNU Lesser General Public License, */
-/* version 2.1, as published by the Free Software Foundation ("LGPL"). */
-/* This program is distributed in the hope that it will be useful, but */
-/* WITHOUT ANY SUPPORT OR WARRANTY; without even the implied warranty of */
-/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LGPL for */
-/* more details. A copy of the LGPL is available at */
-/* http://www.broadcom.com/licenses/LGPLv2.1.php, */
-/* or by writing to the Free Software Foundation, Inc., */
-/* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-/*****************************************************************************/
-
-
-/*****************************************************************************
- g192.h : BV16 G.192
-
- $Log$
-******************************************************************************/
-
-/* prototypes for G.192 bit-stream functions */
-void bv16_fwrite_g192bitstrm(struct BV16_Bit_Stream *bs, FILE *fo);
-short bv16_fread_g192bitstrm(struct BV16_Bit_Stream *bs, FILE *fi);
diff --git a/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/postfilt.h b/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/postfilt.h
deleted file mode 100644
index 76db5e0..0000000
--- a/branches/1.0/thirdparties/android/include/BroadVoice16/bv16/postfilt.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/*****************************************************************************/
-/* BroadVoice(R)16 (BV16) Fixed-Point ANSI-C Source Code */
-/* Revision Date: November 13, 2009 */
-/* Version 1.1 */
-/*****************************************************************************/
-
-/*****************************************************************************/
-/* Copyright 2000-2009 Broadcom Corporation */
-/* */
-/* This software is provided under the GNU Lesser General Public License, */
-/* version 2.1, as published by the Free Software Foundation ("LGPL"). */
-/* This program is distributed in the hope that it will be useful, but */
-/* WITHOUT ANY SUPPORT OR WARRANTY; without even the implied warranty of */
-/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LGPL for */
-/* more details. A copy of the LGPL is available at */
-/* http://www.broadcom.com/licenses/LGPLv2.1.php, */
-/* or by writing to the Free Software Foundation, Inc., */
-/* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-/*****************************************************************************/
-
-
-/*****************************************************************************
- postfilt.h : BV16 Post Filter
-
- $Log$
-******************************************************************************/
-
-void postfilter(
-Word16 *s, /* input : quantized speech signal */
-Word16 pp, /* input : pitch period */
-Word16 *ma_a,
-Word16 *b_prv,
-Word16 *pp_prv,
-Word16 *e); /* output: enhanced speech signal */
diff --git a/branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/basop32.h b/branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/basop32.h
deleted file mode 100644
index f3c47d8..0000000
--- a/branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/basop32.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/*****************************************************************************/
-/* BroadVoice(R)16 (BV16) Fixed-Point ANSI-C Source Code */
-/* Revision Date: November 13, 2009 */
-/* Version 1.1 */
-/*****************************************************************************/
-
-/*****************************************************************************/
-/* Copyright 2000-2009 Broadcom Corporation */
-/* */
-/* This software is provided under the GNU Lesser General Public License, */
-/* version 2.1, as published by the Free Software Foundation ("LGPL"). */
-/* This program is distributed in the hope that it will be useful, but */
-/* WITHOUT ANY SUPPORT OR WARRANTY; without even the implied warranty of */
-/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LGPL for */
-/* more details. A copy of the LGPL is available at */
-/* http://www.broadcom.com/licenses/LGPLv2.1.php, */
-/* or by writing to the Free Software Foundation, Inc., */
-/* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-/*****************************************************************************/
-
-#include "../itug191lib/basop32.h"
-#include "../itug729ilib/oper_32b.h"
diff --git a/branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/bvcommon.h b/branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/bvcommon.h
deleted file mode 100644
index b8accf1..0000000
--- a/branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/bvcommon.h
+++ /dev/null
@@ -1,130 +0,0 @@
-/*****************************************************************************/
-/* BroadVoice(R)16 (BV16) Fixed-Point ANSI-C Source Code */
-/* Revision Date: November 13, 2009 */
-/* Version 1.1 */
-/*****************************************************************************/
-
-/*****************************************************************************/
-/* Copyright 2000-2009 Broadcom Corporation */
-/* */
-/* This software is provided under the GNU Lesser General Public License, */
-/* version 2.1, as published by the Free Software Foundation ("LGPL"). */
-/* This program is distributed in the hope that it will be useful, but */
-/* WITHOUT ANY SUPPORT OR WARRANTY; without even the implied warranty of */
-/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LGPL for */
-/* more details. A copy of the LGPL is available at */
-/* http://www.broadcom.com/licenses/LGPLv2.1.php, */
-/* or by writing to the Free Software Foundation, Inc., */
-/* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-/*****************************************************************************/
-
-
-/*****************************************************************************
- bvcommon.h : Common Fixed-Point Library: common #defines and prototypes
-
- $Log$
-******************************************************************************/
-
-#ifndef BVCOMMON_H
-#define BVCOMMON_H
-
-/* ----- Basic Codec Parameters ----- */
-
-#define LPCO 8 /* LPC Order for 8 kHz sampled lowband signal */
-#define Ngrd 60
-
-#define LSPMIN 49 /* 0.00150 minimum lsp frequency */
-#define LSPMAX 32694 /* 0.99775 maximum lsp frequency */
-#define DLSPMIN 410 /* 0.01250 minimum lsp spacing */
-#define STBLDIM 3 /* dimension of stability enforcement */
-
-/* LPC bandwidth expansion */
-extern Word16 bwel[];
-
-/* LPC to lsp Conversion */
-extern Word16 grid[];
-
-/* LPC WEIGHTING FILTER */
-extern Word16 STWAL[];
-
-/* Coarse Pitch Search */
-extern Word16 invk[];
-
-/* Pitch tap codebook - actually content different for BV16 and BV32 */
-extern Word16 pp9cb[];
-
-/* Function prototypes */
-
-void azfilter(
- Word16 a[], /* (i) Q12 : prediction coefficients */
- Word16 m, /* (i) : LPC order */
- Word16 x[], /* (i) Q0 : input signal samples, incl. past */
- Word16 y[], /* (o) Q0 : filtered output signal */
- Word16 lg /* (i) : size of filtering */
- );
-
-void apfilter(
- Word16 a[], /* (i) Q12 : prediction coefficients */
- Word16 m, /* (i) : LPC order */
- Word16 x[], /* (i) Q0 : input signal */
- Word16 y[], /* (o) Q0 : output signal */
- Word16 lg, /* (i) : size of filtering */
- Word16 mem[], /* (i/o) Q0: filter memory */
- Word16 update /* (i) : memory update flag */
- );
-
-void lsp2a(
-Word16 lsp[], /* (i) Q15 : line spectral frequencies */
-Word16 a[]); /* (o) Q12 : predictor coefficients (order = 10) */
-
-void stblz_lsp(
-Word16 *lsp, /* Q15 */
-Word16 order);
-
-Word16 stblchck(
-Word16 *x,
-Word16 vdim);
-
-void a2lsp(
-Word16 a[], /* (i) Q12 : predictor coefficients */
-Word16 lsp[], /* (o) Q15 : line spectral frequencies */
-Word16 old_lsp[]); /* (i) : old lsp[] (in case not found 10 roots) */
-
-void Autocorr(
- Word32 r[], /* (o) : Autocorrelations */
- Word16 x[], /* (i) : Input signal */
- Word16 window[],/* (i) : LPC Analysis window */
- Word16 l_window,/* (i) : window length */
- Word16 m); /* (i) : LPC order */
-
-void Spectral_Smoothing(
-Word16 m, /* (i) : LPC order */
-Word32 rl[], /* (i/o) : Autocorrelations lags */
-Word16 lag_h[], /* (i) : SST coefficients (msb) */
-Word16 lag_l[]); /* (i) : SST coefficients (lsb) */
-
-void Levinson(
- Word32 r32[], /* (i) : r32[] double precision vector of autocorrelation coefficients */
- Word16 a[], /* (o) : a[] in Q12 - LPC coefficients */
- Word16 old_a[], /* (i/o): old_a[] in Q12 - previous LPC coefficients */
- Word16 m); /* (i) : LPC order */
-
-void pp3dec(
-Word16 idx,
-Word16 *b);
-
-void vqdec(
-Word16 *xq,
-Word16 idx,
-Word16 *cb,
-Word16 vdim);
-
-#ifdef _MSC_VER
-#include "math.h"
-static __inline double round(double val)
-{
- return floor(val + 0.5);
-}
-#endif
-
-#endif /* BVCOMMON_H */
diff --git a/branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/mathutil.h b/branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/mathutil.h
deleted file mode 100644
index e54a74c..0000000
--- a/branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/mathutil.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/*****************************************************************************/
-/* BroadVoice(R)16 (BV16) Fixed-Point ANSI-C Source Code */
-/* Revision Date: November 13, 2009 */
-/* Version 1.1 */
-/*****************************************************************************/
-
-/*****************************************************************************/
-/* Copyright 2000-2009 Broadcom Corporation */
-/* */
-/* This software is provided under the GNU Lesser General Public License, */
-/* version 2.1, as published by the Free Software Foundation ("LGPL"). */
-/* This program is distributed in the hope that it will be useful, but */
-/* WITHOUT ANY SUPPORT OR WARRANTY; without even the implied warranty of */
-/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LGPL for */
-/* more details. A copy of the LGPL is available at */
-/* http://www.broadcom.com/licenses/LGPLv2.1.php, */
-/* or by writing to the Free Software Foundation, Inc., */
-/* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-/*****************************************************************************/
-
-
-/*****************************************************************************
- fixmath.h : Common Fixed-Point Library:
-
- $Log$
-******************************************************************************/
-
-Word32 Pow2( /* Q0 output */
- Word16 int_comp, /* Q0 Integer part */
- Word16 frac_comp /* Q15 frac_compal part */
- );
-
-void Log2(
- Word32 x, /* (i) input */
- Word16 *int_comp, /* Q0 integer part */
- Word16 *frac_comp /* Q15 fractional part */
- );
-
-void sqrt_i(Word16 x_man, Word16 x_exp, Word16 *y_man, Word16 *y_exp);
-Word16 sqrts(Word16 x);
-
-extern Word16 tabsqrt[];
-extern Word16 tablog[];
-extern Word16 tabpow[];
-extern Word16 costable[];
-extern Word16 acosslope[];
-
diff --git a/branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/memutil.h b/branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/memutil.h
deleted file mode 100644
index 4c67f5f..0000000
--- a/branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/memutil.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/*****************************************************************************/
-/* BroadVoice(R)16 (BV16) Fixed-Point ANSI-C Source Code */
-/* Revision Date: November 13, 2009 */
-/* Version 1.1 */
-/*****************************************************************************/
-
-/*****************************************************************************/
-/* Copyright 2000-2009 Broadcom Corporation */
-/* */
-/* This software is provided under the GNU Lesser General Public License, */
-/* version 2.1, as published by the Free Software Foundation ("LGPL"). */
-/* This program is distributed in the hope that it will be useful, but */
-/* WITHOUT ANY SUPPORT OR WARRANTY; without even the implied warranty of */
-/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LGPL for */
-/* more details. A copy of the LGPL is available at */
-/* http://www.broadcom.com/licenses/LGPLv2.1.php, */
-/* or by writing to the Free Software Foundation, Inc., */
-/* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-/*****************************************************************************/
-
-
-/*****************************************************************************
- memutil.h : Common Fixed-Point Library: memory utilities
-
- $Log$
-******************************************************************************/
-
-Word16 *allocWord16(long nl, long nh);
-void deallocWord16(Word16 *v, long nl, long nh);
-Word32 *allocWord32(long nl, long nh);
-void deallocWord32(Word32 *v, long nl, long nh);
diff --git a/branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/typedef.h b/branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/typedef.h
deleted file mode 100644
index 68f5e17..0000000
--- a/branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/typedef.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/*****************************************************************************/
-/* BroadVoice(R)16 (BV16) Fixed-Point ANSI-C Source Code */
-/* Revision Date: November 13, 2009 */
-/* Version 1.1 */
-/*****************************************************************************/
-
-/*****************************************************************************/
-/* Copyright 2000-2009 Broadcom Corporation */
-/* */
-/* This software is provided under the GNU Lesser General Public License, */
-/* version 2.1, as published by the Free Software Foundation ("LGPL"). */
-/* This program is distributed in the hope that it will be useful, but */
-/* WITHOUT ANY SUPPORT OR WARRANTY; without even the implied warranty of */
-/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LGPL for */
-/* more details. A copy of the LGPL is available at */
-/* http://www.broadcom.com/licenses/LGPLv2.1.php, */
-/* or by writing to the Free Software Foundation, Inc., */
-/* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-/*****************************************************************************/
-
-
-/*****************************************************************************
- typedef.h : Common Fixed-Point Library:
-
- $Log$
-******************************************************************************/
-
-#ifndef __TYPEDEF__
-#define __TYPEDEF__
-typedef unsigned char UWord8;
-typedef short Word16;
-typedef int Word32;
-typedef unsigned int UWord32;
-typedef int Flag;
-#endif
-
diff --git a/branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/utility.h b/branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/utility.h
deleted file mode 100644
index ea4202e..0000000
--- a/branches/1.0/thirdparties/android/include/BroadVoice16/bvcommon/utility.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/*****************************************************************************/
-/* BroadVoice(R)16 (BV16) Fixed-Point ANSI-C Source Code */
-/* Revision Date: November 13, 2009 */
-/* Version 1.1 */
-/*****************************************************************************/
-
-/*****************************************************************************/
-/* Copyright 2000-2009 Broadcom Corporation */
-/* */
-/* This software is provided under the GNU Lesser General Public License, */
-/* version 2.1, as published by the Free Software Foundation ("LGPL"). */
-/* This program is distributed in the hope that it will be useful, but */
-/* WITHOUT ANY SUPPORT OR WARRANTY; without even the implied warranty of */
-/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LGPL for */
-/* more details. A copy of the LGPL is available at */
-/* http://www.broadcom.com/licenses/LGPLv2.1.php, */
-/* or by writing to the Free Software Foundation, Inc., */
-/* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-/*****************************************************************************/
-
-
-/*****************************************************************************
- utility.h : Common Fixed-Point Library:
-
- $Log$
-******************************************************************************/
-
-void W16copy(Word16 *y, Word16 *x, int size);
-void W16zero(Word16 *x, int size);
-void W32copy(Word32 *y, Word32 *x, int size);
-
diff --git a/branches/1.0/thirdparties/android/include/g729a/BASIC_OP.H b/branches/1.0/thirdparties/android/include/g729a/BASIC_OP.H
deleted file mode 100644
index fa88f01..0000000
--- a/branches/1.0/thirdparties/android/include/g729a/BASIC_OP.H
+++ /dev/null
@@ -1,64 +0,0 @@
-
-/*___________________________________________________________________________
- | |
- | Constants and Globals |
- |___________________________________________________________________________|
-*/
-extern Flag Overflow;
-extern Flag Carry;
-
-#define MAX_32 (Word32)0x7fffffffL
-#define MIN_32 (Word32)0x80000000L
-
-#define MAX_16 (Word16)0x7fff
-#define MIN_16 (Word16)0x8000
-
-
-/*___________________________________________________________________________
- | |
- | Operators prototypes |
- |___________________________________________________________________________|
-*/
-
-Word16 sature(Word32 L_var1); /* Limit to 16 bits, 1 */
-Word16 add(Word16 var1, Word16 var2); /* Short add, 1 */
-Word16 sub(Word16 var1, Word16 var2); /* Short sub, 1 */
-Word16 abs_s(Word16 var1); /* Short abs, 1 */
-Word16 shl(Word16 var1, Word16 var2); /* Short shift left, 1 */
-Word16 shr(Word16 var1, Word16 var2); /* Short shift right, 1 */
-Word16 mult(Word16 var1, Word16 var2); /* Short mult, 1 */
-Word32 L_mult(Word16 var1, Word16 var2); /* Long mult, 1 */
-Word16 negate(Word16 var1); /* Short negate, 1 */
-Word16 extract_h(Word32 L_var1); /* Extract high, 1 */
-Word16 extract_l(Word32 L_var1); /* Extract low, 1 */
-Word16 round(Word32 L_var1); /* Round, 1 */
-Word32 L_mac(Word32 L_var3, Word16 var1, Word16 var2); /* Mac, 1 */
-Word32 L_msu(Word32 L_var3, Word16 var1, Word16 var2); /* Msu, 1 */
-Word32 L_macNs(Word32 L_var3, Word16 var1, Word16 var2);/* Mac without sat, 1*/
-Word32 L_msuNs(Word32 L_var3, Word16 var1, Word16 var2);/* Msu without sat, 1*/
-
-Word32 L_add(Word32 L_var1, Word32 L_var2); /* Long add, 2 */
-Word32 L_sub(Word32 L_var1, Word32 L_var2); /* Long sub, 2 */
-Word32 L_add_c(Word32 L_var1, Word32 L_var2); /*Long add with c, 2 */
-Word32 L_sub_c(Word32 L_var1, Word32 L_var2); /*Long sub with c, 2 */
-Word32 L_negate(Word32 L_var1); /* Long negate, 2 */
-Word16 mult_r(Word16 var1, Word16 var2); /* Mult with round, 2 */
-Word32 L_shl(Word32 L_var1, Word16 var2); /* Long shift left, 2 */
-Word32 L_shr(Word32 L_var1, Word16 var2); /* Long shift right, 2 */
-Word16 shr_r(Word16 var1, Word16 var2);/* Shift right with round, 2 */
-Word16 mac_r(Word32 L_var3, Word16 var1, Word16 var2);/* Mac with rounding, 2*/
-Word16 msu_r(Word32 L_var3, Word16 var1, Word16 var2);/* Msu with rounding, 2*/
-Word32 L_deposit_h(Word16 var1); /* 16 bit var1 -> MSB, 2 */
-Word32 L_deposit_l(Word16 var1); /* 16 bit var1 -> LSB, 2 */
-
-Word32 L_shr_r(Word32 L_var1, Word16 var2);/* Long shift right with round, 3*/
-Word32 L_abs(Word32 L_var1); /* Long abs, 3 */
-
-Word32 L_sat(Word32 L_var1); /* Long saturation, 4 */
-
-Word16 norm_s(Word16 var1); /* Short norm, 15 */
-
-Word16 div_s(Word16 var1, Word16 var2); /* Short division, 18 */
-
-Word16 norm_l(Word32 L_var1); /* Long norm, 30 */
-
diff --git a/branches/1.0/thirdparties/android/include/g729a/LD8A.H b/branches/1.0/thirdparties/android/include/g729a/LD8A.H
deleted file mode 100644
index be12c34..0000000
--- a/branches/1.0/thirdparties/android/include/g729a/LD8A.H
+++ /dev/null
@@ -1,623 +0,0 @@
-/*
- ITU-T G.729A Speech Coder ANSI-C Source Code
- Version 1.1 Last modified: September 1996
-
- Copyright (c) 1996,
- AT&T, France Telecom, NTT, Universite de Sherbrooke
- All rights reserved.
-*/
-
-/*---------------------------------------------------------------*
- * LD8A.H *
- * ~~~~~~ *
- * Function prototypes and constants use for G.729A 8kb/s coder. *
- * *
- *---------------------------------------------------------------*/
-
-/*--------------------------------------------------------------------------*
- * Codec constant parameters (coder, decoder, and postfilter) *
- *--------------------------------------------------------------------------*/
-
-#define L_TOTAL 240 /* Total size of speech buffer. */
-#define L_WINDOW 240 /* Window size in LP analysis. */
-#define L_NEXT 40 /* Lookahead in LP analysis. */
-#define L_FRAME 80 /* Frame size. */
-#define L_SUBFR 40 /* Subframe size. */
-#define M 10 /* Order of LP filter. */
-#define MP1 (M+1) /* Order of LP filter + 1 */
-#define PIT_MIN 20 /* Minimum pitch lag. */
-#define PIT_MAX 143 /* Maximum pitch lag. */
-#define L_INTERPOL (10+1) /* Length of filter for interpolation. */
-#define GAMMA1 24576 /* Bandwitdh factor = 0.75 in Q15 */
-
-#define PRM_SIZE 11 /* Size of vector of analysis parameters. */
-#define SERIAL_SIZE (80+2) /* bfi+ number of speech bits */
-
-#define SHARPMAX 13017 /* Maximum value of pitch sharpening 0.8 Q14 */
-#define SHARPMIN 3277 /* Minimum value of pitch sharpening 0.2 Q14 */
-
-
-/*-------------------------------*
- * Mathematic functions. *
- *-------------------------------*/
-
-Word32 Inv_sqrt( /* (o) Q30 : output value (range: 0<=val<1) */
- Word32 L_x /* (i) Q0 : input value (range: 0<=val<=7fffffff) */
-);
-
-void Log2(
- Word32 L_x, /* (i) Q0 : input value */
- Word16 *exponent, /* (o) Q0 : Integer part of Log2. (range: 0<=val<=30) */
- Word16 *fraction /* (o) Q15: Fractionnal part of Log2. (range: 0<=val<1) */
-);
-
-Word32 Pow2( /* (o) Q0 : result (range: 0<=val<=0x7fffffff) */
- Word16 exponent, /* (i) Q0 : Integer part. (range: 0<=val<=30) */
- Word16 fraction /* (i) Q15 : Fractionnal part. (range: 0.0<=val<1.0) */
-);
-
-/*-------------------------------*
- * Pre and post-process. *
- *-------------------------------*/
-
-void Init_Pre_Process(void);
-void Init_Post_Process(void);
-
-void Pre_Process(
- Word16 signal[], /* Input/output signal */
- Word16 lg /* Length of signal */
-);
-
-void Post_Process(
- Word16 signal[], /* Input/output signal */
- Word16 lg /* Length of signal */
-);
-
-/*----------------------------------*
- * Main coder and decoder functions *
- *----------------------------------*/
-
-void Init_Coder_ld8a(void);
-
-void Coder_ld8a(
- Word16 ana[] /* output : Analysis parameters */
-);
-
-void Init_Decod_ld8a(void);
-
-void Decod_ld8a(
- Word16 parm[], /* (i) : vector of synthesis parameters
- parm[0] = bad frame indicator (bfi) */
- Word16 synth[], /* (o) : synthesis speech */
- Word16 A_t[], /* (o) : decoded LP filter in 2 subframes */
- Word16 *T2 /* (o) : decoded pitch lag in 2 subframes */
-);
-
-/*-------------------------------*
- * LPC analysis and filtering. *
- *-------------------------------*/
-
-void Autocorr(
- Word16 x[], /* (i) : Input signal */
- Word16 m, /* (i) : LPC order */
- Word16 r_h[], /* (o) : Autocorrelations (msb) */
- Word16 r_l[] /* (o) : Autocorrelations (lsb) */
-);
-
-void Lag_window(
- Word16 m, /* (i) : LPC order */
- Word16 r_h[], /* (i/o) : Autocorrelations (msb) */
- Word16 r_l[] /* (i/o) : Autocorrelations (lsb) */
-);
-
-void Levinson(
- Word16 Rh[], /* (i) : Rh[m+1] Vector of autocorrelations (msb) */
- Word16 Rl[], /* (i) : Rl[m+1] Vector of autocorrelations (lsb) */
- Word16 A[], /* (o) Q12 : A[m] LPC coefficients (m = 10) */
- Word16 rc[] /* (o) Q15 : rc[M] Relection coefficients. */
-);
-
-void Az_lsp(
- Word16 a[], /* (i) Q12 : predictor coefficients */
- Word16 lsp[], /* (o) Q15 : line spectral pairs */
- Word16 old_lsp[] /* (i) : old lsp[] (in case not found 10 roots) */
-);
-
-void Lsp_Az(
- Word16 lsp[], /* (i) Q15 : line spectral frequencies */
- Word16 a[] /* (o) Q12 : predictor coefficients (order = 10) */
-);
-
-void Lsf_lsp(
- Word16 lsf[], /* (i) Q15 : lsf[m] normalized (range: 0.0<=val<=0.5) */
- Word16 lsp[], /* (o) Q15 : lsp[m] (range: -1<=val<1) */
- Word16 m /* (i) : LPC order */
-);
-
-void Lsp_lsf(
- Word16 lsp[], /* (i) Q15 : lsp[m] (range: -1<=val<1) */
- Word16 lsf[], /* (o) Q15 : lsf[m] normalized (range: 0.0<=val<=0.5) */
- Word16 m /* (i) : LPC order */
-);
-
-void Int_qlpc(
- Word16 lsp_old[], /* input : LSP vector of past frame */
- Word16 lsp_new[], /* input : LSP vector of present frame */
- Word16 Az[] /* output: interpolated Az() for the 2 subframes */
-);
-
-void Weight_Az(
- Word16 a[], /* (i) Q12 : a[m+1] LPC coefficients */
- Word16 gamma, /* (i) Q15 : Spectral expansion factor. */
- Word16 m, /* (i) : LPC order. */
- Word16 ap[] /* (o) Q12 : Spectral expanded LPC coefficients */
-);
-
-void Residu(
- Word16 a[], /* (i) Q12 : prediction coefficients */
- Word16 x[], /* (i) : speech (values x[-m..-1] are needed (m=10) */
- Word16 y[], /* (o) : residual signal */
- Word16 lg /* (i) : size of filtering */
-);
-
-void Syn_filt(
- Word16 a[], /* (i) Q12 : a[m+1] prediction coefficients (m=10) */
- Word16 x[], /* (i) : input signal */
- Word16 y[], /* (o) : output signal */
- Word16 lg, /* (i) : size of filtering */
- Word16 mem[], /* (i/o) : memory associated with this filtering. */
- Word16 update /* (i) : 0=no update, 1=update of memory. */
-);
-
-void Convolve(
- Word16 x[], /* (i) : input vector */
- Word16 h[], /* (i) Q12 : impulse response */
- Word16 y[], /* (o) : output vector */
- Word16 L /* (i) : vector size */
-);
-
-/*--------------------------------------------------------------------------*
- * LTP constant parameters *
- *--------------------------------------------------------------------------*/
-
-#define UP_SAMP 3
-#define L_INTER10 10
-#define FIR_SIZE_SYN (UP_SAMP*L_INTER10+1)
-
-/*-----------------------*
- * Pitch functions. *
- *-----------------------*/
-
-Word16 Pitch_ol_fast( /* output: open loop pitch lag */
- Word16 signal[], /* input : signal used to compute the open loop pitch */
- /* signal[-pit_max] to signal[-1] should be known */
- Word16 pit_max, /* input : maximum pitch lag */
- Word16 L_frame /* input : length of frame to compute pitch */
-);
-
-Word16 Pitch_fr3_fast(/* (o) : pitch period. */
- Word16 exc[], /* (i) : excitation buffer */
- Word16 xn[], /* (i) : target vector */
- Word16 h[], /* (i) Q12 : impulse response of filters. */
- Word16 L_subfr, /* (i) : Length of subframe */
- Word16 t0_min, /* (i) : minimum value in the searched range. */
- Word16 t0_max, /* (i) : maximum value in the searched range. */
- Word16 i_subfr, /* (i) : indicator for first subframe. */
- Word16 *pit_frac /* (o) : chosen fraction. */
-);
-
-Word16 G_pitch( /* (o) Q14 : Gain of pitch lag saturated to 1.2 */
- Word16 xn[], /* (i) : Pitch target. */
- Word16 y1[], /* (i) : Filtered adaptive codebook. */
- Word16 g_coeff[], /* (i) : Correlations need for gain quantization. */
- Word16 L_subfr /* (i) : Length of subframe. */
-);
-
-Word16 Enc_lag3( /* output: Return index of encoding */
- Word16 T0, /* input : Pitch delay */
- Word16 T0_frac, /* input : Fractional pitch delay */
- Word16 *T0_min, /* in/out: Minimum search delay */
- Word16 *T0_max, /* in/out: Maximum search delay */
- Word16 pit_min, /* input : Minimum pitch delay */
- Word16 pit_max, /* input : Maximum pitch delay */
- Word16 pit_flag /* input : Flag for 1st subframe */
-);
-
-void Dec_lag3( /* output: return integer pitch lag */
- Word16 index, /* input : received pitch index */
- Word16 pit_min, /* input : minimum pitch lag */
- Word16 pit_max, /* input : maximum pitch lag */
- Word16 i_subfr, /* input : subframe flag */
- Word16 *T0, /* output: integer part of pitch lag */
- Word16 *T0_frac /* output: fractional part of pitch lag */
-);
-
-Word16 Interpol_3( /* (o) : interpolated value */
- Word16 *x, /* (i) : input vector */
- Word16 frac /* (i) : fraction */
-);
-
-void Pred_lt_3(
- Word16 exc[], /* in/out: excitation buffer */
- Word16 T0, /* input : integer pitch lag */
- Word16 frac, /* input : fraction of lag */
- Word16 L_subfr /* input : subframe size */
-);
-
-Word16 Parity_Pitch( /* output: parity bit (XOR of 6 MSB bits) */
- Word16 pitch_index /* input : index for which parity to compute */
-);
-
-Word16 Check_Parity_Pitch( /* output: 0 = no error, 1= error */
- Word16 pitch_index, /* input : index of parameter */
- Word16 parity /* input : parity bit */
-);
-
-void Cor_h_X(
- Word16 h[], /* (i) Q12 :Impulse response of filters */
- Word16 X[], /* (i) :Target vector */
- Word16 D[] /* (o) :Correlations between h[] and D[] */
- /* Normalized to 13 bits */
-);
-
-/*-----------------------*
- * Innovative codebook. *
- *-----------------------*/
-
-#define DIM_RR 616 /* size of correlation matrix */
-#define NB_POS 8 /* Number of positions for each pulse */
-#define STEP 5 /* Step betweem position of the same pulse. */
-#define MSIZE 64 /* Size of vectors for cross-correlation between 2 pulses*/
-
-/* The following constants are Q15 fractions.
- These fractions is used to keep maximum precision on "alp" sum */
-
-#define _1_2 (Word16)(16384)
-#define _1_4 (Word16)( 8192)
-#define _1_8 (Word16)( 4096)
-#define _1_16 (Word16)( 2048)
-
-Word16 ACELP_Code_A( /* (o) :index of pulses positions */
- Word16 x[], /* (i) :Target vector */
- Word16 h[], /* (i) Q12 :Inpulse response of filters */
- Word16 T0, /* (i) :Pitch lag */
- Word16 pitch_sharp, /* (i) Q14 :Last quantized pitch gain */
- Word16 code[], /* (o) Q13 :Innovative codebook */
- Word16 y[], /* (o) Q12 :Filtered innovative codebook */
- Word16 *sign /* (o) :Signs of 4 pulses */
-);
-
-void Decod_ACELP(
- Word16 sign, /* (i) : signs of 4 pulses. */
- Word16 index, /* (i) : Positions of the 4 pulses. */
- Word16 cod[] /* (o) Q13 : algebraic (fixed) codebook excitation */
-);
-/*--------------------------------------------------------------------------*
- * LSP constant parameters *
- *--------------------------------------------------------------------------*/
-
-#define NC 5 /* NC = M/2 */
-#define MA_NP 4 /* MA prediction order for LSP */
-#define MODE 2 /* number of modes for MA prediction */
-#define NC0_B 7 /* number of first stage bits */
-#define NC1_B 5 /* number of second stage bits */
-#define NC0 (1<<NC0_B)
-#define NC1 (1<<NC1_B)
-
-#define L_LIMIT 40 /* Q13:0.005 */
-#define M_LIMIT 25681 /* Q13:3.135 */
-
-#define GAP1 10 /* Q13 */
-#define GAP2 5 /* Q13 */
-#define GAP3 321 /* Q13 */
-#define GRID_POINTS 50
-
-#define PI04 ((Word16)1029) /* Q13 pi*0.04 */
-#define PI92 ((Word16)23677) /* Q13 pi*0.92 */
-#define CONST10 ((Word16)10*(1<<11)) /* Q11 10.0 */
-#define CONST12 ((Word16)19661) /* Q14 1.2 */
-
-/*-------------------------------*
- * LSP VQ functions. *
- *-------------------------------*/
-
-void Lsf_lsp2(
- Word16 lsf[], /* (i) Q13 : lsf[m] (range: 0.0<=val<PI) */
- Word16 lsp[], /* (o) Q15 : lsp[m] (range: -1<=val<1) */
- Word16 m /* (i) : LPC order */
-);
-
-void Lsp_lsf2(
- Word16 lsp[], /* (i) Q15 : lsp[m] (range: -1<=val<1) */
- Word16 lsf[], /* (o) Q13 : lsf[m] (range: 0.0<=val<PI) */
- Word16 m /* (i) : LPC order */
-);
-
-void Qua_lsp(
- Word16 lsp[], /* (i) Q15 : Unquantized LSP */
- Word16 lsp_q[], /* (o) Q15 : Quantized LSP */
- Word16 ana[] /* (o) : indexes */
-);
-
-void Get_wegt(
- Word16 flsp[], /* Q13 */
- Word16 wegt[] /* Q11 -> normalized */
-);
-
-void Lsp_encw_reset(
- void
-);
-
-void Lsp_qua_cs(
- Word16 flsp_in[M], /* Q13 */
- Word16 lspq_out[M], /* Q13 */
- Word16 *code
-);
-
-void Lsp_expand_1(
- Word16 buf[], /* Q13 */
- Word16 gap /* Q13 */
-);
-
-void Lsp_expand_2(
- Word16 buf[], /* Q13 */
- Word16 gap /* Q13 */
-);
-
-void Lsp_expand_1_2(
- Word16 buf[], /* Q13 */
- Word16 gap /* Q13 */
-);
-
-void Lsp_get_quant(
- Word16 lspcb1[][M], /* Q13 */
- Word16 lspcb2[][M], /* Q13 */
- Word16 code0,
- Word16 code1,
- Word16 code2,
- Word16 fg[][M], /* Q15 */
- Word16 freq_prev[][M], /* Q13 */
- Word16 lspq[], /* Q13 */
- Word16 fg_sum[] /* Q15 */
-);
-
-void Lsp_get_tdist(
- Word16 wegt[], /* normalized */
- Word16 buf[], /* Q13 */
- Word32 *L_tdist, /* Q27 */
- Word16 rbuf[], /* Q13 */
- Word16 fg_sum[] /* Q15 */
-);
-
-void Lsp_last_select(
- Word32 L_tdist[], /* Q27 */
- Word16 *mode_index
-);
-
-void Lsp_pre_select(
- Word16 rbuf[], /* Q13 */
- Word16 lspcb1[][M], /* Q13 */
- Word16 *cand
-);
-
-void Lsp_select_1(
- Word16 rbuf[], /* Q13 */
- Word16 lspcb1[], /* Q13 */
- Word16 wegt[], /* normalized */
- Word16 lspcb2[][M], /* Q13 */
- Word16 *index
-);
-
-void Lsp_select_2(
- Word16 rbuf[], /* Q13 */
- Word16 lspcb1[], /* Q13 */
- Word16 wegt[], /* normalized */
- Word16 lspcb2[][M], /* Q13 */
- Word16 *index
-);
-
-void Lsp_stability(
- Word16 buf[] /* Q13 */
-);
-
-void Relspwed(
- Word16 lsp[], /* Q13 */
- Word16 wegt[], /* normalized */
- Word16 lspq[], /* Q13 */
- Word16 lspcb1[][M], /* Q13 */
- Word16 lspcb2[][M], /* Q13 */
- Word16 fg[MODE][MA_NP][M], /* Q15 */
- Word16 freq_prev[MA_NP][M], /* Q13 */
- Word16 fg_sum[MODE][M], /* Q15 */
- Word16 fg_sum_inv[MODE][M], /* Q12 */
- Word16 code_ana[]
-);
-
-void D_lsp(
- Word16 prm[], /* (i) : indexes of the selected LSP */
- Word16 lsp_q[], /* (o) Q15 : Quantized LSP parameters */
- Word16 erase /* (i) : frame erase information */
-);
-
-void Lsp_decw_reset(
- void
-);
-
-void Lsp_iqua_cs(
- Word16 prm[], /* input : codes of the selected LSP*/
- Word16 lsp_q[], /* output: Quantized LSP parameters*/
- Word16 erase /* input : frame erase information */
-);
-
-void Lsp_prev_compose(
- Word16 lsp_ele[], /* Q13 */
- Word16 lsp[], /* Q13 */
- Word16 fg[][M], /* Q15 */
- Word16 freq_prev[][M], /* Q13 */
- Word16 fg_sum[] /* Q15 */
-);
-
-void Lsp_prev_extract(
- Word16 lsp[M], /* Q13 */
- Word16 lsp_ele[M], /* Q13 */
- Word16 fg[MA_NP][M], /* Q15 */
- Word16 freq_prev[MA_NP][M], /* Q13 */
- Word16 fg_sum_inv[M] /* Q12 */
-);
-
-void Lsp_prev_update(
- Word16 lsp_ele[M], /* Q13 */
- Word16 freq_prev[MA_NP][M] /* Q13 */
-);
-
-/*-------------------------------*
- * gain VQ constants. *
- *-------------------------------*/
-
-#define NCODE1_B 3 /* number of Codebook-bit */
-#define NCODE2_B 4 /* number of Codebook-bit */
-#define NCODE1 (1<<NCODE1_B) /* Codebook 1 size */
-#define NCODE2 (1<<NCODE2_B) /* Codebook 2 size */
-#define NCAN1 4 /* Pre-selecting order for #1 */
-#define NCAN2 8 /* Pre-selecting order for #2 */
-#define INV_COEF -17103 /* Q19 */
-
-/*--------------------------------------------------------------------------*
- * gain VQ functions. *
- *--------------------------------------------------------------------------*/
-
-Word16 Qua_gain(
- Word16 code[], /* (i) Q13 : Innovative vector. */
- Word16 g_coeff[], /* (i) : Correlations <xn y1> -2<y1 y1> */
- /* <y2,y2>, -2<xn,y2>, 2<y1,y2> */
- Word16 exp_coeff[],/* (i) : Q-Format g_coeff[] */
- Word16 L_subfr, /* (i) : Subframe length. */
- Word16 *gain_pit, /* (o) Q14 : Pitch gain. */
- Word16 *gain_cod, /* (o) Q1 : Code gain. */
- Word16 tameflag /* (i) : flag set to 1 if taming is needed */
-);
-
-void Dec_gain(
- Word16 index, /* (i) : Index of quantization. */
- Word16 code[], /* (i) Q13 : Innovative vector. */
- Word16 L_subfr, /* (i) : Subframe length. */
- Word16 bfi, /* (i) : Bad frame indicator */
- Word16 *gain_pit, /* (o) Q14 : Pitch gain. */
- Word16 *gain_cod /* (o) Q1 : Code gain. */
-);
-
-void Gain_predict(
- Word16 past_qua_en[],/* (i) Q10 :Past quantized energies */
- Word16 code[], /* (i) Q13 : Innovative vector. */
- Word16 L_subfr, /* (i) : Subframe length. */
- Word16 *gcode0, /* (o) Qxx : Predicted codebook gain */
- Word16 *exp_gcode0 /* (o) : Q-Format(gcode0) */
-);
-
-void Gain_update(
- Word16 past_qua_en[],/* (i) Q10 :Past quantized energies */
- Word32 L_gbk12 /* (i) Q13 : gbk1[indice1][1]+gbk2[indice2][1] */
-);
-
-void Gain_update_erasure(
- Word16 past_qua_en[]/* (i) Q10 :Past quantized energies */
-);
-
-void Corr_xy2(
- Word16 xn[], /* (i) Q0 :Target vector. */
- Word16 y1[], /* (i) Q0 :Adaptive codebook. */
- Word16 y2[], /* (i) Q12 :Filtered innovative vector. */
- Word16 g_coeff[], /* (o) Q[exp]:Correlations between xn,y1,y2 */
- Word16 exp_g_coeff[] /* (o) :Q-format of g_coeff[] */
-);
-
-/*-----------------------*
- * Bitstream function *
- *-----------------------*/
-
-void prm2bits_ld8k(Word16 prm[], Word16 bits[]);
-void bits2prm_ld8k(Word16 bits[], Word16 prm[]);
-#define BIT_0 (short)0x007f /* definition of zero-bit in bit-stream */
-#define BIT_1 (short)0x0081 /* definition of one-bit in bit-stream */
-#define SYNC_WORD (short)0x6b21 /* definition of frame erasure flag */
-#define SIZE_WORD (short)80 /* number of speech bits */
-
-
-/*-----------------------------------*
- * Post-filter functions. *
- *-----------------------------------*/
-
-#define L_H 22 /* size of truncated impulse response of A(z/g1)/A(z/g2) */
-
-#define GAMMAP 16384 /* 0.5 (Q15) */
-#define INV_GAMMAP 21845 /* 1/(1+GAMMAP) (Q15) */
-#define GAMMAP_2 10923 /* GAMMAP/(1+GAMMAP) (Q15) */
-
-#define GAMMA2_PST 18022 /* Formant postfilt factor (numerator) 0.55 Q15 */
-#define GAMMA1_PST 22938 /* Formant postfilt factor (denominator) 0.70 Q15 */
-
-#define MU 26214 /* Factor for tilt compensation filter 0.8 Q15 */
-#define AGC_FAC 29491 /* Factor for automatic gain control 0.9 Q15 */
-#define AGC_FAC1 (Word16)(32767 - AGC_FAC) /* 1-AGC_FAC in Q15 */
-
-
-void Init_Post_Filter(void);
-
-void Post_Filter(
- Word16 *syn, /* in/out: synthesis speech (postfiltered is output) */
- Word16 *Az_4, /* input : interpolated LPC parameters in all subframes */
- Word16 *T /* input : decoded pitch lags in all subframes */
-);
-
-void pit_pst_filt(
- Word16 *signal, /* (i) : input signal */
- Word16 *scal_sig, /* (i) : input signal (scaled, divided by 4) */
- Word16 t0_min, /* (i) : minimum value in the searched range */
- Word16 t0_max, /* (i) : maximum value in the searched range */
- Word16 L_subfr, /* (i) : size of filtering */
- Word16 *signal_pst /* (o) : harmonically postfiltered signal */
-);
-
-void preemphasis(
- Word16 *signal, /* (i/o) : input signal overwritten by the output */
- Word16 g, /* (i) Q15 : preemphasis coefficient */
- Word16 L /* (i) : size of filtering */
-);
-
-void agc(
- Word16 *sig_in, /* (i) : postfilter input signal */
- Word16 *sig_out, /* (i/o) : postfilter output signal */
- Word16 l_trm /* (i) : subframe size */
-);
-
-/*--------------------------------------------------------------------------*
- * Constants and prototypes for taming procedure. *
- *--------------------------------------------------------------------------*/
-
-#define GPCLIP 15564 /* Maximum pitch gain if taming is needed Q14*/
-#define GPCLIP2 481 /* Maximum pitch gain if taming is needed Q9 */
-#define GP0999 16383 /* Maximum pitch gain if taming is needed */
-#define L_THRESH_ERR 983040000L /* Error threshold taming 16384. * 60000. */
-
-void Init_exc_err(void);
-void update_exc_err(Word16 gain_pit, Word16 t0);
-Word16 test_err(Word16 t0, Word16 t0_frac);
-
-/*--------------------------------------------------------------------------*
- * Prototypes for auxiliary functions. *
- *--------------------------------------------------------------------------*/
-
-void Copy(
- Word16 x[], /* (i) : input vector */
- Word16 y[], /* (o) : output vector */
- Word16 L /* (i) : vector length */
-);
-
-void Set_zero(
- Word16 x[], /* (o) : vector to clear */
- Word16 L /* (i) : length of vector */
-);
-
-Word16 Random(void);
-
-
diff --git a/branches/1.0/thirdparties/android/include/g729a/OPER_32B.H b/branches/1.0/thirdparties/android/include/g729a/OPER_32B.H
deleted file mode 100644
index e8f5da1..0000000
--- a/branches/1.0/thirdparties/android/include/g729a/OPER_32B.H
+++ /dev/null
@@ -1,18 +0,0 @@
-/*
- ITU-T G.729A Speech Coder ANSI-C Source Code
- Version 1.1 Last modified: September 1996
-
- Copyright (c) 1996,
- AT&T, France Telecom, NTT, Universite de Sherbrooke
- All rights reserved.
-*/
-
-/* Double precision operations */
-
-void L_Extract(Word32 L_32, Word16 *hi, Word16 *lo);
-Word32 L_Comp(Word16 hi, Word16 lo);
-Word32 Mpy_32(Word16 hi1, Word16 lo1, Word16 hi2, Word16 lo2);
-Word32 Mpy_32_16(Word16 hi, Word16 lo, Word16 n);
-Word32 Div_32(Word32 L_num, Word16 denom_hi, Word16 denom_lo);
-
-
diff --git a/branches/1.0/thirdparties/android/include/g729a/TAB_LD8A.H b/branches/1.0/thirdparties/android/include/g729a/TAB_LD8A.H
deleted file mode 100644
index 930de49..0000000
--- a/branches/1.0/thirdparties/android/include/g729a/TAB_LD8A.H
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- ITU-T G.729A Speech Coder ANSI-C Source Code
- Version 1.1 Last modified: September 1996
-
- Copyright (c) 1996,
- AT&T, France Telecom, NTT, Universite de Sherbrooke
- All rights reserved.
-*/
-
-extern Word16 hamwindow[L_WINDOW];
-extern Word16 lag_h[M];
-extern Word16 lag_l[M];
-extern Word16 table[65];
-extern Word16 slope[64];
-extern Word16 table2[64];
-extern Word16 slope_cos[64];
-extern Word16 slope_acos[64];
-extern Word16 lspcb1[NC0][M];
-extern Word16 lspcb2[NC1][M];
-extern Word16 fg[2][MA_NP][M];
-extern Word16 fg_sum[2][M];
-extern Word16 fg_sum_inv[2][M];
-extern Word16 grid[GRID_POINTS+1];
-extern Word16 inter_3l[FIR_SIZE_SYN];
-extern Word16 pred[4];
-extern Word16 gbk1[NCODE1][2];
-extern Word16 gbk2[NCODE2][2];
-extern Word16 map1[NCODE1];
-extern Word16 map2[NCODE2];
-extern Word16 coef[2][2];
-extern Word32 L_coef[2][2];
-extern Word16 thr1[NCODE1-NCAN1];
-extern Word16 thr2[NCODE2-NCAN2];
-extern Word16 imap1[NCODE1];
-extern Word16 imap2[NCODE2];
-extern Word16 b100[3];
-extern Word16 a100[3];
-extern Word16 b140[3];
-extern Word16 a140[3];
-extern Word16 bitsno[PRM_SIZE];
-extern Word16 tabpow[33];
-extern Word16 tablog[33];
-extern Word16 tabsqr[49];
-extern Word16 tab_zone[PIT_MAX+L_INTERPOL-1];
-
diff --git a/branches/1.0/thirdparties/android/include/g729a/TYPEDEF.H b/branches/1.0/thirdparties/android/include/g729a/TYPEDEF.H
deleted file mode 100644
index ca864e5..0000000
--- a/branches/1.0/thirdparties/android/include/g729a/TYPEDEF.H
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- ITU-T G.729A Speech Coder ANSI-C Source Code
- Version 1.1 Last modified: September 1996
-
- Copyright (c) 1996,
- AT&T, France Telecom, NTT, Universite de Sherbrooke
- All rights reserved.
-*/
-
-/* WARNING: Make sure that the proper flags are defined for your system */
-
-/*
- Types definitions
-*/
-
-#if defined(__BORLANDC__) || defined (__WATCOMC__) || defined(_MSC_VER) || defined(__ZTC__) || defined(__HIGHC__) || defined(_TURBOC_)
-typedef long int Word32 ;
-typedef short int Word16 ;
-typedef short int Flag ;
-#elif defined( __sun)
-typedef short Word16;
-typedef long Word32;
-typedef int Flag;
-#elif defined(__unix__) || defined(__unix)
-typedef short Word16;
-typedef int Word32;
-typedef int Flag;
-#elif defined(VMS) || defined(__VMS)
-typedef short Word16;
-typedef long Word32;
-typedef int Flag;
-#else
-#error COMPILER NOT TESTED typedef.h needs to be updated, see readme
-#endif
-
-
diff --git a/branches/1.0/thirdparties/android/include/g729b/basic_op.h b/branches/1.0/thirdparties/android/include/g729b/basic_op.h
deleted file mode 100644
index 2bdbac2..0000000
--- a/branches/1.0/thirdparties/android/include/g729b/basic_op.h
+++ /dev/null
@@ -1,63 +0,0 @@
-/*___________________________________________________________________________
- | |
- | Constants and Globals |
- |___________________________________________________________________________|
-*/
-extern Flag Overflow;
-extern Flag Carry;
-
-#define MAX_32 (Word32)0x7fffffffL
-#define MIN_32 (Word32)0x80000000L
-
-#define MAX_16 (Word16)0x7fff
-#define MIN_16 (Word16)0x8000
-
-
-/*___________________________________________________________________________
- | |
- | Operators prototypes |
- |___________________________________________________________________________|
-*/
-
-Word16 sature(Word32 L_var1); /* Limit to 16 bits, 1 */
-Word16 add(Word16 var1, Word16 var2); /* Short add, 1 */
-Word16 sub(Word16 var1, Word16 var2); /* Short sub, 1 */
-Word16 abs_s(Word16 var1); /* Short abs, 1 */
-Word16 shl(Word16 var1, Word16 var2); /* Short shift left, 1 */
-Word16 shr(Word16 var1, Word16 var2); /* Short shift right, 1 */
-Word16 mult(Word16 var1, Word16 var2); /* Short mult, 1 */
-Word32 L_mult(Word16 var1, Word16 var2); /* Long mult, 1 */
-Word16 negate(Word16 var1); /* Short negate, 1 */
-Word16 extract_h(Word32 L_var1); /* Extract high, 1 */
-Word16 extract_l(Word32 L_var1); /* Extract low, 1 */
-Word16 round(Word32 L_var1); /* Round, 1 */
-Word32 L_mac(Word32 L_var3, Word16 var1, Word16 var2); /* Mac, 1 */
-Word32 L_msu(Word32 L_var3, Word16 var1, Word16 var2); /* Msu, 1 */
-Word32 L_macNs(Word32 L_var3, Word16 var1, Word16 var2);/* Mac without sat, 1*/
-Word32 L_msuNs(Word32 L_var3, Word16 var1, Word16 var2);/* Msu without sat, 1*/
-
-Word32 L_add(Word32 L_var1, Word32 L_var2); /* Long add, 2 */
-Word32 L_sub(Word32 L_var1, Word32 L_var2); /* Long sub, 2 */
-Word32 L_add_c(Word32 L_var1, Word32 L_var2); /*Long add with c, 2 */
-Word32 L_sub_c(Word32 L_var1, Word32 L_var2); /*Long sub with c, 2 */
-Word32 L_negate(Word32 L_var1); /* Long negate, 2 */
-Word16 mult_r(Word16 var1, Word16 var2); /* Mult with round, 2 */
-Word32 L_shl(Word32 L_var1, Word16 var2); /* Long shift left, 2 */
-Word32 L_shr(Word32 L_var1, Word16 var2); /* Long shift right, 2 */
-Word16 shr_r(Word16 var1, Word16 var2);/* Shift right with round, 2 */
-Word16 mac_r(Word32 L_var3, Word16 var1, Word16 var2);/* Mac with rounding, 2*/
-Word16 msu_r(Word32 L_var3, Word16 var1, Word16 var2);/* Msu with rounding, 2*/
-Word32 L_deposit_h(Word16 var1); /* 16 bit var1 -> MSB, 2 */
-Word32 L_deposit_l(Word16 var1); /* 16 bit var1 -> LSB, 2 */
-
-Word32 L_shr_r(Word32 L_var1, Word16 var2);/* Long shift right with round, 3*/
-Word32 L_abs(Word32 L_var1); /* Long abs, 3 */
-
-Word32 L_sat(Word32 L_var1); /* Long saturation, 4 */
-
-Word16 norm_s(Word16 var1); /* Short norm, 15 */
-
-Word16 div_s(Word16 var1, Word16 var2); /* Short division, 18 */
-
-Word16 norm_l(Word32 L_var1); /* Long norm, 30 */
-
diff --git a/branches/1.0/thirdparties/android/include/g729b/dtx.h b/branches/1.0/thirdparties/android/include/g729b/dtx.h
deleted file mode 100644
index 7b15017..0000000
--- a/branches/1.0/thirdparties/android/include/g729b/dtx.h
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- ITU-T G.729A Annex B ANSI-C Source Code
- Version 1.3 Last modified: August 1997
- Copyright (c) 1996, France Telecom, Rockwell International,
- Universite de Sherbrooke.
- All rights reserved.
-*/
-
-/*--------------------------------------------------------------------------*
- * Prototypes for DTX/CNG *
- *--------------------------------------------------------------------------*/
-
-/* Encoder DTX/CNG functions */
-void Init_Cod_cng(void);
-void Cod_cng(
- Word16 *exc, /* (i/o) : excitation array */
- Word16 pastVad, /* (i) : previous VAD decision */
- Word16 *lsp_old_q, /* (i/o) : previous quantized lsp */
- Word16 *Aq, /* (o) : set of interpolated LPC coefficients */
- Word16 *ana, /* (o) : coded SID parameters */
- Word16 freq_prev[MA_NP][M],
- /* (i/o) : previous LPS for quantization */
- Word16 *seed /* (i/o) : random generator seed */
-);
-void Update_cng(
- Word16 *r_h, /* (i) : MSB of frame autocorrelation */
- Word16 exp_r, /* (i) : scaling factor associated */
- Word16 Vad /* (i) : current Vad decision */
-);
-
-/* SID gain Quantization */
-void Qua_Sidgain(
- Word16 *ener, /* (i) array of energies */
- Word16 *sh_ener, /* (i) corresponding scaling factors */
- Word16 nb_ener, /* (i) number of energies or */
- Word16 *enerq, /* (o) decoded energies in dB */
- Word16 *idx /* (o) SID gain quantization index */
-);
-
-/* CNG excitation generation */
-void Calc_exc_rand(
- Word16 cur_gain, /* (i) : target sample gain */
- Word16 *exc, /* (i/o) : excitation array */
- Word16 *seed, /* (i) : current Vad decision */
- Flag flag_cod /* (i) : encoder/decoder flag */
-);
-
-/* SID LSP Quantization */
-void Get_freq_prev(Word16 x[MA_NP][M]);
-void Update_freq_prev(Word16 x[MA_NP][M]);
-void Get_decfreq_prev(Word16 x[MA_NP][M]);
-void Update_decfreq_prev(Word16 x[MA_NP][M]);
-
-/* Decoder CNG generation */
-void Init_Dec_cng(void);
-void Dec_cng(
- Word16 past_ftyp, /* (i) : past frame type */
- Word16 sid_sav, /* (i) : energy to recover SID gain */
- Word16 sh_sid_sav, /* (i) : corresponding scaling factor */
- Word16 *parm, /* (i) : coded SID parameters */
- Word16 *exc, /* (i/o) : excitation array */
- Word16 *lsp_old, /* (i/o) : previous lsp */
- Word16 *A_t, /* (o) : set of interpolated LPC coefficients */
- Word16 *seed, /* (i/o) : random generator seed */
- Word16 freq_prev[MA_NP][M]
- /* (i/o) : previous LPS for quantization */
-);
-Word16 read_frame(FILE *f_serial, Word16 *parm);
-
-/*--------------------------------------------------------------------------*
- * Constants for DTX/CNG *
- *--------------------------------------------------------------------------*/
-
-/* DTX constants */
-#define FLAG_COD (Flag)1
-#define FLAG_DEC (Flag)0
-#define INIT_SEED 11111
-#define FR_SID_MIN 3
-#define NB_SUMACF 3
-#define NB_CURACF 2
-#define NB_GAIN 2
-#define FRAC_THRESH1 4855
-#define FRAC_THRESH2 3161
-#define A_GAIN0 28672
-
-#define SIZ_SUMACF (NB_SUMACF * MP1)
-#define SIZ_ACF (NB_CURACF * MP1)
-#define A_GAIN1 4096 /* 32768L - A_GAIN0 */
-
-#define RATE_8000 80 /* Full rate (8000 bit/s) */
-#define RATE_SID 15 /* SID */
-#define RATE_0 0 /* 0 bit/s rate */
-
-/* CNG excitation generation constant */
- /* alpha = 0.5 */
-#define FRAC1 19043 /* (sqrt(40)xalpha/2 - 1) * 32768 */
-#define K0 24576 /* (1 - alpha ** 2) in Q15 */
-#define G_MAX 5000
-
diff --git a/branches/1.0/thirdparties/android/include/g729b/ld8a.h b/branches/1.0/thirdparties/android/include/g729b/ld8a.h
deleted file mode 100644
index 784d88d..0000000
--- a/branches/1.0/thirdparties/android/include/g729b/ld8a.h
+++ /dev/null
@@ -1,629 +0,0 @@
-/*
- ITU-T G.729A Speech Coder with Annex B ANSI-C Source Code
- Version 1.3 Last modified: August 1997
-
- Copyright (c) 1996,
- AT&T, France Telecom, NTT, Universite de Sherbrooke, Lucent Technologies,
- Rockwell International
- All rights reserved.
-*/
-
-/*---------------------------------------------------------------*
- * LD8A.H *
- * ~~~~~~ *
- * Function prototypes and constants use for G.729A 8kb/s coder. *
- * *
- *---------------------------------------------------------------*/
-
-/*--------------------------------------------------------------------------*
- * Codec constant parameters (coder, decoder, and postfilter) *
- *--------------------------------------------------------------------------*/
-
-#define L_TOTAL 240 /* Total size of speech buffer. */
-#define L_WINDOW 240 /* Window size in LP analysis. */
-#define L_NEXT 40 /* Lookahead in LP analysis. */
-#define L_FRAME 80 /* Frame size. */
-#define L_SUBFR 40 /* Subframe size. */
-#define M 10 /* Order of LP filter. */
-#define MP1 (M+1) /* Order of LP filter + 1 */
-#define PIT_MIN 20 /* Minimum pitch lag. */
-#define PIT_MAX 143 /* Maximum pitch lag. */
-#define L_INTERPOL (10+1) /* Length of filter for interpolation. */
-#define GAMMA1 24576 /* Bandwitdh factor = 0.75 in Q15 */
-
-#define PRM_SIZE 11 /* Size of vector of analysis parameters. */
-#define SERIAL_SIZE (80+2) /* bfi+ number of speech bits */
-
-#define SHARPMAX 13017 /* Maximum value of pitch sharpening 0.8 Q14 */
-#define SHARPMIN 3277 /* Minimum value of pitch sharpening 0.2 Q14 */
-
-
-/*-------------------------------*
- * Mathematic functions. *
- *-------------------------------*/
-
-Word32 Inv_sqrt( /* (o) Q30 : output value (range: 0<=val<1) */
- Word32 L_x /* (i) Q0 : input value (range: 0<=val<=7fffffff) */
-);
-
-void Log2(
- Word32 L_x, /* (i) Q0 : input value */
- Word16 *exponent, /* (o) Q0 : Integer part of Log2. (range: 0<=val<=30) */
- Word16 *fraction /* (o) Q15: Fractionnal part of Log2. (range: 0<=val<1) */
-);
-
-Word32 Pow2( /* (o) Q0 : result (range: 0<=val<=0x7fffffff) */
- Word16 exponent, /* (i) Q0 : Integer part. (range: 0<=val<=30) */
- Word16 fraction /* (i) Q15 : Fractionnal part. (range: 0.0<=val<1.0) */
-);
-
-/*-------------------------------*
- * Pre and post-process. *
- *-------------------------------*/
-
-void Init_Pre_Process(void);
-void Init_Post_Process(void);
-
-void Pre_Process(
- Word16 signal[], /* Input/output signal */
- Word16 lg /* Length of signal */
-);
-
-void Post_Process(
- Word16 signal[], /* Input/output signal */
- Word16 lg /* Length of signal */
-);
-
-/*----------------------------------*
- * Main coder and decoder functions *
- *----------------------------------*/
-
-void Init_Coder_ld8a(void);
-
-void Coder_ld8a(
- Word16 ana[], /* output : Analysis parameters */
- Word16 frame,
- Word16 vad_enable
-);
-
-void Init_Decod_ld8a(void);
-
-void Decod_ld8a(
- Word16 parm[], /* (i) : vector of synthesis parameters
- parm[0] = bad frame indicator (bfi) */
- Word16 synth[], /* (o) : synthesis speech */
- Word16 A_t[], /* (o) : decoded LP filter in 2 subframes */
- Word16 *T2, /* (o) : decoded pitch lag in 2 subframes */
- Word16 *Vad /* (o) : VAD */
-);
-
-/*-------------------------------*
- * LPC analysis and filtering. *
- *-------------------------------*/
-
-void Autocorr(
- Word16 x[], /* (i) : Input signal */
- Word16 m, /* (i) : LPC order */
- Word16 r_h[], /* (o) : Autocorrelations (msb) */
- Word16 r_l[], /* (o) : Autocorrelations (lsb) */
- Word16 *exp_R0
-);
-
-void Lag_window(
- Word16 m, /* (i) : LPC order */
- Word16 r_h[], /* (i/o) : Autocorrelations (msb) */
- Word16 r_l[] /* (i/o) : Autocorrelations (lsb) */
-);
-
-void Levinson(
- Word16 Rh[], /* (i) : Rh[m+1] Vector of autocorrelations (msb) */
- Word16 Rl[], /* (i) : Rl[m+1] Vector of autocorrelations (lsb) */
- Word16 A[], /* (o) Q12 : A[m] LPC coefficients (m = 10) */
- Word16 rc[], /* (o) Q15 : rc[M] Relection coefficients. */
- Word16 *Err /* (o) : Residual energy */
-);
-
-void Az_lsp(
- Word16 a[], /* (i) Q12 : predictor coefficients */
- Word16 lsp[], /* (o) Q15 : line spectral pairs */
- Word16 old_lsp[] /* (i) : old lsp[] (in case not found 10 roots) */
-);
-
-void Lsp_Az(
- Word16 lsp[], /* (i) Q15 : line spectral frequencies */
- Word16 a[] /* (o) Q12 : predictor coefficients (order = 10) */
-);
-
-void Lsf_lsp(
- Word16 lsf[], /* (i) Q15 : lsf[m] normalized (range: 0.0<=val<=0.5) */
- Word16 lsp[], /* (o) Q15 : lsp[m] (range: -1<=val<1) */
- Word16 m /* (i) : LPC order */
-);
-
-void Lsp_lsf(
- Word16 lsp[], /* (i) Q15 : lsp[m] (range: -1<=val<1) */
- Word16 lsf[], /* (o) Q15 : lsf[m] normalized (range: 0.0<=val<=0.5) */
- Word16 m /* (i) : LPC order */
-);
-
-void Int_qlpc(
- Word16 lsp_old[], /* input : LSP vector of past frame */
- Word16 lsp_new[], /* input : LSP vector of present frame */
- Word16 Az[] /* output: interpolated Az() for the 2 subframes */
-);
-
-void Weight_Az(
- Word16 a[], /* (i) Q12 : a[m+1] LPC coefficients */
- Word16 gamma, /* (i) Q15 : Spectral expansion factor. */
- Word16 m, /* (i) : LPC order. */
- Word16 ap[] /* (o) Q12 : Spectral expanded LPC coefficients */
-);
-
-void Residu(
- Word16 a[], /* (i) Q12 : prediction coefficients */
- Word16 x[], /* (i) : speech (values x[-m..-1] are needed (m=10) */
- Word16 y[], /* (o) : residual signal */
- Word16 lg /* (i) : size of filtering */
-);
-
-void Syn_filt(
- Word16 a[], /* (i) Q12 : a[m+1] prediction coefficients (m=10) */
- Word16 x[], /* (i) : input signal */
- Word16 y[], /* (o) : output signal */
- Word16 lg, /* (i) : size of filtering */
- Word16 mem[], /* (i/o) : memory associated with this filtering. */
- Word16 update /* (i) : 0=no update, 1=update of memory. */
-);
-
-void Convolve(
- Word16 x[], /* (i) : input vector */
- Word16 h[], /* (i) Q12 : impulse response */
- Word16 y[], /* (o) : output vector */
- Word16 L /* (i) : vector size */
-);
-
-/*--------------------------------------------------------------------------*
- * LTP constant parameters *
- *--------------------------------------------------------------------------*/
-
-#define UP_SAMP 3
-#define L_INTER10 10
-#define FIR_SIZE_SYN (UP_SAMP*L_INTER10+1)
-
-/*-----------------------*
- * Pitch functions. *
- *-----------------------*/
-
-Word16 Pitch_ol_fast( /* output: open loop pitch lag */
- Word16 signal[], /* input : signal used to compute the open loop pitch */
- /* signal[-pit_max] to signal[-1] should be known */
- Word16 pit_max, /* input : maximum pitch lag */
- Word16 L_frame /* input : length of frame to compute pitch */
-);
-
-Word16 Pitch_fr3_fast(/* (o) : pitch period. */
- Word16 exc[], /* (i) : excitation buffer */
- Word16 xn[], /* (i) : target vector */
- Word16 h[], /* (i) Q12 : impulse response of filters. */
- Word16 L_subfr, /* (i) : Length of subframe */
- Word16 t0_min, /* (i) : minimum value in the searched range. */
- Word16 t0_max, /* (i) : maximum value in the searched range. */
- Word16 i_subfr, /* (i) : indicator for first subframe. */
- Word16 *pit_frac /* (o) : chosen fraction. */
-);
-
-Word16 G_pitch( /* (o) Q14 : Gain of pitch lag saturated to 1.2 */
- Word16 xn[], /* (i) : Pitch target. */
- Word16 y1[], /* (i) : Filtered adaptive codebook. */
- Word16 g_coeff[], /* (i) : Correlations need for gain quantization. */
- Word16 L_subfr /* (i) : Length of subframe. */
-);
-
-Word16 Enc_lag3( /* output: Return index of encoding */
- Word16 T0, /* input : Pitch delay */
- Word16 T0_frac, /* input : Fractional pitch delay */
- Word16 *T0_min, /* in/out: Minimum search delay */
- Word16 *T0_max, /* in/out: Maximum search delay */
- Word16 pit_min, /* input : Minimum pitch delay */
- Word16 pit_max, /* input : Maximum pitch delay */
- Word16 pit_flag /* input : Flag for 1st subframe */
-);
-
-void Dec_lag3( /* output: return integer pitch lag */
- Word16 index, /* input : received pitch index */
- Word16 pit_min, /* input : minimum pitch lag */
- Word16 pit_max, /* input : maximum pitch lag */
- Word16 i_subfr, /* input : subframe flag */
- Word16 *T0, /* output: integer part of pitch lag */
- Word16 *T0_frac /* output: fractional part of pitch lag */
-);
-
-Word16 Interpol_3( /* (o) : interpolated value */
- Word16 *x, /* (i) : input vector */
- Word16 frac /* (i) : fraction */
-);
-
-void Pred_lt_3(
- Word16 exc[], /* in/out: excitation buffer */
- Word16 T0, /* input : integer pitch lag */
- Word16 frac, /* input : fraction of lag */
- Word16 L_subfr /* input : subframe size */
-);
-
-Word16 Parity_Pitch( /* output: parity bit (XOR of 6 MSB bits) */
- Word16 pitch_index /* input : index for which parity to compute */
-);
-
-Word16 Check_Parity_Pitch( /* output: 0 = no error, 1= error */
- Word16 pitch_index, /* input : index of parameter */
- Word16 parity /* input : parity bit */
-);
-
-void Cor_h_X(
- Word16 h[], /* (i) Q12 :Impulse response of filters */
- Word16 X[], /* (i) :Target vector */
- Word16 D[] /* (o) :Correlations between h[] and D[] */
- /* Normalized to 13 bits */
-);
-
-/*-----------------------*
- * Innovative codebook. *
- *-----------------------*/
-
-#define DIM_RR 616 /* size of correlation matrix */
-#define NB_POS 8 /* Number of positions for each pulse */
-#define STEP 5 /* Step betweem position of the same pulse. */
-#define MSIZE 64 /* Size of vectors for cross-correlation between 2 pulses*/
-
-/* The following constants are Q15 fractions.
- These fractions is used to keep maximum precision on "alp" sum */
-
-#define _1_2 (Word16)(16384)
-#define _1_4 (Word16)( 8192)
-#define _1_8 (Word16)( 4096)
-#define _1_16 (Word16)( 2048)
-
-Word16 ACELP_Code_A( /* (o) :index of pulses positions */
- Word16 x[], /* (i) :Target vector */
- Word16 h[], /* (i) Q12 :Inpulse response of filters */
- Word16 T0, /* (i) :Pitch lag */
- Word16 pitch_sharp, /* (i) Q14 :Last quantized pitch gain */
- Word16 code[], /* (o) Q13 :Innovative codebook */
- Word16 y[], /* (o) Q12 :Filtered innovative codebook */
- Word16 *sign /* (o) :Signs of 4 pulses */
-);
-
-void Decod_ACELP(
- Word16 sign, /* (i) : signs of 4 pulses. */
- Word16 index, /* (i) : Positions of the 4 pulses. */
- Word16 cod[] /* (o) Q13 : algebraic (fixed) codebook excitation */
-);
-/*--------------------------------------------------------------------------*
- * LSP constant parameters *
- *--------------------------------------------------------------------------*/
-
-#define NC 5 /* NC = M/2 */
-#define MA_NP 4 /* MA prediction order for LSP */
-#define MODE 2 /* number of modes for MA prediction */
-#define NC0_B 7 /* number of first stage bits */
-#define NC1_B 5 /* number of second stage bits */
-#define NC0 (1<<NC0_B)
-#define NC1 (1<<NC1_B)
-
-#define L_LIMIT 40 /* Q13:0.005 */
-#define M_LIMIT 25681 /* Q13:3.135 */
-
-#define GAP1 10 /* Q13 */
-#define GAP2 5 /* Q13 */
-#define GAP3 321 /* Q13 */
-#define GRID_POINTS 50
-
-#define PI04 ((Word16)1029) /* Q13 pi*0.04 */
-#define PI92 ((Word16)23677) /* Q13 pi*0.92 */
-#define CONST10 ((Word16)10*(1<<11)) /* Q11 10.0 */
-#define CONST12 ((Word16)19661) /* Q14 1.2 */
-
-/*-------------------------------*
- * LSP VQ functions. *
- *-------------------------------*/
-
-void Lsf_lsp2(
- Word16 lsf[], /* (i) Q13 : lsf[m] (range: 0.0<=val<PI) */
- Word16 lsp[], /* (o) Q15 : lsp[m] (range: -1<=val<1) */
- Word16 m /* (i) : LPC order */
-);
-
-void Lsp_lsf2(
- Word16 lsp[], /* (i) Q15 : lsp[m] (range: -1<=val<1) */
- Word16 lsf[], /* (o) Q13 : lsf[m] (range: 0.0<=val<PI) */
- Word16 m /* (i) : LPC order */
-);
-
-void Qua_lsp(
- Word16 lsp[], /* (i) Q15 : Unquantized LSP */
- Word16 lsp_q[], /* (o) Q15 : Quantized LSP */
- Word16 ana[] /* (o) : indexes */
-);
-
-void Get_wegt(
- Word16 flsp[], /* Q13 */
- Word16 wegt[] /* Q11 -> normalized */
-);
-
-void Lsp_encw_reset(
- void
-);
-
-void Lsp_qua_cs(
- Word16 flsp_in[M], /* Q13 */
- Word16 lspq_out[M], /* Q13 */
- Word16 *code
-);
-
-void Lsp_expand_1(
- Word16 buf[], /* Q13 */
- Word16 gap /* Q13 */
-);
-
-void Lsp_expand_2(
- Word16 buf[], /* Q13 */
- Word16 gap /* Q13 */
-);
-
-void Lsp_expand_1_2(
- Word16 buf[], /* Q13 */
- Word16 gap /* Q13 */
-);
-
-void Lsp_get_quant(
- Word16 lspcb1[][M], /* Q13 */
- Word16 lspcb2[][M], /* Q13 */
- Word16 code0,
- Word16 code1,
- Word16 code2,
- Word16 fg[][M], /* Q15 */
- Word16 freq_prev[][M], /* Q13 */
- Word16 lspq[], /* Q13 */
- Word16 fg_sum[] /* Q15 */
-);
-
-void Lsp_get_tdist(
- Word16 wegt[], /* normalized */
- Word16 buf[], /* Q13 */
- Word32 *L_tdist, /* Q27 */
- Word16 rbuf[], /* Q13 */
- Word16 fg_sum[] /* Q15 */
-);
-
-void Lsp_last_select(
- Word32 L_tdist[], /* Q27 */
- Word16 *mode_index
-);
-
-void Lsp_pre_select(
- Word16 rbuf[], /* Q13 */
- Word16 lspcb1[][M], /* Q13 */
- Word16 *cand
-);
-
-void Lsp_select_1(
- Word16 rbuf[], /* Q13 */
- Word16 lspcb1[], /* Q13 */
- Word16 wegt[], /* normalized */
- Word16 lspcb2[][M], /* Q13 */
- Word16 *index
-);
-
-void Lsp_select_2(
- Word16 rbuf[], /* Q13 */
- Word16 lspcb1[], /* Q13 */
- Word16 wegt[], /* normalized */
- Word16 lspcb2[][M], /* Q13 */
- Word16 *index
-);
-
-void Lsp_stability(
- Word16 buf[] /* Q13 */
-);
-
-void Relspwed(
- Word16 lsp[], /* Q13 */
- Word16 wegt[], /* normalized */
- Word16 lspq[], /* Q13 */
- Word16 lspcb1[][M], /* Q13 */
- Word16 lspcb2[][M], /* Q13 */
- Word16 fg[MODE][MA_NP][M], /* Q15 */
- Word16 freq_prev[MA_NP][M], /* Q13 */
- Word16 fg_sum[MODE][M], /* Q15 */
- Word16 fg_sum_inv[MODE][M], /* Q12 */
- Word16 code_ana[]
-);
-
-void D_lsp(
- Word16 prm[], /* (i) : indexes of the selected LSP */
- Word16 lsp_q[], /* (o) Q15 : Quantized LSP parameters */
- Word16 erase /* (i) : frame erase information */
-);
-
-void Lsp_decw_reset(
- void
-);
-
-void Lsp_iqua_cs(
- Word16 prm[], /* input : codes of the selected LSP*/
- Word16 lsp_q[], /* output: Quantized LSP parameters*/
- Word16 erase /* input : frame erase information */
-);
-
-void Lsp_prev_compose(
- Word16 lsp_ele[], /* Q13 */
- Word16 lsp[], /* Q13 */
- Word16 fg[][M], /* Q15 */
- Word16 freq_prev[][M], /* Q13 */
- Word16 fg_sum[] /* Q15 */
-);
-
-void Lsp_prev_extract(
- Word16 lsp[M], /* Q13 */
- Word16 lsp_ele[M], /* Q13 */
- Word16 fg[MA_NP][M], /* Q15 */
- Word16 freq_prev[MA_NP][M], /* Q13 */
- Word16 fg_sum_inv[M] /* Q12 */
-);
-
-void Lsp_prev_update(
- Word16 lsp_ele[M], /* Q13 */
- Word16 freq_prev[MA_NP][M] /* Q13 */
-);
-
-/*-------------------------------*
- * gain VQ constants. *
- *-------------------------------*/
-
-#define NCODE1_B 3 /* number of Codebook-bit */
-#define NCODE2_B 4 /* number of Codebook-bit */
-#define NCODE1 (1<<NCODE1_B) /* Codebook 1 size */
-#define NCODE2 (1<<NCODE2_B) /* Codebook 2 size */
-#define NCAN1 4 /* Pre-selecting order for #1 */
-#define NCAN2 8 /* Pre-selecting order for #2 */
-#define INV_COEF -17103 /* Q19 */
-
-/*--------------------------------------------------------------------------*
- * gain VQ functions. *
- *--------------------------------------------------------------------------*/
-
-Word16 Qua_gain(
- Word16 code[], /* (i) Q13 : Innovative vector. */
- Word16 g_coeff[], /* (i) : Correlations <xn y1> -2<y1 y1> */
- /* <y2,y2>, -2<xn,y2>, 2<y1,y2> */
- Word16 exp_coeff[],/* (i) : Q-Format g_coeff[] */
- Word16 L_subfr, /* (i) : Subframe length. */
- Word16 *gain_pit, /* (o) Q14 : Pitch gain. */
- Word16 *gain_cod, /* (o) Q1 : Code gain. */
- Word16 tameflag /* (i) : flag set to 1 if taming is needed */
-);
-
-void Dec_gain(
- Word16 index, /* (i) : Index of quantization. */
- Word16 code[], /* (i) Q13 : Innovative vector. */
- Word16 L_subfr, /* (i) : Subframe length. */
- Word16 bfi, /* (i) : Bad frame indicator */
- Word16 *gain_pit, /* (o) Q14 : Pitch gain. */
- Word16 *gain_cod /* (o) Q1 : Code gain. */
-);
-
-void Gain_predict(
- Word16 past_qua_en[],/* (i) Q10 :Past quantized energies */
- Word16 code[], /* (i) Q13 : Innovative vector. */
- Word16 L_subfr, /* (i) : Subframe length. */
- Word16 *gcode0, /* (o) Qxx : Predicted codebook gain */
- Word16 *exp_gcode0 /* (o) : Q-Format(gcode0) */
-);
-
-void Gain_update(
- Word16 past_qua_en[],/* (i) Q10 :Past quantized energies */
- Word32 L_gbk12 /* (i) Q13 : gbk1[indice1][1]+gbk2[indice2][1] */
-);
-
-void Gain_update_erasure(
- Word16 past_qua_en[]/* (i) Q10 :Past quantized energies */
-);
-
-void Corr_xy2(
- Word16 xn[], /* (i) Q0 :Target vector. */
- Word16 y1[], /* (i) Q0 :Adaptive codebook. */
- Word16 y2[], /* (i) Q12 :Filtered innovative vector. */
- Word16 g_coeff[], /* (o) Q[exp]:Correlations between xn,y1,y2 */
- Word16 exp_g_coeff[] /* (o) :Q-format of g_coeff[] */
-);
-
-/*-----------------------*
- * Bitstream function *
- *-----------------------*/
-
-void prm2bits_ld8k(Word16 prm[], Word16 bits[]);
-void bits2prm_ld8k(Word16 bits[], Word16 prm[]);
-#define BIT_0 (short)0x007f /* definition of zero-bit in bit-stream */
-#define BIT_1 (short)0x0081 /* definition of one-bit in bit-stream */
-#define SYNC_WORD (short)0x6b21 /* definition of frame erasure flag */
-#define SIZE_WORD (short)80 /* number of speech bits */
-
-
-/*-----------------------------------*
- * Post-filter functions. *
- *-----------------------------------*/
-
-#define L_H 22 /* size of truncated impulse response of A(z/g1)/A(z/g2) */
-
-#define GAMMAP 16384 /* 0.5 (Q15) */
-#define INV_GAMMAP 21845 /* 1/(1+GAMMAP) (Q15) */
-#define GAMMAP_2 10923 /* GAMMAP/(1+GAMMAP) (Q15) */
-
-#define GAMMA2_PST 18022 /* Formant postfilt factor (numerator) 0.55 Q15 */
-#define GAMMA1_PST 22938 /* Formant postfilt factor (denominator) 0.70 Q15 */
-
-#define MU 26214 /* Factor for tilt compensation filter 0.8 Q15 */
-#define AGC_FAC 29491 /* Factor for automatic gain control 0.9 Q15 */
-#define AGC_FAC1 (Word16)(32767 - AGC_FAC) /* 1-AGC_FAC in Q15 */
-
-
-void Init_Post_Filter(void);
-
-void Post_Filter(
- Word16 *syn, /* in/out: synthesis speech (postfiltered is output) */
- Word16 *Az_4, /* input : interpolated LPC parameters in all subframes */
- Word16 *T, /* input : decoded pitch lags in all subframes */
- Word16 Vad
-);
-
-void pit_pst_filt(
- Word16 *signal, /* (i) : input signal */
- Word16 *scal_sig, /* (i) : input signal (scaled, divided by 4) */
- Word16 t0_min, /* (i) : minimum value in the searched range */
- Word16 t0_max, /* (i) : maximum value in the searched range */
- Word16 L_subfr, /* (i) : size of filtering */
- Word16 *signal_pst /* (o) : harmonically postfiltered signal */
-);
-
-void preemphasis(
- Word16 *signal, /* (i/o) : input signal overwritten by the output */
- Word16 g, /* (i) Q15 : preemphasis coefficient */
- Word16 L /* (i) : size of filtering */
-);
-
-void agc(
- Word16 *sig_in, /* (i) : postfilter input signal */
- Word16 *sig_out, /* (i/o) : postfilter output signal */
- Word16 l_trm /* (i) : subframe size */
-);
-
-/*--------------------------------------------------------------------------*
- * Constants and prototypes for taming procedure. *
- *--------------------------------------------------------------------------*/
-
-#define GPCLIP 15564 /* Maximum pitch gain if taming is needed Q14*/
-#define GPCLIP2 481 /* Maximum pitch gain if taming is needed Q9 */
-#define GP0999 16383 /* Maximum pitch gain if taming is needed */
-#define L_THRESH_ERR 983040000L /* Error threshold taming 16384. * 60000. */
-
-void Init_exc_err(void);
-void update_exc_err(Word16 gain_pit, Word16 t0);
-Word16 test_err(Word16 t0, Word16 t0_frac);
-
-/*--------------------------------------------------------------------------*
- * Prototypes for auxiliary functions. *
- *--------------------------------------------------------------------------*/
-
-void Copy(
- Word16 x[], /* (i) : input vector */
- Word16 y[], /* (o) : output vector */
- Word16 L /* (i) : vector length */
-);
-
-void Set_zero(
- Word16 x[], /* (o) : vector to clear */
- Word16 L /* (i) : length of vector */
-);
-
-Word16 Random(Word16 *seed);
-
diff --git a/branches/1.0/thirdparties/android/include/g729b/octet.h b/branches/1.0/thirdparties/android/include/g729b/octet.h
deleted file mode 100644
index a96d173..0000000
--- a/branches/1.0/thirdparties/android/include/g729b/octet.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
- ITU-T G.729A Annex B ANSI-C Source Code
- Version 1.3 Last modified: August 1997
- Copyright (c) 1996, France Telecom, Rockwell International,
- Universite de Sherbrooke.
- All rights reserved.
-*/
-
-/* Definition for Octet Transmission mode */
-/* When Annex B is used for transmission systems that operate on octet boundary,
- an extra bit (with value zero) will be packed at the end of a SID bit stream.
- This will change the number of bits in a SID bit stream from 15 bits to
- 16 bits (i.e., 2 bytes).
-*/
-
-#define OCTET_TX_MODE
-#define RATE_SID_OCTET 16 /* number of bits in Octet Transmission mode */
-
-
-
diff --git a/branches/1.0/thirdparties/android/include/g729b/oper_32b.h b/branches/1.0/thirdparties/android/include/g729b/oper_32b.h
deleted file mode 100644
index dbb8ebe..0000000
--- a/branches/1.0/thirdparties/android/include/g729b/oper_32b.h
+++ /dev/null
@@ -1,17 +0,0 @@
-/*
- ITU-T G.729A Speech Coder ANSI-C Source Code
- Version 1.1 Last modified: September 1996
-
- Copyright (c) 1996,
- AT&T, France Telecom, NTT, Universite de Sherbrooke, Lucent Technologies
- All rights reserved.
-*/
-
-/* Double precision operations */
-
-void L_Extract(Word32 L_32, Word16 *hi, Word16 *lo);
-Word32 L_Comp(Word16 hi, Word16 lo);
-Word32 Mpy_32(Word16 hi1, Word16 lo1, Word16 hi2, Word16 lo2);
-Word32 Mpy_32_16(Word16 hi, Word16 lo, Word16 n);
-Word32 Div_32(Word32 L_num, Word16 denom_hi, Word16 denom_lo);
-
diff --git a/branches/1.0/thirdparties/android/include/g729b/sid.h b/branches/1.0/thirdparties/android/include/g729b/sid.h
deleted file mode 100644
index 477e1ea..0000000
--- a/branches/1.0/thirdparties/android/include/g729b/sid.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- ITU-T G.729A Annex B ANSI-C Source Code
- Version 1.3 Last modified: August 1997
- Copyright (c) 1996, France Telecom, Rockwell International,
- Universite de Sherbrooke.
- All rights reserved.
-*/
-
-#define TRUE 1
-#define FALSE 0
-#define sqr(a) ((a)*(a))
-#define R_LSFQ 10
-
-void Init_lsfq_noise(void);
-void lsfq_noise(Word16 *lsp_new, Word16 *lspq,
- Word16 freq_prev[MA_NP][M], Word16 *idx);
-void sid_lsfq_decode(Word16 *index, Word16 *lspq,
- Word16 freq_prev[MA_NP][M]);
-
-
-
-
-
diff --git a/branches/1.0/thirdparties/android/include/g729b/tab_dtx.h b/branches/1.0/thirdparties/android/include/g729b/tab_dtx.h
deleted file mode 100644
index 08711fc..0000000
--- a/branches/1.0/thirdparties/android/include/g729b/tab_dtx.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- ITU-T G.729A Annex B ANSI-C Source Code
- Version 1.3 Last modified: August 1997
- Copyright (c) 1996, France Telecom, Rockwell International,
- Universite de Sherbrooke.
- All rights reserved.
-*/
-
-/* VAD constants */
-extern Word16 lbf_corr[NP+1];
-extern Word16 shift_fx[33];
-extern Word16 factor_fx[33];
-
-/* SID LSF quantization */
-extern Word16 noise_fg[MODE][MA_NP][M];
-extern Word16 noise_fg_sum[MODE][M];
-extern Word16 noise_fg_sum_inv[MODE][M];
-extern Word16 PtrTab_1[32];
-extern Word16 PtrTab_2[2][16];
-extern Word16 Mp[MODE];
-
-/* SID gain quantization */
-extern Word16 fact[NB_GAIN+1];
-extern Word16 marg[NB_GAIN+1];
-extern Word16 tab_Sidgain[32];
-
-
-
diff --git a/branches/1.0/thirdparties/android/include/g729b/tab_ld8a.h b/branches/1.0/thirdparties/android/include/g729b/tab_ld8a.h
deleted file mode 100644
index c2d9cc6..0000000
--- a/branches/1.0/thirdparties/android/include/g729b/tab_ld8a.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- ITU-T G.729A Speech Coder with Annex B ANSI-C Source Code
- Version 1.3 Last modified: August 1997
-
- Copyright (c) 1996,
- AT&T, France Telecom, NTT, Universite de Sherbrooke, Lucent Technologies,
- Rockwell International
- All rights reserved.
-*/
-
-extern Word16 hamwindow[L_WINDOW];
-extern Word16 lag_h[M+2];
-extern Word16 lag_l[M+2];
-extern Word16 table[65];
-extern Word16 slope[64];
-extern Word16 table2[64];
-extern Word16 slope_cos[64];
-extern Word16 slope_acos[64];
-extern Word16 lspcb1[NC0][M];
-extern Word16 lspcb2[NC1][M];
-extern Word16 fg[2][MA_NP][M];
-extern Word16 fg_sum[2][M];
-extern Word16 fg_sum_inv[2][M];
-extern Word16 grid[GRID_POINTS+1];
-extern Word16 freq_prev_reset[M];
-extern Word16 inter_3l[FIR_SIZE_SYN];
-extern Word16 pred[4];
-extern Word16 gbk1[NCODE1][2];
-extern Word16 gbk2[NCODE2][2];
-extern Word16 map1[NCODE1];
-extern Word16 map2[NCODE2];
-extern Word16 coef[2][2];
-extern Word32 L_coef[2][2];
-extern Word16 thr1[NCODE1-NCAN1];
-extern Word16 thr2[NCODE2-NCAN2];
-extern Word16 imap1[NCODE1];
-extern Word16 imap2[NCODE2];
-extern Word16 b100[3];
-extern Word16 a100[3];
-extern Word16 b140[3];
-extern Word16 a140[3];
-extern Word16 bitsno[PRM_SIZE];
-extern Word16 bitsno2[4];
-extern Word16 tabpow[33];
-extern Word16 tablog[33];
-extern Word16 tabsqr[49];
-extern Word16 tab_zone[PIT_MAX+L_INTERPOL-1];
-
-
-
-
-
diff --git a/branches/1.0/thirdparties/android/include/g729b/typedef.h b/branches/1.0/thirdparties/android/include/g729b/typedef.h
deleted file mode 100644
index 7408f8f..0000000
--- a/branches/1.0/thirdparties/android/include/g729b/typedef.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- ITU-T G.729A Speech Coder ANSI-C Source Code
- Version 1.1 Last modified: September 1996
-
- Copyright (c) 1996,
- AT&T, France Telecom, NTT, Universite de Sherbrooke, Lucent Technologies
- All rights reserved.
-*/
-
-/* WARNING: Make sure that the proper flags are defined for your system */
-
-/*
- Types definitions
-*/
-
-#if defined(__BORLANDC__) || defined (__WATCOMC__) || defined(_MSC_VER) || defined(__ZTC__) || defined(__HIGHC__)
-typedef long int Word32 ;
-typedef short int Word16 ;
-typedef short int Flag ;
-#elif defined( __sun)
-typedef short Word16;
-typedef long Word32;
-typedef int Flag;
-#elif defined(__unix__) || defined(__unix)
-typedef short Word16;
-typedef int Word32;
-typedef int Flag;
-#elif defined(VMS) || defined(__VMS)
-typedef short Word16;
-typedef long Word32;
-typedef int Flag;
-#else
-#error COMPILER NOT TESTED typedef.h needs to be updated, see readme
-#endif
-
diff --git a/branches/1.0/thirdparties/android/include/g729b/vad.h b/branches/1.0/thirdparties/android/include/g729b/vad.h
deleted file mode 100644
index c598e9b..0000000
--- a/branches/1.0/thirdparties/android/include/g729b/vad.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- ITU-T G.729A Annex B ANSI-C Source Code
- Version 1.3 Last modified: August 1997
- Copyright (c) 1996, France Telecom, Rockwell International,
- Universite de Sherbrooke.
- All rights reserved.
-*/
-
-#define NP 12 /* Increased LPC order */
-#define NOISE 0
-#define VOICE 1
-#define INIT_FRAME 32
-#define INIT_COUNT 20
-#define ZC_START 120
-#define ZC_END 200
-
-void vad_init(void);
-
-void vad(
- Word16 rc,
- Word16 *lsf,
- Word16 *r_h,
- Word16 *r_l,
- Word16 exp_R0,
- Word16 *sigpp,
- Word16 frm_count,
- Word16 prev_marker,
- Word16 pprev_marker,
- Word16 *marker);
-
diff --git a/branches/1.0/thirdparties/android/include/gsm.h b/branches/1.0/thirdparties/android/include/gsm.h
deleted file mode 100644
index 4714ab6..0000000
--- a/branches/1.0/thirdparties/android/include/gsm.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische
- * Universitaet Berlin. See the accompanying file "COPYRIGHT" for
- * details. THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.
- */
-
-/*$Header: /home/kbs/jutta/src/gsm/gsm-1.0/inc/RCS/gsm.h,v 1.11 1996/07/05 18:02:56 jutta Exp $*/
-
-#ifndef GSM_H
-#define GSM_H
-
-#ifdef __cplusplus
-# define NeedFunctionPrototypes 1
-#endif
-
-#if __STDC__
-# define NeedFunctionPrototypes 1
-#endif
-
-#ifdef _NO_PROTO
-# undef NeedFunctionPrototypes
-#endif
-
-#ifdef NeedFunctionPrototypes
-# include <stdio.h> /* for FILE * */
-#endif
-
-#undef GSM_P
-#if NeedFunctionPrototypes
-# define GSM_P( protos ) protos
-#else
-# define GSM_P( protos ) ( /* protos */ )
-#endif
-
-/*
- * Interface
- */
-
-typedef struct gsm_state * gsm;
-typedef short gsm_signal; /* signed 16 bit */
-typedef unsigned char gsm_byte;
-typedef gsm_byte gsm_frame[33]; /* 33 * 8 bits */
-
-#define GSM_MAGIC 0xD /* 13 kbit/s RPE-LTP */
-
-#define GSM_PATCHLEVEL 10
-#define GSM_MINOR 0
-#define GSM_MAJOR 1
-
-#define GSM_OPT_VERBOSE 1
-#define GSM_OPT_FAST 2
-#define GSM_OPT_LTP_CUT 3
-#define GSM_OPT_WAV49 4
-#define GSM_OPT_FRAME_INDEX 5
-#define GSM_OPT_FRAME_CHAIN 6
-
-extern gsm gsm_create GSM_P((void));
-extern void gsm_destroy GSM_P((gsm));
-
-extern int gsm_print GSM_P((FILE *, gsm, gsm_byte *));
-extern int gsm_option GSM_P((gsm, int, int *));
-
-extern void gsm_encode GSM_P((gsm, gsm_signal *, gsm_byte *));
-extern int gsm_decode GSM_P((gsm, gsm_byte *, gsm_signal *));
-
-extern int gsm_explode GSM_P((gsm, gsm_byte *, gsm_signal *));
-extern void gsm_implode GSM_P((gsm, gsm_signal *, gsm_byte *));
-
-#undef GSM_P
-
-#endif /* GSM_H */
diff --git a/branches/1.0/thirdparties/android/include/ilbc/FrameClassify.h b/branches/1.0/thirdparties/android/include/ilbc/FrameClassify.h
deleted file mode 100644
index 8445094..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/FrameClassify.h
+++ /dev/null
@@ -1,27 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- FrameClassify.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __iLBC_FRAMECLASSIFY_H
- #define __iLBC_FRAMECLASSIFY_H
-
- int FrameClassify( /* index to the max-energy sub-frame */
- iLBC_Enc_Inst_t *iLBCenc_inst,
- /* (i/o) the encoder state structure */
- float *residual /* (i) lpc residual signal */
- );
-
-
-
-
-
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/LPCdecode.h b/branches/1.0/thirdparties/android/include/ilbc/LPCdecode.h
deleted file mode 100644
index 7f59984..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/LPCdecode.h
+++ /dev/null
@@ -1,52 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- LPC_decode.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __iLBC_LPC_DECODE_H
- #define __iLBC_LPC_DECODE_H
-
- void LSFinterpolate2a_dec(
- float *a, /* (o) lpc coefficients for a sub-frame */
- float *lsf1, /* (i) first lsf coefficient vector */
- float *lsf2, /* (i) second lsf coefficient vector */
- float coef, /* (i) interpolation weight */
- int length /* (i) length of lsf vectors */
- );
-
- void SimplelsfDEQ(
- float *lsfdeq, /* (o) dequantized lsf coefficients */
- int *index, /* (i) quantization index */
- int lpc_n /* (i) number of LPCs */
- );
-
- void DecoderInterpolateLSF(
- float *syntdenum, /* (o) synthesis filter coefficients */
- float *weightdenum, /* (o) weighting denumerator
- coefficients */
- float *lsfdeq, /* (i) dequantized lsf coefficients */
- int length, /* (i) length of lsf coefficient vector */
- iLBC_Dec_Inst_t *iLBCdec_inst
- /* (i) the decoder state structure */
- );
-
- #endif
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/LPCencode.h b/branches/1.0/thirdparties/android/include/ilbc/LPCencode.h
deleted file mode 100644
index 7bee69a..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/LPCencode.h
+++ /dev/null
@@ -1,27 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- LPCencode.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __iLBC_LPCENCOD_H
- #define __iLBC_LPCENCOD_H
-
- void LPCencode(
- float *syntdenum, /* (i/o) synthesis filter coefficients
- before/after encoding */
- float *weightdenum, /* (i/o) weighting denumerator coefficients
- before/after encoding */
- int *lsf_index, /* (o) lsf quantization index */
- float *data, /* (i) lsf coefficients to quantize */
- iLBC_Enc_Inst_t *iLBCenc_inst
- /* (i/o) the encoder state structure */
- );
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/StateConstructW.h b/branches/1.0/thirdparties/android/include/ilbc/StateConstructW.h
deleted file mode 100644
index 010ab3a..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/StateConstructW.h
+++ /dev/null
@@ -1,31 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- StateConstructW.h
-
-
-
-
-
-
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __iLBC_STATECONSTRUCTW_H
- #define __iLBC_STATECONSTRUCTW_H
-
- void StateConstructW(
- int idxForMax, /* (i) 6-bit index for the quantization of
- max amplitude */
- int *idxVec, /* (i) vector of quantization indexes */
- float *syntDenum, /* (i) synthesis filter denumerator */
- float *out, /* (o) the decoded state vector */
- int len /* (i) length of a state vector */
- );
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/StateSearchW.h b/branches/1.0/thirdparties/android/include/ilbc/StateSearchW.h
deleted file mode 100644
index f74f8e9..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/StateSearchW.h
+++ /dev/null
@@ -1,52 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- StateSearchW.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __iLBC_STATESEARCHW_H
- #define __iLBC_STATESEARCHW_H
-
- void AbsQuantW(
- iLBC_Enc_Inst_t *iLBCenc_inst,
- /* (i) Encoder instance */
- float *in, /* (i) vector to encode */
- float *syntDenum, /* (i) denominator of synthesis filter */
- float *weightDenum, /* (i) denominator of weighting filter */
- int *out, /* (o) vector of quantizer indexes */
- int len, /* (i) length of vector to encode and
- vector of quantizer indexes */
- int state_first /* (i) position of start state in the
- 80 vec */
- );
-
- void StateSearchW(
- iLBC_Enc_Inst_t *iLBCenc_inst,
- /* (i) Encoder instance */
- float *residual,/* (i) target residual vector */
- float *syntDenum, /* (i) lpc synthesis filter */
- float *weightDenum, /* (i) weighting filter denuminator */
- int *idxForMax, /* (o) quantizer index for maximum
- amplitude */
- int *idxVec, /* (o) vector of quantization indexes */
- int len, /* (i) length of all vectors */
- int state_first /* (i) position of start state in the
- 80 vec */
- );
-
-
- #endif
-
-
-
-
-
-
-
-
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/anaFilter.h b/branches/1.0/thirdparties/android/include/ilbc/anaFilter.h
deleted file mode 100644
index ae9c4e5..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/anaFilter.h
+++ /dev/null
@@ -1,30 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- anaFilter.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __iLBC_ANAFILTER_H
- #define __iLBC_ANAFILTER_H
-
- void anaFilter(
-
-
-
-
-
-
- float *In, /* (i) Signal to be filtered */
- float *a, /* (i) LP parameters */
- int len,/* (i) Length of signal */
- float *Out, /* (o) Filtered signal */
- float *mem /* (i/o) Filter state */
- );
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/constants.h b/branches/1.0/thirdparties/android/include/ilbc/constants.h
deleted file mode 100644
index 459410b..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/constants.h
+++ /dev/null
@@ -1,81 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- constants.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __iLBC_CONSTANTS_H
- #define __iLBC_CONSTANTS_H
-
- #include "iLBC_define.h"
-
-
- /* ULP bit allocation */
-
-
-
-
-
-
-
- extern const iLBC_ULP_Inst_t ULP_20msTbl;
- extern const iLBC_ULP_Inst_t ULP_30msTbl;
-
- /* high pass filters */
-
- extern float hpi_zero_coefsTbl[];
- extern float hpi_pole_coefsTbl[];
- extern float hpo_zero_coefsTbl[];
- extern float hpo_pole_coefsTbl[];
-
- /* low pass filters */
- extern float lpFilt_coefsTbl[];
-
- /* LPC analysis and quantization */
-
- extern float lpc_winTbl[];
- extern float lpc_asymwinTbl[];
- extern float lpc_lagwinTbl[];
- extern float lsfCbTbl[];
- extern float lsfmeanTbl[];
- extern int dim_lsfCbTbl[];
- extern int size_lsfCbTbl[];
- extern float lsf_weightTbl_30ms[];
- extern float lsf_weightTbl_20ms[];
-
- /* state quantization tables */
-
- extern float state_sq3Tbl[];
- extern float state_frgqTbl[];
-
- /* gain quantization tables */
-
- extern float gain_sq3Tbl[];
- extern float gain_sq4Tbl[];
- extern float gain_sq5Tbl[];
-
- /* adaptive codebook definitions */
-
- extern int search_rangeTbl[5][CB_NSTAGES];
- extern int memLfTbl[];
- extern int stMemLTbl;
- extern float cbfiltersTbl[CB_FILTERLEN];
-
- /* enhancer definitions */
-
- extern float polyphaserTbl[];
- extern float enh_plocsTbl[];
-
-
-
-
-
-
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/createCB.h b/branches/1.0/thirdparties/android/include/ilbc/createCB.h
deleted file mode 100644
index 1f7ac65..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/createCB.h
+++ /dev/null
@@ -1,58 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- createCB.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __iLBC_CREATECB_H
- #define __iLBC_CREATECB_H
-
- void filteredCBvecs(
- float *cbvectors, /* (o) Codebook vector for the
- higher section */
-
-
-
-
-
-
- float *mem, /* (i) Buffer to create codebook
- vectors from */
- int lMem /* (i) Length of buffer */
- );
-
- void searchAugmentedCB(
- int low, /* (i) Start index for the search */
- int high, /* (i) End index for the search */
- int stage, /* (i) Current stage */
- int startIndex, /* (i) CB index for the first
- augmented vector */
- float *target, /* (i) Target vector for encoding */
- float *buffer, /* (i) Pointer to the end of the
- buffer for augmented codebook
- construction */
- float *max_measure, /* (i/o) Currently maximum measure */
- int *best_index,/* (o) Currently the best index */
- float *gain, /* (o) Currently the best gain */
- float *energy, /* (o) Energy of augmented
- codebook vectors */
- float *invenergy/* (o) Inv energy of aug codebook
- vectors */
- );
-
- void createAugmentedVec(
- int index, /* (i) Index for the aug vector
- to be created */
- float *buffer, /* (i) Pointer to the end of the
- buffer for augmented codebook
- construction */
- float *cbVec /* (o) The construced codebook vector */
- );
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/doCPLC.h b/branches/1.0/thirdparties/android/include/ilbc/doCPLC.h
deleted file mode 100644
index 0c1d028..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/doCPLC.h
+++ /dev/null
@@ -1,28 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- doCPLC.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __iLBC_DOLPC_H
- #define __iLBC_DOLPC_H
-
- void doThePLC(
- float *PLCresidual, /* (o) concealed residual */
- float *PLClpc, /* (o) concealed LP parameters */
- int PLI, /* (i) packet loss indicator
- 0 - no PL, 1 = PL */
- float *decresidual, /* (i) decoded residual */
- float *lpc, /* (i) decoded LPC (only used for no PL) */
- int inlag, /* (i) pitch lag */
- iLBC_Dec_Inst_t *iLBCdec_inst
- /* (i/o) decoder instance */
- );
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/enhancer.h b/branches/1.0/thirdparties/android/include/ilbc/enhancer.h
deleted file mode 100644
index 3632e72..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/enhancer.h
+++ /dev/null
@@ -1,36 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- enhancer.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
-
-
-
-
-
- ******************************************************************/
-
- #ifndef __ENHANCER_H
- #define __ENHANCER_H
-
- #include "iLBC_define.h"
-
- float xCorrCoef(
- float *target, /* (i) first array */
- float *regressor, /* (i) second array */
- int subl /* (i) dimension arrays */
- );
-
- int enhancerInterface(
- float *out, /* (o) the enhanced recidual signal */
- float *in, /* (i) the recidual signal to enhance */
- iLBC_Dec_Inst_t *iLBCdec_inst
- /* (i/o) the decoder state structure */
- );
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/filter.h b/branches/1.0/thirdparties/android/include/ilbc/filter.h
deleted file mode 100644
index c49ddff..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/filter.h
+++ /dev/null
@@ -1,81 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- filter.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
-
-
-
-
-
-
- #ifndef __iLBC_FILTER_H
- #define __iLBC_FILTER_H
-
- void AllPoleFilter(
- float *InOut, /* (i/o) on entrance InOut[-orderCoef] to
- InOut[-1] contain the state of the
- filter (delayed samples). InOut[0] to
- InOut[lengthInOut-1] contain the filter
- input, on en exit InOut[-orderCoef] to
- InOut[-1] is unchanged and InOut[0] to
- InOut[lengthInOut-1] contain filtered
- samples */
- float *Coef,/* (i) filter coefficients, Coef[0] is assumed
- to be 1.0 */
- int lengthInOut,/* (i) number of input/output samples */
- int orderCoef /* (i) number of filter coefficients */
- );
-
- void AllZeroFilter(
- float *In, /* (i) In[0] to In[lengthInOut-1] contain
- filter input samples */
- float *Coef,/* (i) filter coefficients (Coef[0] is assumed
- to be 1.0) */
- int lengthInOut,/* (i) number of input/output samples */
- int orderCoef, /* (i) number of filter coefficients */
- float *Out /* (i/o) on entrance Out[-orderCoef] to Out[-1]
- contain the filter state, on exit Out[0]
- to Out[lengthInOut-1] contain filtered
- samples */
- );
-
- void ZeroPoleFilter(
- float *In, /* (i) In[0] to In[lengthInOut-1] contain filter
- input samples In[-orderCoef] to In[-1]
- contain state of all-zero section */
- float *ZeroCoef,/* (i) filter coefficients for all-zero
- section (ZeroCoef[0] is assumed to
- be 1.0) */
- float *PoleCoef,/* (i) filter coefficients for all-pole section
- (ZeroCoef[0] is assumed to be 1.0) */
- int lengthInOut,/* (i) number of input/output samples */
- int orderCoef, /* (i) number of filter coefficients */
- float *Out /* (i/o) on entrance Out[-orderCoef] to Out[-1]
- contain state of all-pole section. On
- exit Out[0] to Out[lengthInOut-1]
- contain filtered samples */
- );
-
-
-
-
-
-
-
- void DownSample (
- float *In, /* (i) input samples */
- float *Coef, /* (i) filter coefficients */
- int lengthIn, /* (i) number of input samples */
- float *state, /* (i) filter state */
- float *Out /* (o) downsampled output */
- );
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/gainquant.h b/branches/1.0/thirdparties/android/include/ilbc/gainquant.h
deleted file mode 100644
index 5abe60a..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/gainquant.h
+++ /dev/null
@@ -1,29 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- gainquant.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __iLBC_GAINQUANT_H
- #define __iLBC_GAINQUANT_H
-
- float gainquant(/* (o) quantized gain value */
- float in, /* (i) gain value */
- float maxIn,/* (i) maximum of gain value */
- int cblen, /* (i) number of quantization indices */
- int *index /* (o) quantization index */
- );
-
- float gaindequant( /* (o) quantized gain value */
- int index, /* (i) quantization index */
- float maxIn,/* (i) maximum of unquantized gain */
- int cblen /* (i) number of quantization indices */
- );
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/getCBvec.h b/branches/1.0/thirdparties/android/include/ilbc/getCBvec.h
deleted file mode 100644
index a92eb46..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/getCBvec.h
+++ /dev/null
@@ -1,24 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- getCBvec.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __iLBC_GETCBVEC_H
- #define __iLBC_GETCBVEC_H
-
- void getCBvec(
- float *cbvec, /* (o) Constructed codebook vector */
- float *mem, /* (i) Codebook buffer */
- int index, /* (i) Codebook index */
- int lMem, /* (i) Length of codebook buffer */
- int cbveclen/* (i) Codebook vector length */
- );
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/helpfun.h b/branches/1.0/thirdparties/android/include/ilbc/helpfun.h
deleted file mode 100644
index 16b7a2f..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/helpfun.h
+++ /dev/null
@@ -1,107 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- helpfun.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __iLBC_HELPFUN_H
- #define __iLBC_HELPFUN_H
-
- void autocorr(
- float *r, /* (o) autocorrelation vector */
- const float *x, /* (i) data vector */
- int N, /* (i) length of data vector */
- int order /* largest lag for calculated
- autocorrelations */
- );
-
- void window(
- float *z, /* (o) the windowed data */
- const float *x, /* (i) the original data vector */
- const float *y, /* (i) the window */
- int N /* (i) length of all vectors */
- );
-
- void levdurb(
- float *a, /* (o) lpc coefficient vector starting
- with 1.0 */
- float *k, /* (o) reflection coefficients */
- float *r, /* (i) autocorrelation vector */
- int order /* (i) order of lpc filter */
- );
-
- void interpolate(
-
-
-
-
-
-
- float *out, /* (o) the interpolated vector */
- float *in1, /* (i) the first vector for the
- interpolation */
- float *in2, /* (i) the second vector for the
- interpolation */
- float coef, /* (i) interpolation weights */
- int length /* (i) length of all vectors */
- );
-
- void bwexpand(
- float *out, /* (o) the bandwidth expanded lpc
- coefficients */
- float *in, /* (i) the lpc coefficients before bandwidth
- expansion */
- float coef, /* (i) the bandwidth expansion factor */
- int length /* (i) the length of lpc coefficient vectors */
- );
-
- void vq(
- float *Xq, /* (o) the quantized vector */
- int *index, /* (o) the quantization index */
- const float *CB,/* (i) the vector quantization codebook */
- float *X, /* (i) the vector to quantize */
- int n_cb, /* (i) the number of vectors in the codebook */
- int dim /* (i) the dimension of all vectors */
- );
-
- void SplitVQ(
- float *qX, /* (o) the quantized vector */
- int *index, /* (o) a vector of indexes for all vector
- codebooks in the split */
- float *X, /* (i) the vector to quantize */
- const float *CB,/* (i) the quantizer codebook */
- int nsplit, /* the number of vector splits */
- const int *dim, /* the dimension of X and qX */
- const int *cbsize /* the number of vectors in the codebook */
- );
-
-
- void sort_sq(
- float *xq, /* (o) the quantized value */
- int *index, /* (o) the quantization index */
- float x, /* (i) the value to quantize */
- const float *cb,/* (i) the quantization codebook */
- int cb_size /* (i) the size of the quantization codebook */
- );
-
- int LSF_check( /* (o) 1 for stable lsf vectors and 0 for
-
-
-
-
-
-
- nonstable ones */
- float *lsf, /* (i) a table of lsf vectors */
- int dim, /* (i) the dimension of each lsf vector */
- int NoAn /* (i) the number of lsf vectors in the
- table */
- );
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/hpInput.h b/branches/1.0/thirdparties/android/include/ilbc/hpInput.h
deleted file mode 100644
index 0ba5c1e..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/hpInput.h
+++ /dev/null
@@ -1,23 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- hpInput.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __iLBC_HPINPUT_H
- #define __iLBC_HPINPUT_H
-
- void hpInput(
- float *In, /* (i) vector to filter */
- int len, /* (i) length of vector to filter */
- float *Out, /* (o) the resulting filtered vector */
- float *mem /* (i/o) the filter state */
- );
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/hpOutput.h b/branches/1.0/thirdparties/android/include/ilbc/hpOutput.h
deleted file mode 100644
index 63c18e9..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/hpOutput.h
+++ /dev/null
@@ -1,23 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- hpOutput.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __iLBC_HPOUTPUT_H
- #define __iLBC_HPOUTPUT_H
-
- void hpOutput(
- float *In, /* (i) vector to filter */
- int len,/* (i) length of vector to filter */
- float *Out, /* (o) the resulting filtered vector */
- float *mem /* (i/o) the filter state */
- );
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/iCBConstruct.h b/branches/1.0/thirdparties/android/include/ilbc/iCBConstruct.h
deleted file mode 100644
index ac5dfa9..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/iCBConstruct.h
+++ /dev/null
@@ -1,40 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- iCBConstruct.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
-
-
-
-
-
-
- ******************************************************************/
-
- #ifndef __iLBC_ICBCONSTRUCT_H
- #define __iLBC_ICBCONSTRUCT_H
-
- void index_conv_enc(
- int *index /* (i/o) Codebook indexes */
- );
-
- void index_conv_dec(
- int *index /* (i/o) Codebook indexes */
- );
-
- void iCBConstruct(
- float *decvector, /* (o) Decoded vector */
- int *index, /* (i) Codebook indices */
- int *gain_index,/* (i) Gain quantization indices */
- float *mem, /* (i) Buffer for codevector construction */
- int lMem, /* (i) Length of buffer */
- int veclen, /* (i) Length of vector */
- int nStages /* (i) Number of codebook stages */
- );
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/iCBSearch.h b/branches/1.0/thirdparties/android/include/ilbc/iCBSearch.h
deleted file mode 100644
index 1c78689..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/iCBSearch.h
+++ /dev/null
@@ -1,37 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- iCBSearch.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __iLBC_ICBSEARCH_H
- #define __iLBC_ICBSEARCH_H
-
-
-
-
-
-
-
- void iCBSearch(
- iLBC_Enc_Inst_t *iLBCenc_inst,
- /* (i) the encoder state structure */
- int *index, /* (o) Codebook indices */
- int *gain_index,/* (o) Gain quantization indices */
- float *intarget,/* (i) Target vector for encoding */
- float *mem, /* (i) Buffer for codebook construction */
- int lMem, /* (i) Length of buffer */
- int lTarget, /* (i) Length of vector */
- int nStages, /* (i) Number of codebook stages */
- float *weightDenum, /* (i) weighting filter coefficients */
- float *weightState, /* (i) weighting filter state */
- int block /* (i) the sub-block number */
- );
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/iLBC_decode.h b/branches/1.0/thirdparties/android/include/ilbc/iLBC_decode.h
deleted file mode 100644
index 3626199..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/iLBC_decode.h
+++ /dev/null
@@ -1,42 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- iLBC_decode.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __iLBC_ILBCDECODE_H
- #define __iLBC_ILBCDECODE_H
-
- #include "iLBC_define.h"
-
- short initDecode( /* (o) Number of decoded
- samples */
- iLBC_Dec_Inst_t *iLBCdec_inst, /* (i/o) Decoder instance */
- int mode, /* (i) frame size mode */
- int use_enhancer /* (i) 1 to use enhancer
- 0 to run without
- enhancer */
- );
-
- void iLBC_decode(
- float *decblock, /* (o) decoded signal block */
- unsigned char *bytes, /* (i) encoded signal bits */
- iLBC_Dec_Inst_t *iLBCdec_inst, /* (i/o) the decoder state
- structure */
- int mode /* (i) 0: bad packet, PLC,
- 1: normal */
-
-
-
-
-
-
- );
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/iLBC_define.h b/branches/1.0/thirdparties/android/include/ilbc/iLBC_define.h
deleted file mode 100644
index f6a863d..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/iLBC_define.h
+++ /dev/null
@@ -1,220 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- iLBC_define.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
- #include <string.h>
-
- #ifndef __iLBC_ILBCDEFINE_H
- #define __iLBC_ILBCDEFINE_H
-
- /* general codec settings */
-
- #define FS (float)8000.0
- #define BLOCKL_20MS 160
- #define BLOCKL_30MS 240
- #define BLOCKL_MAX 240
- #define NSUB_20MS 4
- #define NSUB_30MS 6
- #define NSUB_MAX 6
- #define NASUB_20MS 2
-
-
-
-
-
-
- #define NASUB_30MS 4
- #define NASUB_MAX 4
- #define SUBL 40
- #define STATE_LEN 80
- #define STATE_SHORT_LEN_30MS 58
- #define STATE_SHORT_LEN_20MS 57
-
- /* LPC settings */
-
- #define LPC_FILTERORDER 10
- #define LPC_CHIRP_SYNTDENUM (float)0.9025
- #define LPC_CHIRP_WEIGHTDENUM (float)0.4222
- #define LPC_LOOKBACK 60
- #define LPC_N_20MS 1
- #define LPC_N_30MS 2
- #define LPC_N_MAX 2
- #define LPC_ASYMDIFF 20
- #define LPC_BW (float)60.0
- #define LPC_WN (float)1.0001
- #define LSF_NSPLIT 3
- #define LSF_NUMBER_OF_STEPS 4
- #define LPC_HALFORDER (LPC_FILTERORDER/2)
-
- /* cb settings */
-
- #define CB_NSTAGES 3
- #define CB_EXPAND 2
- #define CB_MEML 147
- #define CB_FILTERLEN 2*4
- #define CB_HALFFILTERLEN 4
- #define CB_RESRANGE 34
- #define CB_MAXGAIN (float)1.3
-
- /* enhancer */
-
- #define ENH_BLOCKL 80 /* block length */
- #define ENH_BLOCKL_HALF (ENH_BLOCKL/2)
- #define ENH_HL 3 /* 2*ENH_HL+1 is number blocks
- in said second sequence */
- #define ENH_SLOP 2 /* max difference estimated and
- correct pitch period */
- #define ENH_PLOCSL 20 /* pitch-estimates and pitch-
- locations buffer length */
- #define ENH_OVERHANG 2
- #define ENH_UPS0 4 /* upsampling rate */
- #define ENH_FL0 3 /* 2*FLO+1 is the length of
- each filter */
- #define ENH_VECTL (ENH_BLOCKL+2*ENH_FL0)
-
-
-
-
-
-
- #define ENH_CORRDIM (2*ENH_SLOP+1)
- #define ENH_NBLOCKS (BLOCKL_MAX/ENH_BLOCKL)
- #define ENH_NBLOCKS_EXTRA 5
- #define ENH_NBLOCKS_TOT 8 /* ENH_NBLOCKS +
- ENH_NBLOCKS_EXTRA */
- #define ENH_BUFL (ENH_NBLOCKS_TOT)*ENH_BLOCKL
- #define ENH_ALPHA0 (float)0.05
-
- /* Down sampling */
-
- #define FILTERORDER_DS 7
- #define DELAY_DS 3
- #define FACTOR_DS 2
-
- /* bit stream defs */
-
- #define NO_OF_BYTES_20MS 38
- #define NO_OF_BYTES_30MS 50
- #define NO_OF_WORDS_20MS 19
- #define NO_OF_WORDS_30MS 25
- #define STATE_BITS 3
- #define BYTE_LEN 8
- #define ULP_CLASSES 3
-
- /* help parameters */
-
- #define FLOAT_MAX (float)1.0e37
- #define EPS (float)2.220446049250313e-016
- #define PI (float)3.14159265358979323846
- #define MIN_SAMPLE -32768
- #define MAX_SAMPLE 32767
- #define TWO_PI (float)6.283185307
- #define PI2 (float)0.159154943
-
- /* type definition encoder instance */
- typedef struct iLBC_ULP_Inst_t_ {
- int lsf_bits[6][ULP_CLASSES+2];
- int start_bits[ULP_CLASSES+2];
- int startfirst_bits[ULP_CLASSES+2];
- int scale_bits[ULP_CLASSES+2];
- int state_bits[ULP_CLASSES+2];
- int extra_cb_index[CB_NSTAGES][ULP_CLASSES+2];
- int extra_cb_gain[CB_NSTAGES][ULP_CLASSES+2];
- int cb_index[NSUB_MAX][CB_NSTAGES][ULP_CLASSES+2];
- int cb_gain[NSUB_MAX][CB_NSTAGES][ULP_CLASSES+2];
- } iLBC_ULP_Inst_t;
-
- /* type definition encoder instance */
-
-
-
-
-
-
- typedef struct iLBC_Enc_Inst_t_ {
-
- /* flag for frame size mode */
- int mode;
-
- /* basic parameters for different frame sizes */
- int blockl;
- int nsub;
- int nasub;
- int no_of_bytes, no_of_words;
- int lpc_n;
- int state_short_len;
- const iLBC_ULP_Inst_t *ULP_inst;
-
- /* analysis filter state */
- float anaMem[LPC_FILTERORDER];
-
- /* old lsf parameters for interpolation */
- float lsfold[LPC_FILTERORDER];
- float lsfdeqold[LPC_FILTERORDER];
-
- /* signal buffer for LP analysis */
- float lpc_buffer[LPC_LOOKBACK + BLOCKL_MAX];
-
- /* state of input HP filter */
- float hpimem[4];
-
- } iLBC_Enc_Inst_t;
-
- /* type definition decoder instance */
- typedef struct iLBC_Dec_Inst_t_ {
-
- /* flag for frame size mode */
- int mode;
-
- /* basic parameters for different frame sizes */
- int blockl;
- int nsub;
- int nasub;
- int no_of_bytes, no_of_words;
- int lpc_n;
- int state_short_len;
- const iLBC_ULP_Inst_t *ULP_inst;
-
- /* synthesis filter state */
- float syntMem[LPC_FILTERORDER];
-
- /* old LSF for interpolation */
-
-
-
-
-
-
- float lsfdeqold[LPC_FILTERORDER];
-
- /* pitch lag estimated in enhancer and used in PLC */
- int last_lag;
-
- /* PLC state information */
- int prevLag, consPLICount, prevPLI, prev_enh_pl;
- float prevLpc[LPC_FILTERORDER+1];
- float prevResidual[NSUB_MAX*SUBL];
- float per;
- unsigned long seed;
-
- /* previous synthesis filter parameters */
- float old_syntdenum[(LPC_FILTERORDER + 1)*NSUB_MAX];
-
- /* state of output HP filter */
- float hpomem[4];
-
- /* enhancer state information */
- int use_enhancer;
- float enh_buf[ENH_BUFL];
- float enh_period[ENH_NBLOCKS_TOT];
-
- } iLBC_Dec_Inst_t;
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/iLBC_encode.h b/branches/1.0/thirdparties/android/include/ilbc/iLBC_encode.h
deleted file mode 100644
index b8bcd14..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/iLBC_encode.h
+++ /dev/null
@@ -1,39 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- iLBC_encode.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __iLBC_ILBCENCODE_H
- #define __iLBC_ILBCENCODE_H
-
- #include "iLBC_define.h"
-
- short initEncode( /* (o) Number of bytes
- encoded */
- iLBC_Enc_Inst_t *iLBCenc_inst, /* (i/o) Encoder instance */
- int mode /* (i) frame size mode */
- );
-
- void iLBC_encode(
-
- unsigned char *bytes, /* (o) encoded data bits iLBC */
- float *block, /* (o) speech vector to
- encode */
- iLBC_Enc_Inst_t *iLBCenc_inst /* (i/o) the general encoder
- state */
- );
-
- #endif
-
-
-
-
-
-
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/lsf.h b/branches/1.0/thirdparties/android/include/ilbc/lsf.h
deleted file mode 100644
index e220a7b..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/lsf.h
+++ /dev/null
@@ -1,26 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- lsf.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __iLBC_LSF_H
- #define __iLBC_LSF_H
-
- void a2lsf(
- float *freq,/* (o) lsf coefficients */
- float *a /* (i) lpc coefficients */
- );
-
- void lsf2a(
- float *a_coef, /* (o) lpc coefficients */
- float *freq /* (i) lsf coefficients */
- );
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/packing.h b/branches/1.0/thirdparties/android/include/ilbc/packing.h
deleted file mode 100644
index 6472376..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/packing.h
+++ /dev/null
@@ -1,68 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- packing.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __PACKING_H
- #define __PACKING_H
-
- void packsplit(
- int *index, /* (i) the value to split */
- int *firstpart, /* (o) the value specified by most
- significant bits */
- int *rest, /* (o) the value specified by least
- significant bits */
- int bitno_firstpart, /* (i) number of bits in most
- significant part */
- int bitno_total /* (i) number of bits in full range
- of value */
- );
-
- void packcombine(
- int *index, /* (i/o) the msb value in the
- combined value out */
- int rest, /* (i) the lsb value */
- int bitno_rest /* (i) the number of bits in the
- lsb part */
- );
-
- void dopack(
- unsigned char **bitstream, /* (i/o) on entrance pointer to
- place in bitstream to pack
- new data, on exit pointer
- to place in bitstream to
- pack future data */
- int index, /* (i) the value to pack */
- int bitno, /* (i) the number of bits that the
- value will fit within */
- int *pos /* (i/o) write position in the
- current byte */
- );
-
-
-
-
-
-
- void unpack(
- unsigned char **bitstream, /* (i/o) on entrance pointer to
- place in bitstream to
- unpack new data from, on
- exit pointer to place in
- bitstream to unpack future
- data from */
- int *index, /* (o) resulting value */
- int bitno, /* (i) number of bits used to
- represent the value */
- int *pos /* (i/o) read position in the
- current byte */
- );
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/ilbc/syntFilter.h b/branches/1.0/thirdparties/android/include/ilbc/syntFilter.h
deleted file mode 100644
index 7b4a9f0..0000000
--- a/branches/1.0/thirdparties/android/include/ilbc/syntFilter.h
+++ /dev/null
@@ -1,23 +0,0 @@
- /******************************************************************
-
- iLBC Speech Coder ANSI-C Source Code
-
- syntFilter.h
-
- Copyright (C) The Internet Society (2004).
- All Rights Reserved.
-
- ******************************************************************/
-
- #ifndef __iLBC_SYNTFILTER_H
- #define __iLBC_SYNTFILTER_H
-
- void syntFilter(
- float *Out, /* (i/o) Signal to be filtered */
- float *a, /* (i) LP parameters */
- int len, /* (i) Length of signal */
- float *mem /* (i/o) Filter state */
- );
-
- #endif
-
diff --git a/branches/1.0/thirdparties/android/include/libavcodec/avcodec.h b/branches/1.0/thirdparties/android/include/libavcodec/avcodec.h
deleted file mode 100644
index 0c3774b..0000000
--- a/branches/1.0/thirdparties/android/include/libavcodec/avcodec.h
+++ /dev/null
@@ -1,4045 +0,0 @@
-/*
- * copyright (c) 2001 Fabrice Bellard
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVCODEC_AVCODEC_H
-#define AVCODEC_AVCODEC_H
-
-/**
- * @file
- * external API header
- */
-
-#include <errno.h>
-#include "libavutil/avutil.h"
-
-#define LIBAVCODEC_VERSION_MAJOR 52
-#define LIBAVCODEC_VERSION_MINOR 84
-#define LIBAVCODEC_VERSION_MICRO 2
-
-#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
- LIBAVCODEC_VERSION_MINOR, \
- LIBAVCODEC_VERSION_MICRO)
-#define LIBAVCODEC_VERSION AV_VERSION(LIBAVCODEC_VERSION_MAJOR, \
- LIBAVCODEC_VERSION_MINOR, \
- LIBAVCODEC_VERSION_MICRO)
-#define LIBAVCODEC_BUILD LIBAVCODEC_VERSION_INT
-
-#define LIBAVCODEC_IDENT "Lavc" AV_STRINGIFY(LIBAVCODEC_VERSION)
-
-#define AV_NOPTS_VALUE INT64_C(0x8000000000000000)
-#define AV_TIME_BASE 1000000
-#define AV_TIME_BASE_Q (AVRational){1, AV_TIME_BASE}
-
-/**
- * Identify the syntax and semantics of the bitstream.
- * The principle is roughly:
- * Two decoders with the same ID can decode the same streams.
- * Two encoders with the same ID can encode compatible streams.
- * There may be slight deviations from the principle due to implementation
- * details.
- *
- * If you add a codec ID to this list, add it so that
- * 1. no value of a existing codec ID changes (that would break ABI),
- * 2. it is as close as possible to similar codecs.
- */
-enum CodecID {
- CODEC_ID_NONE,
-
- /* video codecs */
- CODEC_ID_MPEG1VIDEO,
- CODEC_ID_MPEG2VIDEO, ///< preferred ID for MPEG-1/2 video decoding
- CODEC_ID_MPEG2VIDEO_XVMC,
- CODEC_ID_H261,
- CODEC_ID_H263,
- CODEC_ID_RV10,
- CODEC_ID_RV20,
- CODEC_ID_MJPEG,
- CODEC_ID_MJPEGB,
- CODEC_ID_LJPEG,
- CODEC_ID_SP5X,
- CODEC_ID_JPEGLS,
- CODEC_ID_MPEG4,
- CODEC_ID_RAWVIDEO,
- CODEC_ID_MSMPEG4V1,
- CODEC_ID_MSMPEG4V2,
- CODEC_ID_MSMPEG4V3,
- CODEC_ID_WMV1,
- CODEC_ID_WMV2,
- CODEC_ID_H263P,
- CODEC_ID_H263I,
- CODEC_ID_FLV1,
- CODEC_ID_SVQ1,
- CODEC_ID_SVQ3,
- CODEC_ID_DVVIDEO,
- CODEC_ID_HUFFYUV,
- CODEC_ID_CYUV,
- CODEC_ID_H264,
- CODEC_ID_INDEO3,
- CODEC_ID_VP3,
- CODEC_ID_THEORA,
- CODEC_ID_ASV1,
- CODEC_ID_ASV2,
- CODEC_ID_FFV1,
- CODEC_ID_4XM,
- CODEC_ID_VCR1,
- CODEC_ID_CLJR,
- CODEC_ID_MDEC,
- CODEC_ID_ROQ,
- CODEC_ID_INTERPLAY_VIDEO,
- CODEC_ID_XAN_WC3,
- CODEC_ID_XAN_WC4,
- CODEC_ID_RPZA,
- CODEC_ID_CINEPAK,
- CODEC_ID_WS_VQA,
- CODEC_ID_MSRLE,
- CODEC_ID_MSVIDEO1,
- CODEC_ID_IDCIN,
- CODEC_ID_8BPS,
- CODEC_ID_SMC,
- CODEC_ID_FLIC,
- CODEC_ID_TRUEMOTION1,
- CODEC_ID_VMDVIDEO,
- CODEC_ID_MSZH,
- CODEC_ID_ZLIB,
- CODEC_ID_QTRLE,
- CODEC_ID_SNOW,
- CODEC_ID_TSCC,
- CODEC_ID_ULTI,
- CODEC_ID_QDRAW,
- CODEC_ID_VIXL,
- CODEC_ID_QPEG,
-#if LIBAVCODEC_VERSION_MAJOR < 53
- CODEC_ID_XVID,
-#endif
- CODEC_ID_PNG,
- CODEC_ID_PPM,
- CODEC_ID_PBM,
- CODEC_ID_PGM,
- CODEC_ID_PGMYUV,
- CODEC_ID_PAM,
- CODEC_ID_FFVHUFF,
- CODEC_ID_RV30,
- CODEC_ID_RV40,
- CODEC_ID_VC1,
- CODEC_ID_WMV3,
- CODEC_ID_LOCO,
- CODEC_ID_WNV1,
- CODEC_ID_AASC,
- CODEC_ID_INDEO2,
- CODEC_ID_FRAPS,
- CODEC_ID_TRUEMOTION2,
- CODEC_ID_BMP,
- CODEC_ID_CSCD,
- CODEC_ID_MMVIDEO,
- CODEC_ID_ZMBV,
- CODEC_ID_AVS,
- CODEC_ID_SMACKVIDEO,
- CODEC_ID_NUV,
- CODEC_ID_KMVC,
- CODEC_ID_FLASHSV,
- CODEC_ID_CAVS,
- CODEC_ID_JPEG2000,
- CODEC_ID_VMNC,
- CODEC_ID_VP5,
- CODEC_ID_VP6,
- CODEC_ID_VP6F,
- CODEC_ID_TARGA,
- CODEC_ID_DSICINVIDEO,
- CODEC_ID_TIERTEXSEQVIDEO,
- CODEC_ID_TIFF,
- CODEC_ID_GIF,
- CODEC_ID_FFH264,
- CODEC_ID_DXA,
- CODEC_ID_DNXHD,
- CODEC_ID_THP,
- CODEC_ID_SGI,
- CODEC_ID_C93,
- CODEC_ID_BETHSOFTVID,
- CODEC_ID_PTX,
- CODEC_ID_TXD,
- CODEC_ID_VP6A,
- CODEC_ID_AMV,
- CODEC_ID_VB,
- CODEC_ID_PCX,
- CODEC_ID_SUNRAST,
- CODEC_ID_INDEO4,
- CODEC_ID_INDEO5,
- CODEC_ID_MIMIC,
- CODEC_ID_RL2,
- CODEC_ID_8SVX_EXP,
- CODEC_ID_8SVX_FIB,
- CODEC_ID_ESCAPE124,
- CODEC_ID_DIRAC,
- CODEC_ID_BFI,
- CODEC_ID_CMV,
- CODEC_ID_MOTIONPIXELS,
- CODEC_ID_TGV,
- CODEC_ID_TGQ,
- CODEC_ID_TQI,
- CODEC_ID_AURA,
- CODEC_ID_AURA2,
- CODEC_ID_V210X,
- CODEC_ID_TMV,
- CODEC_ID_V210,
- CODEC_ID_DPX,
- CODEC_ID_MAD,
- CODEC_ID_FRWU,
- CODEC_ID_FLASHSV2,
- CODEC_ID_CDGRAPHICS,
- CODEC_ID_R210,
- CODEC_ID_ANM,
- CODEC_ID_BINKVIDEO,
- CODEC_ID_IFF_ILBM,
- CODEC_ID_IFF_BYTERUN1,
- CODEC_ID_KGV1,
- CODEC_ID_YOP,
- CODEC_ID_VP8,
- CODEC_ID_PICTOR,
- CODEC_ID_ANSI,
-
- /* various PCM "codecs" */
- CODEC_ID_PCM_S16LE= 0x10000,
- CODEC_ID_PCM_S16BE,
- CODEC_ID_PCM_U16LE,
- CODEC_ID_PCM_U16BE,
- CODEC_ID_PCM_S8,
- CODEC_ID_PCM_U8,
- CODEC_ID_PCM_MULAW,
- CODEC_ID_PCM_ALAW,
- CODEC_ID_PCM_S32LE,
- CODEC_ID_PCM_S32BE,
- CODEC_ID_PCM_U32LE,
- CODEC_ID_PCM_U32BE,
- CODEC_ID_PCM_S24LE,
- CODEC_ID_PCM_S24BE,
- CODEC_ID_PCM_U24LE,
- CODEC_ID_PCM_U24BE,
- CODEC_ID_PCM_S24DAUD,
- CODEC_ID_PCM_ZORK,
- CODEC_ID_PCM_S16LE_PLANAR,
- CODEC_ID_PCM_DVD,
- CODEC_ID_PCM_F32BE,
- CODEC_ID_PCM_F32LE,
- CODEC_ID_PCM_F64BE,
- CODEC_ID_PCM_F64LE,
- CODEC_ID_PCM_BLURAY,
-
- /* various ADPCM codecs */
- CODEC_ID_ADPCM_IMA_QT= 0x11000,
- CODEC_ID_ADPCM_IMA_WAV,
- CODEC_ID_ADPCM_IMA_DK3,
- CODEC_ID_ADPCM_IMA_DK4,
- CODEC_ID_ADPCM_IMA_WS,
- CODEC_ID_ADPCM_IMA_SMJPEG,
- CODEC_ID_ADPCM_MS,
- CODEC_ID_ADPCM_4XM,
- CODEC_ID_ADPCM_XA,
- CODEC_ID_ADPCM_ADX,
- CODEC_ID_ADPCM_EA,
- CODEC_ID_ADPCM_G726,
- CODEC_ID_ADPCM_CT,
- CODEC_ID_ADPCM_SWF,
- CODEC_ID_ADPCM_YAMAHA,
- CODEC_ID_ADPCM_SBPRO_4,
- CODEC_ID_ADPCM_SBPRO_3,
- CODEC_ID_ADPCM_SBPRO_2,
- CODEC_ID_ADPCM_THP,
- CODEC_ID_ADPCM_IMA_AMV,
- CODEC_ID_ADPCM_EA_R1,
- CODEC_ID_ADPCM_EA_R3,
- CODEC_ID_ADPCM_EA_R2,
- CODEC_ID_ADPCM_IMA_EA_SEAD,
- CODEC_ID_ADPCM_IMA_EA_EACS,
- CODEC_ID_ADPCM_EA_XAS,
- CODEC_ID_ADPCM_EA_MAXIS_XA,
- CODEC_ID_ADPCM_IMA_ISS,
-
- /* AMR */
- CODEC_ID_AMR_NB= 0x12000,
- CODEC_ID_AMR_WB,
-
- /* RealAudio codecs*/
- CODEC_ID_RA_144= 0x13000,
- CODEC_ID_RA_288,
-
- /* various DPCM codecs */
- CODEC_ID_ROQ_DPCM= 0x14000,
- CODEC_ID_INTERPLAY_DPCM,
- CODEC_ID_XAN_DPCM,
- CODEC_ID_SOL_DPCM,
-
- /* audio codecs */
- CODEC_ID_MP2= 0x15000,
- CODEC_ID_MP3, ///< preferred ID for decoding MPEG audio layer 1, 2 or 3
- CODEC_ID_AAC,
- CODEC_ID_AC3,
- CODEC_ID_DTS,
- CODEC_ID_VORBIS,
- CODEC_ID_DVAUDIO,
- CODEC_ID_WMAV1,
- CODEC_ID_WMAV2,
- CODEC_ID_MACE3,
- CODEC_ID_MACE6,
- CODEC_ID_VMDAUDIO,
- CODEC_ID_SONIC,
- CODEC_ID_SONIC_LS,
- CODEC_ID_FLAC,
- CODEC_ID_MP3ADU,
- CODEC_ID_MP3ON4,
- CODEC_ID_SHORTEN,
- CODEC_ID_ALAC,
- CODEC_ID_WESTWOOD_SND1,
- CODEC_ID_GSM, ///< as in Berlin toast format
- CODEC_ID_QDM2,
- CODEC_ID_COOK,
- CODEC_ID_TRUESPEECH,
- CODEC_ID_TTA,
- CODEC_ID_SMACKAUDIO,
- CODEC_ID_QCELP,
- CODEC_ID_WAVPACK,
- CODEC_ID_DSICINAUDIO,
- CODEC_ID_IMC,
- CODEC_ID_MUSEPACK7,
- CODEC_ID_MLP,
- CODEC_ID_GSM_MS, /* as found in WAV */
- CODEC_ID_ATRAC3,
- CODEC_ID_VOXWARE,
- CODEC_ID_APE,
- CODEC_ID_NELLYMOSER,
- CODEC_ID_MUSEPACK8,
- CODEC_ID_SPEEX,
- CODEC_ID_WMAVOICE,
- CODEC_ID_WMAPRO,
- CODEC_ID_WMALOSSLESS,
- CODEC_ID_ATRAC3P,
- CODEC_ID_EAC3,
- CODEC_ID_SIPR,
- CODEC_ID_MP1,
- CODEC_ID_TWINVQ,
- CODEC_ID_TRUEHD,
- CODEC_ID_MP4ALS,
- CODEC_ID_ATRAC1,
- CODEC_ID_BINKAUDIO_RDFT,
- CODEC_ID_BINKAUDIO_DCT,
-
- /* subtitle codecs */
- CODEC_ID_DVD_SUBTITLE= 0x17000,
- CODEC_ID_DVB_SUBTITLE,
- CODEC_ID_TEXT, ///< raw UTF-8 text
- CODEC_ID_XSUB,
- CODEC_ID_SSA,
- CODEC_ID_MOV_TEXT,
- CODEC_ID_HDMV_PGS_SUBTITLE,
- CODEC_ID_DVB_TELETEXT,
- CODEC_ID_SRT,
-
- /* other specific kind of codecs (generally used for attachments) */
- CODEC_ID_TTF= 0x18000,
-
- CODEC_ID_PROBE= 0x19000, ///< codec_id is not known (like CODEC_ID_NONE) but lavf should attempt to identify it
-
- CODEC_ID_MPEG2TS= 0x20000, /**< _FAKE_ codec to indicate a raw MPEG-2 TS
- * stream (only used by libavformat) */
-};
-
-#if LIBAVCODEC_VERSION_MAJOR < 53
-#define CodecType AVMediaType
-
-#define CODEC_TYPE_UNKNOWN AVMEDIA_TYPE_UNKNOWN
-#define CODEC_TYPE_VIDEO AVMEDIA_TYPE_VIDEO
-#define CODEC_TYPE_AUDIO AVMEDIA_TYPE_AUDIO
-#define CODEC_TYPE_DATA AVMEDIA_TYPE_DATA
-#define CODEC_TYPE_SUBTITLE AVMEDIA_TYPE_SUBTITLE
-#define CODEC_TYPE_ATTACHMENT AVMEDIA_TYPE_ATTACHMENT
-#define CODEC_TYPE_NB AVMEDIA_TYPE_NB
-#endif
-
-/**
- * all in native-endian format
- */
-enum SampleFormat {
- SAMPLE_FMT_NONE = -1,
- SAMPLE_FMT_U8, ///< unsigned 8 bits
- SAMPLE_FMT_S16, ///< signed 16 bits
- SAMPLE_FMT_S32, ///< signed 32 bits
- SAMPLE_FMT_FLT, ///< float
- SAMPLE_FMT_DBL, ///< double
- SAMPLE_FMT_NB ///< Number of sample formats. DO NOT USE if dynamically linking to libavcodec
-};
-
-/* Audio channel masks */
-#define CH_FRONT_LEFT 0x00000001
-#define CH_FRONT_RIGHT 0x00000002
-#define CH_FRONT_CENTER 0x00000004
-#define CH_LOW_FREQUENCY 0x00000008
-#define CH_BACK_LEFT 0x00000010
-#define CH_BACK_RIGHT 0x00000020
-#define CH_FRONT_LEFT_OF_CENTER 0x00000040
-#define CH_FRONT_RIGHT_OF_CENTER 0x00000080
-#define CH_BACK_CENTER 0x00000100
-#define CH_SIDE_LEFT 0x00000200
-#define CH_SIDE_RIGHT 0x00000400
-#define CH_TOP_CENTER 0x00000800
-#define CH_TOP_FRONT_LEFT 0x00001000
-#define CH_TOP_FRONT_CENTER 0x00002000
-#define CH_TOP_FRONT_RIGHT 0x00004000
-#define CH_TOP_BACK_LEFT 0x00008000
-#define CH_TOP_BACK_CENTER 0x00010000
-#define CH_TOP_BACK_RIGHT 0x00020000
-#define CH_STEREO_LEFT 0x20000000 ///< Stereo downmix.
-#define CH_STEREO_RIGHT 0x40000000 ///< See CH_STEREO_LEFT.
-
-/** Channel mask value used for AVCodecContext.request_channel_layout
- to indicate that the user requests the channel order of the decoder output
- to be the native codec channel order. */
-#define CH_LAYOUT_NATIVE 0x8000000000000000LL
-
-/* Audio channel convenience macros */
-#define CH_LAYOUT_MONO (CH_FRONT_CENTER)
-#define CH_LAYOUT_STEREO (CH_FRONT_LEFT|CH_FRONT_RIGHT)
-#define CH_LAYOUT_2_1 (CH_LAYOUT_STEREO|CH_BACK_CENTER)
-#define CH_LAYOUT_SURROUND (CH_LAYOUT_STEREO|CH_FRONT_CENTER)
-#define CH_LAYOUT_4POINT0 (CH_LAYOUT_SURROUND|CH_BACK_CENTER)
-#define CH_LAYOUT_2_2 (CH_LAYOUT_STEREO|CH_SIDE_LEFT|CH_SIDE_RIGHT)
-#define CH_LAYOUT_QUAD (CH_LAYOUT_STEREO|CH_BACK_LEFT|CH_BACK_RIGHT)
-#define CH_LAYOUT_5POINT0 (CH_LAYOUT_SURROUND|CH_SIDE_LEFT|CH_SIDE_RIGHT)
-#define CH_LAYOUT_5POINT1 (CH_LAYOUT_5POINT0|CH_LOW_FREQUENCY)
-#define CH_LAYOUT_5POINT0_BACK (CH_LAYOUT_SURROUND|CH_BACK_LEFT|CH_BACK_RIGHT)
-#define CH_LAYOUT_5POINT1_BACK (CH_LAYOUT_5POINT0_BACK|CH_LOW_FREQUENCY)
-#define CH_LAYOUT_7POINT0 (CH_LAYOUT_5POINT0|CH_BACK_LEFT|CH_BACK_RIGHT)
-#define CH_LAYOUT_7POINT1 (CH_LAYOUT_5POINT1|CH_BACK_LEFT|CH_BACK_RIGHT)
-#define CH_LAYOUT_7POINT1_WIDE (CH_LAYOUT_5POINT1_BACK|\
- CH_FRONT_LEFT_OF_CENTER|CH_FRONT_RIGHT_OF_CENTER)
-#define CH_LAYOUT_STEREO_DOWNMIX (CH_STEREO_LEFT|CH_STEREO_RIGHT)
-
-/* in bytes */
-#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 // 1 second of 48khz 32bit audio
-
-/**
- * Required number of additionally allocated bytes at the end of the input bitstream for decoding.
- * This is mainly needed because some optimized bitstream readers read
- * 32 or 64 bit at once and could read over the end.<br>
- * Note: If the first 23 bits of the additional bytes are not 0, then damaged
- * MPEG bitstreams could cause overread and segfault.
- */
-#define FF_INPUT_BUFFER_PADDING_SIZE 8
-
-/**
- * minimum encoding buffer size
- * Used to avoid some checks during header writing.
- */
-#define FF_MIN_BUFFER_SIZE 16384
-
-
-/**
- * motion estimation type.
- */
-enum Motion_Est_ID {
- ME_ZERO = 1, ///< no search, that is use 0,0 vector whenever one is needed
- ME_FULL,
- ME_LOG,
- ME_PHODS,
- ME_EPZS, ///< enhanced predictive zonal search
- ME_X1, ///< reserved for experiments
- ME_HEX, ///< hexagon based search
- ME_UMH, ///< uneven multi-hexagon search
- ME_ITER, ///< iterative search
- ME_TESA, ///< transformed exhaustive search algorithm
-};
-
-enum AVDiscard{
- /* We leave some space between them for extensions (drop some
- * keyframes for intra-only or drop just some bidir frames). */
- AVDISCARD_NONE =-16, ///< discard nothing
- AVDISCARD_DEFAULT= 0, ///< discard useless packets like 0 size packets in avi
- AVDISCARD_NONREF = 8, ///< discard all non reference
- AVDISCARD_BIDIR = 16, ///< discard all bidirectional frames
- AVDISCARD_NONKEY = 32, ///< discard all frames except keyframes
- AVDISCARD_ALL = 48, ///< discard all
-};
-
-enum AVColorPrimaries{
- AVCOL_PRI_BT709 =1, ///< also ITU-R BT1361 / IEC 61966-2-4 / SMPTE RP177 Annex B
- AVCOL_PRI_UNSPECIFIED=2,
- AVCOL_PRI_BT470M =4,
- AVCOL_PRI_BT470BG =5, ///< also ITU-R BT601-6 625 / ITU-R BT1358 625 / ITU-R BT1700 625 PAL & SECAM
- AVCOL_PRI_SMPTE170M =6, ///< also ITU-R BT601-6 525 / ITU-R BT1358 525 / ITU-R BT1700 NTSC
- AVCOL_PRI_SMPTE240M =7, ///< functionally identical to above
- AVCOL_PRI_FILM =8,
- AVCOL_PRI_NB , ///< Not part of ABI
-};
-
-enum AVColorTransferCharacteristic{
- AVCOL_TRC_BT709 =1, ///< also ITU-R BT1361
- AVCOL_TRC_UNSPECIFIED=2,
- AVCOL_TRC_GAMMA22 =4, ///< also ITU-R BT470M / ITU-R BT1700 625 PAL & SECAM
- AVCOL_TRC_GAMMA28 =5, ///< also ITU-R BT470BG
- AVCOL_TRC_NB , ///< Not part of ABI
-};
-
-enum AVColorSpace{
- AVCOL_SPC_RGB =0,
- AVCOL_SPC_BT709 =1, ///< also ITU-R BT1361 / IEC 61966-2-4 xvYCC709 / SMPTE RP177 Annex B
- AVCOL_SPC_UNSPECIFIED=2,
- AVCOL_SPC_FCC =4,
- AVCOL_SPC_BT470BG =5, ///< also ITU-R BT601-6 625 / ITU-R BT1358 625 / ITU-R BT1700 625 PAL & SECAM / IEC 61966-2-4 xvYCC601
- AVCOL_SPC_SMPTE170M =6, ///< also ITU-R BT601-6 525 / ITU-R BT1358 525 / ITU-R BT1700 NTSC / functionally identical to above
- AVCOL_SPC_SMPTE240M =7,
- AVCOL_SPC_NB , ///< Not part of ABI
-};
-
-enum AVColorRange{
- AVCOL_RANGE_UNSPECIFIED=0,
- AVCOL_RANGE_MPEG =1, ///< the normal 219*2^(n-8) "MPEG" YUV ranges
- AVCOL_RANGE_JPEG =2, ///< the normal 2^n-1 "JPEG" YUV ranges
- AVCOL_RANGE_NB , ///< Not part of ABI
-};
-
-/**
- * X X 3 4 X X are luma samples,
- * 1 2 1-6 are possible chroma positions
- * X X 5 6 X 0 is undefined/unknown position
- */
-enum AVChromaLocation{
- AVCHROMA_LOC_UNSPECIFIED=0,
- AVCHROMA_LOC_LEFT =1, ///< mpeg2/4, h264 default
- AVCHROMA_LOC_CENTER =2, ///< mpeg1, jpeg, h263
- AVCHROMA_LOC_TOPLEFT =3, ///< DV
- AVCHROMA_LOC_TOP =4,
- AVCHROMA_LOC_BOTTOMLEFT =5,
- AVCHROMA_LOC_BOTTOM =6,
- AVCHROMA_LOC_NB , ///< Not part of ABI
-};
-
-/**
- * LPC analysis type
- */
-enum AVLPCType {
- AV_LPC_TYPE_DEFAULT = -1, ///< use the codec default LPC type
- AV_LPC_TYPE_NONE = 0, ///< do not use LPC prediction or use all zero coefficients
- AV_LPC_TYPE_FIXED = 1, ///< fixed LPC coefficients
- AV_LPC_TYPE_LEVINSON = 2, ///< Levinson-Durbin recursion
- AV_LPC_TYPE_CHOLESKY = 3, ///< Cholesky factorization
- AV_LPC_TYPE_NB , ///< Not part of ABI
-};
-
-typedef struct RcOverride{
- int start_frame;
- int end_frame;
- int qscale; // If this is 0 then quality_factor will be used instead.
- float quality_factor;
-} RcOverride;
-
-#define FF_MAX_B_FRAMES 16
-
-/* encoding support
- These flags can be passed in AVCodecContext.flags before initialization.
- Note: Not everything is supported yet.
-*/
-
-#define CODEC_FLAG_QSCALE 0x0002 ///< Use fixed qscale.
-#define CODEC_FLAG_4MV 0x0004 ///< 4 MV per MB allowed / advanced prediction for H.263.
-#define CODEC_FLAG_QPEL 0x0010 ///< Use qpel MC.
-#define CODEC_FLAG_GMC 0x0020 ///< Use GMC.
-#define CODEC_FLAG_MV0 0x0040 ///< Always try a MB with MV=<0,0>.
-#define CODEC_FLAG_PART 0x0080 ///< Use data partitioning.
-/**
- * The parent program guarantees that the input for B-frames containing
- * streams is not written to for at least s->max_b_frames+1 frames, if
- * this is not set the input will be copied.
- */
-#define CODEC_FLAG_INPUT_PRESERVED 0x0100
-#define CODEC_FLAG_PASS1 0x0200 ///< Use internal 2pass ratecontrol in first pass mode.
-#define CODEC_FLAG_PASS2 0x0400 ///< Use internal 2pass ratecontrol in second pass mode.
-#define CODEC_FLAG_EXTERN_HUFF 0x1000 ///< Use external Huffman table (for MJPEG).
-#define CODEC_FLAG_GRAY 0x2000 ///< Only decode/encode grayscale.
-#define CODEC_FLAG_EMU_EDGE 0x4000 ///< Don't draw edges.
-#define CODEC_FLAG_PSNR 0x8000 ///< error[?] variables will be set during encoding.
-#define CODEC_FLAG_TRUNCATED 0x00010000 /** Input bitstream might be truncated at a random
- location instead of only at frame boundaries. */
-#define CODEC_FLAG_NORMALIZE_AQP 0x00020000 ///< Normalize adaptive quantization.
-#define CODEC_FLAG_INTERLACED_DCT 0x00040000 ///< Use interlaced DCT.
-#define CODEC_FLAG_LOW_DELAY 0x00080000 ///< Force low delay.
-#define CODEC_FLAG_ALT_SCAN 0x00100000 ///< Use alternate scan.
-#define CODEC_FLAG_GLOBAL_HEADER 0x00400000 ///< Place global headers in extradata instead of every keyframe.
-#define CODEC_FLAG_BITEXACT 0x00800000 ///< Use only bitexact stuff (except (I)DCT).
-/* Fx : Flag for h263+ extra options */
-#define CODEC_FLAG_AC_PRED 0x01000000 ///< H.263 advanced intra coding / MPEG-4 AC prediction
-#define CODEC_FLAG_H263P_UMV 0x02000000 ///< unlimited motion vector
-#define CODEC_FLAG_CBP_RD 0x04000000 ///< Use rate distortion optimization for cbp.
-#define CODEC_FLAG_QP_RD 0x08000000 ///< Use rate distortion optimization for qp selectioon.
-#define CODEC_FLAG_H263P_AIV 0x00000008 ///< H.263 alternative inter VLC
-#define CODEC_FLAG_OBMC 0x00000001 ///< OBMC
-#define CODEC_FLAG_LOOP_FILTER 0x00000800 ///< loop filter
-#define CODEC_FLAG_H263P_SLICE_STRUCT 0x10000000
-#define CODEC_FLAG_INTERLACED_ME 0x20000000 ///< interlaced motion estimation
-#define CODEC_FLAG_SVCD_SCAN_OFFSET 0x40000000 ///< Will reserve space for SVCD scan offset user data.
-#define CODEC_FLAG_CLOSED_GOP 0x80000000
-#define CODEC_FLAG2_FAST 0x00000001 ///< Allow non spec compliant speedup tricks.
-#define CODEC_FLAG2_STRICT_GOP 0x00000002 ///< Strictly enforce GOP size.
-#define CODEC_FLAG2_NO_OUTPUT 0x00000004 ///< Skip bitstream encoding.
-#define CODEC_FLAG2_LOCAL_HEADER 0x00000008 ///< Place global headers at every keyframe instead of in extradata.
-#define CODEC_FLAG2_BPYRAMID 0x00000010 ///< H.264 allow B-frames to be used as references.
-#define CODEC_FLAG2_WPRED 0x00000020 ///< H.264 weighted biprediction for B-frames
-#define CODEC_FLAG2_MIXED_REFS 0x00000040 ///< H.264 one reference per partition, as opposed to one reference per macroblock
-#define CODEC_FLAG2_8X8DCT 0x00000080 ///< H.264 high profile 8x8 transform
-#define CODEC_FLAG2_FASTPSKIP 0x00000100 ///< H.264 fast pskip
-#define CODEC_FLAG2_AUD 0x00000200 ///< H.264 access unit delimiters
-#define CODEC_FLAG2_BRDO 0x00000400 ///< B-frame rate-distortion optimization
-#define CODEC_FLAG2_INTRA_VLC 0x00000800 ///< Use MPEG-2 intra VLC table.
-#define CODEC_FLAG2_MEMC_ONLY 0x00001000 ///< Only do ME/MC (I frames -> ref, P frame -> ME+MC).
-#define CODEC_FLAG2_DROP_FRAME_TIMECODE 0x00002000 ///< timecode is in drop frame format.
-#define CODEC_FLAG2_SKIP_RD 0x00004000 ///< RD optimal MB level residual skipping
-#define CODEC_FLAG2_CHUNKS 0x00008000 ///< Input bitstream might be truncated at a packet boundaries instead of only at frame boundaries.
-#define CODEC_FLAG2_NON_LINEAR_QUANT 0x00010000 ///< Use MPEG-2 nonlinear quantizer.
-#define CODEC_FLAG2_BIT_RESERVOIR 0x00020000 ///< Use a bit reservoir when encoding if possible
-#define CODEC_FLAG2_MBTREE 0x00040000 ///< Use macroblock tree ratecontrol (x264 only)
-#define CODEC_FLAG2_PSY 0x00080000 ///< Use psycho visual optimizations.
-#define CODEC_FLAG2_SSIM 0x00100000 ///< Compute SSIM during encoding, error[] values are undefined.
-#define CODEC_FLAG2_INTRA_REFRESH 0x00200000 ///< Use periodic insertion of intra blocks instead of keyframes.
-
-/* Unsupported options :
- * Syntax Arithmetic coding (SAC)
- * Reference Picture Selection
- * Independent Segment Decoding */
-/* /Fx */
-/* codec capabilities */
-
-#define CODEC_CAP_DRAW_HORIZ_BAND 0x0001 ///< Decoder can use draw_horiz_band callback.
-/**
- * Codec uses get_buffer() for allocating buffers and supports custom allocators.
- * If not set, it might not use get_buffer() at all or use operations that
- * assume the buffer was allocated by avcodec_default_get_buffer.
- */
-#define CODEC_CAP_DR1 0x0002
-/* If 'parse_only' field is true, then avcodec_parse_frame() can be used. */
-#define CODEC_CAP_PARSE_ONLY 0x0004
-#define CODEC_CAP_TRUNCATED 0x0008
-/* Codec can export data for HW decoding (XvMC). */
-#define CODEC_CAP_HWACCEL 0x0010
-/**
- * Codec has a nonzero delay and needs to be fed with NULL at the end to get the delayed data.
- * If this is not set, the codec is guaranteed to never be fed with NULL data.
- */
-#define CODEC_CAP_DELAY 0x0020
-/**
- * Codec can be fed a final frame with a smaller size.
- * This can be used to prevent truncation of the last audio samples.
- */
-#define CODEC_CAP_SMALL_LAST_FRAME 0x0040
-/**
- * Codec can export data for HW decoding (VDPAU).
- */
-#define CODEC_CAP_HWACCEL_VDPAU 0x0080
-/**
- * Codec can output multiple frames per AVPacket
- * Normally demuxers return one frame at a time, demuxers which do not do
- * are connected to a parser to split what they return into proper frames.
- * This flag is reserved to the very rare category of codecs which have a
- * bitstream that cannot be split into frames without timeconsuming
- * operations like full decoding. Demuxers carring such bitstreams thus
- * may return multiple frames in a packet. This has many disadvantages like
- * prohibiting stream copy in many cases thus it should only be considered
- * as a last resort.
- */
-#define CODEC_CAP_SUBFRAMES 0x0100
-/**
- * Codec is experimental and is thus avoided in favor of non experimental
- * encoders
- */
-#define CODEC_CAP_EXPERIMENTAL 0x0200
-
-//The following defines may change, don't expect compatibility if you use them.
-#define MB_TYPE_INTRA4x4 0x0001
-#define MB_TYPE_INTRA16x16 0x0002 //FIXME H.264-specific
-#define MB_TYPE_INTRA_PCM 0x0004 //FIXME H.264-specific
-#define MB_TYPE_16x16 0x0008
-#define MB_TYPE_16x8 0x0010
-#define MB_TYPE_8x16 0x0020
-#define MB_TYPE_8x8 0x0040
-#define MB_TYPE_INTERLACED 0x0080
-#define MB_TYPE_DIRECT2 0x0100 //FIXME
-#define MB_TYPE_ACPRED 0x0200
-#define MB_TYPE_GMC 0x0400
-#define MB_TYPE_SKIP 0x0800
-#define MB_TYPE_P0L0 0x1000
-#define MB_TYPE_P1L0 0x2000
-#define MB_TYPE_P0L1 0x4000
-#define MB_TYPE_P1L1 0x8000
-#define MB_TYPE_L0 (MB_TYPE_P0L0 | MB_TYPE_P1L0)
-#define MB_TYPE_L1 (MB_TYPE_P0L1 | MB_TYPE_P1L1)
-#define MB_TYPE_L0L1 (MB_TYPE_L0 | MB_TYPE_L1)
-#define MB_TYPE_QUANT 0x00010000
-#define MB_TYPE_CBP 0x00020000
-//Note bits 24-31 are reserved for codec specific use (h264 ref0, mpeg1 0mv, ...)
-
-/**
- * Pan Scan area.
- * This specifies the area which should be displayed.
- * Note there may be multiple such areas for one frame.
- */
-typedef struct AVPanScan{
- /**
- * id
- * - encoding: Set by user.
- * - decoding: Set by libavcodec.
- */
- int id;
-
- /**
- * width and height in 1/16 pel
- * - encoding: Set by user.
- * - decoding: Set by libavcodec.
- */
- int width;
- int height;
-
- /**
- * position of the top left corner in 1/16 pel for up to 3 fields/frames
- * - encoding: Set by user.
- * - decoding: Set by libavcodec.
- */
- int16_t position[3][2];
-}AVPanScan;
-
-#define FF_COMMON_FRAME \
- /**\
- * pointer to the picture planes.\
- * This might be different from the first allocated byte\
- * - encoding: \
- * - decoding: \
- */\
- uint8_t *data[4];\
- int linesize[4];\
- /**\
- * pointer to the first allocated byte of the picture. Can be used in get_buffer/release_buffer.\
- * This isn't used by libavcodec unless the default get/release_buffer() is used.\
- * - encoding: \
- * - decoding: \
- */\
- uint8_t *base[4];\
- /**\
- * 1 -> keyframe, 0-> not\
- * - encoding: Set by libavcodec.\
- * - decoding: Set by libavcodec.\
- */\
- int key_frame;\
-\
- /**\
- * Picture type of the frame, see ?_TYPE below.\
- * - encoding: Set by libavcodec. for coded_picture (and set by user for input).\
- * - decoding: Set by libavcodec.\
- */\
- int pict_type;\
-\
- /**\
- * presentation timestamp in time_base units (time when frame should be shown to user)\
- * If AV_NOPTS_VALUE then frame_rate = 1/time_base will be assumed.\
- * - encoding: MUST be set by user.\
- * - decoding: Set by libavcodec.\
- */\
- int64_t pts;\
-\
- /**\
- * picture number in bitstream order\
- * - encoding: set by\
- * - decoding: Set by libavcodec.\
- */\
- int coded_picture_number;\
- /**\
- * picture number in display order\
- * - encoding: set by\
- * - decoding: Set by libavcodec.\
- */\
- int display_picture_number;\
-\
- /**\
- * quality (between 1 (good) and FF_LAMBDA_MAX (bad)) \
- * - encoding: Set by libavcodec. for coded_picture (and set by user for input).\
- * - decoding: Set by libavcodec.\
- */\
- int quality; \
-\
- /**\
- * buffer age (1->was last buffer and dint change, 2->..., ...).\
- * Set to INT_MAX if the buffer has not been used yet.\
- * - encoding: unused\
- * - decoding: MUST be set by get_buffer().\
- */\
- int age;\
-\
- /**\
- * is this picture used as reference\
- * The values for this are the same as the MpegEncContext.picture_structure\
- * variable, that is 1->top field, 2->bottom field, 3->frame/both fields.\
- * Set to 4 for delayed, non-reference frames.\
- * - encoding: unused\
- * - decoding: Set by libavcodec. (before get_buffer() call)).\
- */\
- int reference;\
-\
- /**\
- * QP table\
- * - encoding: unused\
- * - decoding: Set by libavcodec.\
- */\
- int8_t *qscale_table;\
- /**\
- * QP store stride\
- * - encoding: unused\
- * - decoding: Set by libavcodec.\
- */\
- int qstride;\
-\
- /**\
- * mbskip_table[mb]>=1 if MB didn't change\
- * stride= mb_width = (width+15)>>4\
- * - encoding: unused\
- * - decoding: Set by libavcodec.\
- */\
- uint8_t *mbskip_table;\
-\
- /**\
- * motion vector table\
- * @code\
- * example:\
- * int mv_sample_log2= 4 - motion_subsample_log2;\
- * int mb_width= (width+15)>>4;\
- * int mv_stride= (mb_width << mv_sample_log2) + 1;\
- * motion_val[direction][x + y*mv_stride][0->mv_x, 1->mv_y];\
- * @endcode\
- * - encoding: Set by user.\
- * - decoding: Set by libavcodec.\
- */\
- int16_t (*motion_val[2])[2];\
-\
- /**\
- * macroblock type table\
- * mb_type_base + mb_width + 2\
- * - encoding: Set by user.\
- * - decoding: Set by libavcodec.\
- */\
- uint32_t *mb_type;\
-\
- /**\
- * log2 of the size of the block which a single vector in motion_val represents: \
- * (4->16x16, 3->8x8, 2-> 4x4, 1-> 2x2)\
- * - encoding: unused\
- * - decoding: Set by libavcodec.\
- */\
- uint8_t motion_subsample_log2;\
-\
- /**\
- * for some private data of the user\
- * - encoding: unused\
- * - decoding: Set by user.\
- */\
- void *opaque;\
-\
- /**\
- * error\
- * - encoding: Set by libavcodec. if flags&CODEC_FLAG_PSNR.\
- * - decoding: unused\
- */\
- uint64_t error[4];\
-\
- /**\
- * type of the buffer (to keep track of who has to deallocate data[*])\
- * - encoding: Set by the one who allocates it.\
- * - decoding: Set by the one who allocates it.\
- * Note: User allocated (direct rendering) & internal buffers cannot coexist currently.\
- */\
- int type;\
- \
- /**\
- * When decoding, this signals how much the picture must be delayed.\
- * extra_delay = repeat_pict / (2*fps)\
- * - encoding: unused\
- * - decoding: Set by libavcodec.\
- */\
- int repeat_pict;\
- \
- /**\
- * \
- */\
- int qscale_type;\
- \
- /**\
- * The content of the picture is interlaced.\
- * - encoding: Set by user.\
- * - decoding: Set by libavcodec. (default 0)\
- */\
- int interlaced_frame;\
- \
- /**\
- * If the content is interlaced, is top field displayed first.\
- * - encoding: Set by user.\
- * - decoding: Set by libavcodec.\
- */\
- int top_field_first;\
- \
- /**\
- * Pan scan.\
- * - encoding: Set by user.\
- * - decoding: Set by libavcodec.\
- */\
- AVPanScan *pan_scan;\
- \
- /**\
- * Tell user application that palette has changed from previous frame.\
- * - encoding: ??? (no palette-enabled encoder yet)\
- * - decoding: Set by libavcodec. (default 0).\
- */\
- int palette_has_changed;\
- \
- /**\
- * codec suggestion on buffer type if != 0\
- * - encoding: unused\
- * - decoding: Set by libavcodec. (before get_buffer() call)).\
- */\
- int buffer_hints;\
-\
- /**\
- * DCT coefficients\
- * - encoding: unused\
- * - decoding: Set by libavcodec.\
- */\
- short *dct_coeff;\
-\
- /**\
- * motion reference frame index\
- * the order in which these are stored can depend on the codec.\
- * - encoding: Set by user.\
- * - decoding: Set by libavcodec.\
- */\
- int8_t *ref_index[2];\
-\
- /**\
- * reordered opaque 64bit number (generally a PTS) from AVCodecContext.reordered_opaque\
- * output in AVFrame.reordered_opaque\
- * - encoding: unused\
- * - decoding: Read by user.\
- */\
- int64_t reordered_opaque;\
-\
- /**\
- * hardware accelerator private data (FFmpeg allocated)\
- * - encoding: unused\
- * - decoding: Set by libavcodec\
- */\
- void *hwaccel_picture_private;\
-
-
-#define FF_QSCALE_TYPE_MPEG1 0
-#define FF_QSCALE_TYPE_MPEG2 1
-#define FF_QSCALE_TYPE_H264 2
-#define FF_QSCALE_TYPE_VP56 3
-
-#define FF_BUFFER_TYPE_INTERNAL 1
-#define FF_BUFFER_TYPE_USER 2 ///< direct rendering buffers (image is (de)allocated by user)
-#define FF_BUFFER_TYPE_SHARED 4 ///< Buffer from somewhere else; don't deallocate image (data/base), all other tables are not shared.
-#define FF_BUFFER_TYPE_COPY 8 ///< Just a (modified) copy of some other buffer, don't deallocate anything.
-
-
-#define FF_I_TYPE 1 ///< Intra
-#define FF_P_TYPE 2 ///< Predicted
-#define FF_B_TYPE 3 ///< Bi-dir predicted
-#define FF_S_TYPE 4 ///< S(GMC)-VOP MPEG4
-#define FF_SI_TYPE 5 ///< Switching Intra
-#define FF_SP_TYPE 6 ///< Switching Predicted
-#define FF_BI_TYPE 7
-
-#define FF_BUFFER_HINTS_VALID 0x01 // Buffer hints value is meaningful (if 0 ignore).
-#define FF_BUFFER_HINTS_READABLE 0x02 // Codec will read from buffer.
-#define FF_BUFFER_HINTS_PRESERVE 0x04 // User must not alter buffer content.
-#define FF_BUFFER_HINTS_REUSABLE 0x08 // Codec will reuse the buffer (update).
-
-typedef struct AVPacket {
- /**
- * Presentation timestamp in AVStream->time_base units; the time at which
- * the decompressed packet will be presented to the user.
- * Can be AV_NOPTS_VALUE if it is not stored in the file.
- * pts MUST be larger or equal to dts as presentation cannot happen before
- * decompression, unless one wants to view hex dumps. Some formats misuse
- * the terms dts and pts/cts to mean something different. Such timestamps
- * must be converted to true pts/dts before they are stored in AVPacket.
- */
- int64_t pts;
- /**
- * Decompression timestamp in AVStream->time_base units; the time at which
- * the packet is decompressed.
- * Can be AV_NOPTS_VALUE if it is not stored in the file.
- */
- int64_t dts;
- uint8_t *data;
- int size;
- int stream_index;
- int flags;
- /**
- * Duration of this packet in AVStream->time_base units, 0 if unknown.
- * Equals next_pts - this_pts in presentation order.
- */
- int duration;
- void (*destruct)(struct AVPacket *);
- void *priv;
- int64_t pos; ///< byte position in stream, -1 if unknown
-
- /**
- * Time difference in AVStream->time_base units from the pts of this
- * packet to the point at which the output from the decoder has converged
- * independent from the availability of previous frames. That is, the
- * frames are virtually identical no matter if decoding started from
- * the very first frame or from this keyframe.
- * Is AV_NOPTS_VALUE if unknown.
- * This field is not the display duration of the current packet.
- * This field has no meaning if the packet does not have AV_PKT_FLAG_KEY
- * set.
- *
- * The purpose of this field is to allow seeking in streams that have no
- * keyframes in the conventional sense. It corresponds to the
- * recovery point SEI in H.264 and match_time_delta in NUT. It is also
- * essential for some types of subtitle streams to ensure that all
- * subtitles are correctly displayed after seeking.
- */
- int64_t convergence_duration;
-} AVPacket;
-#define AV_PKT_FLAG_KEY 0x0001
-#if LIBAVCODEC_VERSION_MAJOR < 53
-#define PKT_FLAG_KEY AV_PKT_FLAG_KEY
-#endif
-
-/**
- * Audio Video Frame.
- * New fields can be added to the end of FF_COMMON_FRAME with minor version
- * bumps.
- * Removal, reordering and changes to existing fields require a major
- * version bump. No fields should be added into AVFrame before or after
- * FF_COMMON_FRAME!
- * sizeof(AVFrame) must not be used outside libav*.
- */
-typedef struct AVFrame {
- FF_COMMON_FRAME
-} AVFrame;
-
-/**
- * main external API structure.
- * New fields can be added to the end with minor version bumps.
- * Removal, reordering and changes to existing fields require a major
- * version bump.
- * sizeof(AVCodecContext) must not be used outside libav*.
- */
-typedef struct AVCodecContext {
- /**
- * information on struct for av_log
- * - set by avcodec_alloc_context
- */
- const AVClass *av_class;
- /**
- * the average bitrate
- * - encoding: Set by user; unused for constant quantizer encoding.
- * - decoding: Set by libavcodec. 0 or some bitrate if this info is available in the stream.
- */
- int bit_rate;
-
- /**
- * number of bits the bitstream is allowed to diverge from the reference.
- * the reference can be CBR (for CBR pass1) or VBR (for pass2)
- * - encoding: Set by user; unused for constant quantizer encoding.
- * - decoding: unused
- */
- int bit_rate_tolerance;
-
- /**
- * CODEC_FLAG_*.
- * - encoding: Set by user.
- * - decoding: Set by user.
- */
- int flags;
-
- /**
- * Some codecs need additional format info. It is stored here.
- * If any muxer uses this then ALL demuxers/parsers AND encoders for the
- * specific codec MUST set it correctly otherwise stream copy breaks.
- * In general use of this field by muxers is not recommanded.
- * - encoding: Set by libavcodec.
- * - decoding: Set by libavcodec. (FIXME: Is this OK?)
- */
- int sub_id;
-
- /**
- * Motion estimation algorithm used for video coding.
- * 1 (zero), 2 (full), 3 (log), 4 (phods), 5 (epzs), 6 (x1), 7 (hex),
- * 8 (umh), 9 (iter), 10 (tesa) [7, 8, 10 are x264 specific, 9 is snow specific]
- * - encoding: MUST be set by user.
- * - decoding: unused
- */
- int me_method;
-
- /**
- * some codecs need / can use extradata like Huffman tables.
- * mjpeg: Huffman tables
- * rv10: additional flags
- * mpeg4: global headers (they can be in the bitstream or here)
- * The allocated memory should be FF_INPUT_BUFFER_PADDING_SIZE bytes larger
- * than extradata_size to avoid prolems if it is read with the bitstream reader.
- * The bytewise contents of extradata must not depend on the architecture or CPU endianness.
- * - encoding: Set/allocated/freed by libavcodec.
- * - decoding: Set/allocated/freed by user.
- */
- uint8_t *extradata;
- int extradata_size;
-
- /**
- * This is the fundamental unit of time (in seconds) in terms
- * of which frame timestamps are represented. For fixed-fps content,
- * timebase should be 1/framerate and timestamp increments should be
- * identically 1.
- * - encoding: MUST be set by user.
- * - decoding: Set by libavcodec.
- */
- AVRational time_base;
-
- /* video only */
- /**
- * picture width / height.
- * - encoding: MUST be set by user.
- * - decoding: Set by libavcodec.
- * Note: For compatibility it is possible to set this instead of
- * coded_width/height before decoding.
- */
- int width, height;
-
-#define FF_ASPECT_EXTENDED 15
-
- /**
- * the number of pictures in a group of pictures, or 0 for intra_only
- * - encoding: Set by user.
- * - decoding: unused
- */
- int gop_size;
-
- /**
- * Pixel format, see PIX_FMT_xxx.
- * May be set by the demuxer if known from headers.
- * May be overriden by the decoder if it knows better.
- * - encoding: Set by user.
- * - decoding: Set by user if known, overridden by libavcodec if known
- */
- enum PixelFormat pix_fmt;
-
- /**
- * Frame rate emulation. If not zero, the lower layer (i.e. format handler)
- * has to read frames at native frame rate.
- * - encoding: Set by user.
- * - decoding: unused
- */
- int rate_emu;
-
- /**
- * If non NULL, 'draw_horiz_band' is called by the libavcodec
- * decoder to draw a horizontal band. It improves cache usage. Not
- * all codecs can do that. You must check the codec capabilities
- * beforehand.
- * The function is also used by hardware acceleration APIs.
- * It is called at least once during frame decoding to pass
- * the data needed for hardware render.
- * In that mode instead of pixel data, AVFrame points to
- * a structure specific to the acceleration API. The application
- * reads the structure and can change some fields to indicate progress
- * or mark state.
- * - encoding: unused
- * - decoding: Set by user.
- * @param height the height of the slice
- * @param y the y position of the slice
- * @param type 1->top field, 2->bottom field, 3->frame
- * @param offset offset into the AVFrame.data from which the slice should be read
- */
- void (*draw_horiz_band)(struct AVCodecContext *s,
- const AVFrame *src, int offset[4],
- int y, int type, int height);
-
- /* audio only */
- int sample_rate; ///< samples per second
- int channels; ///< number of audio channels
-
- /**
- * audio sample format
- * - encoding: Set by user.
- * - decoding: Set by libavcodec.
- */
- enum SampleFormat sample_fmt; ///< sample format
-
- /* The following data should not be initialized. */
- /**
- * Samples per packet, initialized when calling 'init'.
- */
- int frame_size;
- int frame_number; ///< audio or video frame number
-#if LIBAVCODEC_VERSION_MAJOR < 53
- int real_pict_num; ///< Returns the real picture number of previous encoded frame.
-#endif
-
- /**
- * Number of frames the decoded output will be delayed relative to
- * the encoded input.
- * - encoding: Set by libavcodec.
- * - decoding: unused
- */
- int delay;
-
- /* - encoding parameters */
- float qcompress; ///< amount of qscale change between easy & hard scenes (0.0-1.0)
- float qblur; ///< amount of qscale smoothing over time (0.0-1.0)
-
- /**
- * minimum quantizer
- * - encoding: Set by user.
- * - decoding: unused
- */
- int qmin;
-
- /**
- * maximum quantizer
- * - encoding: Set by user.
- * - decoding: unused
- */
- int qmax;
-
- /**
- * maximum quantizer difference between frames
- * - encoding: Set by user.
- * - decoding: unused
- */
- int max_qdiff;
-
- /**
- * maximum number of B-frames between non-B-frames
- * Note: The output will be delayed by max_b_frames+1 relative to the input.
- * - encoding: Set by user.
- * - decoding: unused
- */
- int max_b_frames;
-
- /**
- * qscale factor between IP and B-frames
- * If > 0 then the last P-frame quantizer will be used (q= lastp_q*factor+offset).
- * If < 0 then normal ratecontrol will be done (q= -normal_q*factor+offset).
- * - encoding: Set by user.
- * - decoding: unused
- */
- float b_quant_factor;
-
- /** obsolete FIXME remove */
- int rc_strategy;
-#define FF_RC_STRATEGY_XVID 1
-
- int b_frame_strategy;
-
- /**
- * hurry up amount
- * - encoding: unused
- * - decoding: Set by user. 1-> Skip B-frames, 2-> Skip IDCT/dequant too, 5-> Skip everything except header
- * @deprecated Deprecated in favor of skip_idct and skip_frame.
- */
- int hurry_up;
-
- struct AVCodec *codec;
-
- void *priv_data;
-
- int rtp_payload_size; /* The size of the RTP payload: the coder will */
- /* do its best to deliver a chunk with size */
- /* below rtp_payload_size, the chunk will start */
- /* with a start code on some codecs like H.263. */
- /* This doesn't take account of any particular */
- /* headers inside the transmitted RTP payload. */
-
-
- /* The RTP callback: This function is called */
- /* every time the encoder has a packet to send. */
- /* It depends on the encoder if the data starts */
- /* with a Start Code (it should). H.263 does. */
- /* mb_nb contains the number of macroblocks */
- /* encoded in the RTP payload. */
- void (*rtp_callback)(struct AVCodecContext *avctx, void *data, int size, int mb_nb);
-
- /* statistics, used for 2-pass encoding */
- int mv_bits;
- int header_bits;
- int i_tex_bits;
- int p_tex_bits;
- int i_count;
- int p_count;
- int skip_count;
- int misc_bits;
-
- /**
- * number of bits used for the previously encoded frame
- * - encoding: Set by libavcodec.
- * - decoding: unused
- */
- int frame_bits;
-
- /**
- * Private data of the user, can be used to carry app specific stuff.
- * - encoding: Set by user.
- * - decoding: Set by user.
- */
- void *opaque;
-
- char codec_name[32];
- enum AVMediaType codec_type; /* see AVMEDIA_TYPE_xxx */
- enum CodecID codec_id; /* see CODEC_ID_xxx */
-
- /**
- * fourcc (LSB first, so "ABCD" -> ('D'<<24) + ('C'<<16) + ('B'<<8) + 'A').
- * This is used to work around some encoder bugs.
- * A demuxer should set this to what is stored in the field used to identify the codec.
- * If there are multiple such fields in a container then the demuxer should choose the one
- * which maximizes the information about the used codec.
- * If the codec tag field in a container is larger then 32 bits then the demuxer should
- * remap the longer ID to 32 bits with a table or other structure. Alternatively a new
- * extra_codec_tag + size could be added but for this a clear advantage must be demonstrated
- * first.
- * - encoding: Set by user, if not then the default based on codec_id will be used.
- * - decoding: Set by user, will be converted to uppercase by libavcodec during init.
- */
- unsigned int codec_tag;
-
- /**
- * Work around bugs in encoders which sometimes cannot be detected automatically.
- * - encoding: Set by user
- * - decoding: Set by user
- */
- int workaround_bugs;
-#define FF_BUG_AUTODETECT 1 ///< autodetection
-#define FF_BUG_OLD_MSMPEG4 2
-#define FF_BUG_XVID_ILACE 4
-#define FF_BUG_UMP4 8
-#define FF_BUG_NO_PADDING 16
-#define FF_BUG_AMV 32
-#define FF_BUG_AC_VLC 0 ///< Will be removed, libavcodec can now handle these non-compliant files by default.
-#define FF_BUG_QPEL_CHROMA 64
-#define FF_BUG_STD_QPEL 128
-#define FF_BUG_QPEL_CHROMA2 256
-#define FF_BUG_DIRECT_BLOCKSIZE 512
-#define FF_BUG_EDGE 1024
-#define FF_BUG_HPEL_CHROMA 2048
-#define FF_BUG_DC_CLIP 4096
-#define FF_BUG_MS 8192 ///< Work around various bugs in Microsoft's broken decoders.
-#define FF_BUG_TRUNCATED 16384
-//#define FF_BUG_FAKE_SCALABILITY 16 //Autodetection should work 100%.
-
- /**
- * luma single coefficient elimination threshold
- * - encoding: Set by user.
- * - decoding: unused
- */
- int luma_elim_threshold;
-
- /**
- * chroma single coeff elimination threshold
- * - encoding: Set by user.
- * - decoding: unused
- */
- int chroma_elim_threshold;
-
- /**
- * strictly follow the standard (MPEG4, ...).
- * - encoding: Set by user.
- * - decoding: Set by user.
- * Setting this to STRICT or higher means the encoder and decoder will
- * generally do stupid things, whereas setting it to unofficial or lower
- * will mean the encoder might produce output that is not supported by all
- * spec-compliant decoders. Decoders don't differentiate between normal,
- * unofficial and experimental (that is, they always try to decode things
- * when they can) unless they are explicitly asked to behave stupidly
- * (=strictly conform to the specs)
- */
- int strict_std_compliance;
-#define FF_COMPLIANCE_VERY_STRICT 2 ///< Strictly conform to an older more strict version of the spec or reference software.
-#define FF_COMPLIANCE_STRICT 1 ///< Strictly conform to all the things in the spec no matter what consequences.
-#define FF_COMPLIANCE_NORMAL 0
-#if LIBAVCODEC_VERSION_MAJOR < 53
-#define FF_COMPLIANCE_INOFFICIAL -1 ///< Allow inofficial extensions (deprecated - use FF_COMPLIANCE_UNOFFICIAL instead).
-#endif
-#define FF_COMPLIANCE_UNOFFICIAL -1 ///< Allow unofficial extensions
-#define FF_COMPLIANCE_EXPERIMENTAL -2 ///< Allow nonstandardized experimental things.
-
- /**
- * qscale offset between IP and B-frames
- * - encoding: Set by user.
- * - decoding: unused
- */
- float b_quant_offset;
-
- /**
- * Error recognization; higher values will detect more errors but may
- * misdetect some more or less valid parts as errors.
- * - encoding: unused
- * - decoding: Set by user.
- */
- int error_recognition;
-#define FF_ER_CAREFUL 1
-#define FF_ER_COMPLIANT 2
-#define FF_ER_AGGRESSIVE 3
-#define FF_ER_VERY_AGGRESSIVE 4
-
- /**
- * Called at the beginning of each frame to get a buffer for it.
- * If pic.reference is set then the frame will be read later by libavcodec.
- * avcodec_align_dimensions2() should be used to find the required width and
- * height, as they normally need to be rounded up to the next multiple of 16.
- * if CODEC_CAP_DR1 is not set then get_buffer() must call
- * avcodec_default_get_buffer() instead of providing buffers allocated by
- * some other means.
- * - encoding: unused
- * - decoding: Set by libavcodec, user can override.
- */
- int (*get_buffer)(struct AVCodecContext *c, AVFrame *pic);
-
- /**
- * Called to release buffers which were allocated with get_buffer.
- * A released buffer can be reused in get_buffer().
- * pic.data[*] must be set to NULL.
- * - encoding: unused
- * - decoding: Set by libavcodec, user can override.
- */
- void (*release_buffer)(struct AVCodecContext *c, AVFrame *pic);
-
- /**
- * Size of the frame reordering buffer in the decoder.
- * For MPEG-2 it is 1 IPB or 0 low delay IP.
- * - encoding: Set by libavcodec.
- * - decoding: Set by libavcodec.
- */
- int has_b_frames;
-
- /**
- * number of bytes per packet if constant and known or 0
- * Used by some WAV based audio codecs.
- */
- int block_align;
-
- int parse_only; /* - decoding only: If true, only parsing is done
- (function avcodec_parse_frame()). The frame
- data is returned. Only MPEG codecs support this now. */
-
- /**
- * 0-> h263 quant 1-> mpeg quant
- * - encoding: Set by user.
- * - decoding: unused
- */
- int mpeg_quant;
-
- /**
- * pass1 encoding statistics output buffer
- * - encoding: Set by libavcodec.
- * - decoding: unused
- */
- char *stats_out;
-
- /**
- * pass2 encoding statistics input buffer
- * Concatenated stuff from stats_out of pass1 should be placed here.
- * - encoding: Allocated/set/freed by user.
- * - decoding: unused
- */
- char *stats_in;
-
- /**
- * ratecontrol qmin qmax limiting method
- * 0-> clipping, 1-> use a nice continous function to limit qscale wthin qmin/qmax.
- * - encoding: Set by user.
- * - decoding: unused
- */
- float rc_qsquish;
-
- float rc_qmod_amp;
- int rc_qmod_freq;
-
- /**
- * ratecontrol override, see RcOverride
- * - encoding: Allocated/set/freed by user.
- * - decoding: unused
- */
- RcOverride *rc_override;
- int rc_override_count;
-
- /**
- * rate control equation
- * - encoding: Set by user
- * - decoding: unused
- */
- const char *rc_eq;
-
- /**
- * maximum bitrate
- * - encoding: Set by user.
- * - decoding: unused
- */
- int rc_max_rate;
-
- /**
- * minimum bitrate
- * - encoding: Set by user.
- * - decoding: unused
- */
- int rc_min_rate;
-
- /**
- * decoder bitstream buffer size
- * - encoding: Set by user.
- * - decoding: unused
- */
- int rc_buffer_size;
- float rc_buffer_aggressivity;
-
- /**
- * qscale factor between P and I-frames
- * If > 0 then the last p frame quantizer will be used (q= lastp_q*factor+offset).
- * If < 0 then normal ratecontrol will be done (q= -normal_q*factor+offset).
- * - encoding: Set by user.
- * - decoding: unused
- */
- float i_quant_factor;
-
- /**
- * qscale offset between P and I-frames
- * - encoding: Set by user.
- * - decoding: unused
- */
- float i_quant_offset;
-
- /**
- * initial complexity for pass1 ratecontrol
- * - encoding: Set by user.
- * - decoding: unused
- */
- float rc_initial_cplx;
-
- /**
- * DCT algorithm, see FF_DCT_* below
- * - encoding: Set by user.
- * - decoding: unused
- */
- int dct_algo;
-#define FF_DCT_AUTO 0
-#define FF_DCT_FASTINT 1
-#define FF_DCT_INT 2
-#define FF_DCT_MMX 3
-#define FF_DCT_MLIB 4
-#define FF_DCT_ALTIVEC 5
-#define FF_DCT_FAAN 6
-
- /**
- * luminance masking (0-> disabled)
- * - encoding: Set by user.
- * - decoding: unused
- */
- float lumi_masking;
-
- /**
- * temporary complexity masking (0-> disabled)
- * - encoding: Set by user.
- * - decoding: unused
- */
- float temporal_cplx_masking;
-
- /**
- * spatial complexity masking (0-> disabled)
- * - encoding: Set by user.
- * - decoding: unused
- */
- float spatial_cplx_masking;
-
- /**
- * p block masking (0-> disabled)
- * - encoding: Set by user.
- * - decoding: unused
- */
- float p_masking;
-
- /**
- * darkness masking (0-> disabled)
- * - encoding: Set by user.
- * - decoding: unused
- */
- float dark_masking;
-
- /**
- * IDCT algorithm, see FF_IDCT_* below.
- * - encoding: Set by user.
- * - decoding: Set by user.
- */
- int idct_algo;
-#define FF_IDCT_AUTO 0
-#define FF_IDCT_INT 1
-#define FF_IDCT_SIMPLE 2
-#define FF_IDCT_SIMPLEMMX 3
-#define FF_IDCT_LIBMPEG2MMX 4
-#define FF_IDCT_PS2 5
-#define FF_IDCT_MLIB 6
-#define FF_IDCT_ARM 7
-#define FF_IDCT_ALTIVEC 8
-#define FF_IDCT_SH4 9
-#define FF_IDCT_SIMPLEARM 10
-#define FF_IDCT_H264 11
-#define FF_IDCT_VP3 12
-#define FF_IDCT_IPP 13
-#define FF_IDCT_XVIDMMX 14
-#define FF_IDCT_CAVS 15
-#define FF_IDCT_SIMPLEARMV5TE 16
-#define FF_IDCT_SIMPLEARMV6 17
-#define FF_IDCT_SIMPLEVIS 18
-#define FF_IDCT_WMV2 19
-#define FF_IDCT_FAAN 20
-#define FF_IDCT_EA 21
-#define FF_IDCT_SIMPLENEON 22
-#define FF_IDCT_SIMPLEALPHA 23
-#define FF_IDCT_BINK 24
-
- /**
- * slice count
- * - encoding: Set by libavcodec.
- * - decoding: Set by user (or 0).
- */
- int slice_count;
- /**
- * slice offsets in the frame in bytes
- * - encoding: Set/allocated by libavcodec.
- * - decoding: Set/allocated by user (or NULL).
- */
- int *slice_offset;
-
- /**
- * error concealment flags
- * - encoding: unused
- * - decoding: Set by user.
- */
- int error_concealment;
-#define FF_EC_GUESS_MVS 1
-#define FF_EC_DEBLOCK 2
-
- /**
- * dsp_mask could be add used to disable unwanted CPU features
- * CPU features (i.e. MMX, SSE. ...)
- *
- * With the FORCE flag you may instead enable given CPU features.
- * (Dangerous: Usable in case of misdetection, improper usage however will
- * result into program crash.)
- */
- unsigned dsp_mask;
-#define FF_MM_FORCE 0x80000000 /* Force usage of selected flags (OR) */
- /* lower 16 bits - CPU features */
-#define FF_MM_MMX 0x0001 ///< standard MMX
-#define FF_MM_3DNOW 0x0004 ///< AMD 3DNOW
-#if LIBAVCODEC_VERSION_MAJOR < 53
-#define FF_MM_MMXEXT 0x0002 ///< SSE integer functions or AMD MMX ext
-#endif
-#define FF_MM_MMX2 0x0002 ///< SSE integer functions or AMD MMX ext
-#define FF_MM_SSE 0x0008 ///< SSE functions
-#define FF_MM_SSE2 0x0010 ///< PIV SSE2 functions
-#define FF_MM_SSE2SLOW 0x40000000 ///< SSE2 supported, but usually not faster
- ///< than regular MMX/SSE (e.g. Core1)
-#define FF_MM_3DNOWEXT 0x0020 ///< AMD 3DNowExt
-#define FF_MM_SSE3 0x0040 ///< Prescott SSE3 functions
-#define FF_MM_SSE3SLOW 0x20000000 ///< SSE3 supported, but usually not faster
- ///< than regular MMX/SSE (e.g. Core1)
-#define FF_MM_SSSE3 0x0080 ///< Conroe SSSE3 functions
-#define FF_MM_SSE4 0x0100 ///< Penryn SSE4.1 functions
-#define FF_MM_SSE42 0x0200 ///< Nehalem SSE4.2 functions
-#define FF_MM_IWMMXT 0x0100 ///< XScale IWMMXT
-#define FF_MM_ALTIVEC 0x0001 ///< standard AltiVec
-
- /**
- * bits per sample/pixel from the demuxer (needed for huffyuv).
- * - encoding: Set by libavcodec.
- * - decoding: Set by user.
- */
- int bits_per_coded_sample;
-
- /**
- * prediction method (needed for huffyuv)
- * - encoding: Set by user.
- * - decoding: unused
- */
- int prediction_method;
-#define FF_PRED_LEFT 0
-#define FF_PRED_PLANE 1
-#define FF_PRED_MEDIAN 2
-
- /**
- * sample aspect ratio (0 if unknown)
- * That is the width of a pixel divided by the height of the pixel.
- * Numerator and denominator must be relatively prime and smaller than 256 for some video standards.
- * - encoding: Set by user.
- * - decoding: Set by libavcodec.
- */
- AVRational sample_aspect_ratio;
-
- /**
- * the picture in the bitstream
- * - encoding: Set by libavcodec.
- * - decoding: Set by libavcodec.
- */
- AVFrame *coded_frame;
-
- /**
- * debug
- * - encoding: Set by user.
- * - decoding: Set by user.
- */
- int debug;
-#define FF_DEBUG_PICT_INFO 1
-#define FF_DEBUG_RC 2
-#define FF_DEBUG_BITSTREAM 4
-#define FF_DEBUG_MB_TYPE 8
-#define FF_DEBUG_QP 16
-#define FF_DEBUG_MV 32
-#define FF_DEBUG_DCT_COEFF 0x00000040
-#define FF_DEBUG_SKIP 0x00000080
-#define FF_DEBUG_STARTCODE 0x00000100
-#define FF_DEBUG_PTS 0x00000200
-#define FF_DEBUG_ER 0x00000400
-#define FF_DEBUG_MMCO 0x00000800
-#define FF_DEBUG_BUGS 0x00001000
-#define FF_DEBUG_VIS_QP 0x00002000
-#define FF_DEBUG_VIS_MB_TYPE 0x00004000
-#define FF_DEBUG_BUFFERS 0x00008000
-
- /**
- * debug
- * - encoding: Set by user.
- * - decoding: Set by user.
- */
- int debug_mv;
-#define FF_DEBUG_VIS_MV_P_FOR 0x00000001 //visualize forward predicted MVs of P frames
-#define FF_DEBUG_VIS_MV_B_FOR 0x00000002 //visualize forward predicted MVs of B frames
-#define FF_DEBUG_VIS_MV_B_BACK 0x00000004 //visualize backward predicted MVs of B frames
-
- /**
- * error
- * - encoding: Set by libavcodec if flags&CODEC_FLAG_PSNR.
- * - decoding: unused
- */
- uint64_t error[4];
-
- /**
- * minimum MB quantizer
- * - encoding: unused
- * - decoding: unused
- */
- int mb_qmin;
-
- /**
- * maximum MB quantizer
- * - encoding: unused
- * - decoding: unused
- */
- int mb_qmax;
-
- /**
- * motion estimation comparison function
- * - encoding: Set by user.
- * - decoding: unused
- */
- int me_cmp;
- /**
- * subpixel motion estimation comparison function
- * - encoding: Set by user.
- * - decoding: unused
- */
- int me_sub_cmp;
- /**
- * macroblock comparison function (not supported yet)
- * - encoding: Set by user.
- * - decoding: unused
- */
- int mb_cmp;
- /**
- * interlaced DCT comparison function
- * - encoding: Set by user.
- * - decoding: unused
- */
- int ildct_cmp;
-#define FF_CMP_SAD 0
-#define FF_CMP_SSE 1
-#define FF_CMP_SATD 2
-#define FF_CMP_DCT 3
-#define FF_CMP_PSNR 4
-#define FF_CMP_BIT 5
-#define FF_CMP_RD 6
-#define FF_CMP_ZERO 7
-#define FF_CMP_VSAD 8
-#define FF_CMP_VSSE 9
-#define FF_CMP_NSSE 10
-#define FF_CMP_W53 11
-#define FF_CMP_W97 12
-#define FF_CMP_DCTMAX 13
-#define FF_CMP_DCT264 14
-#define FF_CMP_CHROMA 256
-
- /**
- * ME diamond size & shape
- * - encoding: Set by user.
- * - decoding: unused
- */
- int dia_size;
-
- /**
- * amount of previous MV predictors (2a+1 x 2a+1 square)
- * - encoding: Set by user.
- * - decoding: unused
- */
- int last_predictor_count;
-
- /**
- * prepass for motion estimation
- * - encoding: Set by user.
- * - decoding: unused
- */
- int pre_me;
-
- /**
- * motion estimation prepass comparison function
- * - encoding: Set by user.
- * - decoding: unused
- */
- int me_pre_cmp;
-
- /**
- * ME prepass diamond size & shape
- * - encoding: Set by user.
- * - decoding: unused
- */
- int pre_dia_size;
-
- /**
- * subpel ME quality
- * - encoding: Set by user.
- * - decoding: unused
- */
- int me_subpel_quality;
-
- /**
- * callback to negotiate the pixelFormat
- * @param fmt is the list of formats which are supported by the codec,
- * it is terminated by -1 as 0 is a valid format, the formats are ordered by quality.
- * The first is always the native one.
- * @return the chosen format
- * - encoding: unused
- * - decoding: Set by user, if not set the native format will be chosen.
- */
- enum PixelFormat (*get_format)(struct AVCodecContext *s, const enum PixelFormat * fmt);
-
- /**
- * DTG active format information (additional aspect ratio
- * information only used in DVB MPEG-2 transport streams)
- * 0 if not set.
- *
- * - encoding: unused
- * - decoding: Set by decoder.
- */
- int dtg_active_format;
-#define FF_DTG_AFD_SAME 8
-#define FF_DTG_AFD_4_3 9
-#define FF_DTG_AFD_16_9 10
-#define FF_DTG_AFD_14_9 11
-#define FF_DTG_AFD_4_3_SP_14_9 13
-#define FF_DTG_AFD_16_9_SP_14_9 14
-#define FF_DTG_AFD_SP_4_3 15
-
- /**
- * maximum motion estimation search range in subpel units
- * If 0 then no limit.
- *
- * - encoding: Set by user.
- * - decoding: unused
- */
- int me_range;
-
- /**
- * intra quantizer bias
- * - encoding: Set by user.
- * - decoding: unused
- */
- int intra_quant_bias;
-#define FF_DEFAULT_QUANT_BIAS 999999
-
- /**
- * inter quantizer bias
- * - encoding: Set by user.
- * - decoding: unused
- */
- int inter_quant_bias;
-
- /**
- * color table ID
- * - encoding: unused
- * - decoding: Which clrtable should be used for 8bit RGB images.
- * Tables have to be stored somewhere. FIXME
- */
- int color_table_id;
-
- /**
- * internal_buffer count
- * Don't touch, used by libavcodec default_get_buffer().
- */
- int internal_buffer_count;
-
- /**
- * internal_buffers
- * Don't touch, used by libavcodec default_get_buffer().
- */
- void *internal_buffer;
-
-#define FF_LAMBDA_SHIFT 7
-#define FF_LAMBDA_SCALE (1<<FF_LAMBDA_SHIFT)
-#define FF_QP2LAMBDA 118 ///< factor to convert from H.263 QP to lambda
-#define FF_LAMBDA_MAX (256*128-1)
-
-#define FF_QUALITY_SCALE FF_LAMBDA_SCALE //FIXME maybe remove
- /**
- * Global quality for codecs which cannot change it per frame.
- * This should be proportional to MPEG-1/2/4 qscale.
- * - encoding: Set by user.
- * - decoding: unused
- */
- int global_quality;
-
-#define FF_CODER_TYPE_VLC 0
-#define FF_CODER_TYPE_AC 1
-#define FF_CODER_TYPE_RAW 2
-#define FF_CODER_TYPE_RLE 3
-#define FF_CODER_TYPE_DEFLATE 4
- /**
- * coder type
- * - encoding: Set by user.
- * - decoding: unused
- */
- int coder_type;
-
- /**
- * context model
- * - encoding: Set by user.
- * - decoding: unused
- */
- int context_model;
-#if 0
- /**
- *
- * - encoding: unused
- * - decoding: Set by user.
- */
- uint8_t * (*realloc)(struct AVCodecContext *s, uint8_t *buf, int buf_size);
-#endif
-
- /**
- * slice flags
- * - encoding: unused
- * - decoding: Set by user.
- */
- int slice_flags;
-#define SLICE_FLAG_CODED_ORDER 0x0001 ///< draw_horiz_band() is called in coded order instead of display
-#define SLICE_FLAG_ALLOW_FIELD 0x0002 ///< allow draw_horiz_band() with field slices (MPEG2 field pics)
-#define SLICE_FLAG_ALLOW_PLANE 0x0004 ///< allow draw_horiz_band() with 1 component at a time (SVQ1)
-
- /**
- * XVideo Motion Acceleration
- * - encoding: forbidden
- * - decoding: set by decoder
- */
- int xvmc_acceleration;
-
- /**
- * macroblock decision mode
- * - encoding: Set by user.
- * - decoding: unused
- */
- int mb_decision;
-#define FF_MB_DECISION_SIMPLE 0 ///< uses mb_cmp
-#define FF_MB_DECISION_BITS 1 ///< chooses the one which needs the fewest bits
-#define FF_MB_DECISION_RD 2 ///< rate distortion
-
- /**
- * custom intra quantization matrix
- * - encoding: Set by user, can be NULL.
- * - decoding: Set by libavcodec.
- */
- uint16_t *intra_matrix;
-
- /**
- * custom inter quantization matrix
- * - encoding: Set by user, can be NULL.
- * - decoding: Set by libavcodec.
- */
- uint16_t *inter_matrix;
-
- /**
- * fourcc from the AVI stream header (LSB first, so "ABCD" -> ('D'<<24) + ('C'<<16) + ('B'<<8) + 'A').
- * This is used to work around some encoder bugs.
- * - encoding: unused
- * - decoding: Set by user, will be converted to uppercase by libavcodec during init.
- */
- unsigned int stream_codec_tag;
-
- /**
- * scene change detection threshold
- * 0 is default, larger means fewer detected scene changes.
- * - encoding: Set by user.
- * - decoding: unused
- */
- int scenechange_threshold;
-
- /**
- * minimum Lagrange multipler
- * - encoding: Set by user.
- * - decoding: unused
- */
- int lmin;
-
- /**
- * maximum Lagrange multipler
- * - encoding: Set by user.
- * - decoding: unused
- */
- int lmax;
-
- /**
- * palette control structure
- * - encoding: ??? (no palette-enabled encoder yet)
- * - decoding: Set by user.
- */
- struct AVPaletteControl *palctrl;
-
- /**
- * noise reduction strength
- * - encoding: Set by user.
- * - decoding: unused
- */
- int noise_reduction;
-
- /**
- * Called at the beginning of a frame to get cr buffer for it.
- * Buffer type (size, hints) must be the same. libavcodec won't check it.
- * libavcodec will pass previous buffer in pic, function should return
- * same buffer or new buffer with old frame "painted" into it.
- * If pic.data[0] == NULL must behave like get_buffer().
- * if CODEC_CAP_DR1 is not set then reget_buffer() must call
- * avcodec_default_reget_buffer() instead of providing buffers allocated by
- * some other means.
- * - encoding: unused
- * - decoding: Set by libavcodec, user can override.
- */
- int (*reget_buffer)(struct AVCodecContext *c, AVFrame *pic);
-
- /**
- * Number of bits which should be loaded into the rc buffer before decoding starts.
- * - encoding: Set by user.
- * - decoding: unused
- */
- int rc_initial_buffer_occupancy;
-
- /**
- *
- * - encoding: Set by user.
- * - decoding: unused
- */
- int inter_threshold;
-
- /**
- * CODEC_FLAG2_*
- * - encoding: Set by user.
- * - decoding: Set by user.
- */
- int flags2;
-
- /**
- * Simulates errors in the bitstream to test error concealment.
- * - encoding: Set by user.
- * - decoding: unused
- */
- int error_rate;
-
- /**
- * MP3 antialias algorithm, see FF_AA_* below.
- * - encoding: unused
- * - decoding: Set by user.
- */
- int antialias_algo;
-#define FF_AA_AUTO 0
-#define FF_AA_FASTINT 1 //not implemented yet
-#define FF_AA_INT 2
-#define FF_AA_FLOAT 3
- /**
- * quantizer noise shaping
- * - encoding: Set by user.
- * - decoding: unused
- */
- int quantizer_noise_shaping;
-
- /**
- * thread count
- * is used to decide how many independent tasks should be passed to execute()
- * - encoding: Set by user.
- * - decoding: Set by user.
- */
- int thread_count;
-
- /**
- * The codec may call this to execute several independent things.
- * It will return only after finishing all tasks.
- * The user may replace this with some multithreaded implementation,
- * the default implementation will execute the parts serially.
- * @param count the number of things to execute
- * - encoding: Set by libavcodec, user can override.
- * - decoding: Set by libavcodec, user can override.
- */
- int (*execute)(struct AVCodecContext *c, int (*func)(struct AVCodecContext *c2, void *arg), void *arg2, int *ret, int count, int size);
-
- /**
- * thread opaque
- * Can be used by execute() to store some per AVCodecContext stuff.
- * - encoding: set by execute()
- * - decoding: set by execute()
- */
- void *thread_opaque;
-
- /**
- * Motion estimation threshold below which no motion estimation is
- * performed, but instead the user specified motion vectors are used.
- *
- * - encoding: Set by user.
- * - decoding: unused
- */
- int me_threshold;
-
- /**
- * Macroblock threshold below which the user specified macroblock types will be used.
- * - encoding: Set by user.
- * - decoding: unused
- */
- int mb_threshold;
-
- /**
- * precision of the intra DC coefficient - 8
- * - encoding: Set by user.
- * - decoding: unused
- */
- int intra_dc_precision;
-
- /**
- * noise vs. sse weight for the nsse comparsion function
- * - encoding: Set by user.
- * - decoding: unused
- */
- int nsse_weight;
-
- /**
- * Number of macroblock rows at the top which are skipped.
- * - encoding: unused
- * - decoding: Set by user.
- */
- int skip_top;
-
- /**
- * Number of macroblock rows at the bottom which are skipped.
- * - encoding: unused
- * - decoding: Set by user.
- */
- int skip_bottom;
-
- /**
- * profile
- * - encoding: Set by user.
- * - decoding: Set by libavcodec.
- */
- int profile;
-#define FF_PROFILE_UNKNOWN -99
-
-#define FF_PROFILE_AAC_MAIN 0
-#define FF_PROFILE_AAC_LOW 1
-#define FF_PROFILE_AAC_SSR 2
-#define FF_PROFILE_AAC_LTP 3
-
-#define FF_PROFILE_H264_BASELINE 66
-#define FF_PROFILE_H264_MAIN 77
-#define FF_PROFILE_H264_EXTENDED 88
-#define FF_PROFILE_H264_HIGH 100
-#define FF_PROFILE_H264_HIGH_10 110
-#define FF_PROFILE_H264_HIGH_422 122
-#define FF_PROFILE_H264_HIGH_444 244
-#define FF_PROFILE_H264_CAVLC_444 44
-
- /**
- * level
- * - encoding: Set by user.
- * - decoding: Set by libavcodec.
- */
- int level;
-#define FF_LEVEL_UNKNOWN -99
-
- /**
- * low resolution decoding, 1-> 1/2 size, 2->1/4 size
- * - encoding: unused
- * - decoding: Set by user.
- */
- int lowres;
-
- /**
- * Bitstream width / height, may be different from width/height if lowres
- * or other things are used.
- * - encoding: unused
- * - decoding: Set by user before init if known. Codec should override / dynamically change if needed.
- */
- int coded_width, coded_height;
-
- /**
- * frame skip threshold
- * - encoding: Set by user.
- * - decoding: unused
- */
- int frame_skip_threshold;
-
- /**
- * frame skip factor
- * - encoding: Set by user.
- * - decoding: unused
- */
- int frame_skip_factor;
-
- /**
- * frame skip exponent
- * - encoding: Set by user.
- * - decoding: unused
- */
- int frame_skip_exp;
-
- /**
- * frame skip comparison function
- * - encoding: Set by user.
- * - decoding: unused
- */
- int frame_skip_cmp;
-
- /**
- * Border processing masking, raises the quantizer for mbs on the borders
- * of the picture.
- * - encoding: Set by user.
- * - decoding: unused
- */
- float border_masking;
-
- /**
- * minimum MB lagrange multipler
- * - encoding: Set by user.
- * - decoding: unused
- */
- int mb_lmin;
-
- /**
- * maximum MB lagrange multipler
- * - encoding: Set by user.
- * - decoding: unused
- */
- int mb_lmax;
-
- /**
- *
- * - encoding: Set by user.
- * - decoding: unused
- */
- int me_penalty_compensation;
-
- /**
- *
- * - encoding: unused
- * - decoding: Set by user.
- */
- enum AVDiscard skip_loop_filter;
-
- /**
- *
- * - encoding: unused
- * - decoding: Set by user.
- */
- enum AVDiscard skip_idct;
-
- /**
- *
- * - encoding: unused
- * - decoding: Set by user.
- */
- enum AVDiscard skip_frame;
-
- /**
- *
- * - encoding: Set by user.
- * - decoding: unused
- */
- int bidir_refine;
-
- /**
- *
- * - encoding: Set by user.
- * - decoding: unused
- */
- int brd_scale;
-
- /**
- * constant rate factor - quality-based VBR - values ~correspond to qps
- * - encoding: Set by user.
- * - decoding: unused
- */
- float crf;
-
- /**
- * constant quantization parameter rate control method
- * - encoding: Set by user.
- * - decoding: unused
- */
- int cqp;
-
- /**
- * minimum GOP size
- * - encoding: Set by user.
- * - decoding: unused
- */
- int keyint_min;
-
- /**
- * number of reference frames
- * - encoding: Set by user.
- * - decoding: Set by lavc.
- */
- int refs;
-
- /**
- * chroma qp offset from luma
- * - encoding: Set by user.
- * - decoding: unused
- */
- int chromaoffset;
-
- /**
- * Influences how often B-frames are used.
- * - encoding: Set by user.
- * - decoding: unused
- */
- int bframebias;
-
- /**
- * trellis RD quantization
- * - encoding: Set by user.
- * - decoding: unused
- */
- int trellis;
-
- /**
- * Reduce fluctuations in qp (before curve compression).
- * - encoding: Set by user.
- * - decoding: unused
- */
- float complexityblur;
-
- /**
- * in-loop deblocking filter alphac0 parameter
- * alpha is in the range -6...6
- * - encoding: Set by user.
- * - decoding: unused
- */
- int deblockalpha;
-
- /**
- * in-loop deblocking filter beta parameter
- * beta is in the range -6...6
- * - encoding: Set by user.
- * - decoding: unused
- */
- int deblockbeta;
-
- /**
- * macroblock subpartition sizes to consider - p8x8, p4x4, b8x8, i8x8, i4x4
- * - encoding: Set by user.
- * - decoding: unused
- */
- int partitions;
-#define X264_PART_I4X4 0x001 /* Analyze i4x4 */
-#define X264_PART_I8X8 0x002 /* Analyze i8x8 (requires 8x8 transform) */
-#define X264_PART_P8X8 0x010 /* Analyze p16x8, p8x16 and p8x8 */
-#define X264_PART_P4X4 0x020 /* Analyze p8x4, p4x8, p4x4 */
-#define X264_PART_B8X8 0x100 /* Analyze b16x8, b8x16 and b8x8 */
-
- /**
- * direct MV prediction mode - 0 (none), 1 (spatial), 2 (temporal), 3 (auto)
- * - encoding: Set by user.
- * - decoding: unused
- */
- int directpred;
-
- /**
- * Audio cutoff bandwidth (0 means "automatic")
- * - encoding: Set by user.
- * - decoding: unused
- */
- int cutoff;
-
- /**
- * Multiplied by qscale for each frame and added to scene_change_score.
- * - encoding: Set by user.
- * - decoding: unused
- */
- int scenechange_factor;
-
- /**
- *
- * Note: Value depends upon the compare function used for fullpel ME.
- * - encoding: Set by user.
- * - decoding: unused
- */
- int mv0_threshold;
-
- /**
- * Adjusts sensitivity of b_frame_strategy 1.
- * - encoding: Set by user.
- * - decoding: unused
- */
- int b_sensitivity;
-
- /**
- * - encoding: Set by user.
- * - decoding: unused
- */
- int compression_level;
-#define FF_COMPRESSION_DEFAULT -1
-
-#if LIBAVCODEC_VERSION_MAJOR < 53
- /**
- * Sets whether to use LPC mode - used by FLAC encoder.
- * - encoding: Set by user.
- * - decoding: unused
- * @deprecated Deprecated in favor of lpc_type and lpc_passes.
- */
- int use_lpc;
-#endif
-
- /**
- * LPC coefficient precision - used by FLAC encoder
- * - encoding: Set by user.
- * - decoding: unused
- */
- int lpc_coeff_precision;
-
- /**
- * - encoding: Set by user.
- * - decoding: unused
- */
- int min_prediction_order;
-
- /**
- * - encoding: Set by user.
- * - decoding: unused
- */
- int max_prediction_order;
-
- /**
- * search method for selecting prediction order
- * - encoding: Set by user.
- * - decoding: unused
- */
- int prediction_order_method;
-
- /**
- * - encoding: Set by user.
- * - decoding: unused
- */
- int min_partition_order;
-
- /**
- * - encoding: Set by user.
- * - decoding: unused
- */
- int max_partition_order;
-
- /**
- * GOP timecode frame start number, in non drop frame format
- * - encoding: Set by user.
- * - decoding: unused
- */
- int64_t timecode_frame_start;
-
-#if LIBAVCODEC_VERSION_MAJOR < 53
- /**
- * Decoder should decode to this many channels if it can (0 for default)
- * - encoding: unused
- * - decoding: Set by user.
- * @deprecated Deprecated in favor of request_channel_layout.
- */
- int request_channels;
-#endif
-
- /**
- * Percentage of dynamic range compression to be applied by the decoder.
- * The default value is 1.0, corresponding to full compression.
- * - encoding: unused
- * - decoding: Set by user.
- */
- float drc_scale;
-
- /**
- * opaque 64bit number (generally a PTS) that will be reordered and
- * output in AVFrame.reordered_opaque
- * - encoding: unused
- * - decoding: Set by user.
- */
- int64_t reordered_opaque;
-
- /**
- * Bits per sample/pixel of internal libavcodec pixel/sample format.
- * This field is applicable only when sample_fmt is SAMPLE_FMT_S32.
- * - encoding: set by user.
- * - decoding: set by libavcodec.
- */
- int bits_per_raw_sample;
-
- /**
- * Audio channel layout.
- * - encoding: set by user.
- * - decoding: set by libavcodec.
- */
- int64_t channel_layout;
-
- /**
- * Request decoder to use this channel layout if it can (0 for default)
- * - encoding: unused
- * - decoding: Set by user.
- */
- int64_t request_channel_layout;
-
- /**
- * Ratecontrol attempt to use, at maximum, <value> of what can be used without an underflow.
- * - encoding: Set by user.
- * - decoding: unused.
- */
- float rc_max_available_vbv_use;
-
- /**
- * Ratecontrol attempt to use, at least, <value> times the amount needed to prevent a vbv overflow.
- * - encoding: Set by user.
- * - decoding: unused.
- */
- float rc_min_vbv_overflow_use;
-
- /**
- * Hardware accelerator in use
- * - encoding: unused.
- * - decoding: Set by libavcodec
- */
- struct AVHWAccel *hwaccel;
-
- /**
- * For some codecs, the time base is closer to the field rate than the frame rate.
- * Most notably, H.264 and MPEG-2 specify time_base as half of frame duration
- * if no telecine is used ...
- *
- * Set to time_base ticks per frame. Default 1, e.g., H.264/MPEG-2 set it to 2.
- */
- int ticks_per_frame;
-
- /**
- * Hardware accelerator context.
- * For some hardware accelerators, a global context needs to be
- * provided by the user. In that case, this holds display-dependent
- * data FFmpeg cannot instantiate itself. Please refer to the
- * FFmpeg HW accelerator documentation to know how to fill this
- * is. e.g. for VA API, this is a struct vaapi_context.
- * - encoding: unused
- * - decoding: Set by user
- */
- void *hwaccel_context;
-
- /**
- * Chromaticity coordinates of the source primaries.
- * - encoding: Set by user
- * - decoding: Set by libavcodec
- */
- enum AVColorPrimaries color_primaries;
-
- /**
- * Color Transfer Characteristic.
- * - encoding: Set by user
- * - decoding: Set by libavcodec
- */
- enum AVColorTransferCharacteristic color_trc;
-
- /**
- * YUV colorspace type.
- * - encoding: Set by user
- * - decoding: Set by libavcodec
- */
- enum AVColorSpace colorspace;
-
- /**
- * MPEG vs JPEG YUV range.
- * - encoding: Set by user
- * - decoding: Set by libavcodec
- */
- enum AVColorRange color_range;
-
- /**
- * This defines the location of chroma samples.
- * - encoding: Set by user
- * - decoding: Set by libavcodec
- */
- enum AVChromaLocation chroma_sample_location;
-
- /**
- * The codec may call this to execute several independent things.
- * It will return only after finishing all tasks.
- * The user may replace this with some multithreaded implementation,
- * the default implementation will execute the parts serially.
- * Also see avcodec_thread_init and e.g. the --enable-pthread configure option.
- * @param c context passed also to func
- * @param count the number of things to execute
- * @param arg2 argument passed unchanged to func
- * @param ret return values of executed functions, must have space for "count" values. May be NULL.
- * @param func function that will be called count times, with jobnr from 0 to count-1.
- * threadnr will be in the range 0 to c->thread_count-1 < MAX_THREADS and so that no
- * two instances of func executing at the same time will have the same threadnr.
- * @return always 0 currently, but code should handle a future improvement where when any call to func
- * returns < 0 no further calls to func may be done and < 0 is returned.
- * - encoding: Set by libavcodec, user can override.
- * - decoding: Set by libavcodec, user can override.
- */
- int (*execute2)(struct AVCodecContext *c, int (*func)(struct AVCodecContext *c2, void *arg, int jobnr, int threadnr), void *arg2, int *ret, int count);
-
- /**
- * explicit P-frame weighted prediction analysis method
- * 0: off
- * 1: fast blind weighting (one reference duplicate with -1 offset)
- * 2: smart weighting (full fade detection analysis)
- * - encoding: Set by user.
- * - decoding: unused
- */
- int weighted_p_pred;
-
- /**
- * AQ mode
- * 0: Disabled
- * 1: Variance AQ (complexity mask)
- * 2: Auto-variance AQ (experimental)
- * - encoding: Set by user
- * - decoding: unused
- */
- int aq_mode;
-
- /**
- * AQ strength
- * Reduces blocking and blurring in flat and textured areas.
- * - encoding: Set by user
- * - decoding: unused
- */
- float aq_strength;
-
- /**
- * PSY RD
- * Strength of psychovisual optimization
- * - encoding: Set by user
- * - decoding: unused
- */
- float psy_rd;
-
- /**
- * PSY trellis
- * Strength of psychovisual optimization
- * - encoding: Set by user
- * - decoding: unused
- */
- float psy_trellis;
-
- /**
- * RC lookahead
- * Number of frames for frametype and ratecontrol lookahead
- * - encoding: Set by user
- * - decoding: unused
- */
- int rc_lookahead;
-
- /**
- * Constant rate factor maximum
- * With CRF encoding mode and VBV restrictions enabled, prevents quality from being worse
- * than crf_max, even if doing so would violate VBV restrictions.
- * - encoding: Set by user.
- * - decoding: unused
- */
- float crf_max;
-
- int log_level_offset;
-
- /**
- * Determines which LPC analysis algorithm to use.
- * - encoding: Set by user
- * - decoding: unused
- */
- enum AVLPCType lpc_type;
-
- /**
- * Number of passes to use for Cholesky factorization during LPC analysis
- * - encoding: Set by user
- * - decoding: unused
- */
- int lpc_passes;
-} AVCodecContext;
-
-/**
- * AVCodec.
- */
-typedef struct AVCodec {
- /**
- * Name of the codec implementation.
- * The name is globally unique among encoders and among decoders (but an
- * encoder and a decoder can share the same name).
- * This is the primary way to find a codec from the user perspective.
- */
- const char *name;
- enum AVMediaType type;
- enum CodecID id;
- int priv_data_size;
- int (*init)(AVCodecContext *);
- int (*encode)(AVCodecContext *, uint8_t *buf, int buf_size, void *data);
- int (*close)(AVCodecContext *);
- int (*decode)(AVCodecContext *, void *outdata, int *outdata_size, AVPacket *avpkt);
- /**
- * Codec capabilities.
- * see CODEC_CAP_*
- */
- int capabilities;
- struct AVCodec *next;
- /**
- * Flush buffers.
- * Will be called when seeking
- */
- void (*flush)(AVCodecContext *);
- const AVRational *supported_framerates; ///< array of supported framerates, or NULL if any, array is terminated by {0,0}
- const enum PixelFormat *pix_fmts; ///< array of supported pixel formats, or NULL if unknown, array is terminated by -1
- /**
- * Descriptive name for the codec, meant to be more human readable than name.
- * You should use the NULL_IF_CONFIG_SMALL() macro to define it.
- */
- const char *long_name;
- const int *supported_samplerates; ///< array of supported audio samplerates, or NULL if unknown, array is terminated by 0
- const enum SampleFormat *sample_fmts; ///< array of supported sample formats, or NULL if unknown, array is terminated by -1
- const int64_t *channel_layouts; ///< array of support channel layouts, or NULL if unknown. array is terminated by 0
- uint8_t max_lowres; ///< maximum value for lowres supported by the decoder
-} AVCodec;
-
-/**
- * AVHWAccel.
- */
-typedef struct AVHWAccel {
- /**
- * Name of the hardware accelerated codec.
- * The name is globally unique among encoders and among decoders (but an
- * encoder and a decoder can share the same name).
- */
- const char *name;
-
- /**
- * Type of codec implemented by the hardware accelerator.
- *
- * See AVMEDIA_TYPE_xxx
- */
- enum AVMediaType type;
-
- /**
- * Codec implemented by the hardware accelerator.
- *
- * See CODEC_ID_xxx
- */
- enum CodecID id;
-
- /**
- * Supported pixel format.
- *
- * Only hardware accelerated formats are supported here.
- */
- enum PixelFormat pix_fmt;
-
- /**
- * Hardware accelerated codec capabilities.
- * see FF_HWACCEL_CODEC_CAP_*
- */
- int capabilities;
-
- struct AVHWAccel *next;
-
- /**
- * Called at the beginning of each frame or field picture.
- *
- * Meaningful frame information (codec specific) is guaranteed to
- * be parsed at this point. This function is mandatory.
- *
- * Note that buf can be NULL along with buf_size set to 0.
- * Otherwise, this means the whole frame is available at this point.
- *
- * @param avctx the codec context
- * @param buf the frame data buffer base
- * @param buf_size the size of the frame in bytes
- * @return zero if successful, a negative value otherwise
- */
- int (*start_frame)(AVCodecContext *avctx, const uint8_t *buf, uint32_t buf_size);
-
- /**
- * Callback for each slice.
- *
- * Meaningful slice information (codec specific) is guaranteed to
- * be parsed at this point. This function is mandatory.
- *
- * @param avctx the codec context
- * @param buf the slice data buffer base
- * @param buf_size the size of the slice in bytes
- * @return zero if successful, a negative value otherwise
- */
- int (*decode_slice)(AVCodecContext *avctx, const uint8_t *buf, uint32_t buf_size);
-
- /**
- * Called at the end of each frame or field picture.
- *
- * The whole picture is parsed at this point and can now be sent
- * to the hardware accelerator. This function is mandatory.
- *
- * @param avctx the codec context
- * @return zero if successful, a negative value otherwise
- */
- int (*end_frame)(AVCodecContext *avctx);
-
- /**
- * Size of HW accelerator private data.
- *
- * Private data is allocated with av_mallocz() before
- * AVCodecContext.get_buffer() and deallocated after
- * AVCodecContext.release_buffer().
- */
- int priv_data_size;
-} AVHWAccel;
-
-/**
- * four components are given, that's all.
- * the last component is alpha
- */
-typedef struct AVPicture {
- uint8_t *data[4];
- int linesize[4]; ///< number of bytes per line
-} AVPicture;
-
-#if LIBAVCODEC_VERSION_MAJOR < 53
-/**
- * AVPaletteControl
- * This structure defines a method for communicating palette changes
- * between and demuxer and a decoder.
- *
- * @deprecated Use AVPacket to send palette changes instead.
- * This is totally broken.
- */
-#define AVPALETTE_SIZE 1024
-#define AVPALETTE_COUNT 256
-typedef struct AVPaletteControl {
-
- /* Demuxer sets this to 1 to indicate the palette has changed;
- * decoder resets to 0. */
- int palette_changed;
-
- /* 4-byte ARGB palette entries, stored in native byte order; note that
- * the individual palette components should be on a 8-bit scale; if
- * the palette data comes from an IBM VGA native format, the component
- * data is probably 6 bits in size and needs to be scaled. */
- unsigned int palette[AVPALETTE_COUNT];
-
-} AVPaletteControl attribute_deprecated;
-#endif
-
-enum AVSubtitleType {
- SUBTITLE_NONE,
-
- SUBTITLE_BITMAP, ///< A bitmap, pict will be set
-
- /**
- * Plain text, the text field must be set by the decoder and is
- * authoritative. ass and pict fields may contain approximations.
- */
- SUBTITLE_TEXT,
-
- /**
- * Formatted text, the ass field must be set by the decoder and is
- * authoritative. pict and text fields may contain approximations.
- */
- SUBTITLE_ASS,
-};
-
-typedef struct AVSubtitleRect {
- int x; ///< top left corner of pict, undefined when pict is not set
- int y; ///< top left corner of pict, undefined when pict is not set
- int w; ///< width of pict, undefined when pict is not set
- int h; ///< height of pict, undefined when pict is not set
- int nb_colors; ///< number of colors in pict, undefined when pict is not set
-
- /**
- * data+linesize for the bitmap of this subtitle.
- * can be set for text/ass as well once they where rendered
- */
- AVPicture pict;
- enum AVSubtitleType type;
-
- char *text; ///< 0 terminated plain UTF-8 text
-
- /**
- * 0 terminated ASS/SSA compatible event line.
- * The pressentation of this is unaffected by the other values in this
- * struct.
- */
- char *ass;
-} AVSubtitleRect;
-
-typedef struct AVSubtitle {
- uint16_t format; /* 0 = graphics */
- uint32_t start_display_time; /* relative to packet pts, in ms */
- uint32_t end_display_time; /* relative to packet pts, in ms */
- unsigned num_rects;
- AVSubtitleRect **rects;
- int64_t pts; ///< Same as packet pts, in AV_TIME_BASE
-} AVSubtitle;
-
-/* packet functions */
-
-/**
- * @deprecated use NULL instead
- */
-attribute_deprecated void av_destruct_packet_nofree(AVPacket *pkt);
-
-/**
- * Default packet destructor.
- */
-void av_destruct_packet(AVPacket *pkt);
-
-/**
- * Initialize optional fields of a packet with default values.
- *
- * @param pkt packet
- */
-void av_init_packet(AVPacket *pkt);
-
-/**
- * Allocate the payload of a packet and initialize its fields with
- * default values.
- *
- * @param pkt packet
- * @param size wanted payload size
- * @return 0 if OK, AVERROR_xxx otherwise
- */
-int av_new_packet(AVPacket *pkt, int size);
-
-/**
- * Reduce packet size, correctly zeroing padding
- *
- * @param pkt packet
- * @param size new size
- */
-void av_shrink_packet(AVPacket *pkt, int size);
-
-/**
- * @warning This is a hack - the packet memory allocation stuff is broken. The
- * packet is allocated if it was not really allocated.
- */
-int av_dup_packet(AVPacket *pkt);
-
-/**
- * Free a packet.
- *
- * @param pkt packet to free
- */
-void av_free_packet(AVPacket *pkt);
-
-/* resample.c */
-
-struct ReSampleContext;
-struct AVResampleContext;
-
-typedef struct ReSampleContext ReSampleContext;
-
-#if LIBAVCODEC_VERSION_MAJOR < 53
-/**
- * @deprecated Use av_audio_resample_init() instead.
- */
-attribute_deprecated ReSampleContext *audio_resample_init(int output_channels, int input_channels,
- int output_rate, int input_rate);
-#endif
-/**
- * Initialize audio resampling context
- *
- * @param output_channels number of output channels
- * @param input_channels number of input channels
- * @param output_rate output sample rate
- * @param input_rate input sample rate
- * @param sample_fmt_out requested output sample format
- * @param sample_fmt_in input sample format
- * @param filter_length length of each FIR filter in the filterbank relative to the cutoff freq
- * @param log2_phase_count log2 of the number of entries in the polyphase filterbank
- * @param linear If 1 then the used FIR filter will be linearly interpolated
- between the 2 closest, if 0 the closest will be used
- * @param cutoff cutoff frequency, 1.0 corresponds to half the output sampling rate
- * @return allocated ReSampleContext, NULL if error occured
- */
-ReSampleContext *av_audio_resample_init(int output_channels, int input_channels,
- int output_rate, int input_rate,
- enum SampleFormat sample_fmt_out,
- enum SampleFormat sample_fmt_in,
- int filter_length, int log2_phase_count,
- int linear, double cutoff);
-
-int audio_resample(ReSampleContext *s, short *output, short *input, int nb_samples);
-void audio_resample_close(ReSampleContext *s);
-
-
-/**
- * Initialize an audio resampler.
- * Note, if either rate is not an integer then simply scale both rates up so they are.
- * @param filter_length length of each FIR filter in the filterbank relative to the cutoff freq
- * @param log2_phase_count log2 of the number of entries in the polyphase filterbank
- * @param linear If 1 then the used FIR filter will be linearly interpolated
- between the 2 closest, if 0 the closest will be used
- * @param cutoff cutoff frequency, 1.0 corresponds to half the output sampling rate
- */
-struct AVResampleContext *av_resample_init(int out_rate, int in_rate, int filter_length, int log2_phase_count, int linear, double cutoff);
-
-/**
- * Resample an array of samples using a previously configured context.
- * @param src an array of unconsumed samples
- * @param consumed the number of samples of src which have been consumed are returned here
- * @param src_size the number of unconsumed samples available
- * @param dst_size the amount of space in samples available in dst
- * @param update_ctx If this is 0 then the context will not be modified, that way several channels can be resampled with the same context.
- * @return the number of samples written in dst or -1 if an error occurred
- */
-int av_resample(struct AVResampleContext *c, short *dst, short *src, int *consumed, int src_size, int dst_size, int update_ctx);
-
-
-/**
- * Compensate samplerate/timestamp drift. The compensation is done by changing
- * the resampler parameters, so no audible clicks or similar distortions occur
- * @param compensation_distance distance in output samples over which the compensation should be performed
- * @param sample_delta number of output samples which should be output less
- *
- * example: av_resample_compensate(c, 10, 500)
- * here instead of 510 samples only 500 samples would be output
- *
- * note, due to rounding the actual compensation might be slightly different,
- * especially if the compensation_distance is large and the in_rate used during init is small
- */
-void av_resample_compensate(struct AVResampleContext *c, int sample_delta, int compensation_distance);
-void av_resample_close(struct AVResampleContext *c);
-
-/**
- * Allocate memory for a picture. Call avpicture_free to free it.
- *
- * @param picture the picture to be filled in
- * @param pix_fmt the format of the picture
- * @param width the width of the picture
- * @param height the height of the picture
- * @return zero if successful, a negative value if not
- */
-int avpicture_alloc(AVPicture *picture, enum PixelFormat pix_fmt, int width, int height);
-
-/**
- * Free a picture previously allocated by avpicture_alloc().
- *
- * @param picture the AVPicture to be freed
- */
-void avpicture_free(AVPicture *picture);
-
-/**
- * Fill in the AVPicture fields.
- * The fields of the given AVPicture are filled in by using the 'ptr' address
- * which points to the image data buffer. Depending on the specified picture
- * format, one or multiple image data pointers and line sizes will be set.
- * If a planar format is specified, several pointers will be set pointing to
- * the different picture planes and the line sizes of the different planes
- * will be stored in the lines_sizes array.
- * Call with ptr == NULL to get the required size for the ptr buffer.
- *
- * @param picture AVPicture whose fields are to be filled in
- * @param ptr Buffer which will contain or contains the actual image data
- * @param pix_fmt The format in which the picture data is stored.
- * @param width the width of the image in pixels
- * @param height the height of the image in pixels
- * @return size of the image data in bytes
- */
-int avpicture_fill(AVPicture *picture, uint8_t *ptr,
- enum PixelFormat pix_fmt, int width, int height);
-int avpicture_layout(const AVPicture* src, enum PixelFormat pix_fmt, int width, int height,
- unsigned char *dest, int dest_size);
-
-/**
- * Calculate the size in bytes that a picture of the given width and height
- * would occupy if stored in the given picture format.
- * Note that this returns the size of a compact representation as generated
- * by avpicture_layout, which can be smaller than the size required for e.g.
- * avpicture_fill.
- *
- * @param pix_fmt the given picture format
- * @param width the width of the image
- * @param height the height of the image
- * @return Image data size in bytes or -1 on error (e.g. too large dimensions).
- */
-int avpicture_get_size(enum PixelFormat pix_fmt, int width, int height);
-void avcodec_get_chroma_sub_sample(enum PixelFormat pix_fmt, int *h_shift, int *v_shift);
-const char *avcodec_get_pix_fmt_name(enum PixelFormat pix_fmt);
-void avcodec_set_dimensions(AVCodecContext *s, int width, int height);
-
-#if LIBAVCODEC_VERSION_MAJOR < 53
-/**
- * Return the pixel format corresponding to the name name.
- *
- * If there is no pixel format with name name, then look for a
- * pixel format with the name corresponding to the native endian
- * format of name.
- * For example in a little-endian system, first look for "gray16",
- * then for "gray16le".
- *
- * Finally if no pixel format has been found, return PIX_FMT_NONE.
- *
- * @deprecated Deprecated in favor of av_get_pix_fmt().
- */
-attribute_deprecated enum PixelFormat avcodec_get_pix_fmt(const char* name);
-#endif
-
-/**
- * Return a value representing the fourCC code associated to the
- * pixel format pix_fmt, or 0 if no associated fourCC code can be
- * found.
- */
-unsigned int avcodec_pix_fmt_to_codec_tag(enum PixelFormat pix_fmt);
-
-/**
- * Put a string representing the codec tag codec_tag in buf.
- *
- * @param buf_size size in bytes of buf
- * @return the length of the string that would have been generated if
- * enough space had been available, excluding the trailing null
- */
-size_t av_get_codec_tag_string(char *buf, size_t buf_size, unsigned int codec_tag);
-
-#define FF_LOSS_RESOLUTION 0x0001 /**< loss due to resolution change */
-#define FF_LOSS_DEPTH 0x0002 /**< loss due to color depth change */
-#define FF_LOSS_COLORSPACE 0x0004 /**< loss due to color space conversion */
-#define FF_LOSS_ALPHA 0x0008 /**< loss of alpha bits */
-#define FF_LOSS_COLORQUANT 0x0010 /**< loss due to color quantization */
-#define FF_LOSS_CHROMA 0x0020 /**< loss of chroma (e.g. RGB to gray conversion) */
-
-/**
- * Compute what kind of losses will occur when converting from one specific
- * pixel format to another.
- * When converting from one pixel format to another, information loss may occur.
- * For example, when converting from RGB24 to GRAY, the color information will
- * be lost. Similarly, other losses occur when converting from some formats to
- * other formats. These losses can involve loss of chroma, but also loss of
- * resolution, loss of color depth, loss due to the color space conversion, loss
- * of the alpha bits or loss due to color quantization.
- * avcodec_get_fix_fmt_loss() informs you about the various types of losses
- * which will occur when converting from one pixel format to another.
- *
- * @param[in] dst_pix_fmt destination pixel format
- * @param[in] src_pix_fmt source pixel format
- * @param[in] has_alpha Whether the source pixel format alpha channel is used.
- * @return Combination of flags informing you what kind of losses will occur.
- */
-int avcodec_get_pix_fmt_loss(enum PixelFormat dst_pix_fmt, enum PixelFormat src_pix_fmt,
- int has_alpha);
-
-/**
- * Find the best pixel format to convert to given a certain source pixel
- * format. When converting from one pixel format to another, information loss
- * may occur. For example, when converting from RGB24 to GRAY, the color
- * information will be lost. Similarly, other losses occur when converting from
- * some formats to other formats. avcodec_find_best_pix_fmt() searches which of
- * the given pixel formats should be used to suffer the least amount of loss.
- * The pixel formats from which it chooses one, are determined by the
- * pix_fmt_mask parameter.
- *
- * @code
- * src_pix_fmt = PIX_FMT_YUV420P;
- * pix_fmt_mask = (1 << PIX_FMT_YUV422P) || (1 << PIX_FMT_RGB24);
- * dst_pix_fmt = avcodec_find_best_pix_fmt(pix_fmt_mask, src_pix_fmt, alpha, &loss);
- * @endcode
- *
- * @param[in] pix_fmt_mask bitmask determining which pixel format to choose from
- * @param[in] src_pix_fmt source pixel format
- * @param[in] has_alpha Whether the source pixel format alpha channel is used.
- * @param[out] loss_ptr Combination of flags informing you what kind of losses will occur.
- * @return The best pixel format to convert to or -1 if none was found.
- */
-enum PixelFormat avcodec_find_best_pix_fmt(int64_t pix_fmt_mask, enum PixelFormat src_pix_fmt,
- int has_alpha, int *loss_ptr);
-
-
-/**
- * Print in buf the string corresponding to the pixel format with
- * number pix_fmt, or an header if pix_fmt is negative.
- *
- * @param[in] buf the buffer where to write the string
- * @param[in] buf_size the size of buf
- * @param[in] pix_fmt the number of the pixel format to print the corresponding info string, or
- * a negative value to print the corresponding header.
- * Meaningful values for obtaining a pixel format info vary from 0 to PIX_FMT_NB -1.
- */
-void avcodec_pix_fmt_string (char *buf, int buf_size, enum PixelFormat pix_fmt);
-
-#define FF_ALPHA_TRANSP 0x0001 /* image has some totally transparent pixels */
-#define FF_ALPHA_SEMI_TRANSP 0x0002 /* image has some transparent pixels */
-
-/**
- * Tell if an image really has transparent alpha values.
- * @return ored mask of FF_ALPHA_xxx constants
- */
-int img_get_alpha_info(const AVPicture *src,
- enum PixelFormat pix_fmt, int width, int height);
-
-/* deinterlace a picture */
-/* deinterlace - if not supported return -1 */
-int avpicture_deinterlace(AVPicture *dst, const AVPicture *src,
- enum PixelFormat pix_fmt, int width, int height);
-
-/* external high level API */
-
-/**
- * If c is NULL, returns the first registered codec,
- * if c is non-NULL, returns the next registered codec after c,
- * or NULL if c is the last one.
- */
-AVCodec *av_codec_next(AVCodec *c);
-
-/**
- * Return the LIBAVCODEC_VERSION_INT constant.
- */
-unsigned avcodec_version(void);
-
-/**
- * Return the libavcodec build-time configuration.
- */
-const char *avcodec_configuration(void);
-
-/**
- * Return the libavcodec license.
- */
-const char *avcodec_license(void);
-
-/**
- * Initialize libavcodec.
- *
- * @warning This function must be called before any other libavcodec
- * function.
- */
-void avcodec_init(void);
-
-#if LIBAVCODEC_VERSION_MAJOR < 53
-/**
- * @deprecated Deprecated in favor of avcodec_register().
- */
-attribute_deprecated void register_avcodec(AVCodec *codec);
-#endif
-
-/**
- * Register the codec codec and initialize libavcodec.
- *
- * @see avcodec_init()
- */
-void avcodec_register(AVCodec *codec);
-
-/**
- * Find a registered encoder with a matching codec ID.
- *
- * @param id CodecID of the requested encoder
- * @return An encoder if one was found, NULL otherwise.
- */
-AVCodec *avcodec_find_encoder(enum CodecID id);
-
-/**
- * Find a registered encoder with the specified name.
- *
- * @param name name of the requested encoder
- * @return An encoder if one was found, NULL otherwise.
- */
-AVCodec *avcodec_find_encoder_by_name(const char *name);
-
-/**
- * Find a registered decoder with a matching codec ID.
- *
- * @param id CodecID of the requested decoder
- * @return A decoder if one was found, NULL otherwise.
- */
-AVCodec *avcodec_find_decoder(enum CodecID id);
-
-/**
- * Find a registered decoder with the specified name.
- *
- * @param name name of the requested decoder
- * @return A decoder if one was found, NULL otherwise.
- */
-AVCodec *avcodec_find_decoder_by_name(const char *name);
-void avcodec_string(char *buf, int buf_size, AVCodecContext *enc, int encode);
-
-/**
- * Set the fields of the given AVCodecContext to default values.
- *
- * @param s The AVCodecContext of which the fields should be set to default values.
- */
-void avcodec_get_context_defaults(AVCodecContext *s);
-
-/** THIS FUNCTION IS NOT YET PART OF THE PUBLIC API!
- * we WILL change its arguments and name a few times! */
-void avcodec_get_context_defaults2(AVCodecContext *s, enum AVMediaType);
-
-/**
- * Allocate an AVCodecContext and set its fields to default values. The
- * resulting struct can be deallocated by simply calling av_free().
- *
- * @return An AVCodecContext filled with default values or NULL on failure.
- * @see avcodec_get_context_defaults
- */
-AVCodecContext *avcodec_alloc_context(void);
-
-/** THIS FUNCTION IS NOT YET PART OF THE PUBLIC API!
- * we WILL change its arguments and name a few times! */
-AVCodecContext *avcodec_alloc_context2(enum AVMediaType);
-
-/**
- * Copy the settings of the source AVCodecContext into the destination
- * AVCodecContext. The resulting destination codec context will be
- * unopened, i.e. you are required to call avcodec_open() before you
- * can use this AVCodecContext to decode/encode video/audio data.
- *
- * @param dest target codec context, should be initialized with
- * avcodec_alloc_context(), but otherwise uninitialized
- * @param src source codec context
- * @return AVERROR() on error (e.g. memory allocation error), 0 on success
- */
-int avcodec_copy_context(AVCodecContext *dest, const AVCodecContext *src);
-
-/**
- * Set the fields of the given AVFrame to default values.
- *
- * @param pic The AVFrame of which the fields should be set to default values.
- */
-void avcodec_get_frame_defaults(AVFrame *pic);
-
-/**
- * Allocate an AVFrame and set its fields to default values. The resulting
- * struct can be deallocated by simply calling av_free().
- *
- * @return An AVFrame filled with default values or NULL on failure.
- * @see avcodec_get_frame_defaults
- */
-AVFrame *avcodec_alloc_frame(void);
-
-int avcodec_default_get_buffer(AVCodecContext *s, AVFrame *pic);
-void avcodec_default_release_buffer(AVCodecContext *s, AVFrame *pic);
-int avcodec_default_reget_buffer(AVCodecContext *s, AVFrame *pic);
-
-/**
- * Return the amount of padding in pixels which the get_buffer callback must
- * provide around the edge of the image for codecs which do not have the
- * CODEC_FLAG_EMU_EDGE flag.
- *
- * @return Required padding in pixels.
- */
-unsigned avcodec_get_edge_width(void);
-/**
- * Modify width and height values so that they will result in a memory
- * buffer that is acceptable for the codec if you do not use any horizontal
- * padding.
- *
- * May only be used if a codec with CODEC_CAP_DR1 has been opened.
- * If CODEC_FLAG_EMU_EDGE is not set, the dimensions must have been increased
- * according to avcodec_get_edge_width() before.
- */
-void avcodec_align_dimensions(AVCodecContext *s, int *width, int *height);
-/**
- * Modify width and height values so that they will result in a memory
- * buffer that is acceptable for the codec if you also ensure that all
- * line sizes are a multiple of the respective linesize_align[i].
- *
- * May only be used if a codec with CODEC_CAP_DR1 has been opened.
- * If CODEC_FLAG_EMU_EDGE is not set, the dimensions must have been increased
- * according to avcodec_get_edge_width() before.
- */
-void avcodec_align_dimensions2(AVCodecContext *s, int *width, int *height,
- int linesize_align[4]);
-
-/**
- * Check if the given dimension of a picture is valid, meaning that all
- * bytes of the picture can be addressed with a signed int.
- *
- * @param[in] w Width of the picture.
- * @param[in] h Height of the picture.
- * @return Zero if valid, a negative value if invalid.
- */
-int avcodec_check_dimensions(void *av_log_ctx, unsigned int w, unsigned int h);
-enum PixelFormat avcodec_default_get_format(struct AVCodecContext *s, const enum PixelFormat * fmt);
-
-int avcodec_thread_init(AVCodecContext *s, int thread_count);
-void avcodec_thread_free(AVCodecContext *s);
-int avcodec_default_execute(AVCodecContext *c, int (*func)(AVCodecContext *c2, void *arg2),void *arg, int *ret, int count, int size);
-int avcodec_default_execute2(AVCodecContext *c, int (*func)(AVCodecContext *c2, void *arg2, int, int),void *arg, int *ret, int count);
-//FIXME func typedef
-
-/**
- * Initialize the AVCodecContext to use the given AVCodec. Prior to using this
- * function the context has to be allocated.
- *
- * The functions avcodec_find_decoder_by_name(), avcodec_find_encoder_by_name(),
- * avcodec_find_decoder() and avcodec_find_encoder() provide an easy way for
- * retrieving a codec.
- *
- * @warning This function is not thread safe!
- *
- * @code
- * avcodec_register_all();
- * codec = avcodec_find_decoder(CODEC_ID_H264);
- * if (!codec)
- * exit(1);
- *
- * context = avcodec_alloc_context();
- *
- * if (avcodec_open(context, codec) < 0)
- * exit(1);
- * @endcode
- *
- * @param avctx The context which will be set up to use the given codec.
- * @param codec The codec to use within the context.
- * @return zero on success, a negative value on error
- * @see avcodec_alloc_context, avcodec_find_decoder, avcodec_find_encoder
- */
-int avcodec_open(AVCodecContext *avctx, AVCodec *codec);
-
-#if LIBAVCODEC_VERSION_MAJOR < 53
-/**
- * Decode an audio frame from buf into samples.
- * Wrapper function which calls avcodec_decode_audio3.
- *
- * @deprecated Use avcodec_decode_audio3 instead.
- * @param avctx the codec context
- * @param[out] samples the output buffer
- * @param[in,out] frame_size_ptr the output buffer size in bytes
- * @param[in] buf the input buffer
- * @param[in] buf_size the input buffer size in bytes
- * @return On error a negative value is returned, otherwise the number of bytes
- * used or zero if no frame could be decompressed.
- */
-attribute_deprecated int avcodec_decode_audio2(AVCodecContext *avctx, int16_t *samples,
- int *frame_size_ptr,
- const uint8_t *buf, int buf_size);
-#endif
-
-/**
- * Decode the audio frame of size avpkt->size from avpkt->data into samples.
- * Some decoders may support multiple frames in a single AVPacket, such
- * decoders would then just decode the first frame. In this case,
- * avcodec_decode_audio3 has to be called again with an AVPacket that contains
- * the remaining data in order to decode the second frame etc.
- * If no frame
- * could be outputted, frame_size_ptr is zero. Otherwise, it is the
- * decompressed frame size in bytes.
- *
- * @warning You must set frame_size_ptr to the allocated size of the
- * output buffer before calling avcodec_decode_audio3().
- *
- * @warning The input buffer must be FF_INPUT_BUFFER_PADDING_SIZE larger than
- * the actual read bytes because some optimized bitstream readers read 32 or 64
- * bits at once and could read over the end.
- *
- * @warning The end of the input buffer avpkt->data should be set to 0 to ensure that
- * no overreading happens for damaged MPEG streams.
- *
- * @note You might have to align the input buffer avpkt->data and output buffer
- * samples. The alignment requirements depend on the CPU: On some CPUs it isn't
- * necessary at all, on others it won't work at all if not aligned and on others
- * it will work but it will have an impact on performance.
- *
- * In practice, avpkt->data should have 4 byte alignment at minimum and
- * samples should be 16 byte aligned unless the CPU doesn't need it
- * (AltiVec and SSE do).
- *
- * @param avctx the codec context
- * @param[out] samples the output buffer, sample type in avctx->sample_fmt
- * @param[in,out] frame_size_ptr the output buffer size in bytes
- * @param[in] avpkt The input AVPacket containing the input buffer.
- * You can create such packet with av_init_packet() and by then setting
- * data and size, some decoders might in addition need other fields.
- * All decoders are designed to use the least fields possible though.
- * @return On error a negative value is returned, otherwise the number of bytes
- * used or zero if no frame data was decompressed (used) from the input AVPacket.
- */
-int avcodec_decode_audio3(AVCodecContext *avctx, int16_t *samples,
- int *frame_size_ptr,
- AVPacket *avpkt);
-
-#if LIBAVCODEC_VERSION_MAJOR < 53
-/**
- * Decode a video frame from buf into picture.
- * Wrapper function which calls avcodec_decode_video2.
- *
- * @deprecated Use avcodec_decode_video2 instead.
- * @param avctx the codec context
- * @param[out] picture The AVFrame in which the decoded video frame will be stored.
- * @param[in] buf the input buffer
- * @param[in] buf_size the size of the input buffer in bytes
- * @param[in,out] got_picture_ptr Zero if no frame could be decompressed, otherwise, it is nonzero.
- * @return On error a negative value is returned, otherwise the number of bytes
- * used or zero if no frame could be decompressed.
- */
-attribute_deprecated int avcodec_decode_video(AVCodecContext *avctx, AVFrame *picture,
- int *got_picture_ptr,
- const uint8_t *buf, int buf_size);
-#endif
-
-/**
- * Decode the video frame of size avpkt->size from avpkt->data into picture.
- * Some decoders may support multiple frames in a single AVPacket, such
- * decoders would then just decode the first frame.
- *
- * @warning The input buffer must be FF_INPUT_BUFFER_PADDING_SIZE larger than
- * the actual read bytes because some optimized bitstream readers read 32 or 64
- * bits at once and could read over the end.
- *
- * @warning The end of the input buffer buf should be set to 0 to ensure that
- * no overreading happens for damaged MPEG streams.
- *
- * @note You might have to align the input buffer avpkt->data.
- * The alignment requirements depend on the CPU: on some CPUs it isn't
- * necessary at all, on others it won't work at all if not aligned and on others
- * it will work but it will have an impact on performance.
- *
- * In practice, avpkt->data should have 4 byte alignment at minimum.
- *
- * @note Some codecs have a delay between input and output, these need to be
- * fed with avpkt->data=NULL, avpkt->size=0 at the end to return the remaining frames.
- *
- * @param avctx the codec context
- * @param[out] picture The AVFrame in which the decoded video frame will be stored.
- * Use avcodec_alloc_frame to get an AVFrame, the codec will
- * allocate memory for the actual bitmap.
- * with default get/release_buffer(), the decoder frees/reuses the bitmap as it sees fit.
- * with overridden get/release_buffer() (needs CODEC_CAP_DR1) the user decides into what buffer the decoder
- * decodes and the decoder tells the user once it does not need the data anymore,
- * the user app can at this point free/reuse/keep the memory as it sees fit.
- *
- * @param[in] avpkt The input AVpacket containing the input buffer.
- * You can create such packet with av_init_packet() and by then setting
- * data and size, some decoders might in addition need other fields like
- * flags&AV_PKT_FLAG_KEY. All decoders are designed to use the least
- * fields possible.
- * @param[in,out] got_picture_ptr Zero if no frame could be decompressed, otherwise, it is nonzero.
- * @return On error a negative value is returned, otherwise the number of bytes
- * used or zero if no frame could be decompressed.
- */
-int avcodec_decode_video2(AVCodecContext *avctx, AVFrame *picture,
- int *got_picture_ptr,
- AVPacket *avpkt);
-
-#if LIBAVCODEC_VERSION_MAJOR < 53
-/* Decode a subtitle message. Return -1 if error, otherwise return the
- * number of bytes used. If no subtitle could be decompressed,
- * got_sub_ptr is zero. Otherwise, the subtitle is stored in *sub. */
-attribute_deprecated int avcodec_decode_subtitle(AVCodecContext *avctx, AVSubtitle *sub,
- int *got_sub_ptr,
- const uint8_t *buf, int buf_size);
-#endif
-
-/**
- * Decode a subtitle message.
- * Return a negative value on error, otherwise return the number of bytes used.
- * If no subtitle could be decompressed, got_sub_ptr is zero.
- * Otherwise, the subtitle is stored in *sub.
- * Note that CODEC_CAP_DR1 is not available for subtitle codecs. This is for
- * simplicity, because the performance difference is expect to be negligible
- * and reusing a get_buffer written for video codecs would probably perform badly
- * due to a potentially very different allocation pattern.
- *
- * @param avctx the codec context
- * @param[out] sub The AVSubtitle in which the decoded subtitle will be stored, must be
- freed with avsubtitle_free if *got_sub_ptr is set.
- * @param[in,out] got_sub_ptr Zero if no subtitle could be decompressed, otherwise, it is nonzero.
- * @param[in] avpkt The input AVPacket containing the input buffer.
- */
-int avcodec_decode_subtitle2(AVCodecContext *avctx, AVSubtitle *sub,
- int *got_sub_ptr,
- AVPacket *avpkt);
-
-/**
- * Frees all allocated data in the given subtitle struct.
- *
- * @param sub AVSubtitle to free.
- */
-void avsubtitle_free(AVSubtitle *sub);
-
-int avcodec_parse_frame(AVCodecContext *avctx, uint8_t **pdata,
- int *data_size_ptr,
- uint8_t *buf, int buf_size);
-
-/**
- * Encode an audio frame from samples into buf.
- *
- * @note The output buffer should be at least FF_MIN_BUFFER_SIZE bytes large.
- * However, for PCM audio the user will know how much space is needed
- * because it depends on the value passed in buf_size as described
- * below. In that case a lower value can be used.
- *
- * @param avctx the codec context
- * @param[out] buf the output buffer
- * @param[in] buf_size the output buffer size
- * @param[in] samples the input buffer containing the samples
- * The number of samples read from this buffer is frame_size*channels,
- * both of which are defined in avctx.
- * For PCM audio the number of samples read from samples is equal to
- * buf_size * input_sample_size / output_sample_size.
- * @return On error a negative value is returned, on success zero or the number
- * of bytes used to encode the data read from the input buffer.
- */
-int avcodec_encode_audio(AVCodecContext *avctx, uint8_t *buf, int buf_size,
- const short *samples);
-
-/**
- * Encode a video frame from pict into buf.
- * The input picture should be
- * stored using a specific format, namely avctx.pix_fmt.
- *
- * @param avctx the codec context
- * @param[out] buf the output buffer for the bitstream of encoded frame
- * @param[in] buf_size the size of the output buffer in bytes
- * @param[in] pict the input picture to encode
- * @return On error a negative value is returned, on success zero or the number
- * of bytes used from the output buffer.
- */
-int avcodec_encode_video(AVCodecContext *avctx, uint8_t *buf, int buf_size,
- const AVFrame *pict);
-int avcodec_encode_subtitle(AVCodecContext *avctx, uint8_t *buf, int buf_size,
- const AVSubtitle *sub);
-
-int avcodec_close(AVCodecContext *avctx);
-
-/**
- * Register all the codecs, parsers and bitstream filters which were enabled at
- * configuration time. If you do not call this function you can select exactly
- * which formats you want to support, by using the individual registration
- * functions.
- *
- * @see avcodec_register
- * @see av_register_codec_parser
- * @see av_register_bitstream_filter
- */
-void avcodec_register_all(void);
-
-/**
- * Flush buffers, should be called when seeking or when switching to a different stream.
- */
-void avcodec_flush_buffers(AVCodecContext *avctx);
-
-void avcodec_default_free_buffers(AVCodecContext *s);
-
-/* misc useful functions */
-
-/**
- * Return a single letter to describe the given picture type pict_type.
- *
- * @param[in] pict_type the picture type
- * @return A single character representing the picture type.
- */
-char av_get_pict_type_char(int pict_type);
-
-/**
- * Return codec bits per sample.
- *
- * @param[in] codec_id the codec
- * @return Number of bits per sample or zero if unknown for the given codec.
- */
-int av_get_bits_per_sample(enum CodecID codec_id);
-
-/**
- * Return sample format bits per sample.
- *
- * @param[in] sample_fmt the sample format
- * @return Number of bits per sample or zero if unknown for the given sample format.
- */
-int av_get_bits_per_sample_format(enum SampleFormat sample_fmt);
-
-/* frame parsing */
-typedef struct AVCodecParserContext {
- void *priv_data;
- struct AVCodecParser *parser;
- int64_t frame_offset; /* offset of the current frame */
- int64_t cur_offset; /* current offset
- (incremented by each av_parser_parse()) */
- int64_t next_frame_offset; /* offset of the next frame */
- /* video info */
- int pict_type; /* XXX: Put it back in AVCodecContext. */
- /**
- * This field is used for proper frame duration computation in lavf.
- * It signals, how much longer the frame duration of the current frame
- * is compared to normal frame duration.
- *
- * frame_duration = (1 + repeat_pict) * time_base
- *
- * It is used by codecs like H.264 to display telecined material.
- */
- int repeat_pict; /* XXX: Put it back in AVCodecContext. */
- int64_t pts; /* pts of the current frame */
- int64_t dts; /* dts of the current frame */
-
- /* private data */
- int64_t last_pts;
- int64_t last_dts;
- int fetch_timestamp;
-
-#define AV_PARSER_PTS_NB 4
- int cur_frame_start_index;
- int64_t cur_frame_offset[AV_PARSER_PTS_NB];
- int64_t cur_frame_pts[AV_PARSER_PTS_NB];
- int64_t cur_frame_dts[AV_PARSER_PTS_NB];
-
- int flags;
-#define PARSER_FLAG_COMPLETE_FRAMES 0x0001
-#define PARSER_FLAG_ONCE 0x0002
-
- int64_t offset; ///< byte offset from starting packet start
- int64_t cur_frame_end[AV_PARSER_PTS_NB];
-
- /*!
- * Set by parser to 1 for key frames and 0 for non-key frames.
- * It is initialized to -1, so if the parser doesn't set this flag,
- * old-style fallback using FF_I_TYPE picture type as key frames
- * will be used.
- */
- int key_frame;
-
- /**
- * Time difference in stream time base units from the pts of this
- * packet to the point at which the output from the decoder has converged
- * independent from the availability of previous frames. That is, the
- * frames are virtually identical no matter if decoding started from
- * the very first frame or from this keyframe.
- * Is AV_NOPTS_VALUE if unknown.
- * This field is not the display duration of the current frame.
- * This field has no meaning if the packet does not have AV_PKT_FLAG_KEY
- * set.
- *
- * The purpose of this field is to allow seeking in streams that have no
- * keyframes in the conventional sense. It corresponds to the
- * recovery point SEI in H.264 and match_time_delta in NUT. It is also
- * essential for some types of subtitle streams to ensure that all
- * subtitles are correctly displayed after seeking.
- */
- int64_t convergence_duration;
-
- // Timestamp generation support:
- /**
- * Synchronization point for start of timestamp generation.
- *
- * Set to >0 for sync point, 0 for no sync point and <0 for undefined
- * (default).
- *
- * For example, this corresponds to presence of H.264 buffering period
- * SEI message.
- */
- int dts_sync_point;
-
- /**
- * Offset of the current timestamp against last timestamp sync point in
- * units of AVCodecContext.time_base.
- *
- * Set to INT_MIN when dts_sync_point unused. Otherwise, it must
- * contain a valid timestamp offset.
- *
- * Note that the timestamp of sync point has usually a nonzero
- * dts_ref_dts_delta, which refers to the previous sync point. Offset of
- * the next frame after timestamp sync point will be usually 1.
- *
- * For example, this corresponds to H.264 cpb_removal_delay.
- */
- int dts_ref_dts_delta;
-
- /**
- * Presentation delay of current frame in units of AVCodecContext.time_base.
- *
- * Set to INT_MIN when dts_sync_point unused. Otherwise, it must
- * contain valid non-negative timestamp delta (presentation time of a frame
- * must not lie in the past).
- *
- * This delay represents the difference between decoding and presentation
- * time of the frame.
- *
- * For example, this corresponds to H.264 dpb_output_delay.
- */
- int pts_dts_delta;
-
- /**
- * Position of the packet in file.
- *
- * Analogous to cur_frame_pts/dts
- */
- int64_t cur_frame_pos[AV_PARSER_PTS_NB];
-
- /**
- * Byte position of currently parsed frame in stream.
- */
- int64_t pos;
-
- /**
- * Previous frame byte position.
- */
- int64_t last_pos;
-} AVCodecParserContext;
-
-typedef struct AVCodecParser {
- int codec_ids[5]; /* several codec IDs are permitted */
- int priv_data_size;
- int (*parser_init)(AVCodecParserContext *s);
- int (*parser_parse)(AVCodecParserContext *s,
- AVCodecContext *avctx,
- const uint8_t **poutbuf, int *poutbuf_size,
- const uint8_t *buf, int buf_size);
- void (*parser_close)(AVCodecParserContext *s);
- int (*split)(AVCodecContext *avctx, const uint8_t *buf, int buf_size);
- struct AVCodecParser *next;
-} AVCodecParser;
-
-AVCodecParser *av_parser_next(AVCodecParser *c);
-
-void av_register_codec_parser(AVCodecParser *parser);
-AVCodecParserContext *av_parser_init(int codec_id);
-
-#if LIBAVCODEC_VERSION_MAJOR < 53
-attribute_deprecated
-int av_parser_parse(AVCodecParserContext *s,
- AVCodecContext *avctx,
- uint8_t **poutbuf, int *poutbuf_size,
- const uint8_t *buf, int buf_size,
- int64_t pts, int64_t dts);
-#endif
-
-/**
- * Parse a packet.
- *
- * @param s parser context.
- * @param avctx codec context.
- * @param poutbuf set to pointer to parsed buffer or NULL if not yet finished.
- * @param poutbuf_size set to size of parsed buffer or zero if not yet finished.
- * @param buf input buffer.
- * @param buf_size input length, to signal EOF, this should be 0 (so that the last frame can be output).
- * @param pts input presentation timestamp.
- * @param dts input decoding timestamp.
- * @param pos input byte position in stream.
- * @return the number of bytes of the input bitstream used.
- *
- * Example:
- * @code
- * while(in_len){
- * len = av_parser_parse2(myparser, AVCodecContext, &data, &size,
- * in_data, in_len,
- * pts, dts, pos);
- * in_data += len;
- * in_len -= len;
- *
- * if(size)
- * decode_frame(data, size);
- * }
- * @endcode
- */
-int av_parser_parse2(AVCodecParserContext *s,
- AVCodecContext *avctx,
- uint8_t **poutbuf, int *poutbuf_size,
- const uint8_t *buf, int buf_size,
- int64_t pts, int64_t dts,
- int64_t pos);
-
-int av_parser_change(AVCodecParserContext *s,
- AVCodecContext *avctx,
- uint8_t **poutbuf, int *poutbuf_size,
- const uint8_t *buf, int buf_size, int keyframe);
-void av_parser_close(AVCodecParserContext *s);
-
-
-typedef struct AVBitStreamFilterContext {
- void *priv_data;
- struct AVBitStreamFilter *filter;
- AVCodecParserContext *parser;
- struct AVBitStreamFilterContext *next;
-} AVBitStreamFilterContext;
-
-
-typedef struct AVBitStreamFilter {
- const char *name;
- int priv_data_size;
- int (*filter)(AVBitStreamFilterContext *bsfc,
- AVCodecContext *avctx, const char *args,
- uint8_t **poutbuf, int *poutbuf_size,
- const uint8_t *buf, int buf_size, int keyframe);
- void (*close)(AVBitStreamFilterContext *bsfc);
- struct AVBitStreamFilter *next;
-} AVBitStreamFilter;
-
-void av_register_bitstream_filter(AVBitStreamFilter *bsf);
-AVBitStreamFilterContext *av_bitstream_filter_init(const char *name);
-int av_bitstream_filter_filter(AVBitStreamFilterContext *bsfc,
- AVCodecContext *avctx, const char *args,
- uint8_t **poutbuf, int *poutbuf_size,
- const uint8_t *buf, int buf_size, int keyframe);
-void av_bitstream_filter_close(AVBitStreamFilterContext *bsf);
-
-AVBitStreamFilter *av_bitstream_filter_next(AVBitStreamFilter *f);
-
-/* memory */
-
-/**
- * Reallocate the given block if it is not large enough, otherwise do nothing.
- *
- * @see av_realloc
- */
-void *av_fast_realloc(void *ptr, unsigned int *size, unsigned int min_size);
-
-/**
- * Allocate a buffer, reusing the given one if large enough.
- *
- * Contrary to av_fast_realloc the current buffer contents might not be
- * preserved and on error the old buffer is freed, thus no special
- * handling to avoid memleaks is necessary.
- *
- * @param ptr pointer to pointer to already allocated buffer, overwritten with pointer to new buffer
- * @param size size of the buffer *ptr points to
- * @param min_size minimum size of *ptr buffer after returning, *ptr will be NULL and
- * *size 0 if an error occurred.
- */
-void av_fast_malloc(void *ptr, unsigned int *size, unsigned int min_size);
-
-/**
- * Copy image 'src' to 'dst'.
- */
-void av_picture_copy(AVPicture *dst, const AVPicture *src,
- enum PixelFormat pix_fmt, int width, int height);
-
-/**
- * Crop image top and left side.
- */
-int av_picture_crop(AVPicture *dst, const AVPicture *src,
- enum PixelFormat pix_fmt, int top_band, int left_band);
-
-/**
- * Pad image.
- */
-int av_picture_pad(AVPicture *dst, const AVPicture *src, int height, int width, enum PixelFormat pix_fmt,
- int padtop, int padbottom, int padleft, int padright, int *color);
-
-/**
- * Encode extradata length to a buffer. Used by xiph codecs.
- *
- * @param s buffer to write to; must be at least (v/255+1) bytes long
- * @param v size of extradata in bytes
- * @return number of bytes written to the buffer.
- */
-unsigned int av_xiphlacing(unsigned char *s, unsigned int v);
-
-#if LIBAVCODEC_VERSION_MAJOR < 53
-/**
- * Parse str and put in width_ptr and height_ptr the detected values.
- *
- * @deprecated Deprecated in favor of av_parse_video_size().
- */
-attribute_deprecated int av_parse_video_frame_size(int *width_ptr, int *height_ptr, const char *str);
-
-/**
- * Parse str and store the detected values in *frame_rate.
- *
- * @deprecated Deprecated in favor of av_parse_video_rate().
- */
-attribute_deprecated int av_parse_video_frame_rate(AVRational *frame_rate, const char *str);
-#endif
-
-/**
- * Logs a generic warning message about a missing feature. This function is
- * intended to be used internally by FFmpeg (libavcodec, libavformat, etc.)
- * only, and would normally not be used by applications.
- * @param[in] avc a pointer to an arbitrary struct of which the first field is
- * a pointer to an AVClass struct
- * @param[in] feature string containing the name of the missing feature
- * @param[in] want_sample indicates if samples are wanted which exhibit this feature.
- * If want_sample is non-zero, additional verbage will be added to the log
- * message which tells the user how to report samples to the development
- * mailing list.
- */
-void av_log_missing_feature(void *avc, const char *feature, int want_sample);
-
-/**
- * Log a generic warning message asking for a sample. This function is
- * intended to be used internally by FFmpeg (libavcodec, libavformat, etc.)
- * only, and would normally not be used by applications.
- * @param[in] avc a pointer to an arbitrary struct of which the first field is
- * a pointer to an AVClass struct
- * @param[in] msg string containing an optional message, or NULL if no message
- */
-void av_log_ask_for_sample(void *avc, const char *msg);
-
-/**
- * Register the hardware accelerator hwaccel.
- */
-void av_register_hwaccel(AVHWAccel *hwaccel);
-
-/**
- * If hwaccel is NULL, returns the first registered hardware accelerator,
- * if hwaccel is non-NULL, returns the next registered hardware accelerator
- * after hwaccel, or NULL if hwaccel is the last one.
- */
-AVHWAccel *av_hwaccel_next(AVHWAccel *hwaccel);
-
-
-/**
- * Lock operation used by lockmgr
- */
-enum AVLockOp {
- AV_LOCK_CREATE, ///< Create a mutex
- AV_LOCK_OBTAIN, ///< Lock the mutex
- AV_LOCK_RELEASE, ///< Unlock the mutex
- AV_LOCK_DESTROY, ///< Free mutex resources
-};
-
-/**
- * Register a user provided lock manager supporting the operations
- * specified by AVLockOp. mutex points to a (void *) where the
- * lockmgr should store/get a pointer to a user allocated mutex. It's
- * NULL upon AV_LOCK_CREATE and != NULL for all other ops.
- *
- * @param cb User defined callback. Note: FFmpeg may invoke calls to this
- * callback during the call to av_lockmgr_register().
- * Thus, the application must be prepared to handle that.
- * If cb is set to NULL the lockmgr will be unregistered.
- * Also note that during unregistration the previously registered
- * lockmgr callback may also be invoked.
- */
-int av_lockmgr_register(int (*cb)(void **mutex, enum AVLockOp op));
-
-#endif /* AVCODEC_AVCODEC_H */
diff --git a/branches/1.0/thirdparties/android/include/libavcodec/avfft.h b/branches/1.0/thirdparties/android/include/libavcodec/avfft.h
deleted file mode 100644
index be2d9c7..0000000
--- a/branches/1.0/thirdparties/android/include/libavcodec/avfft.h
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVCODEC_AVFFT_H
-#define AVCODEC_AVFFT_H
-
-typedef float FFTSample;
-
-typedef struct FFTComplex {
- FFTSample re, im;
-} FFTComplex;
-
-typedef struct FFTContext FFTContext;
-
-/**
- * Set up a complex FFT.
- * @param nbits log2 of the length of the input array
- * @param inverse if 0 perform the forward transform, if 1 perform the inverse
- */
-FFTContext *av_fft_init(int nbits, int inverse);
-
-/**
- * Do the permutation needed BEFORE calling ff_fft_calc().
- */
-void av_fft_permute(FFTContext *s, FFTComplex *z);
-
-/**
- * Do a complex FFT with the parameters defined in av_fft_init(). The
- * input data must be permuted before. No 1.0/sqrt(n) normalization is done.
- */
-void av_fft_calc(FFTContext *s, FFTComplex *z);
-
-void av_fft_end(FFTContext *s);
-
-FFTContext *av_mdct_init(int nbits, int inverse, double scale);
-void av_imdct_calc(FFTContext *s, FFTSample *output, const FFTSample *input);
-void av_imdct_half(FFTContext *s, FFTSample *output, const FFTSample *input);
-void av_mdct_calc(FFTContext *s, FFTSample *output, const FFTSample *input);
-void av_mdct_end(FFTContext *s);
-
-/* Real Discrete Fourier Transform */
-
-enum RDFTransformType {
- DFT_R2C,
- IDFT_C2R,
- IDFT_R2C,
- DFT_C2R,
-};
-
-typedef struct RDFTContext RDFTContext;
-
-/**
- * Set up a real FFT.
- * @param nbits log2 of the length of the input array
- * @param trans the type of transform
- */
-RDFTContext *av_rdft_init(int nbits, enum RDFTransformType trans);
-void av_rdft_calc(RDFTContext *s, FFTSample *data);
-void av_rdft_end(RDFTContext *s);
-
-/* Discrete Cosine Transform */
-
-typedef struct DCTContext DCTContext;
-
-enum DCTTransformType {
- DCT_II = 0,
- DCT_III,
- DCT_I,
- DST_I,
-};
-
-/**
- * Set up DCT.
- * @param nbits size of the input array:
- * (1 << nbits) for DCT-II, DCT-III and DST-I
- * (1 << nbits) + 1 for DCT-I
- *
- * @note the first element of the input of DST-I is ignored
- */
-DCTContext *av_dct_init(int nbits, enum DCTTransformType type);
-void av_dct_calc(DCTContext *s, FFTSample *data);
-void av_dct_end (DCTContext *s);
-
-#endif /* AVCODEC_AVFFT_H */
diff --git a/branches/1.0/thirdparties/android/include/libavcodec/dxva2.h b/branches/1.0/thirdparties/android/include/libavcodec/dxva2.h
deleted file mode 100644
index 5c5fe21..0000000
--- a/branches/1.0/thirdparties/android/include/libavcodec/dxva2.h
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * DXVA2 HW acceleration
- *
- * copyright (c) 2009 Laurent Aimar
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVCODEC_DXVA_H
-#define AVCODEC_DXVA_H
-
-#include <stdint.h>
-
-#include <dxva2api.h>
-
-/**
- * This structure is used to provides the necessary configurations and data
- * to the DXVA2 FFmpeg HWAccel implementation.
- *
- * The application must make it available as AVCodecContext.hwaccel_context.
- */
-struct dxva_context {
- /**
- * DXVA2 decoder object
- */
- IDirectXVideoDecoder *decoder;
-
- /**
- * DXVA2 configuration used to create the decoder
- */
- const DXVA2_ConfigPictureDecode *cfg;
-
- /**
- * The number of surface in the surface array
- */
- unsigned surface_count;
-
- /**
- * The array of Direct3D surfaces used to create the decoder
- */
- LPDIRECT3DSURFACE9 *surface;
-
- /**
- * A bit field configuring the workarounds needed for using the decoder
- */
- uint64_t workaround;
-
- /**
- * Private to the FFmpeg AVHWAccel implementation
- */
- unsigned report_id;
-};
-
-#endif /* AVCODEC_DXVA_H */
diff --git a/branches/1.0/thirdparties/android/include/libavcodec/opt.h b/branches/1.0/thirdparties/android/include/libavcodec/opt.h
deleted file mode 100644
index 6721469..0000000
--- a/branches/1.0/thirdparties/android/include/libavcodec/opt.h
+++ /dev/null
@@ -1,211 +0,0 @@
-/*
- * AVOptions
- * copyright (c) 2005 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVCODEC_OPT_H
-#define AVCODEC_OPT_H
-
-/**
- * @file
- * AVOptions
- */
-
-#include "libavutil/rational.h"
-#include "avcodec.h"
-
-enum AVOptionType{
- FF_OPT_TYPE_FLAGS,
- FF_OPT_TYPE_INT,
- FF_OPT_TYPE_INT64,
- FF_OPT_TYPE_DOUBLE,
- FF_OPT_TYPE_FLOAT,
- FF_OPT_TYPE_STRING,
- FF_OPT_TYPE_RATIONAL,
- FF_OPT_TYPE_BINARY, ///< offset must point to a pointer immediately followed by an int for the length
- FF_OPT_TYPE_CONST=128,
-};
-
-/**
- * AVOption
- */
-typedef struct AVOption {
- const char *name;
-
- /**
- * short English help text
- * @todo What about other languages?
- */
- const char *help;
-
- /**
- * The offset relative to the context structure where the option
- * value is stored. It should be 0 for named constants.
- */
- int offset;
- enum AVOptionType type;
-
- /**
- * the default value for scalar options
- */
- double default_val;
- double min; ///< minimum valid value for the option
- double max; ///< maximum valid value for the option
-
- int flags;
-#define AV_OPT_FLAG_ENCODING_PARAM 1 ///< a generic parameter which can be set by the user for muxing or encoding
-#define AV_OPT_FLAG_DECODING_PARAM 2 ///< a generic parameter which can be set by the user for demuxing or decoding
-#define AV_OPT_FLAG_METADATA 4 ///< some data extracted or inserted into the file like title, comment, ...
-#define AV_OPT_FLAG_AUDIO_PARAM 8
-#define AV_OPT_FLAG_VIDEO_PARAM 16
-#define AV_OPT_FLAG_SUBTITLE_PARAM 32
-//FIXME think about enc-audio, ... style flags
-
- /**
- * The logical unit to which the option belongs. Non-constant
- * options and corresponding named constants share the same
- * unit. May be NULL.
- */
- const char *unit;
-} AVOption;
-
-/**
- * AVOption2.
- * THIS IS NOT PART OF THE API/ABI YET!
- * This is identical to AVOption except that default_val was replaced by
- * an union, it should be compatible with AVOption on normal platforms.
- */
-typedef struct AVOption2 {
- const char *name;
-
- /**
- * short English help text
- * @todo What about other languages?
- */
- const char *help;
-
- /**
- * The offset relative to the context structure where the option
- * value is stored. It should be 0 for named constants.
- */
- int offset;
- enum AVOptionType type;
-
- /**
- * the default value for scalar options
- */
- union {
- double dbl;
- const char *str;
- } default_val;
-
- double min; ///< minimum valid value for the option
- double max; ///< maximum valid value for the option
-
- int flags;
-/*
-#define AV_OPT_FLAG_ENCODING_PARAM 1 ///< a generic parameter which can be set by the user for muxing or encoding
-#define AV_OPT_FLAG_DECODING_PARAM 2 ///< a generic parameter which can be set by the user for demuxing or decoding
-#define AV_OPT_FLAG_METADATA 4 ///< some data extracted or inserted into the file like title, comment, ...
-#define AV_OPT_FLAG_AUDIO_PARAM 8
-#define AV_OPT_FLAG_VIDEO_PARAM 16
-#define AV_OPT_FLAG_SUBTITLE_PARAM 32
-*/
-//FIXME think about enc-audio, ... style flags
-
- /**
- * The logical unit to which the option belongs. Non-constant
- * options and corresponding named constants share the same
- * unit. May be NULL.
- */
- const char *unit;
-} AVOption2;
-
-
-/**
- * Look for an option in obj. Look only for the options which
- * have the flags set as specified in mask and flags (that is,
- * for which it is the case that opt->flags & mask == flags).
- *
- * @param[in] obj a pointer to a struct whose first element is a
- * pointer to an AVClass
- * @param[in] name the name of the option to look for
- * @param[in] unit the unit of the option to look for, or any if NULL
- * @return a pointer to the option found, or NULL if no option
- * has been found
- */
-const AVOption *av_find_opt(void *obj, const char *name, const char *unit, int mask, int flags);
-
-#if LIBAVCODEC_VERSION_MAJOR < 53
-/**
- * @see av_set_string2()
- */
-attribute_deprecated const AVOption *av_set_string(void *obj, const char *name, const char *val);
-
-/**
- * @return a pointer to the AVOption corresponding to the field set or
- * NULL if no matching AVOption exists, or if the value val is not
- * valid
- * @see av_set_string3()
- */
-attribute_deprecated const AVOption *av_set_string2(void *obj, const char *name, const char *val, int alloc);
-#endif
-
-/**
- * Set the field of obj with the given name to value.
- *
- * @param[in] obj A struct whose first element is a pointer to an
- * AVClass.
- * @param[in] name the name of the field to set
- * @param[in] val The value to set. If the field is not of a string
- * type, then the given string is parsed.
- * SI postfixes and some named scalars are supported.
- * If the field is of a numeric type, it has to be a numeric or named
- * scalar. Behavior with more than one scalar and +- infix operators
- * is undefined.
- * If the field is of a flags type, it has to be a sequence of numeric
- * scalars or named flags separated by '+' or '-'. Prefixing a flag
- * with '+' causes it to be set without affecting the other flags;
- * similarly, '-' unsets a flag.
- * @param[out] o_out if non-NULL put here a pointer to the AVOption
- * found
- * @param alloc when 1 then the old value will be av_freed() and the
- * new av_strduped()
- * when 0 then no av_free() nor av_strdup() will be used
- * @return 0 if the value has been set, or an AVERROR code in case of
- * error:
- * AVERROR(ENOENT) if no matching option exists
- * AVERROR(ERANGE) if the value is out of range
- * AVERROR(EINVAL) if the value is not valid
- */
-int av_set_string3(void *obj, const char *name, const char *val, int alloc, const AVOption **o_out);
-
-const AVOption *av_set_double(void *obj, const char *name, double n);
-const AVOption *av_set_q(void *obj, const char *name, AVRational n);
-const AVOption *av_set_int(void *obj, const char *name, int64_t n);
-double av_get_double(void *obj, const char *name, const AVOption **o_out);
-AVRational av_get_q(void *obj, const char *name, const AVOption **o_out);
-int64_t av_get_int(void *obj, const char *name, const AVOption **o_out);
-const char *av_get_string(void *obj, const char *name, const AVOption **o_out, char *buf, int buf_len);
-const AVOption *av_next_option(void *obj, const AVOption *last);
-int av_opt_show(void *obj, void *av_log_obj);
-void av_opt_set_defaults(void *s);
-void av_opt_set_defaults2(void *s, int mask, int flags);
-
-#endif /* AVCODEC_OPT_H */
diff --git a/branches/1.0/thirdparties/android/include/libavcodec/vaapi.h b/branches/1.0/thirdparties/android/include/libavcodec/vaapi.h
deleted file mode 100644
index 07568a4..0000000
--- a/branches/1.0/thirdparties/android/include/libavcodec/vaapi.h
+++ /dev/null
@@ -1,167 +0,0 @@
-/*
- * Video Acceleration API (shared data between FFmpeg and the video player)
- * HW decode acceleration for MPEG-2, MPEG-4, H.264 and VC-1
- *
- * Copyright (C) 2008-2009 Splitted-Desktop Systems
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVCODEC_VAAPI_H
-#define AVCODEC_VAAPI_H
-
-#include <stdint.h>
-
-/**
- * \defgroup VAAPI_Decoding VA API Decoding
- * \ingroup Decoder
- * @{
- */
-
-/**
- * This structure is used to share data between the FFmpeg library and
- * the client video application.
- * This shall be zero-allocated and available as
- * AVCodecContext.hwaccel_context. All user members can be set once
- * during initialization or through each AVCodecContext.get_buffer()
- * function call. In any case, they must be valid prior to calling
- * decoding functions.
- */
-struct vaapi_context {
- /**
- * Window system dependent data
- *
- * - encoding: unused
- * - decoding: Set by user
- */
- void *display;
-
- /**
- * Configuration ID
- *
- * - encoding: unused
- * - decoding: Set by user
- */
- uint32_t config_id;
-
- /**
- * Context ID (video decode pipeline)
- *
- * - encoding: unused
- * - decoding: Set by user
- */
- uint32_t context_id;
-
- /**
- * VAPictureParameterBuffer ID
- *
- * - encoding: unused
- * - decoding: Set by libavcodec
- */
- uint32_t pic_param_buf_id;
-
- /**
- * VAIQMatrixBuffer ID
- *
- * - encoding: unused
- * - decoding: Set by libavcodec
- */
- uint32_t iq_matrix_buf_id;
-
- /**
- * VABitPlaneBuffer ID (for VC-1 decoding)
- *
- * - encoding: unused
- * - decoding: Set by libavcodec
- */
- uint32_t bitplane_buf_id;
-
- /**
- * Slice parameter/data buffer IDs
- *
- * - encoding: unused
- * - decoding: Set by libavcodec
- */
- uint32_t *slice_buf_ids;
-
- /**
- * Number of effective slice buffer IDs to send to the HW
- *
- * - encoding: unused
- * - decoding: Set by libavcodec
- */
- unsigned int n_slice_buf_ids;
-
- /**
- * Size of pre-allocated slice_buf_ids
- *
- * - encoding: unused
- * - decoding: Set by libavcodec
- */
- unsigned int slice_buf_ids_alloc;
-
- /**
- * Pointer to VASliceParameterBuffers
- *
- * - encoding: unused
- * - decoding: Set by libavcodec
- */
- void *slice_params;
-
- /**
- * Size of a VASliceParameterBuffer element
- *
- * - encoding: unused
- * - decoding: Set by libavcodec
- */
- unsigned int slice_param_size;
-
- /**
- * Size of pre-allocated slice_params
- *
- * - encoding: unused
- * - decoding: Set by libavcodec
- */
- unsigned int slice_params_alloc;
-
- /**
- * Number of slices currently filled in
- *
- * - encoding: unused
- * - decoding: Set by libavcodec
- */
- unsigned int slice_count;
-
- /**
- * Pointer to slice data buffer base
- * - encoding: unused
- * - decoding: Set by libavcodec
- */
- const uint8_t *slice_data;
-
- /**
- * Current size of slice data
- *
- * - encoding: unused
- * - decoding: Set by libavcodec
- */
- uint32_t slice_data_size;
-};
-
-/* @} */
-
-#endif /* AVCODEC_VAAPI_H */
diff --git a/branches/1.0/thirdparties/android/include/libavcodec/vdpau.h b/branches/1.0/thirdparties/android/include/libavcodec/vdpau.h
deleted file mode 100644
index ab5f682..0000000
--- a/branches/1.0/thirdparties/android/include/libavcodec/vdpau.h
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * The Video Decode and Presentation API for UNIX (VDPAU) is used for
- * hardware-accelerated decoding of MPEG-1/2, H.264 and VC-1.
- *
- * Copyright (C) 2008 NVIDIA
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVCODEC_VDPAU_H
-#define AVCODEC_VDPAU_H
-
-/**
- * \defgroup Decoder VDPAU Decoder and Renderer
- *
- * VDPAU hardware acceleration has two modules
- * - VDPAU decoding
- * - VDPAU presentation
- *
- * The VDPAU decoding module parses all headers using FFmpeg
- * parsing mechanisms and uses VDPAU for the actual decoding.
- *
- * As per the current implementation, the actual decoding
- * and rendering (API calls) are done as part of the VDPAU
- * presentation (vo_vdpau.c) module.
- *
- * \defgroup VDPAU_Decoding VDPAU Decoding
- * \ingroup Decoder
- * @{
- */
-
-#include <vdpau/vdpau.h>
-#include <vdpau/vdpau_x11.h>
-
-/** \brief The videoSurface is used for rendering. */
-#define FF_VDPAU_STATE_USED_FOR_RENDER 1
-
-/**
- * \brief The videoSurface is needed for reference/prediction.
- * The codec manipulates this.
- */
-#define FF_VDPAU_STATE_USED_FOR_REFERENCE 2
-
-/**
- * \brief This structure is used as a callback between the FFmpeg
- * decoder (vd_) and presentation (vo_) module.
- * This is used for defining a video frame containing surface,
- * picture parameter, bitstream information etc which are passed
- * between the FFmpeg decoder and its clients.
- */
-struct vdpau_render_state {
- VdpVideoSurface surface; ///< Used as rendered surface, never changed.
-
- int state; ///< Holds FF_VDPAU_STATE_* values.
-
- /** picture parameter information for all supported codecs */
- union VdpPictureInfo {
- VdpPictureInfoH264 h264;
- VdpPictureInfoMPEG1Or2 mpeg;
- VdpPictureInfoVC1 vc1;
- VdpPictureInfoMPEG4Part2 mpeg4;
- } info;
-
- /** Describe size/location of the compressed video data.
- Set to 0 when freeing bitstream_buffers. */
- int bitstream_buffers_allocated;
- int bitstream_buffers_used;
- /** The user is responsible for freeing this buffer using av_freep(). */
- VdpBitstreamBuffer *bitstream_buffers;
-};
-
-/* @}*/
-
-#endif /* AVCODEC_VDPAU_H */
diff --git a/branches/1.0/thirdparties/android/include/libavcodec/xvmc.h b/branches/1.0/thirdparties/android/include/libavcodec/xvmc.h
deleted file mode 100644
index 32ec866..0000000
--- a/branches/1.0/thirdparties/android/include/libavcodec/xvmc.h
+++ /dev/null
@@ -1,172 +0,0 @@
-/*
- * Copyright (C) 2003 Ivan Kalvachev
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVCODEC_XVMC_H
-#define AVCODEC_XVMC_H
-
-#include <X11/extensions/XvMC.h>
-
-#include "avcodec.h"
-
-#if LIBAVCODEC_VERSION_MAJOR < 53
-#define AV_XVMC_STATE_DISPLAY_PENDING 1 /** the surface should be shown, the video driver manipulates this */
-#define AV_XVMC_STATE_PREDICTION 2 /** the surface is needed for prediction, the codec manipulates this */
-#define AV_XVMC_STATE_OSD_SOURCE 4 /** the surface is needed for subpicture rendering */
-#endif
-#define AV_XVMC_ID 0x1DC711C0 /**< special value to ensure that regular pixel routines haven't corrupted the struct
- the number is 1337 speak for the letters IDCT MCo (motion compensation) */
-
-struct xvmc_pix_fmt {
- /** The field contains the special constant value AV_XVMC_ID.
- It is used as a test that the application correctly uses the API,
- and that there is no corruption caused by pixel routines.
- - application - set during initialization
- - libavcodec - unchanged
- */
- int xvmc_id;
-
- /** Pointer to the block array allocated by XvMCCreateBlocks().
- The array has to be freed by XvMCDestroyBlocks().
- Each group of 64 values represents one data block of differential
- pixel information (in MoCo mode) or coefficients for IDCT.
- - application - set the pointer during initialization
- - libavcodec - fills coefficients/pixel data into the array
- */
- short* data_blocks;
-
- /** Pointer to the macroblock description array allocated by
- XvMCCreateMacroBlocks() and freed by XvMCDestroyMacroBlocks().
- - application - set the pointer during initialization
- - libavcodec - fills description data into the array
- */
- XvMCMacroBlock* mv_blocks;
-
- /** Number of macroblock descriptions that can be stored in the mv_blocks
- array.
- - application - set during initialization
- - libavcodec - unchanged
- */
- int allocated_mv_blocks;
-
- /** Number of blocks that can be stored at once in the data_blocks array.
- - application - set during initialization
- - libavcodec - unchanged
- */
- int allocated_data_blocks;
-
- /** Indicate that the hardware would interpret data_blocks as IDCT
- coefficients and perform IDCT on them.
- - application - set during initialization
- - libavcodec - unchanged
- */
- int idct;
-
- /** In MoCo mode it indicates that intra macroblocks are assumed to be in
- unsigned format; same as the XVMC_INTRA_UNSIGNED flag.
- - application - set during initialization
- - libavcodec - unchanged
- */
- int unsigned_intra;
-
- /** Pointer to the surface allocated by XvMCCreateSurface().
- It has to be freed by XvMCDestroySurface() on application exit.
- It identifies the frame and its state on the video hardware.
- - application - set during initialization
- - libavcodec - unchanged
- */
- XvMCSurface* p_surface;
-
-/** Set by the decoder before calling ff_draw_horiz_band(),
- needed by the XvMCRenderSurface function. */
-//@{
- /** Pointer to the surface used as past reference
- - application - unchanged
- - libavcodec - set
- */
- XvMCSurface* p_past_surface;
-
- /** Pointer to the surface used as future reference
- - application - unchanged
- - libavcodec - set
- */
- XvMCSurface* p_future_surface;
-
- /** top/bottom field or frame
- - application - unchanged
- - libavcodec - set
- */
- unsigned int picture_structure;
-
- /** XVMC_SECOND_FIELD - 1st or 2nd field in the sequence
- - application - unchanged
- - libavcodec - set
- */
- unsigned int flags;
-//}@
-
- /** Number of macroblock descriptions in the mv_blocks array
- that have already been passed to the hardware.
- - application - zeroes it on get_buffer().
- A successful ff_draw_horiz_band() may increment it
- with filled_mb_block_num or zero both.
- - libavcodec - unchanged
- */
- int start_mv_blocks_num;
-
- /** Number of new macroblock descriptions in the mv_blocks array (after
- start_mv_blocks_num) that are filled by libavcodec and have to be
- passed to the hardware.
- - application - zeroes it on get_buffer() or after successful
- ff_draw_horiz_band().
- - libavcodec - increment with one of each stored MB
- */
- int filled_mv_blocks_num;
-
- /** Number of the the next free data block; one data block consists of
- 64 short values in the data_blocks array.
- All blocks before this one have already been claimed by placing their
- position into the corresponding block description structure field,
- that are part of the mv_blocks array.
- - application - zeroes it on get_buffer().
- A successful ff_draw_horiz_band() may zero it together
- with start_mb_blocks_num.
- - libavcodec - each decoded macroblock increases it by the number
- of coded blocks it contains.
- */
- int next_free_data_block_num;
-
-/** extensions may be placed here */
-#if LIBAVCODEC_VERSION_MAJOR < 53
-//@{
- /** State flags used to work around limitations in the MPlayer video system.
- 0 - Surface is not used.
- 1 - Surface is still held in application to be displayed or is
- still visible.
- 2 - Surface is still held in libavcodec buffer for prediction.
- */
- int state;
-
- /** pointer to the surface where the subpicture is rendered */
- void* p_osd_target_surface_render;
-//}@
-#endif
-};
-
-#endif /* AVCODEC_XVMC_H */
diff --git a/branches/1.0/thirdparties/android/include/libavcore/avcore.h b/branches/1.0/thirdparties/android/include/libavcore/avcore.h
deleted file mode 100644
index 5ddb616..0000000
--- a/branches/1.0/thirdparties/android/include/libavcore/avcore.h
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVCORE_AVCORE_H
-#define AVCORE_AVCORE_H
-
-/**
- * @file
- * shared media utilities for the libav* libraries
- */
-
-#include <libavutil/avutil.h>
-
-#define LIBAVCORE_VERSION_MAJOR 0
-#define LIBAVCORE_VERSION_MINOR 2
-#define LIBAVCORE_VERSION_MICRO 0
-
-#define LIBAVCORE_VERSION_INT AV_VERSION_INT(LIBAVCORE_VERSION_MAJOR, \
- LIBAVCORE_VERSION_MINOR, \
- LIBAVCORE_VERSION_MICRO)
-#define LIBAVCORE_VERSION AV_VERSION(LIBAVCORE_VERSION_MAJOR, \
- LIBAVCORE_VERSION_MINOR, \
- LIBAVCORE_VERSION_MICRO)
-#define LIBAVCORE_BUILD LIBAVCORE_VERSION_INT
-
-#define LIBAVCORE_IDENT "Lavcore" AV_STRINGIFY(LIBAVCORE_VERSION)
-
-/**
- * Return the LIBAVCORE_VERSION_INT constant.
- */
-unsigned avcore_version(void);
-
-/**
- * Return the libavcore build-time configuration.
- */
-const char *avcore_configuration(void);
-
-/**
- * Return the libavcore license.
- */
-const char *avcore_license(void);
-
-#endif /* AVCORE_AVCORE_H */
diff --git a/branches/1.0/thirdparties/android/include/libavcore/imgutils.h b/branches/1.0/thirdparties/android/include/libavcore/imgutils.h
deleted file mode 100644
index 4a4d6a1..0000000
--- a/branches/1.0/thirdparties/android/include/libavcore/imgutils.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVCORE_IMGUTILS_H
-#define AVCORE_IMGUTILS_H
-
-/**
- * @file
- * misc image utilities
- */
-
-#include "libavutil/pixfmt.h"
-#include "avcore.h"
-
-/**
- * Fill plane linesizes for an image with pixel format pix_fmt and
- * width width.
- *
- * @param linesizes array to be filled with the linesize for each plane
- * @return >= 0 in case of success, a negative error code otherwise
- */
-int av_fill_image_linesizes(int linesizes[4], enum PixelFormat pix_fmt, int width);
-
-/**
- * Fill plane data pointers for an image with pixel format pix_fmt and
- * height height.
- *
- * @param data pointers array to be filled with the pointer for each image plane
- * @param ptr the pointer to a buffer which will contain the image
- * @param linesizes[4] the array containing the linesize for each
- * plane, should be filled by av_fill_image_linesizes()
- * @return the size in bytes required for the image buffer, a negative
- * error code in case of failure
- */
-int av_fill_image_pointers(uint8_t *data[4], enum PixelFormat pix_fmt, int height,
- uint8_t *ptr, const int linesizes[4]);
-
-#endif /* AVCORE_IMGUTILS_H */
diff --git a/branches/1.0/thirdparties/android/include/libavcore/parseutils.h b/branches/1.0/thirdparties/android/include/libavcore/parseutils.h
deleted file mode 100644
index a81cc18..0000000
--- a/branches/1.0/thirdparties/android/include/libavcore/parseutils.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVCORE_PARSEUTILS_H
-#define AVCORE_PARSEUTILS_H
-
-#include <libavutil/rational.h>
-
-/**
- * @file
- * misc parsing utilities for libavcore
- */
-
-/**
- * Parse str and put in width_ptr and height_ptr the detected values.
- *
- * @param[in,out] width_ptr pointer to the variable which will contain the detected
- * width value
- * @param[in,out] height_ptr pointer to the variable which will contain the detected
- * height value
- * @param[in] str the string to parse: it has to be a string in the format
- * width x height or a valid video size abbreviation.
- * @return >= 0 on success, a negative error code otherwise
- */
-int av_parse_video_size(int *width_ptr, int *height_ptr, const char *str);
-
-/**
- * Parse str and store the detected values in *rate.
- *
- * @param[in,out] rate pointer to the AVRational which will contain the detected
- * frame rate
- * @param[in] str the string to parse: it has to be a string in the format
- * rate_num / rate_den, a float number or a valid video rate abbreviation
- * @return >= 0 on success, a negative error code otherwise
- */
-int av_parse_video_rate(AVRational *rate, const char *str);
-
-#endif /* AVCORE_PARSEUTILS_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/adler32.h b/branches/1.0/thirdparties/android/include/libavutil/adler32.h
deleted file mode 100644
index 0b890bc..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/adler32.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * copyright (c) 2006 Mans Rullgard
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_ADLER32_H
-#define AVUTIL_ADLER32_H
-
-#include <stdint.h>
-#include "attributes.h"
-
-/**
- * Calculate the Adler32 checksum of a buffer.
- *
- * Passing the return value to a subsequent av_adler32_update() call
- * allows the checksum of multiple buffers to be calculated as though
- * they were concatenated.
- *
- * @param adler initial checksum value
- * @param buf pointer to input buffer
- * @param len size of input buffer
- * @return updated checksum
- */
-unsigned long av_adler32_update(unsigned long adler, const uint8_t *buf,
- unsigned int len) av_pure;
-
-#endif /* AVUTIL_ADLER32_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/attributes.h b/branches/1.0/thirdparties/android/include/libavutil/attributes.h
deleted file mode 100644
index a95bb02..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/attributes.h
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
- * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * Macro definitions for various function/variable attributes
- */
-
-#ifndef AVUTIL_ATTRIBUTES_H
-#define AVUTIL_ATTRIBUTES_H
-
-#ifdef __GNUC__
-# define AV_GCC_VERSION_AT_LEAST(x,y) (__GNUC__ > x || __GNUC__ == x && __GNUC_MINOR__ >= y)
-#else
-# define AV_GCC_VERSION_AT_LEAST(x,y) 0
-#endif
-
-#ifndef av_always_inline
-#if AV_GCC_VERSION_AT_LEAST(3,1)
-# define av_always_inline __attribute__((always_inline)) inline
-#else
-# define av_always_inline inline
-#endif
-#endif
-
-#ifndef av_noinline
-#if AV_GCC_VERSION_AT_LEAST(3,1)
-# define av_noinline __attribute__((noinline))
-#else
-# define av_noinline
-#endif
-#endif
-
-#ifndef av_pure
-#if AV_GCC_VERSION_AT_LEAST(3,1)
-# define av_pure __attribute__((pure))
-#else
-# define av_pure
-#endif
-#endif
-
-#ifndef av_const
-#if AV_GCC_VERSION_AT_LEAST(2,6)
-# define av_const __attribute__((const))
-#else
-# define av_const
-#endif
-#endif
-
-#ifndef av_cold
-#if (!defined(__ICC) || __ICC > 1110) && AV_GCC_VERSION_AT_LEAST(4,3)
-# define av_cold __attribute__((cold))
-#else
-# define av_cold
-#endif
-#endif
-
-#ifndef av_flatten
-#if (!defined(__ICC) || __ICC > 1110) && AV_GCC_VERSION_AT_LEAST(4,1)
-# define av_flatten __attribute__((flatten))
-#else
-# define av_flatten
-#endif
-#endif
-
-#ifndef attribute_deprecated
-#if AV_GCC_VERSION_AT_LEAST(3,1)
-# define attribute_deprecated __attribute__((deprecated))
-#else
-# define attribute_deprecated
-#endif
-#endif
-
-#ifndef av_unused
-#if defined(__GNUC__)
-# define av_unused __attribute__((unused))
-#else
-# define av_unused
-#endif
-#endif
-
-#ifndef av_alias
-#if (!defined(__ICC) || __ICC > 1110) && AV_GCC_VERSION_AT_LEAST(3,3)
-# define av_alias __attribute__((may_alias))
-#else
-# define av_alias
-#endif
-#endif
-
-#ifndef av_uninit
-#if defined(__GNUC__) && !defined(__ICC)
-# define av_uninit(x) x=x
-#else
-# define av_uninit(x) x
-#endif
-#endif
-
-#ifdef __GNUC__
-# define av_builtin_constant_p __builtin_constant_p
-#else
-# define av_builtin_constant_p(x) 0
-#endif
-
-#endif /* AVUTIL_ATTRIBUTES_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/avconfig.h b/branches/1.0/thirdparties/android/include/libavutil/avconfig.h
deleted file mode 100644
index 36f72aa..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/avconfig.h
+++ /dev/null
@@ -1,6 +0,0 @@
-/* Generated by ffconf */
-#ifndef AVUTIL_AVCONFIG_H
-#define AVUTIL_AVCONFIG_H
-#define AV_HAVE_BIGENDIAN 0
-#define AV_HAVE_FAST_UNALIGNED 0
-#endif /* AVUTIL_AVCONFIG_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/avstring.h b/branches/1.0/thirdparties/android/include/libavutil/avstring.h
deleted file mode 100644
index 01c2391..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/avstring.h
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Copyright (c) 2007 Mans Rullgard
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_AVSTRING_H
-#define AVUTIL_AVSTRING_H
-
-#include <stddef.h>
-
-/**
- * Return non-zero if pfx is a prefix of str. If it is, *ptr is set to
- * the address of the first character in str after the prefix.
- *
- * @param str input string
- * @param pfx prefix to test
- * @param ptr updated if the prefix is matched inside str
- * @return non-zero if the prefix matches, zero otherwise
- */
-int av_strstart(const char *str, const char *pfx, const char **ptr);
-
-/**
- * Return non-zero if pfx is a prefix of str independent of case. If
- * it is, *ptr is set to the address of the first character in str
- * after the prefix.
- *
- * @param str input string
- * @param pfx prefix to test
- * @param ptr updated if the prefix is matched inside str
- * @return non-zero if the prefix matches, zero otherwise
- */
-int av_stristart(const char *str, const char *pfx, const char **ptr);
-
-/**
- * Locate the first case-independent occurrence in the string haystack
- * of the string needle. A zero-length string needle is considered to
- * match at the start of haystack.
- *
- * This function is a case-insensitive version of the standard strstr().
- *
- * @param haystack string to search in
- * @param needle string to search for
- * @return pointer to the located match within haystack
- * or a null pointer if no match
- */
-char *av_stristr(const char *haystack, const char *needle);
-
-/**
- * Copy the string src to dst, but no more than size - 1 bytes, and
- * null-terminate dst.
- *
- * This function is the same as BSD strlcpy().
- *
- * @param dst destination buffer
- * @param src source string
- * @param size size of destination buffer
- * @return the length of src
- *
- * WARNING: since the return value is the length of src, src absolutely
- * _must_ be a properly 0-terminated string, otherwise this will read beyond
- * the end of the buffer and possibly crash.
- */
-size_t av_strlcpy(char *dst, const char *src, size_t size);
-
-/**
- * Append the string src to the string dst, but to a total length of
- * no more than size - 1 bytes, and null-terminate dst.
- *
- * This function is similar to BSD strlcat(), but differs when
- * size <= strlen(dst).
- *
- * @param dst destination buffer
- * @param src source string
- * @param size size of destination buffer
- * @return the total length of src and dst
- *
- * WARNING: since the return value use the length of src and dst, these absolutely
- * _must_ be a properly 0-terminated strings, otherwise this will read beyond
- * the end of the buffer and possibly crash.
- */
-size_t av_strlcat(char *dst, const char *src, size_t size);
-
-/**
- * Append output to a string, according to a format. Never write out of
- * the destination buffer, and always put a terminating 0 within
- * the buffer.
- * @param dst destination buffer (string to which the output is
- * appended)
- * @param size total size of the destination buffer
- * @param fmt printf-compatible format string, specifying how the
- * following parameters are used
- * @return the length of the string that would have been generated
- * if enough space had been available
- */
-size_t av_strlcatf(char *dst, size_t size, const char *fmt, ...);
-
-/**
- * Convert a number to a av_malloced string.
- */
-char *av_d2str(double d);
-
-#endif /* AVUTIL_AVSTRING_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/avutil.h b/branches/1.0/thirdparties/android/include/libavutil/avutil.h
deleted file mode 100644
index f43eedd..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/avutil.h
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_AVUTIL_H
-#define AVUTIL_AVUTIL_H
-
-/**
- * @file
- * external API header
- */
-
-
-#define AV_STRINGIFY(s) AV_TOSTRING(s)
-#define AV_TOSTRING(s) #s
-
-#define AV_GLUE(a, b) a ## b
-#define AV_JOIN(a, b) AV_GLUE(a, b)
-
-#define AV_PRAGMA(s) _Pragma(#s)
-
-#define AV_VERSION_INT(a, b, c) (a<<16 | b<<8 | c)
-#define AV_VERSION_DOT(a, b, c) a ##.## b ##.## c
-#define AV_VERSION(a, b, c) AV_VERSION_DOT(a, b, c)
-
-#define LIBAVUTIL_VERSION_MAJOR 50
-#define LIBAVUTIL_VERSION_MINOR 23
-#define LIBAVUTIL_VERSION_MICRO 0
-
-#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
- LIBAVUTIL_VERSION_MINOR, \
- LIBAVUTIL_VERSION_MICRO)
-#define LIBAVUTIL_VERSION AV_VERSION(LIBAVUTIL_VERSION_MAJOR, \
- LIBAVUTIL_VERSION_MINOR, \
- LIBAVUTIL_VERSION_MICRO)
-#define LIBAVUTIL_BUILD LIBAVUTIL_VERSION_INT
-
-#define LIBAVUTIL_IDENT "Lavu" AV_STRINGIFY(LIBAVUTIL_VERSION)
-
-/**
- * Return the LIBAVUTIL_VERSION_INT constant.
- */
-unsigned avutil_version(void);
-
-/**
- * Return the libavutil build-time configuration.
- */
-const char *avutil_configuration(void);
-
-/**
- * Return the libavutil license.
- */
-const char *avutil_license(void);
-
-enum AVMediaType {
- AVMEDIA_TYPE_UNKNOWN = -1,
- AVMEDIA_TYPE_VIDEO,
- AVMEDIA_TYPE_AUDIO,
- AVMEDIA_TYPE_DATA,
- AVMEDIA_TYPE_SUBTITLE,
- AVMEDIA_TYPE_ATTACHMENT,
- AVMEDIA_TYPE_NB
-};
-
-#include "common.h"
-#include "error.h"
-#include "mathematics.h"
-#include "rational.h"
-#include "intfloat_readwrite.h"
-#include "log.h"
-#include "pixfmt.h"
-
-#endif /* AVUTIL_AVUTIL_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/base64.h b/branches/1.0/thirdparties/android/include/libavutil/base64.h
deleted file mode 100644
index 092980b..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/base64.h
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright (c) 2006 Ryan Martell. (rdm4@martellventures.com)
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_BASE64_H
-#define AVUTIL_BASE64_H
-
-#include <stdint.h>
-
-/**
- * Decode a base64-encoded string.
- *
- * @param out buffer for decoded data
- * @param in null-terminated input string
- * @param out_size size in bytes of the out buffer, must be at
- * least 3/4 of the length of in
- * @return number of bytes written, or a negative value in case of
- * invalid input
- */
-int av_base64_decode(uint8_t *out, const char *in, int out_size);
-
-/**
- * Encode data to base64 and null-terminate.
- *
- * @param out buffer for encoded data
- * @param out_size size in bytes of the output buffer, must be at
- * least AV_BASE64_SIZE(in_size)
- * @param in_size size in bytes of the 'in' buffer
- * @return 'out' or NULL in case of error
- */
-char *av_base64_encode(char *out, int out_size, const uint8_t *in, int in_size);
-
-/**
- * Calculate the output size needed to base64-encode x bytes.
- */
-#define AV_BASE64_SIZE(x) (((x)+2) / 3 * 4 + 1)
-
-#endif /* AVUTIL_BASE64_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/bswap.h b/branches/1.0/thirdparties/android/include/libavutil/bswap.h
deleted file mode 100644
index 0bf0eba..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/bswap.h
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * byte swapping routines
- */
-
-#ifndef AVUTIL_BSWAP_H
-#define AVUTIL_BSWAP_H
-
-#include <stdint.h>
-#include "libavutil/avconfig.h"
-#include "attributes.h"
-
-#ifdef HAVE_AV_CONFIG_H
-
-#include "config.h"
-
-#if ARCH_ARM
-# include "arm/bswap.h"
-#elif ARCH_AVR32
-# include "avr32/bswap.h"
-#elif ARCH_BFIN
-# include "bfin/bswap.h"
-#elif ARCH_SH4
-# include "sh4/bswap.h"
-#elif ARCH_X86
-# include "x86/bswap.h"
-#endif
-
-#endif /* HAVE_AV_CONFIG_H */
-
-#define AV_BSWAP16C(x) (((x) << 8 & 0xff00) | ((x) >> 8 & 0x00ff))
-#define AV_BSWAP32C(x) (AV_BSWAP16C(x) << 16 | AV_BSWAP16C((x) >> 16))
-#define AV_BSWAP64C(x) (AV_BSWAP32C(x) << 32 | AV_BSWAP32C((x) >> 32))
-
-#define AV_BSWAPC(s, x) AV_BSWAP##s##C(x)
-
-#ifndef av_bswap16
-static av_always_inline av_const uint16_t av_bswap16(uint16_t x)
-{
- x= (x>>8) | (x<<8);
- return x;
-}
-#endif
-
-#ifndef av_bswap32
-static av_always_inline av_const uint32_t av_bswap32(uint32_t x)
-{
- x= ((x<<8)&0xFF00FF00) | ((x>>8)&0x00FF00FF);
- x= (x>>16) | (x<<16);
- return x;
-}
-#endif
-
-#ifndef av_bswap64
-static inline uint64_t av_const av_bswap64(uint64_t x)
-{
-#if 0
- x= ((x<< 8)&0xFF00FF00FF00FF00ULL) | ((x>> 8)&0x00FF00FF00FF00FFULL);
- x= ((x<<16)&0xFFFF0000FFFF0000ULL) | ((x>>16)&0x0000FFFF0000FFFFULL);
- return (x>>32) | (x<<32);
-#else
- union {
- uint64_t ll;
- uint32_t l[2];
- } w, r;
- w.ll = x;
- r.l[0] = av_bswap32 (w.l[1]);
- r.l[1] = av_bswap32 (w.l[0]);
- return r.ll;
-#endif
-}
-#endif
-
-// be2ne ... big-endian to native-endian
-// le2ne ... little-endian to native-endian
-
-#if AV_HAVE_BIGENDIAN
-#define av_be2ne16(x) (x)
-#define av_be2ne32(x) (x)
-#define av_be2ne64(x) (x)
-#define av_le2ne16(x) av_bswap16(x)
-#define av_le2ne32(x) av_bswap32(x)
-#define av_le2ne64(x) av_bswap64(x)
-#define AV_BE2NEC(s, x) (x)
-#define AV_LE2NEC(s, x) AV_BSWAPC(s, x)
-#else
-#define av_be2ne16(x) av_bswap16(x)
-#define av_be2ne32(x) av_bswap32(x)
-#define av_be2ne64(x) av_bswap64(x)
-#define av_le2ne16(x) (x)
-#define av_le2ne32(x) (x)
-#define av_le2ne64(x) (x)
-#define AV_BE2NEC(s, x) AV_BSWAPC(s, x)
-#define AV_LE2NEC(s, x) (x)
-#endif
-
-#define AV_BE2NE16C(x) AV_BE2NEC(16, x)
-#define AV_BE2NE32C(x) AV_BE2NEC(32, x)
-#define AV_BE2NE64C(x) AV_BE2NEC(64, x)
-#define AV_LE2NE16C(x) AV_LE2NEC(16, x)
-#define AV_LE2NE32C(x) AV_LE2NEC(32, x)
-#define AV_LE2NE64C(x) AV_LE2NEC(64, x)
-
-#endif /* AVUTIL_BSWAP_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/common.h b/branches/1.0/thirdparties/android/include/libavutil/common.h
deleted file mode 100644
index 5eff235..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/common.h
+++ /dev/null
@@ -1,346 +0,0 @@
-/*
- * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * common internal and external API header
- */
-
-#ifndef AVUTIL_COMMON_H
-#define AVUTIL_COMMON_H
-
-#include <ctype.h>
-#include <errno.h>
-#include <inttypes.h>
-#include <limits.h>
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include "attributes.h"
-
-//rounded division & shift
-#define RSHIFT(a,b) ((a) > 0 ? ((a) + ((1<<(b))>>1))>>(b) : ((a) + ((1<<(b))>>1)-1)>>(b))
-/* assume b>0 */
-#define ROUNDED_DIV(a,b) (((a)>0 ? (a) + ((b)>>1) : (a) - ((b)>>1))/(b))
-#define FFABS(a) ((a) >= 0 ? (a) : (-(a)))
-#define FFSIGN(a) ((a) > 0 ? 1 : -1)
-
-#define FFMAX(a,b) ((a) > (b) ? (a) : (b))
-#define FFMAX3(a,b,c) FFMAX(FFMAX(a,b),c)
-#define FFMIN(a,b) ((a) > (b) ? (b) : (a))
-#define FFMIN3(a,b,c) FFMIN(FFMIN(a,b),c)
-
-#define FFSWAP(type,a,b) do{type SWAP_tmp= b; b= a; a= SWAP_tmp;}while(0)
-#define FF_ARRAY_ELEMS(a) (sizeof(a) / sizeof((a)[0]))
-#define FFALIGN(x, a) (((x)+(a)-1)&~((a)-1))
-
-/* misc math functions */
-extern const uint8_t ff_log2_tab[256];
-
-extern const uint8_t av_reverse[256];
-
-static inline av_const int av_log2_c(unsigned int v)
-{
- int n = 0;
- if (v & 0xffff0000) {
- v >>= 16;
- n += 16;
- }
- if (v & 0xff00) {
- v >>= 8;
- n += 8;
- }
- n += ff_log2_tab[v];
-
- return n;
-}
-
-static inline av_const int av_log2_16bit_c(unsigned int v)
-{
- int n = 0;
- if (v & 0xff00) {
- v >>= 8;
- n += 8;
- }
- n += ff_log2_tab[v];
-
- return n;
-}
-
-#ifdef HAVE_AV_CONFIG_H
-# include "config.h"
-# include "intmath.h"
-#endif
-
-/* Pull in unguarded fallback defines at the end of this file. */
-#include "common.h"
-
-/**
- * Clip a signed integer value into the amin-amax range.
- * @param a value to clip
- * @param amin minimum value of the clip range
- * @param amax maximum value of the clip range
- * @return clipped value
- */
-static inline av_const int av_clip_c(int a, int amin, int amax)
-{
- if (a < amin) return amin;
- else if (a > amax) return amax;
- else return a;
-}
-
-/**
- * Clip a signed integer value into the 0-255 range.
- * @param a value to clip
- * @return clipped value
- */
-static inline av_const uint8_t av_clip_uint8_c(int a)
-{
- if (a&(~0xFF)) return (-a)>>31;
- else return a;
-}
-
-/**
- * Clip a signed integer value into the -128,127 range.
- * @param a value to clip
- * @return clipped value
- */
-static inline av_const int8_t av_clip_int8_c(int a)
-{
- if ((a+0x80) & ~0xFF) return (a>>31) ^ 0x7F;
- else return a;
-}
-
-/**
- * Clip a signed integer value into the 0-65535 range.
- * @param a value to clip
- * @return clipped value
- */
-static inline av_const uint16_t av_clip_uint16_c(int a)
-{
- if (a&(~0xFFFF)) return (-a)>>31;
- else return a;
-}
-
-/**
- * Clip a signed integer value into the -32768,32767 range.
- * @param a value to clip
- * @return clipped value
- */
-static inline av_const int16_t av_clip_int16_c(int a)
-{
- if ((a+0x8000) & ~0xFFFF) return (a>>31) ^ 0x7FFF;
- else return a;
-}
-
-/**
- * Clip a signed 64-bit integer value into the -2147483648,2147483647 range.
- * @param a value to clip
- * @return clipped value
- */
-static inline av_const int32_t av_clipl_int32_c(int64_t a)
-{
- if ((a+0x80000000u) & ~UINT64_C(0xFFFFFFFF)) return (a>>63) ^ 0x7FFFFFFF;
- else return a;
-}
-
-/**
- * Clip a float value into the amin-amax range.
- * @param a value to clip
- * @param amin minimum value of the clip range
- * @param amax maximum value of the clip range
- * @return clipped value
- */
-static inline av_const float av_clipf_c(float a, float amin, float amax)
-{
- if (a < amin) return amin;
- else if (a > amax) return amax;
- else return a;
-}
-
-/** Compute ceil(log2(x)).
- * @param x value used to compute ceil(log2(x))
- * @return computed ceiling of log2(x)
- */
-static inline av_const int av_ceil_log2_c(int x)
-{
- return av_log2((x - 1) << 1);
-}
-
-#define MKTAG(a,b,c,d) ((a) | ((b) << 8) | ((c) << 16) | ((d) << 24))
-#define MKBETAG(a,b,c,d) ((d) | ((c) << 8) | ((b) << 16) | ((a) << 24))
-
-/**
- * Convert a UTF-8 character (up to 4 bytes) to its 32-bit UCS-4 encoded form.
- *
- * @param val Output value, must be an lvalue of type uint32_t.
- * @param GET_BYTE Expression reading one byte from the input.
- * Evaluated up to 7 times (4 for the currently
- * assigned Unicode range). With a memory buffer
- * input, this could be *ptr++.
- * @param ERROR Expression to be evaluated on invalid input,
- * typically a goto statement.
- */
-#define GET_UTF8(val, GET_BYTE, ERROR)\
- val= GET_BYTE;\
- {\
- int ones= 7 - av_log2(val ^ 255);\
- if(ones==1)\
- ERROR\
- val&= 127>>ones;\
- while(--ones > 0){\
- int tmp= GET_BYTE - 128;\
- if(tmp>>6)\
- ERROR\
- val= (val<<6) + tmp;\
- }\
- }
-
-/**
- * Convert a UTF-16 character (2 or 4 bytes) to its 32-bit UCS-4 encoded form.
- *
- * @param val Output value, must be an lvalue of type uint32_t.
- * @param GET_16BIT Expression returning two bytes of UTF-16 data converted
- * to native byte order. Evaluated one or two times.
- * @param ERROR Expression to be evaluated on invalid input,
- * typically a goto statement.
- */
-#define GET_UTF16(val, GET_16BIT, ERROR)\
- val = GET_16BIT;\
- {\
- unsigned int hi = val - 0xD800;\
- if (hi < 0x800) {\
- val = GET_16BIT - 0xDC00;\
- if (val > 0x3FFU || hi > 0x3FFU)\
- ERROR\
- val += (hi<<10) + 0x10000;\
- }\
- }\
-
-/*!
- * \def PUT_UTF8(val, tmp, PUT_BYTE)
- * Convert a 32-bit Unicode character to its UTF-8 encoded form (up to 4 bytes long).
- * \param val is an input-only argument and should be of type uint32_t. It holds
- * a UCS-4 encoded Unicode character that is to be converted to UTF-8. If
- * val is given as a function it is executed only once.
- * \param tmp is a temporary variable and should be of type uint8_t. It
- * represents an intermediate value during conversion that is to be
- * output by PUT_BYTE.
- * \param PUT_BYTE writes the converted UTF-8 bytes to any proper destination.
- * It could be a function or a statement, and uses tmp as the input byte.
- * For example, PUT_BYTE could be "*output++ = tmp;" PUT_BYTE will be
- * executed up to 4 times for values in the valid UTF-8 range and up to
- * 7 times in the general case, depending on the length of the converted
- * Unicode character.
- */
-#define PUT_UTF8(val, tmp, PUT_BYTE)\
- {\
- int bytes, shift;\
- uint32_t in = val;\
- if (in < 0x80) {\
- tmp = in;\
- PUT_BYTE\
- } else {\
- bytes = (av_log2(in) + 4) / 5;\
- shift = (bytes - 1) * 6;\
- tmp = (256 - (256 >> bytes)) | (in >> shift);\
- PUT_BYTE\
- while (shift >= 6) {\
- shift -= 6;\
- tmp = 0x80 | ((in >> shift) & 0x3f);\
- PUT_BYTE\
- }\
- }\
- }
-
-/*!
- * \def PUT_UTF16(val, tmp, PUT_16BIT)
- * Convert a 32-bit Unicode character to its UTF-16 encoded form (2 or 4 bytes).
- * \param val is an input-only argument and should be of type uint32_t. It holds
- * a UCS-4 encoded Unicode character that is to be converted to UTF-16. If
- * val is given as a function it is executed only once.
- * \param tmp is a temporary variable and should be of type uint16_t. It
- * represents an intermediate value during conversion that is to be
- * output by PUT_16BIT.
- * \param PUT_16BIT writes the converted UTF-16 data to any proper destination
- * in desired endianness. It could be a function or a statement, and uses tmp
- * as the input byte. For example, PUT_BYTE could be "*output++ = tmp;"
- * PUT_BYTE will be executed 1 or 2 times depending on input character.
- */
-#define PUT_UTF16(val, tmp, PUT_16BIT)\
- {\
- uint32_t in = val;\
- if (in < 0x10000) {\
- tmp = in;\
- PUT_16BIT\
- } else {\
- tmp = 0xD800 | ((in - 0x10000) >> 10);\
- PUT_16BIT\
- tmp = 0xDC00 | ((in - 0x10000) & 0x3FF);\
- PUT_16BIT\
- }\
- }\
-
-
-
-#include "mem.h"
-
-#ifdef HAVE_AV_CONFIG_H
-# include "internal.h"
-#endif /* HAVE_AV_CONFIG_H */
-
-#endif /* AVUTIL_COMMON_H */
-
-/*
- * The following definitions are outside the multiple inclusion guard
- * to ensure they are immediately available in intmath.h.
- */
-
-#ifndef av_log2
-# define av_log2 av_log2_c
-#endif
-#ifndef av_log2_16bit
-# define av_log2_16bit av_log2_16bit_c
-#endif
-#ifndef av_ceil_log2
-# define av_ceil_log2 av_ceil_log2_c
-#endif
-#ifndef av_clip
-# define av_clip av_clip_c
-#endif
-#ifndef av_clip_uint8
-# define av_clip_uint8 av_clip_uint8_c
-#endif
-#ifndef av_clip_int8
-# define av_clip_int8 av_clip_int8_c
-#endif
-#ifndef av_clip_uint16
-# define av_clip_uint16 av_clip_uint16_c
-#endif
-#ifndef av_clip_int16
-# define av_clip_int16 av_clip_int16_c
-#endif
-#ifndef av_clipl_int32
-# define av_clipl_int32 av_clipl_int32_c
-#endif
-#ifndef av_clipf
-# define av_clipf av_clipf_c
-#endif
diff --git a/branches/1.0/thirdparties/android/include/libavutil/crc.h b/branches/1.0/thirdparties/android/include/libavutil/crc.h
deleted file mode 100644
index b83ced1..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/crc.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_CRC_H
-#define AVUTIL_CRC_H
-
-#include <stdint.h>
-#include <stddef.h>
-#include "attributes.h"
-
-typedef uint32_t AVCRC;
-
-typedef enum {
- AV_CRC_8_ATM,
- AV_CRC_16_ANSI,
- AV_CRC_16_CCITT,
- AV_CRC_32_IEEE,
- AV_CRC_32_IEEE_LE, /*< reversed bitorder version of AV_CRC_32_IEEE */
- AV_CRC_MAX, /*< Not part of public API! Do not use outside libavutil. */
-}AVCRCId;
-
-int av_crc_init(AVCRC *ctx, int le, int bits, uint32_t poly, int ctx_size);
-const AVCRC *av_crc_get_table(AVCRCId crc_id);
-uint32_t av_crc(const AVCRC *ctx, uint32_t start_crc, const uint8_t *buffer, size_t length) av_pure;
-
-#endif /* AVUTIL_CRC_H */
-
diff --git a/branches/1.0/thirdparties/android/include/libavutil/error.h b/branches/1.0/thirdparties/android/include/libavutil/error.h
deleted file mode 100644
index 28fa925..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/error.h
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * error code definitions
- */
-
-#ifndef AVUTIL_ERROR_H
-#define AVUTIL_ERROR_H
-
-#include <errno.h>
-#include "avutil.h"
-
-/* error handling */
-#if EDOM > 0
-#define AVERROR(e) (-(e)) ///< Returns a negative error code from a POSIX error code, to return from library functions.
-#define AVUNERROR(e) (-(e)) ///< Returns a POSIX error code from a library function error return value.
-#else
-/* Some platforms have E* and errno already negated. */
-#define AVERROR(e) (e)
-#define AVUNERROR(e) (e)
-#endif
-
-#if LIBAVUTIL_VERSION_MAJOR < 51
-#define AVERROR_INVALIDDATA AVERROR(EINVAL) ///< Invalid data found when processing input
-#define AVERROR_IO AVERROR(EIO) ///< I/O error
-#define AVERROR_NOENT AVERROR(ENOENT) ///< No such file or directory
-#define AVERROR_NOFMT AVERROR(EILSEQ) ///< Unknown format
-#define AVERROR_NOMEM AVERROR(ENOMEM) ///< Not enough memory
-#define AVERROR_NOTSUPP AVERROR(ENOSYS) ///< Operation not supported
-#define AVERROR_NUMEXPECTED AVERROR(EDOM) ///< Number syntax expected in filename
-#define AVERROR_UNKNOWN AVERROR(EINVAL) ///< Unknown error
-#endif
-
-#define AVERROR_EOF AVERROR(EPIPE) ///< End of file
-
-#define AVERROR_PATCHWELCOME (-MKTAG('P','A','W','E')) ///< Not yet implemented in FFmpeg, patches welcome
-
-#if LIBAVUTIL_VERSION_MAJOR > 50
-#define AVERROR_INVALIDDATA (-MKTAG('I','N','D','A')) ///< Invalid data found when processing input
-#define AVERROR_NUMEXPECTED (-MKTAG('N','U','E','X')) ///< Number syntax expected in filename
-#endif
-
-/**
- * Put a description of the AVERROR code errnum in errbuf.
- * In case of failure the global variable errno is set to indicate the
- * error. Even in case of failure av_strerror() will print a generic
- * error message indicating the errnum provided to errbuf.
- *
- * @param errnum error code to describe
- * @param errbuf buffer to which description is written
- * @param errbuf_size the size in bytes of errbuf
- * @return 0 on success, a negative value if a description for errnum
- * cannot be found
- */
-int av_strerror(int errnum, char *errbuf, size_t errbuf_size);
-
-#endif /* AVUTIL_ERROR_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/eval.h b/branches/1.0/thirdparties/android/include/libavutil/eval.h
deleted file mode 100644
index 7a4f5f0..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/eval.h
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * Copyright (c) 2002 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * simple arithmetic expression evaluator
- */
-
-#ifndef AVUTIL_EVAL_H
-#define AVUTIL_EVAL_H
-
-typedef struct AVExpr AVExpr;
-
-/**
- * Parse and evaluate an expression.
- * Note, this is significantly slower than av_eval_expr().
- *
- * @param res a pointer to a double where is put the result value of
- * the expression, or NAN in case of error
- * @param s expression as a zero terminated string, for example "1+2^3+5*5+sin(2/3)"
- * @param const_names NULL terminated array of zero terminated strings of constant identifiers, for example {"PI", "E", 0}
- * @param const_values a zero terminated array of values for the identifiers from const_names
- * @param func1_names NULL terminated array of zero terminated strings of funcs1 identifiers
- * @param funcs1 NULL terminated array of function pointers for functions which take 1 argument
- * @param func2_names NULL terminated array of zero terminated strings of funcs2 identifiers
- * @param funcs2 NULL terminated array of function pointers for functions which take 2 arguments
- * @param opaque a pointer which will be passed to all functions from funcs1 and funcs2
- * @param log_ctx parent logging context
- * @return 0 in case of success, a negative value corresponding to an
- * AVERROR code otherwise
- */
-int av_parse_and_eval_expr(double *res, const char *s,
- const char * const *const_names, const double *const_values,
- const char * const *func1_names, double (* const *funcs1)(void *, double),
- const char * const *func2_names, double (* const *funcs2)(void *, double, double),
- void *opaque, int log_offset, void *log_ctx);
-
-/**
- * Parse an expression.
- *
- * @param expr a pointer where is put an AVExpr containing the parsed
- * value in case of successfull parsing, or NULL otherwise.
- * The pointed to AVExpr must be freed with av_free_expr() by the user
- * when it is not needed anymore.
- * @param s expression as a zero terminated string, for example "1+2^3+5*5+sin(2/3)"
- * @param const_names NULL terminated array of zero terminated strings of constant identifiers, for example {"PI", "E", 0}
- * @param func1_names NULL terminated array of zero terminated strings of funcs1 identifiers
- * @param funcs1 NULL terminated array of function pointers for functions which take 1 argument
- * @param func2_names NULL terminated array of zero terminated strings of funcs2 identifiers
- * @param funcs2 NULL terminated array of function pointers for functions which take 2 arguments
- * @param log_ctx parent logging context
- * @return 0 in case of success, a negative value corresponding to an
- * AVERROR code otherwise
- */
-int av_parse_expr(AVExpr **expr, const char *s,
- const char * const *const_names,
- const char * const *func1_names, double (* const *funcs1)(void *, double),
- const char * const *func2_names, double (* const *funcs2)(void *, double, double),
- int log_offset, void *log_ctx);
-
-/**
- * Evaluate a previously parsed expression.
- *
- * @param const_values a zero terminated array of values for the identifiers from av_parse_expr() const_names
- * @param opaque a pointer which will be passed to all functions from funcs1 and funcs2
- * @return the value of the expression
- */
-double av_eval_expr(AVExpr *e, const double *const_values, void *opaque);
-
-/**
- * Free a parsed expression previously created with av_parse_expr().
- */
-void av_free_expr(AVExpr *e);
-
-/**
- * Parse the string in numstr and return its value as a double. If
- * the string is empty, contains only whitespaces, or does not contain
- * an initial substring that has the expected syntax for a
- * floating-point number, no conversion is performed. In this case,
- * returns a value of zero and the value returned in tail is the value
- * of numstr.
- *
- * @param numstr a string representing a number, may contain one of
- * the International System number postfixes, for example 'K', 'M',
- * 'G'. If 'i' is appended after the postfix, powers of 2 are used
- * instead of powers of 10. The 'B' postfix multiplies the value for
- * 8, and can be appended after another postfix or used alone. This
- * allows using for example 'KB', 'MiB', 'G' and 'B' as postfix.
- * @param tail if non-NULL puts here the pointer to the char next
- * after the last parsed character
- */
-double av_strtod(const char *numstr, char **tail);
-
-#endif /* AVUTIL_EVAL_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/fifo.h b/branches/1.0/thirdparties/android/include/libavutil/fifo.h
deleted file mode 100644
index d12e523..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/fifo.h
+++ /dev/null
@@ -1,116 +0,0 @@
-/*
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * a very simple circular buffer FIFO implementation
- */
-
-#ifndef AVUTIL_FIFO_H
-#define AVUTIL_FIFO_H
-
-#include <stdint.h>
-
-typedef struct AVFifoBuffer {
- uint8_t *buffer;
- uint8_t *rptr, *wptr, *end;
- uint32_t rndx, wndx;
-} AVFifoBuffer;
-
-/**
- * Initialize an AVFifoBuffer.
- * @param size of FIFO
- * @return AVFifoBuffer or NULL in case of memory allocation failure
- */
-AVFifoBuffer *av_fifo_alloc(unsigned int size);
-
-/**
- * Free an AVFifoBuffer.
- * @param *f AVFifoBuffer to free
- */
-void av_fifo_free(AVFifoBuffer *f);
-
-/**
- * Reset the AVFifoBuffer to the state right after av_fifo_alloc, in particular it is emptied.
- * @param *f AVFifoBuffer to reset
- */
-void av_fifo_reset(AVFifoBuffer *f);
-
-/**
- * Return the amount of data in bytes in the AVFifoBuffer, that is the
- * amount of data you can read from it.
- * @param *f AVFifoBuffer to read from
- * @return size
- */
-int av_fifo_size(AVFifoBuffer *f);
-
-/**
- * Return the amount of space in bytes in the AVFifoBuffer, that is the
- * amount of data you can write into it.
- * @param *f AVFifoBuffer to write into
- * @return size
- */
-int av_fifo_space(AVFifoBuffer *f);
-
-/**
- * Feed data from an AVFifoBuffer to a user-supplied callback.
- * @param *f AVFifoBuffer to read from
- * @param buf_size number of bytes to read
- * @param *func generic read function
- * @param *dest data destination
- */
-int av_fifo_generic_read(AVFifoBuffer *f, void *dest, int buf_size, void (*func)(void*, void*, int));
-
-/**
- * Feed data from a user-supplied callback to an AVFifoBuffer.
- * @param *f AVFifoBuffer to write to
- * @param *src data source; non-const since it may be used as a
- * modifiable context by the function defined in func
- * @param size number of bytes to write
- * @param *func generic write function; the first parameter is src,
- * the second is dest_buf, the third is dest_buf_size.
- * func must return the number of bytes written to dest_buf, or <= 0 to
- * indicate no more data available to write.
- * If func is NULL, src is interpreted as a simple byte array for source data.
- * @return the number of bytes written to the FIFO
- */
-int av_fifo_generic_write(AVFifoBuffer *f, void *src, int size, int (*func)(void*, void*, int));
-
-/**
- * Resize an AVFifoBuffer.
- * @param *f AVFifoBuffer to resize
- * @param size new AVFifoBuffer size in bytes
- * @return <0 for failure, >=0 otherwise
- */
-int av_fifo_realloc2(AVFifoBuffer *f, unsigned int size);
-
-/**
- * Read and discard the specified amount of data from an AVFifoBuffer.
- * @param *f AVFifoBuffer to read from
- * @param size amount of data to read in bytes
- */
-void av_fifo_drain(AVFifoBuffer *f, int size);
-
-static inline uint8_t av_fifo_peek(AVFifoBuffer *f, int offs)
-{
- uint8_t *ptr = f->rptr + offs;
- if (ptr >= f->end)
- ptr -= f->end - f->buffer;
- return *ptr;
-}
-#endif /* AVUTIL_FIFO_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/intfloat_readwrite.h b/branches/1.0/thirdparties/android/include/libavutil/intfloat_readwrite.h
deleted file mode 100644
index fda48a4..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/intfloat_readwrite.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * copyright (c) 2005 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_INTFLOAT_READWRITE_H
-#define AVUTIL_INTFLOAT_READWRITE_H
-
-#include <stdint.h>
-#include "attributes.h"
-
-/* IEEE 80 bits extended float */
-typedef struct AVExtFloat {
- uint8_t exponent[2];
- uint8_t mantissa[8];
-} AVExtFloat;
-
-double av_int2dbl(int64_t v) av_const;
-float av_int2flt(int32_t v) av_const;
-double av_ext2dbl(const AVExtFloat ext) av_const;
-int64_t av_dbl2int(double d) av_const;
-int32_t av_flt2int(float d) av_const;
-AVExtFloat av_dbl2ext(double d) av_const;
-
-#endif /* AVUTIL_INTFLOAT_READWRITE_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/intreadwrite.h b/branches/1.0/thirdparties/android/include/libavutil/intreadwrite.h
deleted file mode 100644
index 1849a64..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/intreadwrite.h
+++ /dev/null
@@ -1,522 +0,0 @@
-/*
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_INTREADWRITE_H
-#define AVUTIL_INTREADWRITE_H
-
-#include <stdint.h>
-#include "libavutil/avconfig.h"
-#include "attributes.h"
-#include "bswap.h"
-
-typedef union {
- uint64_t u64;
- uint32_t u32[2];
- uint16_t u16[4];
- uint8_t u8 [8];
- double f64;
- float f32[2];
-} av_alias av_alias64;
-
-typedef union {
- uint32_t u32;
- uint16_t u16[2];
- uint8_t u8 [4];
- float f32;
-} av_alias av_alias32;
-
-typedef union {
- uint16_t u16;
- uint8_t u8 [2];
-} av_alias av_alias16;
-
-/*
- * Arch-specific headers can provide any combination of
- * AV_[RW][BLN](16|24|32|64) and AV_(COPY|SWAP|ZERO)(64|128) macros.
- * Preprocessor symbols must be defined, even if these are implemented
- * as inline functions.
- */
-
-#ifdef HAVE_AV_CONFIG_H
-
-#include "config.h"
-
-#if ARCH_ARM
-# include "arm/intreadwrite.h"
-#elif ARCH_AVR32
-# include "avr32/intreadwrite.h"
-#elif ARCH_MIPS
-# include "mips/intreadwrite.h"
-#elif ARCH_PPC
-# include "ppc/intreadwrite.h"
-#elif ARCH_TOMI
-# include "tomi/intreadwrite.h"
-#elif ARCH_X86
-# include "x86/intreadwrite.h"
-#endif
-
-#endif /* HAVE_AV_CONFIG_H */
-
-/*
- * Map AV_RNXX <-> AV_R[BL]XX for all variants provided by per-arch headers.
- */
-
-#if AV_HAVE_BIGENDIAN
-
-# if defined(AV_RN16) && !defined(AV_RB16)
-# define AV_RB16(p) AV_RN16(p)
-# elif !defined(AV_RN16) && defined(AV_RB16)
-# define AV_RN16(p) AV_RB16(p)
-# endif
-
-# if defined(AV_WN16) && !defined(AV_WB16)
-# define AV_WB16(p, v) AV_WN16(p, v)
-# elif !defined(AV_WN16) && defined(AV_WB16)
-# define AV_WN16(p, v) AV_WB16(p, v)
-# endif
-
-# if defined(AV_RN24) && !defined(AV_RB24)
-# define AV_RB24(p) AV_RN24(p)
-# elif !defined(AV_RN24) && defined(AV_RB24)
-# define AV_RN24(p) AV_RB24(p)
-# endif
-
-# if defined(AV_WN24) && !defined(AV_WB24)
-# define AV_WB24(p, v) AV_WN24(p, v)
-# elif !defined(AV_WN24) && defined(AV_WB24)
-# define AV_WN24(p, v) AV_WB24(p, v)
-# endif
-
-# if defined(AV_RN32) && !defined(AV_RB32)
-# define AV_RB32(p) AV_RN32(p)
-# elif !defined(AV_RN32) && defined(AV_RB32)
-# define AV_RN32(p) AV_RB32(p)
-# endif
-
-# if defined(AV_WN32) && !defined(AV_WB32)
-# define AV_WB32(p, v) AV_WN32(p, v)
-# elif !defined(AV_WN32) && defined(AV_WB32)
-# define AV_WN32(p, v) AV_WB32(p, v)
-# endif
-
-# if defined(AV_RN64) && !defined(AV_RB64)
-# define AV_RB64(p) AV_RN64(p)
-# elif !defined(AV_RN64) && defined(AV_RB64)
-# define AV_RN64(p) AV_RB64(p)
-# endif
-
-# if defined(AV_WN64) && !defined(AV_WB64)
-# define AV_WB64(p, v) AV_WN64(p, v)
-# elif !defined(AV_WN64) && defined(AV_WB64)
-# define AV_WN64(p, v) AV_WB64(p, v)
-# endif
-
-#else /* AV_HAVE_BIGENDIAN */
-
-# if defined(AV_RN16) && !defined(AV_RL16)
-# define AV_RL16(p) AV_RN16(p)
-# elif !defined(AV_RN16) && defined(AV_RL16)
-# define AV_RN16(p) AV_RL16(p)
-# endif
-
-# if defined(AV_WN16) && !defined(AV_WL16)
-# define AV_WL16(p, v) AV_WN16(p, v)
-# elif !defined(AV_WN16) && defined(AV_WL16)
-# define AV_WN16(p, v) AV_WL16(p, v)
-# endif
-
-# if defined(AV_RN24) && !defined(AV_RL24)
-# define AV_RL24(p) AV_RN24(p)
-# elif !defined(AV_RN24) && defined(AV_RL24)
-# define AV_RN24(p) AV_RL24(p)
-# endif
-
-# if defined(AV_WN24) && !defined(AV_WL24)
-# define AV_WL24(p, v) AV_WN24(p, v)
-# elif !defined(AV_WN24) && defined(AV_WL24)
-# define AV_WN24(p, v) AV_WL24(p, v)
-# endif
-
-# if defined(AV_RN32) && !defined(AV_RL32)
-# define AV_RL32(p) AV_RN32(p)
-# elif !defined(AV_RN32) && defined(AV_RL32)
-# define AV_RN32(p) AV_RL32(p)
-# endif
-
-# if defined(AV_WN32) && !defined(AV_WL32)
-# define AV_WL32(p, v) AV_WN32(p, v)
-# elif !defined(AV_WN32) && defined(AV_WL32)
-# define AV_WN32(p, v) AV_WL32(p, v)
-# endif
-
-# if defined(AV_RN64) && !defined(AV_RL64)
-# define AV_RL64(p) AV_RN64(p)
-# elif !defined(AV_RN64) && defined(AV_RL64)
-# define AV_RN64(p) AV_RL64(p)
-# endif
-
-# if defined(AV_WN64) && !defined(AV_WL64)
-# define AV_WL64(p, v) AV_WN64(p, v)
-# elif !defined(AV_WN64) && defined(AV_WL64)
-# define AV_WN64(p, v) AV_WL64(p, v)
-# endif
-
-#endif /* !AV_HAVE_BIGENDIAN */
-
-/*
- * Define AV_[RW]N helper macros to simplify definitions not provided
- * by per-arch headers.
- */
-
-#if defined(__GNUC__) && !defined(__TI_COMPILER_VERSION__)
-
-union unaligned_64 { uint64_t l; } __attribute__((packed)) av_alias;
-union unaligned_32 { uint32_t l; } __attribute__((packed)) av_alias;
-union unaligned_16 { uint16_t l; } __attribute__((packed)) av_alias;
-
-# define AV_RN(s, p) (((const union unaligned_##s *) (p))->l)
-# define AV_WN(s, p, v) ((((union unaligned_##s *) (p))->l) = (v))
-
-#elif defined(__DECC)
-
-# define AV_RN(s, p) (*((const __unaligned uint##s##_t*)(p)))
-# define AV_WN(s, p, v) (*((__unaligned uint##s##_t*)(p)) = (v))
-
-#elif AV_HAVE_FAST_UNALIGNED
-
-# define AV_RN(s, p) (((const av_alias##s*)(p))->u##s)
-# define AV_WN(s, p, v) (((av_alias##s*)(p))->u##s = (v))
-
-#else
-
-#ifndef AV_RB16
-# define AV_RB16(x) \
- ((((const uint8_t*)(x))[0] << 8) | \
- ((const uint8_t*)(x))[1])
-#endif
-#ifndef AV_WB16
-# define AV_WB16(p, d) do { \
- ((uint8_t*)(p))[1] = (d); \
- ((uint8_t*)(p))[0] = (d)>>8; \
- } while(0)
-#endif
-
-#ifndef AV_RL16
-# define AV_RL16(x) \
- ((((const uint8_t*)(x))[1] << 8) | \
- ((const uint8_t*)(x))[0])
-#endif
-#ifndef AV_WL16
-# define AV_WL16(p, d) do { \
- ((uint8_t*)(p))[0] = (d); \
- ((uint8_t*)(p))[1] = (d)>>8; \
- } while(0)
-#endif
-
-#ifndef AV_RB32
-# define AV_RB32(x) \
- ((((const uint8_t*)(x))[0] << 24) | \
- (((const uint8_t*)(x))[1] << 16) | \
- (((const uint8_t*)(x))[2] << 8) | \
- ((const uint8_t*)(x))[3])
-#endif
-#ifndef AV_WB32
-# define AV_WB32(p, d) do { \
- ((uint8_t*)(p))[3] = (d); \
- ((uint8_t*)(p))[2] = (d)>>8; \
- ((uint8_t*)(p))[1] = (d)>>16; \
- ((uint8_t*)(p))[0] = (d)>>24; \
- } while(0)
-#endif
-
-#ifndef AV_RL32
-# define AV_RL32(x) \
- ((((const uint8_t*)(x))[3] << 24) | \
- (((const uint8_t*)(x))[2] << 16) | \
- (((const uint8_t*)(x))[1] << 8) | \
- ((const uint8_t*)(x))[0])
-#endif
-#ifndef AV_WL32
-# define AV_WL32(p, d) do { \
- ((uint8_t*)(p))[0] = (d); \
- ((uint8_t*)(p))[1] = (d)>>8; \
- ((uint8_t*)(p))[2] = (d)>>16; \
- ((uint8_t*)(p))[3] = (d)>>24; \
- } while(0)
-#endif
-
-#ifndef AV_RB64
-# define AV_RB64(x) \
- (((uint64_t)((const uint8_t*)(x))[0] << 56) | \
- ((uint64_t)((const uint8_t*)(x))[1] << 48) | \
- ((uint64_t)((const uint8_t*)(x))[2] << 40) | \
- ((uint64_t)((const uint8_t*)(x))[3] << 32) | \
- ((uint64_t)((const uint8_t*)(x))[4] << 24) | \
- ((uint64_t)((const uint8_t*)(x))[5] << 16) | \
- ((uint64_t)((const uint8_t*)(x))[6] << 8) | \
- (uint64_t)((const uint8_t*)(x))[7])
-#endif
-#ifndef AV_WB64
-# define AV_WB64(p, d) do { \
- ((uint8_t*)(p))[7] = (d); \
- ((uint8_t*)(p))[6] = (d)>>8; \
- ((uint8_t*)(p))[5] = (d)>>16; \
- ((uint8_t*)(p))[4] = (d)>>24; \
- ((uint8_t*)(p))[3] = (d)>>32; \
- ((uint8_t*)(p))[2] = (d)>>40; \
- ((uint8_t*)(p))[1] = (d)>>48; \
- ((uint8_t*)(p))[0] = (d)>>56; \
- } while(0)
-#endif
-
-#ifndef AV_RL64
-# define AV_RL64(x) \
- (((uint64_t)((const uint8_t*)(x))[7] << 56) | \
- ((uint64_t)((const uint8_t*)(x))[6] << 48) | \
- ((uint64_t)((const uint8_t*)(x))[5] << 40) | \
- ((uint64_t)((const uint8_t*)(x))[4] << 32) | \
- ((uint64_t)((const uint8_t*)(x))[3] << 24) | \
- ((uint64_t)((const uint8_t*)(x))[2] << 16) | \
- ((uint64_t)((const uint8_t*)(x))[1] << 8) | \
- (uint64_t)((const uint8_t*)(x))[0])
-#endif
-#ifndef AV_WL64
-# define AV_WL64(p, d) do { \
- ((uint8_t*)(p))[0] = (d); \
- ((uint8_t*)(p))[1] = (d)>>8; \
- ((uint8_t*)(p))[2] = (d)>>16; \
- ((uint8_t*)(p))[3] = (d)>>24; \
- ((uint8_t*)(p))[4] = (d)>>32; \
- ((uint8_t*)(p))[5] = (d)>>40; \
- ((uint8_t*)(p))[6] = (d)>>48; \
- ((uint8_t*)(p))[7] = (d)>>56; \
- } while(0)
-#endif
-
-#if AV_HAVE_BIGENDIAN
-# define AV_RN(s, p) AV_RB##s(p)
-# define AV_WN(s, p, v) AV_WB##s(p, v)
-#else
-# define AV_RN(s, p) AV_RL##s(p)
-# define AV_WN(s, p, v) AV_WL##s(p, v)
-#endif
-
-#endif /* HAVE_FAST_UNALIGNED */
-
-#ifndef AV_RN16
-# define AV_RN16(p) AV_RN(16, p)
-#endif
-
-#ifndef AV_RN32
-# define AV_RN32(p) AV_RN(32, p)
-#endif
-
-#ifndef AV_RN64
-# define AV_RN64(p) AV_RN(64, p)
-#endif
-
-#ifndef AV_WN16
-# define AV_WN16(p, v) AV_WN(16, p, v)
-#endif
-
-#ifndef AV_WN32
-# define AV_WN32(p, v) AV_WN(32, p, v)
-#endif
-
-#ifndef AV_WN64
-# define AV_WN64(p, v) AV_WN(64, p, v)
-#endif
-
-#if AV_HAVE_BIGENDIAN
-# define AV_RB(s, p) AV_RN##s(p)
-# define AV_WB(s, p, v) AV_WN##s(p, v)
-# define AV_RL(s, p) av_bswap##s(AV_RN##s(p))
-# define AV_WL(s, p, v) AV_WN##s(p, av_bswap##s(v))
-#else
-# define AV_RB(s, p) av_bswap##s(AV_RN##s(p))
-# define AV_WB(s, p, v) AV_WN##s(p, av_bswap##s(v))
-# define AV_RL(s, p) AV_RN##s(p)
-# define AV_WL(s, p, v) AV_WN##s(p, v)
-#endif
-
-#define AV_RB8(x) (((const uint8_t*)(x))[0])
-#define AV_WB8(p, d) do { ((uint8_t*)(p))[0] = (d); } while(0)
-
-#define AV_RL8(x) AV_RB8(x)
-#define AV_WL8(p, d) AV_WB8(p, d)
-
-#ifndef AV_RB16
-# define AV_RB16(p) AV_RB(16, p)
-#endif
-#ifndef AV_WB16
-# define AV_WB16(p, v) AV_WB(16, p, v)
-#endif
-
-#ifndef AV_RL16
-# define AV_RL16(p) AV_RL(16, p)
-#endif
-#ifndef AV_WL16
-# define AV_WL16(p, v) AV_WL(16, p, v)
-#endif
-
-#ifndef AV_RB32
-# define AV_RB32(p) AV_RB(32, p)
-#endif
-#ifndef AV_WB32
-# define AV_WB32(p, v) AV_WB(32, p, v)
-#endif
-
-#ifndef AV_RL32
-# define AV_RL32(p) AV_RL(32, p)
-#endif
-#ifndef AV_WL32
-# define AV_WL32(p, v) AV_WL(32, p, v)
-#endif
-
-#ifndef AV_RB64
-# define AV_RB64(p) AV_RB(64, p)
-#endif
-#ifndef AV_WB64
-# define AV_WB64(p, v) AV_WB(64, p, v)
-#endif
-
-#ifndef AV_RL64
-# define AV_RL64(p) AV_RL(64, p)
-#endif
-#ifndef AV_WL64
-# define AV_WL64(p, v) AV_WL(64, p, v)
-#endif
-
-#ifndef AV_RB24
-# define AV_RB24(x) \
- ((((const uint8_t*)(x))[0] << 16) | \
- (((const uint8_t*)(x))[1] << 8) | \
- ((const uint8_t*)(x))[2])
-#endif
-#ifndef AV_WB24
-# define AV_WB24(p, d) do { \
- ((uint8_t*)(p))[2] = (d); \
- ((uint8_t*)(p))[1] = (d)>>8; \
- ((uint8_t*)(p))[0] = (d)>>16; \
- } while(0)
-#endif
-
-#ifndef AV_RL24
-# define AV_RL24(x) \
- ((((const uint8_t*)(x))[2] << 16) | \
- (((const uint8_t*)(x))[1] << 8) | \
- ((const uint8_t*)(x))[0])
-#endif
-#ifndef AV_WL24
-# define AV_WL24(p, d) do { \
- ((uint8_t*)(p))[0] = (d); \
- ((uint8_t*)(p))[1] = (d)>>8; \
- ((uint8_t*)(p))[2] = (d)>>16; \
- } while(0)
-#endif
-
-/*
- * The AV_[RW]NA macros access naturally aligned data
- * in a type-safe way.
- */
-
-#define AV_RNA(s, p) (((const av_alias##s*)(p))->u##s)
-#define AV_WNA(s, p, v) (((av_alias##s*)(p))->u##s = (v))
-
-#ifndef AV_RN16A
-# define AV_RN16A(p) AV_RNA(16, p)
-#endif
-
-#ifndef AV_RN32A
-# define AV_RN32A(p) AV_RNA(32, p)
-#endif
-
-#ifndef AV_RN64A
-# define AV_RN64A(p) AV_RNA(64, p)
-#endif
-
-#ifndef AV_WN16A
-# define AV_WN16A(p, v) AV_WNA(16, p, v)
-#endif
-
-#ifndef AV_WN32A
-# define AV_WN32A(p, v) AV_WNA(32, p, v)
-#endif
-
-#ifndef AV_WN64A
-# define AV_WN64A(p, v) AV_WNA(64, p, v)
-#endif
-
-/* Parameters for AV_COPY*, AV_SWAP*, AV_ZERO* must be
- * naturally aligned. They may be implemented using MMX,
- * so emms_c() must be called before using any float code
- * afterwards.
- */
-
-#define AV_COPY(n, d, s) \
- (((av_alias##n*)(d))->u##n = ((const av_alias##n*)(s))->u##n)
-
-#ifndef AV_COPY16
-# define AV_COPY16(d, s) AV_COPY(16, d, s)
-#endif
-
-#ifndef AV_COPY32
-# define AV_COPY32(d, s) AV_COPY(32, d, s)
-#endif
-
-#ifndef AV_COPY64
-# define AV_COPY64(d, s) AV_COPY(64, d, s)
-#endif
-
-#ifndef AV_COPY128
-# define AV_COPY128(d, s) \
- do { \
- AV_COPY64(d, s); \
- AV_COPY64((char*)(d)+8, (char*)(s)+8); \
- } while(0)
-#endif
-
-#define AV_SWAP(n, a, b) FFSWAP(av_alias##n, *(av_alias##n*)(a), *(av_alias##n*)(b))
-
-#ifndef AV_SWAP64
-# define AV_SWAP64(a, b) AV_SWAP(64, a, b)
-#endif
-
-#define AV_ZERO(n, d) (((av_alias##n*)(d))->u##n = 0)
-
-#ifndef AV_ZERO16
-# define AV_ZERO16(d) AV_ZERO(16, d)
-#endif
-
-#ifndef AV_ZERO32
-# define AV_ZERO32(d) AV_ZERO(32, d)
-#endif
-
-#ifndef AV_ZERO64
-# define AV_ZERO64(d) AV_ZERO(64, d)
-#endif
-
-#ifndef AV_ZERO128
-# define AV_ZERO128(d) \
- do { \
- AV_ZERO64(d); \
- AV_ZERO64((char*)(d)+8); \
- } while(0)
-#endif
-
-#endif /* AVUTIL_INTREADWRITE_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/lfg.h b/branches/1.0/thirdparties/android/include/libavutil/lfg.h
deleted file mode 100644
index 0e89ea3..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/lfg.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Lagged Fibonacci PRNG
- * Copyright (c) 2008 Michael Niedermayer
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_LFG_H
-#define AVUTIL_LFG_H
-
-typedef struct {
- unsigned int state[64];
- int index;
-} AVLFG;
-
-void av_lfg_init(AVLFG *c, unsigned int seed);
-
-/**
- * Get the next random unsigned 32-bit number using an ALFG.
- *
- * Please also consider a simple LCG like state= state*1664525+1013904223,
- * it may be good enough and faster for your specific use case.
- */
-static inline unsigned int av_lfg_get(AVLFG *c){
- c->state[c->index & 63] = c->state[(c->index-24) & 63] + c->state[(c->index-55) & 63];
- return c->state[c->index++ & 63];
-}
-
-/**
- * Get the next random unsigned 32-bit number using a MLFG.
- *
- * Please also consider av_lfg_get() above, it is faster.
- */
-static inline unsigned int av_mlfg_get(AVLFG *c){
- unsigned int a= c->state[(c->index-55) & 63];
- unsigned int b= c->state[(c->index-24) & 63];
- return c->state[c->index++ & 63] = 2*a*b+a+b;
-}
-
-/**
- * Get the next two numbers generated by a Box-Muller Gaussian
- * generator using the random numbers issued by lfg.
- *
- * @param out[2] array where the two generated numbers are placed
- */
-void av_bmg_get(AVLFG *lfg, double out[2]);
-
-#endif /* AVUTIL_LFG_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/log.h b/branches/1.0/thirdparties/android/include/libavutil/log.h
deleted file mode 100644
index 831c26e..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/log.h
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_LOG_H
-#define AVUTIL_LOG_H
-
-#include <stdarg.h>
-#include "avutil.h"
-
-/**
- * Describe the class of an AVClass context structure. That is an
- * arbitrary struct of which the first field is a pointer to an
- * AVClass struct (e.g. AVCodecContext, AVFormatContext etc.).
- */
-typedef struct {
- /**
- * The name of the class; usually it is the same name as the
- * context structure type to which the AVClass is associated.
- */
- const char* class_name;
-
- /**
- * A pointer to a function which returns the name of a context
- * instance ctx associated with the class.
- */
- const char* (*item_name)(void* ctx);
-
- /**
- * a pointer to the first option specified in the class if any or NULL
- *
- * @see av_set_default_options()
- */
- const struct AVOption *option;
-
- /**
- * LIBAVUTIL_VERSION with which this structure was created.
- * This is used to allow fields to be added without requiring major
- * version bumps everywhere.
- */
-
- int version;
-
- /**
- * Offset in the structure where log_level_offset is stored.
- * 0 means there is no such variable
- */
- int log_level_offset_offset;
-
- /**
- * Offset in the structure where a pointer to the parent context for loging is stored.
- * for example a decoder that uses eval.c could pass its AVCodecContext to eval as such
- * parent context. And a av_log() implementation could then display the parent context
- * can be NULL of course
- */
- int parent_log_context_offset;
-} AVClass;
-
-/* av_log API */
-
-#define AV_LOG_QUIET -8
-
-/**
- * Something went really wrong and we will crash now.
- */
-#define AV_LOG_PANIC 0
-
-/**
- * Something went wrong and recovery is not possible.
- * For example, no header was found for a format which depends
- * on headers or an illegal combination of parameters is used.
- */
-#define AV_LOG_FATAL 8
-
-/**
- * Something went wrong and cannot losslessly be recovered.
- * However, not all future data is affected.
- */
-#define AV_LOG_ERROR 16
-
-/**
- * Something somehow does not look correct. This may or may not
- * lead to problems. An example would be the use of '-vstrict -2'.
- */
-#define AV_LOG_WARNING 24
-
-#define AV_LOG_INFO 32
-#define AV_LOG_VERBOSE 40
-
-/**
- * Stuff which is only useful for libav* developers.
- */
-#define AV_LOG_DEBUG 48
-
-/**
- * Send the specified message to the log if the level is less than or equal
- * to the current av_log_level. By default, all logging messages are sent to
- * stderr. This behavior can be altered by setting a different av_vlog callback
- * function.
- *
- * @param avcl A pointer to an arbitrary struct of which the first field is a
- * pointer to an AVClass struct.
- * @param level The importance level of the message, lower values signifying
- * higher importance.
- * @param fmt The format string (printf-compatible) that specifies how
- * subsequent arguments are converted to output.
- * @see av_vlog
- */
-#ifdef __GNUC__
-void av_log(void *avcl, int level, const char *fmt, ...) __attribute__ ((__format__ (__printf__, 3, 4)));
-#else
-void av_log(void *avcl, int level, const char *fmt, ...);
-#endif
-
-void av_vlog(void *avcl, int level, const char *fmt, va_list);
-int av_log_get_level(void);
-void av_log_set_level(int);
-void av_log_set_callback(void (*)(void*, int, const char*, va_list));
-void av_log_default_callback(void* ptr, int level, const char* fmt, va_list vl);
-const char* av_default_item_name(void* ctx);
-
-#endif /* AVUTIL_LOG_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/lzo.h b/branches/1.0/thirdparties/android/include/libavutil/lzo.h
deleted file mode 100644
index deef81b..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/lzo.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * LZO 1x decompression
- * copyright (c) 2006 Reimar Doeffinger
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_LZO_H
-#define AVUTIL_LZO_H
-
-#include <stdint.h>
-
-/** \defgroup errflags Error flags returned by av_lzo1x_decode
- * \{ */
-//! end of the input buffer reached before decoding finished
-#define AV_LZO_INPUT_DEPLETED 1
-//! decoded data did not fit into output buffer
-#define AV_LZO_OUTPUT_FULL 2
-//! a reference to previously decoded data was wrong
-#define AV_LZO_INVALID_BACKPTR 4
-//! a non-specific error in the compressed bitstream
-#define AV_LZO_ERROR 8
-/** \} */
-
-#define AV_LZO_INPUT_PADDING 8
-#define AV_LZO_OUTPUT_PADDING 12
-
-/**
- * \brief Decodes LZO 1x compressed data.
- * \param out output buffer
- * \param outlen size of output buffer, number of bytes left are returned here
- * \param in input buffer
- * \param inlen size of input buffer, number of bytes left are returned here
- * \return 0 on success, otherwise a combination of the error flags above
- *
- * Make sure all buffers are appropriately padded, in must provide
- * AV_LZO_INPUT_PADDING, out must provide AV_LZO_OUTPUT_PADDING additional bytes.
- */
-int av_lzo1x_decode(void *out, int *outlen, const void *in, int *inlen);
-
-/**
- * \brief deliberately overlapping memcpy implementation
- * \param dst destination buffer; must be padded with 12 additional bytes
- * \param back how many bytes back we start (the initial size of the overlapping window)
- * \param cnt number of bytes to copy, must be >= 0
- *
- * cnt > back is valid, this will copy the bytes we just copied,
- * thus creating a repeating pattern with a period length of back.
- */
-void av_memcpy_backptr(uint8_t *dst, int back, int cnt);
-
-#endif /* AVUTIL_LZO_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/mathematics.h b/branches/1.0/thirdparties/android/include/libavutil/mathematics.h
deleted file mode 100644
index df2821f..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/mathematics.h
+++ /dev/null
@@ -1,112 +0,0 @@
-/*
- * copyright (c) 2005 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_MATHEMATICS_H
-#define AVUTIL_MATHEMATICS_H
-
-#include <stdint.h>
-#include <math.h>
-#include "attributes.h"
-#include "rational.h"
-
-#ifndef M_E
-#define M_E 2.7182818284590452354 /* e */
-#endif
-#ifndef M_LN2
-#define M_LN2 0.69314718055994530942 /* log_e 2 */
-#endif
-#ifndef M_LN10
-#define M_LN10 2.30258509299404568402 /* log_e 10 */
-#endif
-#ifndef M_LOG2_10
-#define M_LOG2_10 3.32192809488736234787 /* log_2 10 */
-#endif
-#ifndef M_PHI
-#define M_PHI 1.61803398874989484820 /* phi / golden ratio */
-#endif
-#ifndef M_PI
-#define M_PI 3.14159265358979323846 /* pi */
-#endif
-#ifndef M_SQRT1_2
-#define M_SQRT1_2 0.70710678118654752440 /* 1/sqrt(2) */
-#endif
-#ifndef M_SQRT2
-#define M_SQRT2 1.41421356237309504880 /* sqrt(2) */
-#endif
-#ifndef NAN
-#define NAN (0.0/0.0)
-#endif
-#ifndef INFINITY
-#define INFINITY (1.0/0.0)
-#endif
-
-enum AVRounding {
- AV_ROUND_ZERO = 0, ///< Round toward zero.
- AV_ROUND_INF = 1, ///< Round away from zero.
- AV_ROUND_DOWN = 2, ///< Round toward -infinity.
- AV_ROUND_UP = 3, ///< Round toward +infinity.
- AV_ROUND_NEAR_INF = 5, ///< Round to nearest and halfway cases away from zero.
-};
-
-/**
- * Return the greatest common divisor of a and b.
- * If both a and b are 0 or either or both are <0 then behavior is
- * undefined.
- */
-int64_t av_const av_gcd(int64_t a, int64_t b);
-
-/**
- * Rescale a 64-bit integer with rounding to nearest.
- * A simple a*b/c isn't possible as it can overflow.
- */
-int64_t av_rescale(int64_t a, int64_t b, int64_t c) av_const;
-
-/**
- * Rescale a 64-bit integer with specified rounding.
- * A simple a*b/c isn't possible as it can overflow.
- */
-int64_t av_rescale_rnd(int64_t a, int64_t b, int64_t c, enum AVRounding) av_const;
-
-/**
- * Rescale a 64-bit integer by 2 rational numbers.
- */
-int64_t av_rescale_q(int64_t a, AVRational bq, AVRational cq) av_const;
-
-/**
- * Compare 2 timestamps each in its own timebases.
- * The result of the function is undefined if one of the timestamps
- * is outside the int64_t range when represented in the others timebase.
- * @return -1 if ts_a is before ts_b, 1 if ts_a is after ts_b or 0 if they represent the same position
- */
-int av_compare_ts(int64_t ts_a, AVRational tb_a, int64_t ts_b, AVRational tb_b);
-
-/**
- * Compare 2 integers modulo mod.
- * That is we compare integers a and b for which only the least
- * significant log2(mod) bits are known.
- *
- * @param mod must be a power of 2
- * @return a negative value if a is smaller than b
- * a positive value if a is greater than b
- * 0 if a equals b
- */
-int64_t av_compare_mod(uint64_t a, uint64_t b, uint64_t mod);
-
-#endif /* AVUTIL_MATHEMATICS_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/md5.h b/branches/1.0/thirdparties/android/include/libavutil/md5.h
deleted file mode 100644
index 969202a..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/md5.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_MD5_H
-#define AVUTIL_MD5_H
-
-#include <stdint.h>
-
-extern const int av_md5_size;
-
-struct AVMD5;
-
-void av_md5_init(struct AVMD5 *ctx);
-void av_md5_update(struct AVMD5 *ctx, const uint8_t *src, const int len);
-void av_md5_final(struct AVMD5 *ctx, uint8_t *dst);
-void av_md5_sum(uint8_t *dst, const uint8_t *src, const int len);
-
-#endif /* AVUTIL_MD5_H */
-
diff --git a/branches/1.0/thirdparties/android/include/libavutil/mem.h b/branches/1.0/thirdparties/android/include/libavutil/mem.h
deleted file mode 100644
index cc21305..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/mem.h
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * memory handling functions
- */
-
-#ifndef AVUTIL_MEM_H
-#define AVUTIL_MEM_H
-
-#include "attributes.h"
-#include "avutil.h"
-
-#if defined(__ICC) && _ICC < 1200 || defined(__SUNPRO_C)
- #define DECLARE_ALIGNED(n,t,v) t __attribute__ ((aligned (n))) v
- #define DECLARE_ASM_CONST(n,t,v) const t __attribute__ ((aligned (n))) v
-#elif defined(__TI_COMPILER_VERSION__)
- #define DECLARE_ALIGNED(n,t,v) \
- AV_PRAGMA(DATA_ALIGN(v,n)) \
- t __attribute__((aligned(n))) v
- #define DECLARE_ASM_CONST(n,t,v) \
- AV_PRAGMA(DATA_ALIGN(v,n)) \
- static const t __attribute__((aligned(n))) v
-#elif defined(__GNUC__)
- #define DECLARE_ALIGNED(n,t,v) t __attribute__ ((aligned (n))) v
- #define DECLARE_ASM_CONST(n,t,v) static const t attribute_used __attribute__ ((aligned (n))) v
-#elif defined(_MSC_VER)
- #define DECLARE_ALIGNED(n,t,v) __declspec(align(n)) t v
- #define DECLARE_ASM_CONST(n,t,v) __declspec(align(n)) static const t v
-#else
- #define DECLARE_ALIGNED(n,t,v) t v
- #define DECLARE_ASM_CONST(n,t,v) static const t v
-#endif
-
-#if AV_GCC_VERSION_AT_LEAST(3,1)
- #define av_malloc_attrib __attribute__((__malloc__))
-#else
- #define av_malloc_attrib
-#endif
-
-#if (!defined(__ICC) || __ICC > 1110) && AV_GCC_VERSION_AT_LEAST(4,3)
- #define av_alloc_size(n) __attribute__((alloc_size(n)))
-#else
- #define av_alloc_size(n)
-#endif
-
-/**
- * Allocate a block of size bytes with alignment suitable for all
- * memory accesses (including vectors if available on the CPU).
- * @param size Size in bytes for the memory block to be allocated.
- * @return Pointer to the allocated block, NULL if the block cannot
- * be allocated.
- * @see av_mallocz()
- */
-void *av_malloc(unsigned int size) av_malloc_attrib av_alloc_size(1);
-
-/**
- * Allocate or reallocate a block of memory.
- * If ptr is NULL and size > 0, allocate a new block. If
- * size is zero, free the memory block pointed to by ptr.
- * @param size Size in bytes for the memory block to be allocated or
- * reallocated.
- * @param ptr Pointer to a memory block already allocated with
- * av_malloc(z)() or av_realloc() or NULL.
- * @return Pointer to a newly reallocated block or NULL if the block
- * cannot be reallocated or the function is used to free the memory block.
- * @see av_fast_realloc()
- */
-void *av_realloc(void *ptr, unsigned int size) av_alloc_size(2);
-
-/**
- * Free a memory block which has been allocated with av_malloc(z)() or
- * av_realloc().
- * @param ptr Pointer to the memory block which should be freed.
- * @note ptr = NULL is explicitly allowed.
- * @note It is recommended that you use av_freep() instead.
- * @see av_freep()
- */
-void av_free(void *ptr);
-
-/**
- * Allocate a block of size bytes with alignment suitable for all
- * memory accesses (including vectors if available on the CPU) and
- * zero all the bytes of the block.
- * @param size Size in bytes for the memory block to be allocated.
- * @return Pointer to the allocated block, NULL if it cannot be allocated.
- * @see av_malloc()
- */
-void *av_mallocz(unsigned int size) av_malloc_attrib av_alloc_size(1);
-
-/**
- * Duplicate the string s.
- * @param s string to be duplicated
- * @return Pointer to a newly allocated string containing a
- * copy of s or NULL if the string cannot be allocated.
- */
-char *av_strdup(const char *s) av_malloc_attrib;
-
-/**
- * Free a memory block which has been allocated with av_malloc(z)() or
- * av_realloc() and set the pointer pointing to it to NULL.
- * @param ptr Pointer to the pointer to the memory block which should
- * be freed.
- * @see av_free()
- */
-void av_freep(void *ptr);
-
-#endif /* AVUTIL_MEM_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/pixdesc.h b/branches/1.0/thirdparties/android/include/libavutil/pixdesc.h
deleted file mode 100644
index 8d131be..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/pixdesc.h
+++ /dev/null
@@ -1,154 +0,0 @@
-/*
- * pixel format descriptor
- * Copyright (c) 2009 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_PIXDESC_H
-#define AVUTIL_PIXDESC_H
-
-#include <inttypes.h>
-
-typedef struct AVComponentDescriptor{
- uint16_t plane :2; ///< which of the 4 planes contains the component
-
- /**
- * Number of elements between 2 horizontally consecutive pixels minus 1.
- * Elements are bits for bitstream formats, bytes otherwise.
- */
- uint16_t step_minus1 :3;
-
- /**
- * Number of elements before the component of the first pixel plus 1.
- * Elements are bits for bitstream formats, bytes otherwise.
- */
- uint16_t offset_plus1 :3;
- uint16_t shift :3; ///< number of least significant bits that must be shifted away to get the value
- uint16_t depth_minus1 :4; ///< number of bits in the component minus 1
-}AVComponentDescriptor;
-
-/**
- * Descriptor that unambiguously describes how the bits of a pixel are
- * stored in the up to 4 data planes of an image. It also stores the
- * subsampling factors and number of components.
- *
- * @note This is separate of the colorspace (RGB, YCbCr, YPbPr, JPEG-style YUV
- * and all the YUV variants) AVPixFmtDescriptor just stores how values
- * are stored not what these values represent.
- */
-typedef struct AVPixFmtDescriptor{
- const char *name;
- uint8_t nb_components; ///< The number of components each pixel has, (1-4)
-
- /**
- * Amount to shift the luma width right to find the chroma width.
- * For YV12 this is 1 for example.
- * chroma_width = -((-luma_width) >> log2_chroma_w)
- * The note above is needed to ensure rounding up.
- * This value only refers to the chroma components.
- */
- uint8_t log2_chroma_w; ///< chroma_width = -((-luma_width )>>log2_chroma_w)
-
- /**
- * Amount to shift the luma height right to find the chroma height.
- * For YV12 this is 1 for example.
- * chroma_height= -((-luma_height) >> log2_chroma_h)
- * The note above is needed to ensure rounding up.
- * This value only refers to the chroma components.
- */
- uint8_t log2_chroma_h;
- uint8_t flags;
-
- /**
- * Parameters that describe how pixels are packed. If the format
- * has chroma components, they must be stored in comp[1] and
- * comp[2].
- */
- AVComponentDescriptor comp[4];
-}AVPixFmtDescriptor;
-
-#define PIX_FMT_BE 1 ///< Pixel format is big-endian.
-#define PIX_FMT_PAL 2 ///< Pixel format has a palette in data[1], values are indexes in this palette.
-#define PIX_FMT_BITSTREAM 4 ///< All values of a component are bit-wise packed end to end.
-#define PIX_FMT_HWACCEL 8 ///< Pixel format is an HW accelerated format.
-
-/**
- * The array of all the pixel format descriptors.
- */
-extern const AVPixFmtDescriptor av_pix_fmt_descriptors[];
-
-/**
- * Read a line from an image, and write the values of the
- * pixel format component c to dst.
- *
- * @param data the array containing the pointers to the planes of the image
- * @param linesize the array containing the linesizes of the image
- * @param desc the pixel format descriptor for the image
- * @param x the horizontal coordinate of the first pixel to read
- * @param y the vertical coordinate of the first pixel to read
- * @param w the width of the line to read, that is the number of
- * values to write to dst
- * @param read_pal_component if not zero and the format is a paletted
- * format writes the values corresponding to the palette
- * component c in data[1] to dst, rather than the palette indexes in
- * data[0]. The behavior is undefined if the format is not paletted.
- */
-void av_read_image_line(uint16_t *dst, const uint8_t *data[4], const int linesize[4],
- const AVPixFmtDescriptor *desc, int x, int y, int c, int w, int read_pal_component);
-
-/**
- * Write the values from src to the pixel format component c of an
- * image line.
- *
- * @param src array containing the values to write
- * @param data the array containing the pointers to the planes of the
- * image to write into. It is supposed to be zeroed.
- * @param linesize the array containing the linesizes of the image
- * @param desc the pixel format descriptor for the image
- * @param x the horizontal coordinate of the first pixel to write
- * @param y the vertical coordinate of the first pixel to write
- * @param w the width of the line to write, that is the number of
- * values to write to the image line
- */
-void av_write_image_line(const uint16_t *src, uint8_t *data[4], const int linesize[4],
- const AVPixFmtDescriptor *desc, int x, int y, int c, int w);
-
-/**
- * Return the pixel format corresponding to name.
- *
- * If there is no pixel format with name name, then looks for a
- * pixel format with the name corresponding to the native endian
- * format of name.
- * For example in a little-endian system, first looks for "gray16",
- * then for "gray16le".
- *
- * Finally if no pixel format has been found, returns PIX_FMT_NONE.
- */
-enum PixelFormat av_get_pix_fmt(const char *name);
-
-/**
- * Return the number of bits per pixel used by the pixel format
- * described by pixdesc.
- *
- * The returned number of bits refers to the number of bits actually
- * used for storing the pixel information, that is padding bits are
- * not counted.
- */
-int av_get_bits_per_pixel(const AVPixFmtDescriptor *pixdesc);
-
-#endif /* AVUTIL_PIXDESC_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/pixfmt.h b/branches/1.0/thirdparties/android/include/libavutil/pixfmt.h
deleted file mode 100644
index e7a150d..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/pixfmt.h
+++ /dev/null
@@ -1,163 +0,0 @@
-/*
- * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_PIXFMT_H
-#define AVUTIL_PIXFMT_H
-
-/**
- * @file
- * pixel format definitions
- *
- * @warning This file has to be considered an internal but installed
- * header, so it should not be directly included in your projects.
- */
-
-#include "libavutil/avconfig.h"
-
-/**
- * Pixel format. Notes:
- *
- * PIX_FMT_RGB32 is handled in an endian-specific manner. An RGBA
- * color is put together as:
- * (A << 24) | (R << 16) | (G << 8) | B
- * This is stored as BGRA on little-endian CPU architectures and ARGB on
- * big-endian CPUs.
- *
- * When the pixel format is palettized RGB (PIX_FMT_PAL8), the palettized
- * image data is stored in AVFrame.data[0]. The palette is transported in
- * AVFrame.data[1], is 1024 bytes long (256 4-byte entries) and is
- * formatted the same as in PIX_FMT_RGB32 described above (i.e., it is
- * also endian-specific). Note also that the individual RGB palette
- * components stored in AVFrame.data[1] should be in the range 0..255.
- * This is important as many custom PAL8 video codecs that were designed
- * to run on the IBM VGA graphics adapter use 6-bit palette components.
- *
- * For all the 8bit per pixel formats, an RGB32 palette is in data[1] like
- * for pal8. This palette is filled in automatically by the function
- * allocating the picture.
- *
- * Note, make sure that all newly added big endian formats have pix_fmt&1==1
- * and that all newly added little endian formats have pix_fmt&1==0
- * this allows simpler detection of big vs little endian.
- */
-enum PixelFormat {
- PIX_FMT_NONE= -1,
- PIX_FMT_YUV420P, ///< planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
- PIX_FMT_YUYV422, ///< packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr
- PIX_FMT_RGB24, ///< packed RGB 8:8:8, 24bpp, RGBRGB...
- PIX_FMT_BGR24, ///< packed RGB 8:8:8, 24bpp, BGRBGR...
- PIX_FMT_YUV422P, ///< planar YUV 4:2:2, 16bpp, (1 Cr & Cb sample per 2x1 Y samples)
- PIX_FMT_YUV444P, ///< planar YUV 4:4:4, 24bpp, (1 Cr & Cb sample per 1x1 Y samples)
- PIX_FMT_YUV410P, ///< planar YUV 4:1:0, 9bpp, (1 Cr & Cb sample per 4x4 Y samples)
- PIX_FMT_YUV411P, ///< planar YUV 4:1:1, 12bpp, (1 Cr & Cb sample per 4x1 Y samples)
- PIX_FMT_GRAY8, ///< Y , 8bpp
- PIX_FMT_MONOWHITE, ///< Y , 1bpp, 0 is white, 1 is black, in each byte pixels are ordered from the msb to the lsb
- PIX_FMT_MONOBLACK, ///< Y , 1bpp, 0 is black, 1 is white, in each byte pixels are ordered from the msb to the lsb
- PIX_FMT_PAL8, ///< 8 bit with PIX_FMT_RGB32 palette
- PIX_FMT_YUVJ420P, ///< planar YUV 4:2:0, 12bpp, full scale (JPEG), deprecated in favor of PIX_FMT_YUV420P and setting color_range
- PIX_FMT_YUVJ422P, ///< planar YUV 4:2:2, 16bpp, full scale (JPEG), deprecated in favor of PIX_FMT_YUV422P and setting color_range
- PIX_FMT_YUVJ444P, ///< planar YUV 4:4:4, 24bpp, full scale (JPEG), deprecated in favor of PIX_FMT_YUV444P and setting color_range
- PIX_FMT_XVMC_MPEG2_MC,///< XVideo Motion Acceleration via common packet passing
- PIX_FMT_XVMC_MPEG2_IDCT,
- PIX_FMT_UYVY422, ///< packed YUV 4:2:2, 16bpp, Cb Y0 Cr Y1
- PIX_FMT_UYYVYY411, ///< packed YUV 4:1:1, 12bpp, Cb Y0 Y1 Cr Y2 Y3
- PIX_FMT_BGR8, ///< packed RGB 3:3:2, 8bpp, (msb)2B 3G 3R(lsb)
- PIX_FMT_BGR4, ///< packed RGB 1:2:1 bitstream, 4bpp, (msb)1B 2G 1R(lsb), a byte contains two pixels, the first pixel in the byte is the one composed by the 4 msb bits
- PIX_FMT_BGR4_BYTE, ///< packed RGB 1:2:1, 8bpp, (msb)1B 2G 1R(lsb)
- PIX_FMT_RGB8, ///< packed RGB 3:3:2, 8bpp, (msb)2R 3G 3B(lsb)
- PIX_FMT_RGB4, ///< packed RGB 1:2:1 bitstream, 4bpp, (msb)1R 2G 1B(lsb), a byte contains two pixels, the first pixel in the byte is the one composed by the 4 msb bits
- PIX_FMT_RGB4_BYTE, ///< packed RGB 1:2:1, 8bpp, (msb)1R 2G 1B(lsb)
- PIX_FMT_NV12, ///< planar YUV 4:2:0, 12bpp, 1 plane for Y and 1 plane for the UV components, which are interleaved (first byte U and the following byte V)
- PIX_FMT_NV21, ///< as above, but U and V bytes are swapped
-
- PIX_FMT_ARGB, ///< packed ARGB 8:8:8:8, 32bpp, ARGBARGB...
- PIX_FMT_RGBA, ///< packed RGBA 8:8:8:8, 32bpp, RGBARGBA...
- PIX_FMT_ABGR, ///< packed ABGR 8:8:8:8, 32bpp, ABGRABGR...
- PIX_FMT_BGRA, ///< packed BGRA 8:8:8:8, 32bpp, BGRABGRA...
-
- PIX_FMT_GRAY16BE, ///< Y , 16bpp, big-endian
- PIX_FMT_GRAY16LE, ///< Y , 16bpp, little-endian
- PIX_FMT_YUV440P, ///< planar YUV 4:4:0 (1 Cr & Cb sample per 1x2 Y samples)
- PIX_FMT_YUVJ440P, ///< planar YUV 4:4:0 full scale (JPEG), deprecated in favor of PIX_FMT_YUV440P and setting color_range
- PIX_FMT_YUVA420P, ///< planar YUV 4:2:0, 20bpp, (1 Cr & Cb sample per 2x2 Y & A samples)
- PIX_FMT_VDPAU_H264,///< H.264 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
- PIX_FMT_VDPAU_MPEG1,///< MPEG-1 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
- PIX_FMT_VDPAU_MPEG2,///< MPEG-2 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
- PIX_FMT_VDPAU_WMV3,///< WMV3 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
- PIX_FMT_VDPAU_VC1, ///< VC-1 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
- PIX_FMT_RGB48BE, ///< packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, the 2-byte value for each R/G/B component is stored as big-endian
- PIX_FMT_RGB48LE, ///< packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, the 2-byte value for each R/G/B component is stored as little-endian
-
- PIX_FMT_RGB565BE, ///< packed RGB 5:6:5, 16bpp, (msb) 5R 6G 5B(lsb), big-endian
- PIX_FMT_RGB565LE, ///< packed RGB 5:6:5, 16bpp, (msb) 5R 6G 5B(lsb), little-endian
- PIX_FMT_RGB555BE, ///< packed RGB 5:5:5, 16bpp, (msb)1A 5R 5G 5B(lsb), big-endian, most significant bit to 0
- PIX_FMT_RGB555LE, ///< packed RGB 5:5:5, 16bpp, (msb)1A 5R 5G 5B(lsb), little-endian, most significant bit to 0
-
- PIX_FMT_BGR565BE, ///< packed BGR 5:6:5, 16bpp, (msb) 5B 6G 5R(lsb), big-endian
- PIX_FMT_BGR565LE, ///< packed BGR 5:6:5, 16bpp, (msb) 5B 6G 5R(lsb), little-endian
- PIX_FMT_BGR555BE, ///< packed BGR 5:5:5, 16bpp, (msb)1A 5B 5G 5R(lsb), big-endian, most significant bit to 1
- PIX_FMT_BGR555LE, ///< packed BGR 5:5:5, 16bpp, (msb)1A 5B 5G 5R(lsb), little-endian, most significant bit to 1
-
- PIX_FMT_VAAPI_MOCO, ///< HW acceleration through VA API at motion compensation entry-point, Picture.data[3] contains a vaapi_render_state struct which contains macroblocks as well as various fields extracted from headers
- PIX_FMT_VAAPI_IDCT, ///< HW acceleration through VA API at IDCT entry-point, Picture.data[3] contains a vaapi_render_state struct which contains fields extracted from headers
- PIX_FMT_VAAPI_VLD, ///< HW decoding through VA API, Picture.data[3] contains a vaapi_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
-
- PIX_FMT_YUV420P16LE, ///< planar YUV 4:2:0, 24bpp, (1 Cr & Cb sample per 2x2 Y samples), little-endian
- PIX_FMT_YUV420P16BE, ///< planar YUV 4:2:0, 24bpp, (1 Cr & Cb sample per 2x2 Y samples), big-endian
- PIX_FMT_YUV422P16LE, ///< planar YUV 4:2:2, 32bpp, (1 Cr & Cb sample per 2x1 Y samples), little-endian
- PIX_FMT_YUV422P16BE, ///< planar YUV 4:2:2, 32bpp, (1 Cr & Cb sample per 2x1 Y samples), big-endian
- PIX_FMT_YUV444P16LE, ///< planar YUV 4:4:4, 48bpp, (1 Cr & Cb sample per 1x1 Y samples), little-endian
- PIX_FMT_YUV444P16BE, ///< planar YUV 4:4:4, 48bpp, (1 Cr & Cb sample per 1x1 Y samples), big-endian
- PIX_FMT_VDPAU_MPEG4, ///< MPEG4 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
- PIX_FMT_DXVA2_VLD, ///< HW decoding through DXVA2, Picture.data[3] contains a LPDIRECT3DSURFACE9 pointer
-
- PIX_FMT_RGB444BE, ///< packed RGB 4:4:4, 16bpp, (msb)4A 4R 4G 4B(lsb), big-endian, most significant bits to 0
- PIX_FMT_RGB444LE, ///< packed RGB 4:4:4, 16bpp, (msb)4A 4R 4G 4B(lsb), little-endian, most significant bits to 0
- PIX_FMT_BGR444BE, ///< packed BGR 4:4:4, 16bpp, (msb)4A 4B 4G 4R(lsb), big-endian, most significant bits to 1
- PIX_FMT_BGR444LE, ///< packed BGR 4:4:4, 16bpp, (msb)4A 4B 4G 4R(lsb), little-endian, most significant bits to 1
- PIX_FMT_Y400A, ///< 8bit gray, 8bit alpha
- PIX_FMT_NB, ///< number of pixel formats, DO NOT USE THIS if you want to link with shared libav* because the number of formats might differ between versions
-};
-
-#if AV_HAVE_BIGENDIAN
-# define PIX_FMT_NE(be, le) PIX_FMT_##be
-#else
-# define PIX_FMT_NE(be, le) PIX_FMT_##le
-#endif
-
-#define PIX_FMT_RGB32 PIX_FMT_NE(ARGB, BGRA)
-#define PIX_FMT_RGB32_1 PIX_FMT_NE(RGBA, ABGR)
-#define PIX_FMT_BGR32 PIX_FMT_NE(ABGR, RGBA)
-#define PIX_FMT_BGR32_1 PIX_FMT_NE(BGRA, ARGB)
-
-#define PIX_FMT_GRAY16 PIX_FMT_NE(GRAY16BE, GRAY16LE)
-#define PIX_FMT_RGB48 PIX_FMT_NE(RGB48BE, RGB48LE)
-#define PIX_FMT_RGB565 PIX_FMT_NE(RGB565BE, RGB565LE)
-#define PIX_FMT_RGB555 PIX_FMT_NE(RGB555BE, RGB555LE)
-#define PIX_FMT_RGB444 PIX_FMT_NE(RGB444BE, RGB444LE)
-#define PIX_FMT_BGR565 PIX_FMT_NE(BGR565BE, BGR565LE)
-#define PIX_FMT_BGR555 PIX_FMT_NE(BGR555BE, BGR555LE)
-#define PIX_FMT_BGR444 PIX_FMT_NE(BGR444BE, BGR444LE)
-
-#define PIX_FMT_YUV420P16 PIX_FMT_NE(YUV420P16BE, YUV420P16LE)
-#define PIX_FMT_YUV422P16 PIX_FMT_NE(YUV422P16BE, YUV422P16LE)
-#define PIX_FMT_YUV444P16 PIX_FMT_NE(YUV444P16BE, YUV444P16LE)
-
-#endif /* AVUTIL_PIXFMT_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/random_seed.h b/branches/1.0/thirdparties/android/include/libavutil/random_seed.h
deleted file mode 100644
index 7f75063..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/random_seed.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright (c) 2009 Baptiste Coudurier <baptiste.coudurier@gmail.com>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_RANDOM_SEED_H
-#define AVUTIL_RANDOM_SEED_H
-
-#include <stdint.h>
-
-/**
- * Get a seed to use in conjunction with random functions.
- */
-uint32_t av_get_random_seed(void);
-
-#endif /* AVUTIL_RANDOM_SEED_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/rational.h b/branches/1.0/thirdparties/android/include/libavutil/rational.h
deleted file mode 100644
index edbc674..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/rational.h
+++ /dev/null
@@ -1,129 +0,0 @@
-/*
- * rational numbers
- * Copyright (c) 2003 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * rational numbers
- * @author Michael Niedermayer <michaelni@gmx.at>
- */
-
-#ifndef AVUTIL_RATIONAL_H
-#define AVUTIL_RATIONAL_H
-
-#include <stdint.h>
-#include "attributes.h"
-
-/**
- * rational number numerator/denominator
- */
-typedef struct AVRational{
- int num; ///< numerator
- int den; ///< denominator
-} AVRational;
-
-/**
- * Compare two rationals.
- * @param a first rational
- * @param b second rational
- * @return 0 if a==b, 1 if a>b and -1 if a<b
- */
-static inline int av_cmp_q(AVRational a, AVRational b){
- const int64_t tmp= a.num * (int64_t)b.den - b.num * (int64_t)a.den;
-
- if(tmp) return (tmp>>63)|1;
- else return 0;
-}
-
-/**
- * Convert rational to double.
- * @param a rational to convert
- * @return (double) a
- */
-static inline double av_q2d(AVRational a){
- return a.num / (double) a.den;
-}
-
-/**
- * Reduce a fraction.
- * This is useful for framerate calculations.
- * @param dst_num destination numerator
- * @param dst_den destination denominator
- * @param num source numerator
- * @param den source denominator
- * @param max the maximum allowed for dst_num & dst_den
- * @return 1 if exact, 0 otherwise
- */
-int av_reduce(int *dst_num, int *dst_den, int64_t num, int64_t den, int64_t max);
-
-/**
- * Multiply two rationals.
- * @param b first rational
- * @param c second rational
- * @return b*c
- */
-AVRational av_mul_q(AVRational b, AVRational c) av_const;
-
-/**
- * Divide one rational by another.
- * @param b first rational
- * @param c second rational
- * @return b/c
- */
-AVRational av_div_q(AVRational b, AVRational c) av_const;
-
-/**
- * Add two rationals.
- * @param b first rational
- * @param c second rational
- * @return b+c
- */
-AVRational av_add_q(AVRational b, AVRational c) av_const;
-
-/**
- * Subtract one rational from another.
- * @param b first rational
- * @param c second rational
- * @return b-c
- */
-AVRational av_sub_q(AVRational b, AVRational c) av_const;
-
-/**
- * Convert a double precision floating point number to a rational.
- * @param d double to convert
- * @param max the maximum allowed numerator and denominator
- * @return (AVRational) d
- */
-AVRational av_d2q(double d, int max) av_const;
-
-/**
- * @return 1 if q1 is nearer to q than q2, -1 if q2 is nearer
- * than q1, 0 if they have the same distance.
- */
-int av_nearer_q(AVRational q, AVRational q1, AVRational q2);
-
-/**
- * Find the nearest value in q_list to q.
- * @param q_list an array of rationals terminated by {0, 0}
- * @return the index of the nearest value found in the array
- */
-int av_find_nearest_q_idx(AVRational q, const AVRational* q_list);
-
-#endif /* AVUTIL_RATIONAL_H */
diff --git a/branches/1.0/thirdparties/android/include/libavutil/sha1.h b/branches/1.0/thirdparties/android/include/libavutil/sha1.h
deleted file mode 100644
index 3ff5804..0000000
--- a/branches/1.0/thirdparties/android/include/libavutil/sha1.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright (C) 2007 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_SHA1_H
-#define AVUTIL_SHA1_H
-
-#include <stdint.h>
-
-extern const int av_sha1_size;
-
-struct AVSHA1;
-
-/**
- * Initialize SHA-1 hashing.
- *
- * @param context pointer to the function context (of size av_sha_size)
- * @deprecated use av_sha_init() instead
- */
-void av_sha1_init(struct AVSHA1* context);
-
-/**
- * Update hash value.
- *
- * @param context hash function context
- * @param data input data to update hash with
- * @param len input data length
- * @deprecated use av_sha_update() instead
- */
-void av_sha1_update(struct AVSHA1* context, const uint8_t* data, unsigned int len);
-
-/**
- * Finish hashing and output digest value.
- *
- * @param context hash function context
- * @param digest buffer where output digest value is stored
- * @deprecated use av_sha_final() instead
- */
-void av_sha1_final(struct AVSHA1* context, uint8_t digest[20]);
-
-#endif /* AVUTIL_SHA1_H */
diff --git a/branches/1.0/thirdparties/android/include/libswscale/swscale.h b/branches/1.0/thirdparties/android/include/libswscale/swscale.h
deleted file mode 100644
index 1f6c5c9..0000000
--- a/branches/1.0/thirdparties/android/include/libswscale/swscale.h
+++ /dev/null
@@ -1,331 +0,0 @@
-/*
- * Copyright (C) 2001-2003 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef SWSCALE_SWSCALE_H
-#define SWSCALE_SWSCALE_H
-
-/**
- * @file
- * @brief
- * external api for the swscale stuff
- */
-
-#include "libavutil/avutil.h"
-
-#define LIBSWSCALE_VERSION_MAJOR 0
-#define LIBSWSCALE_VERSION_MINOR 11
-#define LIBSWSCALE_VERSION_MICRO 0
-
-#define LIBSWSCALE_VERSION_INT AV_VERSION_INT(LIBSWSCALE_VERSION_MAJOR, \
- LIBSWSCALE_VERSION_MINOR, \
- LIBSWSCALE_VERSION_MICRO)
-#define LIBSWSCALE_VERSION AV_VERSION(LIBSWSCALE_VERSION_MAJOR, \
- LIBSWSCALE_VERSION_MINOR, \
- LIBSWSCALE_VERSION_MICRO)
-#define LIBSWSCALE_BUILD LIBSWSCALE_VERSION_INT
-
-#define LIBSWSCALE_IDENT "SwS" AV_STRINGIFY(LIBSWSCALE_VERSION)
-
-/**
- * Returns the LIBSWSCALE_VERSION_INT constant.
- */
-unsigned swscale_version(void);
-
-/**
- * Returns the libswscale build-time configuration.
- */
-const char *swscale_configuration(void);
-
-/**
- * Returns the libswscale license.
- */
-const char *swscale_license(void);
-
-/* values for the flags, the stuff on the command line is different */
-#define SWS_FAST_BILINEAR 1
-#define SWS_BILINEAR 2
-#define SWS_BICUBIC 4
-#define SWS_X 8
-#define SWS_POINT 0x10
-#define SWS_AREA 0x20
-#define SWS_BICUBLIN 0x40
-#define SWS_GAUSS 0x80
-#define SWS_SINC 0x100
-#define SWS_LANCZOS 0x200
-#define SWS_SPLINE 0x400
-
-#define SWS_SRC_V_CHR_DROP_MASK 0x30000
-#define SWS_SRC_V_CHR_DROP_SHIFT 16
-
-#define SWS_PARAM_DEFAULT 123456
-
-#define SWS_PRINT_INFO 0x1000
-
-//the following 3 flags are not completely implemented
-//internal chrominace subsampling info
-#define SWS_FULL_CHR_H_INT 0x2000
-//input subsampling info
-#define SWS_FULL_CHR_H_INP 0x4000
-#define SWS_DIRECT_BGR 0x8000
-#define SWS_ACCURATE_RND 0x40000
-#define SWS_BITEXACT 0x80000
-
-#define SWS_CPU_CAPS_MMX 0x80000000
-#define SWS_CPU_CAPS_MMX2 0x20000000
-#define SWS_CPU_CAPS_3DNOW 0x40000000
-#define SWS_CPU_CAPS_ALTIVEC 0x10000000
-#define SWS_CPU_CAPS_BFIN 0x01000000
-
-#define SWS_MAX_REDUCE_CUTOFF 0.002
-
-#define SWS_CS_ITU709 1
-#define SWS_CS_FCC 4
-#define SWS_CS_ITU601 5
-#define SWS_CS_ITU624 5
-#define SWS_CS_SMPTE170M 5
-#define SWS_CS_SMPTE240M 7
-#define SWS_CS_DEFAULT 5
-
-/**
- * Returns a pointer to yuv<->rgb coefficients for the given colorspace
- * suitable for sws_setColorspaceDetails().
- *
- * @param colorspace One of the SWS_CS_* macros. If invalid,
- * SWS_CS_DEFAULT is used.
- */
-const int *sws_getCoefficients(int colorspace);
-
-
-// when used for filters they must have an odd number of elements
-// coeffs cannot be shared between vectors
-typedef struct {
- double *coeff; ///< pointer to the list of coefficients
- int length; ///< number of coefficients in the vector
-} SwsVector;
-
-// vectors can be shared
-typedef struct {
- SwsVector *lumH;
- SwsVector *lumV;
- SwsVector *chrH;
- SwsVector *chrV;
-} SwsFilter;
-
-struct SwsContext;
-
-/**
- * Returns a positive value if pix_fmt is a supported input format, 0
- * otherwise.
- */
-int sws_isSupportedInput(enum PixelFormat pix_fmt);
-
-/**
- * Returns a positive value if pix_fmt is a supported output format, 0
- * otherwise.
- */
-int sws_isSupportedOutput(enum PixelFormat pix_fmt);
-
-/**
- * Frees the swscaler context swsContext.
- * If swsContext is NULL, then does nothing.
- */
-void sws_freeContext(struct SwsContext *swsContext);
-
-/**
- * Allocates and returns a SwsContext. You need it to perform
- * scaling/conversion operations using sws_scale().
- *
- * @param srcW the width of the source image
- * @param srcH the height of the source image
- * @param srcFormat the source image format
- * @param dstW the width of the destination image
- * @param dstH the height of the destination image
- * @param dstFormat the destination image format
- * @param flags specify which algorithm and options to use for rescaling
- * @return a pointer to an allocated context, or NULL in case of error
- */
-struct SwsContext *sws_getContext(int srcW, int srcH, enum PixelFormat srcFormat,
- int dstW, int dstH, enum PixelFormat dstFormat,
- int flags, SwsFilter *srcFilter,
- SwsFilter *dstFilter, const double *param);
-
-/**
- * Scales the image slice in srcSlice and puts the resulting scaled
- * slice in the image in dst. A slice is a sequence of consecutive
- * rows in an image.
- *
- * Slices have to be provided in sequential order, either in
- * top-bottom or bottom-top order. If slices are provided in
- * non-sequential order the behavior of the function is undefined.
- *
- * @param context the scaling context previously created with
- * sws_getContext()
- * @param srcSlice the array containing the pointers to the planes of
- * the source slice
- * @param srcStride the array containing the strides for each plane of
- * the source image
- * @param srcSliceY the position in the source image of the slice to
- * process, that is the number (counted starting from
- * zero) in the image of the first row of the slice
- * @param srcSliceH the height of the source slice, that is the number
- * of rows in the slice
- * @param dst the array containing the pointers to the planes of
- * the destination image
- * @param dstStride the array containing the strides for each plane of
- * the destination image
- * @return the height of the output slice
- */
-int sws_scale(struct SwsContext *context, const uint8_t* const srcSlice[], const int srcStride[],
- int srcSliceY, int srcSliceH, uint8_t* const dst[], const int dstStride[]);
-
-#if LIBSWSCALE_VERSION_MAJOR < 1
-/**
- * @deprecated Use sws_scale() instead.
- */
-int sws_scale_ordered(struct SwsContext *context, const uint8_t* const src[],
- int srcStride[], int srcSliceY, int srcSliceH,
- uint8_t* dst[], int dstStride[]) attribute_deprecated;
-#endif
-
-/**
- * @param inv_table the yuv2rgb coefficients, normally ff_yuv2rgb_coeffs[x]
- * @param fullRange if 1 then the luma range is 0..255 if 0 it is 16..235
- * @return -1 if not supported
- */
-int sws_setColorspaceDetails(struct SwsContext *c, const int inv_table[4],
- int srcRange, const int table[4], int dstRange,
- int brightness, int contrast, int saturation);
-
-/**
- * @return -1 if not supported
- */
-int sws_getColorspaceDetails(struct SwsContext *c, int **inv_table,
- int *srcRange, int **table, int *dstRange,
- int *brightness, int *contrast, int *saturation);
-
-/**
- * Allocates and returns an uninitialized vector with length coefficients.
- */
-SwsVector *sws_allocVec(int length);
-
-/**
- * Returns a normalized Gaussian curve used to filter stuff
- * quality=3 is high quality, lower is lower quality.
- */
-SwsVector *sws_getGaussianVec(double variance, double quality);
-
-/**
- * Allocates and returns a vector with length coefficients, all
- * with the same value c.
- */
-SwsVector *sws_getConstVec(double c, int length);
-
-/**
- * Allocates and returns a vector with just one coefficient, with
- * value 1.0.
- */
-SwsVector *sws_getIdentityVec(void);
-
-/**
- * Scales all the coefficients of a by the scalar value.
- */
-void sws_scaleVec(SwsVector *a, double scalar);
-
-/**
- * Scales all the coefficients of a so that their sum equals height.
- */
-void sws_normalizeVec(SwsVector *a, double height);
-void sws_convVec(SwsVector *a, SwsVector *b);
-void sws_addVec(SwsVector *a, SwsVector *b);
-void sws_subVec(SwsVector *a, SwsVector *b);
-void sws_shiftVec(SwsVector *a, int shift);
-
-/**
- * Allocates and returns a clone of the vector a, that is a vector
- * with the same coefficients as a.
- */
-SwsVector *sws_cloneVec(SwsVector *a);
-
-#if LIBSWSCALE_VERSION_MAJOR < 1
-/**
- * @deprecated Use sws_printVec2() instead.
- */
-attribute_deprecated void sws_printVec(SwsVector *a);
-#endif
-
-/**
- * Prints with av_log() a textual representation of the vector a
- * if log_level <= av_log_level.
- */
-void sws_printVec2(SwsVector *a, AVClass *log_ctx, int log_level);
-
-void sws_freeVec(SwsVector *a);
-
-SwsFilter *sws_getDefaultFilter(float lumaGBlur, float chromaGBlur,
- float lumaSharpen, float chromaSharpen,
- float chromaHShift, float chromaVShift,
- int verbose);
-void sws_freeFilter(SwsFilter *filter);
-
-/**
- * Checks if context can be reused, otherwise reallocates a new
- * one.
- *
- * If context is NULL, just calls sws_getContext() to get a new
- * context. Otherwise, checks if the parameters are the ones already
- * saved in context. If that is the case, returns the current
- * context. Otherwise, frees context and gets a new context with
- * the new parameters.
- *
- * Be warned that srcFilter and dstFilter are not checked, they
- * are assumed to remain the same.
- */
-struct SwsContext *sws_getCachedContext(struct SwsContext *context,
- int srcW, int srcH, enum PixelFormat srcFormat,
- int dstW, int dstH, enum PixelFormat dstFormat,
- int flags, SwsFilter *srcFilter,
- SwsFilter *dstFilter, const double *param);
-
-/**
- * Converts an 8bit paletted frame into a frame with a color depth of 32-bits.
- *
- * The output frame will have the same packed format as the palette.
- *
- * @param src source frame buffer
- * @param dst destination frame buffer
- * @param num_pixels number of pixels to convert
- * @param palette array with [256] entries, which must match color arrangement (RGB or BGR) of src
- */
-void sws_convertPalette8ToPacked32(const uint8_t *src, uint8_t *dst, long num_pixels, const uint8_t *palette);
-
-/**
- * Converts an 8bit paletted frame into a frame with a color depth of 24 bits.
- *
- * With the palette format "ABCD", the destination frame ends up with the format "ABC".
- *
- * @param src source frame buffer
- * @param dst destination frame buffer
- * @param num_pixels number of pixels to convert
- * @param palette array with [256] entries, which must match color arrangement (RGB or BGR) of src
- */
-void sws_convertPalette8ToPacked24(const uint8_t *src, uint8_t *dst, long num_pixels, const uint8_t *palette);
-
-
-#endif /* SWSCALE_SWSCALE_H */
diff --git a/branches/1.0/thirdparties/android/include/ogg/config_types.h b/branches/1.0/thirdparties/android/include/ogg/config_types.h
deleted file mode 100644
index a320fc8..0000000
--- a/branches/1.0/thirdparties/android/include/ogg/config_types.h
+++ /dev/null
@@ -1,11 +0,0 @@
-#ifndef __CONFIG_TYPES_H__
-#define __CONFIG_TYPES_H__
-
-/* these are filled in by configure */
-typedef short ogg_int16_t;
-typedef unsigned short ogg_uint16_t;
-typedef int ogg_int32_t;
-typedef unsigned int ogg_uint32_t;
-typedef long long ogg_int64_t;
-
-#endif
diff --git a/branches/1.0/thirdparties/android/include/ogg/ogg.h b/branches/1.0/thirdparties/android/include/ogg/ogg.h
deleted file mode 100644
index ae0cfd5..0000000
--- a/branches/1.0/thirdparties/android/include/ogg/ogg.h
+++ /dev/null
@@ -1,208 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 *
- * by the Xiph.Org Foundation http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: toplevel libogg include
- last mod: $Id: ogg.h 16051 2009-05-27 05:00:06Z xiphmont $
-
- ********************************************************************/
-#ifndef _OGG_H
-#define _OGG_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <stddef.h>
-#include <ogg/os_types.h>
-
-typedef struct {
- void *iov_base;
- size_t iov_len;
-} ogg_iovec_t;
-
-typedef struct {
- long endbyte;
- int endbit;
-
- unsigned char *buffer;
- unsigned char *ptr;
- long storage;
-} oggpack_buffer;
-
-/* ogg_page is used to encapsulate the data in one Ogg bitstream page *****/
-
-typedef struct {
- unsigned char *header;
- long header_len;
- unsigned char *body;
- long body_len;
-} ogg_page;
-
-/* ogg_stream_state contains the current encode/decode state of a logical
- Ogg bitstream **********************************************************/
-
-typedef struct {
- unsigned char *body_data; /* bytes from packet bodies */
- long body_storage; /* storage elements allocated */
- long body_fill; /* elements stored; fill mark */
- long body_returned; /* elements of fill returned */
-
-
- int *lacing_vals; /* The values that will go to the segment table */
- ogg_int64_t *granule_vals; /* granulepos values for headers. Not compact
- this way, but it is simple coupled to the
- lacing fifo */
- long lacing_storage;
- long lacing_fill;
- long lacing_packet;
- long lacing_returned;
-
- unsigned char header[282]; /* working space for header encode */
- int header_fill;
-
- int e_o_s; /* set when we have buffered the last packet in the
- logical bitstream */
- int b_o_s; /* set after we've written the initial page
- of a logical bitstream */
- long serialno;
- long pageno;
- ogg_int64_t packetno; /* sequence number for decode; the framing
- knows where there's a hole in the data,
- but we need coupling so that the codec
- (which is in a seperate abstraction
- layer) also knows about the gap */
- ogg_int64_t granulepos;
-
-} ogg_stream_state;
-
-/* ogg_packet is used to encapsulate the data and metadata belonging
- to a single raw Ogg/Vorbis packet *************************************/
-
-typedef struct {
- unsigned char *packet;
- long bytes;
- long b_o_s;
- long e_o_s;
-
- ogg_int64_t granulepos;
-
- ogg_int64_t packetno; /* sequence number for decode; the framing
- knows where there's a hole in the data,
- but we need coupling so that the codec
- (which is in a seperate abstraction
- layer) also knows about the gap */
-} ogg_packet;
-
-typedef struct {
- unsigned char *data;
- int storage;
- int fill;
- int returned;
-
- int unsynced;
- int headerbytes;
- int bodybytes;
-} ogg_sync_state;
-
-/* Ogg BITSTREAM PRIMITIVES: bitstream ************************/
-
-extern void oggpack_writeinit(oggpack_buffer *b);
-extern int oggpack_writecheck(oggpack_buffer *b);
-extern void oggpack_writetrunc(oggpack_buffer *b,long bits);
-extern void oggpack_writealign(oggpack_buffer *b);
-extern void oggpack_writecopy(oggpack_buffer *b,void *source,long bits);
-extern void oggpack_reset(oggpack_buffer *b);
-extern void oggpack_writeclear(oggpack_buffer *b);
-extern void oggpack_readinit(oggpack_buffer *b,unsigned char *buf,int bytes);
-extern void oggpack_write(oggpack_buffer *b,unsigned long value,int bits);
-extern long oggpack_look(oggpack_buffer *b,int bits);
-extern long oggpack_look1(oggpack_buffer *b);
-extern void oggpack_adv(oggpack_buffer *b,int bits);
-extern void oggpack_adv1(oggpack_buffer *b);
-extern long oggpack_read(oggpack_buffer *b,int bits);
-extern long oggpack_read1(oggpack_buffer *b);
-extern long oggpack_bytes(oggpack_buffer *b);
-extern long oggpack_bits(oggpack_buffer *b);
-extern unsigned char *oggpack_get_buffer(oggpack_buffer *b);
-
-extern void oggpackB_writeinit(oggpack_buffer *b);
-extern int oggpackB_writecheck(oggpack_buffer *b);
-extern void oggpackB_writetrunc(oggpack_buffer *b,long bits);
-extern void oggpackB_writealign(oggpack_buffer *b);
-extern void oggpackB_writecopy(oggpack_buffer *b,void *source,long bits);
-extern void oggpackB_reset(oggpack_buffer *b);
-extern void oggpackB_writeclear(oggpack_buffer *b);
-extern void oggpackB_readinit(oggpack_buffer *b,unsigned char *buf,int bytes);
-extern void oggpackB_write(oggpack_buffer *b,unsigned long value,int bits);
-extern long oggpackB_look(oggpack_buffer *b,int bits);
-extern long oggpackB_look1(oggpack_buffer *b);
-extern void oggpackB_adv(oggpack_buffer *b,int bits);
-extern void oggpackB_adv1(oggpack_buffer *b);
-extern long oggpackB_read(oggpack_buffer *b,int bits);
-extern long oggpackB_read1(oggpack_buffer *b);
-extern long oggpackB_bytes(oggpack_buffer *b);
-extern long oggpackB_bits(oggpack_buffer *b);
-extern unsigned char *oggpackB_get_buffer(oggpack_buffer *b);
-
-/* Ogg BITSTREAM PRIMITIVES: encoding **************************/
-
-extern int ogg_stream_packetin(ogg_stream_state *os, ogg_packet *op);
-extern int ogg_stream_iovecin(ogg_stream_state *os, ogg_iovec_t *iov,
- int count, long e_o_s, ogg_int64_t granulepos);
-extern int ogg_stream_pageout(ogg_stream_state *os, ogg_page *og);
-extern int ogg_stream_flush(ogg_stream_state *os, ogg_page *og);
-
-/* Ogg BITSTREAM PRIMITIVES: decoding **************************/
-
-extern int ogg_sync_init(ogg_sync_state *oy);
-extern int ogg_sync_clear(ogg_sync_state *oy);
-extern int ogg_sync_reset(ogg_sync_state *oy);
-extern int ogg_sync_destroy(ogg_sync_state *oy);
-extern int ogg_sync_check(ogg_sync_state *oy);
-
-extern char *ogg_sync_buffer(ogg_sync_state *oy, long size);
-extern int ogg_sync_wrote(ogg_sync_state *oy, long bytes);
-extern long ogg_sync_pageseek(ogg_sync_state *oy,ogg_page *og);
-extern int ogg_sync_pageout(ogg_sync_state *oy, ogg_page *og);
-extern int ogg_stream_pagein(ogg_stream_state *os, ogg_page *og);
-extern int ogg_stream_packetout(ogg_stream_state *os,ogg_packet *op);
-extern int ogg_stream_packetpeek(ogg_stream_state *os,ogg_packet *op);
-
-/* Ogg BITSTREAM PRIMITIVES: general ***************************/
-
-extern int ogg_stream_init(ogg_stream_state *os,int serialno);
-extern int ogg_stream_clear(ogg_stream_state *os);
-extern int ogg_stream_reset(ogg_stream_state *os);
-extern int ogg_stream_reset_serialno(ogg_stream_state *os,int serialno);
-extern int ogg_stream_destroy(ogg_stream_state *os);
-extern int ogg_stream_check(ogg_stream_state *os);
-extern int ogg_stream_eos(ogg_stream_state *os);
-
-extern void ogg_page_checksum_set(ogg_page *og);
-
-extern int ogg_page_version(const ogg_page *og);
-extern int ogg_page_continued(const ogg_page *og);
-extern int ogg_page_bos(const ogg_page *og);
-extern int ogg_page_eos(const ogg_page *og);
-extern ogg_int64_t ogg_page_granulepos(const ogg_page *og);
-extern int ogg_page_serialno(const ogg_page *og);
-extern long ogg_page_pageno(const ogg_page *og);
-extern int ogg_page_packets(const ogg_page *og);
-
-extern void ogg_packet_clear(ogg_packet *op);
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* _OGG_H */
diff --git a/branches/1.0/thirdparties/android/include/ogg/os_types.h b/branches/1.0/thirdparties/android/include/ogg/os_types.h
deleted file mode 100644
index a42f800..0000000
--- a/branches/1.0/thirdparties/android/include/ogg/os_types.h
+++ /dev/null
@@ -1,139 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2002 *
- * by the Xiph.Org Foundation http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: #ifdef jail to whip a few platforms into the UNIX ideal.
- last mod: $Id: os_types.h 14997 2008-06-04 03:27:18Z ivo $
-
- ********************************************************************/
-#ifndef _OS_TYPES_H
-#define _OS_TYPES_H
-
-/* make it easy on the folks that want to compile the libs with a
- different malloc than stdlib */
-#define _ogg_malloc malloc
-#define _ogg_calloc calloc
-#define _ogg_realloc realloc
-#define _ogg_free free
-
-#if defined(_WIN32)
-
-# if defined(__CYGWIN__)
-# include <stdint.h>
- typedef int16_t ogg_int16_t;
- typedef uint16_t ogg_uint16_t;
- typedef int32_t ogg_int32_t;
- typedef uint32_t ogg_uint32_t;
- typedef int64_t ogg_int64_t;
- typedef uint64_t ogg_uint64_t;
-# elif defined(__MINGW32__)
-# include <sys/types.h>
- typedef short ogg_int16_t;
- typedef unsigned short ogg_uint16_t;
- typedef int ogg_int32_t;
- typedef unsigned int ogg_uint32_t;
- typedef long long ogg_int64_t;
- typedef unsigned long long ogg_uint64_t;
-# elif defined(__MWERKS__)
- typedef long long ogg_int64_t;
- typedef int ogg_int32_t;
- typedef unsigned int ogg_uint32_t;
- typedef short ogg_int16_t;
- typedef unsigned short ogg_uint16_t;
-# else
- /* MSVC/Borland */
- typedef __int64 ogg_int64_t;
- typedef __int32 ogg_int32_t;
- typedef unsigned __int32 ogg_uint32_t;
- typedef __int16 ogg_int16_t;
- typedef unsigned __int16 ogg_uint16_t;
-# endif
-
-#elif defined(__MACOS__)
-
-# include <sys/types.h>
- typedef SInt16 ogg_int16_t;
- typedef UInt16 ogg_uint16_t;
- typedef SInt32 ogg_int32_t;
- typedef UInt32 ogg_uint32_t;
- typedef SInt64 ogg_int64_t;
-
-#elif (defined(__APPLE__) && defined(__MACH__)) /* MacOS X Framework build */
-
-# include <sys/types.h>
- typedef int16_t ogg_int16_t;
- typedef u_int16_t ogg_uint16_t;
- typedef int32_t ogg_int32_t;
- typedef u_int32_t ogg_uint32_t;
- typedef int64_t ogg_int64_t;
-
-#elif defined(__HAIKU__)
-
- /* Haiku */
-# include <sys/types.h>
- typedef short ogg_int16_t;
- typedef unsigned short ogg_uint16_t;
- typedef int ogg_int32_t;
- typedef unsigned int ogg_uint32_t;
- typedef long long ogg_int64_t;
-
-#elif defined(__BEOS__)
-
- /* Be */
-# include <inttypes.h>
- typedef int16_t ogg_int16_t;
- typedef u_int16_t ogg_uint16_t;
- typedef int32_t ogg_int32_t;
- typedef u_int32_t ogg_uint32_t;
- typedef int64_t ogg_int64_t;
-
-#elif defined (__EMX__)
-
- /* OS/2 GCC */
- typedef short ogg_int16_t;
- typedef unsigned short ogg_uint16_t;
- typedef int ogg_int32_t;
- typedef unsigned int ogg_uint32_t;
- typedef long long ogg_int64_t;
-
-#elif defined (DJGPP)
-
- /* DJGPP */
- typedef short ogg_int16_t;
- typedef int ogg_int32_t;
- typedef unsigned int ogg_uint32_t;
- typedef long long ogg_int64_t;
-
-#elif defined(R5900)
-
- /* PS2 EE */
- typedef long ogg_int64_t;
- typedef int ogg_int32_t;
- typedef unsigned ogg_uint32_t;
- typedef short ogg_int16_t;
-
-#elif defined(__SYMBIAN32__)
-
- /* Symbian GCC */
- typedef signed short ogg_int16_t;
- typedef unsigned short ogg_uint16_t;
- typedef signed int ogg_int32_t;
- typedef unsigned int ogg_uint32_t;
- typedef long long int ogg_int64_t;
-
-#else
-
-# include <sys/types.h>
-# include <ogg/config_types.h>
-
-#endif
-
-#endif /* _OS_TYPES_H */
diff --git a/branches/1.0/thirdparties/android/include/opencore-amrnb/interf_dec.h b/branches/1.0/thirdparties/android/include/opencore-amrnb/interf_dec.h
deleted file mode 100644
index 98051f4..0000000
--- a/branches/1.0/thirdparties/android/include/opencore-amrnb/interf_dec.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/* ------------------------------------------------------------------
- * Copyright (C) 2009 Martin Storsjo
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied.
- * See the License for the specific language governing permissions
- * and limitations under the License.
- * -------------------------------------------------------------------
- */
-
-#ifndef OPENCORE_AMRNB_INTERF_DEC_H
-#define OPENCORE_AMRNB_INTERF_DEC_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-void* Decoder_Interface_init(void);
-void Decoder_Interface_exit(void* state);
-void Decoder_Interface_Decode(void* state, const unsigned char* in, short* out, int bfi);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/branches/1.0/thirdparties/android/include/opencore-amrnb/interf_enc.h b/branches/1.0/thirdparties/android/include/opencore-amrnb/interf_enc.h
deleted file mode 100644
index b89b0c7..0000000
--- a/branches/1.0/thirdparties/android/include/opencore-amrnb/interf_enc.h
+++ /dev/null
@@ -1,50 +0,0 @@
-/* ------------------------------------------------------------------
- * Copyright (C) 2009 Martin Storsjo
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied.
- * See the License for the specific language governing permissions
- * and limitations under the License.
- * -------------------------------------------------------------------
- */
-
-#ifndef OPENCORE_AMRNB_INTERF_ENC_H
-#define OPENCORE_AMRNB_INTERF_ENC_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#ifndef AMRNB_WRAPPER_INTERNAL
-/* Copied from enc/src/gsmamr_enc.h */
-enum Mode {
- MR475 = 0,/* 4.75 kbps */
- MR515, /* 5.15 kbps */
- MR59, /* 5.90 kbps */
- MR67, /* 6.70 kbps */
- MR74, /* 7.40 kbps */
- MR795, /* 7.95 kbps */
- MR102, /* 10.2 kbps */
- MR122, /* 12.2 kbps */
- MRDTX, /* DTX */
- N_MODES /* Not Used */
-};
-#endif
-
-void* Encoder_Interface_init(int dtx);
-void Encoder_Interface_exit(void* state);
-int Encoder_Interface_Encode(void* state, enum Mode mode, const short* speech, unsigned char* out, int forceSpeech);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/branches/1.0/thirdparties/android/include/opencore-amrwb/dec_if.h b/branches/1.0/thirdparties/android/include/opencore-amrwb/dec_if.h
deleted file mode 100644
index 56acdaa..0000000
--- a/branches/1.0/thirdparties/android/include/opencore-amrwb/dec_if.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/* ------------------------------------------------------------------
- * Copyright (C) 2009 Martin Storsjo
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied.
- * See the License for the specific language governing permissions
- * and limitations under the License.
- * -------------------------------------------------------------------
- */
-
-#ifndef OPENCORE_AMRWB_DEC_IF_H
-#define OPENCORE_AMRWB_DEC_IF_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#define _good_frame 0
-
-void* D_IF_init(void);
-void D_IF_decode(void* state, const unsigned char* bits, short* synth, int bfi);
-void D_IF_exit(void* state);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/branches/1.0/thirdparties/android/include/opencore-amrwb/if_rom.h b/branches/1.0/thirdparties/android/include/opencore-amrwb/if_rom.h
deleted file mode 100644
index 8977e03..0000000
--- a/branches/1.0/thirdparties/android/include/opencore-amrwb/if_rom.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/* ------------------------------------------------------------------
- * Copyright (C) 2009 Martin Storsjo
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied.
- * See the License for the specific language governing permissions
- * and limitations under the License.
- * -------------------------------------------------------------------
- */
-
-#ifndef OPENCORE_AMRWB_IF_ROM_H
-#define OPENCORE_AMRWB_IF_ROM_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <stdint.h>
-typedef int16_t Word16;
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/branches/1.0/thirdparties/android/include/speex/speex.h b/branches/1.0/thirdparties/android/include/speex/speex.h
deleted file mode 100644
index 82ba016..0000000
--- a/branches/1.0/thirdparties/android/include/speex/speex.h
+++ /dev/null
@@ -1,424 +0,0 @@
-/* Copyright (C) 2002-2006 Jean-Marc Valin*/
-/**
- @file speex.h
- @brief Describes the different modes of the codec
-*/
-/*
- 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.
-
-*/
-
-#ifndef SPEEX_H
-#define SPEEX_H
-/** @defgroup Codec Speex encoder and decoder
- * This is the Speex codec itself.
- * @{
- */
-
-#include "speex/speex_bits.h"
-#include "speex/speex_types.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* Values allowed for *ctl() requests */
-
-/** Set enhancement on/off (decoder only) */
-#define SPEEX_SET_ENH 0
-/** Get enhancement state (decoder only) */
-#define SPEEX_GET_ENH 1
-
-/*Would be SPEEX_SET_FRAME_SIZE, but it's (currently) invalid*/
-/** Obtain frame size used by encoder/decoder */
-#define SPEEX_GET_FRAME_SIZE 3
-
-/** Set quality value */
-#define SPEEX_SET_QUALITY 4
-/** Get current quality setting */
-/* #define SPEEX_GET_QUALITY 5 -- Doesn't make much sense, does it? */
-
-/** Set sub-mode to use */
-#define SPEEX_SET_MODE 6
-/** Get current sub-mode in use */
-#define SPEEX_GET_MODE 7
-
-/** Set low-band sub-mode to use (wideband only)*/
-#define SPEEX_SET_LOW_MODE 8
-/** Get current low-band mode in use (wideband only)*/
-#define SPEEX_GET_LOW_MODE 9
-
-/** Set high-band sub-mode to use (wideband only)*/
-#define SPEEX_SET_HIGH_MODE 10
-/** Get current high-band mode in use (wideband only)*/
-#define SPEEX_GET_HIGH_MODE 11
-
-/** Set VBR on (1) or off (0) */
-#define SPEEX_SET_VBR 12
-/** Get VBR status (1 for on, 0 for off) */
-#define SPEEX_GET_VBR 13
-
-/** Set quality value for VBR encoding (0-10) */
-#define SPEEX_SET_VBR_QUALITY 14
-/** Get current quality value for VBR encoding (0-10) */
-#define SPEEX_GET_VBR_QUALITY 15
-
-/** Set complexity of the encoder (0-10) */
-#define SPEEX_SET_COMPLEXITY 16
-/** Get current complexity of the encoder (0-10) */
-#define SPEEX_GET_COMPLEXITY 17
-
-/** Set bit-rate used by the encoder (or lower) */
-#define SPEEX_SET_BITRATE 18
-/** Get current bit-rate used by the encoder or decoder */
-#define SPEEX_GET_BITRATE 19
-
-/** Define a handler function for in-band Speex request*/
-#define SPEEX_SET_HANDLER 20
-
-/** Define a handler function for in-band user-defined request*/
-#define SPEEX_SET_USER_HANDLER 22
-
-/** Set sampling rate used in bit-rate computation */
-#define SPEEX_SET_SAMPLING_RATE 24
-/** Get sampling rate used in bit-rate computation */
-#define SPEEX_GET_SAMPLING_RATE 25
-
-/** Reset the encoder/decoder memories to zero*/
-#define SPEEX_RESET_STATE 26
-
-/** Get VBR info (mostly used internally) */
-#define SPEEX_GET_RELATIVE_QUALITY 29
-
-/** Set VAD status (1 for on, 0 for off) */
-#define SPEEX_SET_VAD 30
-
-/** Get VAD status (1 for on, 0 for off) */
-#define SPEEX_GET_VAD 31
-
-/** Set Average Bit-Rate (ABR) to n bits per seconds */
-#define SPEEX_SET_ABR 32
-/** Get Average Bit-Rate (ABR) setting (in bps) */
-#define SPEEX_GET_ABR 33
-
-/** Set DTX status (1 for on, 0 for off) */
-#define SPEEX_SET_DTX 34
-/** Get DTX status (1 for on, 0 for off) */
-#define SPEEX_GET_DTX 35
-
-/** Set submode encoding in each frame (1 for yes, 0 for no, setting to no breaks the standard) */
-#define SPEEX_SET_SUBMODE_ENCODING 36
-/** Get submode encoding in each frame */
-#define SPEEX_GET_SUBMODE_ENCODING 37
-
-/*#define SPEEX_SET_LOOKAHEAD 38*/
-/** Returns the lookahead used by Speex */
-#define SPEEX_GET_LOOKAHEAD 39
-
-/** Sets tuning for packet-loss concealment (expected loss rate) */
-#define SPEEX_SET_PLC_TUNING 40
-/** Gets tuning for PLC */
-#define SPEEX_GET_PLC_TUNING 41
-
-/** Sets the max bit-rate allowed in VBR mode */
-#define SPEEX_SET_VBR_MAX_BITRATE 42
-/** Gets the max bit-rate allowed in VBR mode */
-#define SPEEX_GET_VBR_MAX_BITRATE 43
-
-/** Turn on/off input/output high-pass filtering */
-#define SPEEX_SET_HIGHPASS 44
-/** Get status of input/output high-pass filtering */
-#define SPEEX_GET_HIGHPASS 45
-
-/** Get "activity level" of the last decoded frame, i.e.
- how much damage we cause if we remove the frame */
-#define SPEEX_GET_ACTIVITY 47
-
-
-/* Preserving compatibility:*/
-/** Equivalent to SPEEX_SET_ENH */
-#define SPEEX_SET_PF 0
-/** Equivalent to SPEEX_GET_ENH */
-#define SPEEX_GET_PF 1
-
-
-
-
-/* Values allowed for mode queries */
-/** Query the frame size of a mode */
-#define SPEEX_MODE_FRAME_SIZE 0
-
-/** Query the size of an encoded frame for a particular sub-mode */
-#define SPEEX_SUBMODE_BITS_PER_FRAME 1
-
-
-
-/** Get major Speex version */
-#define SPEEX_LIB_GET_MAJOR_VERSION 1
-/** Get minor Speex version */
-#define SPEEX_LIB_GET_MINOR_VERSION 3
-/** Get micro Speex version */
-#define SPEEX_LIB_GET_MICRO_VERSION 5
-/** Get extra Speex version */
-#define SPEEX_LIB_GET_EXTRA_VERSION 7
-/** Get Speex version string */
-#define SPEEX_LIB_GET_VERSION_STRING 9
-
-/*#define SPEEX_LIB_SET_ALLOC_FUNC 10
-#define SPEEX_LIB_GET_ALLOC_FUNC 11
-#define SPEEX_LIB_SET_FREE_FUNC 12
-#define SPEEX_LIB_GET_FREE_FUNC 13
-
-#define SPEEX_LIB_SET_WARNING_FUNC 14
-#define SPEEX_LIB_GET_WARNING_FUNC 15
-#define SPEEX_LIB_SET_ERROR_FUNC 16
-#define SPEEX_LIB_GET_ERROR_FUNC 17
-*/
-
-/** Number of defined modes in Speex */
-#define SPEEX_NB_MODES 3
-
-/** modeID for the defined narrowband mode */
-#define SPEEX_MODEID_NB 0
-
-/** modeID for the defined wideband mode */
-#define SPEEX_MODEID_WB 1
-
-/** modeID for the defined ultra-wideband mode */
-#define SPEEX_MODEID_UWB 2
-
-struct SpeexMode;
-
-
-/* Prototypes for mode function pointers */
-
-/** Encoder state initialization function */
-typedef void *(*encoder_init_func)(const struct SpeexMode *mode);
-
-/** Encoder state destruction function */
-typedef void (*encoder_destroy_func)(void *st);
-
-/** Main encoding function */
-typedef int (*encode_func)(void *state, void *in, SpeexBits *bits);
-
-/** Function for controlling the encoder options */
-typedef int (*encoder_ctl_func)(void *state, int request, void *ptr);
-
-/** Decoder state initialization function */
-typedef void *(*decoder_init_func)(const struct SpeexMode *mode);
-
-/** Decoder state destruction function */
-typedef void (*decoder_destroy_func)(void *st);
-
-/** Main decoding function */
-typedef int (*decode_func)(void *state, SpeexBits *bits, void *out);
-
-/** Function for controlling the decoder options */
-typedef int (*decoder_ctl_func)(void *state, int request, void *ptr);
-
-
-/** Query function for a mode */
-typedef int (*mode_query_func)(const void *mode, int request, void *ptr);
-
-/** Struct defining a Speex mode */
-typedef struct SpeexMode {
- /** Pointer to the low-level mode data */
- const void *mode;
-
- /** Pointer to the mode query function */
- mode_query_func query;
-
- /** The name of the mode (you should not rely on this to identify the mode)*/
- const char *modeName;
-
- /**ID of the mode*/
- int modeID;
-
- /**Version number of the bitstream (incremented every time we break
- bitstream compatibility*/
- int bitstream_version;
-
- /** Pointer to encoder initialization function */
- encoder_init_func enc_init;
-
- /** Pointer to encoder destruction function */
- encoder_destroy_func enc_destroy;
-
- /** Pointer to frame encoding function */
- encode_func enc;
-
- /** Pointer to decoder initialization function */
- decoder_init_func dec_init;
-
- /** Pointer to decoder destruction function */
- decoder_destroy_func dec_destroy;
-
- /** Pointer to frame decoding function */
- decode_func dec;
-
- /** ioctl-like requests for encoder */
- encoder_ctl_func enc_ctl;
-
- /** ioctl-like requests for decoder */
- decoder_ctl_func dec_ctl;
-
-} SpeexMode;
-
-/**
- * Returns a handle to a newly created Speex encoder state structure. For now,
- * the "mode" argument can be &nb_mode or &wb_mode . In the future, more modes
- * may be added. Note that for now if you have more than one channels to
- * encode, you need one state per channel.
- *
- * @param mode The mode to use (either speex_nb_mode or speex_wb.mode)
- * @return A newly created encoder state or NULL if state allocation fails
- */
-void *speex_encoder_init(const SpeexMode *mode);
-
-/** Frees all resources associated to an existing Speex encoder state.
- * @param state Encoder state to be destroyed */
-void speex_encoder_destroy(void *state);
-
-/** Uses an existing encoder state to encode one frame of speech pointed to by
- "in". The encoded bit-stream is saved in "bits".
- @param state Encoder state
- @param in Frame that will be encoded with a +-2^15 range. This data MAY be
- overwritten by the encoder and should be considered uninitialised
- after the call.
- @param bits Bit-stream where the data will be written
- @return 0 if frame needs not be transmitted (DTX only), 1 otherwise
- */
-int speex_encode(void *state, float *in, SpeexBits *bits);
-
-/** Uses an existing encoder state to encode one frame of speech pointed to by
- "in". The encoded bit-stream is saved in "bits".
- @param state Encoder state
- @param in Frame that will be encoded with a +-2^15 range
- @param bits Bit-stream where the data will be written
- @return 0 if frame needs not be transmitted (DTX only), 1 otherwise
- */
-int speex_encode_int(void *state, spx_int16_t *in, SpeexBits *bits);
-
-/** Used like the ioctl function to control the encoder parameters
- *
- * @param state Encoder state
- * @param request ioctl-type request (one of the SPEEX_* macros)
- * @param ptr Data exchanged to-from function
- * @return 0 if no error, -1 if request in unknown, -2 for invalid parameter
- */
-int speex_encoder_ctl(void *state, int request, void *ptr);
-
-
-/** Returns a handle to a newly created decoder state structure. For now,
- * the mode argument can be &nb_mode or &wb_mode . In the future, more modes
- * may be added. Note that for now if you have more than one channels to
- * decode, you need one state per channel.
- *
- * @param mode Speex mode (one of speex_nb_mode or speex_wb_mode)
- * @return A newly created decoder state or NULL if state allocation fails
- */
-void *speex_decoder_init(const SpeexMode *mode);
-
-/** Frees all resources associated to an existing decoder state.
- *
- * @param state State to be destroyed
- */
-void speex_decoder_destroy(void *state);
-
-/** Uses an existing decoder state to decode one frame of speech from
- * bit-stream bits. The output speech is saved written to out.
- *
- * @param state Decoder state
- * @param bits Bit-stream from which to decode the frame (NULL if the packet was lost)
- * @param out Where to write the decoded frame
- * @return return status (0 for no error, -1 for end of stream, -2 corrupt stream)
- */
-int speex_decode(void *state, SpeexBits *bits, float *out);
-
-/** Uses an existing decoder state to decode one frame of speech from
- * bit-stream bits. The output speech is saved written to out.
- *
- * @param state Decoder state
- * @param bits Bit-stream from which to decode the frame (NULL if the packet was lost)
- * @param out Where to write the decoded frame
- * @return return status (0 for no error, -1 for end of stream, -2 corrupt stream)
- */
-int speex_decode_int(void *state, SpeexBits *bits, spx_int16_t *out);
-
-/** Used like the ioctl function to control the encoder parameters
- *
- * @param state Decoder state
- * @param request ioctl-type request (one of the SPEEX_* macros)
- * @param ptr Data exchanged to-from function
- * @return 0 if no error, -1 if request in unknown, -2 for invalid parameter
- */
-int speex_decoder_ctl(void *state, int request, void *ptr);
-
-
-/** Query function for mode information
- *
- * @param mode Speex mode
- * @param request ioctl-type request (one of the SPEEX_* macros)
- * @param ptr Data exchanged to-from function
- * @return 0 if no error, -1 if request in unknown, -2 for invalid parameter
- */
-int speex_mode_query(const SpeexMode *mode, int request, void *ptr);
-
-/** Functions for controlling the behavior of libspeex
- * @param request ioctl-type request (one of the SPEEX_LIB_* macros)
- * @param ptr Data exchanged to-from function
- * @return 0 if no error, -1 if request in unknown, -2 for invalid parameter
- */
-int speex_lib_ctl(int request, void *ptr);
-
-/** Default narrowband mode */
-extern const SpeexMode speex_nb_mode;
-
-/** Default wideband mode */
-extern const SpeexMode speex_wb_mode;
-
-/** Default "ultra-wideband" mode */
-extern const SpeexMode speex_uwb_mode;
-
-/** List of all modes available */
-extern const SpeexMode * const speex_mode_list[SPEEX_NB_MODES];
-
-/** Obtain one of the modes available */
-const SpeexMode * speex_lib_get_mode (int mode);
-
-#ifndef WIN32
-/* We actually override the function in the narrowband case so that we can avoid linking in the wideband stuff */
-#define speex_lib_get_mode(mode) ((mode)==SPEEX_MODEID_NB ? &speex_nb_mode : speex_lib_get_mode (mode))
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-
-/** @}*/
-#endif
diff --git a/branches/1.0/thirdparties/android/include/speex/speex_bits.h b/branches/1.0/thirdparties/android/include/speex/speex_bits.h
deleted file mode 100644
index a26fb4c..0000000
--- a/branches/1.0/thirdparties/android/include/speex/speex_bits.h
+++ /dev/null
@@ -1,174 +0,0 @@
-/* Copyright (C) 2002 Jean-Marc Valin */
-/**
- @file speex_bits.h
- @brief Handles bit packing/unpacking
-*/
-/*
- 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.
-
-*/
-
-#ifndef BITS_H
-#define BITS_H
-/** @defgroup SpeexBits SpeexBits: Bit-stream manipulations
- * This is the structure that holds the bit-stream when encoding or decoding
- * with Speex. It allows some manipulations as well.
- * @{
- */
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/** Bit-packing data structure representing (part of) a bit-stream. */
-typedef struct SpeexBits {
- char *chars; /**< "raw" data */
- int nbBits; /**< Total number of bits stored in the stream*/
- int charPtr; /**< Position of the byte "cursor" */
- int bitPtr; /**< Position of the bit "cursor" within the current char */
- int owner; /**< Does the struct "own" the "raw" buffer (member "chars") */
- int overflow;/**< Set to one if we try to read past the valid data */
- int buf_size;/**< Allocated size for buffer */
- int reserved1; /**< Reserved for future use */
- void *reserved2; /**< Reserved for future use */
-} SpeexBits;
-
-/** Initializes and allocates resources for a SpeexBits struct */
-void speex_bits_init(SpeexBits *bits);
-
-/** Initializes SpeexBits struct using a pre-allocated buffer*/
-void speex_bits_init_buffer(SpeexBits *bits, void *buff, int buf_size);
-
-/** Sets the bits in a SpeexBits struct to use data from an existing buffer (for decoding without copying data) */
-void speex_bits_set_bit_buffer(SpeexBits *bits, void *buff, int buf_size);
-
-/** Frees all resources associated to a SpeexBits struct. Right now this does nothing since no resources are allocated, but this could change in the future.*/
-void speex_bits_destroy(SpeexBits *bits);
-
-/** Resets bits to initial value (just after initialization, erasing content)*/
-void speex_bits_reset(SpeexBits *bits);
-
-/** Rewind the bit-stream to the beginning (ready for read) without erasing the content */
-void speex_bits_rewind(SpeexBits *bits);
-
-/** Initializes the bit-stream from the data in an area of memory */
-void speex_bits_read_from(SpeexBits *bits, char *bytes, int len);
-
-/** Append bytes to the bit-stream
- *
- * @param bits Bit-stream to operate on
- * @param bytes pointer to the bytes what will be appended
- * @param len Number of bytes of append
- */
-void speex_bits_read_whole_bytes(SpeexBits *bits, char *bytes, int len);
-
-/** Write the content of a bit-stream to an area of memory
- *
- * @param bits Bit-stream to operate on
- * @param bytes Memory location where to write the bits
- * @param max_len Maximum number of bytes to write (i.e. size of the "bytes" buffer)
- * @return Number of bytes written to the "bytes" buffer
-*/
-int speex_bits_write(SpeexBits *bits, char *bytes, int max_len);
-
-/** Like speex_bits_write, but writes only the complete bytes in the stream. Also removes the written bytes from the stream */
-int speex_bits_write_whole_bytes(SpeexBits *bits, char *bytes, int max_len);
-
-/** Append bits to the bit-stream
- * @param bits Bit-stream to operate on
- * @param data Value to append as integer
- * @param nbBits number of bits to consider in "data"
- */
-void speex_bits_pack(SpeexBits *bits, int data, int nbBits);
-
-/** Interpret the next bits in the bit-stream as a signed integer
- *
- * @param bits Bit-stream to operate on
- * @param nbBits Number of bits to interpret
- * @return A signed integer represented by the bits read
- */
-int speex_bits_unpack_signed(SpeexBits *bits, int nbBits);
-
-/** Interpret the next bits in the bit-stream as an unsigned integer
- *
- * @param bits Bit-stream to operate on
- * @param nbBits Number of bits to interpret
- * @return An unsigned integer represented by the bits read
- */
-unsigned int speex_bits_unpack_unsigned(SpeexBits *bits, int nbBits);
-
-/** Returns the number of bytes in the bit-stream, including the last one even if it is not "full"
- *
- * @param bits Bit-stream to operate on
- * @return Number of bytes in the stream
- */
-int speex_bits_nbytes(SpeexBits *bits);
-
-/** Same as speex_bits_unpack_unsigned, but without modifying the cursor position
- *
- * @param bits Bit-stream to operate on
- * @param nbBits Number of bits to look for
- * @return Value of the bits peeked, interpreted as unsigned
- */
-unsigned int speex_bits_peek_unsigned(SpeexBits *bits, int nbBits);
-
-/** Get the value of the next bit in the stream, without modifying the
- * "cursor" position
- *
- * @param bits Bit-stream to operate on
- * @return Value of the bit peeked (one bit only)
- */
-int speex_bits_peek(SpeexBits *bits);
-
-/** Advances the position of the "bit cursor" in the stream
- *
- * @param bits Bit-stream to operate on
- * @param n Number of bits to advance
- */
-void speex_bits_advance(SpeexBits *bits, int n);
-
-/** Returns the number of bits remaining to be read in a stream
- *
- * @param bits Bit-stream to operate on
- * @return Number of bits that can still be read from the stream
- */
-int speex_bits_remaining(SpeexBits *bits);
-
-/** Insert a terminator so that the data can be sent as a packet while auto-detecting
- * the number of frames in each packet
- *
- * @param bits Bit-stream to operate on
- */
-void speex_bits_insert_terminator(SpeexBits *bits);
-
-#ifdef __cplusplus
-}
-#endif
-
-/* @} */
-#endif
diff --git a/branches/1.0/thirdparties/android/include/speex/speex_buffer.h b/branches/1.0/thirdparties/android/include/speex/speex_buffer.h
deleted file mode 100644
index df56f5f..0000000
--- a/branches/1.0/thirdparties/android/include/speex/speex_buffer.h
+++ /dev/null
@@ -1,68 +0,0 @@
-/* Copyright (C) 2007 Jean-Marc Valin
-
- File: speex_buffer.h
- This is a very simple ring buffer implementation. It is not thread-safe
- so you need to do your own locking.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are
- met:
-
- 1. Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
-
- 2. 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.
-
- 3. The name of the author may not be used to endorse or promote products
- derived from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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 SPEEX_BUFFER_H
-#define SPEEX_BUFFER_H
-
-#include "speex/speex_types.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-struct SpeexBuffer_;
-typedef struct SpeexBuffer_ SpeexBuffer;
-
-SpeexBuffer *speex_buffer_init(int size);
-
-void speex_buffer_destroy(SpeexBuffer *st);
-
-int speex_buffer_write(SpeexBuffer *st, void *data, int len);
-
-int speex_buffer_writezeros(SpeexBuffer *st, int len);
-
-int speex_buffer_read(SpeexBuffer *st, void *data, int len);
-
-int speex_buffer_get_available(SpeexBuffer *st);
-
-int speex_buffer_resize(SpeexBuffer *st, int len);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
-
-
-
-
diff --git a/branches/1.0/thirdparties/android/include/speex/speex_callbacks.h b/branches/1.0/thirdparties/android/include/speex/speex_callbacks.h
deleted file mode 100644
index 6f450b3..0000000
--- a/branches/1.0/thirdparties/android/include/speex/speex_callbacks.h
+++ /dev/null
@@ -1,134 +0,0 @@
-/* Copyright (C) 2002 Jean-Marc Valin*/
-/**
- @file speex_callbacks.h
- @brief Describes callback handling and in-band signalling
-*/
-/*
- 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.
-
-*/
-
-#ifndef SPEEX_CALLBACKS_H
-#define SPEEX_CALLBACKS_H
-/** @defgroup SpeexCallbacks Various definitions for Speex callbacks supported by the decoder.
- * @{
- */
-
-#include "speex.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/** Total number of callbacks */
-#define SPEEX_MAX_CALLBACKS 16
-
-/* Describes all the in-band requests */
-
-/*These are 1-bit requests*/
-/** Request for perceptual enhancement (1 for on, 0 for off) */
-#define SPEEX_INBAND_ENH_REQUEST 0
-/** Reserved */
-#define SPEEX_INBAND_RESERVED1 1
-
-/*These are 4-bit requests*/
-/** Request for a mode change */
-#define SPEEX_INBAND_MODE_REQUEST 2
-/** Request for a low mode change */
-#define SPEEX_INBAND_LOW_MODE_REQUEST 3
-/** Request for a high mode change */
-#define SPEEX_INBAND_HIGH_MODE_REQUEST 4
-/** Request for VBR (1 on, 0 off) */
-#define SPEEX_INBAND_VBR_QUALITY_REQUEST 5
-/** Request to be sent acknowledge */
-#define SPEEX_INBAND_ACKNOWLEDGE_REQUEST 6
-/** Request for VBR (1 for on, 0 for off) */
-#define SPEEX_INBAND_VBR_REQUEST 7
-
-/*These are 8-bit requests*/
-/** Send a character in-band */
-#define SPEEX_INBAND_CHAR 8
-/** Intensity stereo information */
-#define SPEEX_INBAND_STEREO 9
-
-/*These are 16-bit requests*/
-/** Transmit max bit-rate allowed */
-#define SPEEX_INBAND_MAX_BITRATE 10
-
-/*These are 32-bit requests*/
-/** Acknowledge packet reception */
-#define SPEEX_INBAND_ACKNOWLEDGE 12
-
-/** Callback function type */
-typedef int (*speex_callback_func)(SpeexBits *bits, void *state, void *data);
-
-/** Callback information */
-typedef struct SpeexCallback {
- int callback_id; /**< ID associated to the callback */
- speex_callback_func func; /**< Callback handler function */
- void *data; /**< Data that will be sent to the handler */
- void *reserved1; /**< Reserved for future use */
- int reserved2; /**< Reserved for future use */
-} SpeexCallback;
-
-/** Handle in-band request */
-int speex_inband_handler(SpeexBits *bits, SpeexCallback *callback_list, void *state);
-
-/** Standard handler for mode request (change mode, no questions asked) */
-int speex_std_mode_request_handler(SpeexBits *bits, void *state, void *data);
-
-/** Standard handler for high mode request (change high mode, no questions asked) */
-int speex_std_high_mode_request_handler(SpeexBits *bits, void *state, void *data);
-
-/** Standard handler for in-band characters (write to stderr) */
-int speex_std_char_handler(SpeexBits *bits, void *state, void *data);
-
-/** Default handler for user-defined requests: in this case, just ignore */
-int speex_default_user_handler(SpeexBits *bits, void *state, void *data);
-
-
-
-/** Standard handler for low mode request (change low mode, no questions asked) */
-int speex_std_low_mode_request_handler(SpeexBits *bits, void *state, void *data);
-
-/** Standard handler for VBR request (Set VBR, no questions asked) */
-int speex_std_vbr_request_handler(SpeexBits *bits, void *state, void *data);
-
-/** Standard handler for enhancer request (Turn enhancer on/off, no questions asked) */
-int speex_std_enh_request_handler(SpeexBits *bits, void *state, void *data);
-
-/** Standard handler for VBR quality request (Set VBR quality, no questions asked) */
-int speex_std_vbr_quality_request_handler(SpeexBits *bits, void *state, void *data);
-
-
-#ifdef __cplusplus
-}
-#endif
-
-/** @} */
-#endif
diff --git a/branches/1.0/thirdparties/android/include/speex/speex_echo.h b/branches/1.0/thirdparties/android/include/speex/speex_echo.h
deleted file mode 100644
index 53bcd28..0000000
--- a/branches/1.0/thirdparties/android/include/speex/speex_echo.h
+++ /dev/null
@@ -1,170 +0,0 @@
-/* Copyright (C) Jean-Marc Valin */
-/**
- @file speex_echo.h
- @brief Echo cancellation
-*/
-/*
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are
- met:
-
- 1. Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
-
- 2. 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.
-
- 3. The name of the author may not be used to endorse or promote products
- derived from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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 SPEEX_ECHO_H
-#define SPEEX_ECHO_H
-/** @defgroup SpeexEchoState SpeexEchoState: Acoustic echo canceller
- * This is the acoustic echo canceller module.
- * @{
- */
-#include "speex/speex_types.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/** Obtain frame size used by the AEC */
-#define SPEEX_ECHO_GET_FRAME_SIZE 3
-
-/** Set sampling rate */
-#define SPEEX_ECHO_SET_SAMPLING_RATE 24
-/** Get sampling rate */
-#define SPEEX_ECHO_GET_SAMPLING_RATE 25
-
-/* Can't set window sizes */
-/** Get size of impulse response (int32) */
-#define SPEEX_ECHO_GET_IMPULSE_RESPONSE_SIZE 27
-
-/* Can't set window content */
-/** Get impulse response (int32[]) */
-#define SPEEX_ECHO_GET_IMPULSE_RESPONSE 29
-
-/** Internal echo canceller state. Should never be accessed directly. */
-struct SpeexEchoState_;
-
-/** @class SpeexEchoState
- * This holds the state of the echo canceller. You need one per channel.
-*/
-
-/** Internal echo canceller state. Should never be accessed directly. */
-typedef struct SpeexEchoState_ SpeexEchoState;
-
-/** Creates a new echo canceller state
- * @param frame_size Number of samples to process at one time (should correspond to 10-20 ms)
- * @param filter_length Number of samples of echo to cancel (should generally correspond to 100-500 ms)
- * @return Newly-created echo canceller state
- */
-SpeexEchoState *speex_echo_state_init(int frame_size, int filter_length);
-
-/** Creates a new multi-channel echo canceller state
- * @param frame_size Number of samples to process at one time (should correspond to 10-20 ms)
- * @param filter_length Number of samples of echo to cancel (should generally correspond to 100-500 ms)
- * @param nb_mic Number of microphone channels
- * @param nb_speakers Number of speaker channels
- * @return Newly-created echo canceller state
- */
-SpeexEchoState *speex_echo_state_init_mc(int frame_size, int filter_length, int nb_mic, int nb_speakers);
-
-/** Destroys an echo canceller state
- * @param st Echo canceller state
-*/
-void speex_echo_state_destroy(SpeexEchoState *st);
-
-/** Performs echo cancellation a frame, based on the audio sent to the speaker (no delay is added
- * to playback in this form)
- *
- * @param st Echo canceller state
- * @param rec Signal from the microphone (near end + far end echo)
- * @param play Signal played to the speaker (received from far end)
- * @param out Returns near-end signal with echo removed
- */
-void speex_echo_cancellation(SpeexEchoState *st, const spx_int16_t *rec, const spx_int16_t *play, spx_int16_t *out);
-
-/** Performs echo cancellation a frame (deprecated) */
-void speex_echo_cancel(SpeexEchoState *st, const spx_int16_t *rec, const spx_int16_t *play, spx_int16_t *out, spx_int32_t *Yout);
-
-/** Perform echo cancellation using internal playback buffer, which is delayed by two frames
- * to account for the delay introduced by most soundcards (but it could be off!)
- * @param st Echo canceller state
- * @param rec Signal from the microphone (near end + far end echo)
- * @param out Returns near-end signal with echo removed
-*/
-void speex_echo_capture(SpeexEchoState *st, const spx_int16_t *rec, spx_int16_t *out);
-
-/** Let the echo canceller know that a frame was just queued to the soundcard
- * @param st Echo canceller state
- * @param play Signal played to the speaker (received from far end)
-*/
-void speex_echo_playback(SpeexEchoState *st, const spx_int16_t *play);
-
-/** Reset the echo canceller to its original state
- * @param st Echo canceller state
- */
-void speex_echo_state_reset(SpeexEchoState *st);
-
-/** Used like the ioctl function to control the echo canceller parameters
- *
- * @param st Echo canceller state
- * @param request ioctl-type request (one of the SPEEX_ECHO_* macros)
- * @param ptr Data exchanged to-from function
- * @return 0 if no error, -1 if request in unknown
- */
-int speex_echo_ctl(SpeexEchoState *st, int request, void *ptr);
-
-
-
-struct SpeexDecorrState_;
-
-typedef struct SpeexDecorrState_ SpeexDecorrState;
-
-
-/** Create a state for the channel decorrelation algorithm
- This is useful for multi-channel echo cancellation only
- * @param rate Sampling rate
- * @param channels Number of channels (it's a bit pointless if you don't have at least 2)
- * @param frame_size Size of the frame to process at ones (counting samples *per* channel)
-*/
-SpeexDecorrState *speex_decorrelate_new(int rate, int channels, int frame_size);
-
-/** Remove correlation between the channels by modifying the phase and possibly
- adding noise in a way that is not (or little) perceptible.
- * @param st Decorrelator state
- * @param in Input audio in interleaved format
- * @param out Result of the decorrelation (out *may* alias in)
- * @param strength How much alteration of the audio to apply from 0 to 100.
-*/
-void speex_decorrelate(SpeexDecorrState *st, const spx_int16_t *in, spx_int16_t *out, int strength);
-
-/** Destroy a Decorrelation state
- * @param st State to destroy
-*/
-void speex_decorrelate_destroy(SpeexDecorrState *st);
-
-
-#ifdef __cplusplus
-}
-#endif
-
-
-/** @}*/
-#endif
diff --git a/branches/1.0/thirdparties/android/include/speex/speex_header.h b/branches/1.0/thirdparties/android/include/speex/speex_header.h
deleted file mode 100644
index f85b249..0000000
--- a/branches/1.0/thirdparties/android/include/speex/speex_header.h
+++ /dev/null
@@ -1,94 +0,0 @@
-/* Copyright (C) 2002 Jean-Marc Valin */
-/**
- @file speex_header.h
- @brief Describes the Speex header
-*/
-/*
- 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.
-
-*/
-
-
-#ifndef SPEEX_HEADER_H
-#define SPEEX_HEADER_H
-/** @defgroup SpeexHeader SpeexHeader: Makes it easy to write/parse an Ogg/Speex header
- * This is the Speex header for the Ogg encapsulation. You don't need that if you just use RTP.
- * @{
- */
-
-#include "speex/speex_types.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-struct SpeexMode;
-
-/** Length of the Speex header identifier */
-#define SPEEX_HEADER_STRING_LENGTH 8
-
-/** Maximum number of characters for encoding the Speex version number in the header */
-#define SPEEX_HEADER_VERSION_LENGTH 20
-
-/** Speex header info for file-based formats */
-typedef struct SpeexHeader {
- char speex_string[SPEEX_HEADER_STRING_LENGTH]; /**< Identifies a Speex bit-stream, always set to "Speex " */
- char speex_version[SPEEX_HEADER_VERSION_LENGTH]; /**< Speex version */
- spx_int32_t speex_version_id; /**< Version for Speex (for checking compatibility) */
- spx_int32_t header_size; /**< Total size of the header ( sizeof(SpeexHeader) ) */
- spx_int32_t rate; /**< Sampling rate used */
- spx_int32_t mode; /**< Mode used (0 for narrowband, 1 for wideband) */
- spx_int32_t mode_bitstream_version; /**< Version ID of the bit-stream */
- spx_int32_t nb_channels; /**< Number of channels encoded */
- spx_int32_t bitrate; /**< Bit-rate used */
- spx_int32_t frame_size; /**< Size of frames */
- spx_int32_t vbr; /**< 1 for a VBR encoding, 0 otherwise */
- spx_int32_t frames_per_packet; /**< Number of frames stored per Ogg packet */
- spx_int32_t extra_headers; /**< Number of additional headers after the comments */
- spx_int32_t reserved1; /**< Reserved for future use, must be zero */
- spx_int32_t reserved2; /**< Reserved for future use, must be zero */
-} SpeexHeader;
-
-/** Initializes a SpeexHeader using basic information */
-void speex_init_header(SpeexHeader *header, int rate, int nb_channels, const struct SpeexMode *m);
-
-/** Creates the header packet from the header itself (mostly involves endianness conversion) */
-char *speex_header_to_packet(SpeexHeader *header, int *size);
-
-/** Creates a SpeexHeader from a packet */
-SpeexHeader *speex_packet_to_header(char *packet, int size);
-
-/** Frees the memory allocated by either speex_header_to_packet() or speex_packet_to_header() */
-void speex_header_free(void *ptr);
-
-#ifdef __cplusplus
-}
-#endif
-
-/** @} */
-#endif
diff --git a/branches/1.0/thirdparties/android/include/speex/speex_jitter.h b/branches/1.0/thirdparties/android/include/speex/speex_jitter.h
deleted file mode 100644
index d68674b..0000000
--- a/branches/1.0/thirdparties/android/include/speex/speex_jitter.h
+++ /dev/null
@@ -1,197 +0,0 @@
-/* Copyright (C) 2002 Jean-Marc Valin */
-/**
- @file speex_jitter.h
- @brief Adaptive jitter buffer for Speex
-*/
-/*
- 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.
-
-*/
-
-#ifndef SPEEX_JITTER_H
-#define SPEEX_JITTER_H
-/** @defgroup JitterBuffer JitterBuffer: Adaptive jitter buffer
- * This is the jitter buffer that reorders UDP/RTP packets and adjusts the buffer size
- * to maintain good quality and low latency.
- * @{
- */
-
-#include "speex/speex_types.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/** Generic adaptive jitter buffer state */
-struct JitterBuffer_;
-
-/** Generic adaptive jitter buffer state */
-typedef struct JitterBuffer_ JitterBuffer;
-
-/** Definition of an incoming packet */
-typedef struct _JitterBufferPacket JitterBufferPacket;
-
-/** Definition of an incoming packet */
-struct _JitterBufferPacket {
- char *data; /**< Data bytes contained in the packet */
- spx_uint32_t len; /**< Length of the packet in bytes */
- spx_uint32_t timestamp; /**< Timestamp for the packet */
- spx_uint32_t span; /**< Time covered by the packet (same units as timestamp) */
- spx_uint16_t sequence; /**< RTP Sequence number if available (0 otherwise) */
- spx_uint32_t user_data; /**< Put whatever data you like here (it's ignored by the jitter buffer) */
-};
-
-/** Packet has been retrieved */
-#define JITTER_BUFFER_OK 0
-/** Packet is lost or is late */
-#define JITTER_BUFFER_MISSING 1
-/** A "fake" packet is meant to be inserted here to increase buffering */
-#define JITTER_BUFFER_INSERTION 2
-/** There was an error in the jitter buffer */
-#define JITTER_BUFFER_INTERNAL_ERROR -1
-/** Invalid argument */
-#define JITTER_BUFFER_BAD_ARGUMENT -2
-
-
-/** Set minimum amount of extra buffering required (margin) */
-#define JITTER_BUFFER_SET_MARGIN 0
-/** Get minimum amount of extra buffering required (margin) */
-#define JITTER_BUFFER_GET_MARGIN 1
-/* JITTER_BUFFER_SET_AVAILABLE_COUNT wouldn't make sense */
-
-/** Get the amount of available packets currently buffered */
-#define JITTER_BUFFER_GET_AVAILABLE_COUNT 3
-/** Included because of an early misspelling (will remove in next release) */
-#define JITTER_BUFFER_GET_AVALIABLE_COUNT 3
-
-/** Assign a function to destroy unused packet. When setting that, the jitter
- buffer no longer copies packet data. */
-#define JITTER_BUFFER_SET_DESTROY_CALLBACK 4
-/** */
-#define JITTER_BUFFER_GET_DESTROY_CALLBACK 5
-
-/** Tell the jitter buffer to only adjust the delay in multiples of the step parameter provided */
-#define JITTER_BUFFER_SET_DELAY_STEP 6
-/** */
-#define JITTER_BUFFER_GET_DELAY_STEP 7
-
-/** Tell the jitter buffer to only do concealment in multiples of the size parameter provided */
-#define JITTER_BUFFER_SET_CONCEALMENT_SIZE 8
-#define JITTER_BUFFER_GET_CONCEALMENT_SIZE 9
-
-/** Absolute max amount of loss that can be tolerated regardless of the delay. Typical loss
- should be half of that or less. */
-#define JITTER_BUFFER_SET_MAX_LATE_RATE 10
-#define JITTER_BUFFER_GET_MAX_LATE_RATE 11
-
-/** Equivalent cost of one percent late packet in timestamp units */
-#define JITTER_BUFFER_SET_LATE_COST 12
-#define JITTER_BUFFER_GET_LATE_COST 13
-
-
-/** Initialises jitter buffer
- *
- * @param step_size Starting value for the size of concleanment packets and delay
- adjustment steps. Can be changed at any time using JITTER_BUFFER_SET_DELAY_STEP
- and JITTER_BUFFER_GET_CONCEALMENT_SIZE.
- * @return Newly created jitter buffer state
- */
-JitterBuffer *jitter_buffer_init(int step_size);
-
-/** Restores jitter buffer to its original state
- *
- * @param jitter Jitter buffer state
- */
-void jitter_buffer_reset(JitterBuffer *jitter);
-
-/** Destroys jitter buffer
- *
- * @param jitter Jitter buffer state
- */
-void jitter_buffer_destroy(JitterBuffer *jitter);
-
-/** Put one packet into the jitter buffer
- *
- * @param jitter Jitter buffer state
- * @param packet Incoming packet
-*/
-void jitter_buffer_put(JitterBuffer *jitter, const JitterBufferPacket *packet);
-
-/** Get one packet from the jitter buffer
- *
- * @param jitter Jitter buffer state
- * @param packet Returned packet
- * @param desired_span Number of samples (or units) we wish to get from the buffer (no guarantee)
- * @param current_timestamp Timestamp for the returned packet
-*/
-int jitter_buffer_get(JitterBuffer *jitter, JitterBufferPacket *packet, spx_int32_t desired_span, spx_int32_t *start_offset);
-
-/** Used right after jitter_buffer_get() to obtain another packet that would have the same timestamp.
- * This is mainly useful for media where a single "frame" can be split into several packets.
- *
- * @param jitter Jitter buffer state
- * @param packet Returned packet
- */
-int jitter_buffer_get_another(JitterBuffer *jitter, JitterBufferPacket *packet);
-
-/** Get pointer timestamp of jitter buffer
- *
- * @param jitter Jitter buffer state
-*/
-int jitter_buffer_get_pointer_timestamp(JitterBuffer *jitter);
-
-/** Advance by one tick
- *
- * @param jitter Jitter buffer state
-*/
-void jitter_buffer_tick(JitterBuffer *jitter);
-
-/** Telling the jitter buffer about the remaining data in the application buffer
- * @param jitter Jitter buffer state
- * @param rem Amount of data buffered by the application (timestamp units)
- */
-void jitter_buffer_remaining_span(JitterBuffer *jitter, spx_uint32_t rem);
-
-/** Used like the ioctl function to control the jitter buffer parameters
- *
- * @param jitter Jitter buffer state
- * @param request ioctl-type request (one of the JITTER_BUFFER_* macros)
- * @param ptr Data exchanged to-from function
- * @return 0 if no error, -1 if request in unknown
-*/
-int jitter_buffer_ctl(JitterBuffer *jitter, int request, void *ptr);
-
-int jitter_buffer_update_delay(JitterBuffer *jitter, JitterBufferPacket *packet, spx_int32_t *start_offset);
-
-/* @} */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/branches/1.0/thirdparties/android/include/speex/speex_preprocess.h b/branches/1.0/thirdparties/android/include/speex/speex_preprocess.h
deleted file mode 100644
index f8eef2c..0000000
--- a/branches/1.0/thirdparties/android/include/speex/speex_preprocess.h
+++ /dev/null
@@ -1,219 +0,0 @@
-/* Copyright (C) 2003 Epic Games
- Written by Jean-Marc Valin */
-/**
- * @file speex_preprocess.h
- * @brief Speex preprocessor. The preprocess can do noise suppression,
- * residual echo suppression (after using the echo canceller), automatic
- * gain control (AGC) and voice activity detection (VAD).
-*/
-/*
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are
- met:
-
- 1. Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
-
- 2. 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.
-
- 3. The name of the author may not be used to endorse or promote products
- derived from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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 SPEEX_PREPROCESS_H
-#define SPEEX_PREPROCESS_H
-/** @defgroup SpeexPreprocessState SpeexPreprocessState: The Speex preprocessor
- * This is the Speex preprocessor. The preprocess can do noise suppression,
- * residual echo suppression (after using the echo canceller), automatic
- * gain control (AGC) and voice activity detection (VAD).
- * @{
- */
-
-#include "speex/speex_types.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/** State of the preprocessor (one per channel). Should never be accessed directly. */
-struct SpeexPreprocessState_;
-
-/** State of the preprocessor (one per channel). Should never be accessed directly. */
-typedef struct SpeexPreprocessState_ SpeexPreprocessState;
-
-
-/** Creates a new preprocessing state. You MUST create one state per channel processed.
- * @param frame_size Number of samples to process at one time (should correspond to 10-20 ms). Must be
- * the same value as that used for the echo canceller for residual echo cancellation to work.
- * @param sampling_rate Sampling rate used for the input.
- * @return Newly created preprocessor state
-*/
-SpeexPreprocessState *speex_preprocess_state_init(int frame_size, int sampling_rate);
-
-/** Destroys a preprocessor state
- * @param st Preprocessor state to destroy
-*/
-void speex_preprocess_state_destroy(SpeexPreprocessState *st);
-
-/** Preprocess a frame
- * @param st Preprocessor state
- * @param x Audio sample vector (in and out). Must be same size as specified in speex_preprocess_state_init().
- * @return Bool value for voice activity (1 for speech, 0 for noise/silence), ONLY if VAD turned on.
-*/
-int speex_preprocess_run(SpeexPreprocessState *st, spx_int16_t *x);
-
-/** Preprocess a frame (deprecated, use speex_preprocess_run() instead)*/
-int speex_preprocess(SpeexPreprocessState *st, spx_int16_t *x, spx_int32_t *echo);
-
-/** Update preprocessor state, but do not compute the output
- * @param st Preprocessor state
- * @param x Audio sample vector (in only). Must be same size as specified in speex_preprocess_state_init().
-*/
-void speex_preprocess_estimate_update(SpeexPreprocessState *st, spx_int16_t *x);
-
-/** Used like the ioctl function to control the preprocessor parameters
- * @param st Preprocessor state
- * @param request ioctl-type request (one of the SPEEX_PREPROCESS_* macros)
- * @param ptr Data exchanged to-from function
- * @return 0 if no error, -1 if request in unknown
-*/
-int speex_preprocess_ctl(SpeexPreprocessState *st, int request, void *ptr);
-
-
-
-/** Set preprocessor denoiser state */
-#define SPEEX_PREPROCESS_SET_DENOISE 0
-/** Get preprocessor denoiser state */
-#define SPEEX_PREPROCESS_GET_DENOISE 1
-
-/** Set preprocessor Automatic Gain Control state */
-#define SPEEX_PREPROCESS_SET_AGC 2
-/** Get preprocessor Automatic Gain Control state */
-#define SPEEX_PREPROCESS_GET_AGC 3
-
-/** Set preprocessor Voice Activity Detection state */
-#define SPEEX_PREPROCESS_SET_VAD 4
-/** Get preprocessor Voice Activity Detection state */
-#define SPEEX_PREPROCESS_GET_VAD 5
-
-/** Set preprocessor Automatic Gain Control level (float) */
-#define SPEEX_PREPROCESS_SET_AGC_LEVEL 6
-/** Get preprocessor Automatic Gain Control level (float) */
-#define SPEEX_PREPROCESS_GET_AGC_LEVEL 7
-
-/** Set preprocessor dereverb state */
-#define SPEEX_PREPROCESS_SET_DEREVERB 8
-/** Get preprocessor dereverb state */
-#define SPEEX_PREPROCESS_GET_DEREVERB 9
-
-/** Set preprocessor dereverb level */
-#define SPEEX_PREPROCESS_SET_DEREVERB_LEVEL 10
-/** Get preprocessor dereverb level */
-#define SPEEX_PREPROCESS_GET_DEREVERB_LEVEL 11
-
-/** Set preprocessor dereverb decay */
-#define SPEEX_PREPROCESS_SET_DEREVERB_DECAY 12
-/** Get preprocessor dereverb decay */
-#define SPEEX_PREPROCESS_GET_DEREVERB_DECAY 13
-
-/** Set probability required for the VAD to go from silence to voice */
-#define SPEEX_PREPROCESS_SET_PROB_START 14
-/** Get probability required for the VAD to go from silence to voice */
-#define SPEEX_PREPROCESS_GET_PROB_START 15
-
-/** Set probability required for the VAD to stay in the voice state (integer percent) */
-#define SPEEX_PREPROCESS_SET_PROB_CONTINUE 16
-/** Get probability required for the VAD to stay in the voice state (integer percent) */
-#define SPEEX_PREPROCESS_GET_PROB_CONTINUE 17
-
-/** Set maximum attenuation of the noise in dB (negative number) */
-#define SPEEX_PREPROCESS_SET_NOISE_SUPPRESS 18
-/** Get maximum attenuation of the noise in dB (negative number) */
-#define SPEEX_PREPROCESS_GET_NOISE_SUPPRESS 19
-
-/** Set maximum attenuation of the residual echo in dB (negative number) */
-#define SPEEX_PREPROCESS_SET_ECHO_SUPPRESS 20
-/** Get maximum attenuation of the residual echo in dB (negative number) */
-#define SPEEX_PREPROCESS_GET_ECHO_SUPPRESS 21
-
-/** Set maximum attenuation of the residual echo in dB when near end is active (negative number) */
-#define SPEEX_PREPROCESS_SET_ECHO_SUPPRESS_ACTIVE 22
-/** Get maximum attenuation of the residual echo in dB when near end is active (negative number) */
-#define SPEEX_PREPROCESS_GET_ECHO_SUPPRESS_ACTIVE 23
-
-/** Set the corresponding echo canceller state so that residual echo suppression can be performed (NULL for no residual echo suppression) */
-#define SPEEX_PREPROCESS_SET_ECHO_STATE 24
-/** Get the corresponding echo canceller state */
-#define SPEEX_PREPROCESS_GET_ECHO_STATE 25
-
-/** Set maximal gain increase in dB/second (int32) */
-#define SPEEX_PREPROCESS_SET_AGC_INCREMENT 26
-
-/** Get maximal gain increase in dB/second (int32) */
-#define SPEEX_PREPROCESS_GET_AGC_INCREMENT 27
-
-/** Set maximal gain decrease in dB/second (int32) */
-#define SPEEX_PREPROCESS_SET_AGC_DECREMENT 28
-
-/** Get maximal gain decrease in dB/second (int32) */
-#define SPEEX_PREPROCESS_GET_AGC_DECREMENT 29
-
-/** Set maximal gain in dB (int32) */
-#define SPEEX_PREPROCESS_SET_AGC_MAX_GAIN 30
-
-/** Get maximal gain in dB (int32) */
-#define SPEEX_PREPROCESS_GET_AGC_MAX_GAIN 31
-
-/* Can't set loudness */
-/** Get loudness */
-#define SPEEX_PREPROCESS_GET_AGC_LOUDNESS 33
-
-/* Can't set gain */
-/** Get current gain (int32 percent) */
-#define SPEEX_PREPROCESS_GET_AGC_GAIN 35
-
-/* Can't set spectrum size */
-/** Get spectrum size for power spectrum (int32) */
-#define SPEEX_PREPROCESS_GET_PSD_SIZE 37
-
-/* Can't set power spectrum */
-/** Get power spectrum (int32[] of squared values) */
-#define SPEEX_PREPROCESS_GET_PSD 39
-
-/* Can't set noise size */
-/** Get spectrum size for noise estimate (int32) */
-#define SPEEX_PREPROCESS_GET_NOISE_PSD_SIZE 41
-
-/* Can't set noise estimate */
-/** Get noise estimate (int32[] of squared values) */
-#define SPEEX_PREPROCESS_GET_NOISE_PSD 43
-
-/* Can't set speech probability */
-/** Get speech probability in last frame (int32). */
-#define SPEEX_PREPROCESS_GET_PROB 45
-
-/** Set preprocessor Automatic Gain Control level (int32) */
-#define SPEEX_PREPROCESS_SET_AGC_TARGET 46
-/** Get preprocessor Automatic Gain Control level (int32) */
-#define SPEEX_PREPROCESS_GET_AGC_TARGET 47
-
-#ifdef __cplusplus
-}
-#endif
-
-/** @}*/
-#endif
diff --git a/branches/1.0/thirdparties/android/include/speex/speex_resampler.h b/branches/1.0/thirdparties/android/include/speex/speex_resampler.h
deleted file mode 100644
index 54eef8d..0000000
--- a/branches/1.0/thirdparties/android/include/speex/speex_resampler.h
+++ /dev/null
@@ -1,340 +0,0 @@
-/* Copyright (C) 2007 Jean-Marc Valin
-
- File: speex_resampler.h
- Resampling code
-
- The design goals of this code are:
- - Very fast algorithm
- - Low memory requirement
- - Good *perceptual* quality (and not best SNR)
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are
- met:
-
- 1. Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
-
- 2. 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.
-
- 3. The name of the author may not be used to endorse or promote products
- derived from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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 SPEEX_RESAMPLER_H
-#define SPEEX_RESAMPLER_H
-
-#ifdef OUTSIDE_SPEEX
-
-/********* WARNING: MENTAL SANITY ENDS HERE *************/
-
-/* If the resampler is defined outside of Speex, we change the symbol names so that
- there won't be any clash if linking with Speex later on. */
-
-/* #define RANDOM_PREFIX your software name here */
-#ifndef RANDOM_PREFIX
-#error "Please define RANDOM_PREFIX (above) to something specific to your project to prevent symbol name clashes"
-#endif
-
-#define CAT_PREFIX2(a,b) a ## b
-#define CAT_PREFIX(a,b) CAT_PREFIX2(a, b)
-
-#define speex_resampler_init CAT_PREFIX(RANDOM_PREFIX,_resampler_init)
-#define speex_resampler_init_frac CAT_PREFIX(RANDOM_PREFIX,_resampler_init_frac)
-#define speex_resampler_destroy CAT_PREFIX(RANDOM_PREFIX,_resampler_destroy)
-#define speex_resampler_process_float CAT_PREFIX(RANDOM_PREFIX,_resampler_process_float)
-#define speex_resampler_process_int CAT_PREFIX(RANDOM_PREFIX,_resampler_process_int)
-#define speex_resampler_process_interleaved_float CAT_PREFIX(RANDOM_PREFIX,_resampler_process_interleaved_float)
-#define speex_resampler_process_interleaved_int CAT_PREFIX(RANDOM_PREFIX,_resampler_process_interleaved_int)
-#define speex_resampler_set_rate CAT_PREFIX(RANDOM_PREFIX,_resampler_set_rate)
-#define speex_resampler_get_rate CAT_PREFIX(RANDOM_PREFIX,_resampler_get_rate)
-#define speex_resampler_set_rate_frac CAT_PREFIX(RANDOM_PREFIX,_resampler_set_rate_frac)
-#define speex_resampler_get_ratio CAT_PREFIX(RANDOM_PREFIX,_resampler_get_ratio)
-#define speex_resampler_set_quality CAT_PREFIX(RANDOM_PREFIX,_resampler_set_quality)
-#define speex_resampler_get_quality CAT_PREFIX(RANDOM_PREFIX,_resampler_get_quality)
-#define speex_resampler_set_input_stride CAT_PREFIX(RANDOM_PREFIX,_resampler_set_input_stride)
-#define speex_resampler_get_input_stride CAT_PREFIX(RANDOM_PREFIX,_resampler_get_input_stride)
-#define speex_resampler_set_output_stride CAT_PREFIX(RANDOM_PREFIX,_resampler_set_output_stride)
-#define speex_resampler_get_output_stride CAT_PREFIX(RANDOM_PREFIX,_resampler_get_output_stride)
-#define speex_resampler_get_input_latency CAT_PREFIX(RANDOM_PREFIX,_resampler_get_input_latency)
-#define speex_resampler_get_output_latency CAT_PREFIX(RANDOM_PREFIX,_resampler_get_output_latency)
-#define speex_resampler_skip_zeros CAT_PREFIX(RANDOM_PREFIX,_resampler_skip_zeros)
-#define speex_resampler_reset_mem CAT_PREFIX(RANDOM_PREFIX,_resampler_reset_mem)
-#define speex_resampler_strerror CAT_PREFIX(RANDOM_PREFIX,_resampler_strerror)
-
-#define spx_int16_t short
-#define spx_int32_t int
-#define spx_uint16_t unsigned short
-#define spx_uint32_t unsigned int
-
-#else /* OUTSIDE_SPEEX */
-
-#include "speex/speex_types.h"
-
-#endif /* OUTSIDE_SPEEX */
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#define SPEEX_RESAMPLER_QUALITY_MAX 10
-#define SPEEX_RESAMPLER_QUALITY_MIN 0
-#define SPEEX_RESAMPLER_QUALITY_DEFAULT 4
-#define SPEEX_RESAMPLER_QUALITY_VOIP 3
-#define SPEEX_RESAMPLER_QUALITY_DESKTOP 5
-
-enum {
- RESAMPLER_ERR_SUCCESS = 0,
- RESAMPLER_ERR_ALLOC_FAILED = 1,
- RESAMPLER_ERR_BAD_STATE = 2,
- RESAMPLER_ERR_INVALID_ARG = 3,
- RESAMPLER_ERR_PTR_OVERLAP = 4,
-
- RESAMPLER_ERR_MAX_ERROR
-};
-
-struct SpeexResamplerState_;
-typedef struct SpeexResamplerState_ SpeexResamplerState;
-
-/** Create a new resampler with integer input and output rates.
- * @param nb_channels Number of channels to be processed
- * @param in_rate Input sampling rate (integer number of Hz).
- * @param out_rate Output sampling rate (integer number of Hz).
- * @param quality Resampling quality between 0 and 10, where 0 has poor quality
- * and 10 has very high quality.
- * @return Newly created resampler state
- * @retval NULL Error: not enough memory
- */
-SpeexResamplerState *speex_resampler_init(spx_uint32_t nb_channels,
- spx_uint32_t in_rate,
- spx_uint32_t out_rate,
- int quality,
- int *err);
-
-/** Create a new resampler with fractional input/output rates. The sampling
- * rate ratio is an arbitrary rational number with both the numerator and
- * denominator being 32-bit integers.
- * @param nb_channels Number of channels to be processed
- * @param ratio_num Numerator of the sampling rate ratio
- * @param ratio_den Denominator of the sampling rate ratio
- * @param in_rate Input sampling rate rounded to the nearest integer (in Hz).
- * @param out_rate Output sampling rate rounded to the nearest integer (in Hz).
- * @param quality Resampling quality between 0 and 10, where 0 has poor quality
- * and 10 has very high quality.
- * @return Newly created resampler state
- * @retval NULL Error: not enough memory
- */
-SpeexResamplerState *speex_resampler_init_frac(spx_uint32_t nb_channels,
- spx_uint32_t ratio_num,
- spx_uint32_t ratio_den,
- spx_uint32_t in_rate,
- spx_uint32_t out_rate,
- int quality,
- int *err);
-
-/** Destroy a resampler state.
- * @param st Resampler state
- */
-void speex_resampler_destroy(SpeexResamplerState *st);
-
-/** Resample a float array. The input and output buffers must *not* overlap.
- * @param st Resampler state
- * @param channel_index Index of the channel to process for the multi-channel
- * base (0 otherwise)
- * @param in Input buffer
- * @param in_len Number of input samples in the input buffer. Returns the
- * number of samples processed
- * @param out Output buffer
- * @param out_len Size of the output buffer. Returns the number of samples written
- */
-int speex_resampler_process_float(SpeexResamplerState *st,
- spx_uint32_t channel_index,
- const float *in,
- spx_uint32_t *in_len,
- float *out,
- spx_uint32_t *out_len);
-
-/** Resample an int array. The input and output buffers must *not* overlap.
- * @param st Resampler state
- * @param channel_index Index of the channel to process for the multi-channel
- * base (0 otherwise)
- * @param in Input buffer
- * @param in_len Number of input samples in the input buffer. Returns the number
- * of samples processed
- * @param out Output buffer
- * @param out_len Size of the output buffer. Returns the number of samples written
- */
-int speex_resampler_process_int(SpeexResamplerState *st,
- spx_uint32_t channel_index,
- const spx_int16_t *in,
- spx_uint32_t *in_len,
- spx_int16_t *out,
- spx_uint32_t *out_len);
-
-/** Resample an interleaved float array. The input and output buffers must *not* overlap.
- * @param st Resampler state
- * @param in Input buffer
- * @param in_len Number of input samples in the input buffer. Returns the number
- * of samples processed. This is all per-channel.
- * @param out Output buffer
- * @param out_len Size of the output buffer. Returns the number of samples written.
- * This is all per-channel.
- */
-int speex_resampler_process_interleaved_float(SpeexResamplerState *st,
- const float *in,
- spx_uint32_t *in_len,
- float *out,
- spx_uint32_t *out_len);
-
-/** Resample an interleaved int array. The input and output buffers must *not* overlap.
- * @param st Resampler state
- * @param in Input buffer
- * @param in_len Number of input samples in the input buffer. Returns the number
- * of samples processed. This is all per-channel.
- * @param out Output buffer
- * @param out_len Size of the output buffer. Returns the number of samples written.
- * This is all per-channel.
- */
-int speex_resampler_process_interleaved_int(SpeexResamplerState *st,
- const spx_int16_t *in,
- spx_uint32_t *in_len,
- spx_int16_t *out,
- spx_uint32_t *out_len);
-
-/** Set (change) the input/output sampling rates (integer value).
- * @param st Resampler state
- * @param in_rate Input sampling rate (integer number of Hz).
- * @param out_rate Output sampling rate (integer number of Hz).
- */
-int speex_resampler_set_rate(SpeexResamplerState *st,
- spx_uint32_t in_rate,
- spx_uint32_t out_rate);
-
-/** Get the current input/output sampling rates (integer value).
- * @param st Resampler state
- * @param in_rate Input sampling rate (integer number of Hz) copied.
- * @param out_rate Output sampling rate (integer number of Hz) copied.
- */
-void speex_resampler_get_rate(SpeexResamplerState *st,
- spx_uint32_t *in_rate,
- spx_uint32_t *out_rate);
-
-/** Set (change) the input/output sampling rates and resampling ratio
- * (fractional values in Hz supported).
- * @param st Resampler state
- * @param ratio_num Numerator of the sampling rate ratio
- * @param ratio_den Denominator of the sampling rate ratio
- * @param in_rate Input sampling rate rounded to the nearest integer (in Hz).
- * @param out_rate Output sampling rate rounded to the nearest integer (in Hz).
- */
-int speex_resampler_set_rate_frac(SpeexResamplerState *st,
- spx_uint32_t ratio_num,
- spx_uint32_t ratio_den,
- spx_uint32_t in_rate,
- spx_uint32_t out_rate);
-
-/** Get the current resampling ratio. This will be reduced to the least
- * common denominator.
- * @param st Resampler state
- * @param ratio_num Numerator of the sampling rate ratio copied
- * @param ratio_den Denominator of the sampling rate ratio copied
- */
-void speex_resampler_get_ratio(SpeexResamplerState *st,
- spx_uint32_t *ratio_num,
- spx_uint32_t *ratio_den);
-
-/** Set (change) the conversion quality.
- * @param st Resampler state
- * @param quality Resampling quality between 0 and 10, where 0 has poor
- * quality and 10 has very high quality.
- */
-int speex_resampler_set_quality(SpeexResamplerState *st,
- int quality);
-
-/** Get the conversion quality.
- * @param st Resampler state
- * @param quality Resampling quality between 0 and 10, where 0 has poor
- * quality and 10 has very high quality.
- */
-void speex_resampler_get_quality(SpeexResamplerState *st,
- int *quality);
-
-/** Set (change) the input stride.
- * @param st Resampler state
- * @param stride Input stride
- */
-void speex_resampler_set_input_stride(SpeexResamplerState *st,
- spx_uint32_t stride);
-
-/** Get the input stride.
- * @param st Resampler state
- * @param stride Input stride copied
- */
-void speex_resampler_get_input_stride(SpeexResamplerState *st,
- spx_uint32_t *stride);
-
-/** Set (change) the output stride.
- * @param st Resampler state
- * @param stride Output stride
- */
-void speex_resampler_set_output_stride(SpeexResamplerState *st,
- spx_uint32_t stride);
-
-/** Get the output stride.
- * @param st Resampler state copied
- * @param stride Output stride
- */
-void speex_resampler_get_output_stride(SpeexResamplerState *st,
- spx_uint32_t *stride);
-
-/** Get the latency in input samples introduced by the resampler.
- * @param st Resampler state
- */
-int speex_resampler_get_input_latency(SpeexResamplerState *st);
-
-/** Get the latency in output samples introduced by the resampler.
- * @param st Resampler state
- */
-int speex_resampler_get_output_latency(SpeexResamplerState *st);
-
-/** Make sure that the first samples to go out of the resamplers don't have
- * leading zeros. This is only useful before starting to use a newly created
- * resampler. It is recommended to use that when resampling an audio file, as
- * it will generate a file with the same length. For real-time processing,
- * it is probably easier not to use this call (so that the output duration
- * is the same for the first frame).
- * @param st Resampler state
- */
-int speex_resampler_skip_zeros(SpeexResamplerState *st);
-
-/** Reset a resampler so a new (unrelated) stream can be processed.
- * @param st Resampler state
- */
-int speex_resampler_reset_mem(SpeexResamplerState *st);
-
-/** Returns the English meaning for an error code
- * @param err Error code
- * @return English string
- */
-const char *speex_resampler_strerror(int err);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/branches/1.0/thirdparties/android/include/speex/speex_stereo.h b/branches/1.0/thirdparties/android/include/speex/speex_stereo.h
deleted file mode 100644
index a259713..0000000
--- a/branches/1.0/thirdparties/android/include/speex/speex_stereo.h
+++ /dev/null
@@ -1,91 +0,0 @@
-/* Copyright (C) 2002 Jean-Marc Valin*/
-/**
- @file speex_stereo.h
- @brief Describes the handling for intensity stereo
-*/
-/*
- 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.
-*/
-
-#ifndef STEREO_H
-#define STEREO_H
-/** @defgroup SpeexStereoState SpeexStereoState: Handling Speex stereo files
- * This describes the Speex intensity stereo encoding/decoding
- * @{
- */
-
-#include "speex/speex_types.h"
-#include "speex/speex_bits.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/** If you access any of these fields directly, I'll personally come and bite you */
-typedef struct SpeexStereoState {
- float balance; /**< Left/right balance info */
- float e_ratio; /**< Ratio of energies: E(left+right)/[E(left)+E(right)] */
- float smooth_left; /**< Smoothed left channel gain */
- float smooth_right; /**< Smoothed right channel gain */
- float reserved1; /**< Reserved for future use */
- float reserved2; /**< Reserved for future use */
-} SpeexStereoState;
-
-/** Deprecated. Use speex_stereo_state_init() instead. */
-#define SPEEX_STEREO_STATE_INIT {1,.5,1,1,0,0}
-
-/** Initialise/create a stereo stereo state */
-SpeexStereoState *speex_stereo_state_init();
-
-/** Reset/re-initialise an already allocated stereo state */
-void speex_stereo_state_reset(SpeexStereoState *stereo);
-
-/** Destroy a stereo stereo state */
-void speex_stereo_state_destroy(SpeexStereoState *stereo);
-
-/** Transforms a stereo frame into a mono frame and stores intensity stereo info in 'bits' */
-void speex_encode_stereo(float *data, int frame_size, SpeexBits *bits);
-
-/** Transforms a stereo frame into a mono frame and stores intensity stereo info in 'bits' */
-void speex_encode_stereo_int(spx_int16_t *data, int frame_size, SpeexBits *bits);
-
-/** Transforms a mono frame into a stereo frame using intensity stereo info */
-void speex_decode_stereo(float *data, int frame_size, SpeexStereoState *stereo);
-
-/** Transforms a mono frame into a stereo frame using intensity stereo info */
-void speex_decode_stereo_int(spx_int16_t *data, int frame_size, SpeexStereoState *stereo);
-
-/** Callback handler for intensity stereo info */
-int speex_std_stereo_request_handler(SpeexBits *bits, void *state, void *data);
-
-#ifdef __cplusplus
-}
-#endif
-
-/** @} */
-#endif
diff --git a/branches/1.0/thirdparties/android/include/speex/speex_types.h b/branches/1.0/thirdparties/android/include/speex/speex_types.h
deleted file mode 100644
index 737c5fa..0000000
--- a/branches/1.0/thirdparties/android/include/speex/speex_types.h
+++ /dev/null
@@ -1,133 +0,0 @@
-/* speex_types.h taken from libogg */
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2002 *
- * by the Xiph.Org Foundation http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: #ifdef jail to whip a few platforms into the UNIX ideal.
- last mod: $Id: os_types.h 7524 2004-08-11 04:20:36Z conrad $
-
- ********************************************************************/
-/**
- @file speex_types.h
- @brief Speex types
-*/
-#ifndef _SPEEX_TYPES_H
-#define _SPEEX_TYPES_H
-
-#if defined(_WIN32)
-
-# if defined(__CYGWIN__)
-# include <_G_config.h>
- typedef _G_int32_t spx_int32_t;
- typedef _G_uint32_t spx_uint32_t;
- typedef _G_int16_t spx_int16_t;
- typedef _G_uint16_t spx_uint16_t;
-# elif defined(__MINGW32__)
- typedef short spx_int16_t;
- typedef unsigned short spx_uint16_t;
- typedef int spx_int32_t;
- typedef unsigned int spx_uint32_t;
-# elif defined(__MWERKS__)
- typedef int spx_int32_t;
- typedef unsigned int spx_uint32_t;
- typedef short spx_int16_t;
- typedef unsigned short spx_uint16_t;
-# else
- /* MSVC/Borland */
- typedef __int32 spx_int32_t;
- typedef unsigned __int32 spx_uint32_t;
- typedef __int16 spx_int16_t;
- typedef unsigned __int16 spx_uint16_t;
-# endif
-
-#elif defined(__MACOS__)
-
-# include <sys/types.h>
- typedef SInt16 spx_int16_t;
- typedef UInt16 spx_uint16_t;
- typedef SInt32 spx_int32_t;
- typedef UInt32 spx_uint32_t;
-
-#elif (defined(__APPLE__) && defined(__MACH__)) /* MacOS X Framework build */
-
-# include <sys/types.h>
- typedef int16_t spx_int16_t;
- typedef u_int16_t spx_uint16_t;
- typedef int32_t spx_int32_t;
- typedef u_int32_t spx_uint32_t;
-
-#elif defined(__BEOS__)
-
- /* Be */
-# include <inttypes.h>
- typedef int16_t spx_int16_t;
- typedef u_int16_t spx_uint16_t;
- typedef int32_t spx_int32_t;
- typedef u_int32_t spx_uint32_t;
-
-#elif defined (__EMX__)
-
- /* OS/2 GCC */
- typedef short spx_int16_t;
- typedef unsigned short spx_uint16_t;
- typedef int spx_int32_t;
- typedef unsigned int spx_uint32_t;
-
-#elif defined (DJGPP)
-
- /* DJGPP */
- typedef short spx_int16_t;
- typedef int spx_int32_t;
- typedef unsigned int spx_uint32_t;
-
-#elif defined(R5900)
-
- /* PS2 EE */
- typedef int spx_int32_t;
- typedef unsigned spx_uint32_t;
- typedef short spx_int16_t;
-
-#elif defined(__SYMBIAN32__)
-
- /* Symbian GCC */
- typedef signed short spx_int16_t;
- typedef unsigned short spx_uint16_t;
- typedef signed int spx_int32_t;
- typedef unsigned int spx_uint32_t;
-
-#elif defined(CONFIG_TI_C54X) || defined (CONFIG_TI_C55X)
-
- typedef short spx_int16_t;
- typedef unsigned short spx_uint16_t;
- typedef long spx_int32_t;
- typedef unsigned long spx_uint32_t;
-
-#elif defined(CONFIG_TI_C6X)
-
- typedef short spx_int16_t;
- typedef unsigned short spx_uint16_t;
- typedef int spx_int32_t;
- typedef unsigned int spx_uint32_t;
-
-#elif ANDROID
-
- typedef short spx_int16_t;
- typedef unsigned short spx_uint16_t;
- typedef int spx_int32_t;
- typedef unsigned int spx_uint32_t;
-
-#else
-
-# include <speex/speex_config_types.h>
-
-#endif
-
-#endif /* _SPEEX_TYPES_H */
diff --git a/branches/1.0/thirdparties/android/include/theora/codec.h b/branches/1.0/thirdparties/android/include/theora/codec.h
deleted file mode 100644
index 5c26696..0000000
--- a/branches/1.0/thirdparties/android/include/theora/codec.h
+++ /dev/null
@@ -1,591 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggTheora SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009 *
- * by the Xiph.Org Foundation http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function:
- last mod: $Id: theora.h,v 1.8 2004/03/15 22:17:32 derf Exp $
-
- ********************************************************************/
-
-/**\mainpage
- *
- * \section intro Introduction
- *
- * This is the documentation for <tt>libtheora</tt> C API.
- * The current reference
- * implementation for <a href="http://www.theora.org/">Theora</a>, a free,
- * patent-unencumbered video codec.
- * Theora is derived from On2's VP3 codec with additional features and
- * integration with Ogg multimedia formats by
- * <a href="http://www.xiph.org/">the Xiph.Org Foundation</a>.
- * Complete documentation of the format itself is available in
- * <a href="http://www.theora.org/doc/Theora.pdf">the Theora
- * specification</a>.
- *
- * \subsection Organization
- *
- * The functions documented here are actually subdivided into three
- * separate libraries:
- * - <tt>libtheoraenc</tt> contains the encoder interface,
- * described in \ref encfuncs.
- * - <tt>libtheoradec</tt> contains the decoder interface and
- * routines shared with the encoder.
- * You must also link to this if you link to <tt>libtheoraenc</tt>.
- * The routines in this library are described in \ref decfuncs and
- * \ref basefuncs.
- * - <tt>libtheora</tt> contains the \ref oldfuncs.
- *
- * New code should link to <tt>libtheoradec</tt> and, if using encoder
- * features, <tt>libtheoraenc</tt>. Together these two export both
- * the standard and the legacy API, so this is all that is needed by
- * any code. The older <tt>libtheora</tt> library is provided just for
- * compatibility with older build configurations.
- *
- * In general the recommended 1.x API symbols can be distinguished
- * by their <tt>th_</tt> or <tt>TH_</tt> namespace prefix.
- * The older, legacy API uses <tt>theora_</tt> or <tt>OC_</tt>
- * prefixes instead.
- */
-
-/**\file
- * The shared <tt>libtheoradec</tt> and <tt>libtheoraenc</tt> C API.
- * You don't need to include this directly.*/
-
-#if !defined(_O_THEORA_CODEC_H_)
-# define _O_THEORA_CODEC_H_ (1)
-# include <ogg/ogg.h>
-
-#if defined(__cplusplus)
-extern "C" {
-#endif
-
-
-
-/**\name Return codes*/
-/*@{*/
-/**An invalid pointer was provided.*/
-#define TH_EFAULT (-1)
-/**An invalid argument was provided.*/
-#define TH_EINVAL (-10)
-/**The contents of the header were incomplete, invalid, or unexpected.*/
-#define TH_EBADHEADER (-20)
-/**The header does not belong to a Theora stream.*/
-#define TH_ENOTFORMAT (-21)
-/**The bitstream version is too high.*/
-#define TH_EVERSION (-22)
-/**The specified function is not implemented.*/
-#define TH_EIMPL (-23)
-/**There were errors in the video data packet.*/
-#define TH_EBADPACKET (-24)
-/**The decoded packet represented a dropped frame.
- The player can continue to display the current frame, as the contents of the
- decoded frame buffer have not changed.*/
-#define TH_DUPFRAME (1)
-/*@}*/
-
-/**The currently defined color space tags.
- * See <a href="http://www.theora.org/doc/Theora.pdf">the Theora
- * specification</a>, Chapter 4, for exact details on the meaning
- * of each of these color spaces.*/
-typedef enum{
- /**The color space was not specified at the encoder.
- It may be conveyed by an external means.*/
- TH_CS_UNSPECIFIED,
- /**A color space designed for NTSC content.*/
- TH_CS_ITU_REC_470M,
- /**A color space designed for PAL/SECAM content.*/
- TH_CS_ITU_REC_470BG,
- /**The total number of currently defined color spaces.*/
- TH_CS_NSPACES
-}th_colorspace;
-
-/**The currently defined pixel format tags.
- * See <a href="http://www.theora.org/doc/Theora.pdf">the Theora
- * specification</a>, Section 4.4, for details on the precise sample
- * locations.*/
-typedef enum{
- /**Chroma decimation by 2 in both the X and Y directions (4:2:0).
- The Cb and Cr chroma planes are half the width and half the
- height of the luma plane.*/
- TH_PF_420,
- /**Currently reserved.*/
- TH_PF_RSVD,
- /**Chroma decimation by 2 in the X direction (4:2:2).
- The Cb and Cr chroma planes are half the width of the luma plane, but full
- height.*/
- TH_PF_422,
- /**No chroma decimation (4:4:4).
- The Cb and Cr chroma planes are full width and full height.*/
- TH_PF_444,
- /**The total number of currently defined pixel formats.*/
- TH_PF_NFORMATS
-}th_pixel_fmt;
-
-
-
-/**A buffer for a single color plane in an uncompressed image.
- * This contains the image data in a left-to-right, top-down format.
- * Each row of pixels is stored contiguously in memory, but successive
- * rows need not be.
- * Use \a stride to compute the offset of the next row.
- * The encoder accepts both positive \a stride values (top-down in memory)
- * and negative (bottom-up in memory).
- * The decoder currently always generates images with positive strides.*/
-typedef struct{
- /**The width of this plane.*/
- int width;
- /**The height of this plane.*/
- int height;
- /**The offset in bytes between successive rows.*/
- int stride;
- /**A pointer to the beginning of the first row.*/
- unsigned char *data;
-}th_img_plane;
-
-/**A complete image buffer for an uncompressed frame.
- * The chroma planes may be decimated by a factor of two in either
- * direction, as indicated by th_info#pixel_fmt.
- * The width and height of the Y' plane must be multiples of 16.
- * They may need to be cropped for display, using the rectangle
- * specified by th_info#pic_x, th_info#pic_y, th_info#pic_width,
- * and th_info#pic_height.
- * All samples are 8 bits.
- * \note The term YUV often used to describe a colorspace is ambiguous.
- * The exact parameters of the RGB to YUV conversion process aside, in
- * many contexts the U and V channels actually have opposite meanings.
- * To avoid this confusion, we are explicit: the name of the color
- * channels are Y'CbCr, and they appear in that order, always.
- * The prime symbol denotes that the Y channel is non-linear.
- * Cb and Cr stand for "Chroma blue" and "Chroma red", respectively.*/
-typedef th_img_plane th_ycbcr_buffer[3];
-
-/**Theora bitstream information.
- * This contains the basic playback parameters for a stream, and corresponds to
- * the initial 'info' header packet.
- * To initialize an encoder, the application fills in this structure and
- * passes it to th_encode_alloc().
- * A default encoding mode is chosen based on the values of the #quality and
- * #target_bitrate fields.
- * On decode, it is filled in by th_decode_headerin(), and then passed to
- * th_decode_alloc().
- *
- * Encoded Theora frames must be a multiple of 16 in size;
- * this is what the #frame_width and #frame_height members represent.
- * To handle arbitrary picture sizes, a crop rectangle is specified in the
- * #pic_x, #pic_y, #pic_width and #pic_height members.
- *
- * All frame buffers contain pointers to the full, padded frame.
- * However, the current encoder <em>will not</em> reference pixels outside of
- * the cropped picture region, and the application does not need to fill them
- * in.
- * The decoder <em>will</em> allocate storage for a full frame, but the
- * application <em>should not</em> rely on the padding containing sensible
- * data.
- *
- * It is also generally recommended that the offsets and sizes should still be
- * multiples of 2 to avoid chroma sampling shifts when chroma is sub-sampled.
- * See <a href="http://www.theora.org/doc/Theora.pdf">the Theora
- * specification</a>, Section 4.4, for more details.
- *
- * Frame rate, in frames per second, is stored as a rational fraction, as is
- * the pixel aspect ratio.
- * Note that this refers to the aspect ratio of the individual pixels, not of
- * the overall frame itself.
- * The frame aspect ratio can be computed from pixel aspect ratio using the
- * image dimensions.*/
-typedef struct{
- /**\name Theora version
- * Bitstream version information.*/
- /*@{*/
- unsigned char version_major;
- unsigned char version_minor;
- unsigned char version_subminor;
- /*@}*/
- /**The encoded frame width.
- * This must be a multiple of 16, and less than 1048576.*/
- ogg_uint32_t frame_width;
- /**The encoded frame height.
- * This must be a multiple of 16, and less than 1048576.*/
- ogg_uint32_t frame_height;
- /**The displayed picture width.
- * This must be no larger than width.*/
- ogg_uint32_t pic_width;
- /**The displayed picture height.
- * This must be no larger than height.*/
- ogg_uint32_t pic_height;
- /**The X offset of the displayed picture.
- * This must be no larger than #frame_width-#pic_width or 255, whichever is
- * smaller.*/
- ogg_uint32_t pic_x;
- /**The Y offset of the displayed picture.
- * This must be no larger than #frame_height-#pic_height, and
- * #frame_height-#pic_height-#pic_y must be no larger than 255.
- * This slightly funny restriction is due to the fact that the offset is
- * specified from the top of the image for consistency with the standard
- * graphics left-handed coordinate system used throughout this API, while
- * it is stored in the encoded stream as an offset from the bottom.*/
- ogg_uint32_t pic_y;
- /**\name Frame rate
- * The frame rate, as a fraction.
- * If either is 0, the frame rate is undefined.*/
- /*@{*/
- ogg_uint32_t fps_numerator;
- ogg_uint32_t fps_denominator;
- /*@}*/
- /**\name Aspect ratio
- * The aspect ratio of the pixels.
- * If either value is zero, the aspect ratio is undefined.
- * If not specified by any external means, 1:1 should be assumed.
- * The aspect ratio of the full picture can be computed as
- * \code
- * aspect_numerator*pic_width/(aspect_denominator*pic_height).
- * \endcode */
- /*@{*/
- ogg_uint32_t aspect_numerator;
- ogg_uint32_t aspect_denominator;
- /*@}*/
- /**The color space.*/
- th_colorspace colorspace;
- /**The pixel format.*/
- th_pixel_fmt pixel_fmt;
- /**The target bit-rate in bits per second.
- If initializing an encoder with this struct, set this field to a non-zero
- value to activate CBR encoding by default.*/
- int target_bitrate;
- /**The target quality level.
- Valid values range from 0 to 63, inclusive, with higher values giving
- higher quality.
- If initializing an encoder with this struct, and #target_bitrate is set
- to zero, VBR encoding at this quality will be activated by default.*/
- /*Currently this is set so that a qi of 0 corresponds to distortions of 24
- times the JND, and each increase by 16 halves that value.
- This gives us fine discrimination at low qualities, yet effective rate
- control at high qualities.
- The qi value 63 is special, however.
- For this, the highest quality, we use one half of a JND for our threshold.
- Due to the lower bounds placed on allowable quantizers in Theora, we will
- not actually be able to achieve quality this good, but this should
- provide as close to visually lossless quality as Theora is capable of.
- We could lift the quantizer restrictions without breaking VP3.1
- compatibility, but this would result in quantized coefficients that are
- too large for the current bitstream to be able to store.
- We'd have to redesign the token syntax to store these large coefficients,
- which would make transcoding complex.*/
- int quality;
- /**The amount to shift to extract the last keyframe number from the granule
- * position.
- * This can be at most 31.
- * th_info_init() will set this to a default value (currently <tt>6</tt>,
- * which is good for streaming applications), but you can set it to 0 to
- * make every frame a keyframe.
- * The maximum distance between key frames is
- * <tt>1<<#keyframe_granule_shift</tt>.
- * The keyframe frequency can be more finely controlled with
- * #TH_ENCCTL_SET_KEYFRAME_FREQUENCY_FORCE, which can also be adjusted
- * during encoding (for example, to force the next frame to be a keyframe),
- * but it cannot be set larger than the amount permitted by this field after
- * the headers have been output.*/
- int keyframe_granule_shift;
-}th_info;
-
-/**The comment information.
- *
- * This structure holds the in-stream metadata corresponding to
- * the 'comment' header packet.
- * The comment header is meant to be used much like someone jotting a quick
- * note on the label of a video.
- * It should be a short, to the point text note that can be more than a couple
- * words, but not more than a short paragraph.
- *
- * The metadata is stored as a series of (tag, value) pairs, in
- * length-encoded string vectors.
- * The first occurrence of the '=' character delimits the tag and value.
- * A particular tag may occur more than once, and order is significant.
- * The character set encoding for the strings is always UTF-8, but the tag
- * names are limited to ASCII, and treated as case-insensitive.
- * See <a href="http://www.theora.org/doc/Theora.pdf">the Theora
- * specification</a>, Section 6.3.3 for details.
- *
- * In filling in this structure, th_decode_headerin() will null-terminate
- * the user_comment strings for safety.
- * However, the bitstream format itself treats them as 8-bit clean vectors,
- * possibly containing null characters, and so the length array should be
- * treated as their authoritative length.
- */
-typedef struct th_comment{
- /**The array of comment string vectors.*/
- char **user_comments;
- /**An array of the corresponding length of each vector, in bytes.*/
- int *comment_lengths;
- /**The total number of comment strings.*/
- int comments;
- /**The null-terminated vendor string.
- This identifies the software used to encode the stream.*/
- char *vendor;
-}th_comment;
-
-
-
-/**A single base matrix.*/
-typedef unsigned char th_quant_base[64];
-
-/**A set of \a qi ranges.*/
-typedef struct{
- /**The number of ranges in the set.*/
- int nranges;
- /**The size of each of the #nranges ranges.
- These must sum to 63.*/
- const int *sizes;
- /**#nranges <tt>+1</tt> base matrices.
- Matrices \a i and <tt>i+1</tt> form the endpoints of range \a i.*/
- const th_quant_base *base_matrices;
-}th_quant_ranges;
-
-/**A complete set of quantization parameters.
- The quantizer for each coefficient is calculated as:
- \code
- Q=MAX(MIN(qmin[qti][ci!=0],scale[ci!=0][qi]*base[qti][pli][qi][ci]/100),
- 1024).
- \endcode
-
- \a qti is the quantization type index: 0 for intra, 1 for inter.
- <tt>ci!=0</tt> is 0 for the DC coefficient and 1 for AC coefficients.
- \a qi is the quality index, ranging between 0 (low quality) and 63 (high
- quality).
- \a pli is the color plane index: 0 for Y', 1 for Cb, 2 for Cr.
- \a ci is the DCT coefficient index.
- Coefficient indices correspond to the normal 2D DCT block
- ordering--row-major with low frequencies first--\em not zig-zag order.
-
- Minimum quantizers are constant, and are given by:
- \code
- qmin[2][2]={{4,2},{8,4}}.
- \endcode
-
- Parameters that can be stored in the bitstream are as follows:
- - The two scale matrices ac_scale and dc_scale.
- \code
- scale[2][64]={dc_scale,ac_scale}.
- \endcode
- - The base matrices for each \a qi, \a qti and \a pli (up to 384 in all).
- In order to avoid storing a full 384 base matrices, only a sparse set of
- matrices are stored, and the rest are linearly interpolated.
- This is done as follows.
- For each \a qti and \a pli, a series of \a n \a qi ranges is defined.
- The size of each \a qi range can vary arbitrarily, but they must sum to
- 63.
- Then, <tt>n+1</tt> matrices are specified, one for each endpoint of the
- ranges.
- For interpolation purposes, each range's endpoints are the first \a qi
- value it contains and one past the last \a qi value it contains.
- Fractional values are rounded to the nearest integer, with ties rounded
- away from zero.
-
- Base matrices are stored by reference, so if the same matrices are used
- multiple times, they will only appear once in the bitstream.
- The bitstream is also capable of omitting an entire set of ranges and
- its associated matrices if they are the same as either the previous
- set (indexed in row-major order) or if the inter set is the same as the
- intra set.
-
- - Loop filter limit values.
- The same limits are used for the loop filter in all color planes, despite
- potentially differing levels of quantization in each.
-
- For the current encoder, <tt>scale[ci!=0][qi]</tt> must be no greater
- than <tt>scale[ci!=0][qi-1]</tt> and <tt>base[qti][pli][qi][ci]</tt> must
- be no greater than <tt>base[qti][pli][qi-1][ci]</tt>.
- These two conditions ensure that the actual quantizer for a given \a qti,
- \a pli, and \a ci does not increase as \a qi increases.
- This is not required by the decoder.*/
-typedef struct{
- /**The DC scaling factors.*/
- ogg_uint16_t dc_scale[64];
- /**The AC scaling factors.*/
- ogg_uint16_t ac_scale[64];
- /**The loop filter limit values.*/
- unsigned char loop_filter_limits[64];
- /**The \a qi ranges for each \a ci and \a pli.*/
- th_quant_ranges qi_ranges[2][3];
-}th_quant_info;
-
-
-
-/**The number of Huffman tables used by Theora.*/
-#define TH_NHUFFMAN_TABLES (80)
-/**The number of DCT token values in each table.*/
-#define TH_NDCT_TOKENS (32)
-
-/**A Huffman code for a Theora DCT token.
- * Each set of Huffman codes in a given table must form a complete, prefix-free
- * code.
- * There is no requirement that all the tokens in a table have a valid code,
- * but the current encoder is not optimized to take advantage of this.
- * If each of the five grouops of 16 tables does not contain at least one table
- * with a code for every token, then the encoder may fail to encode certain
- * frames.
- * The complete table in the first group of 16 does not have to be in the same
- * place as the complete table in the other groups, but the complete tables in
- * the remaining four groups must all be in the same place.*/
-typedef struct{
- /**The bit pattern for the code, with the LSbit of the pattern aligned in
- * the LSbit of the word.*/
- ogg_uint32_t pattern;
- /**The number of bits in the code.
- * This must be between 0 and 32, inclusive.*/
- int nbits;
-}th_huff_code;
-
-
-
-/**\defgroup basefuncs Functions Shared by Encode and Decode*/
-/*@{*/
-/**\name Basic shared functions*/
-/*@{*/
-/**Retrieves a human-readable string to identify the library vendor and
- * version.
- * \return the version string.*/
-extern const char *th_version_string(void);
-/**Retrieves the library version number.
- * This is the highest bitstream version that the encoder library will produce,
- * or that the decoder library can decode.
- * This number is composed of a 16-bit major version, 8-bit minor version
- * and 8 bit sub-version, composed as follows:
- * \code
- * (VERSION_MAJOR<<16)+(VERSION_MINOR<<8)+(VERSION_SUBMINOR)
- * \endcode
- * \return the version number.*/
-extern ogg_uint32_t th_version_number(void);
-/**Converts a granule position to an absolute frame index, starting at
- * <tt>0</tt>.
- * The granule position is interpreted in the context of a given
- * #th_enc_ctx or #th_dec_ctx handle (either will suffice).
- * \param _encdec A previously allocated #th_enc_ctx or #th_dec_ctx
- * handle.
- * \param _granpos The granule position to convert.
- * \returns The absolute frame index corresponding to \a _granpos.
- * \retval -1 The given granule position was invalid (i.e. negative).*/
-extern ogg_int64_t th_granule_frame(void *_encdec,ogg_int64_t _granpos);
-/**Converts a granule position to an absolute time in seconds.
- * The granule position is interpreted in the context of a given
- * #th_enc_ctx or #th_dec_ctx handle (either will suffice).
- * \param _encdec A previously allocated #th_enc_ctx or #th_dec_ctx
- * handle.
- * \param _granpos The granule position to convert.
- * \return The absolute time in seconds corresponding to \a _granpos.
- * This is the "end time" for the frame, or the latest time it should
- * be displayed.
- * It is not the presentation time.
- * \retval -1 The given granule position was invalid (i.e. negative).*/
-extern double th_granule_time(void *_encdec,ogg_int64_t _granpos);
-/**Determines whether a Theora packet is a header or not.
- * This function does no verification beyond checking the packet type bit, so
- * it should not be used for bitstream identification; use
- * th_decode_headerin() for that.
- * As per the Theora specification, an empty (0-byte) packet is treated as a
- * data packet (a delta frame with no coded blocks).
- * \param _op An <tt>ogg_packet</tt> containing encoded Theora data.
- * \retval 1 The packet is a header packet
- * \retval 0 The packet is a video data packet.*/
-extern int th_packet_isheader(ogg_packet *_op);
-/**Determines whether a theora packet is a key frame or not.
- * This function does no verification beyond checking the packet type and
- * key frame bits, so it should not be used for bitstream identification; use
- * th_decode_headerin() for that.
- * As per the Theora specification, an empty (0-byte) packet is treated as a
- * delta frame (with no coded blocks).
- * \param _op An <tt>ogg_packet</tt> containing encoded Theora data.
- * \retval 1 The packet contains a key frame.
- * \retval 0 The packet contains a delta frame.
- * \retval -1 The packet is not a video data packet.*/
-extern int th_packet_iskeyframe(ogg_packet *_op);
-/*@}*/
-
-
-/**\name Functions for manipulating header data*/
-/*@{*/
-/**Initializes a th_info structure.
- * This should be called on a freshly allocated #th_info structure before
- * attempting to use it.
- * \param _info The #th_info struct to initialize.*/
-extern void th_info_init(th_info *_info);
-/**Clears a #th_info structure.
- * This should be called on a #th_info structure after it is no longer
- * needed.
- * \param _info The #th_info struct to clear.*/
-extern void th_info_clear(th_info *_info);
-
-/**Initialize a #th_comment structure.
- * This should be called on a freshly allocated #th_comment structure
- * before attempting to use it.
- * \param _tc The #th_comment struct to initialize.*/
-extern void th_comment_init(th_comment *_tc);
-/**Add a comment to an initialized #th_comment structure.
- * \note Neither th_comment_add() nor th_comment_add_tag() support
- * comments containing null values, although the bitstream format does
- * support them.
- * To add such comments you will need to manipulate the #th_comment
- * structure directly.
- * \param _tc The #th_comment struct to add the comment to.
- * \param _comment Must be a null-terminated UTF-8 string containing the
- * comment in "TAG=the value" form.*/
-extern void th_comment_add(th_comment *_tc, char *_comment);
-/**Add a comment to an initialized #th_comment structure.
- * \note Neither th_comment_add() nor th_comment_add_tag() support
- * comments containing null values, although the bitstream format does
- * support them.
- * To add such comments you will need to manipulate the #th_comment
- * structure directly.
- * \param _tc The #th_comment struct to add the comment to.
- * \param _tag A null-terminated string containing the tag associated with
- * the comment.
- * \param _val The corresponding value as a null-terminated string.*/
-extern void th_comment_add_tag(th_comment *_tc,char *_tag,char *_val);
-/**Look up a comment value by its tag.
- * \param _tc An initialized #th_comment structure.
- * \param _tag The tag to look up.
- * \param _count The instance of the tag.
- * The same tag can appear multiple times, each with a distinct
- * value, so an index is required to retrieve them all.
- * The order in which these values appear is significant and
- * should be preserved.
- * Use th_comment_query_count() to get the legal range for
- * the \a _count parameter.
- * \return A pointer to the queried tag's value.
- * This points directly to data in the #th_comment structure.
- * It should not be modified or freed by the application, and
- * modifications to the structure may invalidate the pointer.
- * \retval NULL If no matching tag is found.*/
-extern char *th_comment_query(th_comment *_tc,char *_tag,int _count);
-/**Look up the number of instances of a tag.
- * Call this first when querying for a specific tag and then iterate over the
- * number of instances with separate calls to th_comment_query() to
- * retrieve all the values for that tag in order.
- * \param _tc An initialized #th_comment structure.
- * \param _tag The tag to look up.
- * \return The number on instances of this particular tag.*/
-extern int th_comment_query_count(th_comment *_tc,char *_tag);
-/**Clears a #th_comment structure.
- * This should be called on a #th_comment structure after it is no longer
- * needed.
- * It will free all memory used by the structure members.
- * \param _tc The #th_comment struct to clear.*/
-extern void th_comment_clear(th_comment *_tc);
-/*@}*/
-/*@}*/
-
-
-
-#if defined(__cplusplus)
-}
-#endif
-
-#endif
diff --git a/branches/1.0/thirdparties/android/include/theora/theora.h b/branches/1.0/thirdparties/android/include/theora/theora.h
deleted file mode 100644
index 575a889..0000000
--- a/branches/1.0/thirdparties/android/include/theora/theora.h
+++ /dev/null
@@ -1,784 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggTheora SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009 *
- * by the Xiph.Org Foundation http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function:
- last mod: $Id: theora.h,v 1.17 2003/12/06 18:06:19 arc Exp $
-
- ********************************************************************/
-
-#ifndef _O_THEORA_H_
-#define _O_THEORA_H_
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#include <stddef.h> /* for size_t */
-
-#include <ogg/ogg.h>
-
-/** \file
- * The libtheora pre-1.0 legacy C API.
- *
- * \ingroup oldfuncs
- *
- * \section intro Introduction
- *
- * This is the documentation for the libtheora legacy C API, declared in
- * the theora.h header, which describes the old interface used before
- * the 1.0 release. This API was widely deployed for several years and
- * remains supported, but for new code we recommend the cleaner API
- * declared in theoradec.h and theoraenc.h.
- *
- * libtheora is the reference implementation for
- * <a href="http://www.theora.org/">Theora</a>, a free video codec.
- * Theora is derived from On2's VP3 codec with improved integration with
- * Ogg multimedia formats by <a href="http://www.xiph.org/">Xiph.Org</a>.
- *
- * \section overview Overview
- *
- * This library will both decode and encode theora packets to/from raw YUV
- * frames. In either case, the packets will most likely either come from or
- * need to be embedded in an Ogg stream. Use
- * <a href="http://xiph.org/ogg/">libogg</a> or
- * <a href="http://www.annodex.net/software/liboggz/index.html">liboggz</a>
- * to extract/package these packets.
- *
- * \section decoding Decoding Process
- *
- * Decoding can be separated into the following steps:
- * -# initialise theora_info and theora_comment structures using
- * theora_info_init() and theora_comment_init():
- \verbatim
- theora_info info;
- theora_comment comment;
-
- theora_info_init(&info);
- theora_comment_init(&comment);
- \endverbatim
- * -# retrieve header packets from Ogg stream (there should be 3) and decode
- * into theora_info and theora_comment structures using
- * theora_decode_header(). See \ref identification for more information on
- * identifying which packets are theora packets.
- \verbatim
- int i;
- for (i = 0; i < 3; i++)
- {
- (get a theora packet "op" from the Ogg stream)
- theora_decode_header(&info, &comment, op);
- }
- \endverbatim
- * -# initialise the decoder based on the information retrieved into the
- * theora_info struct by theora_decode_header(). You will need a
- * theora_state struct.
- \verbatim
- theora_state state;
-
- theora_decode_init(&state, &info);
- \endverbatim
- * -# pass in packets and retrieve decoded frames! See the yuv_buffer
- * documentation for information on how to retrieve raw YUV data.
- \verbatim
- yuf_buffer buffer;
- while (last packet was not e_o_s) {
- (get a theora packet "op" from the Ogg stream)
- theora_decode_packetin(&state, op);
- theora_decode_YUVout(&state, &buffer);
- }
- \endverbatim
- *
- *
- * \subsection identification Identifying Theora Packets
- *
- * All streams inside an Ogg file have a unique serial_no attached to the
- * stream. Typically, you will want to
- * - retrieve the serial_no for each b_o_s (beginning of stream) page
- * encountered within the Ogg file;
- * - test the first (only) packet on that page to determine if it is a theora
- * packet;
- * - once you have found a theora b_o_s page then use the retrieved serial_no
- * to identify future packets belonging to the same theora stream.
- *
- * Note that you \e cannot use theora_packet_isheader() to determine if a
- * packet is a theora packet or not, as this function does not perform any
- * checking beyond whether a header bit is present. Instead, use the
- * theora_decode_header() function and check the return value; or examine the
- * header bytes at the beginning of the Ogg page.
- */
-
-
-/** \defgroup oldfuncs Legacy pre-1.0 C API */
-/* @{ */
-
-/**
- * A YUV buffer for passing uncompressed frames to and from the codec.
- * This holds a Y'CbCr frame in planar format. The CbCr planes can be
- * subsampled and have their own separate dimensions and row stride
- * offsets. Note that the strides may be negative in some
- * configurations. For theora the width and height of the largest plane
- * must be a multiple of 16. The actual meaningful picture size and
- * offset are stored in the theora_info structure; frames returned by
- * the decoder may need to be cropped for display.
- *
- * All samples are 8 bits. Within each plane samples are ordered by
- * row from the top of the frame to the bottom. Within each row samples
- * are ordered from left to right.
- *
- * During decode, the yuv_buffer struct is allocated by the user, but all
- * fields (including luma and chroma pointers) are filled by the library.
- * These pointers address library-internal memory and their contents should
- * not be modified.
- *
- * Conversely, during encode the user allocates the struct and fills out all
- * fields. The user also manages the data addressed by the luma and chroma
- * pointers. See the encoder_example.c and dump_video.c example files in
- * theora/examples/ for more information.
- */
-typedef struct {
- int y_width; /**< Width of the Y' luminance plane */
- int y_height; /**< Height of the luminance plane */
- int y_stride; /**< Offset in bytes between successive rows */
-
- int uv_width; /**< Width of the Cb and Cr chroma planes */
- int uv_height; /**< Height of the chroma planes */
- int uv_stride; /**< Offset between successive chroma rows */
- unsigned char *y; /**< Pointer to start of luminance data */
- unsigned char *u; /**< Pointer to start of Cb data */
- unsigned char *v; /**< Pointer to start of Cr data */
-
-} yuv_buffer;
-
-/**
- * A Colorspace.
- */
-typedef enum {
- OC_CS_UNSPECIFIED, /**< The colorspace is unknown or unspecified */
- OC_CS_ITU_REC_470M, /**< This is the best option for 'NTSC' content */
- OC_CS_ITU_REC_470BG, /**< This is the best option for 'PAL' content */
- OC_CS_NSPACES /**< This marks the end of the defined colorspaces */
-} theora_colorspace;
-
-/**
- * A Chroma subsampling
- *
- * These enumerate the available chroma subsampling options supported
- * by the theora format. See Section 4.4 of the specification for
- * exact definitions.
- */
-typedef enum {
- OC_PF_420, /**< Chroma subsampling by 2 in each direction (4:2:0) */
- OC_PF_RSVD, /**< Reserved value */
- OC_PF_422, /**< Horizonatal chroma subsampling by 2 (4:2:2) */
- OC_PF_444 /**< No chroma subsampling at all (4:4:4) */
-} theora_pixelformat;
-
-/**
- * Theora bitstream info.
- * Contains the basic playback parameters for a stream,
- * corresponding to the initial 'info' header packet.
- *
- * Encoded theora frames must be a multiple of 16 in width and height.
- * To handle other frame sizes, a crop rectangle is specified in
- * frame_height and frame_width, offset_x and * offset_y. The offset
- * and size should still be a multiple of 2 to avoid chroma sampling
- * shifts. Offset values in this structure are measured from the
- * upper left of the image.
- *
- * Frame rate, in frames per second, is stored as a rational
- * fraction. Aspect ratio is also stored as a rational fraction, and
- * refers to the aspect ratio of the frame pixels, not of the
- * overall frame itself.
- *
- * See <a href="http://svn.xiph.org/trunk/theora/examples/encoder_example.c">
- * examples/encoder_example.c</a> for usage examples of the
- * other paramters and good default settings for the encoder parameters.
- */
-typedef struct {
- ogg_uint32_t width; /**< encoded frame width */
- ogg_uint32_t height; /**< encoded frame height */
- ogg_uint32_t frame_width; /**< display frame width */
- ogg_uint32_t frame_height; /**< display frame height */
- ogg_uint32_t offset_x; /**< horizontal offset of the displayed frame */
- ogg_uint32_t offset_y; /**< vertical offset of the displayed frame */
- ogg_uint32_t fps_numerator; /**< frame rate numerator **/
- ogg_uint32_t fps_denominator; /**< frame rate denominator **/
- ogg_uint32_t aspect_numerator; /**< pixel aspect ratio numerator */
- ogg_uint32_t aspect_denominator; /**< pixel aspect ratio denominator */
- theora_colorspace colorspace; /**< colorspace */
- int target_bitrate; /**< nominal bitrate in bits per second */
- int quality; /**< Nominal quality setting, 0-63 */
- int quick_p; /**< Quick encode/decode */
-
- /* decode only */
- unsigned char version_major;
- unsigned char version_minor;
- unsigned char version_subminor;
-
- void *codec_setup;
-
- /* encode only */
- int dropframes_p;
- int keyframe_auto_p;
- ogg_uint32_t keyframe_frequency;
- ogg_uint32_t keyframe_frequency_force; /* also used for decode init to
- get granpos shift correct */
- ogg_uint32_t keyframe_data_target_bitrate;
- ogg_int32_t keyframe_auto_threshold;
- ogg_uint32_t keyframe_mindistance;
- ogg_int32_t noise_sensitivity;
- ogg_int32_t sharpness;
-
- theora_pixelformat pixelformat; /**< chroma subsampling mode to expect */
-
-} theora_info;
-
-/** Codec internal state and context.
- */
-typedef struct{
- theora_info *i;
- ogg_int64_t granulepos;
-
- void *internal_encode;
- void *internal_decode;
-
-} theora_state;
-
-/**
- * Comment header metadata.
- *
- * This structure holds the in-stream metadata corresponding to
- * the 'comment' header packet.
- *
- * Meta data is stored as a series of (tag, value) pairs, in
- * length-encoded string vectors. The first occurence of the
- * '=' character delimits the tag and value. A particular tag
- * may occur more than once. The character set encoding for
- * the strings is always UTF-8, but the tag names are limited
- * to case-insensitive ASCII. See the spec for details.
- *
- * In filling in this structure, theora_decode_header() will
- * null-terminate the user_comment strings for safety. However,
- * the bitstream format itself treats them as 8-bit clean,
- * and so the length array should be treated as authoritative
- * for their length.
- */
-typedef struct theora_comment{
- char **user_comments; /**< An array of comment string vectors */
- int *comment_lengths; /**< An array of corresponding string vector lengths in bytes */
- int comments; /**< The total number of comment string vectors */
- char *vendor; /**< The vendor string identifying the encoder, null terminated */
-
-} theora_comment;
-
-
-/**\name theora_control() codes */
-/* \anchor decctlcodes_old
- * These are the available request codes for theora_control()
- * when called with a decoder instance.
- * By convention decoder control codes are odd, to distinguish
- * them from \ref encctlcodes_old "encoder control codes" which
- * are even.
- *
- * Note that since the 1.0 release, both the legacy and the final
- * implementation accept all the same control codes, but only the
- * final API declares the newer codes.
- *
- * Keep any experimental or vendor-specific values above \c 0x8000.*/
-
-/*@{*/
-
-/**Get the maximum post-processing level.
- * The decoder supports a post-processing filter that can improve
- * the appearance of the decoded images. This returns the highest
- * level setting for this post-processor, corresponding to maximum
- * improvement and computational expense.
- */
-#define TH_DECCTL_GET_PPLEVEL_MAX (1)
-
-/**Set the post-processing level.
- * Sets the level of post-processing to use when decoding the
- * compressed stream. This must be a value between zero (off)
- * and the maximum returned by TH_DECCTL_GET_PPLEVEL_MAX.
- */
-#define TH_DECCTL_SET_PPLEVEL (3)
-
-/**Sets the maximum distance between key frames.
- * This can be changed during an encode, but will be bounded by
- * <tt>1<<th_info#keyframe_granule_shift</tt>.
- * If it is set before encoding begins, th_info#keyframe_granule_shift will
- * be enlarged appropriately.
- *
- * \param[in] buf <tt>ogg_uint32_t</tt>: The maximum distance between key
- * frames.
- * \param[out] buf <tt>ogg_uint32_t</tt>: The actual maximum distance set.
- * \retval OC_FAULT \a theora_state or \a buf is <tt>NULL</tt>.
- * \retval OC_EINVAL \a buf_sz is not <tt>sizeof(ogg_uint32_t)</tt>.
- * \retval OC_IMPL Not supported by this implementation.*/
-#define TH_ENCCTL_SET_KEYFRAME_FREQUENCY_FORCE (4)
-
-/**Set the granule position.
- * Call this after a seek, to update the internal granulepos
- * in the decoder, to insure that subsequent frames are marked
- * properly. If you track timestamps yourself and do not use
- * the granule postion returned by the decoder, then you do
- * not need to use this control.
- */
-#define TH_DECCTL_SET_GRANPOS (5)
-
-/**\anchor encctlcodes_old */
-
-/**Sets the quantization parameters to use.
- * The parameters are copied, not stored by reference, so they can be freed
- * after this call.
- * <tt>NULL</tt> may be specified to revert to the default parameters.
- *
- * \param[in] buf #th_quant_info
- * \retval OC_FAULT \a theora_state is <tt>NULL</tt>.
- * \retval OC_EINVAL Encoding has already begun, the quantization parameters
- * are not acceptable to this version of the encoder,
- * \a buf is <tt>NULL</tt> and \a buf_sz is not zero,
- * or \a buf is non-<tt>NULL</tt> and \a buf_sz is
- * not <tt>sizeof(#th_quant_info)</tt>.
- * \retval OC_IMPL Not supported by this implementation.*/
-#define TH_ENCCTL_SET_QUANT_PARAMS (2)
-
-/**Disables any encoder features that would prevent lossless transcoding back
- * to VP3.
- * This primarily means disabling block-level QI values and not using 4MV mode
- * when any of the luma blocks in a macro block are not coded.
- * It also includes using the VP3 quantization tables and Huffman codes; if you
- * set them explicitly after calling this function, the resulting stream will
- * not be VP3-compatible.
- * If you enable VP3-compatibility when encoding 4:2:2 or 4:4:4 source
- * material, or when using a picture region smaller than the full frame (e.g.
- * a non-multiple-of-16 width or height), then non-VP3 bitstream features will
- * still be disabled, but the stream will still not be VP3-compatible, as VP3
- * was not capable of encoding such formats.
- * If you call this after encoding has already begun, then the quantization
- * tables and codebooks cannot be changed, but the frame-level features will
- * be enabled or disabled as requested.
- *
- * \param[in] buf <tt>int</tt>: a non-zero value to enable VP3 compatibility,
- * or 0 to disable it (the default).
- * \param[out] buf <tt>int</tt>: 1 if all bitstream features required for
- * VP3-compatibility could be set, and 0 otherwise.
- * The latter will be returned if the pixel format is not
- * 4:2:0, the picture region is smaller than the full frame,
- * or if encoding has begun, preventing the quantization
- * tables and codebooks from being set.
- * \retval OC_FAULT \a theora_state or \a buf is <tt>NULL</tt>.
- * \retval OC_EINVAL \a buf_sz is not <tt>sizeof(int)</tt>.
- * \retval OC_IMPL Not supported by this implementation.*/
-#define TH_ENCCTL_SET_VP3_COMPATIBLE (10)
-
-/**Gets the maximum speed level.
- * Higher speed levels favor quicker encoding over better quality per bit.
- * Depending on the encoding mode, and the internal algorithms used, quality
- * may actually improve, but in this case bitrate will also likely increase.
- * In any case, overall rate/distortion performance will probably decrease.
- * The maximum value, and the meaning of each value, may change depending on
- * the current encoding mode (VBR vs. CQI, etc.).
- *
- * \param[out] buf int: The maximum encoding speed level.
- * \retval OC_FAULT \a theora_state or \a buf is <tt>NULL</tt>.
- * \retval OC_EINVAL \a buf_sz is not <tt>sizeof(int)</tt>.
- * \retval OC_IMPL Not supported by this implementation in the current
- * encoding mode.*/
-#define TH_ENCCTL_GET_SPLEVEL_MAX (12)
-
-/**Sets the speed level.
- * By default a speed value of 1 is used.
- *
- * \param[in] buf int: The new encoding speed level.
- * 0 is slowest, larger values use less CPU.
- * \retval OC_FAULT \a theora_state or \a buf is <tt>NULL</tt>.
- * \retval OC_EINVAL \a buf_sz is not <tt>sizeof(int)</tt>, or the
- * encoding speed level is out of bounds.
- * The maximum encoding speed level may be
- * implementation- and encoding mode-specific, and can be
- * obtained via #TH_ENCCTL_GET_SPLEVEL_MAX.
- * \retval OC_IMPL Not supported by this implementation in the current
- * encoding mode.*/
-#define TH_ENCCTL_SET_SPLEVEL (14)
-
-/*@}*/
-
-#define OC_FAULT -1 /**< General failure */
-#define OC_EINVAL -10 /**< Library encountered invalid internal data */
-#define OC_DISABLED -11 /**< Requested action is disabled */
-#define OC_BADHEADER -20 /**< Header packet was corrupt/invalid */
-#define OC_NOTFORMAT -21 /**< Packet is not a theora packet */
-#define OC_VERSION -22 /**< Bitstream version is not handled */
-#define OC_IMPL -23 /**< Feature or action not implemented */
-#define OC_BADPACKET -24 /**< Packet is corrupt */
-#define OC_NEWPACKET -25 /**< Packet is an (ignorable) unhandled extension */
-#define OC_DUPFRAME 1 /**< Packet is a dropped frame */
-
-/**
- * Retrieve a human-readable string to identify the encoder vendor and version.
- * \returns A version string.
- */
-extern const char *theora_version_string(void);
-
-/**
- * Retrieve a 32-bit version number.
- * This number is composed of a 16-bit major version, 8-bit minor version
- * and 8 bit sub-version, composed as follows:
-<pre>
- (VERSION_MAJOR<<16) + (VERSION_MINOR<<8) + (VERSION_SUB)
-</pre>
-* \returns The version number.
-*/
-extern ogg_uint32_t theora_version_number(void);
-
-/**
- * Initialize the theora encoder.
- * \param th The theora_state handle to initialize for encoding.
- * \param ti A theora_info struct filled with the desired encoding parameters.
- * \retval 0 Success
- */
-extern int theora_encode_init(theora_state *th, theora_info *ti);
-
-/**
- * Submit a YUV buffer to the theora encoder.
- * \param t A theora_state handle previously initialized for encoding.
- * \param yuv A buffer of YUV data to encode. Note that both the yuv_buffer
- * struct and the luma/chroma buffers within should be allocated by
- * the user.
- * \retval OC_EINVAL Encoder is not ready, or is finished.
- * \retval -1 The size of the given frame differs from those previously input
- * \retval 0 Success
- */
-extern int theora_encode_YUVin(theora_state *t, yuv_buffer *yuv);
-
-/**
- * Request the next packet of encoded video.
- * The encoded data is placed in a user-provided ogg_packet structure.
- * \param t A theora_state handle previously initialized for encoding.
- * \param last_p whether this is the last packet the encoder should produce.
- * \param op An ogg_packet structure to fill. libtheora will set all
- * elements of this structure, including a pointer to encoded
- * data. The memory for the encoded data is owned by libtheora.
- * \retval 0 No internal storage exists OR no packet is ready
- * \retval -1 The encoding process has completed
- * \retval 1 Success
- */
-extern int theora_encode_packetout( theora_state *t, int last_p,
- ogg_packet *op);
-
-/**
- * Request a packet containing the initial header.
- * A pointer to the header data is placed in a user-provided ogg_packet
- * structure.
- * \param t A theora_state handle previously initialized for encoding.
- * \param op An ogg_packet structure to fill. libtheora will set all
- * elements of this structure, including a pointer to the header
- * data. The memory for the header data is owned by libtheora.
- * \retval 0 Success
- */
-extern int theora_encode_header(theora_state *t, ogg_packet *op);
-
-/**
- * Request a comment header packet from provided metadata.
- * A pointer to the comment data is placed in a user-provided ogg_packet
- * structure.
- * \param tc A theora_comment structure filled with the desired metadata
- * \param op An ogg_packet structure to fill. libtheora will set all
- * elements of this structure, including a pointer to the encoded
- * comment data. The memory for the comment data is owned by
- * libtheora.
- * \retval 0 Success
- */
-extern int theora_encode_comment(theora_comment *tc, ogg_packet *op);
-
-/**
- * Request a packet containing the codebook tables for the stream.
- * A pointer to the codebook data is placed in a user-provided ogg_packet
- * structure.
- * \param t A theora_state handle previously initialized for encoding.
- * \param op An ogg_packet structure to fill. libtheora will set all
- * elements of this structure, including a pointer to the codebook
- * data. The memory for the header data is owned by libtheora.
- * \retval 0 Success
- */
-extern int theora_encode_tables(theora_state *t, ogg_packet *op);
-
-/**
- * Decode an Ogg packet, with the expectation that the packet contains
- * an initial header, comment data or codebook tables.
- *
- * \param ci A theora_info structure to fill. This must have been previously
- * initialized with theora_info_init(). If \a op contains an initial
- * header, theora_decode_header() will fill \a ci with the
- * parsed header values. If \a op contains codebook tables,
- * theora_decode_header() will parse these and attach an internal
- * representation to \a ci->codec_setup.
- * \param cc A theora_comment structure to fill. If \a op contains comment
- * data, theora_decode_header() will fill \a cc with the parsed
- * comments.
- * \param op An ogg_packet structure which you expect contains an initial
- * header, comment data or codebook tables.
- *
- * \retval OC_BADHEADER \a op is NULL; OR the first byte of \a op->packet
- * has the signature of an initial packet, but op is
- * not a b_o_s packet; OR this packet has the signature
- * of an initial header packet, but an initial header
- * packet has already been seen; OR this packet has the
- * signature of a comment packet, but the initial header
- * has not yet been seen; OR this packet has the signature
- * of a comment packet, but contains invalid data; OR
- * this packet has the signature of codebook tables,
- * but the initial header or comments have not yet
- * been seen; OR this packet has the signature of codebook
- * tables, but contains invalid data;
- * OR the stream being decoded has a compatible version
- * but this packet does not have the signature of a
- * theora initial header, comments, or codebook packet
- * \retval OC_VERSION The packet data of \a op is an initial header with
- * a version which is incompatible with this version of
- * libtheora.
- * \retval OC_NEWPACKET the stream being decoded has an incompatible (future)
- * version and contains an unknown signature.
- * \retval 0 Success
- *
- * \note The normal usage is that theora_decode_header() be called on the
- * first three packets of a theora logical bitstream in succession.
- */
-extern int theora_decode_header(theora_info *ci, theora_comment *cc,
- ogg_packet *op);
-
-/**
- * Initialize a theora_state handle for decoding.
- * \param th The theora_state handle to initialize.
- * \param c A theora_info struct filled with the desired decoding parameters.
- * This is of course usually obtained from a previous call to
- * theora_decode_header().
- * \retval 0 Success
- */
-extern int theora_decode_init(theora_state *th, theora_info *c);
-
-/**
- * Input a packet containing encoded data into the theora decoder.
- * \param th A theora_state handle previously initialized for decoding.
- * \param op An ogg_packet containing encoded theora data.
- * \retval 0 Success
- * \retval OC_BADPACKET \a op does not contain encoded video data
- */
-extern int theora_decode_packetin(theora_state *th,ogg_packet *op);
-
-/**
- * Output the next available frame of decoded YUV data.
- * \param th A theora_state handle previously initialized for decoding.
- * \param yuv A yuv_buffer in which libtheora should place the decoded data.
- * Note that the buffer struct itself is allocated by the user, but
- * that the luma and chroma pointers will be filled in by the
- * library. Also note that these luma and chroma regions should be
- * considered read-only by the user.
- * \retval 0 Success
- */
-extern int theora_decode_YUVout(theora_state *th,yuv_buffer *yuv);
-
-/**
- * Report whether a theora packet is a header or not
- * This function does no verification beyond checking the header
- * flag bit so it should not be used for bitstream identification;
- * use theora_decode_header() for that.
- *
- * \param op An ogg_packet containing encoded theora data.
- * \retval 1 The packet is a header packet
- * \retval 0 The packet is not a header packet (and so contains frame data)
- *
- * Thus function was added in the 1.0alpha4 release.
- */
-extern int theora_packet_isheader(ogg_packet *op);
-
-/**
- * Report whether a theora packet is a keyframe or not
- *
- * \param op An ogg_packet containing encoded theora data.
- * \retval 1 The packet contains a keyframe image
- * \retval 0 The packet is contains an interframe delta
- * \retval -1 The packet is not an image data packet at all
- *
- * Thus function was added in the 1.0alpha4 release.
- */
-extern int theora_packet_iskeyframe(ogg_packet *op);
-
-/**
- * Report the granulepos shift radix
- *
- * When embedded in Ogg, Theora uses a two-part granulepos,
- * splitting the 64-bit field into two pieces. The more-significant
- * section represents the frame count at the last keyframe,
- * and the less-significant section represents the count of
- * frames since the last keyframe. In this way the overall
- * field is still non-decreasing with time, but usefully encodes
- * a pointer to the last keyframe, which is necessary for
- * correctly restarting decode after a seek.
- *
- * This function reports the number of bits used to represent
- * the distance to the last keyframe, and thus how the granulepos
- * field must be shifted or masked to obtain the two parts.
- *
- * Since libtheora returns compressed data in an ogg_packet
- * structure, this may be generally useful even if the Theora
- * packets are not being used in an Ogg container.
- *
- * \param ti A previously initialized theora_info struct
- * \returns The bit shift dividing the two granulepos fields
- *
- * This function was added in the 1.0alpha5 release.
- */
-int theora_granule_shift(theora_info *ti);
-
-/**
- * Convert a granulepos to an absolute frame index, starting at 0.
- * The granulepos is interpreted in the context of a given theora_state handle.
- *
- * Note that while the granulepos encodes the frame count (i.e. starting
- * from 1) this call returns the frame index, starting from zero. Thus
- * One can calculate the presentation time by multiplying the index by
- * the rate.
- *
- * \param th A previously initialized theora_state handle (encode or decode)
- * \param granulepos The granulepos to convert.
- * \returns The frame index corresponding to \a granulepos.
- * \retval -1 The given granulepos is undefined (i.e. negative)
- *
- * Thus function was added in the 1.0alpha4 release.
- */
-extern ogg_int64_t theora_granule_frame(theora_state *th,ogg_int64_t granulepos);
-
-/**
- * Convert a granulepos to absolute time in seconds. The granulepos is
- * interpreted in the context of a given theora_state handle, and gives
- * the end time of a frame's presentation as used in Ogg mux ordering.
- *
- * \param th A previously initialized theora_state handle (encode or decode)
- * \param granulepos The granulepos to convert.
- * \returns The absolute time in seconds corresponding to \a granulepos.
- * This is the "end time" for the frame, or the latest time it should
- * be displayed.
- * It is not the presentation time.
- * \retval -1. The given granulepos is undefined (i.e. negative), or
- * \retval -1. The function has been disabled because floating
- * point support is not available.
- */
-extern double theora_granule_time(theora_state *th,ogg_int64_t granulepos);
-
-/**
- * Initialize a theora_info structure. All values within the given theora_info
- * structure are initialized, and space is allocated within libtheora for
- * internal codec setup data.
- * \param c A theora_info struct to initialize.
- */
-extern void theora_info_init(theora_info *c);
-
-/**
- * Clear a theora_info structure. All values within the given theora_info
- * structure are cleared, and associated internal codec setup data is freed.
- * \param c A theora_info struct to initialize.
- */
-extern void theora_info_clear(theora_info *c);
-
-/**
- * Free all internal data associated with a theora_state handle.
- * \param t A theora_state handle.
- */
-extern void theora_clear(theora_state *t);
-
-/**
- * Initialize an allocated theora_comment structure
- * \param tc An allocated theora_comment structure
- **/
-extern void theora_comment_init(theora_comment *tc);
-
-/**
- * Add a comment to an initialized theora_comment structure
- * \param tc A previously initialized theora comment structure
- * \param comment A null-terminated string encoding the comment in the form
- * "TAG=the value"
- *
- * Neither theora_comment_add() nor theora_comment_add_tag() support
- * comments containing null values, although the bitstream format
- * supports this. To add such comments you will need to manipulate
- * the theora_comment structure directly.
- **/
-
-extern void theora_comment_add(theora_comment *tc, char *comment);
-
-/**
- * Add a comment to an initialized theora_comment structure.
- * \param tc A previously initialized theora comment structure
- * \param tag A null-terminated string containing the tag
- * associated with the comment.
- * \param value The corresponding value as a null-terminated string
- *
- * Neither theora_comment_add() nor theora_comment_add_tag() support
- * comments containing null values, although the bitstream format
- * supports this. To add such comments you will need to manipulate
- * the theora_comment structure directly.
- **/
-extern void theora_comment_add_tag(theora_comment *tc,
- char *tag, char *value);
-
-/**
- * Look up a comment value by tag.
- * \param tc Tn initialized theora_comment structure
- * \param tag The tag to look up
- * \param count The instance of the tag. The same tag can appear multiple
- * times, each with a distinct and ordered value, so an index
- * is required to retrieve them all.
- * \returns A pointer to the queried tag's value
- * \retval NULL No matching tag is found
- *
- * \note Use theora_comment_query_count() to get the legal range for the
- * count parameter.
- **/
-
-extern char *theora_comment_query(theora_comment *tc, char *tag, int count);
-
-/** Look up the number of instances of a tag.
- * \param tc An initialized theora_comment structure
- * \param tag The tag to look up
- * \returns The number on instances of a particular tag.
- *
- * Call this first when querying for a specific tag and then interate
- * over the number of instances with separate calls to
- * theora_comment_query() to retrieve all instances in order.
- **/
-extern int theora_comment_query_count(theora_comment *tc, char *tag);
-
-/**
- * Clear an allocated theora_comment struct so that it can be freed.
- * \param tc An allocated theora_comment structure.
- **/
-extern void theora_comment_clear(theora_comment *tc);
-
-/**Encoder control function.
- * This is used to provide advanced control the encoding process.
- * \param th A #theora_state handle.
- * \param req The control code to process.
- * See \ref encctlcodes_old "the list of available
- * control codes" for details.
- * \param buf The parameters for this control code.
- * \param buf_sz The size of the parameter buffer.*/
-extern int theora_control(theora_state *th,int req,void *buf,size_t buf_sz);
-
-/* @} */ /* end oldfuncs doxygen group */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* _O_THEORA_H_ */
diff --git a/branches/1.0/thirdparties/android/include/theora/theoradec.h b/branches/1.0/thirdparties/android/include/theora/theoradec.h
deleted file mode 100644
index b20f0e3..0000000
--- a/branches/1.0/thirdparties/android/include/theora/theoradec.h
+++ /dev/null
@@ -1,325 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggTheora SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009 *
- * by the Xiph.Org Foundation http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function:
- last mod: $Id: theora.h,v 1.8 2004/03/15 22:17:32 derf Exp $
-
- ********************************************************************/
-
-/**\file
- * The <tt>libtheoradec</tt> C decoding API.*/
-
-#if !defined(_O_THEORA_THEORADEC_H_)
-# define _O_THEORA_THEORADEC_H_ (1)
-# include <stddef.h>
-# include <ogg/ogg.h>
-# include "codec.h"
-
-#if defined(__cplusplus)
-extern "C" {
-#endif
-
-
-
-/**\name th_decode_ctl() codes
- * \anchor decctlcodes
- * These are the available request codes for th_decode_ctl().
- * By convention, these are odd, to distinguish them from the
- * \ref encctlcodes "encoder control codes".
- * Keep any experimental or vendor-specific values above \c 0x8000.*/
-/*@{*/
-/**Gets the maximum post-processing level.
- * The decoder supports a post-processing filter that can improve
- * the appearance of the decoded images. This returns the highest
- * level setting for this post-processor, corresponding to maximum
- * improvement and computational expense.
- *
- * \param[out] _buf int: The maximum post-processing level.
- * \retval TH_EFAULT \a _dec_ctx or \a _buf is <tt>NULL</tt>.
- * \retval TH_EINVAL \a _buf_sz is not <tt>sizeof(int)</tt>.
- * \retval TH_EIMPL Not supported by this implementation.*/
-#define TH_DECCTL_GET_PPLEVEL_MAX (1)
-/**Sets the post-processing level.
- * By default, post-processing is disabled.
- *
- * Sets the level of post-processing to use when decoding the
- * compressed stream. This must be a value between zero (off)
- * and the maximum returned by TH_DECCTL_GET_PPLEVEL_MAX.
- *
- * \param[in] _buf int: The new post-processing level.
- * 0 to disable; larger values use more CPU.
- * \retval TH_EFAULT \a _dec_ctx or \a _buf is <tt>NULL</tt>.
- * \retval TH_EINVAL \a _buf_sz is not <tt>sizeof(int)</tt>, or the
- * post-processing level is out of bounds.
- * The maximum post-processing level may be
- * implementation-specific, and can be obtained via
- * #TH_DECCTL_GET_PPLEVEL_MAX.
- * \retval TH_EIMPL Not supported by this implementation.*/
-#define TH_DECCTL_SET_PPLEVEL (3)
-/**Sets the granule position.
- * Call this after a seek, before decoding the first frame, to ensure that the
- * proper granule position is returned for all subsequent frames.
- * If you track timestamps yourself and do not use the granule position
- * returned by the decoder, then you need not call this function.
- *
- * \param[in] _buf <tt>ogg_int64_t</tt>: The granule position of the next
- * frame.
- * \retval TH_EFAULT \a _dec_ctx or \a _buf is <tt>NULL</tt>.
- * \retval TH_EINVAL \a _buf_sz is not <tt>sizeof(ogg_int64_t)</tt>, or the
- * granule position is negative.*/
-#define TH_DECCTL_SET_GRANPOS (5)
-/**Sets the striped decode callback function.
- * If set, this function will be called as each piece of a frame is fully
- * decoded in th_decode_packetin().
- * You can pass in a #th_stripe_callback with
- * th_stripe_callback#stripe_decoded set to <tt>NULL</tt> to disable the
- * callbacks at any point.
- * Enabling striped decode does not prevent you from calling
- * th_decode_ycbcr_out() after the frame is fully decoded.
- *
- * \param[in] _buf #th_stripe_callback: The callback parameters.
- * \retval TH_EFAULT \a _dec_ctx or \a _buf is <tt>NULL</tt>.
- * \retval TH_EINVAL \a _buf_sz is not
- * <tt>sizeof(th_stripe_callback)</tt>.*/
-#define TH_DECCTL_SET_STRIPE_CB (7)
-
-/**Enables telemetry and sets the macroblock display mode */
-#define TH_DECCTL_SET_TELEMETRY_MBMODE (9)
-/**Enables telemetry and sets the motion vector display mode */
-#define TH_DECCTL_SET_TELEMETRY_MV (11)
-/**Enables telemetry and sets the adaptive quantization display mode */
-#define TH_DECCTL_SET_TELEMETRY_QI (13)
-/**Enables telemetry and sets the bitstream breakdown visualization mode */
-#define TH_DECCTL_SET_TELEMETRY_BITS (15)
-/*@}*/
-
-
-
-/**A callback function for striped decode.
- * This is a function pointer to an application-provided function that will be
- * called each time a section of the image is fully decoded in
- * th_decode_packetin().
- * This allows the application to process the section immediately, while it is
- * still in cache.
- * Note that the frame is decoded bottom to top, so \a _yfrag0 will steadily
- * decrease with each call until it reaches 0, at which point the full frame
- * is decoded.
- * The number of fragment rows made available in each call depends on the pixel
- * format and the number of post-processing filters enabled, and may not even
- * be constant for the entire frame.
- * If a non-<tt>NULL</tt> \a _granpos pointer is passed to
- * th_decode_packetin(), the granule position for the frame will be stored
- * in it before the first callback is made.
- * If an entire frame is dropped (a 0-byte packet), then no callbacks will be
- * made at all for that frame.
- * \param _ctx An application-provided context pointer.
- * \param _buf The image buffer for the decoded frame.
- * \param _yfrag0 The Y coordinate of the first row of 8x8 fragments
- * decoded.
- * Multiply this by 8 to obtain the pixel row number in the
- * luma plane.
- * If the chroma planes are subsampled in the Y direction,
- * this will always be divisible by two.
- * \param _yfrag_end The Y coordinate of the first row of 8x8 fragments past
- * the newly decoded section.
- * If the chroma planes are subsampled in the Y direction,
- * this will always be divisible by two.
- * I.e., this section contains fragment rows
- * <tt>\a _yfrag0 ...\a _yfrag_end -1</tt>.*/
-typedef void (*th_stripe_decoded_func)(void *_ctx,th_ycbcr_buffer _buf,
- int _yfrag0,int _yfrag_end);
-
-/**The striped decode callback data to pass to #TH_DECCTL_SET_STRIPE_CB.*/
-typedef struct{
- /**An application-provided context pointer.
- * This will be passed back verbatim to the application.*/
- void *ctx;
- /**The callback function pointer.*/
- th_stripe_decoded_func stripe_decoded;
-}th_stripe_callback;
-
-
-
-/**\name Decoder state
- The following data structures are opaque, and their contents are not
- publicly defined by this API.
- Referring to their internals directly is unsupported, and may break without
- warning.*/
-/*@{*/
-/**The decoder context.*/
-typedef struct th_dec_ctx th_dec_ctx;
-/**Setup information.
- This contains auxiliary information (Huffman tables and quantization
- parameters) decoded from the setup header by th_decode_headerin() to be
- passed to th_decode_alloc().
- It can be re-used to initialize any number of decoders, and can be freed
- via th_setup_free() at any time.*/
-typedef struct th_setup_info th_setup_info;
-/*@}*/
-
-
-
-/**\defgroup decfuncs Functions for Decoding*/
-/*@{*/
-/**\name Functions for decoding
- * You must link to <tt>libtheoradec</tt> if you use any of the
- * functions in this section.
- *
- * The functions are listed in the order they are used in a typical decode.
- * The basic steps are:
- * - Parse the header packets by repeatedly calling th_decode_headerin().
- * - Allocate a #th_dec_ctx handle with th_decode_alloc().
- * - Call th_setup_free() to free any memory used for codec setup
- * information.
- * - Perform any additional decoder configuration with th_decode_ctl().
- * - For each video data packet:
- * - Submit the packet to the decoder via th_decode_packetin().
- * - Retrieve the uncompressed video data via th_decode_ycbcr_out().
- * - Call th_decode_free() to release all decoder memory.*/
-/*@{*/
-/**Decodes the header packets of a Theora stream.
- * This should be called on the initial packets of the stream, in succession,
- * until it returns <tt>0</tt>, indicating that all headers have been
- * processed, or an error is encountered.
- * At least three header packets are required, and additional optional header
- * packets may follow.
- * This can be used on the first packet of any logical stream to determine if
- * that stream is a Theora stream.
- * \param _info A #th_info structure to fill in.
- * This must have been previously initialized with
- * th_info_init().
- * The application may immediately begin using the contents of
- * this structure after the first header is decoded, though it
- * must continue to be passed in on all subsequent calls.
- * \param _tc A #th_comment structure to fill in.
- * The application may immediately begin using the contents of
- * this structure after the second header is decoded, though it
- * must continue to be passed in on all subsequent calls.
- * \param _setup Returns a pointer to additional, private setup information
- * needed by the decoder.
- * The contents of this pointer must be initialized to
- * <tt>NULL</tt> on the first call, and the returned value must
- * continue to be passed in on all subsequent calls.
- * \param _op An <tt>ogg_packet</tt> structure which contains one of the
- * initial packets of an Ogg logical stream.
- * \return A positive value indicates that a Theora header was successfully
- * processed.
- * \retval 0 The first video data packet was encountered after all
- * required header packets were parsed.
- * The packet just passed in on this call should be saved
- * and fed to th_decode_packetin() to begin decoding
- * video data.
- * \retval TH_EFAULT One of \a _info, \a _tc, or \a _setup was
- * <tt>NULL</tt>.
- * \retval TH_EBADHEADER \a _op was <tt>NULL</tt>, the packet was not the next
- * header packet in the expected sequence, or the format
- * of the header data was invalid.
- * \retval TH_EVERSION The packet data was a Theora info header, but for a
- * bitstream version not decodable with this version of
- * <tt>libtheoradec</tt>.
- * \retval TH_ENOTFORMAT The packet was not a Theora header.
- */
-extern int th_decode_headerin(th_info *_info,th_comment *_tc,
- th_setup_info **_setup,ogg_packet *_op);
-/**Allocates a decoder instance.
- *
- * <b>Security Warning:</b> The Theora format supports very large frame sizes,
- * potentially even larger than the address space of a 32-bit machine, and
- * creating a decoder context allocates the space for several frames of data.
- * If the allocation fails here, your program will crash, possibly at some
- * future point because the OS kernel returned a valid memory range and will
- * only fail when it tries to map the pages in it the first time they are
- * used.
- * Even if it succeeds, you may experience a denial of service if the frame
- * size is large enough to cause excessive paging.
- * If you are integrating libtheora in a larger application where such things
- * are undesirable, it is highly recommended that you check the frame size in
- * \a _info before calling this function and refuse to decode streams where it
- * is larger than some reasonable maximum.
- * libtheora will not check this for you, because there may be machines that
- * can handle such streams and applications that wish to.
- * \param _info A #th_info struct filled via th_decode_headerin().
- * \param _setup A #th_setup_info handle returned via
- * th_decode_headerin().
- * \return The initialized #th_dec_ctx handle.
- * \retval NULL If the decoding parameters were invalid.*/
-extern th_dec_ctx *th_decode_alloc(const th_info *_info,
- const th_setup_info *_setup);
-/**Releases all storage used for the decoder setup information.
- * This should be called after you no longer want to create any decoders for
- * a stream whose headers you have parsed with th_decode_headerin().
- * \param _setup The setup information to free.
- * This can safely be <tt>NULL</tt>.*/
-extern void th_setup_free(th_setup_info *_setup);
-/**Decoder control function.
- * This is used to provide advanced control of the decoding process.
- * \param _dec A #th_dec_ctx handle.
- * \param _req The control code to process.
- * See \ref decctlcodes "the list of available control codes"
- * for details.
- * \param _buf The parameters for this control code.
- * \param _buf_sz The size of the parameter buffer.*/
-extern int th_decode_ctl(th_dec_ctx *_dec,int _req,void *_buf,
- size_t _buf_sz);
-/**Submits a packet containing encoded video data to the decoder.
- * \param _dec A #th_dec_ctx handle.
- * \param _op An <tt>ogg_packet</tt> containing encoded video data.
- * \param _granpos Returns the granule position of the decoded packet.
- * If non-<tt>NULL</tt>, the granule position for this specific
- * packet is stored in this location.
- * This is computed incrementally from previously decoded
- * packets.
- * After a seek, the correct granule position must be set via
- * #TH_DECCTL_SET_GRANPOS for this to work properly.
- * \retval 0 Success.
- * A new decoded frame can be retrieved by calling
- * th_decode_ycbcr_out().
- * \retval TH_DUPFRAME The packet represented a dropped (0-byte) frame.
- * The player can skip the call to th_decode_ycbcr_out(),
- * as the contents of the decoded frame buffer have not
- * changed.
- * \retval TH_EFAULT \a _dec or \a _op was <tt>NULL</tt>.
- * \retval TH_EBADPACKET \a _op does not contain encoded video data.
- * \retval TH_EIMPL The video data uses bitstream features which this
- * library does not support.*/
-extern int th_decode_packetin(th_dec_ctx *_dec,const ogg_packet *_op,
- ogg_int64_t *_granpos);
-/**Outputs the next available frame of decoded Y'CbCr data.
- * If a striped decode callback has been set with #TH_DECCTL_SET_STRIPE_CB,
- * then the application does not need to call this function.
- * \param _dec A #th_dec_ctx handle.
- * \param _ycbcr A video buffer structure to fill in.
- * <tt>libtheoradec</tt> will fill in all the members of this
- * structure, including the pointers to the uncompressed video
- * data.
- * The memory for this video data is owned by
- * <tt>libtheoradec</tt>.
- * It may be freed or overwritten without notification when
- * subsequent frames are decoded.
- * \retval 0 Success
- * \retval TH_EFAULT \a _dec or \a _ycbcr was <tt>NULL</tt>.
- */
-extern int th_decode_ycbcr_out(th_dec_ctx *_dec,
- th_ycbcr_buffer _ycbcr);
-/**Frees an allocated decoder instance.
- * \param _dec A #th_dec_ctx handle.*/
-extern void th_decode_free(th_dec_ctx *_dec);
-/*@}*/
-/*@}*/
-
-
-
-#if defined(__cplusplus)
-}
-#endif
-
-#endif
diff --git a/branches/1.0/thirdparties/android/include/theora/theoraenc.h b/branches/1.0/thirdparties/android/include/theora/theoraenc.h
deleted file mode 100644
index f54b234..0000000
--- a/branches/1.0/thirdparties/android/include/theora/theoraenc.h
+++ /dev/null
@@ -1,500 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggTheora SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009 *
- * by the Xiph.Org Foundation http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function:
- last mod: $Id: theora.h,v 1.8 2004/03/15 22:17:32 derf Exp $
-
- ********************************************************************/
-
-/**\file
- * The <tt>libtheoraenc</tt> C encoding API.*/
-
-#if !defined(_O_THEORA_THEORAENC_H_)
-# define _O_THEORA_THEORAENC_H_ (1)
-# include <stddef.h>
-# include <ogg/ogg.h>
-# include "codec.h"
-
-#if defined(__cplusplus)
-extern "C" {
-#endif
-
-
-
-/**\name th_encode_ctl() codes
- * \anchor encctlcodes
- * These are the available request codes for th_encode_ctl().
- * By convention, these are even, to distinguish them from the
- * \ref decctlcodes "decoder control codes".
- * Keep any experimental or vendor-specific values above \c 0x8000.*/
-/*@{*/
-/**Sets the Huffman tables to use.
- * The tables are copied, not stored by reference, so they can be freed after
- * this call.
- * <tt>NULL</tt> may be specified to revert to the default tables.
- *
- * \param[in] _buf <tt>#th_huff_code[#TH_NHUFFMAN_TABLES][#TH_NDCT_TOKENS]</tt>
- * \retval TH_EFAULT \a _enc_ctx is <tt>NULL</tt>.
- * \retval TH_EINVAL Encoding has already begun or one or more of the given
- * tables is not full or prefix-free, \a _buf is
- * <tt>NULL</tt> and \a _buf_sz is not zero, or \a _buf is
- * non-<tt>NULL</tt> and \a _buf_sz is not
- * <tt>sizeof(#th_huff_code)*#TH_NHUFFMAN_TABLES*#TH_NDCT_TOKENS</tt>.
- * \retval TH_EIMPL Not supported by this implementation.*/
-#define TH_ENCCTL_SET_HUFFMAN_CODES (0)
-/**Sets the quantization parameters to use.
- * The parameters are copied, not stored by reference, so they can be freed
- * after this call.
- * <tt>NULL</tt> may be specified to revert to the default parameters.
- *
- * \param[in] _buf #th_quant_info
- * \retval TH_EFAULT \a _enc_ctx is <tt>NULL</tt>.
- * \retval TH_EINVAL Encoding has already begun, \a _buf is
- * <tt>NULL</tt> and \a _buf_sz is not zero,
- * or \a _buf is non-<tt>NULL</tt> and
- * \a _buf_sz is not <tt>sizeof(#th_quant_info)</tt>.
- * \retval TH_EIMPL Not supported by this implementation.*/
-#define TH_ENCCTL_SET_QUANT_PARAMS (2)
-/**Sets the maximum distance between key frames.
- * This can be changed during an encode, but will be bounded by
- * <tt>1<<th_info#keyframe_granule_shift</tt>.
- * If it is set before encoding begins, th_info#keyframe_granule_shift will
- * be enlarged appropriately.
- *
- * \param[in] _buf <tt>ogg_uint32_t</tt>: The maximum distance between key
- * frames.
- * \param[out] _buf <tt>ogg_uint32_t</tt>: The actual maximum distance set.
- * \retval TH_EFAULT \a _enc_ctx or \a _buf is <tt>NULL</tt>.
- * \retval TH_EINVAL \a _buf_sz is not <tt>sizeof(ogg_uint32_t)</tt>.
- * \retval TH_EIMPL Not supported by this implementation.*/
-#define TH_ENCCTL_SET_KEYFRAME_FREQUENCY_FORCE (4)
-/**Disables any encoder features that would prevent lossless transcoding back
- * to VP3.
- * This primarily means disabling block-adaptive quantization and always coding
- * all four luma blocks in a macro block when 4MV is used.
- * It also includes using the VP3 quantization tables and Huffman codes; if you
- * set them explicitly after calling this function, the resulting stream will
- * not be VP3-compatible.
- * If you enable VP3-compatibility when encoding 4:2:2 or 4:4:4 source
- * material, or when using a picture region smaller than the full frame (e.g.
- * a non-multiple-of-16 width or height), then non-VP3 bitstream features will
- * still be disabled, but the stream will still not be VP3-compatible, as VP3
- * was not capable of encoding such formats.
- * If you call this after encoding has already begun, then the quantization
- * tables and codebooks cannot be changed, but the frame-level features will
- * be enabled or disabled as requested.
- *
- * \param[in] _buf <tt>int</tt>: a non-zero value to enable VP3 compatibility,
- * or 0 to disable it (the default).
- * \param[out] _buf <tt>int</tt>: 1 if all bitstream features required for
- * VP3-compatibility could be set, and 0 otherwise.
- * The latter will be returned if the pixel format is not
- * 4:2:0, the picture region is smaller than the full frame,
- * or if encoding has begun, preventing the quantization
- * tables and codebooks from being set.
- * \retval TH_EFAULT \a _enc_ctx or \a _buf is <tt>NULL</tt>.
- * \retval TH_EINVAL \a _buf_sz is not <tt>sizeof(int)</tt>.
- * \retval TH_EIMPL Not supported by this implementation.*/
-#define TH_ENCCTL_SET_VP3_COMPATIBLE (10)
-/**Gets the maximum speed level.
- * Higher speed levels favor quicker encoding over better quality per bit.
- * Depending on the encoding mode, and the internal algorithms used, quality
- * may actually improve, but in this case bitrate will also likely increase.
- * In any case, overall rate/distortion performance will probably decrease.
- * The maximum value, and the meaning of each value, may change depending on
- * the current encoding mode (VBR vs. constant quality, etc.).
- *
- * \param[out] _buf <tt>int</tt>: The maximum encoding speed level.
- * \retval TH_EFAULT \a _enc_ctx or \a _buf is <tt>NULL</tt>.
- * \retval TH_EINVAL \a _buf_sz is not <tt>sizeof(int)</tt>.
- * \retval TH_EIMPL Not supported by this implementation in the current
- * encoding mode.*/
-#define TH_ENCCTL_GET_SPLEVEL_MAX (12)
-/**Sets the speed level.
- * The current speed level may be retrieved using #TH_ENCCTL_GET_SPLEVEL.
- *
- * \param[in] _buf <tt>int</tt>: The new encoding speed level.
- * 0 is slowest, larger values use less CPU.
- * \retval TH_EFAULT \a _enc_ctx or \a _buf is <tt>NULL</tt>.
- * \retval TH_EINVAL \a _buf_sz is not <tt>sizeof(int)</tt>, or the
- * encoding speed level is out of bounds.
- * The maximum encoding speed level may be
- * implementation- and encoding mode-specific, and can be
- * obtained via #TH_ENCCTL_GET_SPLEVEL_MAX.
- * \retval TH_EIMPL Not supported by this implementation in the current
- * encoding mode.*/
-#define TH_ENCCTL_SET_SPLEVEL (14)
-/**Gets the current speed level.
- * The default speed level may vary according to encoder implementation, but if
- * this control code is not supported (it returns #TH_EIMPL), the default may
- * be assumed to be the slowest available speed (0).
- * The maximum encoding speed level may be implementation- and encoding
- * mode-specific, and can be obtained via #TH_ENCCTL_GET_SPLEVEL_MAX.
- *
- * \param[out] _buf <tt>int</tt>: The current encoding speed level.
- * 0 is slowest, larger values use less CPU.
- * \retval TH_EFAULT \a _enc_ctx or \a _buf is <tt>NULL</tt>.
- * \retval TH_EINVAL \a _buf_sz is not <tt>sizeof(int)</tt>.
- * \retval TH_EIMPL Not supported by this implementation in the current
- * encoding mode.*/
-#define TH_ENCCTL_GET_SPLEVEL (16)
-/**Sets the number of duplicates of the next frame to produce.
- * Although libtheora can encode duplicate frames very cheaply, it costs some
- * amount of CPU to detect them, and a run of duplicates cannot span a
- * keyframe boundary.
- * This control code tells the encoder to produce the specified number of extra
- * duplicates of the next frame.
- * This allows the encoder to make smarter keyframe placement decisions and
- * rate control decisions, and reduces CPU usage as well, when compared to
- * just submitting the same frame for encoding multiple times.
- * This setting only applies to the next frame submitted for encoding.
- * You MUST call th_encode_packetout() repeatedly until it returns 0, or the
- * extra duplicate frames will be lost.
- *
- * \param[in] _buf <tt>int</tt>: The number of duplicates to produce.
- * If this is negative or zero, no duplicates will be produced.
- * \retval TH_EFAULT \a _enc_ctx or \a _buf is <tt>NULL</tt>.
- * \retval TH_EINVAL \a _buf_sz is not <tt>sizeof(int)</tt>, or the
- * number of duplicates is greater than or equal to the
- * maximum keyframe interval.
- * In the latter case, NO duplicate frames will be produced.
- * You must ensure that the maximum keyframe interval is set
- * larger than the maximum number of duplicates you will
- * ever wish to insert prior to encoding.
- * \retval TH_EIMPL Not supported by this implementation in the current
- * encoding mode.*/
-#define TH_ENCCTL_SET_DUP_COUNT (18)
-/**Modifies the default bitrate management behavior.
- * Use to allow or disallow frame dropping, and to enable or disable capping
- * bit reservoir overflows and underflows.
- * See \ref encctlcodes "the list of available flags".
- * The flags are set by default to
- * <tt>#TH_RATECTL_DROP_FRAMES|#TH_RATECTL_CAP_OVERFLOW</tt>.
- *
- * \param[in] _buf <tt>int</tt>: Any combination of
- * \ref ratectlflags "the available flags":
- * - #TH_RATECTL_DROP_FRAMES: Enable frame dropping.
- * - #TH_RATECTL_CAP_OVERFLOW: Don't bank excess bits for later
- * use.
- * - #TH_RATECTL_CAP_UNDERFLOW: Don't try to make up shortfalls
- * later.
- * \retval TH_EFAULT \a _enc_ctx or \a _buf is <tt>NULL</tt>.
- * \retval TH_EINVAL \a _buf_sz is not <tt>sizeof(int)</tt> or rate control
- * is not enabled.
- * \retval TH_EIMPL Not supported by this implementation in the current
- * encoding mode.*/
-#define TH_ENCCTL_SET_RATE_FLAGS (20)
-/**Sets the size of the bitrate management bit reservoir as a function
- * of number of frames.
- * The reservoir size affects how quickly bitrate management reacts to
- * instantaneous changes in the video complexity.
- * Larger reservoirs react more slowly, and provide better overall quality, but
- * require more buffering by a client, adding more latency to live streams.
- * By default, libtheora sets the reservoir to the maximum distance between
- * keyframes, subject to a minimum and maximum limit.
- * This call may be used to increase or decrease the reservoir, increasing or
- * decreasing the allowed temporary variance in bitrate.
- * An implementation may impose some limits on the size of a reservoir it can
- * handle, in which case the actual reservoir size may not be exactly what was
- * requested.
- * The actual value set will be returned.
- *
- * \param[in] _buf <tt>int</tt>: Requested size of the reservoir measured in
- * frames.
- * \param[out] _buf <tt>int</tt>: The actual size of the reservoir set.
- * \retval TH_EFAULT \a _enc_ctx or \a _buf is <tt>NULL</tt>.
- * \retval TH_EINVAL \a _buf_sz is not <tt>sizeof(int)</tt>, or rate control
- * is not enabled. The buffer has an implementation
- * defined minimum and maximum size and the value in _buf
- * will be adjusted to match the actual value set.
- * \retval TH_EIMPL Not supported by this implementation in the current
- * encoding mode.*/
-#define TH_ENCCTL_SET_RATE_BUFFER (22)
-/**Enable pass 1 of two-pass encoding mode and retrieve the first pass metrics.
- * Pass 1 mode must be enabled before the first frame is encoded, and a target
- * bitrate must have already been specified to the encoder.
- * Although this does not have to be the exact rate that will be used in the
- * second pass, closer values may produce better results.
- * The first call returns the size of the two-pass header data, along with some
- * placeholder content, and sets the encoder into pass 1 mode implicitly.
- * This call sets the encoder to pass 1 mode implicitly.
- * Then, a subsequent call must be made after each call to
- * th_encode_ycbcr_in() to retrieve the metrics for that frame.
- * An additional, final call must be made to retrieve the summary data,
- * containing such information as the total number of frames, etc.
- * This must be stored in place of the placeholder data that was returned
- * in the first call, before the frame metrics data.
- * All of this data must be presented back to the encoder during pass 2 using
- * #TH_ENCCTL_2PASS_IN.
- *
- * \param[out] <tt>char *</tt>_buf: Returns a pointer to internal storage
- * containing the two pass metrics data.
- * This storage is only valid until the next call, or until the
- * encoder context is freed, and must be copied by the
- * application.
- * \retval >=0 The number of bytes of metric data available in the
- * returned buffer.
- * \retval TH_EFAULT \a _enc_ctx or \a _buf is <tt>NULL</tt>.
- * \retval TH_EINVAL \a _buf_sz is not <tt>sizeof(char *)</tt>, no target
- * bitrate has been set, or the first call was made after
- * the first frame was submitted for encoding.
- * \retval TH_EIMPL Not supported by this implementation.*/
-#define TH_ENCCTL_2PASS_OUT (24)
-/**Submits two-pass encoding metric data collected the first encoding pass to
- * the second pass.
- * The first call must be made before the first frame is encoded, and a target
- * bitrate must have already been specified to the encoder.
- * It sets the encoder to pass 2 mode implicitly; this cannot be disabled.
- * The encoder may require reading data from some or all of the frames in
- * advance, depending on, e.g., the reservoir size used in the second pass.
- * You must call this function repeatedly before each frame to provide data
- * until either a) it fails to consume all of the data presented or b) all of
- * the pass 1 data has been consumed.
- * In the first case, you must save the remaining data to be presented after
- * the next frame.
- * You can call this function with a NULL argument to get an upper bound on
- * the number of bytes that will be required before the next frame.
- *
- * When pass 2 is first enabled, the default bit reservoir is set to the entire
- * file; this gives maximum flexibility but can lead to very high peak rates.
- * You can subsequently set it to another value with #TH_ENCCTL_SET_RATE_BUFFER
- * (e.g., to set it to the keyframe interval for non-live streaming), however,
- * you may then need to provide more data before the next frame.
- *
- * \param[in] _buf <tt>char[]</tt>: A buffer containing the data returned by
- * #TH_ENCCTL_2PASS_OUT in pass 1.
- * You may pass <tt>NULL</tt> for \a _buf to return an upper
- * bound on the number of additional bytes needed before the
- * next frame.
- * The summary data returned at the end of pass 1 must be at
- * the head of the buffer on the first call with a
- * non-<tt>NULL</tt> \a _buf, and the placeholder data
- * returned at the start of pass 1 should be omitted.
- * After each call you should advance this buffer by the number
- * of bytes consumed.
- * \retval >0 The number of bytes of metric data required/consumed.
- * \retval 0 No more data is required before the next frame.
- * \retval TH_EFAULT \a _enc_ctx is <tt>NULL</tt>.
- * \retval TH_EINVAL No target bitrate has been set, or the first call was
- * made after the first frame was submitted for
- * encoding.
- * \retval TH_ENOTFORMAT The data did not appear to be pass 1 from a compatible
- * implementation of this library.
- * \retval TH_EBADHEADER The data was invalid; this may be returned when
- * attempting to read an aborted pass 1 file that still
- * has the placeholder data in place of the summary
- * data.
- * \retval TH_EIMPL Not supported by this implementation.*/
-#define TH_ENCCTL_2PASS_IN (26)
-/**Sets the current encoding quality.
- * This is only valid so long as no bitrate has been specified, either through
- * the #th_info struct used to initialize the encoder or through
- * #TH_ENCCTL_SET_BITRATE (this restriction may be relaxed in a future
- * version).
- * If it is set before the headers are emitted, the target quality encoded in
- * them will be updated.
- *
- * \param[in] _buf <tt>int</tt>: The new target quality, in the range 0...63,
- * inclusive.
- * \retval 0 Success.
- * \retval TH_EFAULT \a _enc_ctx or \a _buf is <tt>NULL</tt>.
- * \retval TH_EINVAL A target bitrate has already been specified, or the
- * quality index was not in the range 0...63.
- * \retval TH_EIMPL Not supported by this implementation.*/
-#define TH_ENCCTL_SET_QUALITY (28)
-/**Sets the current encoding bitrate.
- * Once a bitrate is set, the encoder must use a rate-controlled mode for all
- * future frames (this restriction may be relaxed in a future version).
- * If it is set before the headers are emitted, the target bitrate encoded in
- * them will be updated.
- * Due to the buffer delay, the exact bitrate of each section of the encode is
- * not guaranteed.
- * The encoder may have already used more bits than allowed for the frames it
- * has encoded, expecting to make them up in future frames, or it may have
- * used fewer, holding the excess in reserve.
- * The exact transition between the two bitrates is not well-defined by this
- * API, but may be affected by flags set with #TH_ENCCTL_SET_RATE_FLAGS.
- * After a number of frames equal to the buffer delay, one may expect further
- * output to average at the target bitrate.
- *
- * \param[in] _buf <tt>long</tt>: The new target bitrate, in bits per second.
- * \retval 0 Success.
- * \retval TH_EFAULT \a _enc_ctx or \a _buf is <tt>NULL</tt>.
- * \retval TH_EINVAL The target bitrate was not positive.
- * \retval TH_EIMPL Not supported by this implementation.*/
-#define TH_ENCCTL_SET_BITRATE (30)
-
-/*@}*/
-
-
-/**\name TH_ENCCTL_SET_RATE_FLAGS flags
- * \anchor ratectlflags
- * These are the flags available for use with #TH_ENCCTL_SET_RATE_FLAGS.*/
-/*@{*/
-/**Drop frames to keep within bitrate buffer constraints.
- * This can have a severe impact on quality, but is the only way to ensure that
- * bitrate targets are met at low rates during sudden bursts of activity.*/
-#define TH_RATECTL_DROP_FRAMES (0x1)
-/**Ignore bitrate buffer overflows.
- * If the encoder uses so few bits that the reservoir of available bits
- * overflows, ignore the excess.
- * The encoder will not try to use these extra bits in future frames.
- * At high rates this may cause the result to be undersized, but allows a
- * client to play the stream using a finite buffer; it should normally be
- * enabled.*/
-#define TH_RATECTL_CAP_OVERFLOW (0x2)
-/**Ignore bitrate buffer underflows.
- * If the encoder uses so many bits that the reservoir of available bits
- * underflows, ignore the deficit.
- * The encoder will not try to make up these extra bits in future frames.
- * At low rates this may cause the result to be oversized; it should normally
- * be disabled.*/
-#define TH_RATECTL_CAP_UNDERFLOW (0x4)
-/*@}*/
-
-
-
-/**The quantization parameters used by VP3.*/
-extern const th_quant_info TH_VP31_QUANT_INFO;
-
-/**The Huffman tables used by VP3.*/
-extern const th_huff_code
- TH_VP31_HUFF_CODES[TH_NHUFFMAN_TABLES][TH_NDCT_TOKENS];
-
-
-
-/**\name Encoder state
- The following data structure is opaque, and its contents are not publicly
- defined by this API.
- Referring to its internals directly is unsupported, and may break without
- warning.*/
-/*@{*/
-/**The encoder context.*/
-typedef struct th_enc_ctx th_enc_ctx;
-/*@}*/
-
-
-
-/**\defgroup encfuncs Functions for Encoding*/
-/*@{*/
-/**\name Functions for encoding
- * You must link to <tt>libtheoraenc</tt> and <tt>libtheoradec</tt>
- * if you use any of the functions in this section.
- *
- * The functions are listed in the order they are used in a typical encode.
- * The basic steps are:
- * - Fill in a #th_info structure with details on the format of the video you
- * wish to encode.
- * - Allocate a #th_enc_ctx handle with th_encode_alloc().
- * - Perform any additional encoder configuration required with
- * th_encode_ctl().
- * - Repeatedly call th_encode_flushheader() to retrieve all the header
- * packets.
- * - For each uncompressed frame:
- * - Submit the uncompressed frame via th_encode_ycbcr_in()
- * - Repeatedly call th_encode_packetout() to retrieve any video data packets
- * that are ready.
- * - Call th_encode_free() to release all encoder memory.*/
-/*@{*/
-/**Allocates an encoder instance.
- * \param _info A #th_info struct filled with the desired encoding parameters.
- * \return The initialized #th_enc_ctx handle.
- * \retval NULL If the encoding parameters were invalid.*/
-extern th_enc_ctx *th_encode_alloc(const th_info *_info);
-/**Encoder control function.
- * This is used to provide advanced control the encoding process.
- * \param _enc A #th_enc_ctx handle.
- * \param _req The control code to process.
- * See \ref encctlcodes "the list of available control codes"
- * for details.
- * \param _buf The parameters for this control code.
- * \param _buf_sz The size of the parameter buffer.*/
-extern int th_encode_ctl(th_enc_ctx *_enc,int _req,void *_buf,size_t _buf_sz);
-/**Outputs the next header packet.
- * This should be called repeatedly after encoder initialization until it
- * returns 0 in order to get all of the header packets, in order, before
- * encoding actual video data.
- * \param _enc A #th_enc_ctx handle.
- * \param _comments The metadata to place in the comment header, when it is
- * encoded.
- * \param _op An <tt>ogg_packet</tt> structure to fill.
- * All of the elements of this structure will be set,
- * including a pointer to the header data.
- * The memory for the header data is owned by
- * <tt>libtheoraenc</tt>, and may be invalidated when the
- * next encoder function is called.
- * \return A positive value indicates that a header packet was successfully
- * produced.
- * \retval 0 No packet was produced, and no more header packets remain.
- * \retval TH_EFAULT \a _enc, \a _comments, or \a _op was <tt>NULL</tt>.*/
-extern int th_encode_flushheader(th_enc_ctx *_enc,
- th_comment *_comments,ogg_packet *_op);
-/**Submits an uncompressed frame to the encoder.
- * \param _enc A #th_enc_ctx handle.
- * \param _ycbcr A buffer of Y'CbCr data to encode.
- * If the width and height of the buffer matches the frame size
- * the encoder was initialized with, the encoder will only
- * reference the portion inside the picture region.
- * Any data outside this region will be ignored, and need not map
- * to a valid address.
- * Alternatively, you can pass a buffer equal to the size of the
- * picture region, if this is less than the full frame size.
- * When using subsampled chroma planes, odd picture sizes or odd
- * picture offsets may require an unexpected chroma plane size,
- * and their use is generally discouraged, as they will not be
- * well-supported by players and other media frameworks.
- * See Section 4.4 of
- * <a href="http://www.theora.org/doc/Theora.pdf">the Theora
- * specification</a> for details if you wish to use them anyway.
- * \retval 0 Success.
- * \retval TH_EFAULT \a _enc or \a _ycbcr is <tt>NULL</tt>.
- * \retval TH_EINVAL The buffer size matches neither the frame size nor the
- * picture size the encoder was initialized with, or
- * encoding has already completed.*/
-extern int th_encode_ycbcr_in(th_enc_ctx *_enc,th_ycbcr_buffer _ycbcr);
-/**Retrieves encoded video data packets.
- * This should be called repeatedly after each frame is submitted to flush any
- * encoded packets, until it returns 0.
- * The encoder will not buffer these packets as subsequent frames are
- * compressed, so a failure to do so will result in lost video data.
- * \note Currently the encoder operates in a one-frame-in, one-packet-out
- * manner.
- * However, this may be changed in the future.
- * \param _enc A #th_enc_ctx handle.
- * \param _last Set this flag to a non-zero value if no more uncompressed
- * frames will be submitted.
- * This ensures that a proper EOS flag is set on the last packet.
- * \param _op An <tt>ogg_packet</tt> structure to fill.
- * All of the elements of this structure will be set, including a
- * pointer to the video data.
- * The memory for the video data is owned by
- * <tt>libtheoraenc</tt>, and may be invalidated when the next
- * encoder function is called.
- * \return A positive value indicates that a video data packet was successfully
- * produced.
- * \retval 0 No packet was produced, and no more encoded video data
- * remains.
- * \retval TH_EFAULT \a _enc or \a _op was <tt>NULL</tt>.*/
-extern int th_encode_packetout(th_enc_ctx *_enc,int _last,ogg_packet *_op);
-/**Frees an allocated encoder instance.
- * \param _enc A #th_enc_ctx handle.*/
-extern void th_encode_free(th_enc_ctx *_enc);
-/*@}*/
-/*@}*/
-
-
-
-#if defined(__cplusplus)
-}
-#endif
-
-#endif
diff --git a/branches/1.0/thirdparties/android/include/vorbis/codec.h b/branches/1.0/thirdparties/android/include/vorbis/codec.h
deleted file mode 100644
index 259798c..0000000
--- a/branches/1.0/thirdparties/android/include/vorbis/codec.h
+++ /dev/null
@@ -1,243 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the Xiph.Org Foundation http://www.xiph.org/ *
-
- ********************************************************************
-
- function: libvorbis codec headers
- last mod: $Id: codec.h 16037 2009-05-26 21:10:58Z xiphmont $
-
- ********************************************************************/
-
-#ifndef _vorbis_codec_h_
-#define _vorbis_codec_h_
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#include <ogg/ogg.h>
-
-typedef struct vorbis_info{
- int version;
- int channels;
- long rate;
-
- /* The below bitrate declarations are *hints*.
- Combinations of the three values carry the following implications:
-
- all three set to the same value:
- implies a fixed rate bitstream
- only nominal set:
- implies a VBR stream that averages the nominal bitrate. No hard
- upper/lower limit
- upper and or lower set:
- implies a VBR bitstream that obeys the bitrate limits. nominal
- may also be set to give a nominal rate.
- none set:
- the coder does not care to speculate.
- */
-
- long bitrate_upper;
- long bitrate_nominal;
- long bitrate_lower;
- long bitrate_window;
-
- void *codec_setup;
-} vorbis_info;
-
-/* vorbis_dsp_state buffers the current vorbis audio
- analysis/synthesis state. The DSP state belongs to a specific
- logical bitstream ****************************************************/
-typedef struct vorbis_dsp_state{
- int analysisp;
- vorbis_info *vi;
-
- float **pcm;
- float **pcmret;
- int pcm_storage;
- int pcm_current;
- int pcm_returned;
-
- int preextrapolate;
- int eofflag;
-
- long lW;
- long W;
- long nW;
- long centerW;
-
- ogg_int64_t granulepos;
- ogg_int64_t sequence;
-
- ogg_int64_t glue_bits;
- ogg_int64_t time_bits;
- ogg_int64_t floor_bits;
- ogg_int64_t res_bits;
-
- void *backend_state;
-} vorbis_dsp_state;
-
-typedef struct vorbis_block{
- /* necessary stream state for linking to the framing abstraction */
- float **pcm; /* this is a pointer into local storage */
- oggpack_buffer opb;
-
- long lW;
- long W;
- long nW;
- int pcmend;
- int mode;
-
- int eofflag;
- ogg_int64_t granulepos;
- ogg_int64_t sequence;
- vorbis_dsp_state *vd; /* For read-only access of configuration */
-
- /* local storage to avoid remallocing; it's up to the mapping to
- structure it */
- void *localstore;
- long localtop;
- long localalloc;
- long totaluse;
- struct alloc_chain *reap;
-
- /* bitmetrics for the frame */
- long glue_bits;
- long time_bits;
- long floor_bits;
- long res_bits;
-
- void *internal;
-
-} vorbis_block;
-
-/* vorbis_block is a single block of data to be processed as part of
-the analysis/synthesis stream; it belongs to a specific logical
-bitstream, but is independant from other vorbis_blocks belonging to
-that logical bitstream. *************************************************/
-
-struct alloc_chain{
- void *ptr;
- struct alloc_chain *next;
-};
-
-/* vorbis_info contains all the setup information specific to the
- specific compression/decompression mode in progress (eg,
- psychoacoustic settings, channel setup, options, codebook
- etc). vorbis_info and substructures are in backends.h.
-*********************************************************************/
-
-/* the comments are not part of vorbis_info so that vorbis_info can be
- static storage */
-typedef struct vorbis_comment{
- /* unlimited user comment fields. libvorbis writes 'libvorbis'
- whatever vendor is set to in encode */
- char **user_comments;
- int *comment_lengths;
- int comments;
- char *vendor;
-
-} vorbis_comment;
-
-
-/* libvorbis encodes in two abstraction layers; first we perform DSP
- and produce a packet (see docs/analysis.txt). The packet is then
- coded into a framed OggSquish bitstream by the second layer (see
- docs/framing.txt). Decode is the reverse process; we sync/frame
- the bitstream and extract individual packets, then decode the
- packet back into PCM audio.
-
- The extra framing/packetizing is used in streaming formats, such as
- files. Over the net (such as with UDP), the framing and
- packetization aren't necessary as they're provided by the transport
- and the streaming layer is not used */
-
-/* Vorbis PRIMITIVES: general ***************************************/
-
-extern void vorbis_info_init(vorbis_info *vi);
-extern void vorbis_info_clear(vorbis_info *vi);
-extern int vorbis_info_blocksize(vorbis_info *vi,int zo);
-extern void vorbis_comment_init(vorbis_comment *vc);
-extern void vorbis_comment_add(vorbis_comment *vc, const char *comment);
-extern void vorbis_comment_add_tag(vorbis_comment *vc,
- const char *tag, const char *contents);
-extern char *vorbis_comment_query(vorbis_comment *vc, const char *tag, int count);
-extern int vorbis_comment_query_count(vorbis_comment *vc, const char *tag);
-extern void vorbis_comment_clear(vorbis_comment *vc);
-
-extern int vorbis_block_init(vorbis_dsp_state *v, vorbis_block *vb);
-extern int vorbis_block_clear(vorbis_block *vb);
-extern void vorbis_dsp_clear(vorbis_dsp_state *v);
-extern double vorbis_granule_time(vorbis_dsp_state *v,
- ogg_int64_t granulepos);
-
-extern const char *vorbis_version_string(void);
-
-/* Vorbis PRIMITIVES: analysis/DSP layer ****************************/
-
-extern int vorbis_analysis_init(vorbis_dsp_state *v,vorbis_info *vi);
-extern int vorbis_commentheader_out(vorbis_comment *vc, ogg_packet *op);
-extern int vorbis_analysis_headerout(vorbis_dsp_state *v,
- vorbis_comment *vc,
- ogg_packet *op,
- ogg_packet *op_comm,
- ogg_packet *op_code);
-extern float **vorbis_analysis_buffer(vorbis_dsp_state *v,int vals);
-extern int vorbis_analysis_wrote(vorbis_dsp_state *v,int vals);
-extern int vorbis_analysis_blockout(vorbis_dsp_state *v,vorbis_block *vb);
-extern int vorbis_analysis(vorbis_block *vb,ogg_packet *op);
-
-extern int vorbis_bitrate_addblock(vorbis_block *vb);
-extern int vorbis_bitrate_flushpacket(vorbis_dsp_state *vd,
- ogg_packet *op);
-
-/* Vorbis PRIMITIVES: synthesis layer *******************************/
-extern int vorbis_synthesis_idheader(ogg_packet *op);
-extern int vorbis_synthesis_headerin(vorbis_info *vi,vorbis_comment *vc,
- ogg_packet *op);
-
-extern int vorbis_synthesis_init(vorbis_dsp_state *v,vorbis_info *vi);
-extern int vorbis_synthesis_restart(vorbis_dsp_state *v);
-extern int vorbis_synthesis(vorbis_block *vb,ogg_packet *op);
-extern int vorbis_synthesis_trackonly(vorbis_block *vb,ogg_packet *op);
-extern int vorbis_synthesis_blockin(vorbis_dsp_state *v,vorbis_block *vb);
-extern int vorbis_synthesis_pcmout(vorbis_dsp_state *v,float ***pcm);
-extern int vorbis_synthesis_lapout(vorbis_dsp_state *v,float ***pcm);
-extern int vorbis_synthesis_read(vorbis_dsp_state *v,int samples);
-extern long vorbis_packet_blocksize(vorbis_info *vi,ogg_packet *op);
-
-extern int vorbis_synthesis_halfrate(vorbis_info *v,int flag);
-extern int vorbis_synthesis_halfrate_p(vorbis_info *v);
-
-/* Vorbis ERRORS and return codes ***********************************/
-
-#define OV_FALSE -1
-#define OV_EOF -2
-#define OV_HOLE -3
-
-#define OV_EREAD -128
-#define OV_EFAULT -129
-#define OV_EIMPL -130
-#define OV_EINVAL -131
-#define OV_ENOTVORBIS -132
-#define OV_EBADHEADER -133
-#define OV_EVERSION -134
-#define OV_ENOTAUDIO -135
-#define OV_EBADPACKET -136
-#define OV_EBADLINK -137
-#define OV_ENOSEEK -138
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif
-
diff --git a/branches/1.0/thirdparties/android/include/vorbis/vorbisenc.h b/branches/1.0/thirdparties/android/include/vorbis/vorbisenc.h
deleted file mode 100644
index bddd83d..0000000
--- a/branches/1.0/thirdparties/android/include/vorbis/vorbisenc.h
+++ /dev/null
@@ -1,112 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
- * by the Xiph.Org Foundation http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: vorbis encode-engine setup
- last mod: $Id: vorbisenc.h 16037 2009-05-26 21:10:58Z xiphmont $
-
- ********************************************************************/
-
-#ifndef _OV_ENC_H_
-#define _OV_ENC_H_
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#include "codec.h"
-
-extern int vorbis_encode_init(vorbis_info *vi,
- long channels,
- long rate,
-
- long max_bitrate,
- long nominal_bitrate,
- long min_bitrate);
-
-extern int vorbis_encode_setup_managed(vorbis_info *vi,
- long channels,
- long rate,
-
- long max_bitrate,
- long nominal_bitrate,
- long min_bitrate);
-
-extern int vorbis_encode_setup_vbr(vorbis_info *vi,
- long channels,
- long rate,
-
- float quality /* quality level from 0. (lo) to 1. (hi) */
- );
-
-extern int vorbis_encode_init_vbr(vorbis_info *vi,
- long channels,
- long rate,
-
- float base_quality /* quality level from 0. (lo) to 1. (hi) */
- );
-
-extern int vorbis_encode_setup_init(vorbis_info *vi);
-
-extern int vorbis_encode_ctl(vorbis_info *vi,int number,void *arg);
-
- /* deprecated rate management supported only for compatability */
-#define OV_ECTL_RATEMANAGE_GET 0x10
-#define OV_ECTL_RATEMANAGE_SET 0x11
-#define OV_ECTL_RATEMANAGE_AVG 0x12
-#define OV_ECTL_RATEMANAGE_HARD 0x13
-
-struct ovectl_ratemanage_arg {
- int management_active;
-
- long bitrate_hard_min;
- long bitrate_hard_max;
- double bitrate_hard_window;
-
- long bitrate_av_lo;
- long bitrate_av_hi;
- double bitrate_av_window;
- double bitrate_av_window_center;
-};
-
-
- /* new rate setup */
-#define OV_ECTL_RATEMANAGE2_GET 0x14
-#define OV_ECTL_RATEMANAGE2_SET 0x15
-
-struct ovectl_ratemanage2_arg {
- int management_active;
-
- long bitrate_limit_min_kbps;
- long bitrate_limit_max_kbps;
- long bitrate_limit_reservoir_bits;
- double bitrate_limit_reservoir_bias;
-
- long bitrate_average_kbps;
- double bitrate_average_damping;
-};
-
-
-
-#define OV_ECTL_LOWPASS_GET 0x20
-#define OV_ECTL_LOWPASS_SET 0x21
-
-#define OV_ECTL_IBLOCK_GET 0x30
-#define OV_ECTL_IBLOCK_SET 0x31
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif
-
-
diff --git a/branches/1.0/thirdparties/android/include/vorbis/vorbisfile.h b/branches/1.0/thirdparties/android/include/vorbis/vorbisfile.h
deleted file mode 100644
index ef2a36d..0000000
--- a/branches/1.0/thirdparties/android/include/vorbis/vorbisfile.h
+++ /dev/null
@@ -1,206 +0,0 @@
-/********************************************************************
- * *
- * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
- * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
- * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
- * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
- * *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 *
- * by the Xiph.Org Foundation http://www.xiph.org/ *
- * *
- ********************************************************************
-
- function: stdio-based convenience library for opening/seeking/decoding
- last mod: $Id: vorbisfile.h 16243 2009-07-10 02:49:31Z xiphmont $
-
- ********************************************************************/
-
-#ifndef _OV_FILE_H_
-#define _OV_FILE_H_
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#include <stdio.h>
-#include "codec.h"
-
-/* The function prototypes for the callbacks are basically the same as for
- * the stdio functions fread, fseek, fclose, ftell.
- * The one difference is that the FILE * arguments have been replaced with
- * a void * - this is to be used as a pointer to whatever internal data these
- * functions might need. In the stdio case, it's just a FILE * cast to a void *
- *
- * If you use other functions, check the docs for these functions and return
- * the right values. For seek_func(), you *MUST* return -1 if the stream is
- * unseekable
- */
-typedef struct {
- size_t (*read_func) (void *ptr, size_t size, size_t nmemb, void *datasource);
- int (*seek_func) (void *datasource, ogg_int64_t offset, int whence);
- int (*close_func) (void *datasource);
- long (*tell_func) (void *datasource);
-} ov_callbacks;
-
-#ifndef OV_EXCLUDE_STATIC_CALLBACKS
-
-/* a few sets of convenient callbacks, especially for use under
- * Windows where ov_open_callbacks() should always be used instead of
- * ov_open() to avoid problems with incompatable crt.o version linking
- * issues. */
-
-static int _ov_header_fseek_wrap(FILE *f,ogg_int64_t off,int whence){
- if(f==NULL)return(-1);
-
-#ifdef __MINGW32__
- return fseeko64(f,off,whence);
-#elif defined (_WIN32)
- return _fseeki64(f,off,whence);
-#else
- return fseek(f,off,whence);
-#endif
-}
-
-/* These structs below (OV_CALLBACKS_DEFAULT etc) are defined here as
- * static data. That means that every file which includes this header
- * will get its own copy of these structs whether it uses them or
- * not unless it #defines OV_EXCLUDE_STATIC_CALLBACKS.
- * These static symbols are essential on platforms such as Windows on
- * which several different versions of stdio support may be linked to
- * by different DLLs, and we need to be certain we know which one
- * we're using (the same one as the main application).
- */
-
-static ov_callbacks OV_CALLBACKS_DEFAULT = {
- (size_t (*)(void *, size_t, size_t, void *)) fread,
- (int (*)(void *, ogg_int64_t, int)) _ov_header_fseek_wrap,
- (int (*)(void *)) fclose,
- (long (*)(void *)) ftell
-};
-
-static ov_callbacks OV_CALLBACKS_NOCLOSE = {
- (size_t (*)(void *, size_t, size_t, void *)) fread,
- (int (*)(void *, ogg_int64_t, int)) _ov_header_fseek_wrap,
- (int (*)(void *)) NULL,
- (long (*)(void *)) ftell
-};
-
-static ov_callbacks OV_CALLBACKS_STREAMONLY = {
- (size_t (*)(void *, size_t, size_t, void *)) fread,
- (int (*)(void *, ogg_int64_t, int)) NULL,
- (int (*)(void *)) fclose,
- (long (*)(void *)) NULL
-};
-
-static ov_callbacks OV_CALLBACKS_STREAMONLY_NOCLOSE = {
- (size_t (*)(void *, size_t, size_t, void *)) fread,
- (int (*)(void *, ogg_int64_t, int)) NULL,
- (int (*)(void *)) NULL,
- (long (*)(void *)) NULL
-};
-
-#endif
-
-#define NOTOPEN 0
-#define PARTOPEN 1
-#define OPENED 2
-#define STREAMSET 3
-#define INITSET 4
-
-typedef struct OggVorbis_File {
- void *datasource; /* Pointer to a FILE *, etc. */
- int seekable;
- ogg_int64_t offset;
- ogg_int64_t end;
- ogg_sync_state oy;
-
- /* If the FILE handle isn't seekable (eg, a pipe), only the current
- stream appears */
- int links;
- ogg_int64_t *offsets;
- ogg_int64_t *dataoffsets;
- long *serialnos;
- ogg_int64_t *pcmlengths; /* overloaded to maintain binary
- compatability; x2 size, stores both
- beginning and end values */
- vorbis_info *vi;
- vorbis_comment *vc;
-
- /* Decoding working state local storage */
- ogg_int64_t pcm_offset;
- int ready_state;
- long current_serialno;
- int current_link;
-
- double bittrack;
- double samptrack;
-
- ogg_stream_state os; /* take physical pages, weld into a logical
- stream of packets */
- vorbis_dsp_state vd; /* central working state for the packet->PCM decoder */
- vorbis_block vb; /* local working space for packet->PCM decode */
-
- ov_callbacks callbacks;
-
-} OggVorbis_File;
-
-
-extern int ov_clear(OggVorbis_File *vf);
-extern int ov_fopen(char *path,OggVorbis_File *vf);
-extern int ov_open(FILE *f,OggVorbis_File *vf,char *initial,long ibytes);
-extern int ov_open_callbacks(void *datasource, OggVorbis_File *vf,
- char *initial, long ibytes, ov_callbacks callbacks);
-
-extern int ov_test(FILE *f,OggVorbis_File *vf,char *initial,long ibytes);
-extern int ov_test_callbacks(void *datasource, OggVorbis_File *vf,
- char *initial, long ibytes, ov_callbacks callbacks);
-extern int ov_test_open(OggVorbis_File *vf);
-
-extern long ov_bitrate(OggVorbis_File *vf,int i);
-extern long ov_bitrate_instant(OggVorbis_File *vf);
-extern long ov_streams(OggVorbis_File *vf);
-extern long ov_seekable(OggVorbis_File *vf);
-extern long ov_serialnumber(OggVorbis_File *vf,int i);
-
-extern ogg_int64_t ov_raw_total(OggVorbis_File *vf,int i);
-extern ogg_int64_t ov_pcm_total(OggVorbis_File *vf,int i);
-extern double ov_time_total(OggVorbis_File *vf,int i);
-
-extern int ov_raw_seek(OggVorbis_File *vf,ogg_int64_t pos);
-extern int ov_pcm_seek(OggVorbis_File *vf,ogg_int64_t pos);
-extern int ov_pcm_seek_page(OggVorbis_File *vf,ogg_int64_t pos);
-extern int ov_time_seek(OggVorbis_File *vf,double pos);
-extern int ov_time_seek_page(OggVorbis_File *vf,double pos);
-
-extern int ov_raw_seek_lap(OggVorbis_File *vf,ogg_int64_t pos);
-extern int ov_pcm_seek_lap(OggVorbis_File *vf,ogg_int64_t pos);
-extern int ov_pcm_seek_page_lap(OggVorbis_File *vf,ogg_int64_t pos);
-extern int ov_time_seek_lap(OggVorbis_File *vf,double pos);
-extern int ov_time_seek_page_lap(OggVorbis_File *vf,double pos);
-
-extern ogg_int64_t ov_raw_tell(OggVorbis_File *vf);
-extern ogg_int64_t ov_pcm_tell(OggVorbis_File *vf);
-extern double ov_time_tell(OggVorbis_File *vf);
-
-extern vorbis_info *ov_info(OggVorbis_File *vf,int link);
-extern vorbis_comment *ov_comment(OggVorbis_File *vf,int link);
-
-extern long ov_read_float(OggVorbis_File *vf,float ***pcm_channels,int samples,
- int *bitstream);
-extern long ov_read_filter(OggVorbis_File *vf,char *buffer,int length,
- int bigendianp,int word,int sgned,int *bitstream,
- void (*filter)(float **pcm,long channels,long samples,void *filter_param),void *filter_param);
-extern long ov_read(OggVorbis_File *vf,char *buffer,int length,
- int bigendianp,int word,int sgned,int *bitstream);
-extern int ov_crosslap(OggVorbis_File *vf1,OggVorbis_File *vf2);
-
-extern int ov_halfrate(OggVorbis_File *vf,int flag);
-extern int ov_halfrate_p(OggVorbis_File *vf);
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif
-
diff --git a/branches/1.0/thirdparties/android/lib/pkgconfig/libavcodec.pc b/branches/1.0/thirdparties/android/lib/pkgconfig/libavcodec.pc
deleted file mode 100644
index 53071b9..0000000
--- a/branches/1.0/thirdparties/android/lib/pkgconfig/libavcodec.pc
+++ /dev/null
@@ -1,14 +0,0 @@
-prefix=./android
-exec_prefix=${prefix}
-libdir=${prefix}/lib
-includedir=${prefix}/include
-
-Name: libavcodec
-Description: FFmpeg codec library
-Version: 52.78.0
-Requires: libavutil = 50.19.0
-Requires.private:
-Conflicts:
-Libs: -L${libdir} -lavcodec -lm
-Libs.private:
-Cflags: -I${includedir}
diff --git a/branches/1.0/thirdparties/android/lib/pkgconfig/libavutil.pc b/branches/1.0/thirdparties/android/lib/pkgconfig/libavutil.pc
deleted file mode 100644
index b072544..0000000
--- a/branches/1.0/thirdparties/android/lib/pkgconfig/libavutil.pc
+++ /dev/null
@@ -1,14 +0,0 @@
-prefix=./android
-exec_prefix=${prefix}
-libdir=${prefix}/lib
-includedir=${prefix}/include
-
-Name: libavutil
-Description: FFmpeg utility library
-Version: 50.19.0
-Requires:
-Requires.private:
-Conflicts:
-Libs: -L${libdir} -lavutil
-Libs.private:
-Cflags: -I${includedir}
diff --git a/branches/1.0/thirdparties/android/lib/pkgconfig/libswscale.pc b/branches/1.0/thirdparties/android/lib/pkgconfig/libswscale.pc
deleted file mode 100644
index 7f81447..0000000
--- a/branches/1.0/thirdparties/android/lib/pkgconfig/libswscale.pc
+++ /dev/null
@@ -1,14 +0,0 @@
-prefix=./android
-exec_prefix=${prefix}
-libdir=${prefix}/lib
-includedir=${prefix}/include
-
-Name: libswscale
-Description: FFmpeg image rescaling library
-Version: 0.11.0
-Requires: libavutil = 50.19.0
-Requires.private:
-Conflicts:
-Libs: -L${libdir} -lswscale
-Libs.private:
-Cflags: -I${includedir}
diff --git a/branches/1.0/thirdparties/android/lib/pkgconfig/ogg.pc b/branches/1.0/thirdparties/android/lib/pkgconfig/ogg.pc
deleted file mode 100644
index 6b1c3d1..0000000
--- a/branches/1.0/thirdparties/android/lib/pkgconfig/ogg.pc
+++ /dev/null
@@ -1,14 +0,0 @@
-# ogg pkg-config file
-
-prefix=/home/inexbee/Bureau/theorarm/android
-exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
-includedir=${prefix}/include
-
-Name: ogg
-Description: ogg is a library for manipulating ogg bitstreams
-Version: 1.1.4
-Requires:
-Conflicts:
-Libs: -L${libdir} -logg
-Cflags: -I${includedir}
diff --git a/branches/1.0/thirdparties/android/lib/pkgconfig/opencore-amrnb.pc b/branches/1.0/thirdparties/android/lib/pkgconfig/opencore-amrnb.pc
deleted file mode 100644
index 67cbbd6..0000000
--- a/branches/1.0/thirdparties/android/lib/pkgconfig/opencore-amrnb.pc
+++ /dev/null
@@ -1,10 +0,0 @@
-prefix=/home/inexbee/Bureau/opencore-amr-0.1.2/android
-exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
-includedir=${prefix}/include/opencore-amrnb
-
-Name: OpenCORE AMR-NB
-Description: Adaptive Multi-Rate speech codec library
-Version: 0.1.2
-Libs: -L${libdir} -lopencore-amrnb
-Cflags: -I${includedir}
diff --git a/branches/1.0/thirdparties/android/lib/pkgconfig/opencore-amrwb.pc b/branches/1.0/thirdparties/android/lib/pkgconfig/opencore-amrwb.pc
deleted file mode 100644
index 430cc32..0000000
--- a/branches/1.0/thirdparties/android/lib/pkgconfig/opencore-amrwb.pc
+++ /dev/null
@@ -1,10 +0,0 @@
-prefix=/home/inexbee/Bureau/opencore-amr-0.1.2/android
-exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
-includedir=${prefix}/include/opencore-amrwb
-
-Name: OpenCORE AMR-WB
-Description: Adaptive Multi-Rate Wideband speech codec library
-Version: 0.1.2
-Libs: -L${libdir} -lopencore-amrwb
-Cflags: -I${includedir}
diff --git a/branches/1.0/thirdparties/android/lib/pkgconfig/theora.pc b/branches/1.0/thirdparties/android/lib/pkgconfig/theora.pc
deleted file mode 100644
index 787ecca..0000000
--- a/branches/1.0/thirdparties/android/lib/pkgconfig/theora.pc
+++ /dev/null
@@ -1,14 +0,0 @@
-# theora installed pkg-config file
-
-prefix=/home/inexbee/Bureau/theorarm/android
-exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
-includedir=${prefix}/include
-
-Name: theora
-Description: Theora video codec
-Version: 1.1.1+svn
-Requires: ogg >= 1.1
-Conflicts:
-Libs: -L${libdir} -ltheora
-Cflags: -I${includedir}
diff --git a/branches/1.0/thirdparties/android/lib/pkgconfig/theoradec.pc b/branches/1.0/thirdparties/android/lib/pkgconfig/theoradec.pc
deleted file mode 100644
index c58d854..0000000
--- a/branches/1.0/thirdparties/android/lib/pkgconfig/theoradec.pc
+++ /dev/null
@@ -1,14 +0,0 @@
-# theoradec installed pkg-config file
-
-prefix=/home/inexbee/Bureau/theorarm/android
-exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
-includedir=${prefix}/include
-
-Name: theora
-Description: Theora video codec (decoder)
-Version: 1.1.1+svn
-Requires: ogg >= 1.1
-Conflicts:
-Libs: -L${libdir} -ltheoradec
-Cflags: -I${includedir}
diff --git a/branches/1.0/thirdparties/android/lib/pkgconfig/theoraenc.pc b/branches/1.0/thirdparties/android/lib/pkgconfig/theoraenc.pc
deleted file mode 100644
index 27d4b41..0000000
--- a/branches/1.0/thirdparties/android/lib/pkgconfig/theoraenc.pc
+++ /dev/null
@@ -1,14 +0,0 @@
-# theoraenc installed pkg-config file
-
-prefix=/home/inexbee/Bureau/theorarm/android
-exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
-includedir=${prefix}/include
-
-Name: theora
-Description: Theora video codec (encoder)
-Version: 1.1.1+svn
-Requires: theoradec, ogg >= 1.1
-Conflicts:
-Libs: -L${libdir} -ltheoraenc
-Cflags: -I${includedir}
diff --git a/branches/1.0/thirdparties/android/lib/pkgconfig/vorbis.pc b/branches/1.0/thirdparties/android/lib/pkgconfig/vorbis.pc
deleted file mode 100644
index 59c385e..0000000
--- a/branches/1.0/thirdparties/android/lib/pkgconfig/vorbis.pc
+++ /dev/null
@@ -1,14 +0,0 @@
-# libvorbis pkg-config source file
-
-prefix=/home/inexbee/Bureau/theorarm/android
-exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
-includedir=${prefix}/include
-
-Name: vorbis
-Description: vorbis is the primary Ogg Vorbis library
-Version: 1.2.3
-Requires: ogg
-Conflicts:
-Libs: -L${libdir} -lvorbis -lm
-Cflags: -I${includedir}
diff --git a/branches/1.0/thirdparties/android/lib/pkgconfig/vorbisenc.pc b/branches/1.0/thirdparties/android/lib/pkgconfig/vorbisenc.pc
deleted file mode 100644
index 87834f9..0000000
--- a/branches/1.0/thirdparties/android/lib/pkgconfig/vorbisenc.pc
+++ /dev/null
@@ -1,14 +0,0 @@
-# libvorbisenc pkg-config source file
-
-prefix=/home/inexbee/Bureau/theorarm/android
-exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
-includedir=${prefix}/include
-
-Name: vorbisenc
-Description: vorbisenc is a library that provides a convenient API for setting up an encoding environment using libvorbis
-Version: 1.2.3
-Requires: vorbis
-Conflicts:
-Libs: -L${libdir} -lvorbisenc
-Cflags: -I${includedir}
diff --git a/branches/1.0/thirdparties/android/lib/pkgconfig/vorbisfile.pc b/branches/1.0/thirdparties/android/lib/pkgconfig/vorbisfile.pc
deleted file mode 100644
index e8f2f3a..0000000
--- a/branches/1.0/thirdparties/android/lib/pkgconfig/vorbisfile.pc
+++ /dev/null
@@ -1,14 +0,0 @@
-# libvorbisfile pkg-config source file
-
-prefix=/home/inexbee/Bureau/theorarm/android
-exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
-includedir=${prefix}/include
-
-Name: vorbisfile
-Description: vorbisfile is a library that provides a convenient high-level API for decoding and basic manipulation of all Vorbis I audio streams
-Version: 1.2.3
-Requires: vorbis
-Conflicts:
-Libs: -L${libdir} -lvorbisfile
-Cflags: -I${includedir}
diff --git a/branches/1.0/thirdparties/android/lib/pkgconfig/x264.pc b/branches/1.0/thirdparties/android/lib/pkgconfig/x264.pc
deleted file mode 100644
index 7f02eb2..0000000
--- a/branches/1.0/thirdparties/android/lib/pkgconfig/x264.pc
+++ /dev/null
@@ -1,10 +0,0 @@
-prefix=./android
-exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
-includedir=${prefix}/include
-
-Name: x264
-Description: H.264 (MPEG4 AVC) encoder library
-Version: 0.100.x
-Libs: -L${exec_prefix}/lib -lx264
-Cflags: -I${prefix}/include
OpenPOWER on IntegriCloud