FFmpeg
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
Examples
File List
Globals
•
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
libavfilter
yadif.h
Go to the documentation of this file.
1
/*
2
* This file is part of FFmpeg.
3
*
4
* FFmpeg is free software; you can redistribute it and/or
5
* modify it under the terms of the GNU Lesser General Public
6
* License as published by the Free Software Foundation; either
7
* version 2.1 of the License, or (at your option) any later version.
8
*
9
* FFmpeg is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
* Lesser General Public License for more details.
13
*
14
* You should have received a copy of the GNU Lesser General Public
15
* License along with FFmpeg; if not, write to the Free Software
16
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17
*/
18
19
#ifndef AVFILTER_YADIF_H
20
#define AVFILTER_YADIF_H
21
22
#include "
libavutil/pixdesc.h
"
23
#include "
avfilter.h
"
24
25
enum
YADIFMode
{
26
YADIF_MODE_SEND_FRAME
= 0,
///< send 1 frame for each frame
27
YADIF_MODE_SEND_FIELD
= 1,
///< send 1 frame for each field
28
YADIF_MODE_SEND_FRAME_NOSPATIAL
= 2,
///< send 1 frame for each frame but skips spatial interlacing check
29
YADIF_MODE_SEND_FIELD_NOSPATIAL
= 3,
///< send 1 frame for each field but skips spatial interlacing check
30
};
31
32
enum
YADIFParity
{
33
YADIF_PARITY_TFF
= 0,
///< top field first
34
YADIF_PARITY_BFF
= 1,
///< bottom field first
35
YADIF_PARITY_AUTO
= -1,
///< auto detection
36
};
37
38
enum
YADIFDeint
{
39
YADIF_DEINT_ALL
= 0,
///< deinterlace all frames
40
YADIF_DEINT_INTERLACED
= 1,
///< only deinterlace frames marked as interlaced
41
};
42
43
typedef
struct
YADIFContext
{
44
const
AVClass
*
class
;
45
46
enum
YADIFMode
mode
;
47
enum
YADIFParity
parity
;
48
enum
YADIFDeint
deint
;
49
50
int
frame_pending
;
51
52
AVFrame
*
cur
;
53
AVFrame
*
next
;
54
AVFrame
*
prev
;
55
AVFrame
*
out
;
56
57
/**
58
* Required alignment for filter_line
59
*/
60
void
(*
filter_line
)(
void
*dst,
61
void
*
prev
,
void
*
cur
,
void
*
next
,
62
int
w,
int
prefs,
int
mrefs,
int
parity
,
int
mode
);
63
void
(*
filter_edges
)(
void
*dst,
void
*
prev
,
void
*
cur
,
void
*
next
,
64
int
w,
int
prefs,
int
mrefs,
int
parity
,
int
mode
);
65
66
const
AVPixFmtDescriptor
*
csp
;
67
int
eof
;
68
uint8_t
*
temp_line
;
69
int
temp_line_size
;
70
}
YADIFContext
;
71
72
void
ff_yadif_init_x86
(
YADIFContext
*yadif);
73
74
#endif
/* AVFILTER_YADIF_H */
Generated on Sun Mar 8 2015 02:35:08 for FFmpeg by
1.8.2