xine-lib 1.2.13-20230125hg15249
Data Structures | Macros | Functions
demux_smjpeg.c File Reference
#include <stdio.h>
#include <fcntl.h>
#include <unistd.h>
#include <string.h>
#include <stdlib.h>
#include <xine/xine_internal.h>
#include <xine/xineutils.h>
#include <xine/compat.h>
#include <xine/demux.h>
#include "bswap.h"
#include "group_games.h"

Data Structures

struct  demux_smjpeg_t
 

Macros

#define LOG_MODULE   "demux_smjpeg"
 
#define FOURCC_TAG   BE_FOURCC
 
#define _TXT_TAG   FOURCC_TAG('_', 'T', 'X', 'T')
 
#define _SND_TAG   FOURCC_TAG('_', 'S', 'N', 'D')
 
#define _VID_TAG   FOURCC_TAG('_', 'V', 'I', 'D')
 
#define HEND_TAG   FOURCC_TAG('H', 'E', 'N', 'D')
 
#define sndD_TAG   FOURCC_TAG('s', 'n', 'd', 'D')
 
#define vidD_TAG   FOURCC_TAG('v', 'i', 'd', 'D')
 
#define APCM_TAG   FOURCC_TAG('A', 'P', 'C', 'M')
 
#define SMJPEG_VIDEO_HEADER_SIZE   16
 
#define SMJPEG_AUDIO_HEADER_SIZE   12
 
#define SMJPEG_HEADER_CHUNK_MAX_SIZE   SMJPEG_VIDEO_HEADER_SIZE
 
#define SMJPEG_CHUNK_PREAMBLE_SIZE   12
 

Functions

static int open_smjpeg_file (demux_smjpeg_t *this)
 
static int demux_smjpeg_send_chunk (demux_plugin_t *this_gen)
 
static void demux_smjpeg_send_headers (demux_plugin_t *this_gen)
 
static int demux_smjpeg_seek (demux_plugin_t *this_gen, off_t start_pos, int start_time, int playing)
 
static int demux_smjpeg_get_status (demux_plugin_t *this_gen)
 
static int demux_smjpeg_get_stream_length (demux_plugin_t *this_gen)
 
static uint32_t demux_smjpeg_get_capabilities (demux_plugin_t *this_gen)
 
static int demux_smjpeg_get_optional_data (demux_plugin_t *this_gen, void *data, int data_type)
 
static demux_plugin_topen_plugin (demux_class_t *class_gen, xine_stream_t *stream, input_plugin_t *input)
 
void * demux_smjpeg_init_plugin (xine_t *xine, const void *data)
 

Macro Definition Documentation

◆ _SND_TAG

#define _SND_TAG   FOURCC_TAG('_', 'S', 'N', 'D')

Referenced by open_smjpeg_file().

◆ _TXT_TAG

#define _TXT_TAG   FOURCC_TAG('_', 'T', 'X', 'T')

◆ _VID_TAG

#define _VID_TAG   FOURCC_TAG('_', 'V', 'I', 'D')

Referenced by open_smjpeg_file().

◆ APCM_TAG

#define APCM_TAG   FOURCC_TAG('A', 'P', 'C', 'M')

Referenced by open_smjpeg_file().

◆ FOURCC_TAG

#define FOURCC_TAG   BE_FOURCC

◆ HEND_TAG

#define HEND_TAG   FOURCC_TAG('H', 'E', 'N', 'D')

Referenced by open_smjpeg_file().

◆ LOG_MODULE

#define LOG_MODULE   "demux_smjpeg"

Referenced by open_smjpeg_file().

◆ SMJPEG_AUDIO_HEADER_SIZE

#define SMJPEG_AUDIO_HEADER_SIZE   12

Referenced by open_smjpeg_file().

◆ SMJPEG_CHUNK_PREAMBLE_SIZE

#define SMJPEG_CHUNK_PREAMBLE_SIZE   12

Referenced by demux_smjpeg_send_chunk().

◆ SMJPEG_HEADER_CHUNK_MAX_SIZE

#define SMJPEG_HEADER_CHUNK_MAX_SIZE   SMJPEG_VIDEO_HEADER_SIZE

Referenced by open_smjpeg_file().

◆ SMJPEG_VIDEO_HEADER_SIZE

#define SMJPEG_VIDEO_HEADER_SIZE   16

Referenced by open_smjpeg_file().

◆ sndD_TAG

#define sndD_TAG   FOURCC_TAG('s', 'n', 'd', 'D')

Referenced by demux_smjpeg_send_chunk().

◆ vidD_TAG

#define vidD_TAG   FOURCC_TAG('v', 'i', 'd', 'D')

Referenced by demux_smjpeg_send_chunk().

Function Documentation

◆ demux_smjpeg_get_capabilities()

static uint32_t demux_smjpeg_get_capabilities ( demux_plugin_t * this_gen)
static

References DEMUX_CAP_NOCAP.

Referenced by open_plugin().

◆ demux_smjpeg_get_optional_data()

static int demux_smjpeg_get_optional_data ( demux_plugin_t * this_gen,
void * data,
int data_type )
static

References DEMUX_OPTIONAL_UNSUPPORTED.

Referenced by open_plugin().

◆ demux_smjpeg_get_status()

static int demux_smjpeg_get_status ( demux_plugin_t * this_gen)
static

Referenced by open_plugin().

◆ demux_smjpeg_get_stream_length()

static int demux_smjpeg_get_stream_length ( demux_plugin_t * this_gen)
static

Referenced by open_plugin().

◆ demux_smjpeg_init_plugin()

void * demux_smjpeg_init_plugin ( xine_t * xine,
const void * data )

◆ demux_smjpeg_seek()

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

References DEMUX_OK.

Referenced by open_plugin().

◆ demux_smjpeg_send_chunk()

static int demux_smjpeg_send_chunk ( demux_plugin_t * this_gen)
static

◆ demux_smjpeg_send_headers()

static void demux_smjpeg_send_headers ( demux_plugin_t * this_gen)
static

◆ open_plugin()

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

◆ open_smjpeg_file()

static int open_smjpeg_file ( demux_smjpeg_t * this)
static