xine-lib: xine-lib-1.2.13/src/demuxers/demux_mng.c File Reference

xine-lib 1.2.13-20230125hg15249

Data Structures | Macros | Functions | Variables
demux_mng.c File Reference
`#include <stdio.h>`
`#include <stdlib.h>`
`#include <fcntl.h>`
`#include <unistd.h>`
`#include <xine/xine_internal.h>`
`#include <xine/xineutils.h>`
`#include <xine/demux.h>`
`#include <libmng.h>`

## Data Structures
struct | demux_mng_t

## Macros
#define | LOG_MODULE "demux_mng"
#define | LOG_VERBOSE

## Functions
static mng_ptr | mymng_alloc (mng_size_t size)
static void | mymng_free (mng_ptr p, mng_size_t size)
static mng_bool | mymng_open_stream (mng_handle mngh)
static mng_bool | mymng_close_stream (mng_handle mngh)
static mng_bool | mymng_read_stream (mng_handle mngh, mng_ptr buffer, mng_uint32 size, mng_uint32 *bytesread)
static mng_bool | mymng_process_header (mng_handle mngh, mng_uint32 width, mng_uint32 height)
static mng_uint32 | mymng_get_tick_count (mng_handle mngh)
static mng_bool | mymng_set_timer (mng_handle mngh, mng_uint32 msecs)
static mng_ptr | mymng_get_canvas_line (mng_handle mngh, mng_uint32 line)
static mng_bool | mymng_refresh (mng_handle mngh, mng_uint32 x, mng_uint32 y, mng_uint32 w, mng_uint32 h)
static int | demux_mng_send_chunk (demux_plugin_t *this_gen)
static void | demux_mng_send_headers (demux_plugin_t *this_gen)
static int | demux_mng_seek (demux_plugin_t *this_gen, off_t start_pos, int start_time, int playing)
static void | demux_mng_dispose (demux_plugin_t *this_gen)
static int | demux_mng_get_status (demux_plugin_t *this_gen)
static int | demux_mng_get_stream_length (demux_plugin_t *this_gen)
static uint32_t | demux_mng_get_capabilities (demux_plugin_t *this_gen)
static int | demux_mng_get_optional_data (demux_plugin_t *this_gen, void *data, int data_type)
static demux_plugin_t * | open_plugin (demux_class_t *class_gen, xine_stream_t *stream, input_plugin_t *input)
static void * | init_plugin (xine_t *xine, const void *data)

## Variables
static const demuxer_info_t | demux_info_mng
const plugin_info_t xine_plugin_info[] | EXPORTED

## Macro Definition Documentation

## ◆ LOG_MODULE

#define LOG_MODULE "demux_mng"

## ◆ LOG_VERBOSE

#define LOG_VERBOSE

## Function Documentation

## ◆ demux_mng_dispose()

static void demux_mng_dispose | ( | demux_plugin_t * | this_gen | ) |
| static

Referenced by open_plugin().

## ◆ demux_mng_get_capabilities()

static uint32_t demux_mng_get_capabilities | ( | demux_plugin_t * | this_gen | ) |
| static

References DEMUX_CAP_NOCAP.

Referenced by open_plugin().

## ◆ demux_mng_get_optional_data()

static int demux_mng_get_optional_data | ( | demux_plugin_t * | this_gen,
|  | void * | data,
|  | int | data_type )
| static

References DEMUX_OPTIONAL_UNSUPPORTED.

Referenced by open_plugin().

## ◆ demux_mng_get_status()

static int demux_mng_get_status | ( | demux_plugin_t * | this_gen | ) |
| static

Referenced by open_plugin().

## ◆ demux_mng_get_stream_length()

static int demux_mng_get_stream_length | ( | demux_plugin_t * | this_gen | ) |
| static

Referenced by open_plugin().

## ◆ demux_mng_seek()

static int demux_mng_seek | ( | demux_plugin_t * | this_gen,
|  | off_t | start_pos,
|  | int | start_time,
|  | int | playing )
| static

Referenced by open_plugin().

## ◆ demux_mng_send_chunk()

static int demux_mng_send_chunk | ( | demux_plugin_t * | this_gen | ) |
| static

References BUF_FLAG_FRAME_END, BUF_FLAG_FRAMERATE, BUF_VIDEO_RGB, buf_element_s::content, buf_element_s::decoder_flags, buf_element_s::decoder_info, DEMUX_FINISHED, buf_element_s::extra_info, input(), extra_info_s::input_normpos, extra_info_s::input_time, lprintf, buf_element_s::max_size, buf_element_s::pts, buf_element_s::size, and buf_element_s::type.

Referenced by open_plugin().

## ◆ demux_mng_send_headers()

static void demux_mng_send_headers | ( | demux_plugin_t * | this_gen | ) |
| static

