xine-lib: xine-lib-1.2.13/src/post/deinterlace/tvtime.h Source File

xine-lib 1.2.13-20230125hg15249

tvtime.h
Go to the documentation of this file.
1
19#ifndef TVTIME_H_INCLUDED
20#define TVTIME_H_INCLUDED
21
22#if HAVE_INTTYPES_H
23#include <inttypes.h>
24#else
25#include <stdint.h>
26#endif
27
28#include "deinterlace.h"
29
33enum {
34 PULLDOWN_NONE = 0,
35 PULLDOWN_VEKTOR = 1, /* vektor's adaptive pulldown detection. */
36 PULLDOWN_MAX = 2,
37};
38
39enum
40{
41 FRAMERATE_FULL = 0,
42 FRAMERATE_HALF_TFF = 1,
43 FRAMERATE_HALF_BFF = 2,
44 FRAMERATE_MAX = 3
45};
46
47
48 typedef struct {
52 unsigned int pulldown_alg;
53
57 const deinterlace_method_t *curmethod;
58
63 unsigned int pulldown_error_wait;
64
65 /* internal data */
66 int last_topdiff;
67 int last_botdiff;
68
69 int pdoffset;
70 int pderror;
71 int pdlastbusted;
72 int filmmode;
73
74
75} tvtime_t;
76
77
78int tvtime_build_deinterlaced_frame( tvtime_t *this, uint8_t *output,
79 uint8_t *curframe,
80 uint8_t *lastframe,
81 uint8_t *secondlastframe,
82 int bottom_field, int second_field,
83 int width,
84 int frame_height,
85 int instride,
86 int outstride );
87
88
89int tvtime_build_copied_field( tvtime_t *this, uint8_t *output,
90 uint8_t *curframe,
91 int bottom_field,
92 int width,
93 int frame_height,
94 int instride,
95 int outstride );
96 tvtime_t *tvtime_new_context(void);
97
98void tvtime_reset_context( tvtime_t *this );
99
100
101#endif
deinterlace.h
width
unsigned int width
Definition gfontrle.c:4
deinterlace_method_s
Definition deinterlace.h:124
tvtime_t
Definition tvtime.h:48
tvtime_t::last_topdiff
int last_topdiff
Definition tvtime.h:66
tvtime_t::pulldown_alg
unsigned int pulldown_alg
Definition tvtime.h:52
tvtime_t::pulldown_error_wait
unsigned int pulldown_error_wait
Definition tvtime.h:63
tvtime_t::pderror
int pderror
Definition tvtime.h:70
tvtime_t::curmethod
const deinterlace_method_t * curmethod
Definition tvtime.h:57
tvtime_t::pdoffset
int pdoffset
Definition tvtime.h:69
tvtime_t::filmmode
int filmmode
Definition tvtime.h:72
tvtime_t::pdlastbusted
int pdlastbusted
Definition tvtime.h:71
tvtime_t::last_botdiff
int last_botdiff
Definition tvtime.h:67
FRAMERATE_HALF_BFF
@ FRAMERATE_HALF_BFF
Definition tvtime.h:43
FRAMERATE_MAX
@ FRAMERATE_MAX
Definition tvtime.h:44
FRAMERATE_HALF_TFF
@ FRAMERATE_HALF_TFF
Definition tvtime.h:42
FRAMERATE_FULL
@ FRAMERATE_FULL
Definition tvtime.h:41
tvtime_new_context
tvtime_t * tvtime_new_context(void)
Definition tvtime.c:461
tvtime_build_deinterlaced_frame
int tvtime_build_deinterlaced_frame(tvtime_t *this, uint8_t *output, uint8_t *curframe, uint8_t *lastframe, uint8_t *secondlastframe, int bottom_field, int second_field, int width, int frame_height, int instride, int outstride)
Definition tvtime.c:152
tvtime_reset_context
void tvtime_reset_context(tvtime_t *this)
Definition tvtime.c:478
PULLDOWN_MAX
@ PULLDOWN_MAX
Definition tvtime.h:36
PULLDOWN_NONE
@ PULLDOWN_NONE
Definition tvtime.h:34
PULLDOWN_VEKTOR
@ PULLDOWN_VEKTOR
Definition tvtime.h:35
tvtime_build_copied_field
int tvtime_build_copied_field(tvtime_t *this, uint8_t *output, uint8_t *curframe, int bottom_field, int width, int frame_height, int instride, int outstride)
Definition tvtime.c:413