xine-lib: xine-lib-1.2.12/src/video_dec/image.c File Reference

xine-lib 1.2.12

Data Structures | Macros | Typedefs | Functions | Variables
image.c File Reference
`#include <stdlib.h>`
`#include <string.h>`
`#include <sys/types.h>`
`#include <unistd.h>`
`#include <stdio.h>`
`#include <wand/magick_wand.h>`
`#include <xine/xine_internal.h>`
`#include <xine/video_out.h>`
`#include <xine/buffer.h>`
`#include <xine/xineutils.h>`
`#include <xine/xine_buffer.h>`
`#include "bswap.h"`

## Data Structures
struct | image_decoder_s

## Macros
#define | LOG_MODULE "image_video_decoder"
#define | LOG_VERBOSE
#define | MAGICK_VERSION 0x660

## Typedefs
typedef struct image_decoder_s | image_decoder_t

## Functions
static vo_frame_t * | _image_decode_data (image_decoder_t *this, unsigned char *data, size_t size)
static void | image_decode_data (video_decoder_t *this_gen, buf_element_t *buf)
static void | image_flush (video_decoder_t *this_gen)
static void | image_reset (video_decoder_t *this_gen)
static void | image_discontinuity (video_decoder_t *this_gen)
static void | image_dispose (video_decoder_t *this_gen)
static video_decoder_t * | open_plugin (video_decoder_class_t *class_gen, xine_stream_t *stream)
static void * | init_class (xine_t *xine, const void *data)

## Variables
static const uint32_t | supported_types []
static const decoder_info_t | dec_info_image
const plugin_info_t xine_plugin_info[] | EXPORTED

## Macro Definition Documentation

## ◆ LOG_MODULE

#define LOG_MODULE "image_video_decoder"

## ◆ LOG_VERBOSE

#define LOG_VERBOSE

## ◆ MAGICK_VERSION

#define MAGICK_VERSION 0x660

## Typedef Documentation

## ◆ image_decoder_t

typedef struct image_decoder_s image_decoder_t

## Function Documentation

## ◆ _image_decode_data()

static vo_frame_t * _image_decode_data | ( | image_decoder_t * | this,
|  | unsigned char * | data,
|  | size_t | size
| ) |  |
| static

References _x_stream_info_set(), vo_frame_s::bad_frame, vo_frame_s::base, vo_frame_s::duration, vo_frame_s::format, vo_frame_s::height, height, LOG_MODULE, lprintf, NULL, vo_frame_s::pitches, vo_frame_s::ratio, rgb2yuy2_alloc(), rgb2yuy2_free(), rgb2yuy2_slice(), rgb2yv12_slice(), VO_BOTH_FIELDS, VO_CAP_FULLRANGE, VO_CAP_YUY2, VO_SET_FLAGS_CM, vo_frame_s::width, width, XINE_IMGFMT_YUY2, XINE_IMGFMT_YV12, XINE_STREAM_INFO_FRAME_DURATION, XINE_STREAM_INFO_VIDEO_HEIGHT, XINE_STREAM_INFO_VIDEO_WIDTH, XINE_VERBOSITY_LOG, and xprintf.

Referenced by image_decode_data().

## ◆ image_decode_data()

static void image_decode_data | ( | video_decoder_t * | this_gen,
|  | buf_element_t * | buf
| ) |  |
| static

References _image_decode_data(), BUF_FLAG_FRAME_END, BUF_FLAG_PREVIEW, buf_element_s::content, buf_element_s::decoder_flags, buf_element_s::mem, NULL, buf_element_s::pts, buf_element_s::size, and xine_buffer_copyin.

Referenced by open_plugin().

## ◆ image_discontinuity()

static void image_discontinuity | ( | video_decoder_t * | this_gen | ) |
| static

Referenced by open_plugin().

## ◆ image_dispose()

static void image_dispose | ( | video_decoder_t * | this_gen | ) |
| static

References lprintf, NULL, and xine_buffer_free.

Referenced by open_plugin().

## ◆ image_flush()

static void image_flush | ( | video_decoder_t * | this_gen | ) |
| static

References NULL.

Referenced by open_plugin().

## ◆ image_reset()

static void image_reset | ( | video_decoder_t * | this_gen | ) |
| static

References NULL.

Referenced by open_plugin().

## ◆ init_class()

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

References N_, NULL, open_plugin(), and video_decoder_class_s::open_plugin.

## ◆ open_plugin()

static video_decoder_t * open_plugin | ( | video_decoder_class_t * | class_gen,
|  | xine_stream_t * | stream
| ) |  |
| static

References image_decode_data(), image_discontinuity(), image_dispose(), image_flush(), image_reset(), lprintf, NULL, and xine_buffer_init().

Referenced by init_class().

## Variable Documentation

## ◆ dec_info_image

const decoder_info_t dec_info_image
| static

Initial value:
= {
.supported_types = supported_types,
.priority = 7,
}
supported_types
static const uint32_t supported_types[]
Definition: image.c:363

## ◆ EXPORTED

const plugin_info_t xine_plugin_info [] EXPORTED

Initial value:
= {
{ PLUGIN_VIDEO_DECODER, 19, "image", XINE_VERSION_CODE, &dec_info_image, init_class },
{ PLUGIN_NONE, 0, NULL, 0, NULL, NULL }
}
init_class
static void * init_class(xine_t *xine, const void *data)
Definition: image.c:344
dec_info_image
static const decoder_info_t dec_info_image
Definition: image.c:370
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_DECODER
#define PLUGIN_VIDEO_DECODER
Definition: xine_plugin.h:33

## ◆ supported_types

const uint32_t supported_types[]
| static

Initial value:
= {
BUF_VIDEO_IMAGE,
BUF_VIDEO_JPEG,
BUF_VIDEO_PNG,
0
}
BUF_VIDEO_PNG
#define BUF_VIDEO_PNG
Definition: buffer.h:198
BUF_VIDEO_JPEG
#define BUF_VIDEO_JPEG
Definition: buffer.h:108
BUF_VIDEO_IMAGE
#define BUF_VIDEO_IMAGE
Definition: buffer.h:151