summaryrefslogtreecommitdiffstats
path: root/thirdparties/iphone
diff options
context:
space:
mode:
Diffstat (limited to 'thirdparties/iphone')
-rwxr-xr-xthirdparties/iphone/include/g729b/dtx.h62
-rwxr-xr-xthirdparties/iphone/include/g729b/ld8a.h486
-rwxr-xr-xthirdparties/iphone/include/g729b/octet.h4
-rwxr-xr-xthirdparties/iphone/include/g729b/sid.h4
-rwxr-xr-xthirdparties/iphone/include/g729b/tab_ld8a.h2
-rwxr-xr-xthirdparties/iphone/include/g729b/vad.h20
-rwxr-xr-xthirdparties/iphone/include/gsm.h2
-rwxr-xr-xthirdparties/iphone/include/libavcodec/avcodec.h80
-rwxr-xr-xthirdparties/iphone/include/libavcodec/old_codec_ids.h702
-rwxr-xr-xthirdparties/iphone/include/libavcodec/opt.h18
-rwxr-xr-xthirdparties/iphone/include/libavcodec/xvmc.h4
-rwxr-xr-xthirdparties/iphone/include/libavfilter/avcodec.h10
-rwxr-xr-xthirdparties/iphone/include/libavfilter/avfilter.h12
-rwxr-xr-xthirdparties/iphone/include/libavformat/avformat.h16
-rwxr-xr-xthirdparties/iphone/include/libavformat/avio.h32
-rwxr-xr-xthirdparties/iphone/include/libavutil/avstring.h6
-rwxr-xr-xthirdparties/iphone/include/libavutil/base64.h6
-rwxr-xr-xthirdparties/iphone/include/libavutil/bprint.h12
-rwxr-xr-xthirdparties/iphone/include/libavutil/common.h76
-rwxr-xr-xthirdparties/iphone/include/libavutil/cpu.h2
-rwxr-xr-xthirdparties/iphone/include/libavutil/crc.h2
-rwxr-xr-xthirdparties/iphone/include/libavutil/fifo.h6
-rwxr-xr-xthirdparties/iphone/include/libavutil/intreadwrite.h12
-rwxr-xr-xthirdparties/iphone/include/libavutil/lfg.h6
-rwxr-xr-xthirdparties/iphone/include/libavutil/log.h2
-rwxr-xr-xthirdparties/iphone/include/libavutil/mem.h37
-rwxr-xr-xthirdparties/iphone/include/libavutil/opt.h2
-rwxr-xr-xthirdparties/iphone/include/libavutil/pixdesc.h8
-rwxr-xr-xthirdparties/iphone/include/libavutil/rational.h24
-rwxr-xr-xthirdparties/iphone/include/libavutil/timestamp.h16
-rwxr-xr-xthirdparties/iphone/include/libswresample/swresample.h2
-rwxr-xr-xthirdparties/iphone/include/libyuv/libyuv/compare.h3
-rwxr-xr-xthirdparties/iphone/include/libyuv/libyuv/convert.h3
-rwxr-xr-xthirdparties/iphone/include/libyuv/libyuv/convert_argb.h3
-rwxr-xr-xthirdparties/iphone/include/libyuv/libyuv/convert_from.h3
-rwxr-xr-xthirdparties/iphone/include/libyuv/libyuv/convert_from_argb.h3
-rwxr-xr-xthirdparties/iphone/include/libyuv/libyuv/cpu_id.h10
-rwxr-xr-xthirdparties/iphone/include/libyuv/libyuv/format_conversion.h3
-rwxr-xr-xthirdparties/iphone/include/libyuv/libyuv/mjpeg_decoder.h256
-rwxr-xr-xthirdparties/iphone/include/libyuv/libyuv/planar_functions.h3
-rwxr-xr-xthirdparties/iphone/include/libyuv/libyuv/rotate.h24
-rwxr-xr-xthirdparties/iphone/include/libyuv/libyuv/rotate_argb.h3
-rwxr-xr-xthirdparties/iphone/include/libyuv/libyuv/row.h1933
-rwxr-xr-xthirdparties/iphone/include/libyuv/libyuv/scale.h42
-rwxr-xr-xthirdparties/iphone/include/libyuv/libyuv/scale_argb.h3
-rwxr-xr-xthirdparties/iphone/include/libyuv/libyuv/scale_row.h3
-rwxr-xr-xthirdparties/iphone/include/libyuv/libyuv/video_common.h249
-rwxr-xr-xthirdparties/iphone/include/net/_route.h108
-rwxr-xr-xthirdparties/iphone/include/opencore-amrnb/interf_enc.h20
-rwxr-xr-xthirdparties/iphone/include/speex/speex.h84
-rwxr-xr-xthirdparties/iphone/include/speex/speex_bits.h44
-rwxr-xr-xthirdparties/iphone/include/speex/speex_buffer.h2
-rwxr-xr-xthirdparties/iphone/include/speex/speex_callbacks.h18
-rwxr-xr-xthirdparties/iphone/include/speex/speex_echo.h10
-rwxr-xr-xthirdparties/iphone/include/speex/speex_header.h38
-rwxr-xr-xthirdparties/iphone/include/speex/speex_jitter.h52
-rwxr-xr-xthirdparties/iphone/include/speex/speex_preprocess.h12
-rwxr-xr-xthirdparties/iphone/include/speex/speex_resampler.h156
-rwxr-xr-xthirdparties/iphone/include/speex/speex_stereo.h20
-rwxr-xr-xthirdparties/iphone/include/speex/speex_types.h122
-rwxr-xr-xthirdparties/iphone/include/srtp/aes.h28
-rwxr-xr-xthirdparties/iphone/include/srtp/aes_cbc.h26
-rwxr-xr-xthirdparties/iphone/include/srtp/aes_icm.h42
-rwxr-xr-xthirdparties/iphone/include/srtp/alloc.h14
-rwxr-xr-xthirdparties/iphone/include/srtp/auth.h76
-rwxr-xr-xthirdparties/iphone/include/srtp/cipher.h102
-rwxr-xr-xthirdparties/iphone/include/srtp/crypto.h10
-rwxr-xr-xthirdparties/iphone/include/srtp/crypto_kernel.h94
-rwxr-xr-xthirdparties/iphone/include/srtp/crypto_math.h30
-rwxr-xr-xthirdparties/iphone/include/srtp/crypto_types.h74
-rwxr-xr-xthirdparties/iphone/include/srtp/cryptoalg.h70
-rwxr-xr-xthirdparties/iphone/include/srtp/datatypes.h88
-rwxr-xr-xthirdparties/iphone/include/srtp/ekt.h88
-rwxr-xr-xthirdparties/iphone/include/srtp/err.h90
-rwxr-xr-xthirdparties/iphone/include/srtp/getopt_s.h16
-rwxr-xr-xthirdparties/iphone/include/srtp/gf2_8.h20
-rwxr-xr-xthirdparties/iphone/include/srtp/hmac.h20
-rwxr-xr-xthirdparties/iphone/include/srtp/integers.h16
-rwxr-xr-xthirdparties/iphone/include/srtp/kernel_compat.h20
-rwxr-xr-xthirdparties/iphone/include/srtp/key.h32
-rwxr-xr-xthirdparties/iphone/include/srtp/null_auth.h16
-rwxr-xr-xthirdparties/iphone/include/srtp/null_cipher.h20
-rwxr-xr-xthirdparties/iphone/include/srtp/prng.h14
-rwxr-xr-xthirdparties/iphone/include/srtp/rand_source.h18
-rwxr-xr-xthirdparties/iphone/include/srtp/rdb.h16
-rwxr-xr-xthirdparties/iphone/include/srtp/rdbx.h26
-rwxr-xr-xthirdparties/iphone/include/srtp/rtp.h44
-rwxr-xr-xthirdparties/iphone/include/srtp/rtp_priv.h32
-rwxr-xr-xthirdparties/iphone/include/srtp/sha1.h30
-rwxr-xr-xthirdparties/iphone/include/srtp/srtp.h341
-rwxr-xr-xthirdparties/iphone/include/srtp/srtp_priv.h170
-rwxr-xr-xthirdparties/iphone/include/srtp/stat.h14
-rwxr-xr-xthirdparties/iphone/include/srtp/ut_sim.h18
-rwxr-xr-xthirdparties/iphone/include/srtp/xfm.h112
-rwxr-xr-xthirdparties/iphone/include/vpx/svc_context.h43
-rwxr-xr-xthirdparties/iphone/include/vpx/vp8.h66
-rwxr-xr-xthirdparties/iphone/include/vpx/vp8cx.h552
-rwxr-xr-xthirdparties/iphone/include/vpx/vp8dx.h88
-rwxr-xr-xthirdparties/iphone/include/vpx/vpx_codec.h548
-rwxr-xr-xthirdparties/iphone/include/vpx/vpx_decoder.h602
-rwxr-xr-xthirdparties/iphone/include/vpx/vpx_encoder.h840
-rwxr-xr-xthirdparties/iphone/include/vpx/vpx_frame_buffer.h6
-rwxr-xr-xthirdparties/iphone/include/vpx/vpx_image.h217
103 files changed, 4893 insertions, 4799 deletions
diff --git a/thirdparties/iphone/include/g729b/dtx.h b/thirdparties/iphone/include/g729b/dtx.h
index d0cc6ac..c8af076 100755
--- a/thirdparties/iphone/include/g729b/dtx.h
+++ b/thirdparties/iphone/include/g729b/dtx.h
@@ -13,36 +13,36 @@
/* 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 */
+ 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 */
+ 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 */
+ 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 */
+ 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 */
@@ -54,16 +54,16 @@ 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 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);
@@ -92,7 +92,7 @@ Word16 read_frame(FILE *f_serial, Word16 *parm);
#define RATE_0 0 /* 0 bit/s rate */
/* CNG excitation generation constant */
- /* alpha = 0.5 */
+/* 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/thirdparties/iphone/include/g729b/ld8a.h b/thirdparties/iphone/include/g729b/ld8a.h
index 0f95011..7a847b8 100755
--- a/thirdparties/iphone/include/g729b/ld8a.h
+++ b/thirdparties/iphone/include/g729b/ld8a.h
@@ -43,18 +43,18 @@
*-------------------------------*/
Word32 Inv_sqrt( /* (o) Q30 : output value (range: 0<=val<1) */
- Word32 L_x /* (i) Q0 : input value (range: 0<=val<=7fffffff) */
+ 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 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) */
+ Word16 exponent, /* (i) Q0 : Integer part. (range: 0<=val<=30) */
+ Word16 fraction /* (i) Q15 : Fractionnal part. (range: 0.0<=val<1.0) */
);
/*-------------------------------*
@@ -65,13 +65,13 @@ void Init_Pre_Process(void);
void Init_Post_Process(void);
void Pre_Process(
- Word16 signal[], /* Input/output signal */
- Word16 lg /* Length of signal */
+ Word16 signal[], /* Input/output signal */
+ Word16 lg /* Length of signal */
);
void Post_Process(
- Word16 signal[], /* Input/output signal */
- Word16 lg /* Length of signal */
+ Word16 signal[], /* Input/output signal */
+ Word16 lg /* Length of signal */
);
/*----------------------------------*
@@ -81,20 +81,20 @@ void Post_Process(
void Init_Coder_ld8a(void);
void Coder_ld8a(
- Word16 ana[], /* output : Analysis parameters */
- Word16 frame,
- Word16 vad_enable
+ 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
+ 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 */
+ 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 */
);
/*-------------------------------*
@@ -102,84 +102,84 @@ void Decod_ld8a(
*-------------------------------*/
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
+ 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) */
+ 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 */
+ 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) */
+ 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) */
+ 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 */
+ 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 */
+ 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 */
+ 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 */
+ 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 */
+ 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. */
+ 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 */
+ Word16 x[], /* (i) : input vector */
+ Word16 h[], /* (i) Q12 : impulse response */
+ Word16 y[], /* (o) : output vector */
+ Word16 L /* (i) : vector size */
);
/*--------------------------------------------------------------------------*
@@ -195,75 +195,75 @@ void Convolve(
*-----------------------*/
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 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 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 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 */
+ 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 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 */
+ 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 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 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 */
+ 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 */
+ 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 */
);
/*-----------------------*
@@ -284,19 +284,19 @@ void Cor_h_X(
#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 */
+ 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 */
+ 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 *
@@ -328,152 +328,152 @@ void Decod_ACELP(
*-------------------------------*/
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 */
+ 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 */
+ 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 */
+ 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 */
+ Word16 flsp[], /* Q13 */
+ Word16 wegt[] /* Q11 -> normalized */
);
void Lsp_encw_reset(
- void
+ void
);
void Lsp_qua_cs(
- Word16 flsp_in[M], /* Q13 */
- Word16 lspq_out[M], /* Q13 */
- Word16 *code
+ Word16 flsp_in[M], /* Q13 */
+ Word16 lspq_out[M], /* Q13 */
+ Word16 *code
);
void Lsp_expand_1(
- Word16 buf[], /* Q13 */
- Word16 gap /* Q13 */
+ Word16 buf[], /* Q13 */
+ Word16 gap /* Q13 */
);
void Lsp_expand_2(
- Word16 buf[], /* Q13 */
- Word16 gap /* Q13 */
+ Word16 buf[], /* Q13 */
+ Word16 gap /* Q13 */
);
void Lsp_expand_1_2(
- Word16 buf[], /* Q13 */
- Word16 gap /* Q13 */
+ 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 */
+ 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 */
+ 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
+ Word32 L_tdist[], /* Q27 */
+ Word16 *mode_index
);
void Lsp_pre_select(
- Word16 rbuf[], /* Q13 */
- Word16 lspcb1[][M], /* Q13 */
- Word16 *cand
+ 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
+ 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
+ Word16 rbuf[], /* Q13 */
+ Word16 lspcb1[], /* Q13 */
+ Word16 wegt[], /* normalized */
+ Word16 lspcb2[][M], /* Q13 */
+ Word16 *index
);
void Lsp_stability(
- Word16 buf[] /* Q13 */
+ 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[]
+ 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 */
+ 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
);
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 */
+ 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 */
+ 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 */
+ 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 */
+ Word16 lsp_ele[M], /* Q13 */
+ Word16 freq_prev[MA_NP][M] /* Q13 */
);
/*-------------------------------*
@@ -493,48 +493,48 @@ void Lsp_prev_update(
*--------------------------------------------------------------------------*/
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 */
+ 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. */
+ 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) */
+ 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] */
+ 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 */
+ 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[] */
+ 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[] */
);
/*-----------------------*
@@ -570,31 +570,31 @@ void bits2prm_ld8k(Word16 bits[], Word16 prm[]);
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
+ 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 */
+ 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 */
+ 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 */
+ Word16 *sig_in, /* (i) : postfilter input signal */
+ Word16 *sig_out, /* (i/o) : postfilter output signal */
+ Word16 l_trm /* (i) : subframe size */
);
/*--------------------------------------------------------------------------*
@@ -615,14 +615,14 @@ Word16 test_err(Word16 t0, Word16 t0_frac);
*--------------------------------------------------------------------------*/
void Copy(
- Word16 x[], /* (i) : input vector */
- Word16 y[], /* (o) : output vector */
- Word16 L /* (i) : vector length */
+ 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 x[], /* (o) : vector to clear */
+ Word16 L /* (i) : length of vector */
);
Word16 Random(Word16 *seed);
diff --git a/thirdparties/iphone/include/g729b/octet.h b/thirdparties/iphone/include/g729b/octet.h
index e75827a..61adecb 100755
--- a/thirdparties/iphone/include/g729b/octet.h
+++ b/thirdparties/iphone/include/g729b/octet.h
@@ -7,8 +7,8 @@
*/
/* 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.
+/* 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).
*/
diff --git a/thirdparties/iphone/include/g729b/sid.h b/thirdparties/iphone/include/g729b/sid.h
index 3aae1eb..a9b539b 100755
--- a/thirdparties/iphone/include/g729b/sid.h
+++ b/thirdparties/iphone/include/g729b/sid.h
@@ -14,8 +14,8 @@
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]);
+void sid_lsfq_decode(Word16 *index, Word16 *lspq,
+ Word16 freq_prev[MA_NP][M]);
diff --git a/thirdparties/iphone/include/g729b/tab_ld8a.h b/thirdparties/iphone/include/g729b/tab_ld8a.h
index 0cb1b3e..08410d9 100755
--- a/thirdparties/iphone/include/g729b/tab_ld8a.h
+++ b/thirdparties/iphone/include/g729b/tab_ld8a.h
@@ -40,7 +40,7 @@ extern Word16 a100[3];
extern Word16 b140[3];
extern Word16 a140[3];
extern Word16 bitsno[PRM_SIZE];
-extern Word16 bitsno2[4];
+extern Word16 bitsno2[4];
extern Word16 tabpow[33];
extern Word16 tablog[33];
extern Word16 tabsqr[49];
diff --git a/thirdparties/iphone/include/g729b/vad.h b/thirdparties/iphone/include/g729b/vad.h
index fb7a67e..d455071 100755
--- a/thirdparties/iphone/include/g729b/vad.h
+++ b/thirdparties/iphone/include/g729b/vad.h
@@ -17,14 +17,14 @@
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);
+ 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/thirdparties/iphone/include/gsm.h b/thirdparties/iphone/include/gsm.h
index 4714ab6..5df6c99 100755
--- a/thirdparties/iphone/include/gsm.h
+++ b/thirdparties/iphone/include/gsm.h
@@ -55,7 +55,7 @@ typedef gsm_byte gsm_frame[33]; /* 33 * 8 bits */
#define GSM_OPT_FRAME_CHAIN 6
extern gsm gsm_create GSM_P((void));
-extern void gsm_destroy GSM_P((gsm));
+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 *));
diff --git a/thirdparties/iphone/include/libavcodec/avcodec.h b/thirdparties/iphone/include/libavcodec/avcodec.h
index dc317dc..020f29f 100755
--- a/thirdparties/iphone/include/libavcodec/avcodec.h
+++ b/thirdparties/iphone/include/libavcodec/avcodec.h
@@ -559,7 +559,7 @@ enum Motion_Est_ID {
/**
* @ingroup lavc_decoding
*/
-enum AVDiscard{
+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
@@ -570,7 +570,7 @@ enum AVDiscard{
AVDISCARD_ALL = 48, ///< discard all
};
-enum AVColorPrimaries{
+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,
@@ -581,7 +581,7 @@ enum AVColorPrimaries{
AVCOL_PRI_NB , ///< Not part of ABI
};
-enum AVColorTransferCharacteristic{
+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
@@ -590,7 +590,7 @@ enum AVColorTransferCharacteristic{
AVCOL_TRC_NB , ///< Not part of ABI
};
-enum AVColorSpace{
+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,
@@ -603,7 +603,7 @@ enum AVColorSpace{
};
#define AVCOL_SPC_YCGCO AVCOL_SPC_YCOCG
-enum AVColorRange{
+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
@@ -615,7 +615,7 @@ enum AVColorRange{
* 1 2 1-6 are possible chroma positions
* X X 5 6 X 0 is undefined/unknown position
*/
-enum AVChromaLocation{
+enum AVChromaLocation {
AVCHROMA_LOC_UNSPECIFIED = 0,
AVCHROMA_LOC_LEFT = 1, ///< mpeg2/4, h264 default
AVCHROMA_LOC_CENTER = 2, ///< mpeg1, jpeg, h263
@@ -642,7 +642,7 @@ enum AVAudioServiceType {
/**
* @ingroup lavc_encoding
*/
-typedef struct RcOverride{
+typedef struct RcOverride {
int start_frame;
int end_frame;
int qscale; // If this is 0 then quality_factor will be used instead.
@@ -832,7 +832,7 @@ typedef struct RcOverride{
* This specifies the area which should be displayed.
* Note there may be multiple such areas for one frame.
*/
-typedef struct AVPanScan{
+typedef struct AVPanScan {
/**
* id
* - encoding: Set by user.
@@ -854,7 +854,7 @@ typedef struct AVPanScan{
* - decoding: Set by libavcodec.
*/
int16_t position[3][2];
-}AVPanScan;
+} AVPanScan;
#define FF_QSCALE_TYPE_MPEG1 0
#define FF_QSCALE_TYPE_MPEG2 1
@@ -1826,7 +1826,7 @@ typedef struct AVCodecContext {
* - encoding: Set by user.
* - decoding: unused
*/
- int prediction_method;
+ int prediction_method;
#define FF_PRED_LEFT 0
#define FF_PRED_PLANE 1
#define FF_PRED_MEDIAN 2
@@ -2585,11 +2585,11 @@ typedef struct AVCodecContext {
void (*rtp_callback)(struct AVCodecContext *avctx, void *data, int size, int mb_nb);
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. */
+ /* 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. */
/* statistics, used for 2-pass encoding */
int mv_bits;
@@ -2816,7 +2816,7 @@ typedef struct AVCodecContext {
* - encoding: Set by libavcodec.
* - decoding: Set by user.
*/
- int bits_per_coded_sample;
+ int bits_per_coded_sample;
/**
* Bits per sample/pixel of internal libavcodec pixel/sample format.
@@ -2830,7 +2830,7 @@ typedef struct AVCodecContext {
* - encoding: unused
* - decoding: Set by user.
*/
- int lowres;
+ int lowres;
/**
* the picture in the bitstream
@@ -2920,14 +2920,14 @@ typedef struct AVCodecContext {
* - encoding: Set by user.
* - decoding: unused
*/
- int nsse_weight;
+ int nsse_weight;
/**
* profile
* - encoding: Set by user.
* - decoding: Set by libavcodec.
*/
- int profile;
+ int profile;
#define FF_PROFILE_UNKNOWN -99
#define FF_PROFILE_RESERVED -100
@@ -2997,7 +2997,7 @@ typedef struct AVCodecContext {
* - encoding: Set by user.
* - decoding: Set by libavcodec.
*/
- int level;
+ int level;
#define FF_LEVEL_UNKNOWN -99
/**
@@ -3851,8 +3851,8 @@ void avcodec_align_dimensions2(AVCodecContext *s, int *width, int *height,
* used or zero if no frame data was decompressed (used) from the input AVPacket.
*/
attribute_deprecated int avcodec_decode_audio3(AVCodecContext *avctx, int16_t *samples,
- int *frame_size_ptr,
- AVPacket *avpkt);
+ int *frame_size_ptr,
+ AVPacket *avpkt);
#endif
/**
@@ -3933,8 +3933,8 @@ int avcodec_decode_audio4(AVCodecContext *avctx, AVFrame *frame,
* used or zero if no frame could be decompressed.
*/
int avcodec_decode_video2(AVCodecContext *avctx, AVFrame *picture,
- int *got_picture_ptr,
- const AVPacket *avpkt);
+ int *got_picture_ptr,
+ const AVPacket *avpkt);
/**
* Decode a subtitle message.
@@ -3953,8 +3953,8 @@ int avcodec_decode_video2(AVCodecContext *avctx, AVFrame *picture,
* @param[in] avpkt The input AVPacket containing the input buffer.
*/
int avcodec_decode_subtitle2(AVCodecContext *avctx, AVSubtitle *sub,
- int *got_sub_ptr,
- AVPacket *avpkt);
+ int *got_sub_ptr,
+ AVPacket *avpkt);
/**
* @defgroup lavc_parsing Frame parsing
@@ -4208,8 +4208,8 @@ AVCodec *avcodec_find_encoder_by_name(const char *name);
* of bytes used to encode the data read from the input buffer.
*/
int attribute_deprecated avcodec_encode_audio(AVCodecContext *avctx,
- uint8_t *buf, int buf_size,
- const short *samples);
+ uint8_t *buf, int buf_size,
+ const short *samples);
#endif
/**
@@ -4481,7 +4481,7 @@ int av_picture_crop(AVPicture *dst, const AVPicture *src,
* 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);
+ int padtop, int padbottom, int padleft, int padright, int *color);
/**
* @}
@@ -4569,7 +4569,7 @@ int avcodec_get_pix_fmt_loss(enum PixelFormat dst_pix_fmt, enum PixelFormat src_
*/
attribute_deprecated
enum PixelFormat avcodec_find_best_pix_fmt(int64_t pix_fmt_mask, enum PixelFormat src_pix_fmt,
- int has_alpha, int *loss_ptr);
+ int has_alpha, int *loss_ptr);
#endif /* FF_API_FIND_BEST_PIX_FMT */
/**
@@ -4590,8 +4590,8 @@ enum PixelFormat avcodec_find_best_pix_fmt(int64_t pix_fmt_mask, enum PixelForma
* @return The best pixel format to convert to or -1 if none was found.
*/
enum PixelFormat avcodec_find_best_pix_fmt_of_list(enum PixelFormat *pix_fmt_list,
- enum PixelFormat src_pix_fmt,
- int has_alpha, int *loss_ptr);
+ enum PixelFormat src_pix_fmt,
+ int has_alpha, int *loss_ptr);
/**
* Find the best pixel format to convert to given a certain source pixel
@@ -4624,16 +4624,16 @@ enum PixelFormat avcodec_find_best_pix_fmt_of_list(enum PixelFormat *pix_fmt_lis
* @return The best pixel format to convert to or -1 if none was found.
*/
enum PixelFormat avcodec_find_best_pix_fmt_of_2(enum PixelFormat dst_pix_fmt1, enum PixelFormat dst_pix_fmt2,
- enum PixelFormat src_pix_fmt, int has_alpha, int *loss_ptr);
+ enum PixelFormat src_pix_fmt, int has_alpha, int *loss_ptr);
attribute_deprecated
#if AV_HAVE_INCOMPATIBLE_FORK_ABI
enum PixelFormat avcodec_find_best_pix_fmt2(enum PixelFormat *pix_fmt_list,
- enum PixelFormat src_pix_fmt,
- int has_alpha, int *loss_ptr);
+ enum PixelFormat src_pix_fmt,
+ int has_alpha, int *loss_ptr);
#else
enum PixelFormat avcodec_find_best_pix_fmt2(enum PixelFormat dst_pix_fmt1, enum PixelFormat dst_pix_fmt2,
- enum PixelFormat src_pix_fmt, int has_alpha, int *loss_ptr);
+ enum PixelFormat src_pix_fmt, int has_alpha, int *loss_ptr);
#endif
@@ -4850,10 +4850,10 @@ 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
+ AV_LOCK_CREATE, ///< Create a mutex
+ AV_LOCK_OBTAIN, ///< Lock the mutex
+ AV_LOCK_RELEASE, ///< Unlock the mutex
+ AV_LOCK_DESTROY, ///< Free mutex resources
};
/**
diff --git a/thirdparties/iphone/include/libavcodec/old_codec_ids.h b/thirdparties/iphone/include/libavcodec/old_codec_ids.h
index ded4cc7..e0d3d7e 100755
--- a/thirdparties/iphone/include/libavcodec/old_codec_ids.h
+++ b/thirdparties/iphone/include/libavcodec/old_codec_ids.h
@@ -29,370 +29,370 @@
* Do not add new items to this list. Use the AVCodecID enum instead.
*/
- CODEC_ID_NONE = AV_CODEC_ID_NONE,
+CODEC_ID_NONE = AV_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,
- 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_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_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,
- CODEC_ID_A64_MULTI,
- CODEC_ID_A64_MULTI5,
- CODEC_ID_R10K,
- CODEC_ID_MXPEG,
- CODEC_ID_LAGARITH,
- CODEC_ID_PRORES,
- CODEC_ID_JV,
- CODEC_ID_DFA,
- CODEC_ID_WMV3IMAGE,
- CODEC_ID_VC1IMAGE,
- CODEC_ID_UTVIDEO,
- CODEC_ID_BMV_VIDEO,
- CODEC_ID_VBLE,
- CODEC_ID_DXTORY,
- CODEC_ID_V410,
- CODEC_ID_XWD,
- CODEC_ID_CDXL,
- CODEC_ID_XBM,
- CODEC_ID_ZEROCODEC,
- CODEC_ID_MSS1,
- CODEC_ID_MSA1,
- CODEC_ID_TSCC2,
- CODEC_ID_MTS2,
- CODEC_ID_CLLC,
- CODEC_ID_Y41P = MKBETAG('Y','4','1','P'),
- CODEC_ID_ESCAPE130 = MKBETAG('E','1','3','0'),
- CODEC_ID_EXR = MKBETAG('0','E','X','R'),
- CODEC_ID_AVRP = MKBETAG('A','V','R','P'),
+/* 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,
+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_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_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,
+CODEC_ID_A64_MULTI,
+CODEC_ID_A64_MULTI5,
+CODEC_ID_R10K,
+CODEC_ID_MXPEG,
+CODEC_ID_LAGARITH,
+CODEC_ID_PRORES,
+CODEC_ID_JV,
+CODEC_ID_DFA,
+CODEC_ID_WMV3IMAGE,
+CODEC_ID_VC1IMAGE,
+CODEC_ID_UTVIDEO,
+CODEC_ID_BMV_VIDEO,
+CODEC_ID_VBLE,
+CODEC_ID_DXTORY,
+CODEC_ID_V410,
+CODEC_ID_XWD,
+CODEC_ID_CDXL,
+CODEC_ID_XBM,
+CODEC_ID_ZEROCODEC,
+CODEC_ID_MSS1,
+CODEC_ID_MSA1,
+CODEC_ID_TSCC2,
+CODEC_ID_MTS2,
+CODEC_ID_CLLC,
+CODEC_ID_Y41P = MKBETAG('Y','4','1','P'),
+CODEC_ID_ESCAPE130 = MKBETAG('E','1','3','0'),
+CODEC_ID_EXR = MKBETAG('0','E','X','R'),
+CODEC_ID_AVRP = MKBETAG('A','V','R','P'),
- CODEC_ID_G2M = MKBETAG( 0 ,'G','2','M'),
- CODEC_ID_AVUI = MKBETAG('A','V','U','I'),
- CODEC_ID_AYUV = MKBETAG('A','Y','U','V'),
- CODEC_ID_V308 = MKBETAG('V','3','0','8'),
- CODEC_ID_V408 = MKBETAG('V','4','0','8'),
- CODEC_ID_YUV4 = MKBETAG('Y','U','V','4'),
- CODEC_ID_SANM = MKBETAG('S','A','N','M'),
- CODEC_ID_PAF_VIDEO = MKBETAG('P','A','F','V'),
+CODEC_ID_G2M = MKBETAG( 0 ,'G','2','M'),
+CODEC_ID_AVUI = MKBETAG('A','V','U','I'),
+CODEC_ID_AYUV = MKBETAG('A','Y','U','V'),
+CODEC_ID_V308 = MKBETAG('V','3','0','8'),
+CODEC_ID_V408 = MKBETAG('V','4','0','8'),
+CODEC_ID_YUV4 = MKBETAG('Y','U','V','4'),
+CODEC_ID_SANM = MKBETAG('S','A','N','M'),
+CODEC_ID_PAF_VIDEO = MKBETAG('P','A','F','V'),
- /* various PCM "codecs" */
- CODEC_ID_FIRST_AUDIO = 0x10000, ///< A dummy id pointing at the start of audio 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,
- CODEC_ID_PCM_LXF,
- CODEC_ID_S302M,
- CODEC_ID_PCM_S8_PLANAR,
+/* various PCM "codecs" */
+CODEC_ID_FIRST_AUDIO = 0x10000, ///< A dummy id pointing at the start of audio 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,
+CODEC_ID_PCM_LXF,
+CODEC_ID_S302M,
+CODEC_ID_PCM_S8_PLANAR,
- /* 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,
- CODEC_ID_ADPCM_G722,
- CODEC_ID_ADPCM_IMA_APC,
- CODEC_ID_VIMA = MKBETAG('V','I','M','A'),
+/* 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,
+CODEC_ID_ADPCM_G722,
+CODEC_ID_ADPCM_IMA_APC,
+CODEC_ID_VIMA = MKBETAG('V','I','M','A'),
- /* AMR */
- CODEC_ID_AMR_NB = 0x12000,
- CODEC_ID_AMR_WB,
+/* AMR */
+CODEC_ID_AMR_NB = 0x12000,
+CODEC_ID_AMR_WB,
- /* RealAudio codecs*/
- CODEC_ID_RA_144 = 0x13000,
- CODEC_ID_RA_288,
+/* 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,
+/* 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_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,
- CODEC_ID_AAC_LATM,
- CODEC_ID_QDMC,
- CODEC_ID_CELT,
- CODEC_ID_G723_1,
- CODEC_ID_G729,
- CODEC_ID_8SVX_EXP,
- CODEC_ID_8SVX_FIB,
- CODEC_ID_BMV_AUDIO,
- CODEC_ID_RALF,
- CODEC_ID_IAC,
- CODEC_ID_ILBC,
- CODEC_ID_FFWAVESYNTH = MKBETAG('F','F','W','S'),
- CODEC_ID_8SVX_RAW = MKBETAG('8','S','V','X'),
- CODEC_ID_SONIC = MKBETAG('S','O','N','C'),
- CODEC_ID_SONIC_LS = MKBETAG('S','O','N','L'),
- CODEC_ID_PAF_AUDIO = MKBETAG('P','A','F','A'),
- CODEC_ID_OPUS = MKBETAG('O','P','U','S'),
+/* 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_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,
+CODEC_ID_AAC_LATM,
+CODEC_ID_QDMC,
+CODEC_ID_CELT,
+CODEC_ID_G723_1,
+CODEC_ID_G729,
+CODEC_ID_8SVX_EXP,
+CODEC_ID_8SVX_FIB,
+CODEC_ID_BMV_AUDIO,
+CODEC_ID_RALF,
+CODEC_ID_IAC,
+CODEC_ID_ILBC,
+CODEC_ID_FFWAVESYNTH = MKBETAG('F','F','W','S'),
+CODEC_ID_8SVX_RAW = MKBETAG('8','S','V','X'),
+CODEC_ID_SONIC = MKBETAG('S','O','N','C'),
+CODEC_ID_SONIC_LS = MKBETAG('S','O','N','L'),
+CODEC_ID_PAF_AUDIO = MKBETAG('P','A','F','A'),
+CODEC_ID_OPUS = MKBETAG('O','P','U','S'),
- /* subtitle codecs */
- CODEC_ID_FIRST_SUBTITLE = 0x17000, ///< A dummy ID pointing at the start of 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,
- CODEC_ID_MICRODVD = MKBETAG('m','D','V','D'),
- CODEC_ID_EIA_608 = MKBETAG('c','6','0','8'),
- CODEC_ID_JACOSUB = MKBETAG('J','S','U','B'),
- CODEC_ID_SAMI = MKBETAG('S','A','M','I'),
- CODEC_ID_REALTEXT = MKBETAG('R','T','X','T'),
- CODEC_ID_SUBVIEWER = MKBETAG('S','u','b','V'),
+/* subtitle codecs */
+CODEC_ID_FIRST_SUBTITLE = 0x17000, ///< A dummy ID pointing at the start of 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,
+CODEC_ID_MICRODVD = MKBETAG('m','D','V','D'),
+CODEC_ID_EIA_608 = MKBETAG('c','6','0','8'),
+CODEC_ID_JACOSUB = MKBETAG('J','S','U','B'),
+CODEC_ID_SAMI = MKBETAG('S','A','M','I'),
+CODEC_ID_REALTEXT = MKBETAG('R','T','X','T'),
+CODEC_ID_SUBVIEWER = MKBETAG('S','u','b','V'),
- /* other specific kind of codecs (generally used for attachments) */
- CODEC_ID_FIRST_UNKNOWN = 0x18000, ///< A dummy ID pointing at the start of various fake codecs.
- CODEC_ID_TTF = 0x18000,
- CODEC_ID_BINTEXT = MKBETAG('B','T','X','T'),
- CODEC_ID_XBIN = MKBETAG('X','B','I','N'),
- CODEC_ID_IDF = MKBETAG( 0 ,'I','D','F'),
- CODEC_ID_OTF = MKBETAG( 0 ,'O','T','F'),
+/* other specific kind of codecs (generally used for attachments) */
+CODEC_ID_FIRST_UNKNOWN = 0x18000, ///< A dummy ID pointing at the start of various fake codecs.
+CODEC_ID_TTF = 0x18000,
+CODEC_ID_BINTEXT = MKBETAG('B','T','X','T'),
+CODEC_ID_XBIN = MKBETAG('X','B','I','N'),
+CODEC_ID_IDF = MKBETAG( 0 ,'I','D','F'),
+CODEC_ID_OTF = MKBETAG( 0 ,'O','T','F'),
- CODEC_ID_PROBE = 0x19000, ///< codec_id is not known (like CODEC_ID_NONE) but lavf should attempt to identify it
+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
+CODEC_ID_MPEG2TS = 0x20000, /**< _FAKE_ codec to indicate a raw MPEG-2 TS
* stream (only used by libavformat) */
- CODEC_ID_MPEG4SYSTEMS = 0x20001, /**< _FAKE_ codec to indicate a MPEG-4 Systems
+ CODEC_ID_MPEG4SYSTEMS = 0x20001, /**< _FAKE_ codec to indicate a MPEG-4 Systems
* stream (only used by libavformat) */
- CODEC_ID_FFMETADATA = 0x21000, ///< Dummy codec for streams containing only metadata information.
+ CODEC_ID_FFMETADATA = 0x21000, ///< Dummy codec for streams containing only metadata information.
#endif /* AVCODEC_OLD_CODEC_IDS_H */
diff --git a/thirdparties/iphone/include/libavcodec/opt.h b/thirdparties/iphone/include/libavcodec/opt.h
index 9f0da72..5e58351 100755
--- a/thirdparties/iphone/include/libavcodec/opt.h
+++ b/thirdparties/iphone/include/libavcodec/opt.h
@@ -30,7 +30,7 @@
#include "libavutil/rational.h"
#include "avcodec.h"
-enum AVOptionType{
+enum AVOptionType {
FF_OPT_TYPE_FLAGS,
FF_OPT_TYPE_INT,
FF_OPT_TYPE_INT64,
@@ -119,14 +119,14 @@ typedef struct AVOption2 {
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
-*/
+ /*
+ #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
/**
diff --git a/thirdparties/iphone/include/libavcodec/xvmc.h b/thirdparties/iphone/include/libavcodec/xvmc.h
index b2bf518..373d9aa 100755
--- a/thirdparties/iphone/include/libavcodec/xvmc.h
+++ b/thirdparties/iphone/include/libavcodec/xvmc.h
@@ -101,8 +101,8 @@ struct xvmc_pix_fmt {
*/
XvMCSurface* p_surface;
-/** Set by the decoder before calling ff_draw_horiz_band(),
- needed by the XvMCRenderSurface function. */
+ /** 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
diff --git a/thirdparties/iphone/include/libavfilter/avcodec.h b/thirdparties/iphone/include/libavfilter/avcodec.h
index 5f4209a..8dee966 100755
--- a/thirdparties/iphone/include/libavfilter/avcodec.h
+++ b/thirdparties/iphone/include/libavfilter/avcodec.h
@@ -63,7 +63,7 @@ AVFilterBufferRef *avfilter_get_video_buffer_ref_from_frame(const AVFrame *frame
* @param perms permissions to assign to the new buffer reference
*/
AVFilterBufferRef *avfilter_get_audio_buffer_ref_from_frame(const AVFrame *frame,
- int perms);
+ int perms);
/**
* Create and return a buffer reference from the data and properties
@@ -72,8 +72,8 @@ AVFilterBufferRef *avfilter_get_audio_buffer_ref_from_frame(const AVFrame *frame
* @param perms permissions to assign to the new buffer reference
*/
AVFilterBufferRef *avfilter_get_buffer_ref_from_frame(enum AVMediaType type,
- const AVFrame *frame,
- int perms);
+ const AVFrame *frame,
+ int perms);
#ifdef FF_API_FILL_FRAME
/**
@@ -87,7 +87,7 @@ AVFilterBufferRef *avfilter_get_buffer_ref_from_frame(enum AVMediaType type,
*/
attribute_deprecated
int avfilter_fill_frame_from_audio_buffer_ref(AVFrame *frame,
- const AVFilterBufferRef *samplesref);
+ const AVFilterBufferRef *samplesref);
/**
* Fill an AVFrame with the information stored in picref.
@@ -100,7 +100,7 @@ int avfilter_fill_frame_from_audio_buffer_ref(AVFrame *frame,
*/
attribute_deprecated
int avfilter_fill_frame_from_video_buffer_ref(AVFrame *frame,
- const AVFilterBufferRef *picref);
+ const AVFilterBufferRef *picref);
/**
* Fill an AVFrame with information stored in ref.
diff --git a/thirdparties/iphone/include/libavfilter/avfilter.h b/thirdparties/iphone/include/libavfilter/avfilter.h
index d66bc00..29aa562 100755
--- a/thirdparties/iphone/include/libavfilter/avfilter.h
+++ b/thirdparties/iphone/include/libavfilter/avfilter.h
@@ -753,7 +753,7 @@ int avfilter_config_links(AVFilterContext *filter);
*/
AVFilterBufferRef *
avfilter_get_video_buffer_ref_from_arrays(uint8_t * const data[4], const int linesize[4], int perms,
- int w, int h, enum PixelFormat format);
+ int w, int h, enum PixelFormat format);
/**
* Create an audio buffer reference wrapped around an already
@@ -767,11 +767,11 @@ avfilter_get_video_buffer_ref_from_arrays(uint8_t * const data[4], const int lin
* @param channel_layout the channel layout of the buffer
*/
AVFilterBufferRef *avfilter_get_audio_buffer_ref_from_arrays(uint8_t **data,
- int linesize,
- int perms,
- int nb_samples,
- enum AVSampleFormat sample_fmt,
- uint64_t channel_layout);
+ int linesize,
+ int perms,
+ int nb_samples,
+ enum AVSampleFormat sample_fmt,
+ uint64_t channel_layout);
#define AVFILTER_CMD_FLAG_ONE 1 ///< Stop once a filter understood the command (for target=all for example), fast filters are favored automatically
diff --git a/thirdparties/iphone/include/libavformat/avformat.h b/thirdparties/iphone/include/libavformat/avformat.h
index f7779e7..3245b22 100755
--- a/thirdparties/iphone/include/libavformat/avformat.h
+++ b/thirdparties/iphone/include/libavformat/avformat.h
@@ -360,9 +360,9 @@ typedef struct AVProbeData {
#else
#define AVFMT_TS_NONSTRICT 0x20000
#endif
- /**< Format does not require strictly
- increasing timestamps, but they must
- still be monotonic */
+/**< Format does not require strictly
+ increasing timestamps, but they must
+ still be monotonic */
#define AVFMT_SEEK_TO_PTS 0x4000000 /**< Seeking is based on PTS */
@@ -1311,7 +1311,7 @@ AVProgram *av_new_program(AVFormatContext *s, int id);
#if FF_API_PKT_DUMP
attribute_deprecated void av_pkt_dump(FILE *f, AVPacket *pkt, int dump_payload);
attribute_deprecated void av_pkt_dump_log(void *avcl, int level, AVPacket *pkt,
- int dump_payload);
+ int dump_payload);
#endif
#if FF_API_ALLOC_OUTPUT_CONTEXT
@@ -1320,8 +1320,8 @@ attribute_deprecated void av_pkt_dump_log(void *avcl, int level, AVPacket *pkt,
*/
attribute_deprecated
AVFormatContext *avformat_alloc_output_context(const char *format,
- AVOutputFormat *oformat,
- const char *filename);
+ AVOutputFormat *oformat,
+ const char *filename);
#endif
/**
@@ -1768,8 +1768,8 @@ AVOutputFormat *av_guess_format(const char *short_name,
* Guess the codec ID based upon muxer and filename.
*/
enum AVCodecID av_guess_codec(AVOutputFormat *fmt, const char *short_name,
- const char *filename, const char *mime_type,
- enum AVMediaType type);
+ const char *filename, const char *mime_type,
+ enum AVMediaType type);
/**
* Get timing information for the data currently output.
diff --git a/thirdparties/iphone/include/libavformat/avio.h b/thirdparties/iphone/include/libavformat/avio.h
index b16d26f..e298363 100755
--- a/thirdparties/iphone/include/libavformat/avio.h
+++ b/thirdparties/iphone/include/libavformat/avio.h
@@ -120,26 +120,26 @@ typedef struct AVIOContext {
* max filesize, used to limit allocations
* This field is internal to libavformat and access from outside is not allowed.
*/
- int64_t maxsize;
+ int64_t maxsize;
- /**
- * avio_read and avio_write should if possible be satisfied directly
- * instead of going through a buffer, and avio_seek will always
- * call the underlying seek function directly.
- */
- int direct;
+ /**
+ * avio_read and avio_write should if possible be satisfied directly
+ * instead of going through a buffer, and avio_seek will always
+ * call the underlying seek function directly.
+ */
+ int direct;
/**
* Bytes read statistic
* This field is internal to libavformat and access from outside is not allowed.
*/
- int64_t bytes_read;
+ int64_t bytes_read;
/**
* seek statistic
* This field is internal to libavformat and access from outside is not allowed.
*/
- int seek_count;
+ int seek_count;
} AVIOContext;
/* unbuffered I/O */
@@ -177,13 +177,13 @@ int avio_check(const char *url, int flags);
* @return Allocated AVIOContext or NULL on failure.
*/
AVIOContext *avio_alloc_context(
- unsigned char *buffer,
- int buffer_size,
- int write_flag,
- void *opaque,
- int (*read_packet)(void *opaque, uint8_t *buf, int buf_size),
- int (*write_packet)(void *opaque, uint8_t *buf, int buf_size),
- int64_t (*seek)(void *opaque, int64_t offset, int whence));
+ unsigned char *buffer,
+ int buffer_size,
+ int write_flag,
+ void *opaque,
+ int (*read_packet)(void *opaque, uint8_t *buf, int buf_size),
+ int (*write_packet)(void *opaque, uint8_t *buf, int buf_size),
+ int64_t (*seek)(void *opaque, int64_t offset, int whence));
void avio_w8(AVIOContext *s, int b);
void avio_write(AVIOContext *s, const unsigned char *buf, int size);
diff --git a/thirdparties/iphone/include/libavutil/avstring.h b/thirdparties/iphone/include/libavutil/avstring.h
index f73d6e7..30b8dc5 100755
--- a/thirdparties/iphone/include/libavutil/avstring.h
+++ b/thirdparties/iphone/include/libavutil/avstring.h
@@ -175,8 +175,9 @@ char *av_strtok(char *s, const char *delim, char **saveptr);
*/
static inline int av_toupper(int c)
{
- if (c >= 'a' && c <= 'z')
+ if (c >= 'a' && c <= 'z') {
c ^= 0x20;
+ }
return c;
}
@@ -185,8 +186,9 @@ static inline int av_toupper(int c)
*/
static inline int av_tolower(int c)
{
- if (c >= 'A' && c <= 'Z')
+ if (c >= 'A' && c <= 'Z') {
c ^= 0x20;
+ }
return c;
}
diff --git a/thirdparties/iphone/include/libavutil/base64.h b/thirdparties/iphone/include/libavutil/base64.h
index b095576..d262295 100755
--- a/thirdparties/iphone/include/libavutil/base64.h
+++ b/thirdparties/iphone/include/libavutil/base64.h
@@ -58,8 +58,8 @@ char *av_base64_encode(char *out, int out_size, const uint8_t *in, int in_size);
*/
#define AV_BASE64_SIZE(x) (((x)+2) / 3 * 4 + 1)
- /**
- * @}
- */
+/**
+ * @}
+ */
#endif /* AVUTIL_BASE64_H */
diff --git a/thirdparties/iphone/include/libavutil/bprint.h b/thirdparties/iphone/include/libavutil/bprint.h
index 2bef18d..db7a6d3 100755
--- a/thirdparties/iphone/include/libavutil/bprint.h
+++ b/thirdparties/iphone/include/libavutil/bprint.h
@@ -73,12 +73,12 @@
*/
typedef struct AVBPrint {
FF_PAD_STRUCTURE(1024,
- char *str; /** string so far */
- unsigned len; /** length so far */
- unsigned size; /** allocated memory */
- unsigned size_max; /** maximum allocated memory */
- char reserved_internal_buffer[1];
- )
+ char *str; /** string so far */
+ unsigned len; /** length so far */
+ unsigned size; /** allocated memory */
+ unsigned size_max; /** maximum allocated memory */
+ char reserved_internal_buffer[1];
+ )
} AVBPrint;
/**
diff --git a/thirdparties/iphone/include/libavutil/common.h b/thirdparties/iphone/include/libavutil/common.h
index 3e3baab..b7ab0e9 100755
--- a/thirdparties/iphone/include/libavutil/common.h
+++ b/thirdparties/iphone/include/libavutil/common.h
@@ -114,9 +114,15 @@ static av_always_inline av_const int av_log2_16bit_c(unsigned int v)
*/
static av_always_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;
+ if (a < amin) {
+ return amin;
+ }
+ else if (a > amax) {
+ return amax;
+ }
+ else {
+ return a;
+ }
}
/**
@@ -126,8 +132,12 @@ static av_always_inline av_const int av_clip_c(int a, int amin, int amax)
*/
static av_always_inline av_const uint8_t av_clip_uint8_c(int a)
{
- if (a&(~0xFF)) return (-a)>>31;
- else return a;
+ if (a&(~0xFF)) {
+ return (-a)>>31;
+ }
+ else {
+ return a;
+ }
}
/**
@@ -137,8 +147,12 @@ static av_always_inline av_const uint8_t av_clip_uint8_c(int a)
*/
static av_always_inline av_const int8_t av_clip_int8_c(int a)
{
- if ((a+0x80) & ~0xFF) return (a>>31) ^ 0x7F;
- else return a;
+ if ((a+0x80) & ~0xFF) {
+ return (a>>31) ^ 0x7F;
+ }
+ else {
+ return a;
+ }
}
/**
@@ -148,8 +162,12 @@ static av_always_inline av_const int8_t av_clip_int8_c(int a)
*/
static av_always_inline av_const uint16_t av_clip_uint16_c(int a)
{
- if (a&(~0xFFFF)) return (-a)>>31;
- else return a;
+ if (a&(~0xFFFF)) {
+ return (-a)>>31;
+ }
+ else {
+ return a;
+ }
}
/**
@@ -159,8 +177,12 @@ static av_always_inline av_const uint16_t av_clip_uint16_c(int a)
*/
static av_always_inline av_const int16_t av_clip_int16_c(int a)
{
- if ((a+0x8000) & ~0xFFFF) return (a>>31) ^ 0x7FFF;
- else return a;
+ if ((a+0x8000) & ~0xFFFF) {
+ return (a>>31) ^ 0x7FFF;
+ }
+ else {
+ return a;
+ }
}
/**
@@ -170,8 +192,12 @@ static av_always_inline av_const int16_t av_clip_int16_c(int a)
*/
static av_always_inline av_const int32_t av_clipl_int32_c(int64_t a)
{
- if ((a+0x80000000u) & ~UINT64_C(0xFFFFFFFF)) return (a>>63) ^ 0x7FFFFFFF;
- else return (int32_t)a;
+ if ((a+0x80000000u) & ~UINT64_C(0xFFFFFFFF)) {
+ return (a>>63) ^ 0x7FFFFFFF;
+ }
+ else {
+ return (int32_t)a;
+ }
}
/**
@@ -182,8 +208,12 @@ static av_always_inline av_const int32_t av_clipl_int32_c(int64_t a)
*/
static av_always_inline av_const unsigned av_clip_uintp2_c(int a, int p)
{
- if (a & ~((1<<p) - 1)) return -a >> 31 & ((1<<p) - 1);
- else return a;
+ if (a & ~((1<<p) - 1)) {
+ return -a >> 31 & ((1<<p) - 1);
+ }
+ else {
+ return a;
+ }
}
/**
@@ -219,9 +249,15 @@ static av_always_inline int av_sat_dadd32_c(int a, int b)
*/
static av_always_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;
+ if (a < amin) {
+ return amin;
+ }
+ else if (a > amax) {
+ return amax;
+ }
+ else {
+ return a;
+ }
}
/** Compute ceil(log2(x)).
@@ -306,7 +342,7 @@ static av_always_inline av_const int av_popcount64_c(uint64_t x)
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).
@@ -370,7 +406,7 @@ static av_always_inline av_const int av_popcount64_c(uint64_t x)
PUT_16BIT\
}\
}\
-
+
#include "mem.h"
diff --git a/thirdparties/iphone/include/libavutil/cpu.h b/thirdparties/iphone/include/libavutil/cpu.h
index de15ee3..30b3d89 100755
--- a/thirdparties/iphone/include/libavutil/cpu.h
+++ b/thirdparties/iphone/include/libavutil/cpu.h
@@ -25,7 +25,7 @@
#define AV_CPU_FLAG_FORCE 0x80000000 /* force usage of selected flags (OR) */
- /* lower 16 bits - CPU features */
+/* lower 16 bits - CPU features */
#define AV_CPU_FLAG_MMX 0x0001 ///< standard MMX
#define AV_CPU_FLAG_MMXEXT 0x0002 ///< SSE integer functions or AMD MMX ext
#define AV_CPU_FLAG_MMX2 0x0002 ///< SSE integer functions or AMD MMX ext
diff --git a/thirdparties/iphone/include/libavutil/crc.h b/thirdparties/iphone/include/libavutil/crc.h
index 1265054..5e04de6 100755
--- a/thirdparties/iphone/include/libavutil/crc.h
+++ b/thirdparties/iphone/include/libavutil/crc.h
@@ -34,7 +34,7 @@ typedef enum {
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;
+} 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);
diff --git a/thirdparties/iphone/include/libavutil/fifo.h b/thirdparties/iphone/include/libavutil/fifo.h
index ff66c95..eba8941 100755
--- a/thirdparties/iphone/include/libavutil/fifo.h
+++ b/thirdparties/iphone/include/libavutil/fifo.h
@@ -134,10 +134,12 @@ void av_fifo_drain(AVFifoBuffer *f, int size);
static inline uint8_t *av_fifo_peek2(const AVFifoBuffer *f, int offs)
{
uint8_t *ptr = f->rptr + offs;
- if (ptr >= f->end)
+ if (ptr >= f->end) {
ptr = f->buffer + (ptr - f->end);
- else if (ptr < f->buffer)
+ }
+ else if (ptr < f->buffer) {
ptr = f->end - (f->buffer - ptr);
+ }
return ptr;
}
diff --git a/thirdparties/iphone/include/libavutil/intreadwrite.h b/thirdparties/iphone/include/libavutil/intreadwrite.h
index 7c68ead..cf0e3f8 100755
--- a/thirdparties/iphone/include/libavutil/intreadwrite.h
+++ b/thirdparties/iphone/include/libavutil/intreadwrite.h
@@ -185,9 +185,15 @@ typedef union {
#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;
+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))
diff --git a/thirdparties/iphone/include/libavutil/lfg.h b/thirdparties/iphone/include/libavutil/lfg.h
index 854ffce..8b4dfd5 100755
--- a/thirdparties/iphone/include/libavutil/lfg.h
+++ b/thirdparties/iphone/include/libavutil/lfg.h
@@ -35,7 +35,8 @@ void av_lfg_init(AVLFG *c, unsigned int seed);
* 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){
+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];
}
@@ -45,7 +46,8 @@ static inline unsigned int av_lfg_get(AVLFG *c){
*
* Please also consider av_lfg_get() above, it is faster.
*/
-static inline unsigned int av_mlfg_get(AVLFG *c){
+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;
diff --git a/thirdparties/iphone/include/libavutil/log.h b/thirdparties/iphone/include/libavutil/log.h
index ba7315f..303a863 100755
--- a/thirdparties/iphone/include/libavutil/log.h
+++ b/thirdparties/iphone/include/libavutil/log.h
@@ -38,7 +38,7 @@ typedef enum {
AV_CLASS_CATEGORY_SWSCALER,
AV_CLASS_CATEGORY_SWRESAMPLER,
AV_CLASS_CATEGORY_NB, ///< not part of ABI/API
-}AVClassCategory;
+} AVClassCategory;
/**
* Describe the class of an AVClass context structure. That is an
diff --git a/thirdparties/iphone/include/libavutil/mem.h b/thirdparties/iphone/include/libavutil/mem.h
index 212dbf1..fefe6fa 100755
--- a/thirdparties/iphone/include/libavutil/mem.h
+++ b/thirdparties/iphone/include/libavutil/mem.h
@@ -39,36 +39,36 @@
#if defined(__INTEL_COMPILER) && __INTEL_COMPILER < 1110 || 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
+#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) \
+#define DECLARE_ALIGNED(n,t,v) \
AV_PRAGMA(DATA_ALIGN(v,n)) \
t __attribute__((aligned(n))) v
- #define DECLARE_ASM_CONST(n,t,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 av_used __attribute__ ((aligned (n))) v
+#define DECLARE_ALIGNED(n,t,v) t __attribute__ ((aligned (n))) v
+#define DECLARE_ASM_CONST(n,t,v) static const t av_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
+#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
+#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__))
+#define av_malloc_attrib __attribute__((__malloc__))
#else
- #define av_malloc_attrib
+#define av_malloc_attrib
#endif
#if AV_GCC_VERSION_AT_LEAST(4,3)
- #define av_alloc_size(...) __attribute__((alloc_size(__VA_ARGS__)))
+#define av_alloc_size(...) __attribute__((alloc_size(__VA_ARGS__)))
#else
- #define av_alloc_size(...)
+#define av_alloc_size(...)
#endif
/**
@@ -92,8 +92,9 @@ void *av_malloc(size_t size) av_malloc_attrib av_alloc_size(1);
*/
av_alloc_size(1,2) static inline void *av_malloc_array(size_t nmemb, size_t size)
{
- if (size <= 0 || nmemb >= INT_MAX / size)
+ if (size <= 0 || nmemb >= INT_MAX / size) {
return NULL;
+ }
return av_malloc(nmemb * size);
}
@@ -165,8 +166,9 @@ void *av_calloc(size_t nmemb, size_t size) av_malloc_attrib;
*/
av_alloc_size(1,2) static inline void *av_mallocz_array(size_t nmemb, size_t size)
{
- if (size <= 0 || nmemb >= INT_MAX / size)
+ if (size <= 0 || nmemb >= INT_MAX / size) {
return NULL;
+ }
return av_mallocz(nmemb * size);
}
@@ -205,8 +207,9 @@ static inline int av_size_mult(size_t a, size_t b, size_t *r)
size_t t = a * b;
/* Hack inspired from glibc: only try the division if nelem and elsize
* are both greater than sqrt(SIZE_MAX). */
- if ((a | b) >= ((size_t)1 << (sizeof(size_t) * 4)) && a && t / a != b)
+ if ((a | b) >= ((size_t)1 << (sizeof(size_t) * 4)) && a && t / a != b) {
return AVERROR(EINVAL);
+ }
*r = t;
return 0;
}
diff --git a/thirdparties/iphone/include/libavutil/opt.h b/thirdparties/iphone/include/libavutil/opt.h
index 285d854..f3bdae3 100755
--- a/thirdparties/iphone/include/libavutil/opt.h
+++ b/thirdparties/iphone/include/libavutil/opt.h
@@ -215,7 +215,7 @@
* before the file is actually opened.
*/
-enum AVOptionType{
+enum AVOptionType {
AV_OPT_TYPE_FLAGS,
AV_OPT_TYPE_INT,
AV_OPT_TYPE_INT64,
diff --git a/thirdparties/iphone/include/libavutil/pixdesc.h b/thirdparties/iphone/include/libavutil/pixdesc.h
index 1fa916a..851b604 100755
--- a/thirdparties/iphone/include/libavutil/pixdesc.h
+++ b/thirdparties/iphone/include/libavutil/pixdesc.h
@@ -25,7 +25,7 @@
#include <inttypes.h>
#include "pixfmt.h"
-typedef struct AVComponentDescriptor{
+typedef struct AVComponentDescriptor {
uint16_t plane :2; ///< which of the 4 planes contains the component
/**
@@ -41,7 +41,7 @@ typedef struct AVComponentDescriptor{
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;
+} AVComponentDescriptor;
/**
* Descriptor that unambiguously describes how the bits of a pixel are
@@ -52,7 +52,7 @@ typedef struct AVComponentDescriptor{
* and all the YUV variants) AVPixFmtDescriptor just stores how values
* are stored not what these values represent.
*/
-typedef struct AVPixFmtDescriptor{
+typedef struct AVPixFmtDescriptor {
const char *name;
uint8_t nb_components; ///< The number of components each pixel has, (1-4)
@@ -84,7 +84,7 @@ typedef struct AVPixFmtDescriptor{
* otherwise 0 is luma, 1 is chroma-U and 2 is chroma-V.
*/
AVComponentDescriptor comp[4];
-}AVPixFmtDescriptor;
+} 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.
diff --git a/thirdparties/iphone/include/libavutil/rational.h b/thirdparties/iphone/include/libavutil/rational.h
index 417e29e..84ce7a0 100755
--- a/thirdparties/iphone/include/libavutil/rational.h
+++ b/thirdparties/iphone/include/libavutil/rational.h
@@ -40,7 +40,7 @@
/**
* rational number numerator/denominator
*/
-typedef struct AVRational{
+typedef struct AVRational {
int num; ///< numerator
int den; ///< denominator
} AVRational;
@@ -52,13 +52,22 @@ typedef struct AVRational{
* @return 0 if a==b, 1 if a>b, -1 if a<b, and INT_MIN if one of the
* values is of the form 0/0
*/
-static inline int av_cmp_q(AVRational a, AVRational 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 ^ a.den ^ b.den)>>63)|1;
- else if(b.den && a.den) return 0;
- else if(a.num && b.num) return (a.num>>31) - (b.num>>31);
- else return INT_MIN;
+ if(tmp) {
+ return ((tmp ^ a.den ^ b.den)>>63)|1;
+ }
+ else if(b.den && a.den) {
+ return 0;
+ }
+ else if(a.num && b.num) {
+ return (a.num>>31) - (b.num>>31);
+ }
+ else {
+ return INT_MIN;
+ }
}
/**
@@ -66,7 +75,8 @@ static inline int av_cmp_q(AVRational a, AVRational b){
* @param a rational to convert
* @return (double) a
*/
-static inline double av_q2d(AVRational a){
+static inline double av_q2d(AVRational a)
+{
return a.num / (double) a.den;
}
diff --git a/thirdparties/iphone/include/libavutil/timestamp.h b/thirdparties/iphone/include/libavutil/timestamp.h
index c7348d8..6b46998 100755
--- a/thirdparties/iphone/include/libavutil/timestamp.h
+++ b/thirdparties/iphone/include/libavutil/timestamp.h
@@ -38,8 +38,12 @@
*/
static inline char *av_ts_make_string(char *buf, int64_t ts)
{
- if (ts == AV_NOPTS_VALUE) snprintf(buf, AV_TS_MAX_STRING_SIZE, "NOPTS");
- else snprintf(buf, AV_TS_MAX_STRING_SIZE, "%"PRId64"", ts);
+ if (ts == AV_NOPTS_VALUE) {
+ snprintf(buf, AV_TS_MAX_STRING_SIZE, "NOPTS");
+ }
+ else {
+ snprintf(buf, AV_TS_MAX_STRING_SIZE, "%"PRId64"", ts);
+ }
return buf;
}
@@ -60,8 +64,12 @@ static inline char *av_ts_make_string(char *buf, int64_t ts)
*/
static inline char *av_ts_make_time_string(char *buf, int64_t ts, AVRational *tb)
{
- if (ts == AV_NOPTS_VALUE) snprintf(buf, AV_TS_MAX_STRING_SIZE, "NOPTS");
- else snprintf(buf, AV_TS_MAX_STRING_SIZE, "%.6g", av_q2d(*tb) * ts);
+ if (ts == AV_NOPTS_VALUE) {
+ snprintf(buf, AV_TS_MAX_STRING_SIZE, "NOPTS");
+ }
+ else {
+ snprintf(buf, AV_TS_MAX_STRING_SIZE, "%.6g", av_q2d(*tb) * ts);
+ }
return buf;
}
diff --git a/thirdparties/iphone/include/libswresample/swresample.h b/thirdparties/iphone/include/libswresample/swresample.h
index ac87207..cf73401 100755
--- a/thirdparties/iphone/include/libswresample/swresample.h
+++ b/thirdparties/iphone/include/libswresample/swresample.h
@@ -137,7 +137,7 @@ void swr_free(struct SwrContext **s);
* @return number of samples output per channel, negative value on error
*/
int swr_convert(struct SwrContext *s, uint8_t **out, int out_count,
- const uint8_t **in , int in_count);
+ const uint8_t **in , int in_count);
/**
* Convert the next timestamp from input to output
diff --git a/thirdparties/iphone/include/libyuv/libyuv/compare.h b/thirdparties/iphone/include/libyuv/libyuv/compare.h
index 5dfac7c..8463a4c 100755
--- a/thirdparties/iphone/include/libyuv/libyuv/compare.h
+++ b/thirdparties/iphone/include/libyuv/libyuv/compare.h
@@ -14,7 +14,8 @@
#include "libyuv/basic_types.h"
#ifdef __cplusplus
-namespace libyuv {
+namespace libyuv
+{
extern "C" {
#endif
diff --git a/thirdparties/iphone/include/libyuv/libyuv/convert.h b/thirdparties/iphone/include/libyuv/libyuv/convert.h
index 1bd45c8..e447d64 100755
--- a/thirdparties/iphone/include/libyuv/libyuv/convert.h
+++ b/thirdparties/iphone/include/libyuv/libyuv/convert.h
@@ -18,7 +18,8 @@
#include "libyuv/rotate.h"
#ifdef __cplusplus
-namespace libyuv {
+namespace libyuv
+{
extern "C" {
#endif
diff --git a/thirdparties/iphone/include/libyuv/libyuv/convert_argb.h b/thirdparties/iphone/include/libyuv/libyuv/convert_argb.h
index a18014c..eaa14bc 100755
--- a/thirdparties/iphone/include/libyuv/libyuv/convert_argb.h
+++ b/thirdparties/iphone/include/libyuv/libyuv/convert_argb.h
@@ -24,7 +24,8 @@
// TODO(fbarchard): Some of these functions lack parameter setting.
#ifdef __cplusplus
-namespace libyuv {
+namespace libyuv
+{
extern "C" {
#endif
diff --git a/thirdparties/iphone/include/libyuv/libyuv/convert_from.h b/thirdparties/iphone/include/libyuv/libyuv/convert_from.h
index b1cf57f..a9c9cdb 100755
--- a/thirdparties/iphone/include/libyuv/libyuv/convert_from.h
+++ b/thirdparties/iphone/include/libyuv/libyuv/convert_from.h
@@ -15,7 +15,8 @@
#include "libyuv/rotate.h"
#ifdef __cplusplus
-namespace libyuv {
+namespace libyuv
+{
extern "C" {
#endif
diff --git a/thirdparties/iphone/include/libyuv/libyuv/convert_from_argb.h b/thirdparties/iphone/include/libyuv/libyuv/convert_from_argb.h
index 90f43af..a08bb1d 100755
--- a/thirdparties/iphone/include/libyuv/libyuv/convert_from_argb.h
+++ b/thirdparties/iphone/include/libyuv/libyuv/convert_from_argb.h
@@ -14,7 +14,8 @@
#include "libyuv/basic_types.h"
#ifdef __cplusplus
-namespace libyuv {
+namespace libyuv
+{
extern "C" {
#endif
diff --git a/thirdparties/iphone/include/libyuv/libyuv/cpu_id.h b/thirdparties/iphone/include/libyuv/libyuv/cpu_id.h
index dc858a8..d36213c 100755
--- a/thirdparties/iphone/include/libyuv/libyuv/cpu_id.h
+++ b/thirdparties/iphone/include/libyuv/libyuv/cpu_id.h
@@ -14,7 +14,8 @@
#include "libyuv/basic_types.h"
#ifdef __cplusplus
-namespace libyuv {
+namespace libyuv
+{
extern "C" {
#endif
@@ -55,9 +56,10 @@ int ArmCpuCaps(const char* cpuinfo_name);
// Detect CPU has SSE2 etc.
// Test_flag parameter should be one of kCpuHas constants above.
// returns non-zero if instruction set is detected
-static __inline int TestCpuFlag(int test_flag) {
- LIBYUV_API extern int cpu_info_;
- return (cpu_info_ == kCpuInit ? InitCpuFlags() : cpu_info_) & test_flag;
+static __inline int TestCpuFlag(int test_flag)
+{
+ LIBYUV_API extern int cpu_info_;
+ return (cpu_info_ == kCpuInit ? InitCpuFlags() : cpu_info_) & test_flag;
}
// For testing, allow CPU flags to be disabled.
diff --git a/thirdparties/iphone/include/libyuv/libyuv/format_conversion.h b/thirdparties/iphone/include/libyuv/libyuv/format_conversion.h
index b18bf05..8cf6e4b 100755
--- a/thirdparties/iphone/include/libyuv/libyuv/format_conversion.h
+++ b/thirdparties/iphone/include/libyuv/libyuv/format_conversion.h
@@ -14,7 +14,8 @@
#include "libyuv/basic_types.h"
#ifdef __cplusplus
-namespace libyuv {
+namespace libyuv
+{
extern "C" {
#endif
diff --git a/thirdparties/iphone/include/libyuv/libyuv/mjpeg_decoder.h b/thirdparties/iphone/include/libyuv/libyuv/mjpeg_decoder.h
index 8423121..bb51204 100755
--- a/thirdparties/iphone/include/libyuv/libyuv/mjpeg_decoder.h
+++ b/thirdparties/iphone/include/libyuv/libyuv/mjpeg_decoder.h
@@ -20,7 +20,8 @@ struct jpeg_common_struct;
struct jpeg_decompress_struct;
struct jpeg_source_mgr;
-namespace libyuv {
+namespace libyuv
+{
#ifdef __cplusplus
extern "C" {
@@ -35,23 +36,23 @@ LIBYUV_BOOL ValidateJpeg(const uint8* sample, size_t sample_size);
static const uint32 kUnknownDataSize = 0xFFFFFFFF;
enum JpegSubsamplingType {
- kJpegYuv420,
- kJpegYuv422,
- kJpegYuv411,
- kJpegYuv444,
- kJpegYuv400,
- kJpegUnknown
+ kJpegYuv420,
+ kJpegYuv422,
+ kJpegYuv411,
+ kJpegYuv444,
+ kJpegYuv400,
+ kJpegUnknown
};
struct Buffer {
- const uint8* data;
- int len;
+ const uint8* data;
+ int len;
};
struct BufferVector {
- Buffer* buffers;
- int len;
- int pos;
+ Buffer* buffers;
+ int len;
+ int pos;
};
struct SetJmpErrorMgr;
@@ -63,127 +64,128 @@ struct SetJmpErrorMgr;
// MJPEG frames.
//
// See http://tools.ietf.org/html/rfc2435
-class LIBYUV_API MJpegDecoder {
- public:
- typedef void (*CallbackFunction)(void* opaque,
- const uint8* const* data,
- const int* strides,
- int rows);
+class LIBYUV_API MJpegDecoder
+{
+public:
+ typedef void (*CallbackFunction)(void* opaque,
+ const uint8* const* data,
+ const int* strides,
+ int rows);
- static const int kColorSpaceUnknown;
- static const int kColorSpaceGrayscale;
- static const int kColorSpaceRgb;
- static const int kColorSpaceYCbCr;
- static const int kColorSpaceCMYK;
- static const int kColorSpaceYCCK;
+ static const int kColorSpaceUnknown;
+ static const int kColorSpaceGrayscale;
+ static const int kColorSpaceRgb;
+ static const int kColorSpaceYCbCr;
+ static const int kColorSpaceCMYK;
+ static const int kColorSpaceYCCK;
- MJpegDecoder();
- ~MJpegDecoder();
+ MJpegDecoder();
+ ~MJpegDecoder();
- // Loads a new frame, reads its headers, and determines the uncompressed
- // image format.
- // Returns LIBYUV_TRUE if image looks valid and format is supported.
- // If return value is LIBYUV_TRUE, then the values for all the following
- // getters are populated.
- // src_len is the size of the compressed mjpeg frame in bytes.
- LIBYUV_BOOL LoadFrame(const uint8* src, size_t src_len);
-
- // Returns width of the last loaded frame in pixels.
- int GetWidth();
-
- // Returns height of the last loaded frame in pixels.
- int GetHeight();
-
- // Returns format of the last loaded frame. The return value is one of the
- // kColorSpace* constants.
- int GetColorSpace();
-
- // Number of color components in the color space.
- int GetNumComponents();
-
- // Sample factors of the n-th component.
- int GetHorizSampFactor(int component);
-
- int GetVertSampFactor(int component);
-
- int GetHorizSubSampFactor(int component);
-
- int GetVertSubSampFactor(int component);
-
- // Public for testability.
- int GetImageScanlinesPerImcuRow();
-
- // Public for testability.
- int GetComponentScanlinesPerImcuRow(int component);
-
- // Width of a component in bytes.
- int GetComponentWidth(int component);
-
- // Height of a component.
- int GetComponentHeight(int component);
-
- // Width of a component in bytes with padding for DCTSIZE. Public for testing.
- int GetComponentStride(int component);
-
- // Size of a component in bytes.
- int GetComponentSize(int component);
-
- // Call this after LoadFrame() if you decide you don't want to decode it
- // after all.
- LIBYUV_BOOL UnloadFrame();
-
- // Decodes the entire image into a one-buffer-per-color-component format.
- // dst_width must match exactly. dst_height must be <= to image height; if
- // less, the image is cropped. "planes" must have size equal to at least
- // GetNumComponents() and they must point to non-overlapping buffers of size
- // at least GetComponentSize(i). The pointers in planes are incremented
- // to point to after the end of the written data.
- // TODO(fbarchard): Add dst_x, dst_y to allow specific rect to be decoded.
- LIBYUV_BOOL DecodeToBuffers(uint8** planes, int dst_width, int dst_height);
-
- // Decodes the entire image and passes the data via repeated calls to a
- // callback function. Each call will get the data for a whole number of
- // image scanlines.
- // TODO(fbarchard): Add dst_x, dst_y to allow specific rect to be decoded.
- LIBYUV_BOOL DecodeToCallback(CallbackFunction fn, void* opaque,
- int dst_width, int dst_height);
-
- // The helper function which recognizes the jpeg sub-sampling type.
- static JpegSubsamplingType JpegSubsamplingTypeHelper(
- int* subsample_x, int* subsample_y, int number_of_components);
-
- private:
- void AllocOutputBuffers(int num_outbufs);
- void DestroyOutputBuffers();
-
- LIBYUV_BOOL StartDecode();
- LIBYUV_BOOL FinishDecode();
-
- void SetScanlinePointers(uint8** data);
- LIBYUV_BOOL DecodeImcuRow();
-
- int GetComponentScanlinePadding(int component);
-
- // A buffer holding the input data for a frame.
- Buffer buf_;
- BufferVector buf_vec_;
+ // Loads a new frame, reads its headers, and determines the uncompressed
+ // image format.
+ // Returns LIBYUV_TRUE if image looks valid and format is supported.
+ // If return value is LIBYUV_TRUE, then the values for all the following
+ // getters are populated.
+ // src_len is the size of the compressed mjpeg frame in bytes.
+ LIBYUV_BOOL LoadFrame(const uint8* src, size_t src_len);
+
+ // Returns width of the last loaded frame in pixels.
+ int GetWidth();
+
+ // Returns height of the last loaded frame in pixels.
+ int GetHeight();
+
+ // Returns format of the last loaded frame. The return value is one of the
+ // kColorSpace* constants.
+ int GetColorSpace();
+
+ // Number of color components in the color space.
+ int GetNumComponents();
+
+ // Sample factors of the n-th component.
+ int GetHorizSampFactor(int component);
+
+ int GetVertSampFactor(int component);
+
+ int GetHorizSubSampFactor(int component);
+
+ int GetVertSubSampFactor(int component);
+
+ // Public for testability.
+ int GetImageScanlinesPerImcuRow();
+
+ // Public for testability.
+ int GetComponentScanlinesPerImcuRow(int component);
+
+ // Width of a component in bytes.
+ int GetComponentWidth(int component);
+
+ // Height of a component.
+ int GetComponentHeight(int component);
+
+ // Width of a component in bytes with padding for DCTSIZE. Public for testing.
+ int GetComponentStride(int component);
+
+ // Size of a component in bytes.
+ int GetComponentSize(int component);
+
+ // Call this after LoadFrame() if you decide you don't want to decode it
+ // after all.
+ LIBYUV_BOOL UnloadFrame();
+
+ // Decodes the entire image into a one-buffer-per-color-component format.
+ // dst_width must match exactly. dst_height must be <= to image height; if
+ // less, the image is cropped. "planes" must have size equal to at least
+ // GetNumComponents() and they must point to non-overlapping buffers of size
+ // at least GetComponentSize(i). The pointers in planes are incremented
+ // to point to after the end of the written data.
+ // TODO(fbarchard): Add dst_x, dst_y to allow specific rect to be decoded.
+ LIBYUV_BOOL DecodeToBuffers(uint8** planes, int dst_width, int dst_height);
+
+ // Decodes the entire image and passes the data via repeated calls to a
+ // callback function. Each call will get the data for a whole number of
+ // image scanlines.
+ // TODO(fbarchard): Add dst_x, dst_y to allow specific rect to be decoded.
+ LIBYUV_BOOL DecodeToCallback(CallbackFunction fn, void* opaque,
+ int dst_width, int dst_height);
+
+ // The helper function which recognizes the jpeg sub-sampling type.
+ static JpegSubsamplingType JpegSubsamplingTypeHelper(
+ int* subsample_x, int* subsample_y, int number_of_components);
+
+private:
+ void AllocOutputBuffers(int num_outbufs);
+ void DestroyOutputBuffers();
+
+ LIBYUV_BOOL StartDecode();
+ LIBYUV_BOOL FinishDecode();
+
+ void SetScanlinePointers(uint8** data);
+ LIBYUV_BOOL DecodeImcuRow();
+
+ int GetComponentScanlinePadding(int component);
+
+ // A buffer holding the input data for a frame.
+ Buffer buf_;
+ BufferVector buf_vec_;
- jpeg_decompress_struct* decompress_struct_;
- jpeg_source_mgr* source_mgr_;
- SetJmpErrorMgr* error_mgr_;
+ jpeg_decompress_struct* decompress_struct_;
+ jpeg_source_mgr* source_mgr_;
+ SetJmpErrorMgr* error_mgr_;
- // LIBYUV_TRUE iff at least one component has scanline padding. (i.e.,
- // GetComponentScanlinePadding() != 0.)
- LIBYUV_BOOL has_scanline_padding_;
+ // LIBYUV_TRUE iff at least one component has scanline padding. (i.e.,
+ // GetComponentScanlinePadding() != 0.)
+ LIBYUV_BOOL has_scanline_padding_;
- // Temporaries used to point to scanline outputs.
- int num_outbufs_; // Outermost size of all arrays below.
- uint8*** scanlines_;
- int* scanlines_sizes_;
- // Temporary buffer used for decoding when we can't decode directly to the
- // output buffers. Large enough for just one iMCU row.
- uint8** databuf_;
- int* databuf_strides_;
+ // Temporaries used to point to scanline outputs.
+ int num_outbufs_; // Outermost size of all arrays below.
+ uint8*** scanlines_;
+ int* scanlines_sizes_;
+ // Temporary buffer used for decoding when we can't decode directly to the
+ // output buffers. Large enough for just one iMCU row.
+ uint8** databuf_;
+ int* databuf_strides_;
};
} // namespace libyuv
diff --git a/thirdparties/iphone/include/libyuv/libyuv/planar_functions.h b/thirdparties/iphone/include/libyuv/libyuv/planar_functions.h
index d10a169..da75f3c 100755
--- a/thirdparties/iphone/include/libyuv/libyuv/planar_functions.h
+++ b/thirdparties/iphone/include/libyuv/libyuv/planar_functions.h
@@ -18,7 +18,8 @@
#include "libyuv/convert_argb.h"
#ifdef __cplusplus
-namespace libyuv {
+namespace libyuv
+{
extern "C" {
#endif
diff --git a/thirdparties/iphone/include/libyuv/libyuv/rotate.h b/thirdparties/iphone/include/libyuv/libyuv/rotate.h
index 8af60b8..58bc1c2 100755
--- a/thirdparties/iphone/include/libyuv/libyuv/rotate.h
+++ b/thirdparties/iphone/include/libyuv/libyuv/rotate.h
@@ -14,22 +14,24 @@
#include "libyuv/basic_types.h"
#ifdef __cplusplus
-namespace libyuv {
+namespace libyuv
+{
extern "C" {
#endif
// Supported rotation.
typedef enum RotationMode {
- kRotate0 = 0, // No rotation.
- kRotate90 = 90, // Rotate 90 degrees clockwise.
- kRotate180 = 180, // Rotate 180 degrees.
- kRotate270 = 270, // Rotate 270 degrees clockwise.
-
- // Deprecated.
- kRotateNone = 0,
- kRotateClockwise = 90,
- kRotateCounterClockwise = 270,
-} RotationModeEnum;
+ kRotate0 = 0, // No rotation.
+ kRotate90 = 90, // Rotate 90 degrees clockwise.
+ kRotate180 = 180, // Rotate 180 degrees.
+ kRotate270 = 270, // Rotate 270 degrees clockwise.
+
+ // Deprecated.
+ kRotateNone = 0,
+ kRotateClockwise = 90,
+ kRotateCounterClockwise = 270,
+}
+RotationModeEnum;
// Rotate I420 frame.
LIBYUV_API
diff --git a/thirdparties/iphone/include/libyuv/libyuv/rotate_argb.h b/thirdparties/iphone/include/libyuv/libyuv/rotate_argb.h
index 660ff55..349707c 100755
--- a/thirdparties/iphone/include/libyuv/libyuv/rotate_argb.h
+++ b/thirdparties/iphone/include/libyuv/libyuv/rotate_argb.h
@@ -15,7 +15,8 @@
#include "libyuv/rotate.h" // For RotationMode.
#ifdef __cplusplus
-namespace libyuv {
+namespace libyuv
+{
extern "C" {
#endif
diff --git a/thirdparties/iphone/include/libyuv/libyuv/row.h b/thirdparties/iphone/include/libyuv/libyuv/row.h
index d81deac..97a08ff 100755
--- a/thirdparties/iphone/include/libyuv/libyuv/row.h
+++ b/thirdparties/iphone/include/libyuv/libyuv/row.h
@@ -16,7 +16,8 @@
#include "libyuv/basic_types.h"
#ifdef __cplusplus
-namespace libyuv {
+namespace libyuv
+{
extern "C" {
#endif
@@ -227,7 +228,7 @@ extern "C" {
// TODO(fbarchard): Port AVX2 to inline.
#if !defined(LIBYUV_DISABLE_X86) && defined(HAVE_YASM)
(defined(_M_IX86) || defined(_M_X64) || \
- defined(__x86_64__) || defined(__i386__))
+ defined(__x86_64__) || defined(__i386__))
#define HAS_MERGEUVROW_AVX2
#define HAS_MERGEUVROW_MMX
#define HAS_SPLITUVROW_AVX2
@@ -448,48 +449,48 @@ extern "C" {
#if defined(_MSC_VER) && !defined(__CLR_VER)
#define SIMD_ALIGNED(var) __declspec(align(16)) var
-typedef __declspec(align(16)) int16 vec16[8];
-typedef __declspec(align(16)) int32 vec32[4];
-typedef __declspec(align(16)) int8 vec8[16];
-typedef __declspec(align(16)) uint16 uvec16[8];
-typedef __declspec(align(16)) uint32 uvec32[4];
-typedef __declspec(align(16)) uint8 uvec8[16];
-typedef __declspec(align(32)) int16 lvec16[16];
-typedef __declspec(align(32)) int32 lvec32[8];
-typedef __declspec(align(32)) int8 lvec8[32];
-typedef __declspec(align(32)) uint16 ulvec16[16];
-typedef __declspec(align(32)) uint32 ulvec32[8];
-typedef __declspec(align(32)) uint8 ulvec8[32];
+ typedef __declspec(align(16)) int16 vec16[8];
+ typedef __declspec(align(16)) int32 vec32[4];
+ typedef __declspec(align(16)) int8 vec8[16];
+ typedef __declspec(align(16)) uint16 uvec16[8];
+ typedef __declspec(align(16)) uint32 uvec32[4];
+ typedef __declspec(align(16)) uint8 uvec8[16];
+ typedef __declspec(align(32)) int16 lvec16[16];
+ typedef __declspec(align(32)) int32 lvec32[8];
+ typedef __declspec(align(32)) int8 lvec8[32];
+ typedef __declspec(align(32)) uint16 ulvec16[16];
+ typedef __declspec(align(32)) uint32 ulvec32[8];
+ typedef __declspec(align(32)) uint8 ulvec8[32];
#elif defined(__GNUC__)
// Caveat GCC 4.2 to 4.7 have a known issue using vectors with const.
#define SIMD_ALIGNED(var) var __attribute__((aligned(16)))
-typedef int16 __attribute__((vector_size(16))) vec16;
-typedef int32 __attribute__((vector_size(16))) vec32;
-typedef int8 __attribute__((vector_size(16))) vec8;
-typedef uint16 __attribute__((vector_size(16))) uvec16;
-typedef uint32 __attribute__((vector_size(16))) uvec32;
-typedef uint8 __attribute__((vector_size(16))) uvec8;
-typedef int16 __attribute__((vector_size(32))) lvec16;
-typedef int32 __attribute__((vector_size(32))) lvec32;
-typedef int8 __attribute__((vector_size(32))) lvec8;
-typedef uint16 __attribute__((vector_size(32))) ulvec16;
-typedef uint32 __attribute__((vector_size(32))) ulvec32;
-typedef uint8 __attribute__((vector_size(32))) ulvec8;
+ typedef int16 __attribute__((vector_size(16))) vec16;
+ typedef int32 __attribute__((vector_size(16))) vec32;
+ typedef int8 __attribute__((vector_size(16))) vec8;
+ typedef uint16 __attribute__((vector_size(16))) uvec16;
+ typedef uint32 __attribute__((vector_size(16))) uvec32;
+ typedef uint8 __attribute__((vector_size(16))) uvec8;
+ typedef int16 __attribute__((vector_size(32))) lvec16;
+ typedef int32 __attribute__((vector_size(32))) lvec32;
+ typedef int8 __attribute__((vector_size(32))) lvec8;
+ typedef uint16 __attribute__((vector_size(32))) ulvec16;
+ typedef uint32 __attribute__((vector_size(32))) ulvec32;
+ typedef uint8 __attribute__((vector_size(32))) ulvec8;
#else
#define SIMD_ALIGNED(var) var
-typedef int16 vec16[8];
-typedef int32 vec32[4];
-typedef int8 vec8[16];
-typedef uint16 uvec16[8];
-typedef uint32 uvec32[4];
-typedef uint8 uvec8[16];
-typedef int16 lvec16[16];
-typedef int32 lvec32[8];
-typedef int8 lvec8[32];
-typedef uint16 ulvec16[16];
-typedef uint32 ulvec32[8];
-typedef uint8 ulvec8[32];
+ typedef int16 vec16[8];
+ typedef int32 vec32[4];
+ typedef int8 vec8[16];
+ typedef uint16 uvec16[8];
+ typedef uint32 uvec32[4];
+ typedef uint8 uvec8[16];
+ typedef int16 lvec16[16];
+ typedef int32 lvec32[8];
+ typedef int8 lvec8[32];
+ typedef uint16 ulvec16[16];
+ typedef uint32 ulvec32[8];
+ typedef uint8 ulvec8[32];
#endif
#if defined(__APPLE__) || defined(__x86_64__) || defined(__llvm__)
@@ -560,1180 +561,1180 @@ typedef uint8 ulvec8[32];
#endif
#endif
-void I444ToARGBRow_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I422ToARGBRow_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I411ToARGBRow_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I422ToBGRARow_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_bgra,
- int width);
-void I422ToABGRRow_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_abgr,
- int width);
-void I422ToRGBARow_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_rgba,
- int width);
-void I422ToRGB24Row_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_rgb24,
- int width);
-void I422ToRAWRow_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_raw,
- int width);
-void I422ToRGB565Row_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_rgb565,
- int width);
-void I422ToARGB1555Row_NEON(const uint8* src_y,
+ void I444ToARGBRow_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I422ToARGBRow_NEON(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
- uint8* dst_argb1555,
+ uint8* dst_argb,
int width);
-void I422ToARGB4444Row_NEON(const uint8* src_y,
+ void I411ToARGBRow_NEON(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
- uint8* dst_argb4444,
+ uint8* dst_argb,
+ int width);
+ void I422ToBGRARow_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_bgra,
+ int width);
+ void I422ToABGRRow_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_abgr,
+ int width);
+ void I422ToRGBARow_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_rgba,
+ int width);
+ void I422ToRGB24Row_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_rgb24,
+ int width);
+ void I422ToRAWRow_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_raw,
+ int width);
+ void I422ToRGB565Row_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_rgb565,
+ int width);
+ void I422ToARGB1555Row_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb1555,
+ int width);
+ void I422ToARGB4444Row_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb4444,
+ int width);
+ void NV12ToARGBRow_NEON(const uint8* src_y,
+ const uint8* src_uv,
+ uint8* dst_argb,
+ int width);
+ void NV21ToARGBRow_NEON(const uint8* src_y,
+ const uint8* src_vu,
+ uint8* dst_argb,
+ int width);
+ void NV12ToRGB565Row_NEON(const uint8* src_y,
+ const uint8* src_uv,
+ uint8* dst_rgb565,
+ int width);
+ void NV21ToRGB565Row_NEON(const uint8* src_y,
+ const uint8* src_vu,
+ uint8* dst_rgb565,
+ int width);
+ void YUY2ToARGBRow_NEON(const uint8* src_yuy2,
+ uint8* dst_argb,
+ int width);
+ void UYVYToARGBRow_NEON(const uint8* src_uyvy,
+ uint8* dst_argb,
int width);
-void NV12ToARGBRow_NEON(const uint8* src_y,
- const uint8* src_uv,
- uint8* dst_argb,
- int width);
-void NV21ToARGBRow_NEON(const uint8* src_y,
- const uint8* src_vu,
- uint8* dst_argb,
- int width);
-void NV12ToRGB565Row_NEON(const uint8* src_y,
- const uint8* src_uv,
- uint8* dst_rgb565,
- int width);
-void NV21ToRGB565Row_NEON(const uint8* src_y,
- const uint8* src_vu,
- uint8* dst_rgb565,
- int width);
-void YUY2ToARGBRow_NEON(const uint8* src_yuy2,
- uint8* dst_argb,
- int width);
-void UYVYToARGBRow_NEON(const uint8* src_uyvy,
- uint8* dst_argb,
- int width);
-void ARGBToYRow_AVX2(const uint8* src_argb, uint8* dst_y, int pix);
-void ARGBToYRow_Any_AVX2(const uint8* src_argb, uint8* dst_y, int pix);
-void ARGBToYRow_SSSE3(const uint8* src_argb, uint8* dst_y, int pix);
-void ARGBToYJRow_AVX2(const uint8* src_argb, uint8* dst_y, int pix);
-void ARGBToYJRow_Any_AVX2(const uint8* src_argb, uint8* dst_y, int pix);
-void ARGBToYJRow_SSSE3(const uint8* src_argb, uint8* dst_y, int pix);
-void BGRAToYRow_SSSE3(const uint8* src_bgra, uint8* dst_y, int pix);
-void ABGRToYRow_SSSE3(const uint8* src_abgr, uint8* dst_y, int pix);
-void RGBAToYRow_SSSE3(const uint8* src_rgba, uint8* dst_y, int pix);
-void RGB24ToYRow_SSSE3(const uint8* src_rgb24, uint8* dst_y, int pix);
-void RAWToYRow_SSSE3(const uint8* src_raw, uint8* dst_y, int pix);
-void ARGBToYRow_NEON(const uint8* src_argb, uint8* dst_y, int pix);
-void ARGBToYJRow_NEON(const uint8* src_argb, uint8* dst_y, int pix);
-void ARGBToUV444Row_NEON(const uint8* src_argb, uint8* dst_u, uint8* dst_v,
- int pix);
-void ARGBToUV422Row_NEON(const uint8* src_argb, uint8* dst_u, uint8* dst_v,
- int pix);
-void ARGBToUV411Row_NEON(const uint8* src_argb, uint8* dst_u, uint8* dst_v,
- int pix);
-void ARGBToUVRow_NEON(const uint8* src_argb, int src_stride_argb,
- uint8* dst_u, uint8* dst_v, int pix);
-void ARGBToUVJRow_NEON(const uint8* src_argb, int src_stride_argb,
- uint8* dst_u, uint8* dst_v, int pix);
-void BGRAToUVRow_NEON(const uint8* src_bgra, int src_stride_bgra,
- uint8* dst_u, uint8* dst_v, int pix);
-void ABGRToUVRow_NEON(const uint8* src_abgr, int src_stride_abgr,
- uint8* dst_u, uint8* dst_v, int pix);
-void RGBAToUVRow_NEON(const uint8* src_rgba, int src_stride_rgba,
- uint8* dst_u, uint8* dst_v, int pix);
-void RGB24ToUVRow_NEON(const uint8* src_rgb24, int src_stride_rgb24,
- uint8* dst_u, uint8* dst_v, int pix);
-void RAWToUVRow_NEON(const uint8* src_raw, int src_stride_raw,
- uint8* dst_u, uint8* dst_v, int pix);
-void RGB565ToUVRow_NEON(const uint8* src_rgb565, int src_stride_rgb565,
- uint8* dst_u, uint8* dst_v, int pix);
-void ARGB1555ToUVRow_NEON(const uint8* src_argb1555, int src_stride_argb1555,
- uint8* dst_u, uint8* dst_v, int pix);
-void ARGB4444ToUVRow_NEON(const uint8* src_argb4444, int src_stride_argb4444,
- uint8* dst_u, uint8* dst_v, int pix);
-void BGRAToYRow_NEON(const uint8* src_bgra, uint8* dst_y, int pix);
-void ABGRToYRow_NEON(const uint8* src_abgr, uint8* dst_y, int pix);
-void RGBAToYRow_NEON(const uint8* src_rgba, uint8* dst_y, int pix);
-void RGB24ToYRow_NEON(const uint8* src_rgb24, uint8* dst_y, int pix);
-void RAWToYRow_NEON(const uint8* src_raw, uint8* dst_y, int pix);
-void RGB565ToYRow_NEON(const uint8* src_rgb565, uint8* dst_y, int pix);
-void ARGB1555ToYRow_NEON(const uint8* src_argb1555, uint8* dst_y, int pix);
-void ARGB4444ToYRow_NEON(const uint8* src_argb4444, uint8* dst_y, int pix);
-void ARGBToYRow_C(const uint8* src_argb, uint8* dst_y, int pix);
-void ARGBToYJRow_C(const uint8* src_argb, uint8* dst_y, int pix);
-void BGRAToYRow_C(const uint8* src_bgra, uint8* dst_y, int pix);
-void ABGRToYRow_C(const uint8* src_abgr, uint8* dst_y, int pix);
-void RGBAToYRow_C(const uint8* src_rgba, uint8* dst_y, int pix);
-void RGB24ToYRow_C(const uint8* src_rgb24, uint8* dst_y, int pix);
-void RAWToYRow_C(const uint8* src_raw, uint8* dst_y, int pix);
-void RGB565ToYRow_C(const uint8* src_rgb565, uint8* dst_y, int pix);
-void ARGB1555ToYRow_C(const uint8* src_argb1555, uint8* dst_y, int pix);
-void ARGB4444ToYRow_C(const uint8* src_argb4444, uint8* dst_y, int pix);
-void ARGBToYRow_Any_SSSE3(const uint8* src_argb, uint8* dst_y, int pix);
-void ARGBToYJRow_Any_SSSE3(const uint8* src_argb, uint8* dst_y, int pix);
-void BGRAToYRow_Any_SSSE3(const uint8* src_bgra, uint8* dst_y, int pix);
-void ABGRToYRow_Any_SSSE3(const uint8* src_abgr, uint8* dst_y, int pix);
-void RGBAToYRow_Any_SSSE3(const uint8* src_rgba, uint8* dst_y, int pix);
-void RGB24ToYRow_Any_SSSE3(const uint8* src_rgb24, uint8* dst_y, int pix);
-void RAWToYRow_Any_SSSE3(const uint8* src_raw, uint8* dst_y, int pix);
-void ARGBToYRow_Any_NEON(const uint8* src_argb, uint8* dst_y, int pix);
-void ARGBToYJRow_Any_NEON(const uint8* src_argb, uint8* dst_y, int pix);
-void BGRAToYRow_Any_NEON(const uint8* src_bgra, uint8* dst_y, int pix);
-void ABGRToYRow_Any_NEON(const uint8* src_abgr, uint8* dst_y, int pix);
-void RGBAToYRow_Any_NEON(const uint8* src_rgba, uint8* dst_y, int pix);
-void RGB24ToYRow_Any_NEON(const uint8* src_rgb24, uint8* dst_y, int pix);
-void RAWToYRow_Any_NEON(const uint8* src_raw, uint8* dst_y, int pix);
-void RGB565ToYRow_Any_NEON(const uint8* src_rgb565, uint8* dst_y, int pix);
-void ARGB1555ToYRow_Any_NEON(const uint8* src_argb1555, uint8* dst_y, int pix);
-void ARGB4444ToYRow_Any_NEON(const uint8* src_argb4444, uint8* dst_y, int pix);
-
-void ARGBToUVRow_AVX2(const uint8* src_argb, int src_stride_argb,
- uint8* dst_u, uint8* dst_v, int width);
-void ARGBToUVRow_Any_AVX2(const uint8* src_argb, int src_stride_argb,
- uint8* dst_u, uint8* dst_v, int width);
-void ARGBToUVRow_SSSE3(const uint8* src_argb, int src_stride_argb,
- uint8* dst_u, uint8* dst_v, int width);
-void ARGBToUVJRow_SSSE3(const uint8* src_argb, int src_stride_argb,
- uint8* dst_u, uint8* dst_v, int width);
-void BGRAToUVRow_SSSE3(const uint8* src_bgra, int src_stride_bgra,
- uint8* dst_u, uint8* dst_v, int width);
-void ABGRToUVRow_SSSE3(const uint8* src_abgr, int src_stride_abgr,
- uint8* dst_u, uint8* dst_v, int width);
-void RGBAToUVRow_SSSE3(const uint8* src_rgba, int src_stride_rgba,
- uint8* dst_u, uint8* dst_v, int width);
-void ARGBToUVRow_Any_SSSE3(const uint8* src_argb, int src_stride_argb,
- uint8* dst_u, uint8* dst_v, int width);
-void ARGBToUVJRow_Any_SSSE3(const uint8* src_argb, int src_stride_argb,
- uint8* dst_u, uint8* dst_v, int width);
-void BGRAToUVRow_Any_SSSE3(const uint8* src_bgra, int src_stride_bgra,
- uint8* dst_u, uint8* dst_v, int width);
-void ABGRToUVRow_Any_SSSE3(const uint8* src_abgr, int src_stride_abgr,
- uint8* dst_u, uint8* dst_v, int width);
-void RGBAToUVRow_Any_SSSE3(const uint8* src_rgba, int src_stride_rgba,
- uint8* dst_u, uint8* dst_v, int width);
-void ARGBToUV444Row_Any_NEON(const uint8* src_argb, uint8* dst_u, uint8* dst_v,
+ void ARGBToYRow_AVX2(const uint8* src_argb, uint8* dst_y, int pix);
+ void ARGBToYRow_Any_AVX2(const uint8* src_argb, uint8* dst_y, int pix);
+ void ARGBToYRow_SSSE3(const uint8* src_argb, uint8* dst_y, int pix);
+ void ARGBToYJRow_AVX2(const uint8* src_argb, uint8* dst_y, int pix);
+ void ARGBToYJRow_Any_AVX2(const uint8* src_argb, uint8* dst_y, int pix);
+ void ARGBToYJRow_SSSE3(const uint8* src_argb, uint8* dst_y, int pix);
+ void BGRAToYRow_SSSE3(const uint8* src_bgra, uint8* dst_y, int pix);
+ void ABGRToYRow_SSSE3(const uint8* src_abgr, uint8* dst_y, int pix);
+ void RGBAToYRow_SSSE3(const uint8* src_rgba, uint8* dst_y, int pix);
+ void RGB24ToYRow_SSSE3(const uint8* src_rgb24, uint8* dst_y, int pix);
+ void RAWToYRow_SSSE3(const uint8* src_raw, uint8* dst_y, int pix);
+ void ARGBToYRow_NEON(const uint8* src_argb, uint8* dst_y, int pix);
+ void ARGBToYJRow_NEON(const uint8* src_argb, uint8* dst_y, int pix);
+ void ARGBToUV444Row_NEON(const uint8* src_argb, uint8* dst_u, uint8* dst_v,
int pix);
-void ARGBToUV422Row_Any_NEON(const uint8* src_argb, uint8* dst_u, uint8* dst_v,
+ void ARGBToUV422Row_NEON(const uint8* src_argb, uint8* dst_u, uint8* dst_v,
int pix);
-void ARGBToUV411Row_Any_NEON(const uint8* src_argb, uint8* dst_u, uint8* dst_v,
+ void ARGBToUV411Row_NEON(const uint8* src_argb, uint8* dst_u, uint8* dst_v,
int pix);
-void ARGBToUVRow_Any_NEON(const uint8* src_argb, int src_stride_argb,
+ void ARGBToUVRow_NEON(const uint8* src_argb, int src_stride_argb,
uint8* dst_u, uint8* dst_v, int pix);
-void ARGBToUVJRow_Any_NEON(const uint8* src_argb, int src_stride_argb,
+ void ARGBToUVJRow_NEON(const uint8* src_argb, int src_stride_argb,
uint8* dst_u, uint8* dst_v, int pix);
-void BGRAToUVRow_Any_NEON(const uint8* src_bgra, int src_stride_bgra,
+ void BGRAToUVRow_NEON(const uint8* src_bgra, int src_stride_bgra,
uint8* dst_u, uint8* dst_v, int pix);
-void ABGRToUVRow_Any_NEON(const uint8* src_abgr, int src_stride_abgr,
+ void ABGRToUVRow_NEON(const uint8* src_abgr, int src_stride_abgr,
uint8* dst_u, uint8* dst_v, int pix);
-void RGBAToUVRow_Any_NEON(const uint8* src_rgba, int src_stride_rgba,
+ void RGBAToUVRow_NEON(const uint8* src_rgba, int src_stride_rgba,
uint8* dst_u, uint8* dst_v, int pix);
-void RGB24ToUVRow_Any_NEON(const uint8* src_rgb24, int src_stride_rgb24,
+ void RGB24ToUVRow_NEON(const uint8* src_rgb24, int src_stride_rgb24,
uint8* dst_u, uint8* dst_v, int pix);
-void RAWToUVRow_Any_NEON(const uint8* src_raw, int src_stride_raw,
+ void RAWToUVRow_NEON(const uint8* src_raw, int src_stride_raw,
uint8* dst_u, uint8* dst_v, int pix);
-void RGB565ToUVRow_Any_NEON(const uint8* src_rgb565, int src_stride_rgb565,
+ void RGB565ToUVRow_NEON(const uint8* src_rgb565, int src_stride_rgb565,
uint8* dst_u, uint8* dst_v, int pix);
-void ARGB1555ToUVRow_Any_NEON(const uint8* src_argb1555,
- int src_stride_argb1555,
+ void ARGB1555ToUVRow_NEON(const uint8* src_argb1555, int src_stride_argb1555,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void ARGB4444ToUVRow_NEON(const uint8* src_argb4444, int src_stride_argb4444,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void BGRAToYRow_NEON(const uint8* src_bgra, uint8* dst_y, int pix);
+ void ABGRToYRow_NEON(const uint8* src_abgr, uint8* dst_y, int pix);
+ void RGBAToYRow_NEON(const uint8* src_rgba, uint8* dst_y, int pix);
+ void RGB24ToYRow_NEON(const uint8* src_rgb24, uint8* dst_y, int pix);
+ void RAWToYRow_NEON(const uint8* src_raw, uint8* dst_y, int pix);
+ void RGB565ToYRow_NEON(const uint8* src_rgb565, uint8* dst_y, int pix);
+ void ARGB1555ToYRow_NEON(const uint8* src_argb1555, uint8* dst_y, int pix);
+ void ARGB4444ToYRow_NEON(const uint8* src_argb4444, uint8* dst_y, int pix);
+ void ARGBToYRow_C(const uint8* src_argb, uint8* dst_y, int pix);
+ void ARGBToYJRow_C(const uint8* src_argb, uint8* dst_y, int pix);
+ void BGRAToYRow_C(const uint8* src_bgra, uint8* dst_y, int pix);
+ void ABGRToYRow_C(const uint8* src_abgr, uint8* dst_y, int pix);
+ void RGBAToYRow_C(const uint8* src_rgba, uint8* dst_y, int pix);
+ void RGB24ToYRow_C(const uint8* src_rgb24, uint8* dst_y, int pix);
+ void RAWToYRow_C(const uint8* src_raw, uint8* dst_y, int pix);
+ void RGB565ToYRow_C(const uint8* src_rgb565, uint8* dst_y, int pix);
+ void ARGB1555ToYRow_C(const uint8* src_argb1555, uint8* dst_y, int pix);
+ void ARGB4444ToYRow_C(const uint8* src_argb4444, uint8* dst_y, int pix);
+ void ARGBToYRow_Any_SSSE3(const uint8* src_argb, uint8* dst_y, int pix);
+ void ARGBToYJRow_Any_SSSE3(const uint8* src_argb, uint8* dst_y, int pix);
+ void BGRAToYRow_Any_SSSE3(const uint8* src_bgra, uint8* dst_y, int pix);
+ void ABGRToYRow_Any_SSSE3(const uint8* src_abgr, uint8* dst_y, int pix);
+ void RGBAToYRow_Any_SSSE3(const uint8* src_rgba, uint8* dst_y, int pix);
+ void RGB24ToYRow_Any_SSSE3(const uint8* src_rgb24, uint8* dst_y, int pix);
+ void RAWToYRow_Any_SSSE3(const uint8* src_raw, uint8* dst_y, int pix);
+ void ARGBToYRow_Any_NEON(const uint8* src_argb, uint8* dst_y, int pix);
+ void ARGBToYJRow_Any_NEON(const uint8* src_argb, uint8* dst_y, int pix);
+ void BGRAToYRow_Any_NEON(const uint8* src_bgra, uint8* dst_y, int pix);
+ void ABGRToYRow_Any_NEON(const uint8* src_abgr, uint8* dst_y, int pix);
+ void RGBAToYRow_Any_NEON(const uint8* src_rgba, uint8* dst_y, int pix);
+ void RGB24ToYRow_Any_NEON(const uint8* src_rgb24, uint8* dst_y, int pix);
+ void RAWToYRow_Any_NEON(const uint8* src_raw, uint8* dst_y, int pix);
+ void RGB565ToYRow_Any_NEON(const uint8* src_rgb565, uint8* dst_y, int pix);
+ void ARGB1555ToYRow_Any_NEON(const uint8* src_argb1555, uint8* dst_y, int pix);
+ void ARGB4444ToYRow_Any_NEON(const uint8* src_argb4444, uint8* dst_y, int pix);
+
+ void ARGBToUVRow_AVX2(const uint8* src_argb, int src_stride_argb,
+ uint8* dst_u, uint8* dst_v, int width);
+ void ARGBToUVRow_Any_AVX2(const uint8* src_argb, int src_stride_argb,
+ uint8* dst_u, uint8* dst_v, int width);
+ void ARGBToUVRow_SSSE3(const uint8* src_argb, int src_stride_argb,
+ uint8* dst_u, uint8* dst_v, int width);
+ void ARGBToUVJRow_SSSE3(const uint8* src_argb, int src_stride_argb,
+ uint8* dst_u, uint8* dst_v, int width);
+ void BGRAToUVRow_SSSE3(const uint8* src_bgra, int src_stride_bgra,
+ uint8* dst_u, uint8* dst_v, int width);
+ void ABGRToUVRow_SSSE3(const uint8* src_abgr, int src_stride_abgr,
+ uint8* dst_u, uint8* dst_v, int width);
+ void RGBAToUVRow_SSSE3(const uint8* src_rgba, int src_stride_rgba,
+ uint8* dst_u, uint8* dst_v, int width);
+ void ARGBToUVRow_Any_SSSE3(const uint8* src_argb, int src_stride_argb,
+ uint8* dst_u, uint8* dst_v, int width);
+ void ARGBToUVJRow_Any_SSSE3(const uint8* src_argb, int src_stride_argb,
+ uint8* dst_u, uint8* dst_v, int width);
+ void BGRAToUVRow_Any_SSSE3(const uint8* src_bgra, int src_stride_bgra,
+ uint8* dst_u, uint8* dst_v, int width);
+ void ABGRToUVRow_Any_SSSE3(const uint8* src_abgr, int src_stride_abgr,
+ uint8* dst_u, uint8* dst_v, int width);
+ void RGBAToUVRow_Any_SSSE3(const uint8* src_rgba, int src_stride_rgba,
+ uint8* dst_u, uint8* dst_v, int width);
+ void ARGBToUV444Row_Any_NEON(const uint8* src_argb, uint8* dst_u, uint8* dst_v,
+ int pix);
+ void ARGBToUV422Row_Any_NEON(const uint8* src_argb, uint8* dst_u, uint8* dst_v,
+ int pix);
+ void ARGBToUV411Row_Any_NEON(const uint8* src_argb, uint8* dst_u, uint8* dst_v,
+ int pix);
+ void ARGBToUVRow_Any_NEON(const uint8* src_argb, int src_stride_argb,
uint8* dst_u, uint8* dst_v, int pix);
-void ARGB4444ToUVRow_Any_NEON(const uint8* src_argb4444,
- int src_stride_argb4444,
+ void ARGBToUVJRow_Any_NEON(const uint8* src_argb, int src_stride_argb,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void BGRAToUVRow_Any_NEON(const uint8* src_bgra, int src_stride_bgra,
uint8* dst_u, uint8* dst_v, int pix);
-void ARGBToUVRow_C(const uint8* src_argb, int src_stride_argb,
- uint8* dst_u, uint8* dst_v, int width);
-void ARGBToUVJRow_C(const uint8* src_argb, int src_stride_argb,
- uint8* dst_u, uint8* dst_v, int width);
-void BGRAToUVRow_C(const uint8* src_bgra, int src_stride_bgra,
- uint8* dst_u, uint8* dst_v, int width);
-void ABGRToUVRow_C(const uint8* src_abgr, int src_stride_abgr,
- uint8* dst_u, uint8* dst_v, int width);
-void RGBAToUVRow_C(const uint8* src_rgba, int src_stride_rgba,
- uint8* dst_u, uint8* dst_v, int width);
-void RGB24ToUVRow_C(const uint8* src_rgb24, int src_stride_rgb24,
- uint8* dst_u, uint8* dst_v, int width);
-void RAWToUVRow_C(const uint8* src_raw, int src_stride_raw,
- uint8* dst_u, uint8* dst_v, int width);
-void RGB565ToUVRow_C(const uint8* src_rgb565, int src_stride_rgb565,
- uint8* dst_u, uint8* dst_v, int width);
-void ARGB1555ToUVRow_C(const uint8* src_argb1555, int src_stride_argb1555,
+ void ABGRToUVRow_Any_NEON(const uint8* src_abgr, int src_stride_abgr,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void RGBAToUVRow_Any_NEON(const uint8* src_rgba, int src_stride_rgba,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void RGB24ToUVRow_Any_NEON(const uint8* src_rgb24, int src_stride_rgb24,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void RAWToUVRow_Any_NEON(const uint8* src_raw, int src_stride_raw,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void RGB565ToUVRow_Any_NEON(const uint8* src_rgb565, int src_stride_rgb565,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void ARGB1555ToUVRow_Any_NEON(const uint8* src_argb1555,
+ int src_stride_argb1555,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void ARGB4444ToUVRow_Any_NEON(const uint8* src_argb4444,
+ int src_stride_argb4444,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void ARGBToUVRow_C(const uint8* src_argb, int src_stride_argb,
+ uint8* dst_u, uint8* dst_v, int width);
+ void ARGBToUVJRow_C(const uint8* src_argb, int src_stride_argb,
+ uint8* dst_u, uint8* dst_v, int width);
+ void BGRAToUVRow_C(const uint8* src_bgra, int src_stride_bgra,
+ uint8* dst_u, uint8* dst_v, int width);
+ void ABGRToUVRow_C(const uint8* src_abgr, int src_stride_abgr,
uint8* dst_u, uint8* dst_v, int width);
-void ARGB4444ToUVRow_C(const uint8* src_argb4444, int src_stride_argb4444,
+ void RGBAToUVRow_C(const uint8* src_rgba, int src_stride_rgba,
uint8* dst_u, uint8* dst_v, int width);
+ void RGB24ToUVRow_C(const uint8* src_rgb24, int src_stride_rgb24,
+ uint8* dst_u, uint8* dst_v, int width);
+ void RAWToUVRow_C(const uint8* src_raw, int src_stride_raw,
+ uint8* dst_u, uint8* dst_v, int width);
+ void RGB565ToUVRow_C(const uint8* src_rgb565, int src_stride_rgb565,
+ uint8* dst_u, uint8* dst_v, int width);
+ void ARGB1555ToUVRow_C(const uint8* src_argb1555, int src_stride_argb1555,
+ uint8* dst_u, uint8* dst_v, int width);
+ void ARGB4444ToUVRow_C(const uint8* src_argb4444, int src_stride_argb4444,
+ uint8* dst_u, uint8* dst_v, int width);
-void ARGBToUV444Row_SSSE3(const uint8* src_argb,
- uint8* dst_u, uint8* dst_v, int width);
-void ARGBToUV444Row_Any_SSSE3(const uint8* src_argb,
+ void ARGBToUV444Row_SSSE3(const uint8* src_argb,
uint8* dst_u, uint8* dst_v, int width);
+ void ARGBToUV444Row_Any_SSSE3(const uint8* src_argb,
+ uint8* dst_u, uint8* dst_v, int width);
-void ARGBToUV422Row_SSSE3(const uint8* src_argb,
- uint8* dst_u, uint8* dst_v, int width);
-void ARGBToUV422Row_Any_SSSE3(const uint8* src_argb,
+ void ARGBToUV422Row_SSSE3(const uint8* src_argb,
uint8* dst_u, uint8* dst_v, int width);
+ void ARGBToUV422Row_Any_SSSE3(const uint8* src_argb,
+ uint8* dst_u, uint8* dst_v, int width);
-void ARGBToUV444Row_C(const uint8* src_argb,
- uint8* dst_u, uint8* dst_v, int width);
-void ARGBToUV422Row_C(const uint8* src_argb,
- uint8* dst_u, uint8* dst_v, int width);
-void ARGBToUV411Row_C(const uint8* src_argb,
- uint8* dst_u, uint8* dst_v, int width);
+ void ARGBToUV444Row_C(const uint8* src_argb,
+ uint8* dst_u, uint8* dst_v, int width);
+ void ARGBToUV422Row_C(const uint8* src_argb,
+ uint8* dst_u, uint8* dst_v, int width);
+ void ARGBToUV411Row_C(const uint8* src_argb,
+ uint8* dst_u, uint8* dst_v, int width);
-void MirrorRow_AVX2(const uint8* src, uint8* dst, int width);
-void MirrorRow_SSSE3(const uint8* src, uint8* dst, int width);
-void MirrorRow_SSE2(const uint8* src, uint8* dst, int width);
-void MirrorRow_NEON(const uint8* src, uint8* dst, int width);
-void MirrorRow_MIPS_DSPR2(const uint8* src, uint8* dst, int width);
-void MirrorRow_C(const uint8* src, uint8* dst, int width);
+ void MirrorRow_AVX2(const uint8* src, uint8* dst, int width);
+ void MirrorRow_SSSE3(const uint8* src, uint8* dst, int width);
+ void MirrorRow_SSE2(const uint8* src, uint8* dst, int width);
+ void MirrorRow_NEON(const uint8* src, uint8* dst, int width);
+ void MirrorRow_MIPS_DSPR2(const uint8* src, uint8* dst, int width);
+ void MirrorRow_C(const uint8* src, uint8* dst, int width);
-void MirrorUVRow_SSSE3(const uint8* src_uv, uint8* dst_u, uint8* dst_v,
+ void MirrorUVRow_SSSE3(const uint8* src_uv, uint8* dst_u, uint8* dst_v,
+ int width);
+ void MirrorUVRow_NEON(const uint8* src_uv, uint8* dst_u, uint8* dst_v,
+ int width);
+ void MirrorUVRow_MIPS_DSPR2(const uint8* src_uv, uint8* dst_u, uint8* dst_v,
+ int width);
+ void MirrorUVRow_C(const uint8* src_uv, uint8* dst_u, uint8* dst_v,
int width);
-void MirrorUVRow_NEON(const uint8* src_uv, uint8* dst_u, uint8* dst_v,
- int width);
-void MirrorUVRow_MIPS_DSPR2(const uint8* src_uv, uint8* dst_u, uint8* dst_v,
- int width);
-void MirrorUVRow_C(const uint8* src_uv, uint8* dst_u, uint8* dst_v,
- int width);
-
-void ARGBMirrorRow_AVX2(const uint8* src, uint8* dst, int width);
-void ARGBMirrorRow_SSSE3(const uint8* src, uint8* dst, int width);
-void ARGBMirrorRow_NEON(const uint8* src, uint8* dst, int width);
-void ARGBMirrorRow_C(const uint8* src, uint8* dst, int width);
-
-void SplitUVRow_C(const uint8* src_uv, uint8* dst_u, uint8* dst_v, int pix);
-void SplitUVRow_SSE2(const uint8* src_uv, uint8* dst_u, uint8* dst_v, int pix);
-void SplitUVRow_AVX2(const uint8* src_uv, uint8* dst_u, uint8* dst_v, int pix);
-void SplitUVRow_NEON(const uint8* src_uv, uint8* dst_u, uint8* dst_v, int pix);
-void SplitUVRow_MIPS_DSPR2(const uint8* src_uv, uint8* dst_u, uint8* dst_v,
- int pix);
-void SplitUVRow_Any_SSE2(const uint8* src_uv, uint8* dst_u, uint8* dst_v,
- int pix);
-void SplitUVRow_Any_AVX2(const uint8* src_uv, uint8* dst_u, uint8* dst_v,
- int pix);
-void SplitUVRow_Any_NEON(const uint8* src_uv, uint8* dst_u, uint8* dst_v,
- int pix);
-void SplitUVRow_Any_MIPS_DSPR2(const uint8* src_uv, uint8* dst_u, uint8* dst_v,
+
+ void ARGBMirrorRow_AVX2(const uint8* src, uint8* dst, int width);
+ void ARGBMirrorRow_SSSE3(const uint8* src, uint8* dst, int width);
+ void ARGBMirrorRow_NEON(const uint8* src, uint8* dst, int width);
+ void ARGBMirrorRow_C(const uint8* src, uint8* dst, int width);
+
+ void SplitUVRow_C(const uint8* src_uv, uint8* dst_u, uint8* dst_v, int pix);
+ void SplitUVRow_SSE2(const uint8* src_uv, uint8* dst_u, uint8* dst_v, int pix);
+ void SplitUVRow_AVX2(const uint8* src_uv, uint8* dst_u, uint8* dst_v, int pix);
+ void SplitUVRow_NEON(const uint8* src_uv, uint8* dst_u, uint8* dst_v, int pix);
+ void SplitUVRow_MIPS_DSPR2(const uint8* src_uv, uint8* dst_u, uint8* dst_v,
int pix);
+ void SplitUVRow_Any_SSE2(const uint8* src_uv, uint8* dst_u, uint8* dst_v,
+ int pix);
+ void SplitUVRow_Any_AVX2(const uint8* src_uv, uint8* dst_u, uint8* dst_v,
+ int pix);
+ void SplitUVRow_Any_NEON(const uint8* src_uv, uint8* dst_u, uint8* dst_v,
+ int pix);
+ void SplitUVRow_Any_MIPS_DSPR2(const uint8* src_uv, uint8* dst_u, uint8* dst_v,
+ int pix);
-void MergeUVRow_C(const uint8* src_u, const uint8* src_v, uint8* dst_uv,
- int width);
-void MergeUVRow_SSE2(const uint8* src_u, const uint8* src_v, uint8* dst_uv,
- int width);
-void MergeUVRow_AVX2(const uint8* src_u, const uint8* src_v, uint8* dst_uv,
- int width);
-void MergeUVRow_NEON(const uint8* src_u, const uint8* src_v, uint8* dst_uv,
- int width);
-void MergeUVRow_Any_SSE2(const uint8* src_u, const uint8* src_v, uint8* dst_uv,
+ void MergeUVRow_C(const uint8* src_u, const uint8* src_v, uint8* dst_uv,
+ int width);
+ void MergeUVRow_SSE2(const uint8* src_u, const uint8* src_v, uint8* dst_uv,
int width);
-void MergeUVRow_Any_AVX2(const uint8* src_u, const uint8* src_v, uint8* dst_uv,
+ void MergeUVRow_AVX2(const uint8* src_u, const uint8* src_v, uint8* dst_uv,
int width);
-void MergeUVRow_Any_NEON(const uint8* src_u, const uint8* src_v, uint8* dst_uv,
+ void MergeUVRow_NEON(const uint8* src_u, const uint8* src_v, uint8* dst_uv,
int width);
+ void MergeUVRow_Any_SSE2(const uint8* src_u, const uint8* src_v, uint8* dst_uv,
+ int width);
+ void MergeUVRow_Any_AVX2(const uint8* src_u, const uint8* src_v, uint8* dst_uv,
+ int width);
+ void MergeUVRow_Any_NEON(const uint8* src_u, const uint8* src_v, uint8* dst_uv,
+ int width);
-void CopyRow_SSE2(const uint8* src, uint8* dst, int count);
-void CopyRow_AVX(const uint8* src, uint8* dst, int count);
-void CopyRow_ERMS(const uint8* src, uint8* dst, int count);
-void CopyRow_X86(const uint8* src, uint8* dst, int count);
-void CopyRow_NEON(const uint8* src, uint8* dst, int count);
-void CopyRow_MIPS(const uint8* src, uint8* dst, int count);
-void CopyRow_C(const uint8* src, uint8* dst, int count);
-
-void CopyRow_16_C(const uint16* src, uint16* dst, int count);
-
-void ARGBCopyAlphaRow_C(const uint8* src_argb, uint8* dst_argb, int width);
-void ARGBCopyAlphaRow_SSE2(const uint8* src_argb, uint8* dst_argb, int width);
-void ARGBCopyAlphaRow_AVX2(const uint8* src_argb, uint8* dst_argb, int width);
-
-void ARGBCopyYToAlphaRow_C(const uint8* src_y, uint8* dst_argb, int width);
-void ARGBCopyYToAlphaRow_SSE2(const uint8* src_y, uint8* dst_argb, int width);
-void ARGBCopyYToAlphaRow_AVX2(const uint8* src_y, uint8* dst_argb, int width);
-
-void SetRow_X86(uint8* dst, uint32 v32, int count);
-void ARGBSetRows_X86(uint8* dst, uint32 v32, int width,
- int dst_stride, int height);
-void SetRow_NEON(uint8* dst, uint32 v32, int count);
-void ARGBSetRows_NEON(uint8* dst, uint32 v32, int width,
- int dst_stride, int height);
-void SetRow_C(uint8* dst, uint32 v32, int count);
-void ARGBSetRows_C(uint8* dst, uint32 v32, int width, int dst_stride,
- int height);
+ void CopyRow_SSE2(const uint8* src, uint8* dst, int count);
+ void CopyRow_AVX(const uint8* src, uint8* dst, int count);
+ void CopyRow_ERMS(const uint8* src, uint8* dst, int count);
+ void CopyRow_X86(const uint8* src, uint8* dst, int count);
+ void CopyRow_NEON(const uint8* src, uint8* dst, int count);
+ void CopyRow_MIPS(const uint8* src, uint8* dst, int count);
+ void CopyRow_C(const uint8* src, uint8* dst, int count);
+
+ void CopyRow_16_C(const uint16* src, uint16* dst, int count);
+
+ void ARGBCopyAlphaRow_C(const uint8* src_argb, uint8* dst_argb, int width);
+ void ARGBCopyAlphaRow_SSE2(const uint8* src_argb, uint8* dst_argb, int width);
+ void ARGBCopyAlphaRow_AVX2(const uint8* src_argb, uint8* dst_argb, int width);
+
+ void ARGBCopyYToAlphaRow_C(const uint8* src_y, uint8* dst_argb, int width);
+ void ARGBCopyYToAlphaRow_SSE2(const uint8* src_y, uint8* dst_argb, int width);
+ void ARGBCopyYToAlphaRow_AVX2(const uint8* src_y, uint8* dst_argb, int width);
+
+ void SetRow_X86(uint8* dst, uint32 v32, int count);
+ void ARGBSetRows_X86(uint8* dst, uint32 v32, int width,
+ int dst_stride, int height);
+ void SetRow_NEON(uint8* dst, uint32 v32, int count);
+ void ARGBSetRows_NEON(uint8* dst, uint32 v32, int width,
+ int dst_stride, int height);
+ void SetRow_C(uint8* dst, uint32 v32, int count);
+ void ARGBSetRows_C(uint8* dst, uint32 v32, int width, int dst_stride,
+ int height);
// ARGBShufflers for BGRAToARGB etc.
-void ARGBShuffleRow_C(const uint8* src_argb, uint8* dst_argb,
- const uint8* shuffler, int pix);
-void ARGBShuffleRow_SSE2(const uint8* src_argb, uint8* dst_argb,
- const uint8* shuffler, int pix);
-void ARGBShuffleRow_SSSE3(const uint8* src_argb, uint8* dst_argb,
+ void ARGBShuffleRow_C(const uint8* src_argb, uint8* dst_argb,
const uint8* shuffler, int pix);
-void ARGBShuffleRow_AVX2(const uint8* src_argb, uint8* dst_argb,
- const uint8* shuffler, int pix);
-void ARGBShuffleRow_NEON(const uint8* src_argb, uint8* dst_argb,
- const uint8* shuffler, int pix);
-void ARGBShuffleRow_Any_SSE2(const uint8* src_argb, uint8* dst_argb,
+ void ARGBShuffleRow_SSE2(const uint8* src_argb, uint8* dst_argb,
const uint8* shuffler, int pix);
-void ARGBShuffleRow_Any_SSSE3(const uint8* src_argb, uint8* dst_argb,
+ void ARGBShuffleRow_SSSE3(const uint8* src_argb, uint8* dst_argb,
const uint8* shuffler, int pix);
-void ARGBShuffleRow_Any_AVX2(const uint8* src_argb, uint8* dst_argb,
+ void ARGBShuffleRow_AVX2(const uint8* src_argb, uint8* dst_argb,
const uint8* shuffler, int pix);
-void ARGBShuffleRow_Any_NEON(const uint8* src_argb, uint8* dst_argb,
+ void ARGBShuffleRow_NEON(const uint8* src_argb, uint8* dst_argb,
const uint8* shuffler, int pix);
-
-void RGB24ToARGBRow_SSSE3(const uint8* src_rgb24, uint8* dst_argb, int pix);
-void RAWToARGBRow_SSSE3(const uint8* src_raw, uint8* dst_argb, int pix);
-void RGB565ToARGBRow_SSE2(const uint8* src_rgb565, uint8* dst_argb, int pix);
-void ARGB1555ToARGBRow_SSE2(const uint8* src_argb1555, uint8* dst_argb,
- int pix);
-void ARGB4444ToARGBRow_SSE2(const uint8* src_argb4444, uint8* dst_argb,
- int pix);
-
-void RGB24ToARGBRow_NEON(const uint8* src_rgb24, uint8* dst_argb, int pix);
-void RAWToARGBRow_NEON(const uint8* src_raw, uint8* dst_argb, int pix);
-void RGB565ToARGBRow_NEON(const uint8* src_rgb565, uint8* dst_argb, int pix);
-void ARGB1555ToARGBRow_NEON(const uint8* src_argb1555, uint8* dst_argb,
- int pix);
-void ARGB4444ToARGBRow_NEON(const uint8* src_argb4444, uint8* dst_argb,
- int pix);
-void RGB24ToARGBRow_C(const uint8* src_rgb24, uint8* dst_argb, int pix);
-void RAWToARGBRow_C(const uint8* src_raw, uint8* dst_argb, int pix);
-void RGB565ToARGBRow_C(const uint8* src_rgb, uint8* dst_argb, int pix);
-void ARGB1555ToARGBRow_C(const uint8* src_argb, uint8* dst_argb, int pix);
-void ARGB4444ToARGBRow_C(const uint8* src_argb, uint8* dst_argb, int pix);
-void RGB24ToARGBRow_Any_SSSE3(const uint8* src_rgb24, uint8* dst_argb, int pix);
-void RAWToARGBRow_Any_SSSE3(const uint8* src_raw, uint8* dst_argb, int pix);
-void RGB565ToARGBRow_Any_SSE2(const uint8* src_rgb565, uint8* dst_argb,
- int pix);
-void ARGB1555ToARGBRow_Any_SSE2(const uint8* src_argb1555, uint8* dst_argb,
+ void ARGBShuffleRow_Any_SSE2(const uint8* src_argb, uint8* dst_argb,
+ const uint8* shuffler, int pix);
+ void ARGBShuffleRow_Any_SSSE3(const uint8* src_argb, uint8* dst_argb,
+ const uint8* shuffler, int pix);
+ void ARGBShuffleRow_Any_AVX2(const uint8* src_argb, uint8* dst_argb,
+ const uint8* shuffler, int pix);
+ void ARGBShuffleRow_Any_NEON(const uint8* src_argb, uint8* dst_argb,
+ const uint8* shuffler, int pix);
+
+ void RGB24ToARGBRow_SSSE3(const uint8* src_rgb24, uint8* dst_argb, int pix);
+ void RAWToARGBRow_SSSE3(const uint8* src_raw, uint8* dst_argb, int pix);
+ void RGB565ToARGBRow_SSE2(const uint8* src_rgb565, uint8* dst_argb, int pix);
+ void ARGB1555ToARGBRow_SSE2(const uint8* src_argb1555, uint8* dst_argb,
int pix);
-void ARGB4444ToARGBRow_Any_SSE2(const uint8* src_argb4444, uint8* dst_argb,
+ void ARGB4444ToARGBRow_SSE2(const uint8* src_argb4444, uint8* dst_argb,
int pix);
-void RGB24ToARGBRow_Any_NEON(const uint8* src_rgb24, uint8* dst_argb, int pix);
-void RAWToARGBRow_Any_NEON(const uint8* src_raw, uint8* dst_argb, int pix);
-void RGB565ToARGBRow_Any_NEON(const uint8* src_rgb565, uint8* dst_argb,
- int pix);
-void ARGB1555ToARGBRow_Any_NEON(const uint8* src_argb1555, uint8* dst_argb,
+
+ void RGB24ToARGBRow_NEON(const uint8* src_rgb24, uint8* dst_argb, int pix);
+ void RAWToARGBRow_NEON(const uint8* src_raw, uint8* dst_argb, int pix);
+ void RGB565ToARGBRow_NEON(const uint8* src_rgb565, uint8* dst_argb, int pix);
+ void ARGB1555ToARGBRow_NEON(const uint8* src_argb1555, uint8* dst_argb,
int pix);
-void ARGB4444ToARGBRow_Any_NEON(const uint8* src_argb4444, uint8* dst_argb,
+ void ARGB4444ToARGBRow_NEON(const uint8* src_argb4444, uint8* dst_argb,
int pix);
-
-void ARGBToRGB24Row_SSSE3(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToRAWRow_SSSE3(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToRGB565Row_SSE2(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToARGB1555Row_SSE2(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToARGB4444Row_SSE2(const uint8* src_argb, uint8* dst_rgb, int pix);
-
-void ARGBToRGB24Row_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToRAWRow_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToRGB565Row_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToARGB1555Row_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToARGB4444Row_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
-
-void ARGBToRGBARow_C(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToRGB24Row_C(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToRAWRow_C(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToRGB565Row_C(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToARGB1555Row_C(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToARGB4444Row_C(const uint8* src_argb, uint8* dst_rgb, int pix);
-
-void I400ToARGBRow_SSE2(const uint8* src_y, uint8* dst_argb, int pix);
-void I400ToARGBRow_NEON(const uint8* src_y, uint8* dst_argb, int pix);
-void I400ToARGBRow_C(const uint8* src_y, uint8* dst_argb, int pix);
-void I400ToARGBRow_Any_SSE2(const uint8* src_y, uint8* dst_argb, int pix);
-void I400ToARGBRow_Any_NEON(const uint8* src_y, uint8* dst_argb, int pix);
-
-void I444ToARGBRow_C(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I422ToARGBRow_C(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I411ToARGBRow_C(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void NV12ToARGBRow_C(const uint8* src_y,
- const uint8* src_uv,
- uint8* dst_argb,
- int width);
-void NV21ToRGB565Row_C(const uint8* src_y,
- const uint8* src_vu,
- uint8* dst_argb,
- int width);
-void NV12ToRGB565Row_C(const uint8* src_y,
- const uint8* src_uv,
- uint8* dst_argb,
- int width);
-void NV21ToARGBRow_C(const uint8* src_y,
- const uint8* src_vu,
- uint8* dst_argb,
- int width);
-void YUY2ToARGBRow_C(const uint8* src_yuy2,
- uint8* dst_argb,
- int width);
-void UYVYToARGBRow_C(const uint8* src_uyvy,
- uint8* dst_argb,
- int width);
-void I422ToBGRARow_C(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_bgra,
- int width);
-void I422ToABGRRow_C(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_abgr,
- int width);
-void I422ToRGBARow_C(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_rgba,
- int width);
-void I422ToRGB24Row_C(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_rgb24,
- int width);
-void I422ToRAWRow_C(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_raw,
- int width);
-void I422ToARGB4444Row_C(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb4444,
- int width);
-void I422ToARGB1555Row_C(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb4444,
- int width);
-void I422ToRGB565Row_C(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_rgb565,
- int width);
-void YToARGBRow_C(const uint8* src_y,
- uint8* dst_argb,
- int width);
-void I422ToARGBRow_AVX2(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I422ToBGRARow_AVX2(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I422ToRGBARow_AVX2(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I422ToABGRRow_AVX2(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I444ToARGBRow_SSSE3(const uint8* src_y,
+ void RGB24ToARGBRow_C(const uint8* src_rgb24, uint8* dst_argb, int pix);
+ void RAWToARGBRow_C(const uint8* src_raw, uint8* dst_argb, int pix);
+ void RGB565ToARGBRow_C(const uint8* src_rgb, uint8* dst_argb, int pix);
+ void ARGB1555ToARGBRow_C(const uint8* src_argb, uint8* dst_argb, int pix);
+ void ARGB4444ToARGBRow_C(const uint8* src_argb, uint8* dst_argb, int pix);
+ void RGB24ToARGBRow_Any_SSSE3(const uint8* src_rgb24, uint8* dst_argb, int pix);
+ void RAWToARGBRow_Any_SSSE3(const uint8* src_raw, uint8* dst_argb, int pix);
+ void RGB565ToARGBRow_Any_SSE2(const uint8* src_rgb565, uint8* dst_argb,
+ int pix);
+ void ARGB1555ToARGBRow_Any_SSE2(const uint8* src_argb1555, uint8* dst_argb,
+ int pix);
+ void ARGB4444ToARGBRow_Any_SSE2(const uint8* src_argb4444, uint8* dst_argb,
+ int pix);
+ void RGB24ToARGBRow_Any_NEON(const uint8* src_rgb24, uint8* dst_argb, int pix);
+ void RAWToARGBRow_Any_NEON(const uint8* src_raw, uint8* dst_argb, int pix);
+ void RGB565ToARGBRow_Any_NEON(const uint8* src_rgb565, uint8* dst_argb,
+ int pix);
+ void ARGB1555ToARGBRow_Any_NEON(const uint8* src_argb1555, uint8* dst_argb,
+ int pix);
+ void ARGB4444ToARGBRow_Any_NEON(const uint8* src_argb4444, uint8* dst_argb,
+ int pix);
+
+ void ARGBToRGB24Row_SSSE3(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToRAWRow_SSSE3(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToRGB565Row_SSE2(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToARGB1555Row_SSE2(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToARGB4444Row_SSE2(const uint8* src_argb, uint8* dst_rgb, int pix);
+
+ void ARGBToRGB24Row_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToRAWRow_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToRGB565Row_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToARGB1555Row_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToARGB4444Row_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
+
+ void ARGBToRGBARow_C(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToRGB24Row_C(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToRAWRow_C(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToRGB565Row_C(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToARGB1555Row_C(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToARGB4444Row_C(const uint8* src_argb, uint8* dst_rgb, int pix);
+
+ void I400ToARGBRow_SSE2(const uint8* src_y, uint8* dst_argb, int pix);
+ void I400ToARGBRow_NEON(const uint8* src_y, uint8* dst_argb, int pix);
+ void I400ToARGBRow_C(const uint8* src_y, uint8* dst_argb, int pix);
+ void I400ToARGBRow_Any_SSE2(const uint8* src_y, uint8* dst_argb, int pix);
+ void I400ToARGBRow_Any_NEON(const uint8* src_y, uint8* dst_argb, int pix);
+
+ void I444ToARGBRow_C(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_argb,
int width);
-void I422ToARGBRow_SSSE3(const uint8* src_y,
+ void I422ToARGBRow_C(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_argb,
int width);
-void I411ToARGBRow_SSSE3(const uint8* src_y,
+ void I411ToARGBRow_C(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_argb,
int width);
-void NV12ToARGBRow_SSSE3(const uint8* src_y,
+ void NV12ToARGBRow_C(const uint8* src_y,
const uint8* src_uv,
uint8* dst_argb,
int width);
-void NV21ToARGBRow_SSSE3(const uint8* src_y,
- const uint8* src_vu,
- uint8* dst_argb,
- int width);
-void NV12ToRGB565Row_SSSE3(const uint8* src_y,
- const uint8* src_uv,
+ void NV21ToRGB565Row_C(const uint8* src_y,
+ const uint8* src_vu,
uint8* dst_argb,
int width);
-void NV21ToRGB565Row_SSSE3(const uint8* src_y,
- const uint8* src_vu,
+ void NV12ToRGB565Row_C(const uint8* src_y,
+ const uint8* src_uv,
uint8* dst_argb,
int width);
-void YUY2ToARGBRow_SSSE3(const uint8* src_yuy2,
+ void NV21ToARGBRow_C(const uint8* src_y,
+ const uint8* src_vu,
uint8* dst_argb,
int width);
-void UYVYToARGBRow_SSSE3(const uint8* src_uyvy,
+ void YUY2ToARGBRow_C(const uint8* src_yuy2,
uint8* dst_argb,
int width);
-void I422ToBGRARow_SSSE3(const uint8* src_y,
+ void UYVYToARGBRow_C(const uint8* src_uyvy,
+ uint8* dst_argb,
+ int width);
+ void I422ToBGRARow_C(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_bgra,
int width);
-void I422ToABGRRow_SSSE3(const uint8* src_y,
+ void I422ToABGRRow_C(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_abgr,
int width);
-void I422ToRGBARow_SSSE3(const uint8* src_y,
+ void I422ToRGBARow_C(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_rgba,
int width);
-void I422ToARGB4444Row_SSSE3(const uint8* src_y,
+ void I422ToRGB24Row_C(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_rgb24,
+ int width);
+ void I422ToRAWRow_C(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_raw,
+ int width);
+ void I422ToARGB4444Row_C(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
- uint8* dst_argb,
+ uint8* dst_argb4444,
int width);
-void I422ToARGB1555Row_SSSE3(const uint8* src_y,
+ void I422ToARGB1555Row_C(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
- uint8* dst_argb,
+ uint8* dst_argb4444,
int width);
-void I422ToRGB565Row_SSSE3(const uint8* src_y,
+ void I422ToRGB565Row_C(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
- uint8* dst_argb,
+ uint8* dst_rgb565,
int width);
-void I422ToRGB24Row_SSSE3(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_rgb24,
- int width);
-void I422ToRAWRow_SSSE3(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_raw,
- int width);
-void I422ToARGBRow_Any_AVX2(const uint8* src_y,
+ void YToARGBRow_C(const uint8* src_y,
+ uint8* dst_argb,
+ int width);
+ void I422ToARGBRow_AVX2(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_argb,
int width);
-void I422ToBGRARow_Any_AVX2(const uint8* src_y,
+ void I422ToBGRARow_AVX2(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_argb,
int width);
-void I422ToRGBARow_Any_AVX2(const uint8* src_y,
+ void I422ToRGBARow_AVX2(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_argb,
int width);
-void I422ToABGRRow_Any_AVX2(const uint8* src_y,
+ void I422ToABGRRow_AVX2(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_argb,
int width);
-void I444ToARGBRow_Any_SSSE3(const uint8* src_y,
+ void I444ToARGBRow_SSSE3(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_argb,
int width);
-void I422ToARGBRow_Any_SSSE3(const uint8* src_y,
+ void I422ToARGBRow_SSSE3(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_argb,
int width);
-void I411ToARGBRow_Any_SSSE3(const uint8* src_y,
+ void I411ToARGBRow_SSSE3(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_argb,
int width);
-void NV12ToARGBRow_Any_SSSE3(const uint8* src_y,
+ void NV12ToARGBRow_SSSE3(const uint8* src_y,
const uint8* src_uv,
uint8* dst_argb,
int width);
-void NV21ToARGBRow_Any_SSSE3(const uint8* src_y,
+ void NV21ToARGBRow_SSSE3(const uint8* src_y,
const uint8* src_vu,
uint8* dst_argb,
int width);
-void NV12ToRGB565Row_Any_SSSE3(const uint8* src_y,
+ void NV12ToRGB565Row_SSSE3(const uint8* src_y,
const uint8* src_uv,
uint8* dst_argb,
int width);
-void NV21ToRGB565Row_Any_SSSE3(const uint8* src_y,
+ void NV21ToRGB565Row_SSSE3(const uint8* src_y,
const uint8* src_vu,
uint8* dst_argb,
int width);
-void YUY2ToARGBRow_Any_SSSE3(const uint8* src_yuy2,
+ void YUY2ToARGBRow_SSSE3(const uint8* src_yuy2,
uint8* dst_argb,
int width);
-void UYVYToARGBRow_Any_SSSE3(const uint8* src_uyvy,
+ void UYVYToARGBRow_SSSE3(const uint8* src_uyvy,
uint8* dst_argb,
int width);
-void I422ToBGRARow_Any_SSSE3(const uint8* src_y,
+ void I422ToBGRARow_SSSE3(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_bgra,
int width);
-void I422ToABGRRow_Any_SSSE3(const uint8* src_y,
+ void I422ToABGRRow_SSSE3(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_abgr,
int width);
-void I422ToRGBARow_Any_SSSE3(const uint8* src_y,
+ void I422ToRGBARow_SSSE3(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_rgba,
int width);
-void I422ToARGB4444Row_Any_SSSE3(const uint8* src_y,
+ void I422ToARGB4444Row_SSSE3(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
- uint8* dst_rgba,
+ uint8* dst_argb,
int width);
-void I422ToARGB1555Row_Any_SSSE3(const uint8* src_y,
+ void I422ToARGB1555Row_SSSE3(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
- uint8* dst_rgba,
+ uint8* dst_argb,
int width);
-void I422ToRGB565Row_Any_SSSE3(const uint8* src_y,
+ void I422ToRGB565Row_SSSE3(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
- uint8* dst_rgba,
+ uint8* dst_argb,
int width);
-void I422ToRGB24Row_Any_SSSE3(const uint8* src_y,
+ void I422ToRGB24Row_SSSE3(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
- uint8* dst_argb,
+ uint8* dst_rgb24,
int width);
-void I422ToRAWRow_Any_SSSE3(const uint8* src_y,
+ void I422ToRAWRow_SSSE3(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
- uint8* dst_argb,
+ uint8* dst_raw,
int width);
-void YToARGBRow_SSE2(const uint8* src_y,
- uint8* dst_argb,
- int width);
-void YToARGBRow_NEON(const uint8* src_y,
- uint8* dst_argb,
- int width);
-void YToARGBRow_Any_SSE2(const uint8* src_y,
+ void I422ToARGBRow_Any_AVX2(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I422ToBGRARow_Any_AVX2(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I422ToRGBARow_Any_AVX2(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I422ToABGRRow_Any_AVX2(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I444ToARGBRow_Any_SSSE3(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I422ToARGBRow_Any_SSSE3(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I411ToARGBRow_Any_SSSE3(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void NV12ToARGBRow_Any_SSSE3(const uint8* src_y,
+ const uint8* src_uv,
+ uint8* dst_argb,
+ int width);
+ void NV21ToARGBRow_Any_SSSE3(const uint8* src_y,
+ const uint8* src_vu,
+ uint8* dst_argb,
+ int width);
+ void NV12ToRGB565Row_Any_SSSE3(const uint8* src_y,
+ const uint8* src_uv,
+ uint8* dst_argb,
+ int width);
+ void NV21ToRGB565Row_Any_SSSE3(const uint8* src_y,
+ const uint8* src_vu,
+ uint8* dst_argb,
+ int width);
+ void YUY2ToARGBRow_Any_SSSE3(const uint8* src_yuy2,
+ uint8* dst_argb,
+ int width);
+ void UYVYToARGBRow_Any_SSSE3(const uint8* src_uyvy,
+ uint8* dst_argb,
+ int width);
+ void I422ToBGRARow_Any_SSSE3(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_bgra,
+ int width);
+ void I422ToABGRRow_Any_SSSE3(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_abgr,
+ int width);
+ void I422ToRGBARow_Any_SSSE3(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_rgba,
+ int width);
+ void I422ToARGB4444Row_Any_SSSE3(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_rgba,
+ int width);
+ void I422ToARGB1555Row_Any_SSSE3(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_rgba,
+ int width);
+ void I422ToRGB565Row_Any_SSSE3(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_rgba,
+ int width);
+ void I422ToRGB24Row_Any_SSSE3(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I422ToRAWRow_Any_SSSE3(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void YToARGBRow_SSE2(const uint8* src_y,
uint8* dst_argb,
int width);
-void YToARGBRow_Any_NEON(const uint8* src_y,
+ void YToARGBRow_NEON(const uint8* src_y,
uint8* dst_argb,
int width);
+ void YToARGBRow_Any_SSE2(const uint8* src_y,
+ uint8* dst_argb,
+ int width);
+ void YToARGBRow_Any_NEON(const uint8* src_y,
+ uint8* dst_argb,
+ int width);
// ARGB preattenuated alpha blend.
-void ARGBBlendRow_SSSE3(const uint8* src_argb, const uint8* src_argb1,
+ void ARGBBlendRow_SSSE3(const uint8* src_argb, const uint8* src_argb1,
+ uint8* dst_argb, int width);
+ void ARGBBlendRow_SSE2(const uint8* src_argb, const uint8* src_argb1,
+ uint8* dst_argb, int width);
+ void ARGBBlendRow_NEON(const uint8* src_argb, const uint8* src_argb1,
+ uint8* dst_argb, int width);
+ void ARGBBlendRow_C(const uint8* src_argb, const uint8* src_argb1,
uint8* dst_argb, int width);
-void ARGBBlendRow_SSE2(const uint8* src_argb, const uint8* src_argb1,
- uint8* dst_argb, int width);
-void ARGBBlendRow_NEON(const uint8* src_argb, const uint8* src_argb1,
- uint8* dst_argb, int width);
-void ARGBBlendRow_C(const uint8* src_argb, const uint8* src_argb1,
- uint8* dst_argb, int width);
// ARGB multiply images. Same API as Blend, but these require
// pointer and width alignment for SSE2.
-void ARGBMultiplyRow_C(const uint8* src_argb, const uint8* src_argb1,
- uint8* dst_argb, int width);
-void ARGBMultiplyRow_SSE2(const uint8* src_argb, const uint8* src_argb1,
- uint8* dst_argb, int width);
-void ARGBMultiplyRow_Any_SSE2(const uint8* src_argb, const uint8* src_argb1,
+ void ARGBMultiplyRow_C(const uint8* src_argb, const uint8* src_argb1,
+ uint8* dst_argb, int width);
+ void ARGBMultiplyRow_SSE2(const uint8* src_argb, const uint8* src_argb1,
uint8* dst_argb, int width);
-void ARGBMultiplyRow_AVX2(const uint8* src_argb, const uint8* src_argb1,
- uint8* dst_argb, int width);
-void ARGBMultiplyRow_Any_AVX2(const uint8* src_argb, const uint8* src_argb1,
+ void ARGBMultiplyRow_Any_SSE2(const uint8* src_argb, const uint8* src_argb1,
+ uint8* dst_argb, int width);
+ void ARGBMultiplyRow_AVX2(const uint8* src_argb, const uint8* src_argb1,
uint8* dst_argb, int width);
-void ARGBMultiplyRow_NEON(const uint8* src_argb, const uint8* src_argb1,
- uint8* dst_argb, int width);
-void ARGBMultiplyRow_Any_NEON(const uint8* src_argb, const uint8* src_argb1,
+ void ARGBMultiplyRow_Any_AVX2(const uint8* src_argb, const uint8* src_argb1,
+ uint8* dst_argb, int width);
+ void ARGBMultiplyRow_NEON(const uint8* src_argb, const uint8* src_argb1,
uint8* dst_argb, int width);
+ void ARGBMultiplyRow_Any_NEON(const uint8* src_argb, const uint8* src_argb1,
+ uint8* dst_argb, int width);
// ARGB add images.
-void ARGBAddRow_C(const uint8* src_argb, const uint8* src_argb1,
- uint8* dst_argb, int width);
-void ARGBAddRow_SSE2(const uint8* src_argb, const uint8* src_argb1,
- uint8* dst_argb, int width);
-void ARGBAddRow_Any_SSE2(const uint8* src_argb, const uint8* src_argb1,
+ void ARGBAddRow_C(const uint8* src_argb, const uint8* src_argb1,
+ uint8* dst_argb, int width);
+ void ARGBAddRow_SSE2(const uint8* src_argb, const uint8* src_argb1,
uint8* dst_argb, int width);
-void ARGBAddRow_AVX2(const uint8* src_argb, const uint8* src_argb1,
- uint8* dst_argb, int width);
-void ARGBAddRow_Any_AVX2(const uint8* src_argb, const uint8* src_argb1,
+ void ARGBAddRow_Any_SSE2(const uint8* src_argb, const uint8* src_argb1,
+ uint8* dst_argb, int width);
+ void ARGBAddRow_AVX2(const uint8* src_argb, const uint8* src_argb1,
uint8* dst_argb, int width);
-void ARGBAddRow_NEON(const uint8* src_argb, const uint8* src_argb1,
- uint8* dst_argb, int width);
-void ARGBAddRow_Any_NEON(const uint8* src_argb, const uint8* src_argb1,
+ void ARGBAddRow_Any_AVX2(const uint8* src_argb, const uint8* src_argb1,
+ uint8* dst_argb, int width);
+ void ARGBAddRow_NEON(const uint8* src_argb, const uint8* src_argb1,
uint8* dst_argb, int width);
+ void ARGBAddRow_Any_NEON(const uint8* src_argb, const uint8* src_argb1,
+ uint8* dst_argb, int width);
// ARGB subtract images. Same API as Blend, but these require
// pointer and width alignment for SSE2.
-void ARGBSubtractRow_C(const uint8* src_argb, const uint8* src_argb1,
- uint8* dst_argb, int width);
-void ARGBSubtractRow_SSE2(const uint8* src_argb, const uint8* src_argb1,
- uint8* dst_argb, int width);
-void ARGBSubtractRow_Any_SSE2(const uint8* src_argb, const uint8* src_argb1,
+ void ARGBSubtractRow_C(const uint8* src_argb, const uint8* src_argb1,
+ uint8* dst_argb, int width);
+ void ARGBSubtractRow_SSE2(const uint8* src_argb, const uint8* src_argb1,
uint8* dst_argb, int width);
-void ARGBSubtractRow_AVX2(const uint8* src_argb, const uint8* src_argb1,
- uint8* dst_argb, int width);
-void ARGBSubtractRow_Any_AVX2(const uint8* src_argb, const uint8* src_argb1,
+ void ARGBSubtractRow_Any_SSE2(const uint8* src_argb, const uint8* src_argb1,
+ uint8* dst_argb, int width);
+ void ARGBSubtractRow_AVX2(const uint8* src_argb, const uint8* src_argb1,
uint8* dst_argb, int width);
-void ARGBSubtractRow_NEON(const uint8* src_argb, const uint8* src_argb1,
- uint8* dst_argb, int width);
-void ARGBSubtractRow_Any_NEON(const uint8* src_argb, const uint8* src_argb1,
+ void ARGBSubtractRow_Any_AVX2(const uint8* src_argb, const uint8* src_argb1,
+ uint8* dst_argb, int width);
+ void ARGBSubtractRow_NEON(const uint8* src_argb, const uint8* src_argb1,
uint8* dst_argb, int width);
-
-void ARGBToRGB24Row_Any_SSSE3(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToRAWRow_Any_SSSE3(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToRGB565Row_Any_SSE2(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToARGB1555Row_Any_SSE2(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToARGB4444Row_Any_SSE2(const uint8* src_argb, uint8* dst_rgb, int pix);
-
-void ARGBToRGB24Row_Any_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToRAWRow_Any_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToRGB565Row_Any_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToARGB1555Row_Any_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
-void ARGBToARGB4444Row_Any_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
-
-void I444ToARGBRow_Any_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I422ToARGBRow_Any_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I411ToARGBRow_Any_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I422ToBGRARow_Any_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I422ToABGRRow_Any_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I422ToRGBARow_Any_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I422ToRGB24Row_Any_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I422ToRAWRow_Any_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I422ToARGB4444Row_Any_NEON(const uint8* src_y,
+ void ARGBSubtractRow_Any_NEON(const uint8* src_argb, const uint8* src_argb1,
+ uint8* dst_argb, int width);
+
+ void ARGBToRGB24Row_Any_SSSE3(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToRAWRow_Any_SSSE3(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToRGB565Row_Any_SSE2(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToARGB1555Row_Any_SSE2(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToARGB4444Row_Any_SSE2(const uint8* src_argb, uint8* dst_rgb, int pix);
+
+ void ARGBToRGB24Row_Any_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToRAWRow_Any_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToRGB565Row_Any_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToARGB1555Row_Any_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
+ void ARGBToARGB4444Row_Any_NEON(const uint8* src_argb, uint8* dst_rgb, int pix);
+
+ void I444ToARGBRow_Any_NEON(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_argb,
int width);
-void I422ToARGB1555Row_Any_NEON(const uint8* src_y,
+ void I422ToARGBRow_Any_NEON(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_argb,
int width);
-void I422ToRGB565Row_Any_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void NV12ToARGBRow_Any_NEON(const uint8* src_y,
- const uint8* src_uv,
- uint8* dst_argb,
- int width);
-void NV21ToARGBRow_Any_NEON(const uint8* src_y,
- const uint8* src_uv,
- uint8* dst_argb,
- int width);
-void NV12ToRGB565Row_Any_NEON(const uint8* src_y,
- const uint8* src_uv,
- uint8* dst_argb,
- int width);
-void NV21ToRGB565Row_Any_NEON(const uint8* src_y,
- const uint8* src_uv,
- uint8* dst_argb,
- int width);
-void YUY2ToARGBRow_Any_NEON(const uint8* src_yuy2,
- uint8* dst_argb,
- int width);
-void UYVYToARGBRow_Any_NEON(const uint8* src_uyvy,
- uint8* dst_argb,
- int width);
-void I422ToARGBRow_MIPS_DSPR2(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I422ToBGRARow_MIPS_DSPR2(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I422ToABGRRow_MIPS_DSPR2(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I422ToARGBRow_MIPS_DSPR2(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I422ToBGRARow_MIPS_DSPR2(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-void I422ToABGRRow_MIPS_DSPR2(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_argb,
- int width);
-
-void YUY2ToYRow_AVX2(const uint8* src_yuy2, uint8* dst_y, int pix);
-void YUY2ToUVRow_AVX2(const uint8* src_yuy2, int stride_yuy2,
- uint8* dst_u, uint8* dst_v, int pix);
-void YUY2ToUV422Row_AVX2(const uint8* src_yuy2,
- uint8* dst_u, uint8* dst_v, int pix);
-void YUY2ToYRow_SSE2(const uint8* src_yuy2, uint8* dst_y, int pix);
-void YUY2ToUVRow_SSE2(const uint8* src_yuy2, int stride_yuy2,
- uint8* dst_u, uint8* dst_v, int pix);
-void YUY2ToUV422Row_SSE2(const uint8* src_yuy2,
- uint8* dst_u, uint8* dst_v, int pix);
-void YUY2ToYRow_NEON(const uint8* src_yuy2, uint8* dst_y, int pix);
-void YUY2ToUVRow_NEON(const uint8* src_yuy2, int stride_yuy2,
- uint8* dst_u, uint8* dst_v, int pix);
-void YUY2ToUV422Row_NEON(const uint8* src_yuy2,
- uint8* dst_u, uint8* dst_v, int pix);
-void YUY2ToYRow_C(const uint8* src_yuy2, uint8* dst_y, int pix);
-void YUY2ToUVRow_C(const uint8* src_yuy2, int stride_yuy2,
- uint8* dst_u, uint8* dst_v, int pix);
-void YUY2ToUV422Row_C(const uint8* src_yuy2,
- uint8* dst_u, uint8* dst_v, int pix);
-void YUY2ToYRow_Any_AVX2(const uint8* src_yuy2, uint8* dst_y, int pix);
-void YUY2ToUVRow_Any_AVX2(const uint8* src_yuy2, int stride_yuy2,
+ void I411ToARGBRow_Any_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I422ToBGRARow_Any_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I422ToABGRRow_Any_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I422ToRGBARow_Any_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I422ToRGB24Row_Any_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I422ToRAWRow_Any_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I422ToARGB4444Row_Any_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I422ToARGB1555Row_Any_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I422ToRGB565Row_Any_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void NV12ToARGBRow_Any_NEON(const uint8* src_y,
+ const uint8* src_uv,
+ uint8* dst_argb,
+ int width);
+ void NV21ToARGBRow_Any_NEON(const uint8* src_y,
+ const uint8* src_uv,
+ uint8* dst_argb,
+ int width);
+ void NV12ToRGB565Row_Any_NEON(const uint8* src_y,
+ const uint8* src_uv,
+ uint8* dst_argb,
+ int width);
+ void NV21ToRGB565Row_Any_NEON(const uint8* src_y,
+ const uint8* src_uv,
+ uint8* dst_argb,
+ int width);
+ void YUY2ToARGBRow_Any_NEON(const uint8* src_yuy2,
+ uint8* dst_argb,
+ int width);
+ void UYVYToARGBRow_Any_NEON(const uint8* src_uyvy,
+ uint8* dst_argb,
+ int width);
+ void I422ToARGBRow_MIPS_DSPR2(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I422ToBGRARow_MIPS_DSPR2(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I422ToABGRRow_MIPS_DSPR2(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I422ToARGBRow_MIPS_DSPR2(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I422ToBGRARow_MIPS_DSPR2(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+ void I422ToABGRRow_MIPS_DSPR2(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_argb,
+ int width);
+
+ void YUY2ToYRow_AVX2(const uint8* src_yuy2, uint8* dst_y, int pix);
+ void YUY2ToUVRow_AVX2(const uint8* src_yuy2, int stride_yuy2,
uint8* dst_u, uint8* dst_v, int pix);
-void YUY2ToUV422Row_Any_AVX2(const uint8* src_yuy2,
+ void YUY2ToUV422Row_AVX2(const uint8* src_yuy2,
uint8* dst_u, uint8* dst_v, int pix);
-void YUY2ToYRow_Any_SSE2(const uint8* src_yuy2, uint8* dst_y, int pix);
-void YUY2ToUVRow_Any_SSE2(const uint8* src_yuy2, int stride_yuy2,
+ void YUY2ToYRow_SSE2(const uint8* src_yuy2, uint8* dst_y, int pix);
+ void YUY2ToUVRow_SSE2(const uint8* src_yuy2, int stride_yuy2,
uint8* dst_u, uint8* dst_v, int pix);
-void YUY2ToUV422Row_Any_SSE2(const uint8* src_yuy2,
+ void YUY2ToUV422Row_SSE2(const uint8* src_yuy2,
uint8* dst_u, uint8* dst_v, int pix);
-void YUY2ToYRow_Any_NEON(const uint8* src_yuy2, uint8* dst_y, int pix);
-void YUY2ToUVRow_Any_NEON(const uint8* src_yuy2, int stride_yuy2,
+ void YUY2ToYRow_NEON(const uint8* src_yuy2, uint8* dst_y, int pix);
+ void YUY2ToUVRow_NEON(const uint8* src_yuy2, int stride_yuy2,
uint8* dst_u, uint8* dst_v, int pix);
-void YUY2ToUV422Row_Any_NEON(const uint8* src_yuy2,
+ void YUY2ToUV422Row_NEON(const uint8* src_yuy2,
uint8* dst_u, uint8* dst_v, int pix);
-void UYVYToYRow_AVX2(const uint8* src_uyvy, uint8* dst_y, int pix);
-void UYVYToUVRow_AVX2(const uint8* src_uyvy, int stride_uyvy,
- uint8* dst_u, uint8* dst_v, int pix);
-void UYVYToUV422Row_AVX2(const uint8* src_uyvy,
- uint8* dst_u, uint8* dst_v, int pix);
-void UYVYToYRow_SSE2(const uint8* src_uyvy, uint8* dst_y, int pix);
-void UYVYToUVRow_SSE2(const uint8* src_uyvy, int stride_uyvy,
- uint8* dst_u, uint8* dst_v, int pix);
-void UYVYToUV422Row_SSE2(const uint8* src_uyvy,
- uint8* dst_u, uint8* dst_v, int pix);
-void UYVYToYRow_AVX2(const uint8* src_uyvy, uint8* dst_y, int pix);
-void UYVYToUVRow_AVX2(const uint8* src_uyvy, int stride_uyvy,
- uint8* dst_u, uint8* dst_v, int pix);
-void UYVYToUV422Row_AVX2(const uint8* src_uyvy,
- uint8* dst_u, uint8* dst_v, int pix);
-void UYVYToYRow_NEON(const uint8* src_uyvy, uint8* dst_y, int pix);
-void UYVYToUVRow_NEON(const uint8* src_uyvy, int stride_uyvy,
- uint8* dst_u, uint8* dst_v, int pix);
-void UYVYToUV422Row_NEON(const uint8* src_uyvy,
- uint8* dst_u, uint8* dst_v, int pix);
-
-void UYVYToYRow_C(const uint8* src_uyvy, uint8* dst_y, int pix);
-void UYVYToUVRow_C(const uint8* src_uyvy, int stride_uyvy,
- uint8* dst_u, uint8* dst_v, int pix);
-void UYVYToUV422Row_C(const uint8* src_uyvy,
- uint8* dst_u, uint8* dst_v, int pix);
-void UYVYToYRow_Any_AVX2(const uint8* src_uyvy, uint8* dst_y, int pix);
-void UYVYToUVRow_Any_AVX2(const uint8* src_uyvy, int stride_uyvy,
+ void YUY2ToYRow_C(const uint8* src_yuy2, uint8* dst_y, int pix);
+ void YUY2ToUVRow_C(const uint8* src_yuy2, int stride_yuy2,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void YUY2ToUV422Row_C(const uint8* src_yuy2,
uint8* dst_u, uint8* dst_v, int pix);
-void UYVYToUV422Row_Any_AVX2(const uint8* src_uyvy,
+ void YUY2ToYRow_Any_AVX2(const uint8* src_yuy2, uint8* dst_y, int pix);
+ void YUY2ToUVRow_Any_AVX2(const uint8* src_yuy2, int stride_yuy2,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void YUY2ToUV422Row_Any_AVX2(const uint8* src_yuy2,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void YUY2ToYRow_Any_SSE2(const uint8* src_yuy2, uint8* dst_y, int pix);
+ void YUY2ToUVRow_Any_SSE2(const uint8* src_yuy2, int stride_yuy2,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void YUY2ToUV422Row_Any_SSE2(const uint8* src_yuy2,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void YUY2ToYRow_Any_NEON(const uint8* src_yuy2, uint8* dst_y, int pix);
+ void YUY2ToUVRow_Any_NEON(const uint8* src_yuy2, int stride_yuy2,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void YUY2ToUV422Row_Any_NEON(const uint8* src_yuy2,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void UYVYToYRow_AVX2(const uint8* src_uyvy, uint8* dst_y, int pix);
+ void UYVYToUVRow_AVX2(const uint8* src_uyvy, int stride_uyvy,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void UYVYToUV422Row_AVX2(const uint8* src_uyvy,
uint8* dst_u, uint8* dst_v, int pix);
-void UYVYToYRow_Any_SSE2(const uint8* src_uyvy, uint8* dst_y, int pix);
-void UYVYToUVRow_Any_SSE2(const uint8* src_uyvy, int stride_uyvy,
+ void UYVYToYRow_SSE2(const uint8* src_uyvy, uint8* dst_y, int pix);
+ void UYVYToUVRow_SSE2(const uint8* src_uyvy, int stride_uyvy,
uint8* dst_u, uint8* dst_v, int pix);
-void UYVYToUV422Row_Any_SSE2(const uint8* src_uyvy,
+ void UYVYToUV422Row_SSE2(const uint8* src_uyvy,
uint8* dst_u, uint8* dst_v, int pix);
-void UYVYToYRow_Any_NEON(const uint8* src_uyvy, uint8* dst_y, int pix);
-void UYVYToUVRow_Any_NEON(const uint8* src_uyvy, int stride_uyvy,
+ void UYVYToYRow_AVX2(const uint8* src_uyvy, uint8* dst_y, int pix);
+ void UYVYToUVRow_AVX2(const uint8* src_uyvy, int stride_uyvy,
uint8* dst_u, uint8* dst_v, int pix);
-void UYVYToUV422Row_Any_NEON(const uint8* src_uyvy,
+ void UYVYToUV422Row_AVX2(const uint8* src_uyvy,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void UYVYToYRow_NEON(const uint8* src_uyvy, uint8* dst_y, int pix);
+ void UYVYToUVRow_NEON(const uint8* src_uyvy, int stride_uyvy,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void UYVYToUV422Row_NEON(const uint8* src_uyvy,
uint8* dst_u, uint8* dst_v, int pix);
-void ARGBToBayerRow_C(const uint8* src_argb, uint8* dst_bayer,
- uint32 selector, int pix);
-void ARGBToBayerRow_SSSE3(const uint8* src_argb, uint8* dst_bayer,
+ void UYVYToYRow_C(const uint8* src_uyvy, uint8* dst_y, int pix);
+ void UYVYToUVRow_C(const uint8* src_uyvy, int stride_uyvy,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void UYVYToUV422Row_C(const uint8* src_uyvy,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void UYVYToYRow_Any_AVX2(const uint8* src_uyvy, uint8* dst_y, int pix);
+ void UYVYToUVRow_Any_AVX2(const uint8* src_uyvy, int stride_uyvy,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void UYVYToUV422Row_Any_AVX2(const uint8* src_uyvy,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void UYVYToYRow_Any_SSE2(const uint8* src_uyvy, uint8* dst_y, int pix);
+ void UYVYToUVRow_Any_SSE2(const uint8* src_uyvy, int stride_uyvy,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void UYVYToUV422Row_Any_SSE2(const uint8* src_uyvy,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void UYVYToYRow_Any_NEON(const uint8* src_uyvy, uint8* dst_y, int pix);
+ void UYVYToUVRow_Any_NEON(const uint8* src_uyvy, int stride_uyvy,
+ uint8* dst_u, uint8* dst_v, int pix);
+ void UYVYToUV422Row_Any_NEON(const uint8* src_uyvy,
+ uint8* dst_u, uint8* dst_v, int pix);
+
+ void ARGBToBayerRow_C(const uint8* src_argb, uint8* dst_bayer,
uint32 selector, int pix);
-void ARGBToBayerRow_NEON(const uint8* src_argb, uint8* dst_bayer,
- uint32 selector, int pix);
-void ARGBToBayerRow_Any_SSSE3(const uint8* src_argb, uint8* dst_bayer,
+ void ARGBToBayerRow_SSSE3(const uint8* src_argb, uint8* dst_bayer,
uint32 selector, int pix);
-void ARGBToBayerRow_Any_NEON(const uint8* src_argb, uint8* dst_bayer,
+ void ARGBToBayerRow_NEON(const uint8* src_argb, uint8* dst_bayer,
uint32 selector, int pix);
-void ARGBToBayerGGRow_C(const uint8* src_argb, uint8* dst_bayer,
- uint32 /* selector */, int pix);
-void ARGBToBayerGGRow_SSE2(const uint8* src_argb, uint8* dst_bayer,
- uint32 /* selector */, int pix);
-void ARGBToBayerGGRow_NEON(const uint8* src_argb, uint8* dst_bayer,
- uint32 /* selector */, int pix);
-void ARGBToBayerGGRow_Any_SSE2(const uint8* src_argb, uint8* dst_bayer,
+ void ARGBToBayerRow_Any_SSSE3(const uint8* src_argb, uint8* dst_bayer,
+ uint32 selector, int pix);
+ void ARGBToBayerRow_Any_NEON(const uint8* src_argb, uint8* dst_bayer,
+ uint32 selector, int pix);
+ void ARGBToBayerGGRow_C(const uint8* src_argb, uint8* dst_bayer,
+ uint32 /* selector */, int pix);
+ void ARGBToBayerGGRow_SSE2(const uint8* src_argb, uint8* dst_bayer,
uint32 /* selector */, int pix);
-void ARGBToBayerGGRow_Any_NEON(const uint8* src_argb, uint8* dst_bayer,
+ void ARGBToBayerGGRow_NEON(const uint8* src_argb, uint8* dst_bayer,
uint32 /* selector */, int pix);
+ void ARGBToBayerGGRow_Any_SSE2(const uint8* src_argb, uint8* dst_bayer,
+ uint32 /* selector */, int pix);
+ void ARGBToBayerGGRow_Any_NEON(const uint8* src_argb, uint8* dst_bayer,
+ uint32 /* selector */, int pix);
-void I422ToYUY2Row_C(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_yuy2, int width);
-void I422ToUYVYRow_C(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_uyvy, int width);
-void I422ToYUY2Row_SSE2(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_yuy2, int width);
-void I422ToUYVYRow_SSE2(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_uyvy, int width);
-void I422ToYUY2Row_Any_SSE2(const uint8* src_y,
+ void I422ToYUY2Row_C(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_yuy2, int width);
+ void I422ToUYVYRow_C(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_uyvy, int width);
+ void I422ToYUY2Row_SSE2(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_yuy2, int width);
-void I422ToUYVYRow_Any_SSE2(const uint8* src_y,
+ void I422ToUYVYRow_SSE2(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_uyvy, int width);
-void I422ToYUY2Row_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_yuy2, int width);
-void I422ToUYVYRow_NEON(const uint8* src_y,
- const uint8* src_u,
- const uint8* src_v,
- uint8* dst_uyvy, int width);
-void I422ToYUY2Row_Any_NEON(const uint8* src_y,
+ void I422ToYUY2Row_Any_SSE2(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_yuy2, int width);
+ void I422ToUYVYRow_Any_SSE2(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_uyvy, int width);
+ void I422ToYUY2Row_NEON(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_yuy2, int width);
-void I422ToUYVYRow_Any_NEON(const uint8* src_y,
+ void I422ToUYVYRow_NEON(const uint8* src_y,
const uint8* src_u,
const uint8* src_v,
uint8* dst_uyvy, int width);
+ void I422ToYUY2Row_Any_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_yuy2, int width);
+ void I422ToUYVYRow_Any_NEON(const uint8* src_y,
+ const uint8* src_u,
+ const uint8* src_v,
+ uint8* dst_uyvy, int width);
// Effects related row functions.
-void ARGBAttenuateRow_C(const uint8* src_argb, uint8* dst_argb, int width);
-void ARGBAttenuateRow_SSE2(const uint8* src_argb, uint8* dst_argb, int width);
-void ARGBAttenuateRow_SSSE3(const uint8* src_argb, uint8* dst_argb, int width);
-void ARGBAttenuateRow_AVX2(const uint8* src_argb, uint8* dst_argb, int width);
-void ARGBAttenuateRow_NEON(const uint8* src_argb, uint8* dst_argb, int width);
-void ARGBAttenuateRow_Any_SSE2(const uint8* src_argb, uint8* dst_argb,
- int width);
-void ARGBAttenuateRow_Any_SSSE3(const uint8* src_argb, uint8* dst_argb,
- int width);
-void ARGBAttenuateRow_Any_AVX2(const uint8* src_argb, uint8* dst_argb,
- int width);
-void ARGBAttenuateRow_Any_NEON(const uint8* src_argb, uint8* dst_argb,
- int width);
+ void ARGBAttenuateRow_C(const uint8* src_argb, uint8* dst_argb, int width);
+ void ARGBAttenuateRow_SSE2(const uint8* src_argb, uint8* dst_argb, int width);
+ void ARGBAttenuateRow_SSSE3(const uint8* src_argb, uint8* dst_argb, int width);
+ void ARGBAttenuateRow_AVX2(const uint8* src_argb, uint8* dst_argb, int width);
+ void ARGBAttenuateRow_NEON(const uint8* src_argb, uint8* dst_argb, int width);
+ void ARGBAttenuateRow_Any_SSE2(const uint8* src_argb, uint8* dst_argb,
+ int width);
+ void ARGBAttenuateRow_Any_SSSE3(const uint8* src_argb, uint8* dst_argb,
+ int width);
+ void ARGBAttenuateRow_Any_AVX2(const uint8* src_argb, uint8* dst_argb,
+ int width);
+ void ARGBAttenuateRow_Any_NEON(const uint8* src_argb, uint8* dst_argb,
+ int width);
// Inverse table for unattenuate, shared by C and SSE2.
-extern const uint32 fixed_invtbl8[256];
-void ARGBUnattenuateRow_C(const uint8* src_argb, uint8* dst_argb, int width);
-void ARGBUnattenuateRow_SSE2(const uint8* src_argb, uint8* dst_argb, int width);
-void ARGBUnattenuateRow_AVX2(const uint8* src_argb, uint8* dst_argb, int width);
-void ARGBUnattenuateRow_Any_SSE2(const uint8* src_argb, uint8* dst_argb,
- int width);
-void ARGBUnattenuateRow_Any_AVX2(const uint8* src_argb, uint8* dst_argb,
- int width);
-
-void ARGBGrayRow_C(const uint8* src_argb, uint8* dst_argb, int width);
-void ARGBGrayRow_SSSE3(const uint8* src_argb, uint8* dst_argb, int width);
-void ARGBGrayRow_NEON(const uint8* src_argb, uint8* dst_argb, int width);
-
-void ARGBSepiaRow_C(uint8* dst_argb, int width);
-void ARGBSepiaRow_SSSE3(uint8* dst_argb, int width);
-void ARGBSepiaRow_NEON(uint8* dst_argb, int width);
-
-void ARGBColorMatrixRow_C(const uint8* src_argb, uint8* dst_argb,
- const int8* matrix_argb, int width);
-void ARGBColorMatrixRow_SSSE3(const uint8* src_argb, uint8* dst_argb,
+ extern const uint32 fixed_invtbl8[256];
+ void ARGBUnattenuateRow_C(const uint8* src_argb, uint8* dst_argb, int width);
+ void ARGBUnattenuateRow_SSE2(const uint8* src_argb, uint8* dst_argb, int width);
+ void ARGBUnattenuateRow_AVX2(const uint8* src_argb, uint8* dst_argb, int width);
+ void ARGBUnattenuateRow_Any_SSE2(const uint8* src_argb, uint8* dst_argb,
+ int width);
+ void ARGBUnattenuateRow_Any_AVX2(const uint8* src_argb, uint8* dst_argb,
+ int width);
+
+ void ARGBGrayRow_C(const uint8* src_argb, uint8* dst_argb, int width);
+ void ARGBGrayRow_SSSE3(const uint8* src_argb, uint8* dst_argb, int width);
+ void ARGBGrayRow_NEON(const uint8* src_argb, uint8* dst_argb, int width);
+
+ void ARGBSepiaRow_C(uint8* dst_argb, int width);
+ void ARGBSepiaRow_SSSE3(uint8* dst_argb, int width);
+ void ARGBSepiaRow_NEON(uint8* dst_argb, int width);
+
+ void ARGBColorMatrixRow_C(const uint8* src_argb, uint8* dst_argb,
const int8* matrix_argb, int width);
-void ARGBColorMatrixRow_NEON(const uint8* src_argb, uint8* dst_argb,
- const int8* matrix_argb, int width);
-
-void ARGBColorTableRow_C(uint8* dst_argb, const uint8* table_argb, int width);
-void ARGBColorTableRow_X86(uint8* dst_argb, const uint8* table_argb, int width);
-
-void RGBColorTableRow_C(uint8* dst_argb, const uint8* table_argb, int width);
-void RGBColorTableRow_X86(uint8* dst_argb, const uint8* table_argb, int width);
-
-void ARGBQuantizeRow_C(uint8* dst_argb, int scale, int interval_size,
- int interval_offset, int width);
-void ARGBQuantizeRow_SSE2(uint8* dst_argb, int scale, int interval_size,
- int interval_offset, int width);
-void ARGBQuantizeRow_NEON(uint8* dst_argb, int scale, int interval_size,
- int interval_offset, int width);
-
-void ARGBShadeRow_C(const uint8* src_argb, uint8* dst_argb, int width,
- uint32 value);
-void ARGBShadeRow_SSE2(const uint8* src_argb, uint8* dst_argb, int width,
- uint32 value);
-void ARGBShadeRow_NEON(const uint8* src_argb, uint8* dst_argb, int width,
- uint32 value);
+ void ARGBColorMatrixRow_SSSE3(const uint8* src_argb, uint8* dst_argb,
+ const int8* matrix_argb, int width);
+ void ARGBColorMatrixRow_NEON(const uint8* src_argb, uint8* dst_argb,
+ const int8* matrix_argb, int width);
+
+ void ARGBColorTableRow_C(uint8* dst_argb, const uint8* table_argb, int width);
+ void ARGBColorTableRow_X86(uint8* dst_argb, const uint8* table_argb, int width);
+
+ void RGBColorTableRow_C(uint8* dst_argb, const uint8* table_argb, int width);
+ void RGBColorTableRow_X86(uint8* dst_argb, const uint8* table_argb, int width);
+
+ void ARGBQuantizeRow_C(uint8* dst_argb, int scale, int interval_size,
+ int interval_offset, int width);
+ void ARGBQuantizeRow_SSE2(uint8* dst_argb, int scale, int interval_size,
+ int interval_offset, int width);
+ void ARGBQuantizeRow_NEON(uint8* dst_argb, int scale, int interval_size,
+ int interval_offset, int width);
+
+ void ARGBShadeRow_C(const uint8* src_argb, uint8* dst_argb, int width,
+ uint32 value);
+ void ARGBShadeRow_SSE2(const uint8* src_argb, uint8* dst_argb, int width,
+ uint32 value);
+ void ARGBShadeRow_NEON(const uint8* src_argb, uint8* dst_argb, int width,
+ uint32 value);
// Used for blur.
-void CumulativeSumToAverageRow_SSE2(const int32* topleft, const int32* botleft,
- int width, int area, uint8* dst, int count);
-void ComputeCumulativeSumRow_SSE2(const uint8* row, int32* cumsum,
- const int32* previous_cumsum, int width);
-
-void CumulativeSumToAverageRow_C(const int32* topleft, const int32* botleft,
- int width, int area, uint8* dst, int count);
-void ComputeCumulativeSumRow_C(const uint8* row, int32* cumsum,
- const int32* previous_cumsum, int width);
-
-LIBYUV_API
-void ARGBAffineRow_C(const uint8* src_argb, int src_argb_stride,
- uint8* dst_argb, const float* uv_dudv, int width);
-LIBYUV_API
-void ARGBAffineRow_SSE2(const uint8* src_argb, int src_argb_stride,
- uint8* dst_argb, const float* uv_dudv, int width);
+ void CumulativeSumToAverageRow_SSE2(const int32* topleft, const int32* botleft,
+ int width, int area, uint8* dst, int count);
+ void ComputeCumulativeSumRow_SSE2(const uint8* row, int32* cumsum,
+ const int32* previous_cumsum, int width);
+
+ void CumulativeSumToAverageRow_C(const int32* topleft, const int32* botleft,
+ int width, int area, uint8* dst, int count);
+ void ComputeCumulativeSumRow_C(const uint8* row, int32* cumsum,
+ const int32* previous_cumsum, int width);
+
+ LIBYUV_API
+ void ARGBAffineRow_C(const uint8* src_argb, int src_argb_stride,
+ uint8* dst_argb, const float* uv_dudv, int width);
+ LIBYUV_API
+ void ARGBAffineRow_SSE2(const uint8* src_argb, int src_argb_stride,
+ uint8* dst_argb, const float* uv_dudv, int width);
// Used for I420Scale, ARGBScale, and ARGBInterpolate.
-void InterpolateRow_C(uint8* dst_ptr, const uint8* src_ptr,
- ptrdiff_t src_stride_ptr,
- int width, int source_y_fraction);
-void InterpolateRow_SSE2(uint8* dst_ptr, const uint8* src_ptr,
- ptrdiff_t src_stride_ptr, int width,
- int source_y_fraction);
-void InterpolateRow_SSSE3(uint8* dst_ptr, const uint8* src_ptr,
- ptrdiff_t src_stride_ptr, int width,
- int source_y_fraction);
-void InterpolateRow_AVX2(uint8* dst_ptr, const uint8* src_ptr,
- ptrdiff_t src_stride_ptr, int width,
- int source_y_fraction);
-void InterpolateRow_NEON(uint8* dst_ptr, const uint8* src_ptr,
- ptrdiff_t src_stride_ptr, int width,
- int source_y_fraction);
-void InterpolateRows_MIPS_DSPR2(uint8* dst_ptr, const uint8* src_ptr,
- ptrdiff_t src_stride_ptr, int width,
- int source_y_fraction);
-void InterpolateRow_Any_NEON(uint8* dst_ptr, const uint8* src_ptr,
- ptrdiff_t src_stride_ptr, int width,
- int source_y_fraction);
-void InterpolateRow_Any_SSE2(uint8* dst_ptr, const uint8* src_ptr,
+ void InterpolateRow_C(uint8* dst_ptr, const uint8* src_ptr,
+ ptrdiff_t src_stride_ptr,
+ int width, int source_y_fraction);
+ void InterpolateRow_SSE2(uint8* dst_ptr, const uint8* src_ptr,
ptrdiff_t src_stride_ptr, int width,
int source_y_fraction);
-void InterpolateRow_Any_SSSE3(uint8* dst_ptr, const uint8* src_ptr,
+ void InterpolateRow_SSSE3(uint8* dst_ptr, const uint8* src_ptr,
ptrdiff_t src_stride_ptr, int width,
int source_y_fraction);
-void InterpolateRow_Any_AVX2(uint8* dst_ptr, const uint8* src_ptr,
+ void InterpolateRow_AVX2(uint8* dst_ptr, const uint8* src_ptr,
ptrdiff_t src_stride_ptr, int width,
int source_y_fraction);
-void InterpolateRows_Any_MIPS_DSPR2(uint8* dst_ptr, const uint8* src_ptr,
+ void InterpolateRow_NEON(uint8* dst_ptr, const uint8* src_ptr,
+ ptrdiff_t src_stride_ptr, int width,
+ int source_y_fraction);
+ void InterpolateRows_MIPS_DSPR2(uint8* dst_ptr, const uint8* src_ptr,
ptrdiff_t src_stride_ptr, int width,
int source_y_fraction);
-
-void InterpolateRow_16_C(uint16* dst_ptr, const uint16* src_ptr,
- ptrdiff_t src_stride_ptr,
- int width, int source_y_fraction);
+ void InterpolateRow_Any_NEON(uint8* dst_ptr, const uint8* src_ptr,
+ ptrdiff_t src_stride_ptr, int width,
+ int source_y_fraction);
+ void InterpolateRow_Any_SSE2(uint8* dst_ptr, const uint8* src_ptr,
+ ptrdiff_t src_stride_ptr, int width,
+ int source_y_fraction);
+ void InterpolateRow_Any_SSSE3(uint8* dst_ptr, const uint8* src_ptr,
+ ptrdiff_t src_stride_ptr, int width,
+ int source_y_fraction);
+ void InterpolateRow_Any_AVX2(uint8* dst_ptr, const uint8* src_ptr,
+ ptrdiff_t src_stride_ptr, int width,
+ int source_y_fraction);
+ void InterpolateRows_Any_MIPS_DSPR2(uint8* dst_ptr, const uint8* src_ptr,
+ ptrdiff_t src_stride_ptr, int width,
+ int source_y_fraction);
+
+ void InterpolateRow_16_C(uint16* dst_ptr, const uint16* src_ptr,
+ ptrdiff_t src_stride_ptr,
+ int width, int source_y_fraction);
// Sobel images.
-void SobelXRow_C(const uint8* src_y0, const uint8* src_y1, const uint8* src_y2,
- uint8* dst_sobelx, int width);
-void SobelXRow_SSE2(const uint8* src_y0, const uint8* src_y1,
- const uint8* src_y2, uint8* dst_sobelx, int width);
-void SobelXRow_NEON(const uint8* src_y0, const uint8* src_y1,
- const uint8* src_y2, uint8* dst_sobelx, int width);
-void SobelYRow_C(const uint8* src_y0, const uint8* src_y1,
- uint8* dst_sobely, int width);
-void SobelYRow_SSE2(const uint8* src_y0, const uint8* src_y1,
- uint8* dst_sobely, int width);
-void SobelYRow_NEON(const uint8* src_y0, const uint8* src_y1,
- uint8* dst_sobely, int width);
-void SobelRow_C(const uint8* src_sobelx, const uint8* src_sobely,
- uint8* dst_argb, int width);
-void SobelRow_SSE2(const uint8* src_sobelx, const uint8* src_sobely,
- uint8* dst_argb, int width);
-void SobelRow_NEON(const uint8* src_sobelx, const uint8* src_sobely,
- uint8* dst_argb, int width);
-void SobelToPlaneRow_C(const uint8* src_sobelx, const uint8* src_sobely,
- uint8* dst_y, int width);
-void SobelToPlaneRow_SSE2(const uint8* src_sobelx, const uint8* src_sobely,
- uint8* dst_y, int width);
-void SobelToPlaneRow_NEON(const uint8* src_sobelx, const uint8* src_sobely,
- uint8* dst_y, int width);
-void SobelXYRow_C(const uint8* src_sobelx, const uint8* src_sobely,
- uint8* dst_argb, int width);
-void SobelXYRow_SSE2(const uint8* src_sobelx, const uint8* src_sobely,
- uint8* dst_argb, int width);
-void SobelXYRow_NEON(const uint8* src_sobelx, const uint8* src_sobely,
- uint8* dst_argb, int width);
-
-void ARGBPolynomialRow_C(const uint8* src_argb,
- uint8* dst_argb, const float* poly,
- int width);
-void ARGBPolynomialRow_SSE2(const uint8* src_argb,
- uint8* dst_argb, const float* poly,
- int width);
-void ARGBPolynomialRow_AVX2(const uint8* src_argb,
- uint8* dst_argb, const float* poly,
- int width);
+ void SobelXRow_C(const uint8* src_y0, const uint8* src_y1, const uint8* src_y2,
+ uint8* dst_sobelx, int width);
+ void SobelXRow_SSE2(const uint8* src_y0, const uint8* src_y1,
+ const uint8* src_y2, uint8* dst_sobelx, int width);
+ void SobelXRow_NEON(const uint8* src_y0, const uint8* src_y1,
+ const uint8* src_y2, uint8* dst_sobelx, int width);
+ void SobelYRow_C(const uint8* src_y0, const uint8* src_y1,
+ uint8* dst_sobely, int width);
+ void SobelYRow_SSE2(const uint8* src_y0, const uint8* src_y1,
+ uint8* dst_sobely, int width);
+ void SobelYRow_NEON(const uint8* src_y0, const uint8* src_y1,
+ uint8* dst_sobely, int width);
+ void SobelRow_C(const uint8* src_sobelx, const uint8* src_sobely,
+ uint8* dst_argb, int width);
+ void SobelRow_SSE2(const uint8* src_sobelx, const uint8* src_sobely,
+ uint8* dst_argb, int width);
+ void SobelRow_NEON(const uint8* src_sobelx, const uint8* src_sobely,
+ uint8* dst_argb, int width);
+ void SobelToPlaneRow_C(const uint8* src_sobelx, const uint8* src_sobely,
+ uint8* dst_y, int width);
+ void SobelToPlaneRow_SSE2(const uint8* src_sobelx, const uint8* src_sobely,
+ uint8* dst_y, int width);
+ void SobelToPlaneRow_NEON(const uint8* src_sobelx, const uint8* src_sobely,
+ uint8* dst_y, int width);
+ void SobelXYRow_C(const uint8* src_sobelx, const uint8* src_sobely,
+ uint8* dst_argb, int width);
+ void SobelXYRow_SSE2(const uint8* src_sobelx, const uint8* src_sobely,
+ uint8* dst_argb, int width);
+ void SobelXYRow_NEON(const uint8* src_sobelx, const uint8* src_sobely,
+ uint8* dst_argb, int width);
+
+ void ARGBPolynomialRow_C(const uint8* src_argb,
+ uint8* dst_argb, const float* poly,
+ int width);
+ void ARGBPolynomialRow_SSE2(const uint8* src_argb,
+ uint8* dst_argb, const float* poly,
+ int width);
+ void ARGBPolynomialRow_AVX2(const uint8* src_argb,
+ uint8* dst_argb, const float* poly,
+ int width);
-void ARGBLumaColorTableRow_C(const uint8* src_argb, uint8* dst_argb, int width,
- const uint8* luma, uint32 lumacoeff);
-void ARGBLumaColorTableRow_SSSE3(const uint8* src_argb, uint8* dst_argb,
- int width,
+ void ARGBLumaColorTableRow_C(const uint8* src_argb, uint8* dst_argb, int width,
const uint8* luma, uint32 lumacoeff);
+ void ARGBLumaColorTableRow_SSSE3(const uint8* src_argb, uint8* dst_argb,
+ int width,
+ const uint8* luma, uint32 lumacoeff);
#ifdef __cplusplus
} // extern "C"
diff --git a/thirdparties/iphone/include/libyuv/libyuv/scale.h b/thirdparties/iphone/include/libyuv/libyuv/scale.h
index 102158d..b096962 100755
--- a/thirdparties/iphone/include/libyuv/libyuv/scale.h
+++ b/thirdparties/iphone/include/libyuv/libyuv/scale.h
@@ -14,17 +14,19 @@
#include "libyuv/basic_types.h"
#ifdef __cplusplus
-namespace libyuv {
+namespace libyuv
+{
extern "C" {
#endif
// Supported filtering.
typedef enum FilterMode {
- kFilterNone = 0, // Point sample; Fastest.
- kFilterLinear = 1, // Filter horizontally only.
- kFilterBilinear = 2, // Faster than box, but lower quality scaling down.
- kFilterBox = 3 // Highest quality.
-} FilterModeEnum;
+ kFilterNone = 0, // Point sample; Fastest.
+ kFilterLinear = 1, // Filter horizontally only.
+ kFilterBilinear = 2, // Faster than box, but lower quality scaling down.
+ kFilterBox = 3 // Highest quality.
+}
+FilterModeEnum;
// Scale a YUV plane.
LIBYUV_API
@@ -75,24 +77,24 @@ int I420Scale_16(const uint16* src_y, int src_stride_y,
#ifdef __cplusplus
// Legacy API. Deprecated.
-LIBYUV_API
-int Scale(const uint8* src_y, const uint8* src_u, const uint8* src_v,
- int src_stride_y, int src_stride_u, int src_stride_v,
- int src_width, int src_height,
- uint8* dst_y, uint8* dst_u, uint8* dst_v,
- int dst_stride_y, int dst_stride_u, int dst_stride_v,
- int dst_width, int dst_height,
- LIBYUV_BOOL interpolate);
+ LIBYUV_API
+ int Scale(const uint8* src_y, const uint8* src_u, const uint8* src_v,
+ int src_stride_y, int src_stride_u, int src_stride_v,
+ int src_width, int src_height,
+ uint8* dst_y, uint8* dst_u, uint8* dst_v,
+ int dst_stride_y, int dst_stride_u, int dst_stride_v,
+ int dst_width, int dst_height,
+ LIBYUV_BOOL interpolate);
// Legacy API. Deprecated.
-LIBYUV_API
-int ScaleOffset(const uint8* src_i420, int src_width, int src_height,
- uint8* dst_i420, int dst_width, int dst_height, int dst_yoffset,
- LIBYUV_BOOL interpolate);
+ LIBYUV_API
+ int ScaleOffset(const uint8* src_i420, int src_width, int src_height,
+ uint8* dst_i420, int dst_width, int dst_height, int dst_yoffset,
+ LIBYUV_BOOL interpolate);
// For testing, allow disabling of specialized scalers.
-LIBYUV_API
-void SetUseReferenceImpl(LIBYUV_BOOL use);
+ LIBYUV_API
+ void SetUseReferenceImpl(LIBYUV_BOOL use);
#endif // __cplusplus
#ifdef __cplusplus
diff --git a/thirdparties/iphone/include/libyuv/libyuv/scale_argb.h b/thirdparties/iphone/include/libyuv/libyuv/scale_argb.h
index 0c9b362..9058a78 100755
--- a/thirdparties/iphone/include/libyuv/libyuv/scale_argb.h
+++ b/thirdparties/iphone/include/libyuv/libyuv/scale_argb.h
@@ -15,7 +15,8 @@
#include "libyuv/scale.h" // For FilterMode
#ifdef __cplusplus
-namespace libyuv {
+namespace libyuv
+{
extern "C" {
#endif
diff --git a/thirdparties/iphone/include/libyuv/libyuv/scale_row.h b/thirdparties/iphone/include/libyuv/libyuv/scale_row.h
index 27aa04b..9fad7f3 100755
--- a/thirdparties/iphone/include/libyuv/libyuv/scale_row.h
+++ b/thirdparties/iphone/include/libyuv/libyuv/scale_row.h
@@ -14,7 +14,8 @@
#include "libyuv/basic_types.h"
#ifdef __cplusplus
-namespace libyuv {
+namespace libyuv
+{
extern "C" {
#endif
diff --git a/thirdparties/iphone/include/libyuv/libyuv/video_common.h b/thirdparties/iphone/include/libyuv/libyuv/video_common.h
index 91acc2f..849c3fc 100755
--- a/thirdparties/iphone/include/libyuv/libyuv/video_common.h
+++ b/thirdparties/iphone/include/libyuv/libyuv/video_common.h
@@ -16,7 +16,8 @@
#include "libyuv/basic_types.h"
#ifdef __cplusplus
-namespace libyuv {
+namespace libyuv
+{
extern "C" {
#endif
@@ -48,131 +49,131 @@ extern "C" {
// Primary formats should convert in 1 efficient step.
// Secondary formats are converted in 2 steps.
// Auxilliary formats call primary converters.
-enum FourCC {
- // 9 Primary YUV formats: 5 planar, 2 biplanar, 2 packed.
- FOURCC_I420 = FOURCC('I', '4', '2', '0'),
- FOURCC_I422 = FOURCC('I', '4', '2', '2'),
- FOURCC_I444 = FOURCC('I', '4', '4', '4'),
- FOURCC_I411 = FOURCC('I', '4', '1', '1'),
- FOURCC_I400 = FOURCC('I', '4', '0', '0'),
- FOURCC_NV21 = FOURCC('N', 'V', '2', '1'),
- FOURCC_NV12 = FOURCC('N', 'V', '1', '2'),
- FOURCC_YUY2 = FOURCC('Y', 'U', 'Y', '2'),
- FOURCC_UYVY = FOURCC('U', 'Y', 'V', 'Y'),
-
- // 2 Secondary YUV formats: row biplanar.
- FOURCC_M420 = FOURCC('M', '4', '2', '0'),
- FOURCC_Q420 = FOURCC('Q', '4', '2', '0'),
-
- // 9 Primary RGB formats: 4 32 bpp, 2 24 bpp, 3 16 bpp.
- FOURCC_ARGB = FOURCC('A', 'R', 'G', 'B'),
- FOURCC_BGRA = FOURCC('B', 'G', 'R', 'A'),
- FOURCC_ABGR = FOURCC('A', 'B', 'G', 'R'),
- FOURCC_24BG = FOURCC('2', '4', 'B', 'G'),
- FOURCC_RAW = FOURCC('r', 'a', 'w', ' '),
- FOURCC_RGBA = FOURCC('R', 'G', 'B', 'A'),
- FOURCC_RGBP = FOURCC('R', 'G', 'B', 'P'), // rgb565 LE.
- FOURCC_RGBO = FOURCC('R', 'G', 'B', 'O'), // argb1555 LE.
- FOURCC_R444 = FOURCC('R', '4', '4', '4'), // argb4444 LE.
-
- // 4 Secondary RGB formats: 4 Bayer Patterns.
- FOURCC_RGGB = FOURCC('R', 'G', 'G', 'B'),
- FOURCC_BGGR = FOURCC('B', 'G', 'G', 'R'),
- FOURCC_GRBG = FOURCC('G', 'R', 'B', 'G'),
- FOURCC_GBRG = FOURCC('G', 'B', 'R', 'G'),
-
- // 1 Primary Compressed YUV format.
- FOURCC_MJPG = FOURCC('M', 'J', 'P', 'G'),
-
- // 5 Auxiliary YUV variations: 3 with U and V planes are swapped, 1 Alias.
- FOURCC_YV12 = FOURCC('Y', 'V', '1', '2'),
- FOURCC_YV16 = FOURCC('Y', 'V', '1', '6'),
- FOURCC_YV24 = FOURCC('Y', 'V', '2', '4'),
- FOURCC_YU12 = FOURCC('Y', 'U', '1', '2'), // Linux version of I420.
- FOURCC_J420 = FOURCC('J', '4', '2', '0'),
- FOURCC_J400 = FOURCC('J', '4', '0', '0'),
-
- // 14 Auxiliary aliases. CanonicalFourCC() maps these to canonical fourcc.
- FOURCC_IYUV = FOURCC('I', 'Y', 'U', 'V'), // Alias for I420.
- FOURCC_YU16 = FOURCC('Y', 'U', '1', '6'), // Alias for I422.
- FOURCC_YU24 = FOURCC('Y', 'U', '2', '4'), // Alias for I444.
- FOURCC_YUYV = FOURCC('Y', 'U', 'Y', 'V'), // Alias for YUY2.
- FOURCC_YUVS = FOURCC('y', 'u', 'v', 's'), // Alias for YUY2 on Mac.
- FOURCC_HDYC = FOURCC('H', 'D', 'Y', 'C'), // Alias for UYVY.
- FOURCC_2VUY = FOURCC('2', 'v', 'u', 'y'), // Alias for UYVY on Mac.
- FOURCC_JPEG = FOURCC('J', 'P', 'E', 'G'), // Alias for MJPG.
- FOURCC_DMB1 = FOURCC('d', 'm', 'b', '1'), // Alias for MJPG on Mac.
- FOURCC_BA81 = FOURCC('B', 'A', '8', '1'), // Alias for BGGR.
- FOURCC_RGB3 = FOURCC('R', 'G', 'B', '3'), // Alias for RAW.
- FOURCC_BGR3 = FOURCC('B', 'G', 'R', '3'), // Alias for 24BG.
- FOURCC_CM32 = FOURCC(0, 0, 0, 32), // Alias for BGRA kCMPixelFormat_32ARGB
- FOURCC_CM24 = FOURCC(0, 0, 0, 24), // Alias for RAW kCMPixelFormat_24RGB
- FOURCC_L555 = FOURCC('L', '5', '5', '5'), // Alias for RGBO.
- FOURCC_L565 = FOURCC('L', '5', '6', '5'), // Alias for RGBP.
- FOURCC_5551 = FOURCC('5', '5', '5', '1'), // Alias for RGBO.
-
- // 1 Auxiliary compressed YUV format set aside for capturer.
- FOURCC_H264 = FOURCC('H', '2', '6', '4'),
-
- // Match any fourcc.
- FOURCC_ANY = -1,
-};
-
-enum FourCCBpp {
- // Canonical fourcc codes used in our code.
- FOURCC_BPP_I420 = 12,
- FOURCC_BPP_I422 = 16,
- FOURCC_BPP_I444 = 24,
- FOURCC_BPP_I411 = 12,
- FOURCC_BPP_I400 = 8,
- FOURCC_BPP_NV21 = 12,
- FOURCC_BPP_NV12 = 12,
- FOURCC_BPP_YUY2 = 16,
- FOURCC_BPP_UYVY = 16,
- FOURCC_BPP_M420 = 12,
- FOURCC_BPP_Q420 = 12,
- FOURCC_BPP_ARGB = 32,
- FOURCC_BPP_BGRA = 32,
- FOURCC_BPP_ABGR = 32,
- FOURCC_BPP_RGBA = 32,
- FOURCC_BPP_24BG = 24,
- FOURCC_BPP_RAW = 24,
- FOURCC_BPP_RGBP = 16,
- FOURCC_BPP_RGBO = 16,
- FOURCC_BPP_R444 = 16,
- FOURCC_BPP_RGGB = 8,
- FOURCC_BPP_BGGR = 8,
- FOURCC_BPP_GRBG = 8,
- FOURCC_BPP_GBRG = 8,
- FOURCC_BPP_YV12 = 12,
- FOURCC_BPP_YV16 = 16,
- FOURCC_BPP_YV24 = 24,
- FOURCC_BPP_YU12 = 12,
- FOURCC_BPP_J420 = 12,
- FOURCC_BPP_J400 = 8,
- FOURCC_BPP_MJPG = 0, // 0 means unknown.
- FOURCC_BPP_H264 = 0,
- FOURCC_BPP_IYUV = 12,
- FOURCC_BPP_YU16 = 16,
- FOURCC_BPP_YU24 = 24,
- FOURCC_BPP_YUYV = 16,
- FOURCC_BPP_YUVS = 16,
- FOURCC_BPP_HDYC = 16,
- FOURCC_BPP_2VUY = 16,
- FOURCC_BPP_JPEG = 1,
- FOURCC_BPP_DMB1 = 1,
- FOURCC_BPP_BA81 = 8,
- FOURCC_BPP_RGB3 = 24,
- FOURCC_BPP_BGR3 = 24,
- FOURCC_BPP_CM32 = 32,
- FOURCC_BPP_CM24 = 24,
-
- // Match any fourcc.
- FOURCC_BPP_ANY = 0, // 0 means unknown.
-};
+ enum FourCC {
+ // 9 Primary YUV formats: 5 planar, 2 biplanar, 2 packed.
+ FOURCC_I420 = FOURCC('I', '4', '2', '0'),
+ FOURCC_I422 = FOURCC('I', '4', '2', '2'),
+ FOURCC_I444 = FOURCC('I', '4', '4', '4'),
+ FOURCC_I411 = FOURCC('I', '4', '1', '1'),
+ FOURCC_I400 = FOURCC('I', '4', '0', '0'),
+ FOURCC_NV21 = FOURCC('N', 'V', '2', '1'),
+ FOURCC_NV12 = FOURCC('N', 'V', '1', '2'),
+ FOURCC_YUY2 = FOURCC('Y', 'U', 'Y', '2'),
+ FOURCC_UYVY = FOURCC('U', 'Y', 'V', 'Y'),
+
+ // 2 Secondary YUV formats: row biplanar.
+ FOURCC_M420 = FOURCC('M', '4', '2', '0'),
+ FOURCC_Q420 = FOURCC('Q', '4', '2', '0'),
+
+ // 9 Primary RGB formats: 4 32 bpp, 2 24 bpp, 3 16 bpp.
+ FOURCC_ARGB = FOURCC('A', 'R', 'G', 'B'),
+ FOURCC_BGRA = FOURCC('B', 'G', 'R', 'A'),
+ FOURCC_ABGR = FOURCC('A', 'B', 'G', 'R'),
+ FOURCC_24BG = FOURCC('2', '4', 'B', 'G'),
+ FOURCC_RAW = FOURCC('r', 'a', 'w', ' '),
+ FOURCC_RGBA = FOURCC('R', 'G', 'B', 'A'),
+ FOURCC_RGBP = FOURCC('R', 'G', 'B', 'P'), // rgb565 LE.
+ FOURCC_RGBO = FOURCC('R', 'G', 'B', 'O'), // argb1555 LE.
+ FOURCC_R444 = FOURCC('R', '4', '4', '4'), // argb4444 LE.
+
+ // 4 Secondary RGB formats: 4 Bayer Patterns.
+ FOURCC_RGGB = FOURCC('R', 'G', 'G', 'B'),
+ FOURCC_BGGR = FOURCC('B', 'G', 'G', 'R'),
+ FOURCC_GRBG = FOURCC('G', 'R', 'B', 'G'),
+ FOURCC_GBRG = FOURCC('G', 'B', 'R', 'G'),
+
+ // 1 Primary Compressed YUV format.
+ FOURCC_MJPG = FOURCC('M', 'J', 'P', 'G'),
+
+ // 5 Auxiliary YUV variations: 3 with U and V planes are swapped, 1 Alias.
+ FOURCC_YV12 = FOURCC('Y', 'V', '1', '2'),
+ FOURCC_YV16 = FOURCC('Y', 'V', '1', '6'),
+ FOURCC_YV24 = FOURCC('Y', 'V', '2', '4'),
+ FOURCC_YU12 = FOURCC('Y', 'U', '1', '2'), // Linux version of I420.
+ FOURCC_J420 = FOURCC('J', '4', '2', '0'),
+ FOURCC_J400 = FOURCC('J', '4', '0', '0'),
+
+ // 14 Auxiliary aliases. CanonicalFourCC() maps these to canonical fourcc.
+ FOURCC_IYUV = FOURCC('I', 'Y', 'U', 'V'), // Alias for I420.
+ FOURCC_YU16 = FOURCC('Y', 'U', '1', '6'), // Alias for I422.
+ FOURCC_YU24 = FOURCC('Y', 'U', '2', '4'), // Alias for I444.
+ FOURCC_YUYV = FOURCC('Y', 'U', 'Y', 'V'), // Alias for YUY2.
+ FOURCC_YUVS = FOURCC('y', 'u', 'v', 's'), // Alias for YUY2 on Mac.
+ FOURCC_HDYC = FOURCC('H', 'D', 'Y', 'C'), // Alias for UYVY.
+ FOURCC_2VUY = FOURCC('2', 'v', 'u', 'y'), // Alias for UYVY on Mac.
+ FOURCC_JPEG = FOURCC('J', 'P', 'E', 'G'), // Alias for MJPG.
+ FOURCC_DMB1 = FOURCC('d', 'm', 'b', '1'), // Alias for MJPG on Mac.
+ FOURCC_BA81 = FOURCC('B', 'A', '8', '1'), // Alias for BGGR.
+ FOURCC_RGB3 = FOURCC('R', 'G', 'B', '3'), // Alias for RAW.
+ FOURCC_BGR3 = FOURCC('B', 'G', 'R', '3'), // Alias for 24BG.
+ FOURCC_CM32 = FOURCC(0, 0, 0, 32), // Alias for BGRA kCMPixelFormat_32ARGB
+ FOURCC_CM24 = FOURCC(0, 0, 0, 24), // Alias for RAW kCMPixelFormat_24RGB
+ FOURCC_L555 = FOURCC('L', '5', '5', '5'), // Alias for RGBO.
+ FOURCC_L565 = FOURCC('L', '5', '6', '5'), // Alias for RGBP.
+ FOURCC_5551 = FOURCC('5', '5', '5', '1'), // Alias for RGBO.
+
+ // 1 Auxiliary compressed YUV format set aside for capturer.
+ FOURCC_H264 = FOURCC('H', '2', '6', '4'),
+
+ // Match any fourcc.
+ FOURCC_ANY = -1,
+ };
+
+ enum FourCCBpp {
+ // Canonical fourcc codes used in our code.
+ FOURCC_BPP_I420 = 12,
+ FOURCC_BPP_I422 = 16,
+ FOURCC_BPP_I444 = 24,
+ FOURCC_BPP_I411 = 12,
+ FOURCC_BPP_I400 = 8,
+ FOURCC_BPP_NV21 = 12,
+ FOURCC_BPP_NV12 = 12,
+ FOURCC_BPP_YUY2 = 16,
+ FOURCC_BPP_UYVY = 16,
+ FOURCC_BPP_M420 = 12,
+ FOURCC_BPP_Q420 = 12,
+ FOURCC_BPP_ARGB = 32,
+ FOURCC_BPP_BGRA = 32,
+ FOURCC_BPP_ABGR = 32,
+ FOURCC_BPP_RGBA = 32,
+ FOURCC_BPP_24BG = 24,
+ FOURCC_BPP_RAW = 24,
+ FOURCC_BPP_RGBP = 16,
+ FOURCC_BPP_RGBO = 16,
+ FOURCC_BPP_R444 = 16,
+ FOURCC_BPP_RGGB = 8,
+ FOURCC_BPP_BGGR = 8,
+ FOURCC_BPP_GRBG = 8,
+ FOURCC_BPP_GBRG = 8,
+ FOURCC_BPP_YV12 = 12,
+ FOURCC_BPP_YV16 = 16,
+ FOURCC_BPP_YV24 = 24,
+ FOURCC_BPP_YU12 = 12,
+ FOURCC_BPP_J420 = 12,
+ FOURCC_BPP_J400 = 8,
+ FOURCC_BPP_MJPG = 0, // 0 means unknown.
+ FOURCC_BPP_H264 = 0,
+ FOURCC_BPP_IYUV = 12,
+ FOURCC_BPP_YU16 = 16,
+ FOURCC_BPP_YU24 = 24,
+ FOURCC_BPP_YUYV = 16,
+ FOURCC_BPP_YUVS = 16,
+ FOURCC_BPP_HDYC = 16,
+ FOURCC_BPP_2VUY = 16,
+ FOURCC_BPP_JPEG = 1,
+ FOURCC_BPP_DMB1 = 1,
+ FOURCC_BPP_BA81 = 8,
+ FOURCC_BPP_RGB3 = 24,
+ FOURCC_BPP_BGR3 = 24,
+ FOURCC_BPP_CM32 = 32,
+ FOURCC_BPP_CM24 = 24,
+
+ // Match any fourcc.
+ FOURCC_BPP_ANY = 0, // 0 means unknown.
+ };
// Converts fourcc aliases into canonical ones.
-LIBYUV_API uint32 CanonicalFourCC(uint32 fourcc);
+ LIBYUV_API uint32 CanonicalFourCC(uint32 fourcc);
#ifdef __cplusplus
} // extern "C"
diff --git a/thirdparties/iphone/include/net/_route.h b/thirdparties/iphone/include/net/_route.h
index a7e26c8..2d801bc 100755
--- a/thirdparties/iphone/include/net/_route.h
+++ b/thirdparties/iphone/include/net/_route.h
@@ -2,7 +2,7 @@
* Copyright (c) 2000-2008 Apple Inc. All rights reserved.
*
* @APPLE_OSREFERENCE_LICENSE_HEADER_START@
- *
+ *
* This file contains Original Code and/or Modifications of Original Code
* as defined in and that are subject to the Apple Public Source License
* Version 2.0 (the 'License'). You may not use this file except in
@@ -11,10 +11,10 @@
* unlawful or unlicensed copies of an Apple operating system, or to
* circumvent, violate, or enable the circumvention or violation of, any
* terms of an Apple operating system software license agreement.
- *
+ *
* Please obtain a copy of the License at
* http://www.opensource.apple.com/apsl/ and read it before using this file.
- *
+ *
* The Original Code and all software distributed under the License are
* distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
* EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
@@ -22,7 +22,7 @@
* FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
* Please see the License for the specific language governing rights and
* limitations under the License.
- *
+ *
* @APPLE_OSREFERENCE_LICENSE_HEADER_END@
*/
/*
@@ -87,17 +87,17 @@ struct route;
* retransmission behavior and are included in the routing structure.
*/
struct rt_metrics {
- u_int32_t rmx_locks; /* Kernel must leave these values alone */
- u_int32_t rmx_mtu; /* MTU for this path */
- u_int32_t rmx_hopcount; /* max hops expected */
- int32_t rmx_expire; /* lifetime for route, e.g. redirect */
- u_int32_t rmx_recvpipe; /* inbound delay-bandwidth product */
- u_int32_t rmx_sendpipe; /* outbound delay-bandwidth product */
- u_int32_t rmx_ssthresh; /* outbound gateway buffer limit */
- u_int32_t rmx_rtt; /* estimated round trip time */
- u_int32_t rmx_rttvar; /* estimated rtt variance */
- u_int32_t rmx_pksent; /* packets sent using this route */
- u_int32_t rmx_filler[4]; /* will be used for T/TCP later */
+ u_int32_t rmx_locks; /* Kernel must leave these values alone */
+ u_int32_t rmx_mtu; /* MTU for this path */
+ u_int32_t rmx_hopcount; /* max hops expected */
+ int32_t rmx_expire; /* lifetime for route, e.g. redirect */
+ u_int32_t rmx_recvpipe; /* inbound delay-bandwidth product */
+ u_int32_t rmx_sendpipe; /* outbound delay-bandwidth product */
+ u_int32_t rmx_ssthresh; /* outbound gateway buffer limit */
+ u_int32_t rmx_rtt; /* estimated round trip time */
+ u_int32_t rmx_rttvar; /* estimated rtt variance */
+ u_int32_t rmx_pksent; /* packets sent using this route */
+ u_int32_t rmx_filler[4]; /* will be used for T/TCP later */
};
/*
@@ -134,57 +134,57 @@ struct rt_metrics {
#define RTF_PRCLONING 0x10000 /* protocol requires cloning */
#define RTF_WASCLONED 0x20000 /* route generated through cloning */
#define RTF_PROTO3 0x40000 /* protocol specific routing flag */
- /* 0x80000 unused */
+/* 0x80000 unused */
#define RTF_PINNED 0x100000 /* future use */
#define RTF_LOCAL 0x200000 /* route represents a local address */
#define RTF_BROADCAST 0x400000 /* route represents a bcast address */
#define RTF_MULTICAST 0x800000 /* route represents a mcast address */
#define RTF_IFSCOPE 0x1000000 /* has valid interface scope */
#define RTF_CONDEMNED 0x2000000 /* defunct; no longer modifiable */
- /* 0x4000000 and up unassigned */
+/* 0x4000000 and up unassigned */
/*
* Routing statistics.
*/
struct rtstat {
- short rts_badredirect; /* bogus redirect calls */
- short rts_dynamic; /* routes created by redirects */
- short rts_newgateway; /* routes modified by redirects */
- short rts_unreach; /* lookups which failed */
- short rts_wildcard; /* lookups satisfied by a wildcard */
+ short rts_badredirect; /* bogus redirect calls */
+ short rts_dynamic; /* routes created by redirects */
+ short rts_newgateway; /* routes modified by redirects */
+ short rts_unreach; /* lookups which failed */
+ short rts_wildcard; /* lookups satisfied by a wildcard */
};
/*
* Structures for routing messages.
*/
struct rt_msghdr {
- u_short rtm_msglen; /* to skip over non-understood messages */
- u_char rtm_version; /* future binary compatibility */
- u_char rtm_type; /* message type */
- u_short rtm_index; /* index for associated ifp */
- int rtm_flags; /* flags, incl. kern & message, e.g. DONE */
- int rtm_addrs; /* bitmask identifying sockaddrs in msg */
- pid_t rtm_pid; /* identify sender */
- int rtm_seq; /* for sender to identify action */
- int rtm_errno; /* why failed */
- int rtm_use; /* from rtentry */
- u_int32_t rtm_inits; /* which metrics we are initializing */
- struct rt_metrics rtm_rmx; /* metrics themselves */
+ u_short rtm_msglen; /* to skip over non-understood messages */
+ u_char rtm_version; /* future binary compatibility */
+ u_char rtm_type; /* message type */
+ u_short rtm_index; /* index for associated ifp */
+ int rtm_flags; /* flags, incl. kern & message, e.g. DONE */
+ int rtm_addrs; /* bitmask identifying sockaddrs in msg */
+ pid_t rtm_pid; /* identify sender */
+ int rtm_seq; /* for sender to identify action */
+ int rtm_errno; /* why failed */
+ int rtm_use; /* from rtentry */
+ u_int32_t rtm_inits; /* which metrics we are initializing */
+ struct rt_metrics rtm_rmx; /* metrics themselves */
};
struct rt_msghdr2 {
- u_short rtm_msglen; /* to skip over non-understood messages */
- u_char rtm_version; /* future binary compatibility */
- u_char rtm_type; /* message type */
- u_short rtm_index; /* index for associated ifp */
- int rtm_flags; /* flags, incl. kern & message, e.g. DONE */
- int rtm_addrs; /* bitmask identifying sockaddrs in msg */
- int32_t rtm_refcnt; /* reference count */
- int rtm_parentflags; /* flags of the parent route */
- int rtm_reserved; /* reserved field set to 0 */
- int rtm_use; /* from rtentry */
- u_int32_t rtm_inits; /* which metrics we are initializing */
- struct rt_metrics rtm_rmx; /* metrics themselves */
+ u_short rtm_msglen; /* to skip over non-understood messages */
+ u_char rtm_version; /* future binary compatibility */
+ u_char rtm_type; /* message type */
+ u_short rtm_index; /* index for associated ifp */
+ int rtm_flags; /* flags, incl. kern & message, e.g. DONE */
+ int rtm_addrs; /* bitmask identifying sockaddrs in msg */
+ int32_t rtm_refcnt; /* reference count */
+ int rtm_parentflags; /* flags of the parent route */
+ int rtm_reserved; /* reserved field set to 0 */
+ int rtm_use; /* from rtentry */
+ u_int32_t rtm_inits; /* which metrics we are initializing */
+ struct rt_metrics rtm_rmx; /* metrics themselves */
};
@@ -251,17 +251,17 @@ struct rt_msghdr2 {
#define RTAX_MAX 8 /* size of array to allocate */
struct rt_addrinfo {
- int rti_addrs;
- struct sockaddr *rti_info[RTAX_MAX];
+ int rti_addrs;
+ struct sockaddr *rti_info[RTAX_MAX];
};
struct route_cb {
- int ip_count;
- int ip6_count;
- int ipx_count;
- int ns_count;
- int iso_count;
- int any_count;
+ int ip_count;
+ int ip6_count;
+ int ipx_count;
+ int ns_count;
+ int iso_count;
+ int any_count;
};
diff --git a/thirdparties/iphone/include/opencore-amrnb/interf_enc.h b/thirdparties/iphone/include/opencore-amrnb/interf_enc.h
index b89b0c7..42b0df4 100755
--- a/thirdparties/iphone/include/opencore-amrnb/interf_enc.h
+++ b/thirdparties/iphone/include/opencore-amrnb/interf_enc.h
@@ -26,16 +26,16 @@ extern "C" {
#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 */
+ 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
diff --git a/thirdparties/iphone/include/speex/speex.h b/thirdparties/iphone/include/speex/speex.h
index 82ba016..0eb560e 100755
--- a/thirdparties/iphone/include/speex/speex.h
+++ b/thirdparties/iphone/include/speex/speex.h
@@ -7,18 +7,18 @@
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
@@ -245,70 +245,70 @@ 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 */
+/** Struct defining a Speex mode */
typedef struct SpeexMode {
- /** Pointer to the low-level mode data */
- const void *mode;
+ /** Pointer to the low-level mode data */
+ const void *mode;
+
+ /** Pointer to the mode query function */
+ mode_query_func query;
- /** 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;
+ /** The name of the mode (you should not rely on this to identify the mode)*/
+ const char *modeName;
- /**ID of the mode*/
- int modeID;
+ /**ID of the mode*/
+ int modeID;
- /**Version number of the bitstream (incremented every time we break
- bitstream compatibility*/
- int bitstream_version;
+ /**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 initialization function */
+ encoder_init_func enc_init;
- /** Pointer to encoder destruction function */
- encoder_destroy_func enc_destroy;
+ /** Pointer to encoder destruction function */
+ encoder_destroy_func enc_destroy;
- /** Pointer to frame encoding function */
- encode_func enc;
+ /** Pointer to frame encoding function */
+ encode_func enc;
- /** Pointer to decoder initialization function */
- decoder_init_func dec_init;
+ /** Pointer to decoder initialization function */
+ decoder_init_func dec_init;
- /** Pointer to decoder destruction function */
- decoder_destroy_func dec_destroy;
+ /** Pointer to decoder destruction function */
+ decoder_destroy_func dec_destroy;
- /** Pointer to frame decoding function */
- decode_func dec;
+ /** Pointer to frame decoding function */
+ decode_func dec;
- /** ioctl-like requests for encoder */
- encoder_ctl_func enc_ctl;
+ /** ioctl-like requests for encoder */
+ encoder_ctl_func enc_ctl;
- /** ioctl-like requests for decoder */
- decoder_ctl_func dec_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
+ * 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)
+ * @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.
+/** 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
+ @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
@@ -334,14 +334,14 @@ int speex_encode_int(void *state, spx_int16_t *in, SpeexBits *bits);
int speex_encoder_ctl(void *state, int request, void *ptr);
-/** Returns a handle to a newly created decoder state structure. For now,
+/** 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.
diff --git a/thirdparties/iphone/include/speex/speex_bits.h b/thirdparties/iphone/include/speex/speex_bits.h
index a26fb4c..dd3b752 100755
--- a/thirdparties/iphone/include/speex/speex_bits.h
+++ b/thirdparties/iphone/include/speex/speex_bits.h
@@ -7,18 +7,18 @@
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
@@ -47,15 +47,15 @@ extern "C" {
/** 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 */
+ 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 */
@@ -80,7 +80,7 @@ void speex_bits_rewind(SpeexBits *bits);
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
@@ -88,7 +88,7 @@ void speex_bits_read_from(SpeexBits *bits, char *bytes, int len);
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)
@@ -129,8 +129,8 @@ unsigned int speex_bits_unpack_unsigned(SpeexBits *bits, int nbBits);
*/
int speex_bits_nbytes(SpeexBits *bits);
-/** Same as speex_bits_unpack_unsigned, but without modifying the cursor position
- *
+/** 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
@@ -138,14 +138,14 @@ int speex_bits_nbytes(SpeexBits *bits);
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
- *
+ * "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
+/** Advances the position of the "bit cursor" in the stream
*
* @param bits Bit-stream to operate on
* @param n Number of bits to advance
@@ -159,8 +159,8 @@ void speex_bits_advance(SpeexBits *bits, int n);
*/
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
+/** 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
*/
diff --git a/thirdparties/iphone/include/speex/speex_buffer.h b/thirdparties/iphone/include/speex/speex_buffer.h
index df56f5f..909bd6d 100755
--- a/thirdparties/iphone/include/speex/speex_buffer.h
+++ b/thirdparties/iphone/include/speex/speex_buffer.h
@@ -1,5 +1,5 @@
/* 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.
diff --git a/thirdparties/iphone/include/speex/speex_callbacks.h b/thirdparties/iphone/include/speex/speex_callbacks.h
index 6f450b3..27b5649 100755
--- a/thirdparties/iphone/include/speex/speex_callbacks.h
+++ b/thirdparties/iphone/include/speex/speex_callbacks.h
@@ -7,18 +7,18 @@
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
@@ -89,11 +89,11 @@ 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 */
+ 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 */
diff --git a/thirdparties/iphone/include/speex/speex_echo.h b/thirdparties/iphone/include/speex/speex_echo.h
index 53bcd28..582e1cc 100755
--- a/thirdparties/iphone/include/speex/speex_echo.h
+++ b/thirdparties/iphone/include/speex/speex_echo.h
@@ -63,7 +63,7 @@ extern "C" {
struct SpeexEchoState_;
/** @class SpeexEchoState
- * This holds the state of the echo canceller. You need one per channel.
+ * This holds the state of the echo canceller. You need one per channel.
*/
/** Internal echo canceller state. Should never be accessed directly. */
@@ -85,7 +85,7 @@ SpeexEchoState *speex_echo_state_init(int frame_size, int filter_length);
*/
SpeexEchoState *speex_echo_state_init_mc(int frame_size, int filter_length, int nb_mic, int nb_speakers);
-/** Destroys an echo canceller state
+/** Destroys an echo canceller state
* @param st Echo canceller state
*/
void speex_echo_state_destroy(SpeexEchoState *st);
@@ -117,7 +117,7 @@ void speex_echo_capture(SpeexEchoState *st, const spx_int16_t *rec, spx_int16_t
*/
void speex_echo_playback(SpeexEchoState *st, const spx_int16_t *play);
-/** Reset the echo canceller to its original state
+/** Reset the echo canceller to its original state
* @param st Echo canceller state
*/
void speex_echo_state_reset(SpeexEchoState *st);
@@ -139,7 +139,7 @@ typedef struct SpeexDecorrState_ SpeexDecorrState;
/** Create a state for the channel decorrelation algorithm
- This is useful for multi-channel echo cancellation only
+ 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)
@@ -155,7 +155,7 @@ SpeexDecorrState *speex_decorrelate_new(int rate, int channels, int frame_size);
*/
void speex_decorrelate(SpeexDecorrState *st, const spx_int16_t *in, spx_int16_t *out, int strength);
-/** Destroy a Decorrelation state
+/** Destroy a Decorrelation state
* @param st State to destroy
*/
void speex_decorrelate_destroy(SpeexDecorrState *st);
diff --git a/thirdparties/iphone/include/speex/speex_header.h b/thirdparties/iphone/include/speex/speex_header.h
index f85b249..4cc15df 100755
--- a/thirdparties/iphone/include/speex/speex_header.h
+++ b/thirdparties/iphone/include/speex/speex_header.h
@@ -7,18 +7,18 @@
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
@@ -57,21 +57,21 @@ struct SpeexMode;
/** 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 */
+ 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 */
diff --git a/thirdparties/iphone/include/speex/speex_jitter.h b/thirdparties/iphone/include/speex/speex_jitter.h
index d68674b..e6f0321 100755
--- a/thirdparties/iphone/include/speex/speex_jitter.h
+++ b/thirdparties/iphone/include/speex/speex_jitter.h
@@ -7,18 +7,18 @@
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
@@ -58,12 +58,12 @@ 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) */
+ 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 */
@@ -89,7 +89,7 @@ struct _JitterBufferPacket {
/** 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
+/** 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
/** */
@@ -104,7 +104,7 @@ struct _JitterBufferPacket {
#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
+/** 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
@@ -114,59 +114,59 @@ struct _JitterBufferPacket {
#define JITTER_BUFFER_GET_LATE_COST 13
-/** Initialises jitter buffer
- *
- * @param step_size Starting value for the size of concleanment packets and delay
+/** 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
- *
+/** Restores jitter buffer to its original state
+ *
* @param jitter Jitter buffer state
*/
void jitter_buffer_reset(JitterBuffer *jitter);
-/** Destroys jitter buffer
- *
+/** 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
+ * @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);
@@ -178,7 +178,7 @@ void jitter_buffer_tick(JitterBuffer *jitter);
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
diff --git a/thirdparties/iphone/include/speex/speex_preprocess.h b/thirdparties/iphone/include/speex/speex_preprocess.h
index f8eef2c..5cd3710 100755
--- a/thirdparties/iphone/include/speex/speex_preprocess.h
+++ b/thirdparties/iphone/include/speex/speex_preprocess.h
@@ -2,7 +2,7 @@
Written by Jean-Marc Valin */
/**
* @file speex_preprocess.h
- * @brief Speex preprocessor. The preprocess can do noise suppression,
+ * @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).
*/
@@ -37,7 +37,7 @@
#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,
+ * 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).
* @{
@@ -48,7 +48,7 @@
#ifdef __cplusplus
extern "C" {
#endif
-
+
/** State of the preprocessor (one per channel). Should never be accessed directly. */
struct SpeexPreprocessState_;
@@ -64,12 +64,12 @@ typedef struct SpeexPreprocessState_ SpeexPreprocessState;
*/
SpeexPreprocessState *speex_preprocess_state_init(int frame_size, int sampling_rate);
-/** Destroys a preprocessor state
+/** Destroys a preprocessor state
* @param st Preprocessor state to destroy
*/
void speex_preprocess_state_destroy(SpeexPreprocessState *st);
-/** Preprocess a frame
+/** 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.
@@ -85,7 +85,7 @@ int speex_preprocess(SpeexPreprocessState *st, spx_int16_t *x, spx_int32_t *echo
*/
void speex_preprocess_estimate_update(SpeexPreprocessState *st, spx_int16_t *x);
-/** Used like the ioctl function to control the preprocessor parameters
+/** 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
diff --git a/thirdparties/iphone/include/speex/speex_resampler.h b/thirdparties/iphone/include/speex/speex_resampler.h
index 54eef8d..4aefa61 100755
--- a/thirdparties/iphone/include/speex/speex_resampler.h
+++ b/thirdparties/iphone/include/speex/speex_resampler.h
@@ -1,8 +1,8 @@
/* 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
@@ -43,7 +43,7 @@
/********* WARNING: MENTAL SANITY ENDS HERE *************/
-/* If the resampler is defined outside of Speex, we change the symbol names so that
+/* 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 */
@@ -53,7 +53,7 @@
#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)
@@ -81,7 +81,7 @@
#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"
@@ -99,13 +99,13 @@ extern "C" {
#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
+ 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_;
@@ -120,14 +120,14 @@ typedef struct SpeexResamplerState_ SpeexResamplerState;
* @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
+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
@@ -139,13 +139,13 @@ SpeexResamplerState *speex_resampler_init(spx_uint32_t nb_channels,
* @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);
+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
@@ -154,24 +154,24 @@ 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
+ * @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
+ * @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);
+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
+ * @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
@@ -179,12 +179,12 @@ int speex_resampler_process_float(SpeexResamplerState *st,
* @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);
+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
@@ -195,11 +195,11 @@ int speex_resampler_process_int(SpeexResamplerState *st,
* @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);
+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
@@ -210,31 +210,31 @@ int speex_resampler_process_interleaved_float(SpeexResamplerState *st,
* @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);
+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);
+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,
+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
+/** 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
@@ -242,11 +242,11 @@ void speex_resampler_get_rate(SpeexResamplerState *st,
* @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);
+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.
@@ -254,53 +254,53 @@ int speex_resampler_set_rate_frac(SpeexResamplerState *st,
* @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,
+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
+ * @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);
+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
+ * @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,
+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,
+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,
+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);
+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);
+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
@@ -312,8 +312,8 @@ int speex_resampler_get_input_latency(SpeexResamplerState *st);
*/
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
+/** 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
diff --git a/thirdparties/iphone/include/speex/speex_stereo.h b/thirdparties/iphone/include/speex/speex_stereo.h
index a259713..f33704d 100755
--- a/thirdparties/iphone/include/speex/speex_stereo.h
+++ b/thirdparties/iphone/include/speex/speex_stereo.h
@@ -7,18 +7,18 @@
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
@@ -48,12 +48,12 @@ extern "C" {
/** 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 */
+ 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. */
diff --git a/thirdparties/iphone/include/speex/speex_types.h b/thirdparties/iphone/include/speex/speex_types.h
index 737c5fa..b262aac 100755
--- a/thirdparties/iphone/include/speex/speex_types.h
+++ b/thirdparties/iphone/include/speex/speex_types.h
@@ -22,107 +22,107 @@
#ifndef _SPEEX_TYPES_H
#define _SPEEX_TYPES_H
-#if defined(_WIN32)
+#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;
+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;
+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;
+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;
+/* 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;
+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;
+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 */
+/* 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;
+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;
+/* 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;
+/* 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;
+/* 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;
+/* 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;
+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;
+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;
+typedef short spx_int16_t;
+typedef unsigned short spx_uint16_t;
+typedef int spx_int32_t;
+typedef unsigned int spx_uint32_t;
#else
diff --git a/thirdparties/iphone/include/srtp/aes.h b/thirdparties/iphone/include/srtp/aes.h
index 2881337..97fdb63 100755
--- a/thirdparties/iphone/include/srtp/aes.h
+++ b/thirdparties/iphone/include/srtp/aes.h
@@ -8,26 +8,26 @@
*/
/*
- *
+ *
* Copyright (c) 2001-2006, Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -55,19 +55,19 @@
/* aes internals */
typedef struct {
- v128_t round[15];
- int num_rounds;
+ v128_t round[15];
+ int num_rounds;
} aes_expanded_key_t;
err_status_t
aes_expand_encryption_key(const uint8_t *key,
- int key_len,
- aes_expanded_key_t *expanded_key);
+ int key_len,
+ aes_expanded_key_t *expanded_key);
err_status_t
aes_expand_decryption_key(const uint8_t *key,
- int key_len,
- aes_expanded_key_t *expanded_key);
+ int key_len,
+ aes_expanded_key_t *expanded_key);
void
aes_encrypt(v128_t *plaintext, const aes_expanded_key_t *exp_key);
@@ -77,7 +77,7 @@ aes_decrypt(v128_t *plaintext, const aes_expanded_key_t *exp_key);
#if 0
/*
- * internal functions
+ * internal functions
*/
void
@@ -85,6 +85,6 @@ aes_init_sbox(void);
void
aes_compute_tables(void);
-#endif
+#endif
#endif /* _AES_H */
diff --git a/thirdparties/iphone/include/srtp/aes_cbc.h b/thirdparties/iphone/include/srtp/aes_cbc.h
index bc4e41a..7abd6d6 100755
--- a/thirdparties/iphone/include/srtp/aes_cbc.h
+++ b/thirdparties/iphone/include/srtp/aes_cbc.h
@@ -15,36 +15,36 @@
#include "cipher.h"
typedef struct {
- v128_t state; /* cipher chaining state */
- v128_t previous; /* previous ciphertext block */
- aes_expanded_key_t expanded_key; /* the cipher key */
+ v128_t state; /* cipher chaining state */
+ v128_t previous; /* previous ciphertext block */
+ aes_expanded_key_t expanded_key; /* the cipher key */
} aes_cbc_ctx_t;
err_status_t
aes_cbc_set_key(aes_cbc_ctx_t *c,
- const unsigned char *key);
+ const unsigned char *key);
err_status_t
-aes_cbc_encrypt(aes_cbc_ctx_t *c,
- unsigned char *buf,
- unsigned int *bytes_in_data);
+aes_cbc_encrypt(aes_cbc_ctx_t *c,
+ unsigned char *buf,
+ unsigned int *bytes_in_data);
err_status_t
-aes_cbc_context_init(aes_cbc_ctx_t *c, const uint8_t *key,
- int key_len, cipher_direction_t dir);
+aes_cbc_context_init(aes_cbc_ctx_t *c, const uint8_t *key,
+ int key_len, cipher_direction_t dir);
err_status_t
aes_cbc_set_iv(aes_cbc_ctx_t *c, void *iv);
err_status_t
aes_cbc_nist_encrypt(aes_cbc_ctx_t *c,
- unsigned char *data,
- unsigned int *bytes_in_data);
+ unsigned char *data,
+ unsigned int *bytes_in_data);
err_status_t
aes_cbc_nist_decrypt(aes_cbc_ctx_t *c,
- unsigned char *data,
- unsigned int *bytes_in_data);
+ unsigned char *data,
+ unsigned int *bytes_in_data);
#endif /* AES_CBC_H */
diff --git a/thirdparties/iphone/include/srtp/aes_icm.h b/thirdparties/iphone/include/srtp/aes_icm.h
index dac0cdc..6ed032e 100755
--- a/thirdparties/iphone/include/srtp/aes_icm.h
+++ b/thirdparties/iphone/include/srtp/aes_icm.h
@@ -15,43 +15,43 @@
#include "cipher.h"
typedef struct {
- v128_t counter; /* holds the counter value */
- v128_t offset; /* initial offset value */
- v128_t keystream_buffer; /* buffers bytes of keystream */
- aes_expanded_key_t expanded_key; /* the cipher key */
- int bytes_in_buffer; /* number of unused bytes in buffer */
+ v128_t counter; /* holds the counter value */
+ v128_t offset; /* initial offset value */
+ v128_t keystream_buffer; /* buffers bytes of keystream */
+ aes_expanded_key_t expanded_key; /* the cipher key */
+ int bytes_in_buffer; /* number of unused bytes in buffer */
} aes_icm_ctx_t;
err_status_t
aes_icm_context_init(aes_icm_ctx_t *c,
- const unsigned char *key,
- int key_len);
+ const unsigned char *key,
+ int key_len);
err_status_t
aes_icm_set_iv(aes_icm_ctx_t *c, void *iv);
err_status_t
aes_icm_encrypt(aes_icm_ctx_t *c,
- unsigned char *buf, unsigned int *bytes_to_encr);
+ unsigned char *buf, unsigned int *bytes_to_encr);
err_status_t
aes_icm_output(aes_icm_ctx_t *c,
- unsigned char *buf, int bytes_to_output);
+ unsigned char *buf, int bytes_to_output);
-err_status_t
+err_status_t
aes_icm_dealloc(cipher_t *c);
-
-err_status_t
-aes_icm_encrypt_ismacryp(aes_icm_ctx_t *c,
- unsigned char *buf,
- unsigned int *enc_len,
- int forIsmacryp);
-
-err_status_t
-aes_icm_alloc_ismacryp(cipher_t **c,
- int key_len,
- int forIsmacryp);
+
+err_status_t
+aes_icm_encrypt_ismacryp(aes_icm_ctx_t *c,
+ unsigned char *buf,
+ unsigned int *enc_len,
+ int forIsmacryp);
+
+err_status_t
+aes_icm_alloc_ismacryp(cipher_t **c,
+ int key_len,
+ int forIsmacryp);
#endif /* AES_ICM_H */
diff --git a/thirdparties/iphone/include/srtp/alloc.h b/thirdparties/iphone/include/srtp/alloc.h
index 5980eed..306e5f4 100755
--- a/thirdparties/iphone/include/srtp/alloc.h
+++ b/thirdparties/iphone/include/srtp/alloc.h
@@ -1,32 +1,32 @@
/*
* alloc.h
*
- * interface to memory allocation and deallocation, with optional debugging
+ * interface to memory allocation and deallocation, with optional debugging
*
* David A. McGrew
* Cisco Systems, Inc.
*/
/*
- *
+ *
* Copyright (c) 2001-2006 Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
diff --git a/thirdparties/iphone/include/srtp/auth.h b/thirdparties/iphone/include/srtp/auth.h
index 5b5e4b2..4d03d08 100755
--- a/thirdparties/iphone/include/srtp/auth.h
+++ b/thirdparties/iphone/include/srtp/auth.h
@@ -8,26 +8,26 @@
*/
/*
- *
+ *
* Copyright (c) 2001-2006, Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -46,7 +46,7 @@
#ifndef AUTH_H
#define AUTH_H
-#include "datatypes.h"
+#include "datatypes.h"
#include "err.h" /* error codes */
#include "crypto.h" /* for auth_type_id_t */
#include "crypto_types.h" /* for values of auth_type_id_t */
@@ -55,22 +55,22 @@ typedef struct auth_type_t *auth_type_pointer;
typedef struct auth_t *auth_pointer_t;
typedef err_status_t (*auth_alloc_func)
- (auth_pointer_t *ap, int key_len, int out_len);
+(auth_pointer_t *ap, int key_len, int out_len);
typedef err_status_t (*auth_init_func)
- (void *state, const uint8_t *key, int key_len);
+(void *state, const uint8_t *key, int key_len);
typedef err_status_t (*auth_dealloc_func)(auth_pointer_t ap);
typedef err_status_t (*auth_compute_func)
- (void *state, uint8_t *buffer, int octets_to_auth,
- int tag_len, uint8_t *tag);
+(void *state, uint8_t *buffer, int octets_to_auth,
+ int tag_len, uint8_t *tag);
typedef err_status_t (*auth_update_func)
- (void *state, uint8_t *buffer, int octets_to_auth);
+(void *state, uint8_t *buffer, int octets_to_auth);
typedef err_status_t (*auth_start_func)(void *state);
-
+
/* some syntactic sugar on these function types */
#define auth_type_alloc(at, a, klen, outlen) \
@@ -109,40 +109,40 @@ auth_get_prefix_length(const struct auth_t *a);
*/
typedef struct auth_test_case_t {
- int key_length_octets; /* octets in key */
- uint8_t *key; /* key */
- int data_length_octets; /* octets in data */
- uint8_t *data; /* data */
- int tag_length_octets; /* octets in tag */
- uint8_t *tag; /* tag */
- struct auth_test_case_t *next_test_case; /* pointer to next testcase */
+ int key_length_octets; /* octets in key */
+ uint8_t *key; /* key */
+ int data_length_octets; /* octets in data */
+ uint8_t *data; /* data */
+ int tag_length_octets; /* octets in tag */
+ uint8_t *tag; /* tag */
+ struct auth_test_case_t *next_test_case; /* pointer to next testcase */
} auth_test_case_t;
/* auth_type_t */
typedef struct auth_type_t {
- auth_alloc_func alloc;
- auth_dealloc_func dealloc;
- auth_init_func init;
- auth_compute_func compute;
- auth_update_func update;
- auth_start_func start;
- char *description;
- int ref_count;
- auth_test_case_t *test_data;
- debug_module_t *debug;
- auth_type_id_t id;
+ auth_alloc_func alloc;
+ auth_dealloc_func dealloc;
+ auth_init_func init;
+ auth_compute_func compute;
+ auth_update_func update;
+ auth_start_func start;
+ char *description;
+ int ref_count;
+ auth_test_case_t *test_data;
+ debug_module_t *debug;
+ auth_type_id_t id;
} auth_type_t;
typedef struct auth_t {
- auth_type_t *type;
- void *state;
- int out_len; /* length of output tag in octets */
- int key_len; /* length of key in octets */
- int prefix_len; /* length of keystream prefix */
+ auth_type_t *type;
+ void *state;
+ int out_len; /* length of output tag in octets */
+ int key_len; /* length of key in octets */
+ int prefix_len; /* length of keystream prefix */
} auth_t;
-/*
+/*
* auth_type_self_test() tests an auth_type against test cases
* provided in an array of values of key/message/tag that is known to
* be good
@@ -151,7 +151,7 @@ typedef struct auth_t {
err_status_t
auth_type_self_test(const auth_type_t *at);
-/*
+/*
* auth_type_test() tests an auth_type against external test cases
* provided in an array of values of key/message/tag that is known to
* be good
diff --git a/thirdparties/iphone/include/srtp/cipher.h b/thirdparties/iphone/include/srtp/cipher.h
index eff6dd1..9529153 100755
--- a/thirdparties/iphone/include/srtp/cipher.h
+++ b/thirdparties/iphone/include/srtp/cipher.h
@@ -7,26 +7,26 @@
* Cisco Systems, Inc.
*/
/*
- *
+ *
* Copyright (c) 2001-2006, Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -46,7 +46,7 @@
#ifndef CIPHER_H
#define CIPHER_H
-#include "datatypes.h"
+#include "datatypes.h"
#include "rdbx.h" /* for xtd_seq_num_t */
#include "err.h" /* for error codes */
#include "crypto.h" /* for cipher_type_id_t */
@@ -54,17 +54,17 @@
/**
- * @brief cipher_direction_t defines a particular cipher operation.
+ * @brief cipher_direction_t defines a particular cipher operation.
*
* A cipher_direction_t is an enum that describes a particular cipher
* operation, i.e. encryption or decryption. For some ciphers, this
* distinction does not matter, but for others, it is essential.
*/
-typedef enum {
- direction_encrypt, /**< encryption (convert plaintext to ciphertext) */
- direction_decrypt, /**< decryption (convert ciphertext to plaintext) */
- direction_any /**< encryption or decryption */
+typedef enum {
+ direction_encrypt, /**< encryption (convert plaintext to ciphertext) */
+ direction_decrypt, /**< decryption (convert ciphertext to plaintext) */
+ direction_any /**< encryption or decryption */
} cipher_direction_t;
/*
@@ -76,13 +76,13 @@ typedef struct cipher_type_t *cipher_type_pointer_t;
typedef struct cipher_t *cipher_pointer_t;
/*
- * a cipher_alloc_func_t allocates (but does not initialize) a cipher_t
+ * a cipher_alloc_func_t allocates (but does not initialize) a cipher_t
*/
typedef err_status_t (*cipher_alloc_func_t)
- (cipher_pointer_t *cp, int key_len);
+(cipher_pointer_t *cp, int key_len);
-/*
+/*
* a cipher_init_func_t [re-]initializes a cipher_t with a given key
* and direction (i.e., encrypt or decrypt)
*/
@@ -97,24 +97,24 @@ typedef err_status_t (*cipher_dealloc_func_t)(cipher_pointer_t cp);
/* a cipher_set_segment_func_t sets the segment index of a cipher_t */
typedef err_status_t (*cipher_set_segment_func_t)
- (void *state, xtd_seq_num_t idx);
+(void *state, xtd_seq_num_t idx);
/* a cipher_encrypt_func_t encrypts data in-place */
typedef err_status_t (*cipher_encrypt_func_t)
- (void *state, uint8_t *buffer, unsigned int *octets_to_encrypt);
+(void *state, uint8_t *buffer, unsigned int *octets_to_encrypt);
/* a cipher_decrypt_func_t decrypts data in-place */
typedef err_status_t (*cipher_decrypt_func_t)
- (void *state, uint8_t *buffer, unsigned int *octets_to_decrypt);
+(void *state, uint8_t *buffer, unsigned int *octets_to_decrypt);
-/*
+/*
* a cipher_set_iv_func_t function sets the current initialization vector
*/
typedef err_status_t (*cipher_set_iv_func_t)
- (cipher_pointer_t cp, void *iv);
+(cipher_pointer_t cp, void *iv);
/*
* cipher_test_case_t is a (list of) key, salt, xtd_seq_num_t,
@@ -125,30 +125,30 @@ typedef err_status_t (*cipher_set_iv_func_t)
*/
typedef struct cipher_test_case_t {
- int key_length_octets; /* octets in key */
- uint8_t *key; /* key */
- uint8_t *idx; /* packet index */
- int plaintext_length_octets; /* octets in plaintext */
- uint8_t *plaintext; /* plaintext */
- int ciphertext_length_octets; /* octets in plaintext */
- uint8_t *ciphertext; /* ciphertext */
- struct cipher_test_case_t *next_test_case; /* pointer to next testcase */
+ int key_length_octets; /* octets in key */
+ uint8_t *key; /* key */
+ uint8_t *idx; /* packet index */
+ int plaintext_length_octets; /* octets in plaintext */
+ uint8_t *plaintext; /* plaintext */
+ int ciphertext_length_octets; /* octets in plaintext */
+ uint8_t *ciphertext; /* ciphertext */
+ struct cipher_test_case_t *next_test_case; /* pointer to next testcase */
} cipher_test_case_t;
/* cipher_type_t defines the 'metadata' for a particular cipher type */
typedef struct cipher_type_t {
- cipher_alloc_func_t alloc;
- cipher_dealloc_func_t dealloc;
- cipher_init_func_t init;
- cipher_encrypt_func_t encrypt;
- cipher_encrypt_func_t decrypt;
- cipher_set_iv_func_t set_iv;
- char *description;
- int ref_count;
- cipher_test_case_t *test_data;
- debug_module_t *debug;
- cipher_type_id_t id;
+ cipher_alloc_func_t alloc;
+ cipher_dealloc_func_t dealloc;
+ cipher_init_func_t init;
+ cipher_encrypt_func_t encrypt;
+ cipher_encrypt_func_t decrypt;
+ cipher_set_iv_func_t set_iv;
+ char *description;
+ int ref_count;
+ cipher_test_case_t *test_data;
+ debug_module_t *debug;
+ cipher_type_id_t id;
} cipher_type_t;
/*
@@ -157,11 +157,11 @@ typedef struct cipher_type_t {
*/
typedef struct cipher_t {
- cipher_type_t *type;
- void *state;
- int key_len;
+ cipher_type_t *type;
+ void *state;
+ int key_len;
#ifdef FORCE_64BIT_ALIGN
- int pad;
+ int pad;
#endif
} cipher_t;
@@ -181,7 +181,7 @@ typedef struct cipher_t {
#define cipher_set_iv(c, n) \
((c) ? (((c)->type)->set_iv(((cipher_pointer_t)(c)->state), (n))) : \
- err_status_no_such_op)
+ err_status_no_such_op)
err_status_t
cipher_output(cipher_t *c, uint8_t *buffer, int num_octets_to_output);
@@ -193,9 +193,9 @@ int
cipher_get_key_length(const cipher_t *c);
-/*
- * cipher_type_self_test() tests a cipher against test cases provided in
- * an array of values of key/xtd_seq_num_t/plaintext/ciphertext
+/*
+ * cipher_type_self_test() tests a cipher against test cases provided in
+ * an array of values of key/xtd_seq_num_t/plaintext/ciphertext
* that is known to be good
*/
@@ -203,9 +203,9 @@ err_status_t
cipher_type_self_test(const cipher_type_t *ct);
-/*
- * cipher_type_test() tests a cipher against external test cases provided in
- * an array of values of key/xtd_seq_num_t/plaintext/ciphertext
+/*
+ * cipher_type_test() tests a cipher against external test cases provided in
+ * an array of values of key/xtd_seq_num_t/plaintext/ciphertext
* that is known to be good
*/
@@ -216,7 +216,7 @@ cipher_type_test(const cipher_type_t *ct, const cipher_test_case_t *test_data);
/*
* cipher_bits_per_second(c, l, t) computes (and estimate of) the
* number of bits that a cipher implementation can encrypt in a second
- *
+ *
* c is a cipher (which MUST be allocated and initialized already), l
* is the length in octets of the test data to be encrypted, and t is
* the number of trials
diff --git a/thirdparties/iphone/include/srtp/crypto.h b/thirdparties/iphone/include/srtp/crypto.h
index 0e9667d..9d656fa 100755
--- a/thirdparties/iphone/include/srtp/crypto.h
+++ b/thirdparties/iphone/include/srtp/crypto.h
@@ -2,7 +2,7 @@
* crypto.h
*
* API for libcrypto
- *
+ *
* David A. McGrew
* Cisco Systems, Inc.
*/
@@ -10,7 +10,7 @@
#ifndef CRYPTO_H
#define CRYPTO_H
-/**
+/**
* @brief A cipher_type_id_t is an identifier for a particular cipher
* type.
*
@@ -19,10 +19,10 @@
* NULL_CIPHER is avaliable; this cipher leaves the data unchanged,
* and can be selected to indicate that no encryption is to take
* place.
- *
+ *
* @ingroup Ciphers
*/
-typedef uint32_t cipher_type_id_t;
+typedef uint32_t cipher_type_id_t;
/**
* @brief An auth_type_id_t is an identifier for a particular authentication
@@ -33,7 +33,7 @@ typedef uint32_t cipher_type_id_t;
* avaliable; this authentication function performs no computation,
* and can be selected to indicate that no authentication is to take
* place.
- *
+ *
* @ingroup Authentication
*/
typedef uint32_t auth_type_id_t;
diff --git a/thirdparties/iphone/include/srtp/crypto_kernel.h b/thirdparties/iphone/include/srtp/crypto_kernel.h
index 1acf497..c496174 100755
--- a/thirdparties/iphone/include/srtp/crypto_kernel.h
+++ b/thirdparties/iphone/include/srtp/crypto_kernel.h
@@ -7,26 +7,26 @@
* Cisco Systems, Inc.
*/
/*
- *
+ *
* Copyright(c) 2001-2006 Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -46,9 +46,9 @@
#ifndef CRYPTO_KERNEL
#define CRYPTO_KERNEL
-#include "rand_source.h"
+#include "rand_source.h"
#include "prng.h"
-#include "cipher.h"
+#include "cipher.h"
#include "auth.h"
#include "cryptoalg.h"
#include "stat.h"
@@ -65,37 +65,37 @@
*/
typedef enum {
- crypto_kernel_state_insecure,
- crypto_kernel_state_secure
+ crypto_kernel_state_insecure,
+ crypto_kernel_state_secure
} crypto_kernel_state_t;
-/*
- * linked list of cipher types
+/*
+ * linked list of cipher types
*/
typedef struct kernel_cipher_type {
- cipher_type_id_t id;
- cipher_type_t *cipher_type;
- struct kernel_cipher_type *next;
+ cipher_type_id_t id;
+ cipher_type_t *cipher_type;
+ struct kernel_cipher_type *next;
} kernel_cipher_type_t;
-/*
- * linked list of auth types
+/*
+ * linked list of auth types
*/
typedef struct kernel_auth_type {
- auth_type_id_t id;
- auth_type_t *auth_type;
- struct kernel_auth_type *next;
+ auth_type_id_t id;
+ auth_type_t *auth_type;
+ struct kernel_auth_type *next;
} kernel_auth_type_t;
/*
- * linked list of debug modules
+ * linked list of debug modules
*/
typedef struct kernel_debug_module {
- debug_module_t *mod;
- struct kernel_debug_module *next;
+ debug_module_t *mod;
+ struct kernel_debug_module *next;
} kernel_debug_module_t;
@@ -107,10 +107,10 @@ typedef struct kernel_debug_module {
*/
typedef struct {
- crypto_kernel_state_t state; /* current state of kernel */
- kernel_cipher_type_t *cipher_type_list; /* list of all cipher types */
- kernel_auth_type_t *auth_type_list; /* list of all auth func types */
- kernel_debug_module_t *debug_module_list; /* list of all debug modules */
+ crypto_kernel_state_t state; /* current state of kernel */
+ kernel_cipher_type_t *cipher_type_list; /* list of all cipher types */
+ kernel_auth_type_t *auth_type_list; /* list of all auth func types */
+ kernel_debug_module_t *debug_module_list; /* list of all debug modules */
} crypto_kernel_t;
@@ -125,10 +125,10 @@ typedef struct {
* crypto algorithms. Possible return values are:
*
* err_status_ok initialization successful
- * <other> init failure
+ * <other> init failure
*
* If any value other than err_status_ok is returned, the
- * crypto_kernel MUST NOT be used.
+ * crypto_kernel MUST NOT be used.
*/
err_status_t
@@ -142,7 +142,7 @@ crypto_kernel_init(void);
* values are:
*
* err_status_ok shutdown successful
- * <other> shutdown failure
+ * <other> shutdown failure
*
*/
@@ -155,7 +155,7 @@ crypto_kernel_shutdown(void);
* status report. Possible return values are:
*
* err_status_ok all tests were passed
- * <other> a test failed
+ * <other> a test failed
*
*/
@@ -184,7 +184,7 @@ crypto_kernel_load_auth_type(auth_type_t *ct, auth_type_id_t id);
/*
* crypto_kernel_replace_cipher_type(ct, id)
- *
+ *
* replaces the crypto kernel's existing cipher for the cipher_type id
* with a new one passed in externally. The new cipher must pass all the
* existing cipher_type's self tests as well as its own.
@@ -195,7 +195,7 @@ crypto_kernel_replace_cipher_type(cipher_type_t *ct, cipher_type_id_t id);
/*
* crypto_kernel_replace_auth_type(ct, id)
- *
+ *
* replaces the crypto kernel's existing cipher for the auth_type id
* with a new one passed in externally. The new auth type must pass all the
* existing auth_type's self tests as well as its own.
@@ -208,43 +208,43 @@ err_status_t
crypto_kernel_load_debug_module(debug_module_t *new_dm);
/*
- * crypto_kernel_alloc_cipher(id, cp, key_len);
+ * crypto_kernel_alloc_cipher(id, cp, key_len);
*
* allocates a cipher of type id at location *cp, with key length
* key_len octets. Return values are:
- *
+ *
* err_status_ok no problems
* err_status_alloc_fail an allocation failure occured
* err_status_fail couldn't find cipher with identifier 'id'
*/
err_status_t
-crypto_kernel_alloc_cipher(cipher_type_id_t id,
- cipher_pointer_t *cp,
- int key_len);
+crypto_kernel_alloc_cipher(cipher_type_id_t id,
+ cipher_pointer_t *cp,
+ int key_len);
/*
- * crypto_kernel_alloc_auth(id, ap, key_len, tag_len);
+ * crypto_kernel_alloc_auth(id, ap, key_len, tag_len);
*
* allocates an auth function of type id at location *ap, with key
* length key_len octets and output tag length of tag_len. Return
* values are:
- *
+ *
* err_status_ok no problems
* err_status_alloc_fail an allocation failure occured
* err_status_fail couldn't find auth with identifier 'id'
*/
err_status_t
-crypto_kernel_alloc_auth(auth_type_id_t id,
- auth_pointer_t *ap,
- int key_len,
- int tag_len);
+crypto_kernel_alloc_auth(auth_type_id_t id,
+ auth_pointer_t *ap,
+ int key_len,
+ int tag_len);
/*
* crypto_kernel_set_debug_module(mod_name, v)
- *
+ *
* sets dynamic debugging to the value v (0 for off, 1 for on) for the
* debug module with the name mod_name
*
@@ -261,7 +261,7 @@ crypto_kernel_set_debug_module(char *mod_name, int v);
* random data to the location to which dest points, and returns an
* error code. This error code @b must be checked, and if a failure is
* reported, the data in the buffer @b must @b not be used.
- *
+ *
* @warning If the return code is not checked, then non-random
* data may be in the buffer. This function will fail
* unless it is called after crypto_kernel_init().
@@ -276,5 +276,5 @@ crypto_kernel_set_debug_module(char *mod_name, int v);
*/
err_status_t
crypto_get_random(unsigned char *buffer, unsigned int length);
-
+
#endif /* CRYPTO_KERNEL */
diff --git a/thirdparties/iphone/include/srtp/crypto_math.h b/thirdparties/iphone/include/srtp/crypto_math.h
index 52f0837..4de3912 100755
--- a/thirdparties/iphone/include/srtp/crypto_math.h
+++ b/thirdparties/iphone/include/srtp/crypto_math.h
@@ -7,26 +7,26 @@
* Cisco Systems, Inc.
*/
/*
- *
+ *
* Copyright (c) 2001-2006 Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -95,7 +95,7 @@ hex_string_to_v64(char *s);
/* the matrix A[] is stored in column format, i.e., A[i] is
the ith column of the matrix */
-uint8_t
+uint8_t
A_times_x_plus_b(uint8_t A[8], uint8_t x, uint8_t b);
void
@@ -118,11 +118,11 @@ octet_string_set_to_zero(uint8_t *s, int len);
-/*
+/*
* the matrix A[] is stored in column format, i.e., A[i] is the ith
* column of the matrix
*/
-uint8_t
+uint8_t
A_times_x_plus_b(uint8_t A[8], uint8_t x, uint8_t b);
@@ -165,8 +165,8 @@ A_times_x_plus_b(uint8_t A[8], uint8_t x, uint8_t b);
+ htonl(tmp >> 32); \
z->v32[0] = ntohl((uint32_t) tmp); \
}
-
-#endif /* WORDS_BIGENDIAN */
+
+#endif /* WORDS_BIGENDIAN */
#endif
#ifdef DATATYPES_USE_MACROS /* little functions are really macros */
@@ -176,7 +176,7 @@ A_times_x_plus_b(uint8_t A[8], uint8_t x, uint8_t b);
#define v128_xor(z, x, y) _v128_xor(z, x, y)
#define v128_and(z, x, y) _v128_and(z, x, y)
#define v128_or(z, x, y) _v128_or(z, x, y)
-#define v128_complement(x) _v128_complement(x)
+#define v128_complement(x) _v128_complement(x)
#define v128_is_eq(x, y) _v128_is_eq(x, y)
#define v128_xor_eq(x, y) _v128_xor_eq(x, y)
#define v128_get_bit(x, i) _v128_get_bit(x, i)
@@ -202,7 +202,7 @@ void
v128_and(v128_t *z, v128_t *x, v128_t *y);
void
-v128_or(v128_t *z, v128_t *x, v128_t *y);
+v128_or(v128_t *z, v128_t *x, v128_t *y);
void
v128_complement(v128_t *x);
@@ -211,10 +211,10 @@ int
v128_get_bit(const v128_t *x, int i);
void
-v128_set_bit(v128_t *x, int i) ;
+v128_set_bit(v128_t *x, int i) ;
void
-v128_clear_bit(v128_t *x, int i);
+v128_clear_bit(v128_t *x, int i);
void
v128_set_bit_to(v128_t *x, int i, int y);
diff --git a/thirdparties/iphone/include/srtp/crypto_types.h b/thirdparties/iphone/include/srtp/crypto_types.h
index 3531710..06a05dc 100755
--- a/thirdparties/iphone/include/srtp/crypto_types.h
+++ b/thirdparties/iphone/include/srtp/crypto_types.h
@@ -7,26 +7,26 @@
* Cisco Systems, Inc.
*/
/*
- *
+ *
* Copyright(c) 2001-2006 Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -57,14 +57,14 @@
* (UST) must be used in conjunction with a cipher other than the null
* cipher. These functions require a per-message pseudorandom input
* that is generated by the cipher.
- *
+ *
* The identifiers STRONGHOLD_AUTH and STRONGHOLD_CIPHER identify the
* strongest available authentication function and cipher,
* respectively. They are resolved at compile time to the strongest
* available algorithm. The stronghold algorithms can serve as did
* the keep of a medieval fortification; they provide the strongest
* defense (or the last refuge).
- *
+ *
* @{
*/
@@ -72,7 +72,7 @@
* @defgroup Ciphers Cipher Types
*
* @brief Each cipher type is identified by an unsigned integer. The
- * cipher types available in this edition of libSRTP are given
+ * cipher types available in this edition of libSRTP are given
* by the #defines below.
*
* A cipher_type_id_t is an identifier for a cipher_type; only values
@@ -90,56 +90,56 @@
/**
* @brief The null cipher performs no encryption.
*
- * The NULL_CIPHER leaves its inputs unaltered, during both the
+ * The NULL_CIPHER leaves its inputs unaltered, during both the
* encryption and decryption operations. This cipher can be chosen
* to indicate that no encryption is to be performed.
*/
-#define NULL_CIPHER 0
+#define NULL_CIPHER 0
-/**
- * @brief AES Integer Counter Mode (AES ICM)
+/**
+ * @brief AES Integer Counter Mode (AES ICM)
*
- * AES ICM is the variant of counter mode that is used by Secure RTP.
+ * AES ICM is the variant of counter mode that is used by Secure RTP.
* This cipher uses a 16-, 24-, or 32-octet key concatenated with a
* 14-octet offset (or salt) value.
*/
-#define AES_ICM 1
+#define AES_ICM 1
-/**
- * @brief AES-128 Integer Counter Mode (AES ICM)
+/**
+ * @brief AES-128 Integer Counter Mode (AES ICM)
* AES-128 ICM is a deprecated alternate name for AES ICM.
*/
#define AES_128_ICM AES_ICM
/**
- * @brief SEAL 3.0
- *
+ * @brief SEAL 3.0
+ *
* SEAL is the Software-Optimized Encryption Algorithm of Coppersmith
* and Rogaway. Nota bene: this cipher is IBM proprietary.
*/
-#define SEAL 2
+#define SEAL 2
-/**
- * @brief AES Cipher Block Chaining mode (AES CBC)
+/**
+ * @brief AES Cipher Block Chaining mode (AES CBC)
*
* AES CBC is the AES Cipher Block Chaining mode.
* This cipher uses a 16-, 24-, or 32-octet key.
*/
-#define AES_CBC 3
+#define AES_CBC 3
-/**
- * @brief AES-128 Cipher Block Chaining mode (AES CBC)
+/**
+ * @brief AES-128 Cipher Block Chaining mode (AES CBC)
*
* AES-128 CBC is a deprecated alternate name for AES CBC.
*/
-#define AES_128_CBC AES_CBC
+#define AES_128_CBC AES_CBC
/**
* @brief Strongest available cipher.
*
* This identifier resolves to the strongest cipher type available.
*/
-#define STRONGHOLD_CIPHER AES_ICM
+#define STRONGHOLD_CIPHER AES_ICM
/**
* @}
@@ -149,14 +149,14 @@
/**
* @defgroup Authentication Authentication Function Types
- *
+ *
* @brief Each authentication function type is identified by an
* unsigned integer. The authentication function types available in
* this edition of libSRTP are given by the #defines below.
*
* An auth_type_id_t is an identifier for an authentication function type;
- * only values given by the #defines above (or those present in the
- * file crypto_types.h) should be used.
+ * only values given by the #defines above (or those present in the
+ * file crypto_types.h) should be used.
*
* The identifier STRONGHOLD_AUTH indicates the strongest available
* authentication function, allowing an application to choose the
@@ -173,8 +173,8 @@
*
* The NULL_AUTH function does nothing, and can be selected to indicate
* that authentication should not be performed.
- */
-#define NULL_AUTH 0
+ */
+#define NULL_AUTH 0
/**
* @brief UST with TMMH Version 2
@@ -184,15 +184,15 @@
* than the null cipher.
* with a cipher.
*/
-#define UST_TMMHv2 1
+#define UST_TMMHv2 1
/**
- * @brief (UST) AES-128 XORMAC
+ * @brief (UST) AES-128 XORMAC
*
* UST_AES_128_XMAC implements AES-128 XORMAC, using UST. Nota bene:
* the XORMAC algorithm is IBM proprietary.
*/
-#define UST_AES_128_XMAC 2
+#define UST_AES_128_XMAC 2
/**
* @brief HMAC-SHA1
@@ -200,7 +200,7 @@
* HMAC_SHA1 implements the Hash-based MAC using the NIST Secure
* Hash Algorithm version 1 (SHA1).
*/
-#define HMAC_SHA1 3
+#define HMAC_SHA1 3
/**
* @brief Strongest available authentication function.
@@ -208,7 +208,7 @@
* This identifier resolves to the strongest available authentication
* function.
*/
-#define STRONGHOLD_AUTH HMAC_SHA1
+#define STRONGHOLD_AUTH HMAC_SHA1
/**
* @}
diff --git a/thirdparties/iphone/include/srtp/cryptoalg.h b/thirdparties/iphone/include/srtp/cryptoalg.h
index d9f0441..ad29fa0 100755
--- a/thirdparties/iphone/include/srtp/cryptoalg.h
+++ b/thirdparties/iphone/include/srtp/cryptoalg.h
@@ -2,31 +2,31 @@
* cryptoalg.h
*
* API for authenticated encryption crypto algorithms
- *
+ *
* David A. McGrew
* Cisco Systems, Inc.
*/
/*
- *
+ *
* Copyright (c) 2001-2006 Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -61,10 +61,10 @@
* The function pointer cryptoalg_func_t points to a function that
* implements a crypto transform, and provides a uniform API for
* accessing crypto mechanisms.
- *
- * @param key location of secret key
*
- * @param clear data to be authenticated but not encrypted
+ * @param key location of secret key
+ *
+ * @param clear data to be authenticated but not encrypted
*
* @param clear_len length of data to be authenticated but not encrypted
*
@@ -79,34 +79,34 @@
* length of the ciphertext (after the call)
*
*/
-
-typedef err_status_t (*cryptoalg_func_t)
- (void *key,
- const void *clear,
- unsigned clear_len,
- void *iv,
- void *protect,
- unsigned *protected_len);
-
-typedef
+
+typedef err_status_t (*cryptoalg_func_t)
+(void *key,
+ const void *clear,
+ unsigned clear_len,
+ void *iv,
+ void *protect,
+ unsigned *protected_len);
+
+typedef
err_status_t (*cryptoalg_inv_t)
- (void *key, /* location of secret key */
- const void *clear, /* data to be authenticated only */
- unsigned clear_len, /* length of data to be authenticated only */
- void *iv, /* location of iv */
- void *opaque, /* data to be decrypted and authenticated */
- unsigned *opaque_len /* location of the length of data to be
- * decrypted and authd (before and after)
+(void *key, /* location of secret key */
+ const void *clear, /* data to be authenticated only */
+ unsigned clear_len, /* length of data to be authenticated only */
+ void *iv, /* location of iv */
+ void *opaque, /* data to be decrypted and authenticated */
+ unsigned *opaque_len /* location of the length of data to be
+ * decrypted and authd (before and after)
*/
- );
+);
typedef struct cryptoalg_ctx_t {
- cryptoalg_func_t enc;
- cryptoalg_inv_t dec;
- unsigned key_len;
- unsigned iv_len;
- unsigned auth_tag_len;
- unsigned max_expansion;
+ cryptoalg_func_t enc;
+ cryptoalg_inv_t dec;
+ unsigned key_len;
+ unsigned iv_len;
+ unsigned auth_tag_len;
+ unsigned max_expansion;
} cryptoalg_ctx_t;
typedef cryptoalg_ctx_t *cryptoalg_t;
@@ -120,7 +120,7 @@ typedef cryptoalg_ctx_t *cryptoalg_t;
int
cryptoalg_get_id(cryptoalg_t c);
-cryptoalg_t
+cryptoalg_t
cryptoalg_find_by_id(int id);
diff --git a/thirdparties/iphone/include/srtp/datatypes.h b/thirdparties/iphone/include/srtp/datatypes.h
index e16d895..314a73a 100755
--- a/thirdparties/iphone/include/srtp/datatypes.h
+++ b/thirdparties/iphone/include/srtp/datatypes.h
@@ -1,6 +1,6 @@
/*
* datatypes.h
- *
+ *
* data types for bit vectors and finite fields
*
* David A. McGrew
@@ -8,26 +8,26 @@
*/
/*
- *
+ *
* Copyright (c) 2001-2006, Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -65,31 +65,31 @@
/* if DATATYPES_USE_MACROS is defined, then little functions are macros */
-#define DATATYPES_USE_MACROS
+#define DATATYPES_USE_MACROS
typedef union {
- uint8_t v8[2];
- uint16_t value;
+ uint8_t v8[2];
+ uint16_t value;
} v16_t;
typedef union {
- uint8_t v8[4];
- uint16_t v16[2];
- uint32_t value;
+ uint8_t v8[4];
+ uint16_t v16[2];
+ uint32_t value;
} v32_t;
typedef union {
- uint8_t v8[8];
- uint16_t v16[4];
- uint32_t v32[2];
- uint64_t value;
+ uint8_t v8[8];
+ uint16_t v16[4];
+ uint32_t v32[2];
+ uint64_t value;
} v64_t;
typedef union {
- uint8_t v8[16];
- uint16_t v16[8];
- uint32_t v32[4];
- uint64_t v64[2];
+ uint8_t v8[16];
+ uint16_t v16[8];
+ uint32_t v32[4];
+ uint64_t v64[2];
} v128_t;
@@ -162,7 +162,7 @@ v128_right_shift(v128_t *x, int shift_index);
/*
* the following macros define the data manipulation functions
- *
+ *
* If DATATYPES_USE_MACROS is defined, then these macros are used
* directly (and function call overhead is avoided). Otherwise,
* the macros are used through the functions defined in datatypes.c
@@ -309,18 +309,18 @@ v128_right_shift(v128_t *x, int shift_index);
+ htonl(tmp >> 32); \
z->v32[0] = ntohl((uint32_t) tmp); \
}
-#endif /* WORDS_BIGENDIAN */
+#endif /* WORDS_BIGENDIAN */
#endif /* 0 */
#ifdef DATATYPES_USE_MACROS /* little functions are really macros */
-
+
#define v128_set_to_zero(z) _v128_set_to_zero(z)
#define v128_copy(z, x) _v128_copy(z, x)
#define v128_xor(z, x, y) _v128_xor(z, x, y)
#define v128_and(z, x, y) _v128_and(z, x, y)
#define v128_or(z, x, y) _v128_or(z, x, y)
-#define v128_complement(x) _v128_complement(x)
+#define v128_complement(x) _v128_complement(x)
#define v128_is_eq(x, y) _v128_is_eq(x, y)
#define v128_xor_eq(x, y) _v128_xor_eq(x, y)
#define v128_get_bit(x, i) _v128_get_bit(x, i)
@@ -346,7 +346,7 @@ void
v128_and(v128_t *z, v128_t *x, v128_t *y);
void
-v128_or(v128_t *z, v128_t *x, v128_t *y);
+v128_or(v128_t *z, v128_t *x, v128_t *y);
void
v128_complement(v128_t *x);
@@ -355,10 +355,10 @@ int
v128_get_bit(const v128_t *x, int i);
void
-v128_set_bit(v128_t *x, int i) ;
+v128_set_bit(v128_t *x, int i) ;
void
-v128_clear_bit(v128_t *x, int i);
+v128_clear_bit(v128_t *x, int i);
void
v128_set_bit_to(v128_t *x, int i, int y);
@@ -379,7 +379,7 @@ octet_string_set_to_zero(uint8_t *s, int len);
#ifndef SRTP_KERNEL_LINUX
-/*
+/*
* Convert big endian integers to CPU byte order.
*/
#ifdef WORDS_BIGENDIAN
@@ -395,10 +395,11 @@ octet_string_set_to_zero(uint8_t *s, int len);
#if defined(__GNUC__) && defined(HAVE_X86)
/* Fall back. */
-static inline uint32_t be32_to_cpu(uint32_t v) {
- /* optimized for x86. */
- asm("bswap %0" : "=r" (v) : "0" (v));
- return v;
+static inline uint32_t be32_to_cpu(uint32_t v)
+{
+ /* optimized for x86. */
+ asm("bswap %0" : "=r" (v) : "0" (v));
+ return v;
}
# else /* HAVE_X86 */
# ifdef HAVE_NETINET_IN_H
@@ -409,15 +410,16 @@ static inline uint32_t be32_to_cpu(uint32_t v) {
# define be32_to_cpu(x) ntohl((x))
# endif /* HAVE_X86 */
-static inline uint64_t be64_to_cpu(uint64_t v) {
+static inline uint64_t be64_to_cpu(uint64_t v)
+{
# ifdef NO_64BIT_MATH
- /* use the make64 functions to do 64-bit math */
- v = make64(htonl(low32(v)),htonl(high32(v)));
+ /* use the make64 functions to do 64-bit math */
+ v = make64(htonl(low32(v)),htonl(high32(v)));
# else
- /* use the native 64-bit math */
- v= (uint64_t)((be32_to_cpu((uint32_t)(v >> 32))) | (((uint64_t)be32_to_cpu((uint32_t)v)) << 32));
+ /* use the native 64-bit math */
+ v= (uint64_t)((be32_to_cpu((uint32_t)(v >> 32))) | (((uint64_t)be32_to_cpu((uint32_t)v)) << 32));
# endif
- return v;
+ return v;
}
#endif /* ! SRTP_KERNEL_LINUX */
@@ -425,22 +427,22 @@ static inline uint64_t be64_to_cpu(uint64_t v) {
#endif /* WORDS_BIGENDIAN */
/*
- * functions manipulating bitvector_t
+ * functions manipulating bitvector_t
*
* A bitvector_t consists of an array of words and an integer
* representing the number of significant bits stored in the array.
* The bits are packed as follows: the least significant bit is that
* of word[0], while the most significant bit is the nth most
* significant bit of word[m], where length = bits_per_word * m + n.
- *
+ *
*/
#define bits_per_word 32
#define bytes_per_word 4
typedef struct {
- uint32_t length;
- uint32_t *word;
+ uint32_t length;
+ uint32_t *word;
} bitvector_t;
diff --git a/thirdparties/iphone/include/srtp/ekt.h b/thirdparties/iphone/include/srtp/ekt.h
index b0d888b..d7f9854 100755
--- a/thirdparties/iphone/include/srtp/ekt.h
+++ b/thirdparties/iphone/include/srtp/ekt.h
@@ -7,26 +7,26 @@
* Cisco Systems, Inc.
*/
/*
- *
+ *
* Copyright (c) 2001-2005 Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -45,12 +45,12 @@
/*
- * EKT implementation strategy
- *
+ * EKT implementation strategy
+ *
* use stream_template approach
*
* in srtp_unprotect, when a new stream appears, check if template has
- * EKT defined, and if it does, then apply EKT processing
+ * EKT defined, and if it does, then apply EKT processing
*
* question: will we want to allow key-sharing templates in addition
* to EKT templates? could define a new ssrc_type_t that's associated
@@ -88,10 +88,10 @@ ekt_octets_after_base_tag(ekt_stream_t ekt);
*/
typedef struct ekt_policy_ctx_t {
- ekt_spi_t spi; /* security parameter index */
- uint8_t ekt_cipher_type;
- uint8_t *ekt_key;
- struct ekt_policy_ctx_t *next_ekt_policy;
+ ekt_spi_t spi; /* security parameter index */
+ uint8_t ekt_cipher_type;
+ uint8_t *ekt_key;
+ struct ekt_policy_ctx_t *next_ekt_policy;
} ekt_policy_ctx_t;
@@ -101,11 +101,11 @@ typedef struct ekt_policy_ctx_t {
*/
typedef struct ekt_data_t {
- ekt_spi_t spi;
- uint8_t ekt_cipher_type;
- aes_expanded_key_t ekt_enc_key;
- aes_expanded_key_t ekt_dec_key;
- struct ekt_data_t *next_ekt_data;
+ ekt_spi_t spi;
+ uint8_t ekt_cipher_type;
+ aes_expanded_key_t ekt_enc_key;
+ aes_expanded_key_t ekt_dec_key;
+ struct ekt_data_t *next_ekt_data;
} ekt_data_t;
/*
@@ -116,39 +116,39 @@ typedef struct ekt_data_t {
*/
typedef struct ekt_stream_ctx_t {
- ekt_data_t *data;
- uint16_t isn; /* initial sequence number */
- uint8_t encrypted_master_key[SRTP_MAX_KEY_LEN];
+ ekt_data_t *data;
+ uint16_t isn; /* initial sequence number */
+ uint8_t encrypted_master_key[SRTP_MAX_KEY_LEN];
} ekt_stream_ctx_t;
-err_status_t
+err_status_t
ekt_alloc(ekt_stream_t *stream_data, ekt_policy_t policy);
err_status_t
-ekt_stream_init(ekt_stream_t e,
- ekt_spi_t spi,
- void *ekt_key,
- unsigned ekt_cipher_type);
+ekt_stream_init(ekt_stream_t e,
+ ekt_spi_t spi,
+ void *ekt_key,
+ unsigned ekt_cipher_type);
err_status_t
ekt_stream_init_from_policy(ekt_stream_t e, ekt_policy_t p);
-
+
err_status_t
-srtp_stream_init_from_ekt(srtp_stream_t stream,
- const void *srtcp_hdr,
- unsigned pkt_octet_len);
-
+srtp_stream_init_from_ekt(srtp_stream_t stream,
+ const void *srtcp_hdr,
+ unsigned pkt_octet_len);
+
void
ekt_write_data(ekt_stream_t ekt,
- uint8_t *base_tag,
- unsigned base_tag_len,
- int *packet_len,
- xtd_seq_num_t pkt_index);
+ uint8_t *base_tag,
+ unsigned base_tag_len,
+ int *packet_len,
+ xtd_seq_num_t pkt_index);
/*
* We handle EKT by performing some additional steps before
@@ -160,14 +160,14 @@ ekt_write_data(ekt_stream_t ekt,
*/
err_status_t
-ekt_tag_verification_preproces(uint8_t *pkt_tag,
- uint8_t *pkt_tag_copy,
- unsigned tag_len);
+ekt_tag_verification_preproces(uint8_t *pkt_tag,
+ uint8_t *pkt_tag_copy,
+ unsigned tag_len);
err_status_t
ekt_tag_verification_postproces(uint8_t *pkt_tag,
- uint8_t *pkt_tag_copy,
- unsigned tag_len);
+ uint8_t *pkt_tag_copy,
+ unsigned tag_len);
/*
@@ -178,15 +178,15 @@ ekt_tag_verification_postproces(uint8_t *pkt_tag,
* Master Key, the SRTP ROC, the Initial Sequence Number, and SPI
* fields. The Base Authentication Tag field is set to the all-zero
* value
- *
+ *
* When EKT is not used, this function is a no-op.
- *
+ *
*/
err_status_t
srtp_stream_srtcp_auth_tag_generation_preprocess(const srtp_stream_t *s,
- uint8_t *pkt_tag,
- unsigned pkt_octet_len);
+ uint8_t *pkt_tag,
+ unsigned pkt_octet_len);
/* it's not clear that a tag_generation_postprocess function is needed */
diff --git a/thirdparties/iphone/include/srtp/err.h b/thirdparties/iphone/include/srtp/err.h
index 1a6e170..9a318e5 100755
--- a/thirdparties/iphone/include/srtp/err.h
+++ b/thirdparties/iphone/include/srtp/err.h
@@ -1,32 +1,32 @@
/*
* err.h
- *
+ *
* error status codes
*
* David A. McGrew
* Cisco Systems, Inc.
*/
/*
- *
+ *
* Copyright (c) 2001-2006, Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -50,9 +50,9 @@
/**
* @defgroup Error Error Codes
- *
+ *
* Error status codes are represented by the enumeration err_status_t.
- *
+ *
* @{
*/
@@ -66,31 +66,31 @@
*
*/
typedef enum {
- err_status_ok = 0, /**< nothing to report */
- err_status_fail = 1, /**< unspecified failure */
- err_status_bad_param = 2, /**< unsupported parameter */
- err_status_alloc_fail = 3, /**< couldn't allocate memory */
- err_status_dealloc_fail = 4, /**< couldn't deallocate properly */
- err_status_init_fail = 5, /**< couldn't initialize */
- err_status_terminus = 6, /**< can't process as much data as requested */
- err_status_auth_fail = 7, /**< authentication failure */
- err_status_cipher_fail = 8, /**< cipher failure */
- err_status_replay_fail = 9, /**< replay check failed (bad index) */
- err_status_replay_old = 10, /**< replay check failed (index too old) */
- err_status_algo_fail = 11, /**< algorithm failed test routine */
- err_status_no_such_op = 12, /**< unsupported operation */
- err_status_no_ctx = 13, /**< no appropriate context found */
- err_status_cant_check = 14, /**< unable to perform desired validation */
- err_status_key_expired = 15, /**< can't use key any more */
- err_status_socket_err = 16, /**< error in use of socket */
- err_status_signal_err = 17, /**< error in use POSIX signals */
- err_status_nonce_bad = 18, /**< nonce check failed */
- err_status_read_fail = 19, /**< couldn't read data */
- err_status_write_fail = 20, /**< couldn't write data */
- err_status_parse_err = 21, /**< error pasring data */
- err_status_encode_err = 22, /**< error encoding data */
- err_status_semaphore_err = 23,/**< error while using semaphores */
- err_status_pfkey_err = 24 /**< error while using pfkey */
+ err_status_ok = 0, /**< nothing to report */
+ err_status_fail = 1, /**< unspecified failure */
+ err_status_bad_param = 2, /**< unsupported parameter */
+ err_status_alloc_fail = 3, /**< couldn't allocate memory */
+ err_status_dealloc_fail = 4, /**< couldn't deallocate properly */
+ err_status_init_fail = 5, /**< couldn't initialize */
+ err_status_terminus = 6, /**< can't process as much data as requested */
+ err_status_auth_fail = 7, /**< authentication failure */
+ err_status_cipher_fail = 8, /**< cipher failure */
+ err_status_replay_fail = 9, /**< replay check failed (bad index) */
+ err_status_replay_old = 10, /**< replay check failed (index too old) */
+ err_status_algo_fail = 11, /**< algorithm failed test routine */
+ err_status_no_such_op = 12, /**< unsupported operation */
+ err_status_no_ctx = 13, /**< no appropriate context found */
+ err_status_cant_check = 14, /**< unable to perform desired validation */
+ err_status_key_expired = 15, /**< can't use key any more */
+ err_status_socket_err = 16, /**< error in use of socket */
+ err_status_signal_err = 17, /**< error in use POSIX signals */
+ err_status_nonce_bad = 18, /**< nonce check failed */
+ err_status_read_fail = 19, /**< couldn't read data */
+ err_status_write_fail = 20, /**< couldn't write data */
+ err_status_parse_err = 21, /**< error pasring data */
+ err_status_encode_err = 22, /**< error encoding data */
+ err_status_semaphore_err = 23,/**< error while using semaphores */
+ err_status_pfkey_err = 24 /**< error while using pfkey */
} err_status_t;
/**
@@ -98,15 +98,15 @@ typedef enum {
*/
typedef enum {
- err_level_emergency = 0,
- err_level_alert,
- err_level_critical,
- err_level_error,
- err_level_warning,
- err_level_notice,
- err_level_info,
- err_level_debug,
- err_level_none
+ err_level_emergency = 0,
+ err_level_alert,
+ err_level_critical,
+ err_level_error,
+ err_level_warning,
+ err_level_notice,
+ err_level_info,
+ err_level_debug,
+ err_level_none
} err_reporting_level_t;
/*
@@ -144,8 +144,8 @@ err_report(int priority, char *format, ...);
*/
typedef struct {
- int on; /* 1 if debugging is on, 0 if it is off */
- char *name; /* printable name for debug module */
+ int on; /* 1 if debugging is on, 0 if it is off */
+ char *name; /* printable name for debug module */
} debug_module_t;
#ifdef ENABLE_DEBUGGING
diff --git a/thirdparties/iphone/include/srtp/getopt_s.h b/thirdparties/iphone/include/srtp/getopt_s.h
index 2a6ece3..d3dc33d 100755
--- a/thirdparties/iphone/include/srtp/getopt_s.h
+++ b/thirdparties/iphone/include/srtp/getopt_s.h
@@ -7,26 +7,26 @@
*
*/
/*
- *
+ *
* Copyright (c) 2001-2006 Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -45,11 +45,11 @@
#ifndef GETOPT_S_H
#define GETOPT_S_H
-/*
+/*
* getopt_s(), optarg_s, and optind_s are small, locally defined
* versions of the POSIX standard getopt() interface.
*/
-
+
int
getopt_s(int argc, char * const argv[], const char *optstring);
diff --git a/thirdparties/iphone/include/srtp/gf2_8.h b/thirdparties/iphone/include/srtp/gf2_8.h
index 098d37c..bbbabdf 100755
--- a/thirdparties/iphone/include/srtp/gf2_8.h
+++ b/thirdparties/iphone/include/srtp/gf2_8.h
@@ -8,26 +8,26 @@
*/
/*
- *
+ *
* Copyright (c) 2001-2006, Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -54,13 +54,13 @@ typedef uint8_t gf2_8;
#define gf2_8_field_polynomial 0x1B
/*
- * gf2_8_shift(x) returns
+ * gf2_8_shift(x) returns
*/
/*
- * gf2_8_shift(z) returns the result of the GF(2^8) 'multiply by x'
- * operation, using the field representation from AES; that is, the
- * next gf2_8 value in the cyclic representation of that field. The
+ * gf2_8_shift(z) returns the result of the GF(2^8) 'multiply by x'
+ * operation, using the field representation from AES; that is, the
+ * next gf2_8 value in the cyclic representation of that field. The
* value z should be an uint8_t.
*/
diff --git a/thirdparties/iphone/include/srtp/hmac.h b/thirdparties/iphone/include/srtp/hmac.h
index 262c0e2..77468ab 100755
--- a/thirdparties/iphone/include/srtp/hmac.h
+++ b/thirdparties/iphone/include/srtp/hmac.h
@@ -8,26 +8,26 @@
*
*/
/*
- *
+ *
* Copyright (c) 2001-2006, Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -50,9 +50,9 @@
#include "sha1.h"
typedef struct {
- uint8_t opad[64];
- sha1_ctx_t ctx;
- sha1_ctx_t init_ctx;
+ uint8_t opad[64];
+ sha1_ctx_t ctx;
+ sha1_ctx_t init_ctx;
} hmac_ctx_t;
err_status_t
@@ -72,7 +72,7 @@ hmac_update(hmac_ctx_t *state, const uint8_t *message, int msg_octets);
err_status_t
hmac_compute(hmac_ctx_t *state, const void *message,
- int msg_octets, int tag_len, uint8_t *result);
+ int msg_octets, int tag_len, uint8_t *result);
#endif /* HMAC_H */
diff --git a/thirdparties/iphone/include/srtp/integers.h b/thirdparties/iphone/include/srtp/integers.h
index 7010efd..91935eb 100755
--- a/thirdparties/iphone/include/srtp/integers.h
+++ b/thirdparties/iphone/include/srtp/integers.h
@@ -8,26 +8,26 @@
*/
/*
- *
+ *
* Copyright (c) 2001-2006, Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -125,7 +125,7 @@ extern uint32_t low32(uint64_t value);
#define GET_32(addr) ((((unsigned char *) (addr))[0] << 24) | \
(((unsigned char *) (addr))[1] << 16) | \
(((unsigned char *) (addr))[2] << 8) | \
- (((unsigned char *) (addr))[3]))
+ (((unsigned char *) (addr))[3]))
#else
#define PUT_32(addr,value) \
{ \
@@ -137,7 +137,7 @@ extern uint32_t low32(uint64_t value);
#define GET_32(addr) ((((unsigned char *) (addr))[3] << 24) | \
(((unsigned char *) (addr))[2] << 16) | \
(((unsigned char *) (addr))[1] << 8) | \
- (((unsigned char *) (addr))[0]))
+ (((unsigned char *) (addr))[0]))
#endif // WORDS_BIGENDIAN
#else
#define PUT_32(addr,value) *(((uint32_t *) (addr)) = (value)
diff --git a/thirdparties/iphone/include/srtp/kernel_compat.h b/thirdparties/iphone/include/srtp/kernel_compat.h
index 59d1898..36559f7 100755
--- a/thirdparties/iphone/include/srtp/kernel_compat.h
+++ b/thirdparties/iphone/include/srtp/kernel_compat.h
@@ -1,6 +1,6 @@
/*
* kernel_compat.h
- *
+ *
* Compatibility stuff for building in kernel context where standard
* C headers and library are not available.
*
@@ -8,26 +8,26 @@
* Ingate Systems AB
*/
/*
- *
+ *
* Copyright(c) 2005 Ingate Systems AB
* All rights reserved.
- *
+ *
* 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 author(s) 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
@@ -70,9 +70,9 @@
static inline int rand(void)
{
- uint32_t temp;
- get_random_bytes(&temp, sizeof(temp));
- return temp % (RAND_MAX+1);
+ uint32_t temp;
+ get_random_bytes(&temp, sizeof(temp));
+ return temp % (RAND_MAX+1);
}
/* stdio/stdlib implementation. */
diff --git a/thirdparties/iphone/include/srtp/key.h b/thirdparties/iphone/include/srtp/key.h
index e7e0744..340547f 100755
--- a/thirdparties/iphone/include/srtp/key.h
+++ b/thirdparties/iphone/include/srtp/key.h
@@ -2,31 +2,31 @@
* key.h
*
* key usage limits enforcement
- *
+ *
* David A. Mcgrew
* Cisco Systems, Inc.
*/
/*
- *
+ *
* Copyright (c) 2001-2006 Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -51,9 +51,9 @@
typedef struct key_limit_ctx_t *key_limit_t;
typedef enum {
- key_event_normal,
- key_event_soft_limit,
- key_event_hard_limit
+ key_event_normal,
+ key_event_soft_limit,
+ key_event_hard_limit
} key_event_t;
err_status_t
@@ -68,15 +68,15 @@ key_limit_check(const key_limit_t key);
key_event_t
key_limit_update(key_limit_t key);
-typedef enum {
- key_state_normal,
- key_state_past_soft_limit,
- key_state_expired
+typedef enum {
+ key_state_normal,
+ key_state_past_soft_limit,
+ key_state_expired
} key_state_t;
typedef struct key_limit_ctx_t {
- xtd_seq_num_t num_left;
- key_state_t state;
+ xtd_seq_num_t num_left;
+ key_state_t state;
} key_limit_ctx_t;
#endif /* KEY_H */
diff --git a/thirdparties/iphone/include/srtp/null_auth.h b/thirdparties/iphone/include/srtp/null_auth.h
index 44f9a4a..54c0296 100755
--- a/thirdparties/iphone/include/srtp/null_auth.h
+++ b/thirdparties/iphone/include/srtp/null_auth.h
@@ -7,26 +7,26 @@
*/
/*
- *
+ *
* Copyright (c) 2001-2006, Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -48,7 +48,7 @@
#include "auth.h"
typedef struct {
- char foo;
+ char foo;
} null_auth_ctx_t;
err_status_t
@@ -62,7 +62,7 @@ null_auth_init(null_auth_ctx_t *state, const uint8_t *key, int key_len);
err_status_t
null_auth_compute (null_auth_ctx_t *state, uint8_t *message,
- int msg_octets, int tag_len, uint8_t *result);
+ int msg_octets, int tag_len, uint8_t *result);
#endif /* NULL_AUTH_H */
diff --git a/thirdparties/iphone/include/srtp/null_cipher.h b/thirdparties/iphone/include/srtp/null_cipher.h
index 39da59a..63d272d 100755
--- a/thirdparties/iphone/include/srtp/null_cipher.h
+++ b/thirdparties/iphone/include/srtp/null_cipher.h
@@ -9,26 +9,26 @@
*/
/*
- *
+ *
* Copyright (c) 2001-2006, Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -52,7 +52,7 @@
#include "cipher.h"
typedef struct {
- char foo ;/* empty, for now */
+ char foo ;/* empty, for now */
} null_cipher_ctx_t;
@@ -66,15 +66,15 @@ null_cipher_init(null_cipher_ctx_t *c, const uint8_t *key, int key_len);
err_status_t
null_cipher_set_segment(null_cipher_ctx_t *c,
- unsigned long segment_index);
+ unsigned long segment_index);
err_status_t
null_cipher_encrypt(null_cipher_ctx_t *c,
- unsigned char *buf, unsigned int *bytes_to_encr);
+ unsigned char *buf, unsigned int *bytes_to_encr);
err_status_t
null_cipher_encrypt_aligned(null_cipher_ctx_t *c,
- unsigned char *buf, int bytes_to_encr);
+ unsigned char *buf, int bytes_to_encr);
#endif /* NULL_CIPHER_H */
diff --git a/thirdparties/iphone/include/srtp/prng.h b/thirdparties/iphone/include/srtp/prng.h
index fb96b5e..148b07a 100755
--- a/thirdparties/iphone/include/srtp/prng.h
+++ b/thirdparties/iphone/include/srtp/prng.h
@@ -21,10 +21,10 @@
*/
typedef struct {
- v128_t state; /* state data */
- aes_expanded_key_t key; /* secret key */
- uint32_t octet_count; /* number of octets output since last init */
- rand_source_func_t rand; /* random source for re-initialization */
+ v128_t state; /* state data */
+ aes_expanded_key_t key; /* secret key */
+ uint32_t octet_count; /* number of octets output since last init */
+ rand_source_func_t rand; /* random source for re-initialization */
} x917_prng_t;
err_status_t
@@ -39,9 +39,9 @@ x917_prng_get_octet_string(uint8_t *dest, uint32_t len);
*/
typedef struct {
- uint32_t octet_count; /* number of octets output since last init */
- aes_icm_ctx_t state; /* state data */
- rand_source_func_t rand; /* random source for re-initialization */
+ uint32_t octet_count; /* number of octets output since last init */
+ aes_icm_ctx_t state; /* state data */
+ rand_source_func_t rand; /* random source for re-initialization */
} ctr_prng_t;
err_status_t
diff --git a/thirdparties/iphone/include/srtp/rand_source.h b/thirdparties/iphone/include/srtp/rand_source.h
index b4c2110..d2e52ce 100755
--- a/thirdparties/iphone/include/srtp/rand_source.h
+++ b/thirdparties/iphone/include/srtp/rand_source.h
@@ -7,26 +7,26 @@
* Cisco Systems, Inc.
*/
/*
- *
+ *
* Copyright(c) 2001-2006 Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -60,7 +60,7 @@ rand_source_init(void);
* and returns an error code. This error code should be checked,
* and if a failure is reported, the data in the buffer MUST NOT
* be used.
- *
+ *
* warning: If the return code is not checked, then non-random
* data may inadvertently be used.
*
@@ -77,7 +77,7 @@ rand_source_get_octet_string(void *dest, uint32_t length);
err_status_t
rand_source_deinit(void);
-/*
+/*
* function prototype for a random source function
*
* A rand_source_func_t writes num_octets at the location indicated by
@@ -86,6 +86,6 @@ rand_source_deinit(void);
*/
typedef err_status_t (*rand_source_func_t)
- (void *dest, uint32_t num_octets);
+(void *dest, uint32_t num_octets);
#endif /* RAND_SOURCE */
diff --git a/thirdparties/iphone/include/srtp/rdb.h b/thirdparties/iphone/include/srtp/rdb.h
index 2ccb144..2432fae 100755
--- a/thirdparties/iphone/include/srtp/rdb.h
+++ b/thirdparties/iphone/include/srtp/rdb.h
@@ -21,11 +21,11 @@
*/
typedef struct {
- uint32_t window_start; /* packet index of the first bit in bitmask */
- v128_t bitmask;
+ uint32_t window_start; /* packet index of the first bit in bitmask */
+ v128_t bitmask;
} rdb_t;
-#define rdb_bits_in_bitmask (8*sizeof(v128_t))
+#define rdb_bits_in_bitmask (8*sizeof(v128_t))
/*
* rdb init
@@ -49,7 +49,7 @@ rdb_init(rdb_t *rdb);
*/
err_status_t
-rdb_check(const rdb_t *rdb, uint32_t rdb_index);
+rdb_check(const rdb_t *rdb, uint32_t rdb_index);
/*
* rdb_add_index
@@ -64,18 +64,18 @@ err_status_t
rdb_add_index(rdb_t *rdb, uint32_t rdb_index);
/*
- * the functions rdb_increment() and rdb_get_value() are for use by
+ * the functions rdb_increment() and rdb_get_value() are for use by
* senders, not receivers - DO NOT use these functions on the same
* rdb_t upon which rdb_add_index is used!
*/
/*
- * rdb_increment(db) increments the sequence number in db, if it is
+ * rdb_increment(db) increments the sequence number in db, if it is
* not too high
*
* return values:
- *
+ *
* err_status_ok no problem
* err_status_key_expired sequence number too high
*
@@ -91,4 +91,4 @@ uint32_t
rdb_get_value(const rdb_t *rdb);
-#endif /* REPLAY_DB_H */
+#endif /* REPLAY_DB_H */
diff --git a/thirdparties/iphone/include/srtp/rdbx.h b/thirdparties/iphone/include/srtp/rdbx.h
index 146fb42..88055c2 100755
--- a/thirdparties/iphone/include/srtp/rdbx.h
+++ b/thirdparties/iphone/include/srtp/rdbx.h
@@ -14,7 +14,7 @@
#include "datatypes.h"
#include "err.h"
-/* #define ROC_TEST */
+/* #define ROC_TEST */
#ifndef ROC_TEST
@@ -33,7 +33,7 @@ typedef uint16_t rollover_counter_t; /* 16 bit rollover counter */
/*
* An xtd_seq_num_t is a 64-bit unsigned integer used as an 'extended'
- * sequence number.
+ * sequence number.
*/
typedef uint64_t xtd_seq_num_t;
@@ -45,8 +45,8 @@ typedef uint64_t xtd_seq_num_t;
*/
typedef struct {
- xtd_seq_num_t index;
- bitvector_t bitmask;
+ xtd_seq_num_t index;
+ bitvector_t bitmask;
} rdbx_t;
@@ -73,7 +73,7 @@ rdbx_dealloc(rdbx_t *rdbx);
/*
* rdbx_estimate_index(rdbx, guess, s)
- *
+ *
* given an rdbx and a sequence number s (from a newly arrived packet),
* sets the contents of *guess to contain the best guess of the packet
* index to which s corresponds, and returns the difference between
@@ -82,8 +82,8 @@ rdbx_dealloc(rdbx_t *rdbx);
int
rdbx_estimate_index(const rdbx_t *rdbx,
- xtd_seq_num_t *guess,
- sequence_number_t s);
+ xtd_seq_num_t *guess,
+ sequence_number_t s);
/*
* rdbx_check(rdbx, delta);
@@ -98,7 +98,7 @@ rdbx_check(const rdbx_t *rdbx, int difference);
/*
* replay_add_index(rdbx, delta)
- *
+ *
* adds the xtd_seq_num_t at rdbx->window_start + delta to replay_db
* (and does *not* check if that xtd_seq_num_t appears in db)
*
@@ -116,7 +116,7 @@ rdbx_add_index(rdbx_t *rdbx, int delta);
* to have the rollover counter value roc. If that value is less than
* the current rollover counter value, then the function returns
* err_status_replay_old; otherwise, err_status_ok is returned.
- *
+ *
*/
err_status_t
@@ -125,7 +125,7 @@ rdbx_set_roc(rdbx_t *rdbx, uint32_t roc);
/*
* rdbx_get_roc(rdbx) returns the value of the rollover counter for
* the rdbx_t pointed to by rdbx
- *
+ *
*/
xtd_seq_num_t
@@ -160,7 +160,7 @@ index_advance(xtd_seq_num_t *pi, sequence_number_t s);
/*
* index_guess(local, guess, s)
- *
+ *
* given a xtd_seq_num_t local (which represents the highest
* known-to-be-good index) and a sequence number s (from a newly
* arrived packet), sets the contents of *guess to contain the best
@@ -170,8 +170,8 @@ index_advance(xtd_seq_num_t *pi, sequence_number_t s);
int
index_guess(const xtd_seq_num_t *local,
- xtd_seq_num_t *guess,
- sequence_number_t s);
+ xtd_seq_num_t *guess,
+ sequence_number_t s);
#endif /* RDBX_H */
diff --git a/thirdparties/iphone/include/srtp/rtp.h b/thirdparties/iphone/include/srtp/rtp.h
index 0e0119c..9b97ab6 100755
--- a/thirdparties/iphone/include/srtp/rtp.h
+++ b/thirdparties/iphone/include/srtp/rtp.h
@@ -1,6 +1,6 @@
/*
* rtp.h
- *
+ *
* rtp interface for srtp reference implementation
*
* David A. McGrew
@@ -15,26 +15,26 @@
*/
/*
- *
+ *
* Copyright (c) 2001-2006, Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -73,12 +73,12 @@ int
rtp_recvfrom(rtp_receiver_t receiver, void *msg, int *len);
int
-rtp_receiver_init(rtp_receiver_t rcvr, int sock,
- struct sockaddr_in addr, unsigned int ssrc);
+rtp_receiver_init(rtp_receiver_t rcvr, int sock,
+ struct sockaddr_in addr, unsigned int ssrc);
int
-rtp_sender_init(rtp_sender_t sender, int sock,
- struct sockaddr_in addr, unsigned int ssrc);
+rtp_sender_init(rtp_sender_t sender, int sock,
+ struct sockaddr_in addr, unsigned int ssrc);
/*
* srtp_sender_init(...) initializes an rtp_sender_t
@@ -86,17 +86,17 @@ rtp_sender_init(rtp_sender_t sender, int sock,
int
srtp_sender_init(rtp_sender_t rtp_ctx, /* structure to be init'ed */
- struct sockaddr_in name, /* socket name */
- sec_serv_t security_services, /* sec. servs. to be used */
- unsigned char *input_key /* master key/salt in hex */
- );
+ struct sockaddr_in name, /* socket name */
+ sec_serv_t security_services, /* sec. servs. to be used */
+ unsigned char *input_key /* master key/salt in hex */
+ );
int
srtp_receiver_init(rtp_receiver_t rtp_ctx, /* structure to be init'ed */
- struct sockaddr_in name, /* socket name */
- sec_serv_t security_services, /* sec. servs. to be used */
- unsigned char *input_key /* master key/salt in hex */
- );
+ struct sockaddr_in name, /* socket name */
+ sec_serv_t security_services, /* sec. servs. to be used */
+ unsigned char *input_key /* master key/salt in hex */
+ );
int
@@ -112,13 +112,13 @@ int
rtp_receiver_deinit_srtp(rtp_receiver_t sender);
-rtp_sender_t
+rtp_sender_t
rtp_sender_alloc(void);
void
rtp_sender_dealloc(rtp_sender_t rtp_ctx);
-rtp_receiver_t
+rtp_receiver_t
rtp_receiver_alloc(void);
void
@@ -130,7 +130,7 @@ rtp_receiver_dealloc(rtp_receiver_t rtp_ctx);
*/
#define RTP_HEADER_LEN 12
-/*
+/*
* RTP_MAX_BUF_LEN defines the largest RTP packet in the rtp.c implementation
*/
#define RTP_MAX_BUF_LEN 16384
diff --git a/thirdparties/iphone/include/srtp/rtp_priv.h b/thirdparties/iphone/include/srtp/rtp_priv.h
index 1421386..088cdbe 100755
--- a/thirdparties/iphone/include/srtp/rtp_priv.h
+++ b/thirdparties/iphone/include/srtp/rtp_priv.h
@@ -7,26 +7,26 @@
* Cisco Systems, Inc.
*/
/*
- *
+ *
* Copyright (c) 2001-2006 Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -52,22 +52,22 @@
typedef srtp_hdr_t rtp_hdr_t;
typedef struct {
- srtp_hdr_t header;
- char body[RTP_MAX_BUF_LEN];
+ srtp_hdr_t header;
+ char body[RTP_MAX_BUF_LEN];
} rtp_msg_t;
typedef struct rtp_sender_ctx_t {
- rtp_msg_t message;
- int socket;
- srtp_ctx_t *srtp_ctx;
- struct sockaddr_in addr; /* reciever's address */
+ rtp_msg_t message;
+ int socket;
+ srtp_ctx_t *srtp_ctx;
+ struct sockaddr_in addr; /* reciever's address */
} rtp_sender_ctx_t;
typedef struct rtp_receiver_ctx_t {
- rtp_msg_t message;
- int socket;
- srtp_ctx_t *srtp_ctx;
- struct sockaddr_in addr; /* receiver's address */
+ rtp_msg_t message;
+ int socket;
+ srtp_ctx_t *srtp_ctx;
+ struct sockaddr_in addr; /* receiver's address */
} rtp_receiver_ctx_t;
diff --git a/thirdparties/iphone/include/srtp/sha1.h b/thirdparties/iphone/include/srtp/sha1.h
index e3af4d4..65ecee4 100755
--- a/thirdparties/iphone/include/srtp/sha1.h
+++ b/thirdparties/iphone/include/srtp/sha1.h
@@ -9,26 +9,26 @@
*/
/*
- *
+ *
* Copyright (c) 2001-2006, Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -51,17 +51,17 @@
#include "datatypes.h"
typedef struct {
- uint32_t H[5]; /* state vector */
- uint32_t M[16]; /* message buffer */
- int octets_in_buffer; /* octets of message in buffer */
- uint32_t num_bits_in_msg; /* total number of bits in message */
+ uint32_t H[5]; /* state vector */
+ uint32_t M[16]; /* message buffer */
+ int octets_in_buffer; /* octets of message in buffer */
+ uint32_t num_bits_in_msg; /* total number of bits in message */
} sha1_ctx_t;
/*
* sha1(&ctx, msg, len, output) hashes the len octets starting at msg
* into the SHA1 context, then writes the result to the 20 octets at
* output
- *
+ *
*/
void
@@ -69,10 +69,10 @@ sha1(const uint8_t *message, int octets_in_msg, uint32_t output[5]);
/*
* sha1_init(&ctx) initializes the SHA1 context ctx
- *
+ *
* sha1_update(&ctx, msg, len) hashes the len octets starting at msg
* into the SHA1 context
- *
+ *
* sha1_final(&ctx, output) performs the final processing of the SHA1
* context and writes the result to the 20 octets at output
*
@@ -90,7 +90,7 @@ sha1_final(sha1_ctx_t *ctx, uint32_t output[5]);
/*
* The sha1_core function is INTERNAL to SHA-1, but it is declared
* here because it is also used by the cipher SEAL 3.0 in its key
- * setup algorithm.
+ * setup algorithm.
*/
/*
@@ -104,5 +104,5 @@ sha1_final(sha1_ctx_t *ctx, uint32_t output[5]);
void
sha1_core(const uint32_t M[16], uint32_t hash_value[5]);
-
+
#endif /* SHA1_H */
diff --git a/thirdparties/iphone/include/srtp/srtp.h b/thirdparties/iphone/include/srtp/srtp.h
index eb95e7d..6f6fc9c 100755
--- a/thirdparties/iphone/include/srtp/srtp.h
+++ b/thirdparties/iphone/include/srtp/srtp.h
@@ -7,26 +7,26 @@
* Cisco Systems, Inc.
*/
/*
- *
+ *
* Copyright (c) 2001-2006, Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -50,7 +50,7 @@
extern "C" {
#endif
-#include "crypto_kernel.h"
+#include "crypto_kernel.h"
/**
* @defgroup SRTP Secure RTP
@@ -76,7 +76,7 @@ extern "C" {
* SRTP_MAX_TAG_LEN is the maximum tag length supported by libSRTP
*/
-#define SRTP_MAX_TAG_LEN 12
+#define SRTP_MAX_TAG_LEN 12
/**
* SRTP_MAX_TRAILER_LEN is the maximum length of the SRTP trailer
@@ -86,85 +86,86 @@ extern "C" {
*
* @brief the maximum number of octets added by srtp_protect().
*/
-#define SRTP_MAX_TRAILER_LEN SRTP_MAX_TAG_LEN
+#define SRTP_MAX_TRAILER_LEN SRTP_MAX_TAG_LEN
-/*
+/*
* nota bene: since libSRTP doesn't support the use of the MKI, the
* SRTP_MAX_TRAILER_LEN value is just the maximum tag length
*/
/**
- * @brief sec_serv_t describes a set of security services.
+ * @brief sec_serv_t describes a set of security services.
*
* A sec_serv_t enumeration is used to describe the particular
* security services that will be applied by a particular crypto
- * policy (or other mechanism).
+ * policy (or other mechanism).
*/
typedef enum {
- sec_serv_none = 0, /**< no services */
- sec_serv_conf = 1, /**< confidentiality */
- sec_serv_auth = 2, /**< authentication */
- sec_serv_conf_and_auth = 3 /**< confidentiality and authentication */
-} sec_serv_t;
+ sec_serv_none = 0, /**< no services */
+ sec_serv_conf = 1, /**< confidentiality */
+ sec_serv_auth = 2, /**< authentication */
+ sec_serv_conf_and_auth = 3 /**< confidentiality and authentication */
+}
+sec_serv_t;
-/**
+/**
* @brief crypto_policy_t describes a particular crypto policy that
* can be applied to an SRTP stream.
*
* A crypto_policy_t describes a particular cryptographic policy that
* can be applied to an SRTP or SRTCP stream. An SRTP session policy
- * consists of a list of these policies, one for each SRTP stream
+ * consists of a list of these policies, one for each SRTP stream
* in the session.
*/
typedef struct crypto_policy_t {
- cipher_type_id_t cipher_type; /**< An integer representing
+ cipher_type_id_t cipher_type; /**< An integer representing
* the type of cipher. */
- int cipher_key_len; /**< The length of the cipher key
+ int cipher_key_len; /**< The length of the cipher key
* in octets. */
- auth_type_id_t auth_type; /**< An integer representing the
+ auth_type_id_t auth_type; /**< An integer representing the
* authentication function. */
- int auth_key_len; /**< The length of the authentication
+ int auth_key_len; /**< The length of the authentication
* function key in octets. */
- int auth_tag_len; /**< The length of the authentication
+ int auth_tag_len; /**< The length of the authentication
* tag in octets. */
- sec_serv_t sec_serv; /**< The flag indicating the security
+ sec_serv_t sec_serv; /**< The flag indicating the security
* services to be applied. */
} crypto_policy_t;
-/**
+/**
* @brief ssrc_type_t describes the type of an SSRC.
- *
+ *
* An ssrc_type_t enumeration is used to indicate a type of SSRC. See
* @ref srtp_policy_t for more informataion.
*/
-typedef enum {
- ssrc_undefined = 0, /**< Indicates an undefined SSRC type. */
- ssrc_specific = 1, /**< Indicates a specific SSRC value */
- ssrc_any_inbound = 2, /**< Indicates any inbound SSRC value
+typedef enum {
+ ssrc_undefined = 0, /**< Indicates an undefined SSRC type. */
+ ssrc_specific = 1, /**< Indicates a specific SSRC value */
+ ssrc_any_inbound = 2, /**< Indicates any inbound SSRC value
(i.e. a value that is used in the
function srtp_unprotect()) */
- ssrc_any_outbound = 3 /**< Indicates any outbound SSRC value
- (i.e. a value that is used in the
+ ssrc_any_outbound = 3 /**< Indicates any outbound SSRC value
+ (i.e. a value that is used in the
function srtp_protect()) */
} ssrc_type_t;
/**
* @brief An ssrc_t represents a particular SSRC value, or a `wildcard' SSRC.
- *
+ *
* An ssrc_t represents a particular SSRC value (if its type is
* ssrc_specific), or a wildcard SSRC value that will match all
* outbound SSRCs (if its type is ssrc_any_outbound) or all inbound
- * SSRCs (if its type is ssrc_any_inbound).
+ * SSRCs (if its type is ssrc_any_inbound).
*
*/
-typedef struct {
- ssrc_type_t type; /**< The type of this particular SSRC */
- unsigned int value; /**< The value of this SSRC, if it is not a wildcard */
+typedef struct {
+ ssrc_type_t type; /**< The type of this particular SSRC */
+ unsigned int value; /**< The value of this SSRC, if it is not a wildcard */
} ssrc_t;
@@ -180,8 +181,8 @@ typedef struct ekt_policy_ctx_t *ekt_policy_t;
typedef struct ekt_stream_ctx_t *ekt_stream_t;
-/**
- * @brief represents the policy for an SRTP session.
+/**
+ * @brief represents the policy for an SRTP session.
*
* A single srtp_policy_t struct represents the policy for a single
* SRTP stream, and a linked list of these elements represents the
@@ -190,7 +191,7 @@ typedef struct ekt_stream_ctx_t *ekt_stream_t;
* master key for that stream, the SSRC describing that stream, or a
* flag indicating a `wildcard' SSRC value, and a `next' field that
* holds a pointer to the next element in the list of policy elements,
- * or NULL if it is the last element.
+ * or NULL if it is the last element.
*
* The wildcard value SSRC_ANY_INBOUND matches any SSRC from an
* inbound stream that for which there is no explicit SSRC entry in
@@ -201,33 +202,33 @@ typedef struct ekt_stream_ctx_t *ekt_stream_t;
* is intentional, and it allows libSRTP to ensure that no security
* lapses result from accidental re-use of SSRC values during key
* sharing.
- *
- *
+ *
+ *
* @warning The final element of the list @b must have its `next' pointer
* set to NULL.
*/
typedef struct srtp_policy_t {
- ssrc_t ssrc; /**< The SSRC value of stream, or the
- * flags SSRC_ANY_INBOUND or
+ ssrc_t ssrc; /**< The SSRC value of stream, or the
+ * flags SSRC_ANY_INBOUND or
* SSRC_ANY_OUTBOUND if key sharing
* is used for this policy element.
*/
- crypto_policy_t rtp; /**< SRTP crypto policy. */
- crypto_policy_t rtcp; /**< SRTCP crypto policy. */
- unsigned char *key; /**< Pointer to the SRTP master key for
+ crypto_policy_t rtp; /**< SRTP crypto policy. */
+ crypto_policy_t rtcp; /**< SRTCP crypto policy. */
+ unsigned char *key; /**< Pointer to the SRTP master key for
* this stream. */
- ekt_policy_t ekt; /**< Pointer to the EKT policy structure
- * for this stream (if any) */
- unsigned long window_size; /**< The window size to use for replay
+ ekt_policy_t ekt; /**< Pointer to the EKT policy structure
+ * for this stream (if any) */
+ unsigned long window_size; /**< The window size to use for replay
* protection. */
- int allow_repeat_tx; /**< Whether retransmissions of
+ int allow_repeat_tx; /**< Whether retransmissions of
* packets with the same sequence number
* are allowed. (Note that such repeated
* transmissions must have the same RTP
* payload, or a severe security weakness
* is introduced!) */
- struct srtp_policy_t *next; /**< Pointer to next stream policy. */
+ struct srtp_policy_t *next; /**< Pointer to next stream policy. */
} srtp_policy_t;
@@ -237,7 +238,7 @@ typedef struct srtp_policy_t {
* @brief An srtp_t points to an SRTP session structure.
*
* The typedef srtp_t is a pointer to a structure that represents
- * an SRTP session. This datatype is intentially opaque in
+ * an SRTP session. This datatype is intentially opaque in
* order to separate the interface from the implementation.
*
* An SRTP session consists of all of the traffic sent to the RTP and
@@ -254,11 +255,11 @@ typedef struct srtp_ctx_t *srtp_t;
*
* The typedef srtp_stream_t is a pointer to a structure that
* represents an SRTP stream. This datatype is intentionally
- * opaque in order to separate the interface from the implementation.
- *
+ * opaque in order to separate the interface from the implementation.
+ *
* An SRTP stream consists of all of the traffic sent to an SRTP
* session by a single participant. A session can be viewed as
- * a set of streams.
+ * a set of streams.
*
*/
typedef struct srtp_stream_ctx_t *srtp_stream_t;
@@ -266,7 +267,7 @@ typedef struct srtp_stream_ctx_t *srtp_stream_t;
/**
- * @brief srtp_init() initializes the srtp library.
+ * @brief srtp_init() initializes the srtp library.
*
* @warning This function @b must be called before any other srtp
* functions.
@@ -287,14 +288,14 @@ srtp_shutdown(void);
/**
* @brief srtp_protect() is the Secure RTP sender-side packet processing
* function.
- *
+ *
* The function call srtp_protect(ctx, rtp_hdr, len_ptr) applies SRTP
* protection to the RTP packet rtp_hdr (which has length *len_ptr) using
* the SRTP context ctx. If err_status_ok is returned, then rtp_hdr
* points to the resulting SRTP packet and *len_ptr is the number of
* octets in that packet; otherwise, no assumptions should be made
* about the value of either data elements.
- *
+ *
* The sequence numbers of the RTP packets presented to this function
* need not be consecutive, but they @b must be out of order by less
* than 2^15 = 32,768 packets.
@@ -314,7 +315,7 @@ srtp_shutdown(void);
* complete SRTP packet after the call, if err_status_ok was returned.
* Otherwise, the value of the data to which it points is undefined.
*
- * @return
+ * @return
* - err_status_ok no problems
* - err_status_replay_fail rtp sequence number was non-increasing
* - @e other failure in cryptographic mechanisms
@@ -322,7 +323,7 @@ srtp_shutdown(void);
err_status_t
srtp_protect(srtp_t ctx, void *rtp_hdr, int *len_ptr);
-
+
/**
* @brief srtp_unprotect() is the Secure RTP receiver-side packet
* processing function.
@@ -333,12 +334,12 @@ srtp_protect(srtp_t ctx, void *rtp_hdr, int *len_ptr);
* err_status_ok is returned, then srtp_hdr points to the resulting
* RTP packet and *len_ptr is the number of octets in that packet;
* otherwise, no assumptions should be made about the value of either
- * data elements.
- *
+ * data elements.
+ *
* The sequence numbers of the RTP packets presented to this function
* need not be consecutive, but they @b must be out of order by less
* than 2^15 = 32,768 packets.
- *
+ *
* @warning This function assumes that the SRTP packet is aligned on a
* 32-bit boundary.
*
@@ -355,9 +356,9 @@ srtp_protect(srtp_t ctx, void *rtp_hdr, int *len_ptr);
* complete rtp packet after the call, if err_status_ok was returned.
* Otherwise, the value of the data to which it points is undefined.
*
- * @return
+ * @return
* - err_status_ok if the RTP packet is valid.
- * - err_status_auth_fail if the SRTP packet failed the message
+ * - err_status_auth_fail if the SRTP packet failed the message
* authentication check.
* - err_status_replay_fail if the SRTP packet is a replay (e.g. packet has
* already been processed and accepted).
@@ -377,14 +378,14 @@ srtp_unprotect(srtp_t ctx, void *srtp_hdr, int *len_ptr);
* key.
*
* @param session is the SRTP session to which the policy is to be added.
- *
+ *
* @param policy is the srtp_policy_t struct that describes the policy
* for the session. The struct may be a single element, or it may be
* the head of a list, in which case each element of the list is
* processed. It may also be NULL, in which case streams should be added
* later using srtp_add_stream(). The final element of the list @b must
* have its `next' field set to NULL.
- *
+ *
* @return
* - err_status_ok if creation succeded.
* - err_status_alloc_fail if allocation failed.
@@ -398,7 +399,7 @@ srtp_create(srtp_t *session, const srtp_policy_t *policy);
/**
* @brief srtp_add_stream() allocates and initializes an SRTP stream
* within a given SRTP session.
- *
+ *
* The function call srtp_add_stream(session, policy) allocates and
* initializes a new SRTP stream within a given, previously created
* session, applying the policy given as the other argument to that
@@ -411,13 +412,13 @@ srtp_create(srtp_t *session, const srtp_policy_t *policy);
*/
err_status_t
-srtp_add_stream(srtp_t session,
- const srtp_policy_t *policy);
+srtp_add_stream(srtp_t session,
+ const srtp_policy_t *policy);
/**
* @brief srtp_remove_stream() deallocates an SRTP stream.
- *
+ *
* The function call srtp_remove_stream(session, ssrc) removes
* the SRTP stream with the SSRC value ssrc from the SRTP session
* context given by the argument session.
@@ -429,7 +430,7 @@ srtp_add_stream(srtp_t session,
*
* @warning Wildcard SSRC values cannot be removed from a
* session.
- *
+ *
* @return
* - err_status_ok if the stream deallocation succeded.
* - [other] otherwise.
@@ -443,8 +444,8 @@ srtp_remove_stream(srtp_t session, unsigned int ssrc);
* @brief crypto_policy_set_rtp_default() sets a crypto policy
* structure to the SRTP default policy for RTP protection.
*
- * @param p is a pointer to the policy structure to be set
- *
+ * @param p is a pointer to the policy structure to be set
+ *
* The function call crypto_policy_set_rtp_default(&p) sets the
* crypto_policy_t at location p to the SRTP default policy for RTP
* protection, as defined in the specification. This function is a
@@ -453,9 +454,9 @@ srtp_remove_stream(srtp_t session, unsigned int ssrc);
* with this function call. Doing so may allow your code to be
* forward compatible with later versions of libSRTP that include more
* elements in the crypto_policy_t datatype.
- *
+ *
* @return void.
- *
+ *
*/
void
@@ -465,8 +466,8 @@ crypto_policy_set_rtp_default(crypto_policy_t *p);
* @brief crypto_policy_set_rtcp_default() sets a crypto policy
* structure to the SRTP default policy for RTCP protection.
*
- * @param p is a pointer to the policy structure to be set
- *
+ * @param p is a pointer to the policy structure to be set
+ *
* The function call crypto_policy_set_rtcp_default(&p) sets the
* crypto_policy_t at location p to the SRTP default policy for RTCP
* protection, as defined in the specification. This function is a
@@ -475,9 +476,9 @@ crypto_policy_set_rtp_default(crypto_policy_t *p);
* with this function call. Doing so may allow your code to be
* forward compatible with later versions of libSRTP that include more
* elements in the crypto_policy_t datatype.
- *
+ *
* @return void.
- *
+ *
*/
void
@@ -487,15 +488,15 @@ crypto_policy_set_rtcp_default(crypto_policy_t *p);
* @brief crypto_policy_set_aes_cm_128_hmac_sha1_80() sets a crypto
* policy structure to the SRTP default policy for RTP protection.
*
- * @param p is a pointer to the policy structure to be set
- *
+ * @param p is a pointer to the policy structure to be set
+ *
* The function crypto_policy_set_aes_cm_128_hmac_sha1_80() is a
* synonym for crypto_policy_set_rtp_default(). It conforms to the
* naming convention used in RFC 4568 (SDP Security Descriptions for
* Media Streams).
- *
+ *
* @return void.
- *
+ *
*/
#define crypto_policy_set_aes_cm_128_hmac_sha1_80(p) crypto_policy_set_rtp_default(p)
@@ -505,8 +506,8 @@ crypto_policy_set_rtcp_default(crypto_policy_t *p);
* @brief crypto_policy_set_aes_cm_128_hmac_sha1_32() sets a crypto
* policy structure to a short-authentication tag policy
*
- * @param p is a pointer to the policy structure to be set
- *
+ * @param p is a pointer to the policy structure to be set
+ *
* The function call crypto_policy_set_aes_cm_128_hmac_sha1_32(&p)
* sets the crypto_policy_t at location p to use policy
* AES_CM_128_HMAC_SHA1_32 as defined in RFC 4568.
@@ -516,7 +517,7 @@ crypto_policy_set_rtcp_default(crypto_policy_t *p);
* considered adequate only for protecting audio and video media that
* use a stateless playback function. See Section 7.5 of RFC 3711
* (http://www.ietf.org/rfc/rfc3711.txt).
- *
+ *
* This function is a convenience that helps to avoid dealing directly
* with the policy data structure. You are encouraged to initialize
* policy elements with this function call. Doing so may allow your
@@ -529,7 +530,7 @@ crypto_policy_set_rtcp_default(crypto_policy_t *p);
* (http://www.ietf.org/rfc/rfc3711.txt).
*
* @return void.
- *
+ *
*/
void
@@ -541,14 +542,14 @@ crypto_policy_set_aes_cm_128_hmac_sha1_32(crypto_policy_t *p);
* @brief crypto_policy_set_aes_cm_128_null_auth() sets a crypto
* policy structure to an encryption-only policy
*
- * @param p is a pointer to the policy structure to be set
- *
+ * @param p is a pointer to the policy structure to be set
+ *
* The function call crypto_policy_set_aes_cm_128_null_auth(&p) sets
* the crypto_policy_t at location p to use the SRTP default cipher
* (AES-128 Counter Mode), but to use no authentication method. This
* policy is NOT RECOMMENDED unless it is unavoidable; see Section 7.5
* of RFC 3711 (http://www.ietf.org/rfc/rfc3711.txt).
- *
+ *
* This function is a convenience that helps to avoid dealing directly
* with the policy data structure. You are encouraged to initialize
* policy elements with this function call. Doing so may allow your
@@ -560,7 +561,7 @@ crypto_policy_set_aes_cm_128_hmac_sha1_32(crypto_policy_t *p);
* Section 7.5 of RFC 3711 (http://www.ietf.org/rfc/rfc3711.txt).
*
* @return void.
- *
+ *
*/
void
@@ -571,14 +572,14 @@ crypto_policy_set_aes_cm_128_null_auth(crypto_policy_t *p);
* @brief crypto_policy_set_null_cipher_hmac_sha1_80() sets a crypto
* policy structure to an authentication-only policy
*
- * @param p is a pointer to the policy structure to be set
- *
+ * @param p is a pointer to the policy structure to be set
+ *
* The function call crypto_policy_set_null_cipher_hmac_sha1_80(&p)
* sets the crypto_policy_t at location p to use HMAC-SHA1 with an 80
* bit authentication tag to provide message authentication, but to
* use no encryption. This policy is NOT RECOMMENDED for SRTP unless
- * there is a requirement to forego encryption.
- *
+ * there is a requirement to forego encryption.
+ *
* This function is a convenience that helps to avoid dealing directly
* with the policy data structure. You are encouraged to initialize
* policy elements with this function call. Doing so may allow your
@@ -586,10 +587,10 @@ crypto_policy_set_aes_cm_128_null_auth(crypto_policy_t *p);
* include more elements in the crypto_policy_t datatype.
*
* @warning This policy is NOT RECOMMENDED for SRTP unless there is a
- * requirement to forego encryption.
+ * requirement to forego encryption.
*
* @return void.
- *
+ *
*/
void
@@ -598,18 +599,18 @@ crypto_policy_set_null_cipher_hmac_sha1_80(crypto_policy_t *p);
/**
* @brief crypto_policy_set_aes_cm_256_hmac_sha1_80() sets a crypto
- * policy structure to a encryption and authentication policy using AES-256
+ * policy structure to a encryption and authentication policy using AES-256
* for RTP protection.
*
- * @param p is a pointer to the policy structure to be set
- *
+ * @param p is a pointer to the policy structure to be set
+ *
* The function call crypto_policy_set_aes_cm_256_hmac_sha1_80(&p)
* sets the crypto_policy_t at location p to use policy
* AES_CM_256_HMAC_SHA1_80 as defined in
* draft-ietf-avt-srtp-big-aes-03.txt. This policy uses AES-256
* Counter Mode encryption and HMAC-SHA1 authentication, with an 80 bit
* authentication tag.
- *
+ *
* This function is a convenience that helps to avoid dealing directly
* with the policy data structure. You are encouraged to initialize
* policy elements with this function call. Doing so may allow your
@@ -617,7 +618,7 @@ crypto_policy_set_null_cipher_hmac_sha1_80(crypto_policy_t *p);
* include more elements in the crypto_policy_t datatype.
*
* @return void.
- *
+ *
*/
void crypto_policy_set_aes_cm_256_hmac_sha1_80(crypto_policy_t *p);
@@ -628,8 +629,8 @@ void crypto_policy_set_aes_cm_256_hmac_sha1_80(crypto_policy_t *p);
* policy structure to a short-authentication tag policy using AES-256
* encryption.
*
- * @param p is a pointer to the policy structure to be set
- *
+ * @param p is a pointer to the policy structure to be set
+ *
* The function call crypto_policy_set_aes_cm_256_hmac_sha1_32(&p)
* sets the crypto_policy_t at location p to use policy
* AES_CM_256_HMAC_SHA1_32 as defined in
@@ -639,7 +640,7 @@ void crypto_policy_set_aes_cm_256_hmac_sha1_80(crypto_policy_t *p);
* considered adequate only for protecting audio and video media that
* use a stateless playback function. See Section 7.5 of RFC 3711
* (http://www.ietf.org/rfc/rfc3711.txt).
- *
+ *
* This function is a convenience that helps to avoid dealing directly
* with the policy data structure. You are encouraged to initialize
* policy elements with this function call. Doing so may allow your
@@ -652,7 +653,7 @@ void crypto_policy_set_aes_cm_256_hmac_sha1_80(crypto_policy_t *p);
* (http://www.ietf.org/rfc/rfc3711.txt).
*
* @return void.
- *
+ *
*/
void
@@ -662,7 +663,7 @@ crypto_policy_set_aes_cm_256_hmac_sha1_32(crypto_policy_t *p);
/**
* @brief srtp_dealloc() deallocates storage for an SRTP session
* context.
- *
+ *
* The function call srtp_dealloc(s) deallocates storage for the
* SRTP session context s. This function should be called no more
* than one time for each of the contexts allocated by the function
@@ -680,7 +681,7 @@ srtp_dealloc(srtp_t s);
/*
- * @brief identifies a particular SRTP profile
+ * @brief identifies a particular SRTP profile
*
* An srtp_profile_t enumeration is used to identify a particular SRTP
* profile (that is, a set of algorithms and parameters). These
@@ -688,13 +689,13 @@ srtp_dealloc(srtp_t s);
*/
typedef enum {
- srtp_profile_reserved = 0,
- srtp_profile_aes128_cm_sha1_80 = 1,
- srtp_profile_aes128_cm_sha1_32 = 2,
- srtp_profile_aes256_cm_sha1_80 = 3,
- srtp_profile_aes256_cm_sha1_32 = 4,
- srtp_profile_null_sha1_80 = 5,
- srtp_profile_null_sha1_32 = 6,
+ srtp_profile_reserved = 0,
+ srtp_profile_aes128_cm_sha1_80 = 1,
+ srtp_profile_aes128_cm_sha1_32 = 2,
+ srtp_profile_aes256_cm_sha1_80 = 3,
+ srtp_profile_aes256_cm_sha1_32 = 4,
+ srtp_profile_null_sha1_80 = 5,
+ srtp_profile_null_sha1_32 = 6,
} srtp_profile_t;
@@ -702,26 +703,26 @@ typedef enum {
* @brief crypto_policy_set_from_profile_for_rtp() sets a crypto policy
* structure to the appropriate value for RTP based on an srtp_profile_t
*
- * @param p is a pointer to the policy structure to be set
- *
+ * @param p is a pointer to the policy structure to be set
+ *
* The function call crypto_policy_set_rtp_default(&policy, profile)
* sets the crypto_policy_t at location policy to the policy for RTP
* protection, as defined by the srtp_profile_t profile.
- *
+ *
* This function is a convenience that helps to avoid dealing directly
* with the policy data structure. You are encouraged to initialize
* policy elements with this function call. Doing so may allow your
* code to be forward compatible with later versions of libSRTP that
* include more elements in the crypto_policy_t datatype.
- *
+ *
* @return values
* - err_status_ok no problems were encountered
- * - err_status_bad_param the profile is not supported
- *
+ * - err_status_bad_param the profile is not supported
+ *
*/
err_status_t
-crypto_policy_set_from_profile_for_rtp(crypto_policy_t *policy,
- srtp_profile_t profile);
+crypto_policy_set_from_profile_for_rtp(crypto_policy_t *policy,
+ srtp_profile_t profile);
@@ -730,26 +731,26 @@ crypto_policy_set_from_profile_for_rtp(crypto_policy_t *policy,
* @brief crypto_policy_set_from_profile_for_rtcp() sets a crypto policy
* structure to the appropriate value for RTCP based on an srtp_profile_t
*
- * @param p is a pointer to the policy structure to be set
- *
+ * @param p is a pointer to the policy structure to be set
+ *
* The function call crypto_policy_set_rtcp_default(&policy, profile)
* sets the crypto_policy_t at location policy to the policy for RTCP
* protection, as defined by the srtp_profile_t profile.
- *
+ *
* This function is a convenience that helps to avoid dealing directly
* with the policy data structure. You are encouraged to initialize
* policy elements with this function call. Doing so may allow your
* code to be forward compatible with later versions of libSRTP that
* include more elements in the crypto_policy_t datatype.
- *
+ *
* @return values
* - err_status_ok no problems were encountered
- * - err_status_bad_param the profile is not supported
- *
+ * - err_status_bad_param the profile is not supported
+ *
*/
err_status_t
-crypto_policy_set_from_profile_for_rtcp(crypto_policy_t *policy,
- srtp_profile_t profile);
+crypto_policy_set_from_profile_for_rtcp(crypto_policy_t *policy,
+ srtp_profile_t profile);
/**
* @brief returns the master key length for a given SRTP profile
@@ -767,18 +768,18 @@ srtp_profile_get_master_salt_length(srtp_profile_t profile);
/**
* @brief appends the salt to the key
*
- * The function call append_salt_to_key(k, klen, s, slen)
+ * The function call append_salt_to_key(k, klen, s, slen)
* copies the string s to the location at klen bytes following
- * the location k.
+ * the location k.
*
* @warning There must be at least bytes_in_salt + bytes_in_key bytes
* available at the location pointed to by key.
- *
+ *
*/
void
append_salt_to_key(unsigned char *key, unsigned int bytes_in_key,
- unsigned char *salt, unsigned int bytes_in_salt);
+ unsigned char *salt, unsigned int bytes_in_salt);
@@ -790,7 +791,7 @@ append_salt_to_key(unsigned char *key, unsigned int bytes_in_key,
/**
* @defgroup SRTCP Secure RTCP
- * @ingroup SRTP
+ * @ingroup SRTP
*
* @brief Secure RTCP functions are used to protect RTCP traffic.
*
@@ -798,26 +799,26 @@ append_salt_to_key(unsigned char *key, unsigned int bytes_in_key,
* traffic in much the same way as it does RTP traffic. The function
* srtp_protect_rtcp() applies cryptographic protections to outbound
* RTCP packets, and srtp_unprotect_rtcp() verifies the protections on
- * inbound RTCP packets.
+ * inbound RTCP packets.
*
* A note on the naming convention: srtp_protect_rtcp() has an srtp_t
* as its first argument, and thus has `srtp_' as its prefix. The
- * trailing `_rtcp' indicates the protocol on which it acts.
- *
+ * trailing `_rtcp' indicates the protocol on which it acts.
+ *
* @{
*/
/**
* @brief srtp_protect_rtcp() is the Secure RTCP sender-side packet
* processing function.
- *
+ *
* The function call srtp_protect_rtcp(ctx, rtp_hdr, len_ptr) applies
* SRTCP protection to the RTCP packet rtcp_hdr (which has length
* *len_ptr) using the SRTP session context ctx. If err_status_ok is
* returned, then rtp_hdr points to the resulting SRTCP packet and
* *len_ptr is the number of octets in that packet; otherwise, no
* assumptions should be made about the value of either data elements.
- *
+ *
* @warning This function assumes that it can write the authentication
* tag into the location in memory immediately following the RTCP
* packet, and assumes that the RTCP packet is aligned on a 32-bit
@@ -834,14 +835,14 @@ append_salt_to_key(unsigned char *key, unsigned int bytes_in_key,
* was returned. Otherwise, the value of the data to which it points
* is undefined.
*
- * @return
+ * @return
* - err_status_ok if there were no problems.
- * - [other] if there was a failure in
+ * - [other] if there was a failure in
* the cryptographic mechanisms.
*/
-
-err_status_t
+
+err_status_t
srtp_protect_rtcp(srtp_t ctx, void *rtcp_hdr, int *pkt_octet_len);
/**
@@ -855,7 +856,7 @@ srtp_protect_rtcp(srtp_t ctx, void *rtcp_hdr, int *pkt_octet_len);
* to the resulting RTCP packet and *len_ptr is the number of octets
* in that packet; otherwise, no assumptions should be made about the
* value of either data elements.
- *
+ *
* @warning This function assumes that the SRTCP packet is aligned on a
* 32-bit boundary.
*
@@ -873,9 +874,9 @@ srtp_protect_rtcp(srtp_t ctx, void *rtcp_hdr, int *pkt_octet_len);
* returned. Otherwise, the value of the data to which it points is
* undefined.
*
- * @return
+ * @return
* - err_status_ok if the RTCP packet is valid.
- * - err_status_auth_fail if the SRTCP packet failed the message
+ * - err_status_auth_fail if the SRTCP packet failed the message
* authentication check.
* - err_status_replay_fail if the SRTCP packet is a replay (e.g. has
* already been processed and accepted).
@@ -883,7 +884,7 @@ srtp_protect_rtcp(srtp_t ctx, void *rtcp_hdr, int *pkt_octet_len);
*
*/
-err_status_t
+err_status_t
srtp_unprotect_rtcp(srtp_t ctx, void *srtcp_hdr, int *pkt_octet_len);
/**
@@ -894,10 +895,10 @@ srtp_unprotect_rtcp(srtp_t ctx, void *srtcp_hdr, int *pkt_octet_len);
* @defgroup SRTPevents SRTP events and callbacks
* @ingroup SRTP
*
- * @brief libSRTP can use a user-provided callback function to
+ * @brief libSRTP can use a user-provided callback function to
* handle events.
*
- *
+ *
* libSRTP allows a user to provide a callback function to handle
* events that need to be dealt with outside of the data plane (see
* the enum srtp_event_t for a description of these events). Dealing
@@ -918,8 +919,8 @@ srtp_unprotect_rtcp(srtp_t ctx, void *srtcp_hdr, int *pkt_octet_len);
* @brief srtp_event_t defines events that need to be handled
*
* The enum srtp_event_t defines events that need to be handled
- * outside the `data plane', such as SSRC collisions and
- * key expirations.
+ * outside the `data plane', such as SSRC collisions and
+ * key expirations.
*
* When a key expires or the maximum number of packets has been
* reached, an SRTP stream will enter an `expired' state in which no
@@ -932,33 +933,33 @@ srtp_unprotect_rtcp(srtp_t ctx, void *srtcp_hdr, int *pkt_octet_len);
* latter case, all of the streams in the session will expire.
*/
-typedef enum {
- event_ssrc_collision, /**<
- * An SSRC collision occured.
+typedef enum {
+ event_ssrc_collision, /**<
+ * An SSRC collision occured.
*/
- event_key_soft_limit, /**< An SRTP stream reached the soft key
- * usage limit and will expire soon.
+ event_key_soft_limit, /**< An SRTP stream reached the soft key
+ * usage limit and will expire soon.
*/
- event_key_hard_limit, /**< An SRTP stream reached the hard
+ event_key_hard_limit, /**< An SRTP stream reached the hard
* key usage limit and has expired.
*/
- event_packet_index_limit /**< An SRTP stream reached the hard
- * packet limit (2^48 packets).
+ event_packet_index_limit /**< An SRTP stream reached the hard
+ * packet limit (2^48 packets).
*/
} srtp_event_t;
/**
- * @brief srtp_event_data_t is the structure passed as a callback to
+ * @brief srtp_event_data_t is the structure passed as a callback to
* the event handler function
*
* The struct srtp_event_data_t holds the data passed to the event
- * handler function.
+ * handler function.
*/
typedef struct srtp_event_data_t {
- srtp_t session; /**< The session in which the event happend. */
- srtp_stream_t stream; /**< The stream in which the event happend. */
- srtp_event_t event; /**< An enum indicating the type of event. */
+ srtp_t session; /**< The session in which the event happend. */
+ srtp_stream_t stream; /**< The stream in which the event happend. */
+ srtp_event_t event; /**< An enum indicating the type of event. */
} srtp_event_data_t;
/**
@@ -976,7 +977,7 @@ typedef void (srtp_event_handler_func_t)(srtp_event_data_t *data);
/**
* @brief sets the event handler to the function supplied by the caller.
- *
+ *
* The function call srtp_install_event_handler(func) sets the event
* handler function to the value func. The value NULL is acceptable
* as an argument; in this case, events will be ignored rather than
diff --git a/thirdparties/iphone/include/srtp/srtp_priv.h b/thirdparties/iphone/include/srtp/srtp_priv.h
index cf2274e..997a115 100755
--- a/thirdparties/iphone/include/srtp/srtp_priv.h
+++ b/thirdparties/iphone/include/srtp/srtp_priv.h
@@ -7,26 +7,26 @@
* Cisco Systems, Inc.
*/
/*
- *
+ *
* Copyright (c) 2001-2006 Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -54,56 +54,56 @@
* an srtp_hdr_t represents the srtp header
*
* in this implementation, an srtp_hdr_t is assumed to be 32-bit aligned
- *
+ *
* (note that this definition follows that of RFC 1889 Appendix A, but
* is not identical)
*/
-
+
#ifndef WORDS_BIGENDIAN
/*
* srtp_hdr_t represents an RTP or SRTP header. The bit-fields in
- * this structure should be declared "unsigned int" instead of
+ * this structure should be declared "unsigned int" instead of
* "unsigned char", but doing so causes the MS compiler to not
* fully pack the bit fields.
*/
typedef struct {
- unsigned char cc:4; /* CSRC count */
- unsigned char x:1; /* header extension flag */
- unsigned char p:1; /* padding flag */
- unsigned char version:2; /* protocol version */
- unsigned char pt:7; /* payload type */
- unsigned char m:1; /* marker bit */
- uint16_t seq; /* sequence number */
- uint32_t ts; /* timestamp */
- uint32_t ssrc; /* synchronization source */
+ unsigned char cc:4; /* CSRC count */
+ unsigned char x:1; /* header extension flag */
+ unsigned char p:1; /* padding flag */
+ unsigned char version:2; /* protocol version */
+ unsigned char pt:7; /* payload type */
+ unsigned char m:1; /* marker bit */
+ uint16_t seq; /* sequence number */
+ uint32_t ts; /* timestamp */
+ uint32_t ssrc; /* synchronization source */
} srtp_hdr_t;
#else /* BIG_ENDIAN */
typedef struct {
- unsigned char version:2; /* protocol version */
- unsigned char p:1; /* padding flag */
- unsigned char x:1; /* header extension flag */
- unsigned char cc:4; /* CSRC count */
- unsigned char m:1; /* marker bit */
- unsigned pt:7; /* payload type */
- uint16_t seq; /* sequence number */
- uint32_t ts; /* timestamp */
- uint32_t ssrc; /* synchronization source */
+ unsigned char version:2; /* protocol version */
+ unsigned char p:1; /* padding flag */
+ unsigned char x:1; /* header extension flag */
+ unsigned char cc:4; /* CSRC count */
+ unsigned char m:1; /* marker bit */
+ unsigned pt:7; /* payload type */
+ uint16_t seq; /* sequence number */
+ uint32_t ts; /* timestamp */
+ uint32_t ssrc; /* synchronization source */
} srtp_hdr_t;
#endif
typedef struct {
- uint16_t profile_specific; /* profile-specific info */
- uint16_t length; /* number of 32-bit words in extension */
+ uint16_t profile_specific; /* profile-specific info */
+ uint16_t length; /* number of 32-bit words in extension */
} srtp_hdr_xtnd_t;
/*
- * srtcp_hdr_t represents a secure rtcp header
+ * srtcp_hdr_t represents a secure rtcp header
*
* in this implementation, an srtcp header is assumed to be 32-bit
* alinged
@@ -112,53 +112,53 @@ typedef struct {
#ifndef WORDS_BIGENDIAN
typedef struct {
- unsigned char rc:5; /* reception report count */
- unsigned char p:1; /* padding flag */
- unsigned char version:2; /* protocol version */
- unsigned char pt:8; /* payload type */
- uint16_t len; /* length */
- uint32_t ssrc; /* synchronization source */
+ unsigned char rc:5; /* reception report count */
+ unsigned char p:1; /* padding flag */
+ unsigned char version:2; /* protocol version */
+ unsigned char pt:8; /* payload type */
+ uint16_t len; /* length */
+ uint32_t ssrc; /* synchronization source */
} srtcp_hdr_t;
typedef struct {
- unsigned int index:31; /* srtcp packet index in network order! */
- unsigned int e:1; /* encrypted? 1=yes */
- /* optional mikey/etc go here */
- /* and then the variable-length auth tag */
+ unsigned int index:31; /* srtcp packet index in network order! */
+ unsigned int e:1; /* encrypted? 1=yes */
+ /* optional mikey/etc go here */
+ /* and then the variable-length auth tag */
} srtcp_trailer_t;
#else /* BIG_ENDIAN */
typedef struct {
- unsigned char version:2; /* protocol version */
- unsigned char p:1; /* padding flag */
- unsigned char rc:5; /* reception report count */
- unsigned char pt:8; /* payload type */
- uint16_t len; /* length */
- uint32_t ssrc; /* synchronization source */
+ unsigned char version:2; /* protocol version */
+ unsigned char p:1; /* padding flag */
+ unsigned char rc:5; /* reception report count */
+ unsigned char pt:8; /* payload type */
+ uint16_t len; /* length */
+ uint32_t ssrc; /* synchronization source */
} srtcp_hdr_t;
typedef struct {
- unsigned int version:2; /* protocol version */
- unsigned int p:1; /* padding flag */
- unsigned int count:5; /* varies by packet type */
- unsigned int pt:8; /* payload type */
- uint16_t length; /* len of uint32s of packet less header */
+ unsigned int version:2; /* protocol version */
+ unsigned int p:1; /* padding flag */
+ unsigned int count:5; /* varies by packet type */
+ unsigned int pt:8; /* payload type */
+ uint16_t length; /* len of uint32s of packet less header */
} rtcp_common_t;
typedef struct {
- unsigned int e:1; /* encrypted? 1=yes */
- unsigned int index:31; /* srtcp packet index */
- /* optional mikey/etc go here */
- /* and then the variable-length auth tag */
+ unsigned int e:1; /* encrypted? 1=yes */
+ unsigned int index:31; /* srtcp packet index */
+ /* optional mikey/etc go here */
+ /* and then the variable-length auth tag */
} srtcp_trailer_t;
#endif
/*
- * the following declarations are libSRTP internal functions
+ * the following declarations are libSRTP internal functions
*/
/*
@@ -166,7 +166,7 @@ typedef struct {
* to ssrc, or NULL if no stream exists for that ssrc
*/
-srtp_stream_t
+srtp_stream_t
srtp_get_stream(srtp_t srtp, uint32_t ssrc);
@@ -180,47 +180,47 @@ err_status_t
srtp_stream_init_keys(srtp_stream_t srtp, const void *key);
/*
- * srtp_stream_init(s, p) initializes the srtp_stream_t s to
+ * srtp_stream_init(s, p) initializes the srtp_stream_t s to
* use the policy at the location p
*/
err_status_t
-srtp_stream_init(srtp_stream_t srtp,
- const srtp_policy_t *p);
+srtp_stream_init(srtp_stream_t srtp,
+ const srtp_policy_t *p);
/*
- * libsrtp internal datatypes
+ * libsrtp internal datatypes
*/
-typedef enum direction_t {
- dir_unknown = 0,
- dir_srtp_sender = 1,
- dir_srtp_receiver = 2
+typedef enum direction_t {
+ dir_unknown = 0,
+ dir_srtp_sender = 1,
+ dir_srtp_receiver = 2
} direction_t;
-/*
+/*
* an srtp_stream_t has its own SSRC, encryption key, authentication
* key, sequence number, and replay database
- *
+ *
* note that the keys might not actually be unique, in which case the
* cipher_t and auth_t pointers will point to the same structures
*/
typedef struct srtp_stream_ctx_t {
- uint32_t ssrc;
- cipher_t *rtp_cipher;
- auth_t *rtp_auth;
- rdbx_t rtp_rdbx;
- sec_serv_t rtp_services;
- cipher_t *rtcp_cipher;
- auth_t *rtcp_auth;
- rdb_t rtcp_rdb;
- sec_serv_t rtcp_services;
- key_limit_ctx_t *limit;
- direction_t direction;
- int allow_repeat_tx;
- ekt_stream_t ekt;
- struct srtp_stream_ctx_t *next; /* linked list of streams */
+ uint32_t ssrc;
+ cipher_t *rtp_cipher;
+ auth_t *rtp_auth;
+ rdbx_t rtp_rdbx;
+ sec_serv_t rtp_services;
+ cipher_t *rtcp_cipher;
+ auth_t *rtcp_auth;
+ rdb_t rtcp_rdb;
+ sec_serv_t rtcp_services;
+ key_limit_ctx_t *limit;
+ direction_t direction;
+ int allow_repeat_tx;
+ ekt_stream_t ekt;
+ struct srtp_stream_ctx_t *next; /* linked list of streams */
} srtp_stream_ctx_t;
@@ -229,8 +229,8 @@ typedef struct srtp_stream_ctx_t {
*/
typedef struct srtp_ctx_t {
- srtp_stream_ctx_t *stream_list; /* linked list of streams */
- srtp_stream_ctx_t *stream_template; /* act as template for other streams */
+ srtp_stream_ctx_t *stream_list; /* linked list of streams */
+ srtp_stream_ctx_t *stream_template; /* act as template for other streams */
} srtp_ctx_t;
@@ -239,7 +239,7 @@ typedef struct srtp_ctx_t {
* srtp_handle_event(srtp, srtm, evnt) calls the event handling
* function, if there is one.
*
- * This macro is not included in the documentation as it is
+ * This macro is not included in the documentation as it is
* an internal-only function.
*/
@@ -250,7 +250,7 @@ typedef struct srtp_ctx_t {
data.stream = strm; \
data.event = evnt; \
srtp_event_handler(&data); \
-}
+}
#endif /* SRTP_PRIV_H */
diff --git a/thirdparties/iphone/include/srtp/stat.h b/thirdparties/iphone/include/srtp/stat.h
index e28b131..a67a380 100755
--- a/thirdparties/iphone/include/srtp/stat.h
+++ b/thirdparties/iphone/include/srtp/stat.h
@@ -1,6 +1,6 @@
/*
* stats.h
- *
+ *
* interface to statistical test functions
*
* David A. McGrew
@@ -8,26 +8,26 @@
*/
/*
- *
+ *
* Copyright(c) 2001-2006, Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
diff --git a/thirdparties/iphone/include/srtp/ut_sim.h b/thirdparties/iphone/include/srtp/ut_sim.h
index c25feeb..bd7d015 100755
--- a/thirdparties/iphone/include/srtp/ut_sim.h
+++ b/thirdparties/iphone/include/srtp/ut_sim.h
@@ -9,26 +9,26 @@
*/
/*
- *
+ *
* Copyright (c) 2001-2006, Cisco Systems, Inc.
* All rights reserved.
- *
+ *
* 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 Cisco Systems, Inc. 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
@@ -54,12 +54,12 @@
#define UT_BUF 160 /* maximum amount of packet reorder */
typedef struct {
- uint32_t index;
- uint32_t buffer[UT_BUF];
+ uint32_t index;
+ uint32_t buffer[UT_BUF];
} ut_connection;
/*
- * ut_init(&u) initializes the ut_connection
+ * ut_init(&u) initializes the ut_connection
*
* this function should always be the first one called on a new
* ut_connection
diff --git a/thirdparties/iphone/include/srtp/xfm.h b/thirdparties/iphone/include/srtp/xfm.h
index 5837149..a5e393f 100755
--- a/thirdparties/iphone/include/srtp/xfm.h
+++ b/thirdparties/iphone/include/srtp/xfm.h
@@ -2,7 +2,7 @@
* xfm.h
*
* interface for abstract crypto transform
- *
+ *
* David A. McGrew
* Cisco Systems, Inc.
*/
@@ -28,12 +28,12 @@
* The function pointer xfm_func_t points to a function that
* implements a crypto transform, and provides a uniform API for
* accessing crypto mechanisms.
- *
- * @param key location of secret key
*
- * @param clear data to be authenticated only
+ * @param key location of secret key
+ *
+ * @param clear data to be authenticated only
*
- * @param clear_len length of data to be authenticated only
+ * @param clear_len length of data to be authenticated only
*
* @param iv location to write the Initialization Vector (IV)
*
@@ -45,38 +45,38 @@
* encrypted and authenticated (before the function call), and the
* length of the ciphertext (after the call)
*
- * @param auth_tag location to write auth tag
+ * @param auth_tag location to write auth tag
*/
-typedef err_status_t (*xfm_func_t)
- (void *key,
- void *clear,
- unsigned clear_len,
- void *iv,
- void *protect,
- unsigned *protected_len,
- void *auth_tag
- );
-
-typedef
+typedef err_status_t (*xfm_func_t)
+(void *key,
+ void *clear,
+ unsigned clear_len,
+ void *iv,
+ void *protect,
+ unsigned *protected_len,
+ void *auth_tag
+);
+
+typedef
err_status_t (*xfm_inv_t)
- (void *key, /* location of secret key */
- void *clear, /* data to be authenticated only */
- unsigned clear_len, /* length of data to be authenticated only */
- void *iv, /* location of iv */
- void *opaque, /* data to be decrypted and authenticated */
- unsigned *opaque_len, /* location of the length of data to be
- * decrypted and authd (before and after)
+(void *key, /* location of secret key */
+ void *clear, /* data to be authenticated only */
+ unsigned clear_len, /* length of data to be authenticated only */
+ void *iv, /* location of iv */
+ void *opaque, /* data to be decrypted and authenticated */
+ unsigned *opaque_len, /* location of the length of data to be
+ * decrypted and authd (before and after)
*/
- void *auth_tag /* location of auth tag */
- );
+ void *auth_tag /* location of auth tag */
+);
typedef struct xfm_ctx_t {
- xfm_func_t func;
- xfm_inv_t inv;
- unsigned key_len;
- unsigned iv_len;
- unsigned auth_tag_len;
+ xfm_func_t func;
+ xfm_inv_t inv;
+ unsigned key_len;
+ unsigned iv_len;
+ unsigned auth_tag_len;
} xfm_ctx_t;
typedef xfm_ctx_t *xfm_t;
@@ -89,35 +89,35 @@ typedef xfm_ctx_t *xfm_t;
/* cryptoalgo - 5/28 */
-
-typedef err_status_t (*cryptoalg_func_t)
- (void *key,
- void *clear,
- unsigned clear_len,
- void *iv,
- void *opaque,
- unsigned *opaque_len
- );
-
-typedef
+
+typedef err_status_t (*cryptoalg_func_t)
+(void *key,
+ void *clear,
+ unsigned clear_len,
+ void *iv,
+ void *opaque,
+ unsigned *opaque_len
+);
+
+typedef
err_status_t (*cryptoalg_inv_t)
- (void *key, /* location of secret key */
- void *clear, /* data to be authenticated only */
- unsigned clear_len, /* length of data to be authenticated only */
- void *iv, /* location of iv */
- void *opaque, /* data to be decrypted and authenticated */
- unsigned *opaque_len /* location of the length of data to be
- * decrypted and authd (before and after)
+(void *key, /* location of secret key */
+ void *clear, /* data to be authenticated only */
+ unsigned clear_len, /* length of data to be authenticated only */
+ void *iv, /* location of iv */
+ void *opaque, /* data to be decrypted and authenticated */
+ unsigned *opaque_len /* location of the length of data to be
+ * decrypted and authd (before and after)
*/
- );
+);
typedef struct cryptoalg_ctx_t {
- cryptoalg_func_t enc;
- cryptoalg_inv_t dec;
- unsigned key_len;
- unsigned iv_len;
- unsigned auth_tag_len;
- unsigned max_expansion;
+ cryptoalg_func_t enc;
+ cryptoalg_inv_t dec;
+ unsigned key_len;
+ unsigned iv_len;
+ unsigned auth_tag_len;
+ unsigned max_expansion;
} cryptoalg_ctx_t;
typedef cryptoalg_ctx_t *cryptoalg_t;
diff --git a/thirdparties/iphone/include/vpx/svc_context.h b/thirdparties/iphone/include/vpx/svc_context.h
index 5d0fbbd..40701cc 100755
--- a/thirdparties/iphone/include/vpx/svc_context.h
+++ b/thirdparties/iphone/include/vpx/svc_context.h
@@ -24,28 +24,29 @@ extern "C" {
#endif
typedef enum SVC_ENCODING_MODE {
- INTER_LAYER_PREDICTION_I,
- ALT_INTER_LAYER_PREDICTION_IP,
- INTER_LAYER_PREDICTION_IP,
- USE_GOLDEN_FRAME
-} SVC_ENCODING_MODE;
+ INTER_LAYER_PREDICTION_I,
+ ALT_INTER_LAYER_PREDICTION_IP,
+ INTER_LAYER_PREDICTION_IP,
+ USE_GOLDEN_FRAME
+}
+SVC_ENCODING_MODE;
typedef enum SVC_LOG_LEVEL {
- SVC_LOG_ERROR,
- SVC_LOG_INFO,
- SVC_LOG_DEBUG
+ SVC_LOG_ERROR,
+ SVC_LOG_INFO,
+ SVC_LOG_DEBUG
} SVC_LOG_LEVEL;
typedef struct {
- // public interface to svc_command options
- int spatial_layers; // number of layers
- SVC_ENCODING_MODE encoding_mode; // svc encoding strategy
- SVC_LOG_LEVEL log_level; // amount of information to display
- int log_print; // when set, printf log messages instead of returning the
- // message with svc_get_message
-
- // private storage for vpx_svc_encode
- void *internal;
+ // public interface to svc_command options
+ int spatial_layers; // number of layers
+ SVC_ENCODING_MODE encoding_mode; // svc encoding strategy
+ SVC_LOG_LEVEL log_level; // amount of information to display
+ int log_print; // when set, printf log messages instead of returning the
+ // message with svc_get_message
+
+ // private storage for vpx_svc_encode
+ void *internal;
} SvcContext;
/**
@@ -73,7 +74,7 @@ vpx_codec_err_t vpx_svc_set_quantizers(SvcContext *svc_ctx,
* e.g., "4/16,5/16,7/16,11/16,16/16"
*/
vpx_codec_err_t vpx_svc_set_scale_factors(SvcContext *svc_ctx,
- const char *scale_factors);
+ const char *scale_factors);
/**
* initialize SVC encoding
@@ -128,9 +129,9 @@ char *vpx_svc_get_rc_stats_buffer(const SvcContext *svc_ctx);
* return spatial resolution of the specified layer
*/
vpx_codec_err_t vpx_svc_get_layer_resolution(const SvcContext *svc_ctx,
- int layer,
- unsigned int *width,
- unsigned int *height);
+ int layer,
+ unsigned int *width,
+ unsigned int *height);
/**
* return number of frames that have been encoded
*/
diff --git a/thirdparties/iphone/include/vpx/vp8.h b/thirdparties/iphone/include/vpx/vp8.h
index 2a31af6..f748314 100755
--- a/thirdparties/iphone/include/vpx/vp8.h
+++ b/thirdparties/iphone/include/vpx/vp8.h
@@ -42,21 +42,21 @@ extern "C" {
* The set of macros define the control functions of VP8 interface
*/
enum vp8_com_control_id {
- VP8_SET_REFERENCE = 1, /**< pass in an external frame into decoder to be used as reference frame */
- VP8_COPY_REFERENCE = 2, /**< get a copy of reference frame from the decoder */
- VP8_SET_POSTPROC = 3, /**< set the decoder's post processing settings */
- VP8_SET_DBG_COLOR_REF_FRAME = 4, /**< set the reference frames to color for each macroblock */
- VP8_SET_DBG_COLOR_MB_MODES = 5, /**< set which macro block modes to color */
- VP8_SET_DBG_COLOR_B_MODES = 6, /**< set which blocks modes to color */
- VP8_SET_DBG_DISPLAY_MV = 7, /**< set which motion vector modes to draw */
+ VP8_SET_REFERENCE = 1, /**< pass in an external frame into decoder to be used as reference frame */
+ VP8_COPY_REFERENCE = 2, /**< get a copy of reference frame from the decoder */
+ VP8_SET_POSTPROC = 3, /**< set the decoder's post processing settings */
+ VP8_SET_DBG_COLOR_REF_FRAME = 4, /**< set the reference frames to color for each macroblock */
+ VP8_SET_DBG_COLOR_MB_MODES = 5, /**< set which macro block modes to color */
+ VP8_SET_DBG_COLOR_B_MODES = 6, /**< set which blocks modes to color */
+ VP8_SET_DBG_DISPLAY_MV = 7, /**< set which motion vector modes to draw */
- /* TODO(jkoleszar): The encoder incorrectly reuses some of these values (5+)
- * for its control ids. These should be migrated to something like the
- * VP8_DECODER_CTRL_ID_START range next time we're ready to break the ABI.
- */
- VP9_GET_REFERENCE = 128, /**< get a pointer to a reference frame */
- VP8_COMMON_CTRL_ID_MAX,
- VP8_DECODER_CTRL_ID_START = 256
+ /* TODO(jkoleszar): The encoder incorrectly reuses some of these values (5+)
+ * for its control ids. These should be migrated to something like the
+ * VP8_DECODER_CTRL_ID_START range next time we're ready to break the ABI.
+ */
+ VP9_GET_REFERENCE = 128, /**< get a pointer to a reference frame */
+ VP8_COMMON_CTRL_ID_MAX,
+ VP8_DECODER_CTRL_ID_START = 256
};
/*!\brief post process flags
@@ -64,15 +64,15 @@ enum vp8_com_control_id {
* The set of macros define VP8 decoder post processing flags
*/
enum vp8_postproc_level {
- VP8_NOFILTERING = 0,
- VP8_DEBLOCK = 1 << 0,
- VP8_DEMACROBLOCK = 1 << 1,
- VP8_ADDNOISE = 1 << 2,
- VP8_DEBUG_TXT_FRAME_INFO = 1 << 3, /**< print frame information */
- VP8_DEBUG_TXT_MBLK_MODES = 1 << 4, /**< print macro block modes over each macro block */
- VP8_DEBUG_TXT_DC_DIFF = 1 << 5, /**< print dc diff for each macro block */
- VP8_DEBUG_TXT_RATE_INFO = 1 << 6, /**< print video rate info (encoder only) */
- VP8_MFQE = 1 << 10
+ VP8_NOFILTERING = 0,
+ VP8_DEBLOCK = 1 << 0,
+ VP8_DEMACROBLOCK = 1 << 1,
+ VP8_ADDNOISE = 1 << 2,
+ VP8_DEBUG_TXT_FRAME_INFO = 1 << 3, /**< print frame information */
+ VP8_DEBUG_TXT_MBLK_MODES = 1 << 4, /**< print macro block modes over each macro block */
+ VP8_DEBUG_TXT_DC_DIFF = 1 << 5, /**< print dc diff for each macro block */
+ VP8_DEBUG_TXT_RATE_INFO = 1 << 6, /**< print video rate info (encoder only) */
+ VP8_MFQE = 1 << 10
};
/*!\brief post process flags
@@ -83,9 +83,9 @@ enum vp8_postproc_level {
*/
typedef struct vp8_postproc_cfg {
- int post_proc_flag; /**< the types of post processing to be done, should be combination of "vp8_postproc_level" */
- int deblocking_level; /**< the strength of deblocking, valid range [0, 16] */
- int noise_level; /**< the strength of additive noise, valid range [0, 16] */
+ int post_proc_flag; /**< the types of post processing to be done, should be combination of "vp8_postproc_level" */
+ int deblocking_level; /**< the strength of deblocking, valid range [0, 16] */
+ int noise_level; /**< the strength of additive noise, valid range [0, 16] */
} vp8_postproc_cfg_t;
/*!\brief reference frame type
@@ -93,9 +93,9 @@ typedef struct vp8_postproc_cfg {
* The set of macros define the type of VP8 reference frames
*/
typedef enum vpx_ref_frame_type {
- VP8_LAST_FRAME = 1,
- VP8_GOLD_FRAME = 2,
- VP8_ALTR_FRAME = 4
+ VP8_LAST_FRAME = 1,
+ VP8_GOLD_FRAME = 2,
+ VP8_ALTR_FRAME = 4
} vpx_ref_frame_type_t;
/*!\brief reference frame data struct
@@ -103,8 +103,8 @@ typedef enum vpx_ref_frame_type {
* Define the data struct to access vp8 reference frames.
*/
typedef struct vpx_ref_frame {
- vpx_ref_frame_type_t frame_type; /**< which reference frame */
- vpx_image_t img; /**< reference frame data in image format */
+ vpx_ref_frame_type_t frame_type; /**< which reference frame */
+ vpx_image_t img; /**< reference frame data in image format */
} vpx_ref_frame_t;
/*!\brief VP9 specific reference frame data struct
@@ -112,8 +112,8 @@ typedef struct vpx_ref_frame {
* Define the data struct to access vp9 reference frames.
*/
typedef struct vp9_ref_frame {
- int idx; /**< frame index to get (input) */
- vpx_image_t img; /**< img structure to populate (output) */
+ int idx; /**< frame index to get (input) */
+ vpx_image_t img; /**< img structure to populate (output) */
} vp9_ref_frame_t;
/*!\brief vp8 decoder control function parameter type
diff --git a/thirdparties/iphone/include/vpx/vp8cx.h b/thirdparties/iphone/include/vpx/vp8cx.h
index 75caad8..5ff0350 100755
--- a/thirdparties/iphone/include/vpx/vp8cx.h
+++ b/thirdparties/iphone/include/vpx/vp8cx.h
@@ -129,256 +129,256 @@ extern vpx_codec_iface_t *vpx_codec_vp9_cx(void);
* \sa #vpx_codec_control
*/
enum vp8e_enc_control_id {
- VP8E_UPD_ENTROPY = 5, /**< control function to set mode of entropy update in encoder */
- VP8E_UPD_REFERENCE, /**< control function to set reference update mode in encoder */
- VP8E_USE_REFERENCE, /**< control function to set which reference frame encoder can use */
- VP8E_SET_ROI_MAP, /**< control function to pass an ROI map to encoder */
- VP8E_SET_ACTIVEMAP, /**< control function to pass an Active map to encoder */
- VP8E_SET_SCALEMODE = 11, /**< control function to set encoder scaling mode */
- /*!\brief control function to set vp8 encoder cpuused
- *
- * Changes in this value influences, among others, the encoder's selection
- * of motion estimation methods. Values greater than 0 will increase encoder
- * speed at the expense of quality.
- * The full set of adjustments can be found in
- * onyx_if.c:vp8_set_speed_features().
- * \todo List highlights of the changes at various levels.
- *
- * \note Valid range: -16..16
- */
- VP8E_SET_CPUUSED = 13,
- VP8E_SET_ENABLEAUTOALTREF, /**< control function to enable vp8 to automatic set and use altref frame */
- /*!\brief control function to set noise sensitivity
- *
- * 0: off, 1: OnYOnly, 2: OnYUV,
- * 3: OnYUVAggressive, 4: Adaptive
- */
- VP8E_SET_NOISE_SENSITIVITY,
- VP8E_SET_SHARPNESS, /**< control function to set sharpness */
- VP8E_SET_STATIC_THRESHOLD, /**< control function to set the threshold for macroblocks treated static */
- VP8E_SET_TOKEN_PARTITIONS, /**< control function to set the number of token partitions */
- VP8E_GET_LAST_QUANTIZER, /**< return the quantizer chosen by the
+ VP8E_UPD_ENTROPY = 5, /**< control function to set mode of entropy update in encoder */
+ VP8E_UPD_REFERENCE, /**< control function to set reference update mode in encoder */
+ VP8E_USE_REFERENCE, /**< control function to set which reference frame encoder can use */
+ VP8E_SET_ROI_MAP, /**< control function to pass an ROI map to encoder */
+ VP8E_SET_ACTIVEMAP, /**< control function to pass an Active map to encoder */
+ VP8E_SET_SCALEMODE = 11, /**< control function to set encoder scaling mode */
+ /*!\brief control function to set vp8 encoder cpuused
+ *
+ * Changes in this value influences, among others, the encoder's selection
+ * of motion estimation methods. Values greater than 0 will increase encoder
+ * speed at the expense of quality.
+ * The full set of adjustments can be found in
+ * onyx_if.c:vp8_set_speed_features().
+ * \todo List highlights of the changes at various levels.
+ *
+ * \note Valid range: -16..16
+ */
+ VP8E_SET_CPUUSED = 13,
+ VP8E_SET_ENABLEAUTOALTREF, /**< control function to enable vp8 to automatic set and use altref frame */
+ /*!\brief control function to set noise sensitivity
+ *
+ * 0: off, 1: OnYOnly, 2: OnYUV,
+ * 3: OnYUVAggressive, 4: Adaptive
+ */
+ VP8E_SET_NOISE_SENSITIVITY,
+ VP8E_SET_SHARPNESS, /**< control function to set sharpness */
+ VP8E_SET_STATIC_THRESHOLD, /**< control function to set the threshold for macroblocks treated static */
+ VP8E_SET_TOKEN_PARTITIONS, /**< control function to set the number of token partitions */
+ VP8E_GET_LAST_QUANTIZER, /**< return the quantizer chosen by the
encoder for the last frame using the internal
scale */
- VP8E_GET_LAST_QUANTIZER_64, /**< return the quantizer chosen by the
+ VP8E_GET_LAST_QUANTIZER_64, /**< return the quantizer chosen by the
encoder for the last frame, using the 0..63
scale as used by the rc_*_quantizer config
parameters */
- VP8E_SET_ARNR_MAXFRAMES, /**< control function to set the max number of frames blurred creating arf*/
- VP8E_SET_ARNR_STRENGTH, //!< control function to set the filter
- //!< strength for the arf
-
- /*!\deprecated control function to set the filter type to use for the arf */
- VP8E_SET_ARNR_TYPE,
-
- VP8E_SET_TUNING, /**< control function to set visual tuning */
- /*!\brief control function to set constrained quality level
- *
- * \attention For this value to be used vpx_codec_enc_cfg_t::g_usage must be
- * set to #VPX_CQ.
- * \note Valid range: 0..63
- */
- VP8E_SET_CQ_LEVEL,
-
- /*!\brief Max data rate for Intra frames
- *
- * This value controls additional clamping on the maximum size of a
- * keyframe. It is expressed as a percentage of the average
- * per-frame bitrate, with the special (and default) value 0 meaning
- * unlimited, or no additional clamping beyond the codec's built-in
- * algorithm.
- *
- * For example, to allocate no more than 4.5 frames worth of bitrate
- * to a keyframe, set this to 450.
- *
- */
- VP8E_SET_MAX_INTRA_BITRATE_PCT,
- VP8E_SET_FRAME_FLAGS, /**< control function to set reference and update frame flags */
-
- /*!\brief Max data rate for Inter frames
- *
- * This value controls additional clamping on the maximum size of an
- * inter frame. It is expressed as a percentage of the average
- * per-frame bitrate, with the special (and default) value 0 meaning
- * unlimited, or no additional clamping beyond the codec's built-in
- * algorithm.
- *
- * For example, to allow no more than 4.5 frames worth of bitrate
- * to an inter frame, set this to 450.
- *
- */
- VP8E_SET_MAX_INTER_BITRATE_PCT,
-
- /*!\brief Boost percentage for Golden Frame in CBR mode
- *
- * This value controls the amount of boost given to Golden Frame in
- * CBR mode. It is expressed as a percentage of the average
- * per-frame bitrate, with the special (and default) value 0 meaning
- * the feature is off, i.e., no golden frame boost in CBR mode and
- * average bitrate target is used.
- *
- * For example, to allow 100% more bits, i.e, 2X, in a golden frame
- * than average frame, set this to 100.
- *
- */
- VP8E_SET_GF_CBR_BOOST_PCT,
-
- /*!\brief Codec control function to set the temporal layer id
- *
- * For temporal scalability: this control allows the application to set the
- * layer id for each frame to be encoded. Note that this control must be set
- * for every frame prior to encoding. The usage of this control function
- * supersedes the internal temporal pattern counter, which is now deprecated.
- */
- VP8E_SET_TEMPORAL_LAYER_ID,
-
- VP8E_SET_SCREEN_CONTENT_MODE, /**<control function to set encoder screen content mode */
-
- /*!\brief Codec control function to set lossless encoding mode
- *
- * VP9 can operate in lossless encoding mode, in which the bitstream
- * produced will be able to decode and reconstruct a perfect copy of
- * input source. This control function provides a mean to switch encoder
- * into lossless coding mode(1) or normal coding mode(0) that may be lossy.
- * 0 = lossy coding mode
- * 1 = lossless coding mode
- *
- * By default, encoder operates in normal coding mode (maybe lossy).
- */
- VP9E_SET_LOSSLESS,
-
- /*!\brief Codec control function to set number of tile columns
- *
- * In encoding and decoding, VP9 allows an input image frame be partitioned
- * into separated vertical tile columns, which can be encoded or decoded
- * independently. This enables easy implementation of parallel encoding and
- * decoding. This control requests the encoder to use column tiles in
- * encoding an input frame, with number of tile columns (in Log2 unit) as
- * the parameter:
- * 0 = 1 tile column
- * 1 = 2 tile columns
- * 2 = 4 tile columns
- * .....
- * n = 2**n tile columns
- * The requested tile columns will be capped by encoder based on image size
- * limitation (The minimum width of a tile column is 256 pixel, the maximum
- * is 4096).
- *
- * By default, the value is 0, i.e. one single column tile for entire image.
- */
- VP9E_SET_TILE_COLUMNS,
-
- /*!\brief Codec control function to set number of tile rows
- *
- * In encoding and decoding, VP9 allows an input image frame be partitioned
- * into separated horizontal tile rows. Tile rows are encoded or decoded
- * sequentially. Even though encoding/decoding of later tile rows depends on
- * earlier ones, this allows the encoder to output data packets for tile rows
- * prior to completely processing all tile rows in a frame, thereby reducing
- * the latency in processing between input and output. The parameter
- * for this control describes the number of tile rows, which has a valid
- * range [0, 2]:
- * 0 = 1 tile row
- * 1 = 2 tile rows
- * 2 = 4 tile rows
- *
- * By default, the value is 0, i.e. one single row tile for entire image.
- */
- VP9E_SET_TILE_ROWS,
-
- /*!\brief Codec control function to enable frame parallel decoding feature
- *
- * VP9 has a bitstream feature to reduce decoding dependency between frames
- * by turning off backward update of probability context used in encoding
- * and decoding. This allows staged parallel processing of more than one
- * video frames in the decoder. This control function provides a mean to
- * turn this feature on or off for bitstreams produced by encoder.
- *
- * By default, this feature is off.
- */
- VP9E_SET_FRAME_PARALLEL_DECODING,
-
- /*!\brief Codec control function to set adaptive quantization mode
- *
- * VP9 has a segment based feature that allows encoder to adaptively change
- * quantization parameter for each segment within a frame to improve the
- * subjective quality. This control makes encoder operate in one of the
- * several AQ_modes supported.
- *
- * By default, encoder operates with AQ_Mode 0(adaptive quantization off).
- */
- VP9E_SET_AQ_MODE,
-
- /*!\brief Codec control function to enable/disable periodic Q boost
- *
- * One VP9 encoder speed feature is to enable quality boost by lowering
- * frame level Q periodically. This control function provides a mean to
- * turn on/off this feature.
- * 0 = off
- * 1 = on
- *
- * By default, the encoder is allowed to use this feature for appropriate
- * encoding modes.
- */
- VP9E_SET_FRAME_PERIODIC_BOOST,
-
- /*!\brief control function to set noise sensitivity
- *
- * 0: off, 1: OnYOnly
- */
- VP9E_SET_NOISE_SENSITIVITY,
-
- /*!\brief control function to turn on/off SVC in encoder.
- * \note Return value is VPX_CODEC_INVALID_PARAM if the encoder does not
- * support SVC in its current encoding mode
- * 0: off, 1: on
- */
- VP9E_SET_SVC,
-
- /*!\brief control function to set parameters for SVC.
- * \note Parameters contain min_q, max_q, scaling factor for each of the
- * SVC layers.
- */
- VP9E_SET_SVC_PARAMETERS,
-
- /*!\brief control function to set svc layer for spatial and temporal.
- * \note Valid ranges: 0..#vpx_codec_enc_cfg::ss_number_layers for spatial
- * layer and 0..#vpx_codec_enc_cfg::ts_number_layers for
- * temporal layer.
- */
- VP9E_SET_SVC_LAYER_ID,
-
- /*!\brief control function to set content type.
- * \note Valid parameter range:
- * VP9E_CONTENT_DEFAULT = Regular video content (Default)
- * VP9E_CONTENT_SCREEN = Screen capture content
- */
- VP9E_SET_TUNE_CONTENT,
-
- /*!\brief control function to get svc layer ID.
- * \note The layer ID returned is for the data packet from the registered
- * callback function.
- */
- VP9E_GET_SVC_LAYER_ID,
-
- /*!\brief control function to register callback for getting per layer packet.
- * \note Parameter for this control function is a structure with a callback
- * function and a pointer to private data used by the callback.
- */
- VP9E_REGISTER_CX_CALLBACK,
-
- /*!\brief control function to set color space info.
- * \note Valid ranges: 0..7, default is "UNKNOWN".
- * 0 = UNKNOWN,
- * 1 = BT_601
- * 2 = BT_709
- * 3 = SMPTE_170
- * 4 = SMPTE_240
- * 5 = BT_2020
- * 6 = RESERVED
- * 7 = SRGB
- */
- VP9E_SET_COLOR_SPACE,
+ VP8E_SET_ARNR_MAXFRAMES, /**< control function to set the max number of frames blurred creating arf*/
+ VP8E_SET_ARNR_STRENGTH, //!< control function to set the filter
+ //!< strength for the arf
+
+ /*!\deprecated control function to set the filter type to use for the arf */
+ VP8E_SET_ARNR_TYPE,
+
+ VP8E_SET_TUNING, /**< control function to set visual tuning */
+ /*!\brief control function to set constrained quality level
+ *
+ * \attention For this value to be used vpx_codec_enc_cfg_t::g_usage must be
+ * set to #VPX_CQ.
+ * \note Valid range: 0..63
+ */
+ VP8E_SET_CQ_LEVEL,
+
+ /*!\brief Max data rate for Intra frames
+ *
+ * This value controls additional clamping on the maximum size of a
+ * keyframe. It is expressed as a percentage of the average
+ * per-frame bitrate, with the special (and default) value 0 meaning
+ * unlimited, or no additional clamping beyond the codec's built-in
+ * algorithm.
+ *
+ * For example, to allocate no more than 4.5 frames worth of bitrate
+ * to a keyframe, set this to 450.
+ *
+ */
+ VP8E_SET_MAX_INTRA_BITRATE_PCT,
+ VP8E_SET_FRAME_FLAGS, /**< control function to set reference and update frame flags */
+
+ /*!\brief Max data rate for Inter frames
+ *
+ * This value controls additional clamping on the maximum size of an
+ * inter frame. It is expressed as a percentage of the average
+ * per-frame bitrate, with the special (and default) value 0 meaning
+ * unlimited, or no additional clamping beyond the codec's built-in
+ * algorithm.
+ *
+ * For example, to allow no more than 4.5 frames worth of bitrate
+ * to an inter frame, set this to 450.
+ *
+ */
+ VP8E_SET_MAX_INTER_BITRATE_PCT,
+
+ /*!\brief Boost percentage for Golden Frame in CBR mode
+ *
+ * This value controls the amount of boost given to Golden Frame in
+ * CBR mode. It is expressed as a percentage of the average
+ * per-frame bitrate, with the special (and default) value 0 meaning
+ * the feature is off, i.e., no golden frame boost in CBR mode and
+ * average bitrate target is used.
+ *
+ * For example, to allow 100% more bits, i.e, 2X, in a golden frame
+ * than average frame, set this to 100.
+ *
+ */
+ VP8E_SET_GF_CBR_BOOST_PCT,
+
+ /*!\brief Codec control function to set the temporal layer id
+ *
+ * For temporal scalability: this control allows the application to set the
+ * layer id for each frame to be encoded. Note that this control must be set
+ * for every frame prior to encoding. The usage of this control function
+ * supersedes the internal temporal pattern counter, which is now deprecated.
+ */
+ VP8E_SET_TEMPORAL_LAYER_ID,
+
+ VP8E_SET_SCREEN_CONTENT_MODE, /**<control function to set encoder screen content mode */
+
+ /*!\brief Codec control function to set lossless encoding mode
+ *
+ * VP9 can operate in lossless encoding mode, in which the bitstream
+ * produced will be able to decode and reconstruct a perfect copy of
+ * input source. This control function provides a mean to switch encoder
+ * into lossless coding mode(1) or normal coding mode(0) that may be lossy.
+ * 0 = lossy coding mode
+ * 1 = lossless coding mode
+ *
+ * By default, encoder operates in normal coding mode (maybe lossy).
+ */
+ VP9E_SET_LOSSLESS,
+
+ /*!\brief Codec control function to set number of tile columns
+ *
+ * In encoding and decoding, VP9 allows an input image frame be partitioned
+ * into separated vertical tile columns, which can be encoded or decoded
+ * independently. This enables easy implementation of parallel encoding and
+ * decoding. This control requests the encoder to use column tiles in
+ * encoding an input frame, with number of tile columns (in Log2 unit) as
+ * the parameter:
+ * 0 = 1 tile column
+ * 1 = 2 tile columns
+ * 2 = 4 tile columns
+ * .....
+ * n = 2**n tile columns
+ * The requested tile columns will be capped by encoder based on image size
+ * limitation (The minimum width of a tile column is 256 pixel, the maximum
+ * is 4096).
+ *
+ * By default, the value is 0, i.e. one single column tile for entire image.
+ */
+ VP9E_SET_TILE_COLUMNS,
+
+ /*!\brief Codec control function to set number of tile rows
+ *
+ * In encoding and decoding, VP9 allows an input image frame be partitioned
+ * into separated horizontal tile rows. Tile rows are encoded or decoded
+ * sequentially. Even though encoding/decoding of later tile rows depends on
+ * earlier ones, this allows the encoder to output data packets for tile rows
+ * prior to completely processing all tile rows in a frame, thereby reducing
+ * the latency in processing between input and output. The parameter
+ * for this control describes the number of tile rows, which has a valid
+ * range [0, 2]:
+ * 0 = 1 tile row
+ * 1 = 2 tile rows
+ * 2 = 4 tile rows
+ *
+ * By default, the value is 0, i.e. one single row tile for entire image.
+ */
+ VP9E_SET_TILE_ROWS,
+
+ /*!\brief Codec control function to enable frame parallel decoding feature
+ *
+ * VP9 has a bitstream feature to reduce decoding dependency between frames
+ * by turning off backward update of probability context used in encoding
+ * and decoding. This allows staged parallel processing of more than one
+ * video frames in the decoder. This control function provides a mean to
+ * turn this feature on or off for bitstreams produced by encoder.
+ *
+ * By default, this feature is off.
+ */
+ VP9E_SET_FRAME_PARALLEL_DECODING,
+
+ /*!\brief Codec control function to set adaptive quantization mode
+ *
+ * VP9 has a segment based feature that allows encoder to adaptively change
+ * quantization parameter for each segment within a frame to improve the
+ * subjective quality. This control makes encoder operate in one of the
+ * several AQ_modes supported.
+ *
+ * By default, encoder operates with AQ_Mode 0(adaptive quantization off).
+ */
+ VP9E_SET_AQ_MODE,
+
+ /*!\brief Codec control function to enable/disable periodic Q boost
+ *
+ * One VP9 encoder speed feature is to enable quality boost by lowering
+ * frame level Q periodically. This control function provides a mean to
+ * turn on/off this feature.
+ * 0 = off
+ * 1 = on
+ *
+ * By default, the encoder is allowed to use this feature for appropriate
+ * encoding modes.
+ */
+ VP9E_SET_FRAME_PERIODIC_BOOST,
+
+ /*!\brief control function to set noise sensitivity
+ *
+ * 0: off, 1: OnYOnly
+ */
+ VP9E_SET_NOISE_SENSITIVITY,
+
+ /*!\brief control function to turn on/off SVC in encoder.
+ * \note Return value is VPX_CODEC_INVALID_PARAM if the encoder does not
+ * support SVC in its current encoding mode
+ * 0: off, 1: on
+ */
+ VP9E_SET_SVC,
+
+ /*!\brief control function to set parameters for SVC.
+ * \note Parameters contain min_q, max_q, scaling factor for each of the
+ * SVC layers.
+ */
+ VP9E_SET_SVC_PARAMETERS,
+
+ /*!\brief control function to set svc layer for spatial and temporal.
+ * \note Valid ranges: 0..#vpx_codec_enc_cfg::ss_number_layers for spatial
+ * layer and 0..#vpx_codec_enc_cfg::ts_number_layers for
+ * temporal layer.
+ */
+ VP9E_SET_SVC_LAYER_ID,
+
+ /*!\brief control function to set content type.
+ * \note Valid parameter range:
+ * VP9E_CONTENT_DEFAULT = Regular video content (Default)
+ * VP9E_CONTENT_SCREEN = Screen capture content
+ */
+ VP9E_SET_TUNE_CONTENT,
+
+ /*!\brief control function to get svc layer ID.
+ * \note The layer ID returned is for the data packet from the registered
+ * callback function.
+ */
+ VP9E_GET_SVC_LAYER_ID,
+
+ /*!\brief control function to register callback for getting per layer packet.
+ * \note Parameter for this control function is a structure with a callback
+ * function and a pointer to private data used by the callback.
+ */
+ VP9E_REGISTER_CX_CALLBACK,
+
+ /*!\brief control function to set color space info.
+ * \note Valid ranges: 0..7, default is "UNKNOWN".
+ * 0 = UNKNOWN,
+ * 1 = BT_601
+ * 2 = BT_709
+ * 3 = SMPTE_170
+ * 4 = SMPTE_240
+ * 5 = BT_2020
+ * 6 = RESERVED
+ * 7 = SRGB
+ */
+ VP9E_SET_COLOR_SPACE,
};
/*!\brief vpx 1-D scaling mode
@@ -386,10 +386,10 @@ enum vp8e_enc_control_id {
* This set of constants define 1-D vpx scaling modes
*/
typedef enum vpx_scaling_mode_1d {
- VP8E_NORMAL = 0,
- VP8E_FOURFIVE = 1,
- VP8E_THREEFIVE = 2,
- VP8E_ONETWO = 3
+ VP8E_NORMAL = 0,
+ VP8E_FOURFIVE = 1,
+ VP8E_THREEFIVE = 2,
+ VP8E_ONETWO = 3
} VPX_SCALING_MODE;
@@ -400,17 +400,17 @@ typedef enum vpx_scaling_mode_1d {
*/
typedef struct vpx_roi_map {
- /*! An id between 0 and 3 for each 16x16 region within a frame. */
- unsigned char *roi_map;
- unsigned int rows; /**< Number of rows. */
- unsigned int cols; /**< Number of columns. */
- // TODO(paulwilkins): broken for VP9 which has 8 segments
- // q and loop filter deltas for each segment
- // (see MAX_MB_SEGMENTS)
- int delta_q[4]; /**< Quantizer deltas. */
- int delta_lf[4]; /**< Loop filter deltas. */
- /*! Static breakout threshold for each segment. */
- unsigned int static_threshold[4];
+ /*! An id between 0 and 3 for each 16x16 region within a frame. */
+ unsigned char *roi_map;
+ unsigned int rows; /**< Number of rows. */
+ unsigned int cols; /**< Number of columns. */
+ // TODO(paulwilkins): broken for VP9 which has 8 segments
+ // q and loop filter deltas for each segment
+ // (see MAX_MB_SEGMENTS)
+ int delta_q[4]; /**< Quantizer deltas. */
+ int delta_lf[4]; /**< Loop filter deltas. */
+ /*! Static breakout threshold for each segment. */
+ unsigned int static_threshold[4];
} vpx_roi_map_t;
/*!\brief vpx active region map
@@ -421,9 +421,9 @@ typedef struct vpx_roi_map {
typedef struct vpx_active_map {
- unsigned char *active_map; /**< specify an on (1) or off (0) each 16x16 region within a frame */
- unsigned int rows; /**< number of rows */
- unsigned int cols; /**< number of cols */
+ unsigned char *active_map; /**< specify an on (1) or off (0) each 16x16 region within a frame */
+ unsigned int rows; /**< number of rows */
+ unsigned int cols; /**< number of cols */
} vpx_active_map_t;
/*!\brief vpx image scaling mode
@@ -432,8 +432,8 @@ typedef struct vpx_active_map {
*
*/
typedef struct vpx_scaling_mode {
- VPX_SCALING_MODE h_scaling_mode; /**< horizontal scaling mode */
- VPX_SCALING_MODE v_scaling_mode; /**< vertical scaling mode */
+ VPX_SCALING_MODE h_scaling_mode; /**< horizontal scaling mode */
+ VPX_SCALING_MODE v_scaling_mode; /**< vertical scaling mode */
} vpx_scaling_mode_t;
/*!\brief VP8 token partition mode
@@ -444,17 +444,17 @@ typedef struct vpx_scaling_mode {
*/
typedef enum {
- VP8_ONE_TOKENPARTITION = 0,
- VP8_TWO_TOKENPARTITION = 1,
- VP8_FOUR_TOKENPARTITION = 2,
- VP8_EIGHT_TOKENPARTITION = 3
+ VP8_ONE_TOKENPARTITION = 0,
+ VP8_TWO_TOKENPARTITION = 1,
+ VP8_FOUR_TOKENPARTITION = 2,
+ VP8_EIGHT_TOKENPARTITION = 3
} vp8e_token_partitions;
/*!brief VP9 encoder content type */
typedef enum {
- VP9E_CONTENT_DEFAULT,
- VP9E_CONTENT_SCREEN,
- VP9E_CONTENT_INVALID
+ VP9E_CONTENT_DEFAULT,
+ VP9E_CONTENT_SCREEN,
+ VP9E_CONTENT_INVALID
} vp9e_tune_content;
/*!\brief VP8 model tuning parameters
@@ -463,8 +463,8 @@ typedef enum {
*
*/
typedef enum {
- VP8_TUNE_PSNR,
- VP8_TUNE_SSIM
+ VP8_TUNE_PSNR,
+ VP8_TUNE_SSIM
} vp8e_tuning;
/*!\brief vp9 svc layer parameters
@@ -475,8 +475,8 @@ typedef enum {
*
*/
typedef struct vpx_svc_layer_id {
- int spatial_layer_id; /**< Spatial layer id number. */
- int temporal_layer_id; /**< Temporal layer id number. */
+ int spatial_layer_id; /**< Spatial layer id number. */
+ int temporal_layer_id; /**< Temporal layer id number. */
} vpx_svc_layer_id_t;
/*!\brief VP8 encoder control function parameter type
diff --git a/thirdparties/iphone/include/vpx/vp8dx.h b/thirdparties/iphone/include/vpx/vp8dx.h
index c5475c4..7996b63 100755
--- a/thirdparties/iphone/include/vpx/vp8dx.h
+++ b/thirdparties/iphone/include/vpx/vp8dx.h
@@ -52,50 +52,50 @@ extern vpx_codec_iface_t *vpx_codec_vp9_dx(void);
* \sa #vpx_codec_control
*/
enum vp8_dec_control_id {
- /** control function to get info on which reference frames were updated
- * by the last decode
- */
- VP8D_GET_LAST_REF_UPDATES = VP8_DECODER_CTRL_ID_START,
-
- /** check if the indicated frame is corrupted */
- VP8D_GET_FRAME_CORRUPTED,
-
- /** control function to get info on which reference frames were used
- * by the last decode
- */
- VP8D_GET_LAST_REF_USED,
-
- /** decryption function to decrypt encoded buffer data immediately
- * before decoding. Takes a vpx_decrypt_init, which contains
- * a callback function and opaque context pointer.
- */
- VPXD_SET_DECRYPTOR,
- VP8D_SET_DECRYPTOR = VPXD_SET_DECRYPTOR,
-
- /** control function to get the display dimensions for the current frame. */
- VP9D_GET_DISPLAY_SIZE,
-
- /** control function to get the bit depth of the stream. */
- VP9D_GET_BIT_DEPTH,
-
- /** control function to set the byte alignment of the planes in the reference
- * buffers. Valid values are power of 2, from 32 to 1024. A value of 0 sets
- * legacy alignment. I.e. Y plane is aligned to 32 bytes, U plane directly
- * follows Y plane, and V plane directly follows U plane. Default value is 0.
- */
- VP9_SET_BYTE_ALIGNMENT,
-
- /** control function to invert the decoding order to from right to left. The
- * function is used in a test to confirm the decoding independence of tile
- * columns. The function may be used in application where this order
- * of decoding is desired.
- *
- * TODO(yaowu): Rework the unit test that uses this control, and in a future
- * release, this test-only control shall be removed.
- */
- VP9_INVERT_TILE_DECODE_ORDER,
-
- VP8_DECODER_CTRL_ID_MAX
+ /** control function to get info on which reference frames were updated
+ * by the last decode
+ */
+ VP8D_GET_LAST_REF_UPDATES = VP8_DECODER_CTRL_ID_START,
+
+ /** check if the indicated frame is corrupted */
+ VP8D_GET_FRAME_CORRUPTED,
+
+ /** control function to get info on which reference frames were used
+ * by the last decode
+ */
+ VP8D_GET_LAST_REF_USED,
+
+ /** decryption function to decrypt encoded buffer data immediately
+ * before decoding. Takes a vpx_decrypt_init, which contains
+ * a callback function and opaque context pointer.
+ */
+ VPXD_SET_DECRYPTOR,
+ VP8D_SET_DECRYPTOR = VPXD_SET_DECRYPTOR,
+
+ /** control function to get the display dimensions for the current frame. */
+ VP9D_GET_DISPLAY_SIZE,
+
+ /** control function to get the bit depth of the stream. */
+ VP9D_GET_BIT_DEPTH,
+
+ /** control function to set the byte alignment of the planes in the reference
+ * buffers. Valid values are power of 2, from 32 to 1024. A value of 0 sets
+ * legacy alignment. I.e. Y plane is aligned to 32 bytes, U plane directly
+ * follows Y plane, and V plane directly follows U plane. Default value is 0.
+ */
+ VP9_SET_BYTE_ALIGNMENT,
+
+ /** control function to invert the decoding order to from right to left. The
+ * function is used in a test to confirm the decoding independence of tile
+ * columns. The function may be used in application where this order
+ * of decoding is desired.
+ *
+ * TODO(yaowu): Rework the unit test that uses this control, and in a future
+ * release, this test-only control shall be removed.
+ */
+ VP9_INVERT_TILE_DECODE_ORDER,
+
+ VP8_DECODER_CTRL_ID_MAX
};
/** Decrypt n bytes of data from input -> output, using the decrypt_state
diff --git a/thirdparties/iphone/include/vpx/vpx_codec.h b/thirdparties/iphone/include/vpx/vpx_codec.h
index b25308e..237d625 100755
--- a/thirdparties/iphone/include/vpx/vpx_codec.h
+++ b/thirdparties/iphone/include/vpx/vpx_codec.h
@@ -46,7 +46,7 @@ extern "C" {
#include "./vpx_integer.h"
#include "./vpx_image.h"
- /*!\brief Decorator indicating a function is deprecated */
+/*!\brief Decorator indicating a function is deprecated */
#ifndef DEPRECATED
#if defined(__GNUC__) && __GNUC__
#define DEPRECATED __attribute__ ((deprecated))
@@ -67,7 +67,7 @@ extern "C" {
#endif
#endif /* DECLSPEC_DEPRECATED */
- /*!\brief Decorator indicating a function is potentially unused */
+/*!\brief Decorator indicating a function is potentially unused */
#ifdef UNUSED
#elif __GNUC__
#define UNUSED __attribute__ ((unused))
@@ -75,18 +75,18 @@ extern "C" {
#define UNUSED
#endif
- /*!\brief Current ABI version number
- *
- * \internal
- * If this file is altered in any way that changes the ABI, this value
- * must be bumped. Examples include, but are not limited to, changing
- * types, removing or reassigning enums, adding/removing/rearranging
- * fields to structures
- */
+/*!\brief Current ABI version number
+ *
+ * \internal
+ * If this file is altered in any way that changes the ABI, this value
+ * must be bumped. Examples include, but are not limited to, changing
+ * types, removing or reassigning enums, adding/removing/rearranging
+ * fields to structures
+ */
#define VPX_CODEC_ABI_VERSION (2 + VPX_IMAGE_ABI_VERSION) /**<\hideinitializer*/
- /*!\brief Algorithm return codes */
- typedef enum {
+/*!\brief Algorithm return codes */
+typedef enum {
/*!\brief Operation completed without error */
VPX_CODEC_OK,
@@ -138,256 +138,256 @@ extern "C" {
*/
VPX_CODEC_LIST_END
- }
- vpx_codec_err_t;
+}
+vpx_codec_err_t;
- /*! \brief Codec capabilities bitfield
- *
- * Each codec advertises the capabilities it supports as part of its
- * ::vpx_codec_iface_t interface structure. Capabilities are extra interfaces
- * or functionality, and are not required to be supported.
- *
- * The available flags are specified by VPX_CODEC_CAP_* defines.
- */
- typedef long vpx_codec_caps_t;
+/*! \brief Codec capabilities bitfield
+ *
+ * Each codec advertises the capabilities it supports as part of its
+ * ::vpx_codec_iface_t interface structure. Capabilities are extra interfaces
+ * or functionality, and are not required to be supported.
+ *
+ * The available flags are specified by VPX_CODEC_CAP_* defines.
+ */
+typedef long vpx_codec_caps_t;
#define VPX_CODEC_CAP_DECODER 0x1 /**< Is a decoder */
#define VPX_CODEC_CAP_ENCODER 0x2 /**< Is an encoder */
- /*! \brief Initialization-time Feature Enabling
- *
- * Certain codec features must be known at initialization time, to allow for
- * proper memory allocation.
- *
- * The available flags are specified by VPX_CODEC_USE_* defines.
- */
- typedef long vpx_codec_flags_t;
-
-
- /*!\brief Codec interface structure.
- *
- * Contains function pointers and other data private to the codec
- * implementation. This structure is opaque to the application.
- */
- typedef const struct vpx_codec_iface vpx_codec_iface_t;
-
-
- /*!\brief Codec private data structure.
- *
- * Contains data private to the codec implementation. This structure is opaque
- * to the application.
- */
- typedef struct vpx_codec_priv vpx_codec_priv_t;
-
-
- /*!\brief Iterator
- *
- * Opaque storage used for iterating over lists.
- */
- typedef const void *vpx_codec_iter_t;
-
-
- /*!\brief Codec context structure
- *
- * All codecs \ref MUST support this context structure fully. In general,
- * this data should be considered private to the codec algorithm, and
- * not be manipulated or examined by the calling application. Applications
- * may reference the 'name' member to get a printable description of the
- * algorithm.
- */
- typedef struct vpx_codec_ctx {
+/*! \brief Initialization-time Feature Enabling
+ *
+ * Certain codec features must be known at initialization time, to allow for
+ * proper memory allocation.
+ *
+ * The available flags are specified by VPX_CODEC_USE_* defines.
+ */
+typedef long vpx_codec_flags_t;
+
+
+/*!\brief Codec interface structure.
+ *
+ * Contains function pointers and other data private to the codec
+ * implementation. This structure is opaque to the application.
+ */
+typedef const struct vpx_codec_iface vpx_codec_iface_t;
+
+
+/*!\brief Codec private data structure.
+ *
+ * Contains data private to the codec implementation. This structure is opaque
+ * to the application.
+ */
+typedef struct vpx_codec_priv vpx_codec_priv_t;
+
+
+/*!\brief Iterator
+ *
+ * Opaque storage used for iterating over lists.
+ */
+typedef const void *vpx_codec_iter_t;
+
+
+/*!\brief Codec context structure
+ *
+ * All codecs \ref MUST support this context structure fully. In general,
+ * this data should be considered private to the codec algorithm, and
+ * not be manipulated or examined by the calling application. Applications
+ * may reference the 'name' member to get a printable description of the
+ * algorithm.
+ */
+typedef struct vpx_codec_ctx {
const char *name; /**< Printable interface name */
vpx_codec_iface_t *iface; /**< Interface pointers */
vpx_codec_err_t err; /**< Last returned error */
const char *err_detail; /**< Detailed info, if available */
vpx_codec_flags_t init_flags; /**< Flags passed at init time */
union {
- /**< Decoder Configuration Pointer */
- const struct vpx_codec_dec_cfg *dec;
- /**< Encoder Configuration Pointer */
- const struct vpx_codec_enc_cfg *enc;
- const void *raw;
+ /**< Decoder Configuration Pointer */
+ const struct vpx_codec_dec_cfg *dec;
+ /**< Encoder Configuration Pointer */
+ const struct vpx_codec_enc_cfg *enc;
+ const void *raw;
} config; /**< Configuration pointer aliasing union */
vpx_codec_priv_t *priv; /**< Algorithm private storage */
- } vpx_codec_ctx_t;
+} vpx_codec_ctx_t;
- /*!\brief Bit depth for codec
- * *
- * This enumeration determines the bit depth of the codec.
- */
- typedef enum vpx_bit_depth {
+/*!\brief Bit depth for codec
+ * *
+ * This enumeration determines the bit depth of the codec.
+ */
+typedef enum vpx_bit_depth {
VPX_BITS_8 = 8, /**< 8 bits */
VPX_BITS_10 = 10, /**< 10 bits */
VPX_BITS_12 = 12, /**< 12 bits */
- } vpx_bit_depth_t;
-
- /*
- * Library Version Number Interface
- *
- * For example, see the following sample return values:
- * vpx_codec_version() (1<<16 | 2<<8 | 3)
- * vpx_codec_version_str() "v1.2.3-rc1-16-gec6a1ba"
- * vpx_codec_version_extra_str() "rc1-16-gec6a1ba"
- */
-
- /*!\brief Return the version information (as an integer)
- *
- * Returns a packed encoding of the library version number. This will only include
- * the major.minor.patch component of the version number. Note that this encoded
- * value should be accessed through the macros provided, as the encoding may change
- * in the future.
- *
- */
- int vpx_codec_version(void);
+} vpx_bit_depth_t;
+
+/*
+ * Library Version Number Interface
+ *
+ * For example, see the following sample return values:
+ * vpx_codec_version() (1<<16 | 2<<8 | 3)
+ * vpx_codec_version_str() "v1.2.3-rc1-16-gec6a1ba"
+ * vpx_codec_version_extra_str() "rc1-16-gec6a1ba"
+ */
+
+/*!\brief Return the version information (as an integer)
+ *
+ * Returns a packed encoding of the library version number. This will only include
+ * the major.minor.patch component of the version number. Note that this encoded
+ * value should be accessed through the macros provided, as the encoding may change
+ * in the future.
+ *
+ */
+int vpx_codec_version(void);
#define VPX_VERSION_MAJOR(v) ((v>>16)&0xff) /**< extract major from packed version */
#define VPX_VERSION_MINOR(v) ((v>>8)&0xff) /**< extract minor from packed version */
#define VPX_VERSION_PATCH(v) ((v>>0)&0xff) /**< extract patch from packed version */
- /*!\brief Return the version major number */
+/*!\brief Return the version major number */
#define vpx_codec_version_major() ((vpx_codec_version()>>16)&0xff)
- /*!\brief Return the version minor number */
+/*!\brief Return the version minor number */
#define vpx_codec_version_minor() ((vpx_codec_version()>>8)&0xff)
- /*!\brief Return the version patch number */
+/*!\brief Return the version patch number */
#define vpx_codec_version_patch() ((vpx_codec_version()>>0)&0xff)
- /*!\brief Return the version information (as a string)
- *
- * Returns a printable string containing the full library version number. This may
- * contain additional text following the three digit version number, as to indicate
- * release candidates, prerelease versions, etc.
- *
- */
- const char *vpx_codec_version_str(void);
-
-
- /*!\brief Return the version information (as a string)
- *
- * Returns a printable "extra string". This is the component of the string returned
- * by vpx_codec_version_str() following the three digit version number.
- *
- */
- const char *vpx_codec_version_extra_str(void);
-
-
- /*!\brief Return the build configuration
- *
- * Returns a printable string containing an encoded version of the build
- * configuration. This may be useful to vpx support.
- *
- */
- const char *vpx_codec_build_config(void);
-
-
- /*!\brief Return the name for a given interface
- *
- * Returns a human readable string for name of the given codec interface.
- *
- * \param[in] iface Interface pointer
- *
- */
- const char *vpx_codec_iface_name(vpx_codec_iface_t *iface);
-
-
- /*!\brief Convert error number to printable string
- *
- * Returns a human readable string for the last error returned by the
- * algorithm. The returned error will be one line and will not contain
- * any newline characters.
- *
- *
- * \param[in] err Error number.
- *
- */
- const char *vpx_codec_err_to_string(vpx_codec_err_t err);
-
-
- /*!\brief Retrieve error synopsis for codec context
- *
- * Returns a human readable string for the last error returned by the
- * algorithm. The returned error will be one line and will not contain
- * any newline characters.
- *
- *
- * \param[in] ctx Pointer to this instance's context.
- *
- */
- const char *vpx_codec_error(vpx_codec_ctx_t *ctx);
-
-
- /*!\brief Retrieve detailed error information for codec context
- *
- * Returns a human readable string providing detailed information about
- * the last error.
- *
- * \param[in] ctx Pointer to this instance's context.
- *
- * \retval NULL
- * No detailed information is available.
- */
- const char *vpx_codec_error_detail(vpx_codec_ctx_t *ctx);
-
-
- /* REQUIRED FUNCTIONS
- *
- * The following functions are required to be implemented for all codecs.
- * They represent the base case functionality expected of all codecs.
- */
-
- /*!\brief Destroy a codec instance
- *
- * Destroys a codec context, freeing any associated memory buffers.
- *
- * \param[in] ctx Pointer to this instance's context
- *
- * \retval #VPX_CODEC_OK
- * The codec algorithm initialized.
- * \retval #VPX_CODEC_MEM_ERROR
- * Memory allocation failed.
- */
- vpx_codec_err_t vpx_codec_destroy(vpx_codec_ctx_t *ctx);
-
-
- /*!\brief Get the capabilities of an algorithm.
- *
- * Retrieves the capabilities bitfield from the algorithm's interface.
- *
- * \param[in] iface Pointer to the algorithm interface
- *
- */
- vpx_codec_caps_t vpx_codec_get_caps(vpx_codec_iface_t *iface);
-
-
- /*!\brief Control algorithm
- *
- * This function is used to exchange algorithm specific data with the codec
- * instance. This can be used to implement features specific to a particular
- * algorithm.
- *
- * This wrapper function dispatches the request to the helper function
- * associated with the given ctrl_id. It tries to call this function
- * transparently, but will return #VPX_CODEC_ERROR if the request could not
- * be dispatched.
- *
- * Note that this function should not be used directly. Call the
- * #vpx_codec_control wrapper macro instead.
- *
- * \param[in] ctx Pointer to this instance's context
- * \param[in] ctrl_id Algorithm specific control identifier
- *
- * \retval #VPX_CODEC_OK
- * The control request was processed.
- * \retval #VPX_CODEC_ERROR
- * The control request was not processed.
- * \retval #VPX_CODEC_INVALID_PARAM
- * The data was not valid.
- */
- vpx_codec_err_t vpx_codec_control_(vpx_codec_ctx_t *ctx,
- int ctrl_id,
- ...);
+/*!\brief Return the version information (as a string)
+ *
+ * Returns a printable string containing the full library version number. This may
+ * contain additional text following the three digit version number, as to indicate
+ * release candidates, prerelease versions, etc.
+ *
+ */
+const char *vpx_codec_version_str(void);
+
+
+/*!\brief Return the version information (as a string)
+ *
+ * Returns a printable "extra string". This is the component of the string returned
+ * by vpx_codec_version_str() following the three digit version number.
+ *
+ */
+const char *vpx_codec_version_extra_str(void);
+
+
+/*!\brief Return the build configuration
+ *
+ * Returns a printable string containing an encoded version of the build
+ * configuration. This may be useful to vpx support.
+ *
+ */
+const char *vpx_codec_build_config(void);
+
+
+/*!\brief Return the name for a given interface
+ *
+ * Returns a human readable string for name of the given codec interface.
+ *
+ * \param[in] iface Interface pointer
+ *
+ */
+const char *vpx_codec_iface_name(vpx_codec_iface_t *iface);
+
+
+/*!\brief Convert error number to printable string
+ *
+ * Returns a human readable string for the last error returned by the
+ * algorithm. The returned error will be one line and will not contain
+ * any newline characters.
+ *
+ *
+ * \param[in] err Error number.
+ *
+ */
+const char *vpx_codec_err_to_string(vpx_codec_err_t err);
+
+
+/*!\brief Retrieve error synopsis for codec context
+ *
+ * Returns a human readable string for the last error returned by the
+ * algorithm. The returned error will be one line and will not contain
+ * any newline characters.
+ *
+ *
+ * \param[in] ctx Pointer to this instance's context.
+ *
+ */
+const char *vpx_codec_error(vpx_codec_ctx_t *ctx);
+
+
+/*!\brief Retrieve detailed error information for codec context
+ *
+ * Returns a human readable string providing detailed information about
+ * the last error.
+ *
+ * \param[in] ctx Pointer to this instance's context.
+ *
+ * \retval NULL
+ * No detailed information is available.
+ */
+const char *vpx_codec_error_detail(vpx_codec_ctx_t *ctx);
+
+
+/* REQUIRED FUNCTIONS
+ *
+ * The following functions are required to be implemented for all codecs.
+ * They represent the base case functionality expected of all codecs.
+ */
+
+/*!\brief Destroy a codec instance
+ *
+ * Destroys a codec context, freeing any associated memory buffers.
+ *
+ * \param[in] ctx Pointer to this instance's context
+ *
+ * \retval #VPX_CODEC_OK
+ * The codec algorithm initialized.
+ * \retval #VPX_CODEC_MEM_ERROR
+ * Memory allocation failed.
+ */
+vpx_codec_err_t vpx_codec_destroy(vpx_codec_ctx_t *ctx);
+
+
+/*!\brief Get the capabilities of an algorithm.
+ *
+ * Retrieves the capabilities bitfield from the algorithm's interface.
+ *
+ * \param[in] iface Pointer to the algorithm interface
+ *
+ */
+vpx_codec_caps_t vpx_codec_get_caps(vpx_codec_iface_t *iface);
+
+
+/*!\brief Control algorithm
+ *
+ * This function is used to exchange algorithm specific data with the codec
+ * instance. This can be used to implement features specific to a particular
+ * algorithm.
+ *
+ * This wrapper function dispatches the request to the helper function
+ * associated with the given ctrl_id. It tries to call this function
+ * transparently, but will return #VPX_CODEC_ERROR if the request could not
+ * be dispatched.
+ *
+ * Note that this function should not be used directly. Call the
+ * #vpx_codec_control wrapper macro instead.
+ *
+ * \param[in] ctx Pointer to this instance's context
+ * \param[in] ctrl_id Algorithm specific control identifier
+ *
+ * \retval #VPX_CODEC_OK
+ * The control request was processed.
+ * \retval #VPX_CODEC_ERROR
+ * The control request was not processed.
+ * \retval #VPX_CODEC_INVALID_PARAM
+ * The data was not valid.
+ */
+vpx_codec_err_t vpx_codec_control_(vpx_codec_ctx_t *ctx,
+ int ctrl_id,
+ ...);
#if defined(VPX_DISABLE_CTRL_TYPECHECKS) && VPX_DISABLE_CTRL_TYPECHECKS
# define vpx_codec_control(ctx,id,data) vpx_codec_control_(ctx,id,data)
# define VPX_CTRL_USE_TYPE(id, typ)
@@ -395,30 +395,30 @@ extern "C" {
# define VPX_CTRL_VOID(id, typ)
#else
- /*!\brief vpx_codec_control wrapper macro
- *
- * This macro allows for type safe conversions across the variadic parameter
- * to vpx_codec_control_().
- *
- * \internal
- * It works by dispatching the call to the control function through a wrapper
- * function named with the id parameter.
- */
+/*!\brief vpx_codec_control wrapper macro
+ *
+ * This macro allows for type safe conversions across the variadic parameter
+ * to vpx_codec_control_().
+ *
+ * \internal
+ * It works by dispatching the call to the control function through a wrapper
+ * function named with the id parameter.
+ */
# define vpx_codec_control(ctx,id,data) vpx_codec_control_##id(ctx,id,data)\
/**<\hideinitializer*/
- /*!\brief vpx_codec_control type definition macro
- *
- * This macro allows for type safe conversions across the variadic parameter
- * to vpx_codec_control_(). It defines the type of the argument for a given
- * control identifier.
- *
- * \internal
- * It defines a static function with
- * the correctly typed arguments as a wrapper to the type-unsafe internal
- * function.
- */
+/*!\brief vpx_codec_control type definition macro
+ *
+ * This macro allows for type safe conversions across the variadic parameter
+ * to vpx_codec_control_(). It defines the type of the argument for a given
+ * control identifier.
+ *
+ * \internal
+ * It defines a static function with
+ * the correctly typed arguments as a wrapper to the type-unsafe internal
+ * function.
+ */
# define VPX_CTRL_USE_TYPE(id, typ) \
static vpx_codec_err_t \
vpx_codec_control_##id(vpx_codec_ctx_t*, int, typ) UNUSED;\
@@ -429,16 +429,16 @@ extern "C" {
} /**<\hideinitializer*/
- /*!\brief vpx_codec_control deprecated type definition macro
- *
- * Like #VPX_CTRL_USE_TYPE, but indicates that the specified control is
- * deprecated and should not be used. Consult the documentation for your
- * codec for more information.
- *
- * \internal
- * It defines a static function with the correctly typed arguments as a
- * wrapper to the type-unsafe internal function.
- */
+/*!\brief vpx_codec_control deprecated type definition macro
+ *
+ * Like #VPX_CTRL_USE_TYPE, but indicates that the specified control is
+ * deprecated and should not be used. Consult the documentation for your
+ * codec for more information.
+ *
+ * \internal
+ * It defines a static function with the correctly typed arguments as a
+ * wrapper to the type-unsafe internal function.
+ */
# define VPX_CTRL_USE_TYPE_DEPRECATED(id, typ) \
DECLSPEC_DEPRECATED static vpx_codec_err_t \
vpx_codec_control_##id(vpx_codec_ctx_t*, int, typ) DEPRECATED UNUSED;\
@@ -449,16 +449,16 @@ extern "C" {
} /**<\hideinitializer*/
- /*!\brief vpx_codec_control void type definition macro
- *
- * This macro allows for type safe conversions across the variadic parameter
- * to vpx_codec_control_(). It indicates that a given control identifier takes
- * no argument.
- *
- * \internal
- * It defines a static function without a data argument as a wrapper to the
- * type-unsafe internal function.
- */
+/*!\brief vpx_codec_control void type definition macro
+ *
+ * This macro allows for type safe conversions across the variadic parameter
+ * to vpx_codec_control_(). It indicates that a given control identifier takes
+ * no argument.
+ *
+ * \internal
+ * It defines a static function without a data argument as a wrapper to the
+ * type-unsafe internal function.
+ */
# define VPX_CTRL_VOID(id) \
static vpx_codec_err_t \
vpx_codec_control_##id(vpx_codec_ctx_t*, int) UNUSED;\
@@ -471,7 +471,7 @@ extern "C" {
#endif
- /*!@} - end defgroup codec*/
+/*!@} - end defgroup codec*/
#ifdef __cplusplus
}
#endif
diff --git a/thirdparties/iphone/include/vpx/vpx_decoder.h b/thirdparties/iphone/include/vpx/vpx_decoder.h
index 62fd919..7fb13bd 100755
--- a/thirdparties/iphone/include/vpx/vpx_decoder.h
+++ b/thirdparties/iphone/include/vpx/vpx_decoder.h
@@ -32,24 +32,24 @@ extern "C" {
#include "./vpx_codec.h"
#include "./vpx_frame_buffer.h"
- /*!\brief Current ABI version number
- *
- * \internal
- * If this file is altered in any way that changes the ABI, this value
- * must be bumped. Examples include, but are not limited to, changing
- * types, removing or reassigning enums, adding/removing/rearranging
- * fields to structures
- */
+/*!\brief Current ABI version number
+ *
+ * \internal
+ * If this file is altered in any way that changes the ABI, this value
+ * must be bumped. Examples include, but are not limited to, changing
+ * types, removing or reassigning enums, adding/removing/rearranging
+ * fields to structures
+ */
#define VPX_DECODER_ABI_VERSION (3 + VPX_CODEC_ABI_VERSION) /**<\hideinitializer*/
- /*! \brief Decoder capabilities bitfield
- *
- * Each decoder advertises the capabilities it supports as part of its
- * ::vpx_codec_iface_t interface structure. Capabilities are extra interfaces
- * or functionality, and are not required to be supported by a decoder.
- *
- * The available flags are specified by VPX_CODEC_CAP_* defines.
- */
+/*! \brief Decoder capabilities bitfield
+ *
+ * Each decoder advertises the capabilities it supports as part of its
+ * ::vpx_codec_iface_t interface structure. Capabilities are extra interfaces
+ * or functionality, and are not required to be supported by a decoder.
+ *
+ * The available flags are specified by VPX_CODEC_CAP_* defines.
+ */
#define VPX_CODEC_CAP_PUT_SLICE 0x10000 /**< Will issue put_slice callbacks */
#define VPX_CODEC_CAP_PUT_FRAME 0x20000 /**< Will issue put_frame callbacks */
#define VPX_CODEC_CAP_POSTPROC 0x40000 /**< Can postprocess decoded frame */
@@ -58,13 +58,13 @@ extern "C" {
#define VPX_CODEC_CAP_INPUT_FRAGMENTS 0x100000 /**< Can receive encoded frames
one fragment at a time */
- /*! \brief Initialization-time Feature Enabling
- *
- * Certain codec features must be known at initialization time, to allow for
- * proper memory allocation.
- *
- * The available flags are specified by VPX_CODEC_USE_* defines.
- */
+/*! \brief Initialization-time Feature Enabling
+ *
+ * Certain codec features must be known at initialization time, to allow for
+ * proper memory allocation.
+ *
+ * The available flags are specified by VPX_CODEC_USE_* defines.
+ */
#define VPX_CODEC_CAP_FRAME_THREADING 0x200000 /**< Can support frame-based
multi-threading */
#define VPX_CODEC_CAP_EXTERNAL_FRAME_BUFFER 0x400000 /**< Can support external
@@ -79,298 +79,298 @@ extern "C" {
#define VPX_CODEC_USE_FRAME_THREADING 0x80000 /**< Enable frame-based
multi-threading */
- /*!\brief Stream properties
- *
- * This structure is used to query or set properties of the decoded
- * stream. Algorithms may extend this structure with data specific
- * to their bitstream by setting the sz member appropriately.
- */
- typedef struct vpx_codec_stream_info {
+/*!\brief Stream properties
+ *
+ * This structure is used to query or set properties of the decoded
+ * stream. Algorithms may extend this structure with data specific
+ * to their bitstream by setting the sz member appropriately.
+ */
+typedef struct vpx_codec_stream_info {
unsigned int sz; /**< Size of this structure */
unsigned int w; /**< Width (or 0 for unknown/default) */
unsigned int h; /**< Height (or 0 for unknown/default) */
unsigned int is_kf; /**< Current frame is a keyframe */
- } vpx_codec_stream_info_t;
+} vpx_codec_stream_info_t;
- /* REQUIRED FUNCTIONS
- *
- * The following functions are required to be implemented for all decoders.
- * They represent the base case functionality expected of all decoders.
- */
+/* REQUIRED FUNCTIONS
+ *
+ * The following functions are required to be implemented for all decoders.
+ * They represent the base case functionality expected of all decoders.
+ */
- /*!\brief Initialization Configurations
- *
- * This structure is used to pass init time configuration options to the
- * decoder.
- */
- typedef struct vpx_codec_dec_cfg {
+/*!\brief Initialization Configurations
+ *
+ * This structure is used to pass init time configuration options to the
+ * decoder.
+ */
+typedef struct vpx_codec_dec_cfg {
unsigned int threads; /**< Maximum number of threads to use, default 1 */
unsigned int w; /**< Width */
unsigned int h; /**< Height */
- } vpx_codec_dec_cfg_t; /**< alias for struct vpx_codec_dec_cfg */
-
-
- /*!\brief Initialize a decoder instance
- *
- * Initializes a decoder context using the given interface. Applications
- * should call the vpx_codec_dec_init convenience macro instead of this
- * function directly, to ensure that the ABI version number parameter
- * is properly initialized.
- *
- * If the library was configured with --disable-multithread, this call
- * is not thread safe and should be guarded with a lock if being used
- * in a multithreaded context.
- *
- * \param[in] ctx Pointer to this instance's context.
- * \param[in] iface Pointer to the algorithm interface to use.
- * \param[in] cfg Configuration to use, if known. May be NULL.
- * \param[in] flags Bitfield of VPX_CODEC_USE_* flags
- * \param[in] ver ABI version number. Must be set to
- * VPX_DECODER_ABI_VERSION
- * \retval #VPX_CODEC_OK
- * The decoder algorithm initialized.
- * \retval #VPX_CODEC_MEM_ERROR
- * Memory allocation failed.
- */
- vpx_codec_err_t vpx_codec_dec_init_ver(vpx_codec_ctx_t *ctx,
- vpx_codec_iface_t *iface,
- const vpx_codec_dec_cfg_t *cfg,
- vpx_codec_flags_t flags,
- int ver);
-
- /*!\brief Convenience macro for vpx_codec_dec_init_ver()
- *
- * Ensures the ABI version parameter is properly set.
- */
+} vpx_codec_dec_cfg_t; /**< alias for struct vpx_codec_dec_cfg */
+
+
+/*!\brief Initialize a decoder instance
+ *
+ * Initializes a decoder context using the given interface. Applications
+ * should call the vpx_codec_dec_init convenience macro instead of this
+ * function directly, to ensure that the ABI version number parameter
+ * is properly initialized.
+ *
+ * If the library was configured with --disable-multithread, this call
+ * is not thread safe and should be guarded with a lock if being used
+ * in a multithreaded context.
+ *
+ * \param[in] ctx Pointer to this instance's context.
+ * \param[in] iface Pointer to the algorithm interface to use.
+ * \param[in] cfg Configuration to use, if known. May be NULL.
+ * \param[in] flags Bitfield of VPX_CODEC_USE_* flags
+ * \param[in] ver ABI version number. Must be set to
+ * VPX_DECODER_ABI_VERSION
+ * \retval #VPX_CODEC_OK
+ * The decoder algorithm initialized.
+ * \retval #VPX_CODEC_MEM_ERROR
+ * Memory allocation failed.
+ */
+vpx_codec_err_t vpx_codec_dec_init_ver(vpx_codec_ctx_t *ctx,
+ vpx_codec_iface_t *iface,
+ const vpx_codec_dec_cfg_t *cfg,
+ vpx_codec_flags_t flags,
+ int ver);
+
+/*!\brief Convenience macro for vpx_codec_dec_init_ver()
+ *
+ * Ensures the ABI version parameter is properly set.
+ */
#define vpx_codec_dec_init(ctx, iface, cfg, flags) \
vpx_codec_dec_init_ver(ctx, iface, cfg, flags, VPX_DECODER_ABI_VERSION)
- /*!\brief Parse stream info from a buffer
- *
- * Performs high level parsing of the bitstream. Construction of a decoder
- * context is not necessary. Can be used to determine if the bitstream is
- * of the proper format, and to extract information from the stream.
- *
- * \param[in] iface Pointer to the algorithm interface
- * \param[in] data Pointer to a block of data to parse
- * \param[in] data_sz Size of the data buffer
- * \param[in,out] si Pointer to stream info to update. The size member
- * \ref MUST be properly initialized, but \ref MAY be
- * clobbered by the algorithm. This parameter \ref MAY
- * be NULL.
- *
- * \retval #VPX_CODEC_OK
- * Bitstream is parsable and stream information updated
- */
- vpx_codec_err_t vpx_codec_peek_stream_info(vpx_codec_iface_t *iface,
- const uint8_t *data,
- unsigned int data_sz,
- vpx_codec_stream_info_t *si);
-
-
- /*!\brief Return information about the current stream.
- *
- * Returns information about the stream that has been parsed during decoding.
- *
- * \param[in] ctx Pointer to this instance's context
- * \param[in,out] si Pointer to stream info to update. The size member
- * \ref MUST be properly initialized, but \ref MAY be
- * clobbered by the algorithm. This parameter \ref MAY
- * be NULL.
- *
- * \retval #VPX_CODEC_OK
- * Bitstream is parsable and stream information updated
- */
- vpx_codec_err_t vpx_codec_get_stream_info(vpx_codec_ctx_t *ctx,
- vpx_codec_stream_info_t *si);
-
-
- /*!\brief Decode data
- *
- * Processes a buffer of coded data. If the processing results in a new
- * decoded frame becoming available, PUT_SLICE and PUT_FRAME events may be
- * generated, as appropriate. Encoded data \ref MUST be passed in DTS (decode
- * time stamp) order. Frames produced will always be in PTS (presentation
- * time stamp) order.
- * If the decoder is configured with VPX_CODEC_USE_INPUT_FRAGMENTS enabled,
- * data and data_sz can contain a fragment of the encoded frame. Fragment
- * \#n must contain at least partition \#n, but can also contain subsequent
- * partitions (\#n+1 - \#n+i), and if so, fragments \#n+1, .., \#n+i must
- * be empty. When no more data is available, this function should be called
- * with NULL as data and 0 as data_sz. The memory passed to this function
- * must be available until the frame has been decoded.
- *
- * \param[in] ctx Pointer to this instance's context
- * \param[in] data Pointer to this block of new coded data. If
- * NULL, a VPX_CODEC_CB_PUT_FRAME event is posted
- * for the previously decoded frame.
- * \param[in] data_sz Size of the coded data, in bytes.
- * \param[in] user_priv Application specific data to associate with
- * this frame.
- * \param[in] deadline Soft deadline the decoder should attempt to meet,
- * in us. Set to zero for unlimited.
- *
- * \return Returns #VPX_CODEC_OK if the coded data was processed completely
- * and future pictures can be decoded without error. Otherwise,
- * see the descriptions of the other error codes in ::vpx_codec_err_t
- * for recoverability capabilities.
- */
- vpx_codec_err_t vpx_codec_decode(vpx_codec_ctx_t *ctx,
- const uint8_t *data,
- unsigned int data_sz,
- void *user_priv,
- long deadline);
-
-
- /*!\brief Decoded frames iterator
- *
- * Iterates over a list of the frames available for display. The iterator
- * storage should be initialized to NULL to start the iteration. Iteration is
- * complete when this function returns NULL.
- *
- * The list of available frames becomes valid upon completion of the
- * vpx_codec_decode call, and remains valid until the next call to vpx_codec_decode.
- *
- * \param[in] ctx Pointer to this instance's context
- * \param[in,out] iter Iterator storage, initialized to NULL
- *
- * \return Returns a pointer to an image, if one is ready for display. Frames
- * produced will always be in PTS (presentation time stamp) order.
- */
- vpx_image_t *vpx_codec_get_frame(vpx_codec_ctx_t *ctx,
- vpx_codec_iter_t *iter);
-
-
- /*!\defgroup cap_put_frame Frame-Based Decoding Functions
- *
- * The following functions are required to be implemented for all decoders
- * that advertise the VPX_CODEC_CAP_PUT_FRAME capability. Calling these functions
- * for codecs that don't advertise this capability will result in an error
- * code being returned, usually VPX_CODEC_ERROR
- * @{
- */
-
- /*!\brief put frame callback prototype
- *
- * This callback is invoked by the decoder to notify the application of
- * the availability of decoded image data.
- */
- typedef void (*vpx_codec_put_frame_cb_fn_t)(void *user_priv,
- const vpx_image_t *img);
-
-
- /*!\brief Register for notification of frame completion.
- *
- * Registers a given function to be called when a decoded frame is
- * available.
- *
- * \param[in] ctx Pointer to this instance's context
- * \param[in] cb Pointer to the callback function
- * \param[in] user_priv User's private data
- *
- * \retval #VPX_CODEC_OK
- * Callback successfully registered.
- * \retval #VPX_CODEC_ERROR
- * Decoder context not initialized, or algorithm not capable of
- * posting slice completion.
- */
- vpx_codec_err_t vpx_codec_register_put_frame_cb(vpx_codec_ctx_t *ctx,
- vpx_codec_put_frame_cb_fn_t cb,
- void *user_priv);
-
-
- /*!@} - end defgroup cap_put_frame */
-
- /*!\defgroup cap_put_slice Slice-Based Decoding Functions
- *
- * The following functions are required to be implemented for all decoders
- * that advertise the VPX_CODEC_CAP_PUT_SLICE capability. Calling these functions
- * for codecs that don't advertise this capability will result in an error
- * code being returned, usually VPX_CODEC_ERROR
- * @{
- */
-
- /*!\brief put slice callback prototype
- *
- * This callback is invoked by the decoder to notify the application of
- * the availability of partially decoded image data. The
- */
- typedef void (*vpx_codec_put_slice_cb_fn_t)(void *user_priv,
- const vpx_image_t *img,
- const vpx_image_rect_t *valid,
- const vpx_image_rect_t *update);
-
-
- /*!\brief Register for notification of slice completion.
- *
- * Registers a given function to be called when a decoded slice is
- * available.
- *
- * \param[in] ctx Pointer to this instance's context
- * \param[in] cb Pointer to the callback function
- * \param[in] user_priv User's private data
- *
- * \retval #VPX_CODEC_OK
- * Callback successfully registered.
- * \retval #VPX_CODEC_ERROR
- * Decoder context not initialized, or algorithm not capable of
- * posting slice completion.
- */
- vpx_codec_err_t vpx_codec_register_put_slice_cb(vpx_codec_ctx_t *ctx,
- vpx_codec_put_slice_cb_fn_t cb,
- void *user_priv);
-
-
- /*!@} - end defgroup cap_put_slice*/
-
- /*!\defgroup cap_external_frame_buffer External Frame Buffer Functions
- *
- * The following section is required to be implemented for all decoders
- * that advertise the VPX_CODEC_CAP_EXTERNAL_FRAME_BUFFER capability.
- * Calling this function for codecs that don't advertise this capability
- * will result in an error code being returned, usually VPX_CODEC_ERROR.
- *
- * \note
- * Currently this only works with VP9.
- * @{
- */
-
- /*!\brief Pass in external frame buffers for the decoder to use.
- *
- * Registers functions to be called when libvpx needs a frame buffer
- * to decode the current frame and a function to be called when libvpx does
- * not internally reference the frame buffer. This set function must
- * be called before the first call to decode or libvpx will assume the
- * default behavior of allocating frame buffers internally.
- *
- * \param[in] ctx Pointer to this instance's context
- * \param[in] cb_get Pointer to the get callback function
- * \param[in] cb_release Pointer to the release callback function
- * \param[in] cb_priv Callback's private data
- *
- * \retval #VPX_CODEC_OK
- * External frame buffers will be used by libvpx.
- * \retval #VPX_CODEC_INVALID_PARAM
- * One or more of the callbacks were NULL.
- * \retval #VPX_CODEC_ERROR
- * Decoder context not initialized, or algorithm not capable of
- * using external frame buffers.
- *
- * \note
- * When decoding VP9, the application may be required to pass in at least
- * #VP9_MAXIMUM_REF_BUFFERS + #VPX_MAXIMUM_WORK_BUFFERS external frame
- * buffers.
- */
- vpx_codec_err_t vpx_codec_set_frame_buffer_functions(
- vpx_codec_ctx_t *ctx,
- vpx_get_frame_buffer_cb_fn_t cb_get,
- vpx_release_frame_buffer_cb_fn_t cb_release, void *cb_priv);
-
- /*!@} - end defgroup cap_external_frame_buffer */
-
- /*!@} - end defgroup decoder*/
+/*!\brief Parse stream info from a buffer
+ *
+ * Performs high level parsing of the bitstream. Construction of a decoder
+ * context is not necessary. Can be used to determine if the bitstream is
+ * of the proper format, and to extract information from the stream.
+ *
+ * \param[in] iface Pointer to the algorithm interface
+ * \param[in] data Pointer to a block of data to parse
+ * \param[in] data_sz Size of the data buffer
+ * \param[in,out] si Pointer to stream info to update. The size member
+ * \ref MUST be properly initialized, but \ref MAY be
+ * clobbered by the algorithm. This parameter \ref MAY
+ * be NULL.
+ *
+ * \retval #VPX_CODEC_OK
+ * Bitstream is parsable and stream information updated
+ */
+vpx_codec_err_t vpx_codec_peek_stream_info(vpx_codec_iface_t *iface,
+ const uint8_t *data,
+ unsigned int data_sz,
+ vpx_codec_stream_info_t *si);
+
+
+/*!\brief Return information about the current stream.
+ *
+ * Returns information about the stream that has been parsed during decoding.
+ *
+ * \param[in] ctx Pointer to this instance's context
+ * \param[in,out] si Pointer to stream info to update. The size member
+ * \ref MUST be properly initialized, but \ref MAY be
+ * clobbered by the algorithm. This parameter \ref MAY
+ * be NULL.
+ *
+ * \retval #VPX_CODEC_OK
+ * Bitstream is parsable and stream information updated
+ */
+vpx_codec_err_t vpx_codec_get_stream_info(vpx_codec_ctx_t *ctx,
+ vpx_codec_stream_info_t *si);
+
+
+/*!\brief Decode data
+ *
+ * Processes a buffer of coded data. If the processing results in a new
+ * decoded frame becoming available, PUT_SLICE and PUT_FRAME events may be
+ * generated, as appropriate. Encoded data \ref MUST be passed in DTS (decode
+ * time stamp) order. Frames produced will always be in PTS (presentation
+ * time stamp) order.
+ * If the decoder is configured with VPX_CODEC_USE_INPUT_FRAGMENTS enabled,
+ * data and data_sz can contain a fragment of the encoded frame. Fragment
+ * \#n must contain at least partition \#n, but can also contain subsequent
+ * partitions (\#n+1 - \#n+i), and if so, fragments \#n+1, .., \#n+i must
+ * be empty. When no more data is available, this function should be called
+ * with NULL as data and 0 as data_sz. The memory passed to this function
+ * must be available until the frame has been decoded.
+ *
+ * \param[in] ctx Pointer to this instance's context
+ * \param[in] data Pointer to this block of new coded data. If
+ * NULL, a VPX_CODEC_CB_PUT_FRAME event is posted
+ * for the previously decoded frame.
+ * \param[in] data_sz Size of the coded data, in bytes.
+ * \param[in] user_priv Application specific data to associate with
+ * this frame.
+ * \param[in] deadline Soft deadline the decoder should attempt to meet,
+ * in us. Set to zero for unlimited.
+ *
+ * \return Returns #VPX_CODEC_OK if the coded data was processed completely
+ * and future pictures can be decoded without error. Otherwise,
+ * see the descriptions of the other error codes in ::vpx_codec_err_t
+ * for recoverability capabilities.
+ */
+vpx_codec_err_t vpx_codec_decode(vpx_codec_ctx_t *ctx,
+ const uint8_t *data,
+ unsigned int data_sz,
+ void *user_priv,
+ long deadline);
+
+
+/*!\brief Decoded frames iterator
+ *
+ * Iterates over a list of the frames available for display. The iterator
+ * storage should be initialized to NULL to start the iteration. Iteration is
+ * complete when this function returns NULL.
+ *
+ * The list of available frames becomes valid upon completion of the
+ * vpx_codec_decode call, and remains valid until the next call to vpx_codec_decode.
+ *
+ * \param[in] ctx Pointer to this instance's context
+ * \param[in,out] iter Iterator storage, initialized to NULL
+ *
+ * \return Returns a pointer to an image, if one is ready for display. Frames
+ * produced will always be in PTS (presentation time stamp) order.
+ */
+vpx_image_t *vpx_codec_get_frame(vpx_codec_ctx_t *ctx,
+ vpx_codec_iter_t *iter);
+
+
+/*!\defgroup cap_put_frame Frame-Based Decoding Functions
+ *
+ * The following functions are required to be implemented for all decoders
+ * that advertise the VPX_CODEC_CAP_PUT_FRAME capability. Calling these functions
+ * for codecs that don't advertise this capability will result in an error
+ * code being returned, usually VPX_CODEC_ERROR
+ * @{
+ */
+
+/*!\brief put frame callback prototype
+ *
+ * This callback is invoked by the decoder to notify the application of
+ * the availability of decoded image data.
+ */
+typedef void (*vpx_codec_put_frame_cb_fn_t)(void *user_priv,
+ const vpx_image_t *img);
+
+
+/*!\brief Register for notification of frame completion.
+ *
+ * Registers a given function to be called when a decoded frame is
+ * available.
+ *
+ * \param[in] ctx Pointer to this instance's context
+ * \param[in] cb Pointer to the callback function
+ * \param[in] user_priv User's private data
+ *
+ * \retval #VPX_CODEC_OK
+ * Callback successfully registered.
+ * \retval #VPX_CODEC_ERROR
+ * Decoder context not initialized, or algorithm not capable of
+ * posting slice completion.
+ */
+vpx_codec_err_t vpx_codec_register_put_frame_cb(vpx_codec_ctx_t *ctx,
+ vpx_codec_put_frame_cb_fn_t cb,
+ void *user_priv);
+
+
+/*!@} - end defgroup cap_put_frame */
+
+/*!\defgroup cap_put_slice Slice-Based Decoding Functions
+ *
+ * The following functions are required to be implemented for all decoders
+ * that advertise the VPX_CODEC_CAP_PUT_SLICE capability. Calling these functions
+ * for codecs that don't advertise this capability will result in an error
+ * code being returned, usually VPX_CODEC_ERROR
+ * @{
+ */
+
+/*!\brief put slice callback prototype
+ *
+ * This callback is invoked by the decoder to notify the application of
+ * the availability of partially decoded image data. The
+ */
+typedef void (*vpx_codec_put_slice_cb_fn_t)(void *user_priv,
+ const vpx_image_t *img,
+ const vpx_image_rect_t *valid,
+ const vpx_image_rect_t *update);
+
+
+/*!\brief Register for notification of slice completion.
+ *
+ * Registers a given function to be called when a decoded slice is
+ * available.
+ *
+ * \param[in] ctx Pointer to this instance's context
+ * \param[in] cb Pointer to the callback function
+ * \param[in] user_priv User's private data
+ *
+ * \retval #VPX_CODEC_OK
+ * Callback successfully registered.
+ * \retval #VPX_CODEC_ERROR
+ * Decoder context not initialized, or algorithm not capable of
+ * posting slice completion.
+ */
+vpx_codec_err_t vpx_codec_register_put_slice_cb(vpx_codec_ctx_t *ctx,
+ vpx_codec_put_slice_cb_fn_t cb,
+ void *user_priv);
+
+
+/*!@} - end defgroup cap_put_slice*/
+
+/*!\defgroup cap_external_frame_buffer External Frame Buffer Functions
+ *
+ * The following section is required to be implemented for all decoders
+ * that advertise the VPX_CODEC_CAP_EXTERNAL_FRAME_BUFFER capability.
+ * Calling this function for codecs that don't advertise this capability
+ * will result in an error code being returned, usually VPX_CODEC_ERROR.
+ *
+ * \note
+ * Currently this only works with VP9.
+ * @{
+ */
+
+/*!\brief Pass in external frame buffers for the decoder to use.
+ *
+ * Registers functions to be called when libvpx needs a frame buffer
+ * to decode the current frame and a function to be called when libvpx does
+ * not internally reference the frame buffer. This set function must
+ * be called before the first call to decode or libvpx will assume the
+ * default behavior of allocating frame buffers internally.
+ *
+ * \param[in] ctx Pointer to this instance's context
+ * \param[in] cb_get Pointer to the get callback function
+ * \param[in] cb_release Pointer to the release callback function
+ * \param[in] cb_priv Callback's private data
+ *
+ * \retval #VPX_CODEC_OK
+ * External frame buffers will be used by libvpx.
+ * \retval #VPX_CODEC_INVALID_PARAM
+ * One or more of the callbacks were NULL.
+ * \retval #VPX_CODEC_ERROR
+ * Decoder context not initialized, or algorithm not capable of
+ * using external frame buffers.
+ *
+ * \note
+ * When decoding VP9, the application may be required to pass in at least
+ * #VP9_MAXIMUM_REF_BUFFERS + #VPX_MAXIMUM_WORK_BUFFERS external frame
+ * buffers.
+ */
+vpx_codec_err_t vpx_codec_set_frame_buffer_functions(
+ vpx_codec_ctx_t *ctx,
+ vpx_get_frame_buffer_cb_fn_t cb_get,
+ vpx_release_frame_buffer_cb_fn_t cb_release, void *cb_priv);
+
+/*!@} - end defgroup cap_external_frame_buffer */
+
+/*!@} - end defgroup decoder*/
#ifdef __cplusplus
}
#endif
diff --git a/thirdparties/iphone/include/vpx/vpx_encoder.h b/thirdparties/iphone/include/vpx/vpx_encoder.h
index 8f7bff5..4006856 100755
--- a/thirdparties/iphone/include/vpx/vpx_encoder.h
+++ b/thirdparties/iphone/include/vpx/vpx_encoder.h
@@ -31,18 +31,18 @@ extern "C" {
#include "./vpx_codec.h"
- /*! Temporal Scalability: Maximum length of the sequence defining frame
- * layer membership
- */
+/*! Temporal Scalability: Maximum length of the sequence defining frame
+ * layer membership
+ */
#define VPX_TS_MAX_PERIODICITY 16
- /*! Temporal Scalability: Maximum number of coding layers */
+/*! Temporal Scalability: Maximum number of coding layers */
#define VPX_TS_MAX_LAYERS 5
- /*!\deprecated Use #VPX_TS_MAX_PERIODICITY instead. */
+/*!\deprecated Use #VPX_TS_MAX_PERIODICITY instead. */
#define MAX_PERIODICITY VPX_TS_MAX_PERIODICITY
- /*!\deprecated Use #VPX_TS_MAX_LAYERS instead. */
+/*!\deprecated Use #VPX_TS_MAX_LAYERS instead. */
#define MAX_LAYERS VPX_TS_MAX_LAYERS
/*! Spatial Scalability: Maximum number of coding layers */
@@ -51,78 +51,78 @@ extern "C" {
/*! Spatial Scalability: Default number of coding layers */
#define VPX_SS_DEFAULT_LAYERS 1
- /*!\brief Current ABI version number
- *
- * \internal
- * If this file is altered in any way that changes the ABI, this value
- * must be bumped. Examples include, but are not limited to, changing
- * types, removing or reassigning enums, adding/removing/rearranging
- * fields to structures
- */
+/*!\brief Current ABI version number
+ *
+ * \internal
+ * If this file is altered in any way that changes the ABI, this value
+ * must be bumped. Examples include, but are not limited to, changing
+ * types, removing or reassigning enums, adding/removing/rearranging
+ * fields to structures
+ */
#define VPX_ENCODER_ABI_VERSION (3 + VPX_CODEC_ABI_VERSION) /**<\hideinitializer*/
- /*! \brief Encoder capabilities bitfield
- *
- * Each encoder advertises the capabilities it supports as part of its
- * ::vpx_codec_iface_t interface structure. Capabilities are extra
- * interfaces or functionality, and are not required to be supported
- * by an encoder.
- *
- * The available flags are specified by VPX_CODEC_CAP_* defines.
- */
+/*! \brief Encoder capabilities bitfield
+ *
+ * Each encoder advertises the capabilities it supports as part of its
+ * ::vpx_codec_iface_t interface structure. Capabilities are extra
+ * interfaces or functionality, and are not required to be supported
+ * by an encoder.
+ *
+ * The available flags are specified by VPX_CODEC_CAP_* defines.
+ */
#define VPX_CODEC_CAP_PSNR 0x10000 /**< Can issue PSNR packets */
- /*! Can output one partition at a time. Each partition is returned in its
- * own VPX_CODEC_CX_FRAME_PKT, with the FRAME_IS_FRAGMENT flag set for
- * every partition but the last. In this mode all frames are always
- * returned partition by partition.
- */
+/*! Can output one partition at a time. Each partition is returned in its
+ * own VPX_CODEC_CX_FRAME_PKT, with the FRAME_IS_FRAGMENT flag set for
+ * every partition but the last. In this mode all frames are always
+ * returned partition by partition.
+ */
#define VPX_CODEC_CAP_OUTPUT_PARTITION 0x20000
/*! Can support input images at greater than 8 bitdepth.
*/
#define VPX_CODEC_CAP_HIGHBITDEPTH 0x40000
- /*! \brief Initialization-time Feature Enabling
- *
- * Certain codec features must be known at initialization time, to allow
- * for proper memory allocation.
- *
- * The available flags are specified by VPX_CODEC_USE_* defines.
- */
+/*! \brief Initialization-time Feature Enabling
+ *
+ * Certain codec features must be known at initialization time, to allow
+ * for proper memory allocation.
+ *
+ * The available flags are specified by VPX_CODEC_USE_* defines.
+ */
#define VPX_CODEC_USE_PSNR 0x10000 /**< Calculate PSNR on each frame */
#define VPX_CODEC_USE_OUTPUT_PARTITION 0x20000 /**< Make the encoder output one
partition at a time. */
#define VPX_CODEC_USE_HIGHBITDEPTH 0x40000 /**< Use high bitdepth */
- /*!\brief Generic fixed size buffer structure
- *
- * This structure is able to hold a reference to any fixed size buffer.
- */
- typedef struct vpx_fixed_buf {
+/*!\brief Generic fixed size buffer structure
+ *
+ * This structure is able to hold a reference to any fixed size buffer.
+ */
+typedef struct vpx_fixed_buf {
void *buf; /**< Pointer to the data */
size_t sz; /**< Length of the buffer, in chars */
- } vpx_fixed_buf_t; /**< alias for struct vpx_fixed_buf */
+} vpx_fixed_buf_t; /**< alias for struct vpx_fixed_buf */
- /*!\brief Time Stamp Type
- *
- * An integer, which when multiplied by the stream's time base, provides
- * the absolute time of a sample.
- */
- typedef int64_t vpx_codec_pts_t;
+/*!\brief Time Stamp Type
+ *
+ * An integer, which when multiplied by the stream's time base, provides
+ * the absolute time of a sample.
+ */
+typedef int64_t vpx_codec_pts_t;
- /*!\brief Compressed Frame Flags
- *
- * This type represents a bitfield containing information about a compressed
- * frame that may be useful to an application. The most significant 16 bits
- * can be used by an algorithm to provide additional detail, for example to
- * support frame types that are codec specific (MPEG-1 D-frames for example)
- */
- typedef uint32_t vpx_codec_frame_flags_t;
+/*!\brief Compressed Frame Flags
+ *
+ * This type represents a bitfield containing information about a compressed
+ * frame that may be useful to an application. The most significant 16 bits
+ * can be used by an algorithm to provide additional detail, for example to
+ * support frame types that are codec specific (MPEG-1 D-frames for example)
+ */
+typedef uint32_t vpx_codec_frame_flags_t;
#define VPX_FRAME_IS_KEY 0x1 /**< frame is the start of a GOP */
#define VPX_FRAME_IS_DROPPABLE 0x2 /**< frame can be dropped without affecting
the stream (no future frame depends on
@@ -132,13 +132,13 @@ extern "C" {
#define VPX_FRAME_IS_FRAGMENT 0x8 /**< this is a fragment of the encoded
frame */
- /*!\brief Error Resilient flags
- *
- * These flags define which error resilient features to enable in the
- * encoder. The flags are specified through the
- * vpx_codec_enc_cfg::g_error_resilient variable.
- */
- typedef uint32_t vpx_codec_er_flags_t;
+/*!\brief Error Resilient flags
+ *
+ * These flags define which error resilient features to enable in the
+ * encoder. The flags are specified through the
+ * vpx_codec_enc_cfg::g_error_resilient variable.
+ */
+typedef uint32_t vpx_codec_er_flags_t;
#define VPX_ERROR_RESILIENT_DEFAULT 0x1 /**< Improve resiliency against
losses of whole frames */
#define VPX_ERROR_RESILIENT_PARTITIONS 0x2 /**< The frame partitions are
@@ -150,13 +150,13 @@ extern "C" {
predicition is still done over
the partition boundary. */
- /*!\brief Encoder output packet variants
- *
- * This enumeration lists the different kinds of data packets that can be
- * returned by calls to vpx_codec_get_cx_data(). Algorithms \ref MAY
- * extend this list to provide additional functionality.
- */
- enum vpx_codec_cx_pkt_kind {
+/*!\brief Encoder output packet variants
+ *
+ * This enumeration lists the different kinds of data packets that can be
+ * returned by calls to vpx_codec_get_cx_data(). Algorithms \ref MAY
+ * extend this list to provide additional functionality.
+ */
+enum vpx_codec_cx_pkt_kind {
VPX_CODEC_CX_FRAME_PKT, /**< Compressed video frame */
VPX_CODEC_STATS_PKT, /**< Two-pass statistics for this frame */
VPX_CODEC_FPMB_STATS_PKT, /**< first pass mb statistics for this frame */
@@ -168,134 +168,134 @@ extern "C" {
VPX_CODEC_SPATIAL_SVC_LAYER_PSNR, /**< PSNR for each layer in this frame*/
#endif
VPX_CODEC_CUSTOM_PKT = 256 /**< Algorithm extensions */
- };
+};
- /*!\brief Encoder output packet
- *
- * This structure contains the different kinds of output data the encoder
- * may produce while compressing a frame.
- */
- typedef struct vpx_codec_cx_pkt {
+/*!\brief Encoder output packet
+ *
+ * This structure contains the different kinds of output data the encoder
+ * may produce while compressing a frame.
+ */
+typedef struct vpx_codec_cx_pkt {
enum vpx_codec_cx_pkt_kind kind; /**< packet variant */
union {
- struct {
- void *buf; /**< compressed data buffer */
- size_t sz; /**< length of compressed data */
- vpx_codec_pts_t pts; /**< time stamp to show frame
+ struct {
+ void *buf; /**< compressed data buffer */
+ size_t sz; /**< length of compressed data */
+ vpx_codec_pts_t pts; /**< time stamp to show frame
(in timebase units) */
- unsigned long duration; /**< duration to show frame
+ unsigned long duration; /**< duration to show frame
(in timebase units) */
- vpx_codec_frame_flags_t flags; /**< flags for this frame */
- int partition_id; /**< the partition id
+ vpx_codec_frame_flags_t flags; /**< flags for this frame */
+ int partition_id; /**< the partition id
defines the decoding order
of the partitions. Only
applicable when "output partition"
mode is enabled. First partition
has id 0.*/
- } frame; /**< data for compressed frame packet */
- vpx_fixed_buf_t twopass_stats; /**< data for two-pass packet */
- vpx_fixed_buf_t firstpass_mb_stats; /**< first pass mb packet */
- struct vpx_psnr_pkt {
- unsigned int samples[4]; /**< Number of samples, total/y/u/v */
- uint64_t sse[4]; /**< sum squared error, total/y/u/v */
- double psnr[4]; /**< PSNR, total/y/u/v */
- } psnr; /**< data for PSNR packet */
- vpx_fixed_buf_t raw; /**< data for arbitrary packets */
- // TODO(minghai): This is for testing purporses. The released library
- // can't depend on vpx_config.h
+ } frame; /**< data for compressed frame packet */
+ vpx_fixed_buf_t twopass_stats; /**< data for two-pass packet */
+ vpx_fixed_buf_t firstpass_mb_stats; /**< first pass mb packet */
+ struct vpx_psnr_pkt {
+ unsigned int samples[4]; /**< Number of samples, total/y/u/v */
+ uint64_t sse[4]; /**< sum squared error, total/y/u/v */
+ double psnr[4]; /**< PSNR, total/y/u/v */
+ } psnr; /**< data for PSNR packet */
+ vpx_fixed_buf_t raw; /**< data for arbitrary packets */
+ // TODO(minghai): This is for testing purporses. The released library
+ // can't depend on vpx_config.h
#if defined(CONFIG_SPATIAL_SVC) && CONFIG_SPATIAL_SVC
- size_t layer_sizes[VPX_SS_MAX_LAYERS];
- struct vpx_psnr_pkt layer_psnr[VPX_SS_MAX_LAYERS];
+ size_t layer_sizes[VPX_SS_MAX_LAYERS];
+ struct vpx_psnr_pkt layer_psnr[VPX_SS_MAX_LAYERS];
#endif
- /* This packet size is fixed to allow codecs to extend this
- * interface without having to manage storage for raw packets,
- * i.e., if it's smaller than 128 bytes, you can store in the
- * packet list directly.
- */
- char pad[128 - sizeof(enum vpx_codec_cx_pkt_kind)]; /**< fixed sz */
+ /* This packet size is fixed to allow codecs to extend this
+ * interface without having to manage storage for raw packets,
+ * i.e., if it's smaller than 128 bytes, you can store in the
+ * packet list directly.
+ */
+ char pad[128 - sizeof(enum vpx_codec_cx_pkt_kind)]; /**< fixed sz */
} data; /**< packet data */
- } vpx_codec_cx_pkt_t; /**< alias for struct vpx_codec_cx_pkt */
+} vpx_codec_cx_pkt_t; /**< alias for struct vpx_codec_cx_pkt */
- /*!\brief Encoder return output buffer callback
- *
- * This callback function, when registered, returns with packets when each
- * spatial layer is encoded.
- */
- // putting the definitions here for now. (agrange: find if there
- // is a better place for this)
- typedef void (* vpx_codec_enc_output_cx_pkt_cb_fn_t)(vpx_codec_cx_pkt_t *pkt,
- void *user_data);
+/*!\brief Encoder return output buffer callback
+ *
+ * This callback function, when registered, returns with packets when each
+ * spatial layer is encoded.
+ */
+// putting the definitions here for now. (agrange: find if there
+// is a better place for this)
+typedef void (* vpx_codec_enc_output_cx_pkt_cb_fn_t)(vpx_codec_cx_pkt_t *pkt,
+ void *user_data);
- /*!\brief Callback function pointer / user data pair storage */
- typedef struct vpx_codec_enc_output_cx_cb_pair {
+/*!\brief Callback function pointer / user data pair storage */
+typedef struct vpx_codec_enc_output_cx_cb_pair {
vpx_codec_enc_output_cx_pkt_cb_fn_t output_cx_pkt; /**< Callback function */
void *user_priv; /**< Pointer to private data */
- } vpx_codec_priv_output_cx_pkt_cb_pair_t;
+} vpx_codec_priv_output_cx_pkt_cb_pair_t;
- /*!\brief Rational Number
- *
- * This structure holds a fractional value.
- */
- typedef struct vpx_rational {
+/*!\brief Rational Number
+ *
+ * This structure holds a fractional value.
+ */
+typedef struct vpx_rational {
int num; /**< fraction numerator */
int den; /**< fraction denominator */
- } vpx_rational_t; /**< alias for struct vpx_rational */
+} vpx_rational_t; /**< alias for struct vpx_rational */
- /*!\brief Multi-pass Encoding Pass */
- enum vpx_enc_pass {
+/*!\brief Multi-pass Encoding Pass */
+enum vpx_enc_pass {
VPX_RC_ONE_PASS, /**< Single pass mode */
VPX_RC_FIRST_PASS, /**< First pass of multi-pass mode */
VPX_RC_LAST_PASS /**< Final pass of multi-pass mode */
- };
+};
- /*!\brief Rate control mode */
- enum vpx_rc_mode {
+/*!\brief Rate control mode */
+enum vpx_rc_mode {
VPX_VBR, /**< Variable Bit Rate (VBR) mode */
VPX_CBR, /**< Constant Bit Rate (CBR) mode */
VPX_CQ, /**< Constrained Quality (CQ) mode */
VPX_Q, /**< Constant Quality (Q) mode */
- };
-
-
- /*!\brief Keyframe placement mode.
- *
- * This enumeration determines whether keyframes are placed automatically by
- * the encoder or whether this behavior is disabled. Older releases of this
- * SDK were implemented such that VPX_KF_FIXED meant keyframes were disabled.
- * This name is confusing for this behavior, so the new symbols to be used
- * are VPX_KF_AUTO and VPX_KF_DISABLED.
- */
- enum vpx_kf_mode {
+};
+
+
+/*!\brief Keyframe placement mode.
+ *
+ * This enumeration determines whether keyframes are placed automatically by
+ * the encoder or whether this behavior is disabled. Older releases of this
+ * SDK were implemented such that VPX_KF_FIXED meant keyframes were disabled.
+ * This name is confusing for this behavior, so the new symbols to be used
+ * are VPX_KF_AUTO and VPX_KF_DISABLED.
+ */
+enum vpx_kf_mode {
VPX_KF_FIXED, /**< deprecated, implies VPX_KF_DISABLED */
VPX_KF_AUTO, /**< Encoder determines optimal placement automatically */
VPX_KF_DISABLED = 0 /**< Encoder does not place keyframes. */
- };
+};
- /*!\brief Encoded Frame Flags
- *
- * This type indicates a bitfield to be passed to vpx_codec_encode(), defining
- * per-frame boolean values. By convention, bits common to all codecs will be
- * named VPX_EFLAG_*, and bits specific to an algorithm will be named
- * /algo/_eflag_*. The lower order 16 bits are reserved for common use.
- */
- typedef long vpx_enc_frame_flags_t;
+/*!\brief Encoded Frame Flags
+ *
+ * This type indicates a bitfield to be passed to vpx_codec_encode(), defining
+ * per-frame boolean values. By convention, bits common to all codecs will be
+ * named VPX_EFLAG_*, and bits specific to an algorithm will be named
+ * /algo/_eflag_*. The lower order 16 bits are reserved for common use.
+ */
+typedef long vpx_enc_frame_flags_t;
#define VPX_EFLAG_FORCE_KF (1<<0) /**< Force this frame to be a keyframe */
- /*!\brief Encoder configuration structure
- *
- * This structure contains the encoder settings that have common representations
- * across all codecs. This doesn't imply that all codecs support all features,
- * however.
- */
- typedef struct vpx_codec_enc_cfg {
+/*!\brief Encoder configuration structure
+ *
+ * This structure contains the encoder settings that have common representations
+ * across all codecs. This doesn't imply that all codecs support all features,
+ * however.
+ */
+typedef struct vpx_codec_enc_cfg {
/*
* generic settings (g)
*/
@@ -729,150 +729,150 @@ extern "C" {
* ts_periodicity=8, then ts_layer_id = (0,1,0,1,0,1,0,1).
*/
unsigned int ts_layer_id[VPX_TS_MAX_PERIODICITY];
- } vpx_codec_enc_cfg_t; /**< alias for struct vpx_codec_enc_cfg */
-
- /*!\brief vp9 svc extra configure parameters
- *
- * This defines max/min quantizers and scale factors for each layer
- *
- */
- typedef struct vpx_svc_parameters {
+} vpx_codec_enc_cfg_t; /**< alias for struct vpx_codec_enc_cfg */
+
+/*!\brief vp9 svc extra configure parameters
+ *
+ * This defines max/min quantizers and scale factors for each layer
+ *
+ */
+typedef struct vpx_svc_parameters {
int max_quantizers[VPX_SS_MAX_LAYERS]; /**< Max Q for each layer */
int min_quantizers[VPX_SS_MAX_LAYERS]; /**< Min Q for each layer */
int scaling_factor_num[VPX_SS_MAX_LAYERS]; /**< Scaling factor-numerator*/
int scaling_factor_den[VPX_SS_MAX_LAYERS]; /**< Scaling factor-denominator*/
- } vpx_svc_extra_cfg_t;
-
-
- /*!\brief Initialize an encoder instance
- *
- * Initializes a encoder context using the given interface. Applications
- * should call the vpx_codec_enc_init convenience macro instead of this
- * function directly, to ensure that the ABI version number parameter
- * is properly initialized.
- *
- * If the library was configured with --disable-multithread, this call
- * is not thread safe and should be guarded with a lock if being used
- * in a multithreaded context.
- *
- * \param[in] ctx Pointer to this instance's context.
- * \param[in] iface Pointer to the algorithm interface to use.
- * \param[in] cfg Configuration to use, if known. May be NULL.
- * \param[in] flags Bitfield of VPX_CODEC_USE_* flags
- * \param[in] ver ABI version number. Must be set to
- * VPX_ENCODER_ABI_VERSION
- * \retval #VPX_CODEC_OK
- * The decoder algorithm initialized.
- * \retval #VPX_CODEC_MEM_ERROR
- * Memory allocation failed.
- */
- vpx_codec_err_t vpx_codec_enc_init_ver(vpx_codec_ctx_t *ctx,
- vpx_codec_iface_t *iface,
- const vpx_codec_enc_cfg_t *cfg,
- vpx_codec_flags_t flags,
- int ver);
-
-
- /*!\brief Convenience macro for vpx_codec_enc_init_ver()
- *
- * Ensures the ABI version parameter is properly set.
- */
+} vpx_svc_extra_cfg_t;
+
+
+/*!\brief Initialize an encoder instance
+ *
+ * Initializes a encoder context using the given interface. Applications
+ * should call the vpx_codec_enc_init convenience macro instead of this
+ * function directly, to ensure that the ABI version number parameter
+ * is properly initialized.
+ *
+ * If the library was configured with --disable-multithread, this call
+ * is not thread safe and should be guarded with a lock if being used
+ * in a multithreaded context.
+ *
+ * \param[in] ctx Pointer to this instance's context.
+ * \param[in] iface Pointer to the algorithm interface to use.
+ * \param[in] cfg Configuration to use, if known. May be NULL.
+ * \param[in] flags Bitfield of VPX_CODEC_USE_* flags
+ * \param[in] ver ABI version number. Must be set to
+ * VPX_ENCODER_ABI_VERSION
+ * \retval #VPX_CODEC_OK
+ * The decoder algorithm initialized.
+ * \retval #VPX_CODEC_MEM_ERROR
+ * Memory allocation failed.
+ */
+vpx_codec_err_t vpx_codec_enc_init_ver(vpx_codec_ctx_t *ctx,
+ vpx_codec_iface_t *iface,
+ const vpx_codec_enc_cfg_t *cfg,
+ vpx_codec_flags_t flags,
+ int ver);
+
+
+/*!\brief Convenience macro for vpx_codec_enc_init_ver()
+ *
+ * Ensures the ABI version parameter is properly set.
+ */
#define vpx_codec_enc_init(ctx, iface, cfg, flags) \
vpx_codec_enc_init_ver(ctx, iface, cfg, flags, VPX_ENCODER_ABI_VERSION)
- /*!\brief Initialize multi-encoder instance
- *
- * Initializes multi-encoder context using the given interface.
- * Applications should call the vpx_codec_enc_init_multi convenience macro
- * instead of this function directly, to ensure that the ABI version number
- * parameter is properly initialized.
- *
- * \param[in] ctx Pointer to this instance's context.
- * \param[in] iface Pointer to the algorithm interface to use.
- * \param[in] cfg Configuration to use, if known. May be NULL.
- * \param[in] num_enc Total number of encoders.
- * \param[in] flags Bitfield of VPX_CODEC_USE_* flags
- * \param[in] dsf Pointer to down-sampling factors.
- * \param[in] ver ABI version number. Must be set to
- * VPX_ENCODER_ABI_VERSION
- * \retval #VPX_CODEC_OK
- * The decoder algorithm initialized.
- * \retval #VPX_CODEC_MEM_ERROR
- * Memory allocation failed.
- */
- vpx_codec_err_t vpx_codec_enc_init_multi_ver(vpx_codec_ctx_t *ctx,
- vpx_codec_iface_t *iface,
- vpx_codec_enc_cfg_t *cfg,
- int num_enc,
- vpx_codec_flags_t flags,
- vpx_rational_t *dsf,
- int ver);
-
-
- /*!\brief Convenience macro for vpx_codec_enc_init_multi_ver()
- *
- * Ensures the ABI version parameter is properly set.
- */
+/*!\brief Initialize multi-encoder instance
+ *
+ * Initializes multi-encoder context using the given interface.
+ * Applications should call the vpx_codec_enc_init_multi convenience macro
+ * instead of this function directly, to ensure that the ABI version number
+ * parameter is properly initialized.
+ *
+ * \param[in] ctx Pointer to this instance's context.
+ * \param[in] iface Pointer to the algorithm interface to use.
+ * \param[in] cfg Configuration to use, if known. May be NULL.
+ * \param[in] num_enc Total number of encoders.
+ * \param[in] flags Bitfield of VPX_CODEC_USE_* flags
+ * \param[in] dsf Pointer to down-sampling factors.
+ * \param[in] ver ABI version number. Must be set to
+ * VPX_ENCODER_ABI_VERSION
+ * \retval #VPX_CODEC_OK
+ * The decoder algorithm initialized.
+ * \retval #VPX_CODEC_MEM_ERROR
+ * Memory allocation failed.
+ */
+vpx_codec_err_t vpx_codec_enc_init_multi_ver(vpx_codec_ctx_t *ctx,
+ vpx_codec_iface_t *iface,
+ vpx_codec_enc_cfg_t *cfg,
+ int num_enc,
+ vpx_codec_flags_t flags,
+ vpx_rational_t *dsf,
+ int ver);
+
+
+/*!\brief Convenience macro for vpx_codec_enc_init_multi_ver()
+ *
+ * Ensures the ABI version parameter is properly set.
+ */
#define vpx_codec_enc_init_multi(ctx, iface, cfg, num_enc, flags, dsf) \
vpx_codec_enc_init_multi_ver(ctx, iface, cfg, num_enc, flags, dsf, \
VPX_ENCODER_ABI_VERSION)
- /*!\brief Get a default configuration
- *
- * Initializes a encoder configuration structure with default values. Supports
- * the notion of "usages" so that an algorithm may offer different default
- * settings depending on the user's intended goal. This function \ref SHOULD
- * be called by all applications to initialize the configuration structure
- * before specializing the configuration with application specific values.
- *
- * \param[in] iface Pointer to the algorithm interface to use.
- * \param[out] cfg Configuration buffer to populate
- * \param[in] usage End usage. Set to 0 or use codec specific values.
- *
- * \retval #VPX_CODEC_OK
- * The configuration was populated.
- * \retval #VPX_CODEC_INCAPABLE
- * Interface is not an encoder interface.
- * \retval #VPX_CODEC_INVALID_PARAM
- * A parameter was NULL, or the usage value was not recognized.
- */
- vpx_codec_err_t vpx_codec_enc_config_default(vpx_codec_iface_t *iface,
- vpx_codec_enc_cfg_t *cfg,
- unsigned int usage);
-
-
- /*!\brief Set or change configuration
- *
- * Reconfigures an encoder instance according to the given configuration.
- *
- * \param[in] ctx Pointer to this instance's context
- * \param[in] cfg Configuration buffer to use
- *
- * \retval #VPX_CODEC_OK
- * The configuration was populated.
- * \retval #VPX_CODEC_INCAPABLE
- * Interface is not an encoder interface.
- * \retval #VPX_CODEC_INVALID_PARAM
- * A parameter was NULL, or the usage value was not recognized.
- */
- vpx_codec_err_t vpx_codec_enc_config_set(vpx_codec_ctx_t *ctx,
- const vpx_codec_enc_cfg_t *cfg);
-
-
- /*!\brief Get global stream headers
- *
- * Retrieves a stream level global header packet, if supported by the codec.
- *
- * \param[in] ctx Pointer to this instance's context
- *
- * \retval NULL
- * Encoder does not support global header
- * \retval Non-NULL
- * Pointer to buffer containing global header packet
- */
- vpx_fixed_buf_t *vpx_codec_get_global_headers(vpx_codec_ctx_t *ctx);
+/*!\brief Get a default configuration
+ *
+ * Initializes a encoder configuration structure with default values. Supports
+ * the notion of "usages" so that an algorithm may offer different default
+ * settings depending on the user's intended goal. This function \ref SHOULD
+ * be called by all applications to initialize the configuration structure
+ * before specializing the configuration with application specific values.
+ *
+ * \param[in] iface Pointer to the algorithm interface to use.
+ * \param[out] cfg Configuration buffer to populate
+ * \param[in] usage End usage. Set to 0 or use codec specific values.
+ *
+ * \retval #VPX_CODEC_OK
+ * The configuration was populated.
+ * \retval #VPX_CODEC_INCAPABLE
+ * Interface is not an encoder interface.
+ * \retval #VPX_CODEC_INVALID_PARAM
+ * A parameter was NULL, or the usage value was not recognized.
+ */
+vpx_codec_err_t vpx_codec_enc_config_default(vpx_codec_iface_t *iface,
+ vpx_codec_enc_cfg_t *cfg,
+ unsigned int usage);
+
+
+/*!\brief Set or change configuration
+ *
+ * Reconfigures an encoder instance according to the given configuration.
+ *
+ * \param[in] ctx Pointer to this instance's context
+ * \param[in] cfg Configuration buffer to use
+ *
+ * \retval #VPX_CODEC_OK
+ * The configuration was populated.
+ * \retval #VPX_CODEC_INCAPABLE
+ * Interface is not an encoder interface.
+ * \retval #VPX_CODEC_INVALID_PARAM
+ * A parameter was NULL, or the usage value was not recognized.
+ */
+vpx_codec_err_t vpx_codec_enc_config_set(vpx_codec_ctx_t *ctx,
+ const vpx_codec_enc_cfg_t *cfg);
+
+
+/*!\brief Get global stream headers
+ *
+ * Retrieves a stream level global header packet, if supported by the codec.
+ *
+ * \param[in] ctx Pointer to this instance's context
+ *
+ * \retval NULL
+ * Encoder does not support global header
+ * \retval Non-NULL
+ * Pointer to buffer containing global header packet
+ */
+vpx_fixed_buf_t *vpx_codec_get_global_headers(vpx_codec_ctx_t *ctx);
#define VPX_DL_REALTIME (1) /**< deadline parameter analogous to
@@ -881,141 +881,141 @@ extern "C" {
* VPx GOOD QUALITY mode. */
#define VPX_DL_BEST_QUALITY (0) /**< deadline parameter analogous to
* VPx BEST QUALITY mode. */
- /*!\brief Encode a frame
- *
- * Encodes a video frame at the given "presentation time." The presentation
- * time stamp (PTS) \ref MUST be strictly increasing.
- *
- * The encoder supports the notion of a soft real-time deadline. Given a
- * non-zero value to the deadline parameter, the encoder will make a "best
- * effort" guarantee to return before the given time slice expires. It is
- * implicit that limiting the available time to encode will degrade the
- * output quality. The encoder can be given an unlimited time to produce the
- * best possible frame by specifying a deadline of '0'. This deadline
- * supercedes the VPx notion of "best quality, good quality, realtime".
- * Applications that wish to map these former settings to the new deadline
- * based system can use the symbols #VPX_DL_REALTIME, #VPX_DL_GOOD_QUALITY,
- * and #VPX_DL_BEST_QUALITY.
- *
- * When the last frame has been passed to the encoder, this function should
- * continue to be called, with the img parameter set to NULL. This will
- * signal the end-of-stream condition to the encoder and allow it to encode
- * any held buffers. Encoding is complete when vpx_codec_encode() is called
- * and vpx_codec_get_cx_data() returns no data.
- *
- * \param[in] ctx Pointer to this instance's context
- * \param[in] img Image data to encode, NULL to flush.
- * \param[in] pts Presentation time stamp, in timebase units.
- * \param[in] duration Duration to show frame, in timebase units.
- * \param[in] flags Flags to use for encoding this frame.
- * \param[in] deadline Time to spend encoding, in microseconds. (0=infinite)
- *
- * \retval #VPX_CODEC_OK
- * The configuration was populated.
- * \retval #VPX_CODEC_INCAPABLE
- * Interface is not an encoder interface.
- * \retval #VPX_CODEC_INVALID_PARAM
- * A parameter was NULL, the image format is unsupported, etc.
- */
- vpx_codec_err_t vpx_codec_encode(vpx_codec_ctx_t *ctx,
- const vpx_image_t *img,
- vpx_codec_pts_t pts,
- unsigned long duration,
- vpx_enc_frame_flags_t flags,
- unsigned long deadline);
-
- /*!\brief Set compressed data output buffer
- *
- * Sets the buffer that the codec should output the compressed data
- * into. This call effectively sets the buffer pointer returned in the
- * next VPX_CODEC_CX_FRAME_PKT packet. Subsequent packets will be
- * appended into this buffer. The buffer is preserved across frames,
- * so applications must periodically call this function after flushing
- * the accumulated compressed data to disk or to the network to reset
- * the pointer to the buffer's head.
- *
- * `pad_before` bytes will be skipped before writing the compressed
- * data, and `pad_after` bytes will be appended to the packet. The size
- * of the packet will be the sum of the size of the actual compressed
- * data, pad_before, and pad_after. The padding bytes will be preserved
- * (not overwritten).
- *
- * Note that calling this function does not guarantee that the returned
- * compressed data will be placed into the specified buffer. In the
- * event that the encoded data will not fit into the buffer provided,
- * the returned packet \ref MAY point to an internal buffer, as it would
- * if this call were never used. In this event, the output packet will
- * NOT have any padding, and the application must free space and copy it
- * to the proper place. This is of particular note in configurations
- * that may output multiple packets for a single encoded frame (e.g., lagged
- * encoding) or if the application does not reset the buffer periodically.
- *
- * Applications may restore the default behavior of the codec providing
- * the compressed data buffer by calling this function with a NULL
- * buffer.
- *
- * Applications \ref MUSTNOT call this function during iteration of
- * vpx_codec_get_cx_data().
- *
- * \param[in] ctx Pointer to this instance's context
- * \param[in] buf Buffer to store compressed data into
- * \param[in] pad_before Bytes to skip before writing compressed data
- * \param[in] pad_after Bytes to skip after writing compressed data
- *
- * \retval #VPX_CODEC_OK
- * The buffer was set successfully.
- * \retval #VPX_CODEC_INVALID_PARAM
- * A parameter was NULL, the image format is unsupported, etc.
- */
- vpx_codec_err_t vpx_codec_set_cx_data_buf(vpx_codec_ctx_t *ctx,
- const vpx_fixed_buf_t *buf,
- unsigned int pad_before,
- unsigned int pad_after);
-
-
- /*!\brief Encoded data iterator
- *
- * Iterates over a list of data packets to be passed from the encoder to the
- * application. The different kinds of packets available are enumerated in
- * #vpx_codec_cx_pkt_kind.
- *
- * #VPX_CODEC_CX_FRAME_PKT packets should be passed to the application's
- * muxer. Multiple compressed frames may be in the list.
- * #VPX_CODEC_STATS_PKT packets should be appended to a global buffer.
- *
- * The application \ref MUST silently ignore any packet kinds that it does
- * not recognize or support.
- *
- * The data buffers returned from this function are only guaranteed to be
- * valid until the application makes another call to any vpx_codec_* function.
- *
- * \param[in] ctx Pointer to this instance's context
- * \param[in,out] iter Iterator storage, initialized to NULL
- *
- * \return Returns a pointer to an output data packet (compressed frame data,
- * two-pass statistics, etc.) or NULL to signal end-of-list.
- *
- */
- const vpx_codec_cx_pkt_t *vpx_codec_get_cx_data(vpx_codec_ctx_t *ctx,
- vpx_codec_iter_t *iter);
-
-
- /*!\brief Get Preview Frame
- *
- * Returns an image that can be used as a preview. Shows the image as it would
- * exist at the decompressor. The application \ref MUST NOT write into this
- * image buffer.
- *
- * \param[in] ctx Pointer to this instance's context
- *
- * \return Returns a pointer to a preview image, or NULL if no image is
- * available.
- *
- */
- const vpx_image_t *vpx_codec_get_preview_frame(vpx_codec_ctx_t *ctx);
-
-
- /*!@} - end defgroup encoder*/
+/*!\brief Encode a frame
+ *
+ * Encodes a video frame at the given "presentation time." The presentation
+ * time stamp (PTS) \ref MUST be strictly increasing.
+ *
+ * The encoder supports the notion of a soft real-time deadline. Given a
+ * non-zero value to the deadline parameter, the encoder will make a "best
+ * effort" guarantee to return before the given time slice expires. It is
+ * implicit that limiting the available time to encode will degrade the
+ * output quality. The encoder can be given an unlimited time to produce the
+ * best possible frame by specifying a deadline of '0'. This deadline
+ * supercedes the VPx notion of "best quality, good quality, realtime".
+ * Applications that wish to map these former settings to the new deadline
+ * based system can use the symbols #VPX_DL_REALTIME, #VPX_DL_GOOD_QUALITY,
+ * and #VPX_DL_BEST_QUALITY.
+ *
+ * When the last frame has been passed to the encoder, this function should
+ * continue to be called, with the img parameter set to NULL. This will
+ * signal the end-of-stream condition to the encoder and allow it to encode
+ * any held buffers. Encoding is complete when vpx_codec_encode() is called
+ * and vpx_codec_get_cx_data() returns no data.
+ *
+ * \param[in] ctx Pointer to this instance's context
+ * \param[in] img Image data to encode, NULL to flush.
+ * \param[in] pts Presentation time stamp, in timebase units.
+ * \param[in] duration Duration to show frame, in timebase units.
+ * \param[in] flags Flags to use for encoding this frame.
+ * \param[in] deadline Time to spend encoding, in microseconds. (0=infinite)
+ *
+ * \retval #VPX_CODEC_OK
+ * The configuration was populated.
+ * \retval #VPX_CODEC_INCAPABLE
+ * Interface is not an encoder interface.
+ * \retval #VPX_CODEC_INVALID_PARAM
+ * A parameter was NULL, the image format is unsupported, etc.
+ */
+vpx_codec_err_t vpx_codec_encode(vpx_codec_ctx_t *ctx,
+ const vpx_image_t *img,
+ vpx_codec_pts_t pts,
+ unsigned long duration,
+ vpx_enc_frame_flags_t flags,
+ unsigned long deadline);
+
+/*!\brief Set compressed data output buffer
+ *
+ * Sets the buffer that the codec should output the compressed data
+ * into. This call effectively sets the buffer pointer returned in the
+ * next VPX_CODEC_CX_FRAME_PKT packet. Subsequent packets will be
+ * appended into this buffer. The buffer is preserved across frames,
+ * so applications must periodically call this function after flushing
+ * the accumulated compressed data to disk or to the network to reset
+ * the pointer to the buffer's head.
+ *
+ * `pad_before` bytes will be skipped before writing the compressed
+ * data, and `pad_after` bytes will be appended to the packet. The size
+ * of the packet will be the sum of the size of the actual compressed
+ * data, pad_before, and pad_after. The padding bytes will be preserved
+ * (not overwritten).
+ *
+ * Note that calling this function does not guarantee that the returned
+ * compressed data will be placed into the specified buffer. In the
+ * event that the encoded data will not fit into the buffer provided,
+ * the returned packet \ref MAY point to an internal buffer, as it would
+ * if this call were never used. In this event, the output packet will
+ * NOT have any padding, and the application must free space and copy it
+ * to the proper place. This is of particular note in configurations
+ * that may output multiple packets for a single encoded frame (e.g., lagged
+ * encoding) or if the application does not reset the buffer periodically.
+ *
+ * Applications may restore the default behavior of the codec providing
+ * the compressed data buffer by calling this function with a NULL
+ * buffer.
+ *
+ * Applications \ref MUSTNOT call this function during iteration of
+ * vpx_codec_get_cx_data().
+ *
+ * \param[in] ctx Pointer to this instance's context
+ * \param[in] buf Buffer to store compressed data into
+ * \param[in] pad_before Bytes to skip before writing compressed data
+ * \param[in] pad_after Bytes to skip after writing compressed data
+ *
+ * \retval #VPX_CODEC_OK
+ * The buffer was set successfully.
+ * \retval #VPX_CODEC_INVALID_PARAM
+ * A parameter was NULL, the image format is unsupported, etc.
+ */
+vpx_codec_err_t vpx_codec_set_cx_data_buf(vpx_codec_ctx_t *ctx,
+ const vpx_fixed_buf_t *buf,
+ unsigned int pad_before,
+ unsigned int pad_after);
+
+
+/*!\brief Encoded data iterator
+ *
+ * Iterates over a list of data packets to be passed from the encoder to the
+ * application. The different kinds of packets available are enumerated in
+ * #vpx_codec_cx_pkt_kind.
+ *
+ * #VPX_CODEC_CX_FRAME_PKT packets should be passed to the application's
+ * muxer. Multiple compressed frames may be in the list.
+ * #VPX_CODEC_STATS_PKT packets should be appended to a global buffer.
+ *
+ * The application \ref MUST silently ignore any packet kinds that it does
+ * not recognize or support.
+ *
+ * The data buffers returned from this function are only guaranteed to be
+ * valid until the application makes another call to any vpx_codec_* function.
+ *
+ * \param[in] ctx Pointer to this instance's context
+ * \param[in,out] iter Iterator storage, initialized to NULL
+ *
+ * \return Returns a pointer to an output data packet (compressed frame data,
+ * two-pass statistics, etc.) or NULL to signal end-of-list.
+ *
+ */
+const vpx_codec_cx_pkt_t *vpx_codec_get_cx_data(vpx_codec_ctx_t *ctx,
+ vpx_codec_iter_t *iter);
+
+
+/*!\brief Get Preview Frame
+ *
+ * Returns an image that can be used as a preview. Shows the image as it would
+ * exist at the decompressor. The application \ref MUST NOT write into this
+ * image buffer.
+ *
+ * \param[in] ctx Pointer to this instance's context
+ *
+ * \return Returns a pointer to a preview image, or NULL if no image is
+ * available.
+ *
+ */
+const vpx_image_t *vpx_codec_get_preview_frame(vpx_codec_ctx_t *ctx);
+
+
+/*!@} - end defgroup encoder*/
#ifdef __cplusplus
}
#endif
diff --git a/thirdparties/iphone/include/vpx/vpx_frame_buffer.h b/thirdparties/iphone/include/vpx/vpx_frame_buffer.h
index 41038b1..83b499e 100755
--- a/thirdparties/iphone/include/vpx/vpx_frame_buffer.h
+++ b/thirdparties/iphone/include/vpx/vpx_frame_buffer.h
@@ -34,9 +34,9 @@ extern "C" {
* This structure holds allocated frame buffers used by the decoder.
*/
typedef struct vpx_codec_frame_buffer {
- uint8_t *data; /**< Pointer to the data buffer */
- size_t size; /**< Size of data in bytes */
- void *priv; /**< Frame's private data */
+ uint8_t *data; /**< Pointer to the data buffer */
+ size_t size; /**< Size of data in bytes */
+ void *priv; /**< Frame's private data */
} vpx_codec_frame_buffer_t;
/*!\brief get frame buffer callback prototype
diff --git a/thirdparties/iphone/include/vpx/vpx_image.h b/thirdparties/iphone/include/vpx/vpx_image.h
index c06d351..ac5de63 100755
--- a/thirdparties/iphone/include/vpx/vpx_image.h
+++ b/thirdparties/iphone/include/vpx/vpx_image.h
@@ -20,14 +20,14 @@
extern "C" {
#endif
- /*!\brief Current ABI version number
- *
- * \internal
- * If this file is altered in any way that changes the ABI, this value
- * must be bumped. Examples include, but are not limited to, changing
- * types, removing or reassigning enums, adding/removing/rearranging
- * fields to structures
- */
+/*!\brief Current ABI version number
+ *
+ * \internal
+ * If this file is altered in any way that changes the ABI, this value
+ * must be bumped. Examples include, but are not limited to, changing
+ * types, removing or reassigning enums, adding/removing/rearranging
+ * fields to structures
+ */
#define VPX_IMAGE_ABI_VERSION (3) /**<\hideinitializer*/
@@ -36,8 +36,8 @@ extern "C" {
#define VPX_IMG_FMT_HAS_ALPHA 0x400 /**< Image has an alpha channel. */
#define VPX_IMG_FMT_HIGHBITDEPTH 0x800 /**< Image uses 16bit framebuffer. */
- /*!\brief List of supported image formats */
- typedef enum vpx_img_fmt {
+/*!\brief List of supported image formats */
+typedef enum vpx_img_fmt {
VPX_IMG_FMT_NONE,
VPX_IMG_FMT_RGB24, /**< 24 bit per pixel packed RGB */
VPX_IMG_FMT_RGB32, /**< 32 bit per pixel packed 0RGB */
@@ -64,10 +64,11 @@ extern "C" {
VPX_IMG_FMT_I42216 = VPX_IMG_FMT_I422 | VPX_IMG_FMT_HIGHBITDEPTH,
VPX_IMG_FMT_I44416 = VPX_IMG_FMT_I444 | VPX_IMG_FMT_HIGHBITDEPTH,
VPX_IMG_FMT_I44016 = VPX_IMG_FMT_I440 | VPX_IMG_FMT_HIGHBITDEPTH
- } vpx_img_fmt_t; /**< alias for enum vpx_img_fmt */
+}
+vpx_img_fmt_t; /**< alias for enum vpx_img_fmt */
- /*!\brief List of supported color spaces */
- typedef enum vpx_color_space {
+/*!\brief List of supported color spaces */
+typedef enum vpx_color_space {
VPX_CS_UNKNOWN = 0, /**< Unknown */
VPX_CS_BT_601 = 1, /**< BT.601 */
VPX_CS_BT_709 = 2, /**< BT.709 */
@@ -76,10 +77,10 @@ extern "C" {
VPX_CS_BT_2020 = 5, /**< BT.2020 */
VPX_CS_RESERVED = 6, /**< Reserved */
VPX_CS_SRGB = 7 /**< sRGB */
- } vpx_color_space_t; /**< alias for enum vpx_color_space */
+} vpx_color_space_t; /**< alias for enum vpx_color_space */
- /**\brief Image Descriptor */
- typedef struct vpx_image {
+/**\brief Image Descriptor */
+typedef struct vpx_image {
vpx_img_fmt_t fmt; /**< Image Format */
vpx_color_space_t cs; /**< Color Space */
@@ -119,103 +120,103 @@ extern "C" {
int self_allocd; /**< private */
void *fb_priv; /**< Frame buffer data associated with the image. */
- } vpx_image_t; /**< alias for struct vpx_image */
+} vpx_image_t; /**< alias for struct vpx_image */
- /**\brief Representation of a rectangle on a surface */
- typedef struct vpx_image_rect {
+/**\brief Representation of a rectangle on a surface */
+typedef struct vpx_image_rect {
unsigned int x; /**< leftmost column */
unsigned int y; /**< topmost row */
unsigned int w; /**< width */
unsigned int h; /**< height */
- } vpx_image_rect_t; /**< alias for struct vpx_image_rect */
-
- /*!\brief Open a descriptor, allocating storage for the underlying image
- *
- * Returns a descriptor for storing an image of the given format. The
- * storage for the descriptor is allocated on the heap.
- *
- * \param[in] img Pointer to storage for descriptor. If this parameter
- * is NULL, the storage for the descriptor will be
- * allocated on the heap.
- * \param[in] fmt Format for the image
- * \param[in] d_w Width of the image
- * \param[in] d_h Height of the image
- * \param[in] align Alignment, in bytes, of the image buffer and
- * each row in the image(stride).
- *
- * \return Returns a pointer to the initialized image descriptor. If the img
- * parameter is non-null, the value of the img parameter will be
- * returned.
- */
- vpx_image_t *vpx_img_alloc(vpx_image_t *img,
- vpx_img_fmt_t fmt,
- unsigned int d_w,
- unsigned int d_h,
- unsigned int align);
-
- /*!\brief Open a descriptor, using existing storage for the underlying image
- *
- * Returns a descriptor for storing an image of the given format. The
- * storage for descriptor has been allocated elsewhere, and a descriptor is
- * desired to "wrap" that storage.
- *
- * \param[in] img Pointer to storage for descriptor. If this parameter
- * is NULL, the storage for the descriptor will be
- * allocated on the heap.
- * \param[in] fmt Format for the image
- * \param[in] d_w Width of the image
- * \param[in] d_h Height of the image
- * \param[in] align Alignment, in bytes, of each row in the image.
- * \param[in] img_data Storage to use for the image
- *
- * \return Returns a pointer to the initialized image descriptor. If the img
- * parameter is non-null, the value of the img parameter will be
- * returned.
- */
- vpx_image_t *vpx_img_wrap(vpx_image_t *img,
- vpx_img_fmt_t fmt,
- unsigned int d_w,
- unsigned int d_h,
- unsigned int align,
- unsigned char *img_data);
-
-
- /*!\brief Set the rectangle identifying the displayed portion of the image
- *
- * Updates the displayed rectangle (aka viewport) on the image surface to
- * match the specified coordinates and size.
- *
- * \param[in] img Image descriptor
- * \param[in] x leftmost column
- * \param[in] y topmost row
- * \param[in] w width
- * \param[in] h height
- *
- * \return 0 if the requested rectangle is valid, nonzero otherwise.
- */
- int vpx_img_set_rect(vpx_image_t *img,
- unsigned int x,
- unsigned int y,
- unsigned int w,
- unsigned int h);
-
-
- /*!\brief Flip the image vertically (top for bottom)
- *
- * Adjusts the image descriptor's pointers and strides to make the image
- * be referenced upside-down.
- *
- * \param[in] img Image descriptor
- */
- void vpx_img_flip(vpx_image_t *img);
-
- /*!\brief Close an image descriptor
- *
- * Frees all allocated storage associated with an image descriptor.
- *
- * \param[in] img Image descriptor
- */
- void vpx_img_free(vpx_image_t *img);
+} vpx_image_rect_t; /**< alias for struct vpx_image_rect */
+
+/*!\brief Open a descriptor, allocating storage for the underlying image
+ *
+ * Returns a descriptor for storing an image of the given format. The
+ * storage for the descriptor is allocated on the heap.
+ *
+ * \param[in] img Pointer to storage for descriptor. If this parameter
+ * is NULL, the storage for the descriptor will be
+ * allocated on the heap.
+ * \param[in] fmt Format for the image
+ * \param[in] d_w Width of the image
+ * \param[in] d_h Height of the image
+ * \param[in] align Alignment, in bytes, of the image buffer and
+ * each row in the image(stride).
+ *
+ * \return Returns a pointer to the initialized image descriptor. If the img
+ * parameter is non-null, the value of the img parameter will be
+ * returned.
+ */
+vpx_image_t *vpx_img_alloc(vpx_image_t *img,
+ vpx_img_fmt_t fmt,
+ unsigned int d_w,
+ unsigned int d_h,
+ unsigned int align);
+
+/*!\brief Open a descriptor, using existing storage for the underlying image
+ *
+ * Returns a descriptor for storing an image of the given format. The
+ * storage for descriptor has been allocated elsewhere, and a descriptor is
+ * desired to "wrap" that storage.
+ *
+ * \param[in] img Pointer to storage for descriptor. If this parameter
+ * is NULL, the storage for the descriptor will be
+ * allocated on the heap.
+ * \param[in] fmt Format for the image
+ * \param[in] d_w Width of the image
+ * \param[in] d_h Height of the image
+ * \param[in] align Alignment, in bytes, of each row in the image.
+ * \param[in] img_data Storage to use for the image
+ *
+ * \return Returns a pointer to the initialized image descriptor. If the img
+ * parameter is non-null, the value of the img parameter will be
+ * returned.
+ */
+vpx_image_t *vpx_img_wrap(vpx_image_t *img,
+ vpx_img_fmt_t fmt,
+ unsigned int d_w,
+ unsigned int d_h,
+ unsigned int align,
+ unsigned char *img_data);
+
+
+/*!\brief Set the rectangle identifying the displayed portion of the image
+ *
+ * Updates the displayed rectangle (aka viewport) on the image surface to
+ * match the specified coordinates and size.
+ *
+ * \param[in] img Image descriptor
+ * \param[in] x leftmost column
+ * \param[in] y topmost row
+ * \param[in] w width
+ * \param[in] h height
+ *
+ * \return 0 if the requested rectangle is valid, nonzero otherwise.
+ */
+int vpx_img_set_rect(vpx_image_t *img,
+ unsigned int x,
+ unsigned int y,
+ unsigned int w,
+ unsigned int h);
+
+
+/*!\brief Flip the image vertically (top for bottom)
+ *
+ * Adjusts the image descriptor's pointers and strides to make the image
+ * be referenced upside-down.
+ *
+ * \param[in] img Image descriptor
+ */
+void vpx_img_flip(vpx_image_t *img);
+
+/*!\brief Close an image descriptor
+ *
+ * Frees all allocated storage associated with an image descriptor.
+ *
+ * \param[in] img Image descriptor
+ */
+void vpx_img_free(vpx_image_t *img);
#ifdef __cplusplus
} // extern "C"
OpenPOWER on IntegriCloud