xine-lib: xine-lib-1.2.12/src/video_out/video_out_stk.c File Reference

xine-lib 1.2.12

Data Structures | Macros | Typedefs | Functions | Variables
video_out_stk.c File Reference
`#include <stdio.h>`
`#include <stdlib.h>`
`#include <string.h>`
`#include <inttypes.h>`
`#include <math.h>`
`#include <libstk/stk_c_wrapper.h>`
`#include "xine.h"`
`#include <xine/xine_internal.h>`
`#include <xine/video_out.h>`
`#include <xine/xineutils.h>`
`#include <xine/vo_scale.h>`

## Data Structures
struct | stk_frame_s
struct | stk_driver_s
struct | stk_class_t

## Macros
#define | LOG_MODULE "video_out_stk"
#define | LOG_VERBOSE

## Typedefs
typedef struct stk_frame_s | stk_frame_t
typedef struct stk_driver_s | stk_driver_t

## Functions
static uint32_t | stk_get_capabilities (vo_driver_t *this_gen)
static void | stk_frame_proc_slice (vo_frame_t *vo_img, uint8_t **src)
static void | stk_frame_field (vo_frame_t *vo_img, int which_field)
static void | stk_frame_dispose (vo_frame_t *vo_img)
static vo_frame_t * | stk_alloc_frame (vo_driver_t *this_gen)
static void | stk_compute_ideal_size (stk_driver_t *this)
static void | stk_compute_output_size (stk_driver_t *this)
static void | stk_update_frame_format (vo_driver_t *this_gen, vo_frame_t *frame_gen, uint32_t width, uint32_t height, double ratio, int format, int flags)
static void | stk_overlay_blend (vo_driver_t *this_gen, vo_frame_t *frame_gen, vo_overlay_t *overlay)
static void | stk_check_events (stk_driver_t *this)
static int | stk_redraw_needed (vo_driver_t *this_gen)
static void | stk_display_frame (vo_driver_t *this_gen, vo_frame_t *frame_gen)
static int | stk_get_property (vo_driver_t *this_gen, int property)
static int | stk_set_property (vo_driver_t *this_gen, int property, int value)
static void | stk_get_property_min_max (vo_driver_t *this_gen, int property, int *min, int *max)
static int | stk_gui_data_exchange (vo_driver_t *this_gen, int data_type, void *data)
static void | stk_dispose (vo_driver_t *this_gen)
static vo_driver_t * | open_plugin (video_driver_class_t *class_gen, const void *visual_gen)
static void * | init_class (xine_t *xine, const void *visual_gen)

## Variables
static const vo_info_t | vo_info_stk
const plugin_info_t xine_plugin_info[] | EXPORTED

## Macro Definition Documentation

## ◆ LOG_MODULE

#define LOG_MODULE "video_out_stk"

## ◆ LOG_VERBOSE

#define LOG_VERBOSE

## Typedef Documentation

## ◆ stk_driver_t

typedef struct stk_driver_s stk_driver_t

## ◆ stk_frame_t

typedef struct stk_frame_s stk_frame_t

## Function Documentation

## ◆ init_class()

static void * init_class | ( | xine_t * | xine,
|  | const void * | visual_gen
| ) |  |
| static

Class Functions

References default_video_driver_class_dispose, video_driver_class_s::description, video_driver_class_s::dispose, stk_class_t::driver_class, video_driver_class_s::identifier, N_, NULL, open_plugin(), video_driver_class_s::open_plugin, and stk_class_t::xine.

## ◆ open_plugin()

static vo_driver_t * open_plugin | ( | video_driver_class_t * | class_gen,
|  | const void * | visual_gen
| ) |  |
| static

References _x_alphablend_init(), _x_vo_scale_init(), xine_s::config, NULL, stk_alloc_frame(), stk_display_frame(), stk_dispose(), stk_get_capabilities(), stk_get_property(), stk_get_property_min_max(), stk_gui_data_exchange(), stk_overlay_blend(), stk_redraw_needed(), stk_set_property(), stk_update_frame_format(), VO_CAP_YUY2, VO_CAP_YV12, stk_class_t::xine, xine_setenv, XINE_VERBOSITY_DEBUG, and xprintf.

Referenced by init_class().

## ◆ stk_alloc_frame()

static vo_frame_t * stk_alloc_frame | ( | vo_driver_t * | this_gen | ) |
| static

References vo_frame_s::dispose, vo_frame_s::field, vo_frame_s::mutex, NULL, vo_frame_s::proc_frame, vo_frame_s::proc_slice, stk_frame_dispose(), stk_frame_field(), stk_frame_proc_slice(), and stk_frame_s::vo_frame.

Referenced by open_plugin().

## ◆ stk_check_events()

static void stk_check_events | ( | stk_driver_t * | this | ) |
| static

Referenced by stk_display_frame().

## ◆ stk_compute_ideal_size()

static void stk_compute_ideal_size | ( | stk_driver_t * | this | ) |
| static

References _x_vo_scale_compute_ideal_size().

Referenced by stk_display_frame(), and stk_set_property().

## ◆ stk_compute_output_size()

static void stk_compute_output_size | ( | stk_driver_t * | this | ) |
| static

References _x_vo_scale_compute_output_size(), and lprintf.

Referenced by stk_redraw_needed().

## ◆ stk_display_frame()

static void stk_display_frame | ( | vo_driver_t * | this_gen,
|  | vo_frame_t * | frame_gen
| ) |  |
| static

