summaryrefslogtreecommitdiff
path: root/libavfilter/yadif.h
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2013-12-01 17:42:07 +0100
committerMichael Niedermayer <michaelni@gmx.at>2013-12-01 20:26:26 +0100
commit975110a85ef8e794fdc041455ff41b0ad30bc01e (patch)
treebcc04dfe57b2c30191fd6b8eaaa72f44a18e3247 /libavfilter/yadif.h
parentab00800cde1af1f252731118062dd5149f1a7ed7 (diff)
Revert "vf_yadif: move x86 init code to x86/yadif.c"
This reverts commit a87b17f3283aada762820f1b797eeb7a2dff6c61. This reduces the amount of non LGPL code, making a relicensing to LGPL easier Conflicts: libavfilter/vf_yadif.c libavfilter/x86/yadif.c libavfilter/x86/yadif_template.c libavfilter/yadif.h Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavfilter/yadif.h')
-rw-r--r--libavfilter/yadif.h59
1 files changed, 30 insertions, 29 deletions
diff --git a/libavfilter/yadif.h b/libavfilter/yadif.h
index 3ddf0050a6..5afe01424b 100644
--- a/libavfilter/yadif.h
+++ b/libavfilter/yadif.h
@@ -19,7 +19,6 @@
#ifndef AVFILTER_YADIF_H
#define AVFILTER_YADIF_H
-#include "libavutil/pixdesc.h"
#include "avfilter.h"
enum YADIFMode {
@@ -40,35 +39,37 @@ enum YADIFDeint {
YADIF_DEINT_INTERLACED = 1, ///< only deinterlace frames marked as interlaced
};
-typedef struct YADIFContext {
- const AVClass *class;
+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);
- enum YADIFMode mode;
- enum YADIFParity parity;
- enum YADIFDeint deint;
+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);
- 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);
+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);
#endif /* AVFILTER_YADIF_H */