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
int
mode
;
///< TInterlaceMode, 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 */
AVFrame
This structure describes decoded (raw) audio or video data.
Definition:
frame.h:171
avfilter.h
Main libavfilter public API header.
TInterlaceContext::next
AVFrame * next
Definition:
tinterlace.h:52
TInterlaceContext::mode
int mode
TInterlaceMode, interlace mode selected.
Definition:
tinterlace.h:46
MODE_INTERLEAVE_TOP
Definition:
tinterlace.h:38
TInterlaceContext::flags
int flags
flags affecting interlacing algorithm
Definition:
tinterlace.h:48
srcp
BYTE int const BYTE * srcp
Definition:
avisynth_c.h:676
uint8_t
uint8_t
Definition:
audio_convert.c:194
MODE_NB
Definition:
tinterlace.h:41
opt.h
AVOptions.
TInterlaceContext::frame
int frame
number of the output frame
Definition:
tinterlace.h:49
ff_tinterlace_init_x86
void ff_tinterlace_init_x86(TInterlaceContext *interlace)
Definition:
vf_tinterlace_init.c:39
TInterlaceContext::vsub
int vsub
chroma vertical subsampling
Definition:
tinterlace.h:50
dstp
BYTE * dstp
Definition:
avisynth_c.h:676
TInterlaceMode
TInterlaceMode
Definition:
tinterlace.h:33
void
typedef void(APIENTRY *FF_PFNGLACTIVETEXTUREPROC)(GLenum texture)
MODE_DROP_EVEN
Definition:
tinterlace.h:35
TInterlaceContext
Definition:
tinterlace.h:44
AVClass
Describe the class of an AVClass context structure.
Definition:
log.h:67
AVRational
rational number numerator/denominator
Definition:
rational.h:43
MODE_INTERLEAVE_BOTTOM
Definition:
tinterlace.h:39
TInterlaceContext::cur
AVFrame * cur
Definition:
tinterlace.h:51
MODE_INTERLACEX2
Definition:
tinterlace.h:40
MODE_PAD
Definition:
tinterlace.h:37
MODE_DROP_ODD
Definition:
tinterlace.h:36
TInterlaceContext::preout_time_base
AVRational preout_time_base
Definition:
tinterlace.h:47
MODE_MERGE
Definition:
tinterlace.h:34
width
static int width
Definition:
demuxing_decoding.c:39
Generated on Wed Jun 10 2015 01:56:54 for FFmpeg by
1.8.6