FFmpeg
libavfilter
interlace.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 modify
5
* it under the terms of the GNU General Public License as published by
6
* the Free Software Foundation; either version 2 of the License, or
7
* (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
12
* GNU General Public License for more details.
13
*
14
* You should have received a copy of the GNU General Public License along
15
* with FFmpeg; if not, write to the Free Software Foundation, Inc.,
16
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17
*/
18
25
#ifndef AVFILTER_INTERLACE_H
26
#define AVFILTER_INTERLACE_H
27
28
#include "
libavutil/bswap.h
"
29
#include "
libavutil/common.h
"
30
#include "
libavutil/imgutils.h
"
31
#include "
libavutil/opt.h
"
32
#include "libavutil/pixdesc.h"
33
34
#include "
avfilter.h
"
35
#include "formats.h"
36
#include "
internal.h
"
37
#include "video.h"
38
39
enum
ScanMode {
40
MODE_TFF = 0,
41
MODE_BFF = 1,
42
};
43
44
enum
FieldType {
45
FIELD_UPPER = 0,
46
FIELD_LOWER = 1,
47
};
48
49
enum
VLPFilter {
50
VLPF_OFF = 0,
51
VLPF_LIN = 1,
52
VLPF_CMP = 2,
53
};
54
55
typedef
struct
InterlaceContext
{
56
const
AVClass
*
class
;
57
enum
ScanMode scan;
// top or bottom field first scanning
58
int
lowpass;
// enable or disable low pass filtering
59
AVFrame
*cur, *next;
// the two frames from which the new one is obtained
60
const
AVPixFmtDescriptor
*csp;
61
void (*lowpass_line)(uint8_t *dstp, ptrdiff_t linesize,
const
uint8_t *srcp,
62
ptrdiff_t mref, ptrdiff_t pref,
int
clip_max);
63
}
InterlaceContext
;
64
65
void
ff_interlace_init(
InterlaceContext
*interlace,
int
depth);
66
void
ff_interlace_init_x86(
InterlaceContext
*interlace,
int
depth);
67
68
#endif
/* AVFILTER_INTERLACE_H */
AVFrame
This structure describes decoded (raw) audio or video data.
Definition:
frame.h:218
imgutils.h
misc image utilities
avfilter.h
Main libavfilter public API header.
opt.h
AVOptions.
InterlaceContext
Definition:
interlace.h:55
AVPixFmtDescriptor
Descriptor that unambiguously describes how the bits of a pixel are stored in the up to 4 data planes...
Definition:
pixdesc.h:81
AVClass
Describe the class of an AVClass context structure.
Definition:
log.h:67
bswap.h
byte swapping routines
common.h
common internal and external API header
internal.h
internal API functions
Generated by
1.8.12