References _x_demux_control_newpts(), _x_demux_control_start(), _x_stream_info_set(), BUF_FLAG_FRAME_END, BUF_FLAG_HEADER, BUF_FLAG_STDHEADER, BUF_VIDEO_RGB, buf_element_s::content, buf_element_s::decoder_flags, DEMUX_OK, buf_element_s::size, buf_element_s::type, XINE_STREAM_INFO_HAS_AUDIO, XINE_STREAM_INFO_HAS_VIDEO, XINE_STREAM_INFO_VIDEO_HEIGHT, and XINE_STREAM_INFO_VIDEO_WIDTH.

Referenced by open_plugin().

## ◆ init_plugin()

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

References demux_plugin_s::dispose, N_, NULL, demux_class_s::open_plugin, and open_plugin().

## ◆ mymng_alloc()

static mng_ptr mymng_alloc | ( | mng_size_t | size | ) |
| static

Referenced by open_plugin().

## ◆ mymng_close_stream()

static mng_bool mymng_close_stream | ( | mng_handle | mngh | ) |
| static

References DEMUX_FINISHED.

Referenced by open_plugin().

## ◆ mymng_free()

static void mymng_free | ( | mng_ptr | p,
|  | mng_size_t | size )
| static

Referenced by open_plugin().

## ◆ mymng_get_canvas_line()

static mng_ptr mymng_get_canvas_line | ( | mng_handle | mngh,
|  | mng_uint32 | line )
| static

Referenced by open_plugin().

## ◆ mymng_get_tick_count()

static mng_uint32 mymng_get_tick_count | ( | mng_handle | mngh | ) |
| static

Referenced by open_plugin().

## ◆ mymng_open_stream()

static mng_bool mymng_open_stream | ( | mng_handle | mngh | ) |
| static

References input(), and INPUT_IS_SEEKABLE.

Referenced by open_plugin().

## ◆ mymng_process_header()

static mng_bool mymng_process_header | ( | mng_handle | mngh,
|  | mng_uint32 | width,
|  | mng_uint32 | height )
| static

References height, and width.

Referenced by open_plugin().

## ◆ mymng_read_stream()

static mng_bool mymng_read_stream | ( | mng_handle | mngh,
|  | mng_ptr | buffer,
|  | mng_uint32 | size,
|  | mng_uint32 * | bytesread )
| static

References input().

Referenced by open_plugin().

## ◆ mymng_refresh()

static mng_bool mymng_refresh | ( | mng_handle | mngh,
|  | mng_uint32 | x,
|  | mng_uint32 | y,
|  | mng_uint32 | w,
|  | mng_uint32 | h )
| static

Referenced by open_plugin().

## ◆ mymng_set_timer()

static mng_bool mymng_set_timer | ( | mng_handle | mngh,
|  | mng_uint32 | msecs )
| static

Referenced by open_plugin().

## ◆ open_plugin()

static demux_plugin_t * open_plugin | ( | demux_class_t * | class_gen,
|  | xine_stream_t * | stream,
|  | input_plugin_t * | input )
| static

References xine_stream_s::content_detection_method, DEMUX_FINISHED, demux_mng_dispose(), demux_mng_get_capabilities(), demux_mng_get_optional_data(), demux_mng_get_status(), demux_mng_get_stream_length(), demux_mng_seek(), demux_mng_send_chunk(), demux_mng_send_headers(), input(), INPUT_IS_SEEKABLE, METHOD_BY_CONTENT, METHOD_BY_MRL, METHOD_EXPLICIT, mymng_alloc(), mymng_close_stream(), mymng_free(), mymng_get_canvas_line(), mymng_get_tick_count(), mymng_open_stream(), mymng_process_header(), mymng_read_stream(), mymng_refresh(), mymng_set_timer(), NULL, and input_plugin_s::seek.

Referenced by init_plugin().

## Variable Documentation

## ◆ demux_info_mng

const demuxer_info_t demux_info_mng
| static

Initial value:
= {
.priority = 10,
}

## ◆ EXPORTED

const plugin_info_t xine_plugin_info [] EXPORTED

Initial value:
= {
{ PLUGIN_DEMUX, 27, "mng", XINE_VERSION_CODE, &demux_info_mng, init_plugin},
{ PLUGIN_NONE, 0, NULL, 0, NULL, NULL }
}
demux_info_mng
static const demuxer_info_t demux_info_mng
Definition demux_mng.c:377
init_plugin
static void * init_plugin(xine_t *xine, const void *data)
Definition demux_mng.c:356
XINE_VERSION_CODE
#define XINE_VERSION_CODE
Definition xine_internal.h:57
NULL
NULL
Definition xine_plugin.c:78
PLUGIN_DEMUX
#define PLUGIN_DEMUX
Definition xine_plugin.h:31
PLUGIN_NONE
#define PLUGIN_NONE
Definition xine_plugin.h:29