diff options
author | Mans Rullgard <mans@mansr.com> | 2012-07-01 13:08:17 +0100 |
---|---|---|
committer | Mans Rullgard <mans@mansr.com> | 2012-07-02 01:16:37 +0100 |
commit | a87b17f3283aada762820f1b797eeb7a2dff6c61 (patch) | |
tree | a44ce7d5afbaa284e93225caecc91c5b36dd2306 /libavfilter/yadif.h | |
parent | 2f0accf1038350a01a7b52f3cbe75a554f7438a3 (diff) | |
download | ffmpeg-a87b17f3283aada762820f1b797eeb7a2dff6c61.tar.gz |
vf_yadif: move x86 init code to x86/yadif.c
Signed-off-by: Mans Rullgard <mans@mansr.com>
Diffstat (limited to 'libavfilter/yadif.h')
-rw-r--r-- | libavfilter/yadif.h | 45 |
1 files changed, 36 insertions, 9 deletions
diff --git a/libavfilter/yadif.h b/libavfilter/yadif.h index d658b683d7..9d23870cd1 100644 --- a/libavfilter/yadif.h +++ b/libavfilter/yadif.h @@ -19,18 +19,45 @@ #ifndef AVFILTER_YADIF_H #define AVFILTER_YADIF_H +#include "libavutil/pixdesc.h" #include "avfilter.h" -void ff_yadif_filter_line_mmx(uint8_t *dst, - uint8_t *prev, uint8_t *cur, uint8_t *next, - int w, int prefs, int mrefs, int parity, int mode); +typedef struct { + /** + * 0: send 1 frame for each frame + * 1: send 1 frame for each field + * 2: like 0 but skips spatial interlacing check + * 3: like 1 but skips spatial interlacing check + */ + int mode; -void ff_yadif_filter_line_sse2(uint8_t *dst, - uint8_t *prev, uint8_t *cur, uint8_t *next, - int w, int prefs, int mrefs, int parity, int mode); + /** + * 0: top field first + * 1: bottom field first + * -1: auto-detection + */ + int parity; -void ff_yadif_filter_line_ssse3(uint8_t *dst, - uint8_t *prev, uint8_t *cur, uint8_t *next, - int w, int prefs, int mrefs, int parity, int mode); + int frame_pending; + + /** + * 0: deinterlace all frames + * 1: only deinterlace frames marked as interlaced + */ + int auto_enable; + + AVFilterBufferRef *cur; + AVFilterBufferRef *next; + AVFilterBufferRef *prev; + AVFilterBufferRef *out; + void (*filter_line)(uint8_t *dst, + uint8_t *prev, uint8_t *cur, uint8_t *next, + int w, int prefs, int mrefs, int parity, int mode); + + const AVPixFmtDescriptor *csp; + int eof; +} YADIFContext; + +void ff_yadif_init_x86(YADIFContext *yadif); #endif /* AVFILTER_YADIF_H */ |