mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-08 13:22:53 +02:00
Merge remote-tracking branch 'qatar/master'
* qatar/master: fate: add ac3/eac3 tests to FATE_SAMPLES_AVCONV avconv_opt, cmdutils: Add missing function parameter Doxygen x86: Move optimization suffix to end of function names Conflicts: cmdutils.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
commit
7fd9d49ba7
@ -206,6 +206,8 @@ int show_help(void *optctx, const char *opt, const char *arg);
|
|||||||
* Parse the command line arguments.
|
* Parse the command line arguments.
|
||||||
*
|
*
|
||||||
* @param optctx an opaque options context
|
* @param optctx an opaque options context
|
||||||
|
* @param argc number of command line arguments
|
||||||
|
* @param argv values of command line arguments
|
||||||
* @param options Array with the definitions required to interpret every
|
* @param options Array with the definitions required to interpret every
|
||||||
* option of the form: -option_name [argument]
|
* option of the form: -option_name [argument]
|
||||||
* @param parse_arg_function Name of the function called to process every
|
* @param parse_arg_function Name of the function called to process every
|
||||||
@ -251,6 +253,8 @@ int check_stream_specifier(AVFormatContext *s, AVStream *st, const char *spec);
|
|||||||
* Create a new options dictionary containing only the options from
|
* Create a new options dictionary containing only the options from
|
||||||
* opts which apply to the codec with ID codec_id.
|
* opts which apply to the codec with ID codec_id.
|
||||||
*
|
*
|
||||||
|
* @param opts dictionary to place options in
|
||||||
|
* @param codec_id ID of the codec that should be filtered for
|
||||||
* @param s Corresponding format context.
|
* @param s Corresponding format context.
|
||||||
* @param st A stream from s for which the options should be filtered.
|
* @param st A stream from s for which the options should be filtered.
|
||||||
* @param codec The particular codec for which the options should be filtered.
|
* @param codec The particular codec for which the options should be filtered.
|
||||||
@ -384,6 +388,7 @@ int read_yesno(void);
|
|||||||
* Read the file with name filename, and put its content in a newly
|
* Read the file with name filename, and put its content in a newly
|
||||||
* allocated 0-terminated buffer.
|
* allocated 0-terminated buffer.
|
||||||
*
|
*
|
||||||
|
* @param filename file to read from
|
||||||
* @param bufptr location where pointer to buffer is returned
|
* @param bufptr location where pointer to buffer is returned
|
||||||
* @param size location where size of buffer is returned
|
* @param size location where size of buffer is returned
|
||||||
* @return 0 in case of success, a negative value corresponding to an
|
* @return 0 in case of success, a negative value corresponding to an
|
||||||
@ -416,8 +421,10 @@ FILE *get_preset_file(char *filename, size_t filename_size,
|
|||||||
* Realloc array to hold new_size elements of elem_size.
|
* Realloc array to hold new_size elements of elem_size.
|
||||||
* Calls exit() on failure.
|
* Calls exit() on failure.
|
||||||
*
|
*
|
||||||
|
* @param array array to reallocate
|
||||||
* @param elem_size size in bytes of each element
|
* @param elem_size size in bytes of each element
|
||||||
* @param size new element count will be written here
|
* @param size new element count will be written here
|
||||||
|
* @param new_size number of elements to place in reallocated array
|
||||||
* @return reallocated array
|
* @return reallocated array
|
||||||
*/
|
*/
|
||||||
void *grow_array(void *array, int elem_size, int *size, int new_size);
|
void *grow_array(void *array, int elem_size, int *size, int new_size);
|
||||||
|
@ -368,6 +368,7 @@ static int opt_map_channel(void *optctx, const char *opt, const char *arg)
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Parse a metadata specifier passed as 'arg' parameter.
|
* Parse a metadata specifier passed as 'arg' parameter.
|
||||||
|
* @param arg metadata string to parse
|
||||||
* @param type metadata type is written here -- g(lobal)/s(tream)/c(hapter)/p(rogram)
|
* @param type metadata type is written here -- g(lobal)/s(tream)/c(hapter)/p(rogram)
|
||||||
* @param index for type c/p, chapter/program index is written here
|
* @param index for type c/p, chapter/program index is written here
|
||||||
* @param stream_spec for type s, the stream specifier is written here
|
* @param stream_spec for type s, the stream specifier is written here
|
||||||
|
@ -2107,11 +2107,11 @@ PREFETCH(prefetch_3dnow, prefetch)
|
|||||||
|
|
||||||
#include "h264_qpel.c"
|
#include "h264_qpel.c"
|
||||||
|
|
||||||
void ff_put_h264_chroma_mc8_mmx_rnd (uint8_t *dst, uint8_t *src,
|
void ff_put_h264_chroma_mc8_rnd_mmx (uint8_t *dst, uint8_t *src,
|
||||||
int stride, int h, int x, int y);
|
int stride, int h, int x, int y);
|
||||||
void ff_avg_h264_chroma_mc8_mmx2_rnd (uint8_t *dst, uint8_t *src,
|
void ff_avg_h264_chroma_mc8_rnd_mmx2 (uint8_t *dst, uint8_t *src,
|
||||||
int stride, int h, int x, int y);
|
int stride, int h, int x, int y);
|
||||||
void ff_avg_h264_chroma_mc8_3dnow_rnd(uint8_t *dst, uint8_t *src,
|
void ff_avg_h264_chroma_mc8_rnd_3dnow(uint8_t *dst, uint8_t *src,
|
||||||
int stride, int h, int x, int y);
|
int stride, int h, int x, int y);
|
||||||
|
|
||||||
void ff_put_h264_chroma_mc4_mmx (uint8_t *dst, uint8_t *src,
|
void ff_put_h264_chroma_mc4_mmx (uint8_t *dst, uint8_t *src,
|
||||||
@ -2126,12 +2126,12 @@ void ff_put_h264_chroma_mc2_mmx2 (uint8_t *dst, uint8_t *src,
|
|||||||
void ff_avg_h264_chroma_mc2_mmx2 (uint8_t *dst, uint8_t *src,
|
void ff_avg_h264_chroma_mc2_mmx2 (uint8_t *dst, uint8_t *src,
|
||||||
int stride, int h, int x, int y);
|
int stride, int h, int x, int y);
|
||||||
|
|
||||||
void ff_put_h264_chroma_mc8_ssse3_rnd(uint8_t *dst, uint8_t *src,
|
void ff_put_h264_chroma_mc8_rnd_ssse3(uint8_t *dst, uint8_t *src,
|
||||||
int stride, int h, int x, int y);
|
int stride, int h, int x, int y);
|
||||||
void ff_put_h264_chroma_mc4_ssse3 (uint8_t *dst, uint8_t *src,
|
void ff_put_h264_chroma_mc4_ssse3 (uint8_t *dst, uint8_t *src,
|
||||||
int stride, int h, int x, int y);
|
int stride, int h, int x, int y);
|
||||||
|
|
||||||
void ff_avg_h264_chroma_mc8_ssse3_rnd(uint8_t *dst, uint8_t *src,
|
void ff_avg_h264_chroma_mc8_rnd_ssse3(uint8_t *dst, uint8_t *src,
|
||||||
int stride, int h, int x, int y);
|
int stride, int h, int x, int y);
|
||||||
void ff_avg_h264_chroma_mc4_ssse3 (uint8_t *dst, uint8_t *src,
|
void ff_avg_h264_chroma_mc4_ssse3 (uint8_t *dst, uint8_t *src,
|
||||||
int stride, int h, int x, int y);
|
int stride, int h, int x, int y);
|
||||||
@ -2611,7 +2611,7 @@ static void dsputil_init_mmx(DSPContext *c, AVCodecContext *avctx, int mm_flags)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (!high_bit_depth && CONFIG_H264CHROMA) {
|
if (!high_bit_depth && CONFIG_H264CHROMA) {
|
||||||
c->put_h264_chroma_pixels_tab[0] = ff_put_h264_chroma_mc8_mmx_rnd;
|
c->put_h264_chroma_pixels_tab[0] = ff_put_h264_chroma_mc8_rnd_mmx;
|
||||||
c->put_h264_chroma_pixels_tab[1] = ff_put_h264_chroma_mc4_mmx;
|
c->put_h264_chroma_pixels_tab[1] = ff_put_h264_chroma_mc4_mmx;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2706,7 +2706,7 @@ static void dsputil_init_mmxext(DSPContext *c, AVCodecContext *avctx,
|
|||||||
|
|
||||||
#if HAVE_YASM
|
#if HAVE_YASM
|
||||||
if (!high_bit_depth && CONFIG_H264CHROMA) {
|
if (!high_bit_depth && CONFIG_H264CHROMA) {
|
||||||
c->avg_h264_chroma_pixels_tab[0] = ff_avg_h264_chroma_mc8_mmx2_rnd;
|
c->avg_h264_chroma_pixels_tab[0] = ff_avg_h264_chroma_mc8_rnd_mmx2;
|
||||||
c->avg_h264_chroma_pixels_tab[1] = ff_avg_h264_chroma_mc4_mmx2;
|
c->avg_h264_chroma_pixels_tab[1] = ff_avg_h264_chroma_mc4_mmx2;
|
||||||
c->avg_h264_chroma_pixels_tab[2] = ff_avg_h264_chroma_mc2_mmx2;
|
c->avg_h264_chroma_pixels_tab[2] = ff_avg_h264_chroma_mc2_mmx2;
|
||||||
c->put_h264_chroma_pixels_tab[2] = ff_put_h264_chroma_mc2_mmx2;
|
c->put_h264_chroma_pixels_tab[2] = ff_put_h264_chroma_mc2_mmx2;
|
||||||
@ -2801,7 +2801,7 @@ static void dsputil_init_3dnow(DSPContext *c, AVCodecContext *avctx,
|
|||||||
|
|
||||||
#if HAVE_YASM
|
#if HAVE_YASM
|
||||||
if (!high_bit_depth && CONFIG_H264CHROMA) {
|
if (!high_bit_depth && CONFIG_H264CHROMA) {
|
||||||
c->avg_h264_chroma_pixels_tab[0] = ff_avg_h264_chroma_mc8_3dnow_rnd;
|
c->avg_h264_chroma_pixels_tab[0] = ff_avg_h264_chroma_mc8_rnd_3dnow;
|
||||||
c->avg_h264_chroma_pixels_tab[1] = ff_avg_h264_chroma_mc4_3dnow;
|
c->avg_h264_chroma_pixels_tab[1] = ff_avg_h264_chroma_mc4_3dnow;
|
||||||
}
|
}
|
||||||
#endif /* HAVE_YASM */
|
#endif /* HAVE_YASM */
|
||||||
@ -2950,8 +2950,8 @@ static void dsputil_init_ssse3(DSPContext *c, AVCodecContext *avctx,
|
|||||||
H264_QPEL_FUNCS_10(3, 0, ssse3_cache64);
|
H264_QPEL_FUNCS_10(3, 0, ssse3_cache64);
|
||||||
}
|
}
|
||||||
if (!high_bit_depth && CONFIG_H264CHROMA) {
|
if (!high_bit_depth && CONFIG_H264CHROMA) {
|
||||||
c->put_h264_chroma_pixels_tab[0] = ff_put_h264_chroma_mc8_ssse3_rnd;
|
c->put_h264_chroma_pixels_tab[0] = ff_put_h264_chroma_mc8_rnd_ssse3;
|
||||||
c->avg_h264_chroma_pixels_tab[0] = ff_avg_h264_chroma_mc8_ssse3_rnd;
|
c->avg_h264_chroma_pixels_tab[0] = ff_avg_h264_chroma_mc8_rnd_ssse3;
|
||||||
c->put_h264_chroma_pixels_tab[1] = ff_put_h264_chroma_mc4_ssse3;
|
c->put_h264_chroma_pixels_tab[1] = ff_put_h264_chroma_mc4_ssse3;
|
||||||
c->avg_h264_chroma_pixels_tab[1] = ff_avg_h264_chroma_mc4_ssse3;
|
c->avg_h264_chroma_pixels_tab[1] = ff_avg_h264_chroma_mc4_ssse3;
|
||||||
}
|
}
|
||||||
|
@ -437,8 +437,8 @@ cglobal %1_%2_chroma_mc2_%3, 6, 7, 0
|
|||||||
INIT_MMX
|
INIT_MMX
|
||||||
%define CHROMAMC_AVG NOTHING
|
%define CHROMAMC_AVG NOTHING
|
||||||
%define CHROMAMC_AVG4 NOTHING
|
%define CHROMAMC_AVG4 NOTHING
|
||||||
chroma_mc8_mmx_func put, h264, mmx_rnd
|
chroma_mc8_mmx_func put, h264, rnd_mmx
|
||||||
chroma_mc8_mmx_func put, vc1, mmx_nornd
|
chroma_mc8_mmx_func put, vc1, nornd_mmx
|
||||||
chroma_mc8_mmx_func put, rv40, mmx
|
chroma_mc8_mmx_func put, rv40, mmx
|
||||||
chroma_mc4_mmx_func put, h264, mmx
|
chroma_mc4_mmx_func put, h264, mmx
|
||||||
chroma_mc4_mmx_func put, rv40, mmx
|
chroma_mc4_mmx_func put, rv40, mmx
|
||||||
@ -447,16 +447,16 @@ chroma_mc2_mmx_func put, h264, mmx2
|
|||||||
%define CHROMAMC_AVG DIRECT_AVG
|
%define CHROMAMC_AVG DIRECT_AVG
|
||||||
%define CHROMAMC_AVG4 COPY_AVG
|
%define CHROMAMC_AVG4 COPY_AVG
|
||||||
%define PAVG pavgb
|
%define PAVG pavgb
|
||||||
chroma_mc8_mmx_func avg, h264, mmx2_rnd
|
chroma_mc8_mmx_func avg, h264, rnd_mmx2
|
||||||
chroma_mc8_mmx_func avg, vc1, mmx2_nornd
|
chroma_mc8_mmx_func avg, vc1, nornd_mmx2
|
||||||
chroma_mc8_mmx_func avg, rv40, mmx2
|
chroma_mc8_mmx_func avg, rv40, mmx2
|
||||||
chroma_mc4_mmx_func avg, h264, mmx2
|
chroma_mc4_mmx_func avg, h264, mmx2
|
||||||
chroma_mc4_mmx_func avg, rv40, mmx2
|
chroma_mc4_mmx_func avg, rv40, mmx2
|
||||||
chroma_mc2_mmx_func avg, h264, mmx2
|
chroma_mc2_mmx_func avg, h264, mmx2
|
||||||
|
|
||||||
%define PAVG pavgusb
|
%define PAVG pavgusb
|
||||||
chroma_mc8_mmx_func avg, h264, 3dnow_rnd
|
chroma_mc8_mmx_func avg, h264, rnd_3dnow
|
||||||
chroma_mc8_mmx_func avg, vc1, 3dnow_nornd
|
chroma_mc8_mmx_func avg, vc1, nornd_3dnow
|
||||||
chroma_mc8_mmx_func avg, rv40, 3dnow
|
chroma_mc8_mmx_func avg, rv40, 3dnow
|
||||||
chroma_mc4_mmx_func avg, h264, 3dnow
|
chroma_mc4_mmx_func avg, h264, 3dnow
|
||||||
chroma_mc4_mmx_func avg, rv40, 3dnow
|
chroma_mc4_mmx_func avg, rv40, 3dnow
|
||||||
@ -664,15 +664,15 @@ cglobal %1_%2_chroma_mc4_%3, 6, 7, 0
|
|||||||
|
|
||||||
%define CHROMAMC_AVG NOTHING
|
%define CHROMAMC_AVG NOTHING
|
||||||
INIT_XMM
|
INIT_XMM
|
||||||
chroma_mc8_ssse3_func put, h264, ssse3_rnd
|
chroma_mc8_ssse3_func put, h264, rnd_ssse3
|
||||||
chroma_mc8_ssse3_func put, vc1, ssse3_nornd
|
chroma_mc8_ssse3_func put, vc1, nornd_ssse3
|
||||||
INIT_MMX
|
INIT_MMX
|
||||||
chroma_mc4_ssse3_func put, h264, ssse3
|
chroma_mc4_ssse3_func put, h264, ssse3
|
||||||
|
|
||||||
%define CHROMAMC_AVG DIRECT_AVG
|
%define CHROMAMC_AVG DIRECT_AVG
|
||||||
%define PAVG pavgb
|
%define PAVG pavgb
|
||||||
INIT_XMM
|
INIT_XMM
|
||||||
chroma_mc8_ssse3_func avg, h264, ssse3_rnd
|
chroma_mc8_ssse3_func avg, h264, rnd_ssse3
|
||||||
chroma_mc8_ssse3_func avg, vc1, ssse3_nornd
|
chroma_mc8_ssse3_func avg, vc1, nornd_ssse3
|
||||||
INIT_MMX
|
INIT_MMX
|
||||||
chroma_mc4_ssse3_func avg, h264, ssse3
|
chroma_mc4_ssse3_func avg, h264, ssse3
|
||||||
|
@ -62,15 +62,15 @@ static void vc1_h_loop_filter16_sse4(uint8_t *src, int stride, int pq)
|
|||||||
}
|
}
|
||||||
#endif /* HAVE_YASM */
|
#endif /* HAVE_YASM */
|
||||||
|
|
||||||
void ff_put_vc1_chroma_mc8_mmx_nornd (uint8_t *dst, uint8_t *src,
|
void ff_put_vc1_chroma_mc8_nornd_mmx (uint8_t *dst, uint8_t *src,
|
||||||
int stride, int h, int x, int y);
|
int stride, int h, int x, int y);
|
||||||
void ff_avg_vc1_chroma_mc8_mmx2_nornd (uint8_t *dst, uint8_t *src,
|
void ff_avg_vc1_chroma_mc8_nornd_mmx2 (uint8_t *dst, uint8_t *src,
|
||||||
int stride, int h, int x, int y);
|
int stride, int h, int x, int y);
|
||||||
void ff_avg_vc1_chroma_mc8_3dnow_nornd(uint8_t *dst, uint8_t *src,
|
void ff_avg_vc1_chroma_mc8_nornd_3dnow(uint8_t *dst, uint8_t *src,
|
||||||
int stride, int h, int x, int y);
|
int stride, int h, int x, int y);
|
||||||
void ff_put_vc1_chroma_mc8_ssse3_nornd(uint8_t *dst, uint8_t *src,
|
void ff_put_vc1_chroma_mc8_nornd_ssse3(uint8_t *dst, uint8_t *src,
|
||||||
int stride, int h, int x, int y);
|
int stride, int h, int x, int y);
|
||||||
void ff_avg_vc1_chroma_mc8_ssse3_nornd(uint8_t *dst, uint8_t *src,
|
void ff_avg_vc1_chroma_mc8_nornd_ssse3(uint8_t *dst, uint8_t *src,
|
||||||
int stride, int h, int x, int y);
|
int stride, int h, int x, int y);
|
||||||
|
|
||||||
|
|
||||||
@ -94,14 +94,14 @@ av_cold void ff_vc1dsp_init_x86(VC1DSPContext *dsp)
|
|||||||
|
|
||||||
#if HAVE_YASM
|
#if HAVE_YASM
|
||||||
if (mm_flags & AV_CPU_FLAG_MMX) {
|
if (mm_flags & AV_CPU_FLAG_MMX) {
|
||||||
dsp->put_no_rnd_vc1_chroma_pixels_tab[0]= ff_put_vc1_chroma_mc8_mmx_nornd;
|
dsp->put_no_rnd_vc1_chroma_pixels_tab[0] = ff_put_vc1_chroma_mc8_nornd_mmx;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mm_flags & AV_CPU_FLAG_MMXEXT) {
|
if (mm_flags & AV_CPU_FLAG_MMXEXT) {
|
||||||
ASSIGN_LF(mmx2);
|
ASSIGN_LF(mmx2);
|
||||||
dsp->avg_no_rnd_vc1_chroma_pixels_tab[0]= ff_avg_vc1_chroma_mc8_mmx2_nornd;
|
dsp->avg_no_rnd_vc1_chroma_pixels_tab[0] = ff_avg_vc1_chroma_mc8_nornd_mmx2;
|
||||||
} else if (mm_flags & AV_CPU_FLAG_3DNOW) {
|
} else if (mm_flags & AV_CPU_FLAG_3DNOW) {
|
||||||
dsp->avg_no_rnd_vc1_chroma_pixels_tab[0]= ff_avg_vc1_chroma_mc8_3dnow_nornd;
|
dsp->avg_no_rnd_vc1_chroma_pixels_tab[0] = ff_avg_vc1_chroma_mc8_nornd_3dnow;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mm_flags & AV_CPU_FLAG_SSE2) {
|
if (mm_flags & AV_CPU_FLAG_SSE2) {
|
||||||
@ -112,8 +112,8 @@ av_cold void ff_vc1dsp_init_x86(VC1DSPContext *dsp)
|
|||||||
}
|
}
|
||||||
if (mm_flags & AV_CPU_FLAG_SSSE3) {
|
if (mm_flags & AV_CPU_FLAG_SSSE3) {
|
||||||
ASSIGN_LF(ssse3);
|
ASSIGN_LF(ssse3);
|
||||||
dsp->put_no_rnd_vc1_chroma_pixels_tab[0]= ff_put_vc1_chroma_mc8_ssse3_nornd;
|
dsp->put_no_rnd_vc1_chroma_pixels_tab[0] = ff_put_vc1_chroma_mc8_nornd_ssse3;
|
||||||
dsp->avg_no_rnd_vc1_chroma_pixels_tab[0]= ff_avg_vc1_chroma_mc8_ssse3_nornd;
|
dsp->avg_no_rnd_vc1_chroma_pixels_tab[0] = ff_avg_vc1_chroma_mc8_nornd_ssse3;
|
||||||
}
|
}
|
||||||
if (mm_flags & AV_CPU_FLAG_SSE4) {
|
if (mm_flags & AV_CPU_FLAG_SSE4) {
|
||||||
dsp->vc1_h_loop_filter8 = ff_vc1_h_loop_filter8_sse4;
|
dsp->vc1_h_loop_filter8 = ff_vc1_h_loop_filter8_sse4;
|
||||||
|
Loading…
Reference in New Issue
Block a user