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
tinterlace.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2011 Stefano Sabatini
3
* Copyright (c) 2010 Baptiste Coudurier
4
* Copyright (c) 2003 Michael Zucchi <notzed@ximian.com>
5
*
6
* This file is part of FFmpeg.
7
*
8
* FFmpeg is free software; you can redistribute it and/or modify
9
* it under the terms of the GNU General Public License as published by
10
* the Free Software Foundation; either version 2 of the License, or
11
* (at your option) any later version.
12
*
13
* FFmpeg is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
* GNU General Public License for more details.
17
*
18
* You should have received a copy of the GNU General Public License along
19
* with FFmpeg; if not, write to the Free Software Foundation, Inc.,
20
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
21
*/
22
23
/**
24
* @file
25
* temporal field interlace filter, ported from MPlayer/libmpcodecs
26
*/
27
#ifndef AVFILTER_TINTERLACE_H
28
#define AVFILTER_TINTERLACE_H
29
30
#include "
libavutil/opt.h
"
31
#include "
avfilter.h
"
32
33
enum
TInterlaceMode
{
34
MODE_MERGE
= 0,
35
MODE_DROP_EVEN
,
36
MODE_DROP_ODD
,
37
MODE_PAD
,
38
MODE_INTERLEAVE_TOP
,
39
MODE_INTERLEAVE_BOTTOM
,
40
MODE_INTERLACEX2
,
41
MODE_NB
,
42
};
43
44
typedef
struct
{
45
const
AVClass
*
class
;
46
enum
TInterlaceMode
mode
;
///< interlace mode selected
47
AVRational
preout_time_base
;
48
int
flags
;
///< flags affecting interlacing algorithm
49
int
frame
;
///< number of the output frame
50
int
vsub
;
///< chroma vertical subsampling
51
AVFrame
*
cur
;
52
AVFrame
*
next
;
53
uint8_t
*black_data[4];
///< buffer used to fill padded lines
54
int
black_linesize[4];
55
void
(*lowpass_line)(
uint8_t
*
dstp
, ptrdiff_t
width
,
const
uint8_t
*
srcp
,
56
const
uint8_t
*srcp_above,
const
uint8_t
*srcp_below);
57
}
TInterlaceContext
;
58
59
void
ff_tinterlace_init_x86
(
TInterlaceContext
*interlace);
60
61
#endif
/* AVFILTER_TINTERLACE_H */
Generated on Sun Mar 8 2015 02:35:06 for FFmpeg by
1.8.2