Revert "Revert "vf_yadif: move x86 init code to x86/yadif.c""

This reverts commit 975110a85e.

Signed-off-by: Robert Krüger <krueger@lesspain.de>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Robert Krüger
2014-01-04 13:49:38 +01:00
committed by Michael Niedermayer
parent 0b54bc24db
commit 4a38eeec38
4 changed files with 132 additions and 97 deletions

View File

@@ -19,6 +19,7 @@
#ifndef AVFILTER_YADIF_H
#define AVFILTER_YADIF_H
#include "libavutil/pixdesc.h"
#include "avfilter.h"
enum YADIFMode {
@@ -39,37 +40,35 @@ enum YADIFDeint {
YADIF_DEINT_INTERLACED = 1, ///< only deinterlace frames marked as interlaced
};
void ff_yadif_filter_line_mmxext(void *dst, void *prev, void *cur,
void *next, int w, int prefs,
int mrefs, int parity, int mode);
void ff_yadif_filter_line_sse2(void *dst, void *prev, void *cur,
void *next, int w, int prefs,
int mrefs, int parity, int mode);
void ff_yadif_filter_line_ssse3(void *dst, void *prev, void *cur,
void *next, int w, int prefs,
int mrefs, int parity, int mode);
typedef struct YADIFContext {
const AVClass *class;
void ff_yadif_filter_line_16bit_mmxext(void *dst, void *prev, void *cur,
void *next, int w, int prefs,
int mrefs, int parity, int mode);
void ff_yadif_filter_line_16bit_sse2(void *dst, void *prev, void *cur,
void *next, int w, int prefs,
int mrefs, int parity, int mode);
void ff_yadif_filter_line_16bit_ssse3(void *dst, void *prev, void *cur,
void *next, int w, int prefs,
int mrefs, int parity, int mode);
void ff_yadif_filter_line_16bit_sse4(void *dst, void *prev, void *cur,
void *next, int w, int prefs,
int mrefs, int parity, int mode);
enum YADIFMode mode;
enum YADIFParity parity;
enum YADIFDeint deint;
void ff_yadif_filter_line_10bit_mmxext(void *dst, void *prev, void *cur,
void *next, int w, int prefs,
int mrefs, int parity, int mode);
void ff_yadif_filter_line_10bit_sse2(void *dst, void *prev, void *cur,
void *next, int w, int prefs,
int mrefs, int parity, int mode);
void ff_yadif_filter_line_10bit_ssse3(void *dst, void *prev, void *cur,
void *next, int w, int prefs,
int mrefs, int parity, int mode);
int frame_pending;
AVFrame *cur;
AVFrame *next;
AVFrame *prev;
AVFrame *out;
/**
* Required alignment for filter_line
*/
void (*filter_line)(void *dst,
void *prev, void *cur, void *next,
int w, int prefs, int mrefs, int parity, int mode);
void (*filter_edges)(void *dst, void *prev, void *cur, void *next,
int w, int prefs, int mrefs, int parity, int mode);
const AVPixFmtDescriptor *csp;
int eof;
uint8_t *temp_line;
int temp_line_size;
} YADIFContext;
void ff_yadif_init_x86(YADIFContext *yadif);
#endif /* AVFILTER_YADIF_H */