MythTV  master
Classes | Macros | Typedefs | Functions | Variables
filter_fieldorder.c File Reference
#include <stdlib.h>
#include <stdio.h>
#include "config.h"
#include <inttypes.h>
#include <string.h>
#include <math.h>
#include "filter.h"
#include "mythframe.h"
Include dependency graph for filter_fieldorder.c:

Go to the source code of this file.

Classes

struct  ThisFilter
 

Macros

#define NREFS   2
 
#define NCHANS   3
 

Typedefs

typedef struct ThisFilter ThisFilter
 

Functions

static void AllocFilter (ThisFilter *filter, int width, int height)
 
static void * memcpy_pic (void *dst, const void *src, int bytesPerLine, int height, int dstStride, int srcStride)
 
static void store_ref (struct ThisFilter *p, uint8_t *src, int src_offsets[3], int src_stride[3], int width, int height)
 
static void filter_func (struct ThisFilter *p, uint8_t *dst, int dst_offsets[3], const int dst_stride[3], int width, int height, int parity, int tff, int dirty)
 
static int FieldorderDeint (VideoFilter *f, VideoFrame *frame, int field)
 
static void CleanupFieldorderDeintFilter (VideoFilter *filter)
 
static VideoFilterFieldorderDeintFilter (VideoFrameType inpixfmt, VideoFrameType outpixfmt, const int *width, const int *height, const char *options, int threads)
 

Variables

static FmtConv FmtList []
 
const FilterInfo filter_table []
 

Macro Definition Documentation

◆ NREFS

#define NREFS   2

Definition at line 22 of file filter_fieldorder.c.

◆ NCHANS

#define NCHANS   3

Definition at line 23 of file filter_fieldorder.c.

Typedef Documentation

◆ ThisFilter

typedef struct ThisFilter ThisFilter

Function Documentation

◆ AllocFilter()

static void AllocFilter ( ThisFilter filter,
int  width,
int  height 
)
static

Definition at line 42 of file filter_fieldorder.c.

Referenced by FieldorderDeint(), and FieldorderDeintFilter().

◆ memcpy_pic()

static void* memcpy_pic ( void *  dst,
const void *  src,
int  bytesPerLine,
int  height,
int  dstStride,
int  srcStride 
)
inlinestatic

Definition at line 71 of file filter_fieldorder.c.

Referenced by store_ref().

◆ store_ref()

static void store_ref ( struct ThisFilter p,
uint8_t *  src,
int  src_offsets[3],
int  src_stride[3],
int  width,
int  height 
)
static

Definition at line 99 of file filter_fieldorder.c.

Referenced by FieldorderDeint().

◆ filter_func()

static void filter_func ( struct ThisFilter p,
uint8_t *  dst,
int  dst_offsets[3],
const int  dst_stride[3],
int  width,
int  height,
int  parity,
int  tff,
int  dirty 
)
static

Definition at line 119 of file filter_fieldorder.c.

Referenced by FieldorderDeint(), YadifDeint(), and YadifThread().

◆ FieldorderDeint()

static int FieldorderDeint ( VideoFilter f,
VideoFrame frame,
int  field 
)
static

Definition at line 152 of file filter_fieldorder.c.

Referenced by FieldorderDeintFilter().

◆ CleanupFieldorderDeintFilter()

static void CleanupFieldorderDeintFilter ( VideoFilter filter)
static

Definition at line 181 of file filter_fieldorder.c.

Referenced by FieldorderDeintFilter().

◆ FieldorderDeintFilter()

static VideoFilter* FieldorderDeintFilter ( VideoFrameType  inpixfmt,
VideoFrameType  outpixfmt,
const int *  width,
const int *  height,
const char *  options,
int  threads 
)
static

Definition at line 193 of file filter_fieldorder.c.

Variable Documentation

◆ FmtList

FmtConv FmtList[]
static
Initial value:
=
{
}
#define FMT_NULL
Definition: filter.h:20

Definition at line 222 of file filter_fieldorder.c.

◆ filter_table

const FilterInfo filter_table[]
Initial value:
=
{
{
.filter_init= &FieldorderDeintFilter,
.name= (char*)"fieldorderdoubleprocessdeint",
.descript= (char*)"avoids synchronisation problems when matching an "
"interlaced video mode to an interlaced source",
.formats= FmtList,
.libname= NULL
}
static VideoFilter * FieldorderDeintFilter(VideoFrameType inpixfmt, VideoFrameType outpixfmt, const int *width, const int *height, const char *options, int threads)
#define NULL
Definition: H264Parser.h:62
static FmtConv FmtList[]
#define FILT_NULL
Definition: filter.h:47

Definition at line 228 of file filter_fieldorder.c.