This early morning merge should fix --disable-yasm * qatar/master: Clean up #includes in cmdutils.h. g729: Merge g729.h into g729dec.c. 10l: wrap float_interleave functions in HAVE_YASM. Conflicts: libavcodec/g729.h
Unified · Split
| @@ -22,8 +22,10 @@ · 21 unmodified lines | |||
| 22 | #ifndef FFMPEG_CMDUTILS_H | 22 | #ifndef FFMPEG_CMDUTILS_H |
| 23 | #define FFMPEG_CMDUTILS_H | 23 | #define FFMPEG_CMDUTILS_H |
| 24 | 24 | ||
| 25 | #include <inttypes.h> | 25 | #include <stdint.h> |
| 26 | |||
| 26 | #include "libavcodec/avcodec.h" | 27 | #include "libavcodec/avcodec.h" |
| 28 | #include "libavfilter/avfilter.h" | ||
| 27 | #include "libavformat/avformat.h" | 29 | #include "libavformat/avformat.h" |
| 28 | #include "libswscale/swscale.h" | 30 | #include "libswscale/swscale.h" |
| 29 | 31 | ||
| @@ -255,9 +257,6 @@ int read_file(const char *filename, char **bufptr, size_t *size); · 225 unmodified lines | |||
| 255 | FILE *get_preset_file(char *filename, size_t filename_size, | 257 | FILE *get_preset_file(char *filename, size_t filename_size, |
| 256 | const char *preset_name, int is_path, const char *codec_name); | 258 | const char *preset_name, int is_path, const char *codec_name); |
| 257 | 259 | ||
| 258 | #if CONFIG_AVFILTER | ||
| 259 | #include "libavfilter/avfilter.h" | ||
| 260 | |||
| 261 | typedef struct { | 260 | typedef struct { |
| 262 | enum PixelFormat pix_fmt; | 261 | enum PixelFormat pix_fmt; |
| 263 | } FFSinkContext; | 262 | } FFSinkContext; |
| @@ -273,6 +272,4 @@ extern AVFilter ffsink; · 9 unmodified lines | |||
| 273 | int get_filtered_video_frame(AVFilterContext *sink, AVFrame *frame, | 272 | int get_filtered_video_frame(AVFilterContext *sink, AVFrame *frame, |
| 274 | AVFilterBufferRef **picref, AVRational *pts_tb); | 273 | AVFilterBufferRef **picref, AVRational *pts_tb); |
| 275 | 274 | ||
| 276 | #endif /* CONFIG_AVFILTER */ | ||
| 277 | |||
| 278 | #endif /* FFMPEG_CMDUTILS_H */ | 275 | #endif /* FFMPEG_CMDUTILS_H */ |
| @@ -1,29 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * G.729 decoder | ||
| 3 | * Copyright (c) 2008 Vladimir Voroshilov | ||
| 4 | * | ||
| 5 | * This file is part of FFmpeg. | ||
| 6 | * | ||
| 7 | * FFmpeg is free software; you can redistribute it and/or | ||
| 8 | * modify it under the terms of the GNU Lesser General Public | ||
| 9 | * License as published by the Free Software Foundation; either | ||
| 10 | * version 2.1 of the License, or (at your option) any later version. | ||
| 11 | * | ||
| 12 | * FFmpeg is distributed in the hope that it will be useful, | ||
| 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 15 | * Lesser General Public License for more details. | ||
| 16 | * | ||
| 17 | * You should have received a copy of the GNU Lesser General Public | ||
| 18 | * License along with FFmpeg; if not, write to the Free Software | ||
| 19 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | ||
| 20 | */ | ||
| 21 | #ifndef AVCODEC_G729_H | ||
| 22 | #define AVCODEC_G729_H | ||
| 23 | |||
| 24 | /** | ||
| 25 | * subframe size | ||
| 26 | */ | ||
| 27 | #define SUBFRAME_SIZE 40 | ||
| 28 | |||
| 29 | #endif // AVCODEC_G729_H | ||
| @@ -30,7 +30,6 @@ · 29 unmodified lines | |||
| 30 | #include "libavutil/avutil.h" | 30 | #include "libavutil/avutil.h" |
| 31 | #include "get_bits.h" | 31 | #include "get_bits.h" |
| 32 | 32 | ||
| 33 | #include "g729.h" | ||
| 34 | #include "lsp.h" | 33 | #include "lsp.h" |
| 35 | #include "celp_math.h" | 34 | #include "celp_math.h" |
| 36 | #include "acelp_filters.h" | 35 | #include "acelp_filters.h" |
| @@ -71,6 +70,12 @@ · 34 unmodified lines | |||
| 71 | */ | 70 | */ |
| 72 | #define SHARP_MAX 13017 | 71 | #define SHARP_MAX 13017 |
| 73 | 72 | ||
| 73 | /** | ||
| 74 | * subframe size | ||
| 75 | */ | ||
| 76 | #define SUBFRAME_SIZE 40 | ||
| 77 | |||
| 78 | |||
| 74 | typedef struct { | 79 | typedef struct { |
| 75 | uint8_t ac_index_bits[2]; ///< adaptive codebook index for second subframe (size in bits) | 80 | uint8_t ac_index_bits[2]; ///< adaptive codebook index for second subframe (size in bits) |
| 76 | uint8_t parity_bit; ///< parity bit for pitch delay | 81 | uint8_t parity_bit; ///< parity bit for pitch delay |
| @@ -235,6 +235,7 @@ static void float_to_int16_interleave_3dn2(int16_t *dst, const float **src, long · 234 unmodified lines | |||
| 235 | float_to_int16_interleave_3dnow(dst, src, len, channels); | 235 | float_to_int16_interleave_3dnow(dst, src, len, channels); |
| 236 | } | 236 | } |
| 237 | 237 | ||
| 238 | #if HAVE_YASM | ||
| 238 | void ff_float_interleave2_mmx(float *dst, const float **src, unsigned int len); | 239 | void ff_float_interleave2_mmx(float *dst, const float **src, unsigned int len); |
| 239 | void ff_float_interleave2_sse(float *dst, const float **src, unsigned int len); | 240 | void ff_float_interleave2_sse(float *dst, const float **src, unsigned int len); |
| 240 | 241 | ||
| @@ -262,13 +263,16 @@ static void float_interleave_sse(float *dst, const float **src, · 21 unmodified lines | |||
| 262 | else | 263 | else |
| 263 | ff_float_interleave_c(dst, src, len, channels); | 264 | ff_float_interleave_c(dst, src, len, channels); |
| 264 | } | 265 | } |
| 266 | #endif | ||
| 265 | 267 | ||
| 266 | void ff_fmt_convert_init_x86(FmtConvertContext *c, AVCodecContext *avctx) | 268 | void ff_fmt_convert_init_x86(FmtConvertContext *c, AVCodecContext *avctx) |
| 267 | { | 269 | { |
| 268 | int mm_flags = av_get_cpu_flags(); | 270 | int mm_flags = av_get_cpu_flags(); |
| 269 | 271 | ||
| 270 | if (mm_flags & AV_CPU_FLAG_MMX) { | 272 | if (mm_flags & AV_CPU_FLAG_MMX) { |
| 273 | #if HAVE_YASM | ||
| 271 | c->float_interleave = float_interleave_mmx; | 274 | c->float_interleave = float_interleave_mmx; |
| 275 | #endif | ||
| 272 | 276 | ||
| 273 | if(mm_flags & AV_CPU_FLAG_3DNOW){ | 277 | if(mm_flags & AV_CPU_FLAG_3DNOW){ |
| 274 | if(!(avctx->flags & CODEC_FLAG_BITEXACT)){ | 278 | if(!(avctx->flags & CODEC_FLAG_BITEXACT)){ |
| @@ -285,7 +289,9 @@ void ff_fmt_convert_init_x86(FmtConvertContext *c, AVCodecContext *avctx) · 10 unmodified lines | |||
| 285 | c->int32_to_float_fmul_scalar = int32_to_float_fmul_scalar_sse; | 289 | c->int32_to_float_fmul_scalar = int32_to_float_fmul_scalar_sse; |
| 286 | c->float_to_int16 = float_to_int16_sse; | 290 | c->float_to_int16 = float_to_int16_sse; |
| 287 | c->float_to_int16_interleave = float_to_int16_interleave_sse; | 291 | c->float_to_int16_interleave = float_to_int16_interleave_sse; |
| 292 | #if HAVE_YASM | ||
| 288 | c->float_interleave = float_interleave_sse; | 293 | c->float_interleave = float_interleave_sse; |
| 294 | #endif | ||
| 289 | } | 295 | } |
| 290 | if(mm_flags & AV_CPU_FLAG_SSE2){ | 296 | if(mm_flags & AV_CPU_FLAG_SSE2){ |
| 291 | c->int32_to_float_fmul_scalar = int32_to_float_fmul_scalar_sse2; | 297 | c->int32_to_float_fmul_scalar = int32_to_float_fmul_scalar_sse2; |