References vo_frame_s::free, stk_frame_s::height, stk_frame_s::overlay, stk_frame_s::ratio, stk_check_events(), stk_compute_ideal_size(), stk_redraw_needed(), stk_frame_s::vo_frame, stk_frame_s::width, XINE_VERBOSITY_DEBUG, and xprintf.

Referenced by open_plugin().

## ◆ stk_dispose()

static void stk_dispose | ( | vo_driver_t * | this_gen | ) |
| static

References _x_alphablend_free(), and _x_vo_scale_cleanup().

Referenced by open_plugin().

## ◆ stk_frame_dispose()

static void stk_frame_dispose | ( | vo_frame_t * | vo_img | ) |
| static

References stk_frame_s::overlay.

Referenced by stk_alloc_frame().

## ◆ stk_frame_field()

static void stk_frame_field | ( | vo_frame_t * | vo_img,
|  | int | which_field
| ) |  |
| static

Referenced by stk_alloc_frame().

## ◆ stk_frame_proc_slice()

static void stk_frame_proc_slice | ( | vo_frame_t * | vo_img,
|  | uint8_t ** | src
| ) |  |
| static

Referenced by stk_alloc_frame().

## ◆ stk_get_capabilities()

static uint32_t stk_get_capabilities | ( | vo_driver_t * | this_gen | ) |
| static

Referenced by open_plugin().

## ◆ stk_get_property()

static int stk_get_property | ( | vo_driver_t * | this_gen,
|  | int | property
| ) |  |
| static

References VO_PROP_ASPECT_RATIO.

Referenced by open_plugin().

## ◆ stk_get_property_min_max()

static void stk_get_property_min_max | ( | vo_driver_t * | this_gen,
|  | int | property,
|  | int * | min,
|  | int * | max
| ) |  |
| static

Referenced by open_plugin().

## ◆ stk_gui_data_exchange()

static int stk_gui_data_exchange | ( | vo_driver_t * | this_gen,
|  | int | data_type,
|  | void * | data
| ) |  |
| static

References XINE_GUI_SEND_COMPLETION_EVENT, XINE_GUI_SEND_DRAWABLE_CHANGED, XINE_GUI_SEND_EXPOSE_EVENT, and XINE_GUI_SEND_TRANSLATE_GUI_TO_VIDEO.

Referenced by open_plugin().

## ◆ stk_overlay_blend()

static void stk_overlay_blend | ( | vo_driver_t * | this_gen,
|  | vo_frame_t * | frame_gen,
|  | vo_overlay_t * | overlay
| ) |  |
| static

References _x_blend_yuv(), _x_blend_yuy2(), vo_frame_s::base, stk_frame_s::format, stk_frame_s::height, vo_frame_s::overlay_offset_x, vo_frame_s::overlay_offset_y, vo_frame_s::pitches, vo_overlay_s::rle, stk_frame_s::vo_frame, stk_frame_s::width, and XINE_IMGFMT_YV12.

Referenced by open_plugin().

## ◆ stk_redraw_needed()

static int stk_redraw_needed | ( | vo_driver_t * | this_gen | ) |
| static

References stk_compute_output_size().

Referenced by open_plugin(), and stk_display_frame().

## ◆ stk_set_property()

static int stk_set_property | ( | vo_driver_t * | this_gen,
|  | int | property,
|  | int | value
| ) |  |
| static

References _x_vo_scale_aspect_ratio_name_table, stk_compute_ideal_size(), VO_PROP_ASPECT_RATIO, XINE_VERBOSITY_DEBUG, XINE_VO_ASPECT_AUTO, XINE_VO_ASPECT_NUM_RATIOS, and xprintf.

Referenced by open_plugin().

## ◆ stk_update_frame_format()

static void stk_update_frame_format | ( | vo_driver_t * | this_gen,
|  | vo_frame_t * | frame_gen,
|  | uint32_t | width,
|  | uint32_t | height,
|  | double | ratio,
|  | int | format,
|  | int | flags
| ) |  |
| static

References vo_frame_s::base, vo_frame_s::format, stk_frame_s::format, vo_frame_s::height, height, stk_frame_s::height, lprintf, NULL, stk_frame_s::overlay, vo_frame_s::pitches, stk_frame_s::ratio, stk_frame_s::vo_frame, vo_frame_s::width, width, stk_frame_s::width, XINE_IMGFMT_YUY2, and XINE_IMGFMT_YV12.

Referenced by open_plugin().

## Variable Documentation

## ◆ EXPORTED

const plugin_info_t xine_plugin_info [] EXPORTED

Initial value:
= {
{ PLUGIN_VIDEO_OUT, 22, "stk", XINE_VERSION_CODE, &vo_info_stk, init_class },
{ PLUGIN_NONE, 0, NULL, 0, NULL, NULL }
}
vo_info_stk
static const vo_info_t vo_info_stk
Definition: video_out_stk.c:463
init_class
static void * init_class(xine_t *xine, const void *visual_gen)
Definition: video_out_stk.c:443
XINE_VERSION_CODE
#define XINE_VERSION_CODE
Definition: xine_internal.h:57
NULL
NULL
Definition: xine_plugin.c:78
PLUGIN_NONE
#define PLUGIN_NONE
Definition: xine_plugin.h:29
PLUGIN_VIDEO_OUT
#define PLUGIN_VIDEO_OUT
Definition: xine_plugin.h:36

## ◆ vo_info_stk

const vo_info_t vo_info_stk
| static

Initial value:
= {
.priority = 4,
.visual_type = XINE_VISUAL_TYPE_FB,
}
XINE_VISUAL_TYPE_FB
#define XINE_VISUAL_TYPE_FB
Definition: xine.h:157