xine-lib: xine-lib-1.2.12/src/post/planar/unsharp.c File Reference

xine-lib 1.2.12

Data Structures | Macros | Typedefs | Functions
unsharp.c File Reference
`#include "planar.h"`
`#include <xine/xine_internal.h>`
`#include <xine/post.h>`
`#include <xine/xineutils.h>`
`#include <pthread.h>`

## Data Structures
struct | FilterParam
struct | vf_priv_s
struct | unsharp_parameters_s

## Macros
#define | MIN_MATRIX_SIZE 3
#define | MAX_MATRIX_SIZE 63

## Typedefs
typedef struct FilterParam | FilterParam
typedef struct post_plugin_unsharp_s | post_plugin_unsharp_t
typedef struct unsharp_parameters_s | unsharp_parameters_t

## Functions
static void | unsharp (uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int width, int height, FilterParam *fp)
| PARAM_ITEM (PARAM_ITEM(POST_PARAM_TYPE_INT, luma_matrix_width, PARAM_ITEM(NULL, PARAM_ITEM(3, PARAM_ITEM(11, PARAM_ITEM(0, "width of the matrix (must be odd)")
static int | set_parameters (xine_post_t *this_gen, const void *param_gen)
static int | get_parameters (xine_post_t *this_gen, void *param_gen)
static xine_post_api_descr_t * | get_param_descr (void)
static char * | get_help (void)
static void | unsharp_free_SC (post_plugin_unsharp_t *this)
static void | unsharp_dispose (post_plugin_t *this_gen)
static int | unsharp_intercept_frame (post_video_port_t *port, vo_frame_t *frame)
static int | unsharp_draw (vo_frame_t *frame, xine_stream_t *stream)
static post_plugin_t * | unsharp_open_plugin (post_class_t *class_gen, int inputs, xine_audio_port_t **audio_target, xine_video_port_t **video_target)
void * | unsharp_init_plugin (xine_t *xine, const void *data)

## Macro Definition Documentation

## ◆ MAX_MATRIX_SIZE

#define MAX_MATRIX_SIZE 63

## ◆ MIN_MATRIX_SIZE

#define MIN_MATRIX_SIZE 3

## Typedef Documentation

## ◆ FilterParam

typedef struct FilterParam FilterParam

## ◆ post_plugin_unsharp_t

typedef struct post_plugin_unsharp_s post_plugin_unsharp_t

## ◆ unsharp_parameters_t

typedef struct unsharp_parameters_s unsharp_parameters_t

## Function Documentation

## ◆ get_help()

static char * get_help | ( | void |  | ) |
| static

References _.

Referenced by unsharp_open_plugin().

## ◆ get_param_descr()

static xine_post_api_descr_t * get_param_descr | ( | void |  | ) |
| static

Referenced by unsharp_open_plugin().

## ◆ get_parameters()

static int get_parameters | ( | xine_post_t * | this_gen,
|  | void * | param_gen
| ) |  |
| static

References vf_priv_s::param.

Referenced by unsharp_open_plugin().

## ◆ PARAM_ITEM()

PARAM_ITEM | ( | PARAM_ITEM( | POST_PARAM_TYPE_INT,
|  | luma_matrix_width | ,
|  | PARAM_ITEM( | NULL,
|  | PARAM_ITEM( | 3,
|  | PARAM_ITEM( | 11,
|  | PARAM_ITEM( | 0,
|  | "width of the matrix (must be odd)" |
| ) |  |

## ◆ set_parameters()

static int set_parameters | ( | xine_post_t * | this_gen,
|  | const void * | param_gen
| ) |  |
| static

References FilterParam::amount, MAX, MAX_MATRIX_SIZE, MIN, MIN_MATRIX_SIZE, FilterParam::msizeX, FilterParam::msizeY, and vf_priv_s::param.

Referenced by unsharp_open_plugin().

## ◆ unsharp()

static void unsharp | ( | uint8_t * | dst,
|  | uint8_t * | src,
|  | int | dstStride,
|  | int | srcStride,
|  | int | width,
|  | int | height,
|  | FilterParam * | fp
| ) |  |
| static

References FilterParam::amount, height, MAX_MATRIX_SIZE, FilterParam::msizeX, FilterParam::msizeY, FilterParam::SC, width, xine_fast_memcpy, and z.

Referenced by unsharp_draw().

## ◆ unsharp_dispose()

static void unsharp_dispose | ( | post_plugin_t * | this_gen | ) |
| static

References _x_post_dispose(), and unsharp_free_SC().

Referenced by unsharp_open_plugin().

## ◆ unsharp_draw()

static int unsharp_draw | ( | vo_frame_t * | frame,
|  | xine_stream_t * | stream
| ) |  |
| static

References _x_post_frame_copy_down(), _x_post_frame_copy_up(), vo_frame_s::bad_frame, vo_frame_s::base, vo_frame_s::draw, vo_frame_s::flags, vo_frame_s::format, vo_frame_s::free, xine_video_port_s::get_frame, vo_frame_s::height, vo_frame_s::lock, FilterParam::msizeX, FilterParam::msizeY, vo_frame_s::next, post_video_port_s::original_port, vo_frame_s::pitches, vo_frame_s::port, post_video_port_s::post, vo_frame_s::ratio, FilterParam::SC, unsharp(), unsharp_free_SC(), VO_BOTH_FIELDS, vo_frame_s::width, XINE_IMGFMT_YV12, yuy2_to_yv12, and z.

Referenced by unsharp_open_plugin().

## ◆ unsharp_free_SC()

static void unsharp_free_SC | ( | post_plugin_unsharp_t * | this | ) |
| static

References MAX_MATRIX_SIZE, and NULL.

Referenced by unsharp_dispose(), and unsharp_draw().

## ◆ unsharp_init_plugin()

void * unsharp_init_plugin | ( | xine_t * | xine,
|  | const void * | data
| ) |  |

References N_, NULL, post_class_s::open_plugin, and unsharp_open_plugin().

## ◆ unsharp_intercept_frame()

static int unsharp_intercept_frame | ( | post_video_port_t * | port,
|  | vo_frame_t * | frame
| ) |  |
| static

References vo_frame_s::format, XINE_IMGFMT_YUY2, and XINE_IMGFMT_YV12.

Referenced by unsharp_open_plugin().

## ◆ unsharp_open_plugin()

static post_plugin_t * unsharp_open_plugin | ( | post_class_t * | class_gen,
|  | int | inputs,
|  | xine_audio_port_t ** | audio_target,
|  | xine_video_port_t ** | video_target
| ) |  |
| static

References _x_post_init(), _x_post_intercept_video_port(), vo_frame_s::draw, get_help(), get_param_descr(), get_parameters(), input(), post_video_port_s::intercept_frame, xine_post_in_s::name, xine_post_out_s::name, post_video_port_s::new_frame, post_video_port_s::new_port, NULL, set_parameters(), xine_post_api_t::set_parameters, unsharp_dispose(), unsharp_draw(), unsharp_intercept_frame(), xine_list_push_back(), post_out_s::xine_out, and XINE_POST_DATA_PARAMETERS.

Referenced by unsharp_init_plugin().