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

Data Structures

struct  demux_wav_t
 

Macros

#define WAV_SIGNATURE_SIZE   12
 
#define data_TAG   0x61746164
 
#define fmt_TAG   0x20746D66
 
#define PCM_BLOCK_ALIGN   1024
 
#define PREFERED_BLOCK_SIZE   4096
 

Functions

static int demux_wav_get_stream_length (demux_plugin_t *this_gen)
 
static int find_chunk_by_tag (demux_wav_t *this, const uint32_t given_chunk_tag, uint32_t *found_chunk_size, off_t *found_chunk_pos)
 
static int probe_wav_file (input_plugin_t *input)
 
static int open_wav_file (demux_wav_t *this)
 
static int demux_wav_send_chunk (demux_plugin_t *this_gen)
 
static void demux_wav_send_headers (demux_plugin_t *this_gen)
 
static int demux_wav_seek (demux_plugin_t *this_gen, off_t start_pos, int start_time, int playing)
 
static void demux_wav_dispose (demux_plugin_t *this_gen)
 
static int demux_wav_get_status (demux_plugin_t *this_gen)
 
static uint32_t demux_wav_get_capabilities (demux_plugin_t *this_gen)
 
static int demux_wav_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_wav_init_plugin (xine_t *xine, const void *data)
 

Macro Definition Documentation

◆ data_TAG

#define data_TAG   0x61746164

Referenced by open_wav_file().

◆ fmt_TAG

#define fmt_TAG   0x20746D66

Referenced by open_wav_file().

◆ PCM_BLOCK_ALIGN

#define PCM_BLOCK_ALIGN   1024

◆ PREFERED_BLOCK_SIZE

#define PREFERED_BLOCK_SIZE   4096

Referenced by open_wav_file().

◆ WAV_SIGNATURE_SIZE

#define WAV_SIGNATURE_SIZE   12

Function Documentation

◆ demux_wav_dispose()

static void demux_wav_dispose ( demux_plugin_t * this_gen)
static

References _x_freep().

Referenced by open_plugin().

◆ demux_wav_get_capabilities()

static uint32_t demux_wav_get_capabilities ( demux_plugin_t * this_gen)
static

References DEMUX_CAP_NOCAP.

Referenced by open_plugin().

◆ demux_wav_get_optional_data()

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

References DEMUX_OPTIONAL_UNSUPPORTED.

Referenced by open_plugin().

◆ demux_wav_get_status()

static int demux_wav_get_status ( demux_plugin_t * this_gen)
static

Referenced by open_plugin().

◆ demux_wav_get_stream_length()

static int demux_wav_get_stream_length ( demux_plugin_t * this_gen)
static

Referenced by demux_wav_seek(), and open_plugin().

◆ demux_wav_init_plugin()

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

◆ demux_wav_seek()

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

◆ demux_wav_send_chunk()

static int demux_wav_send_chunk ( demux_plugin_t * this_gen)
static

◆ demux_wav_send_headers()

static void demux_wav_send_headers ( demux_plugin_t * this_gen)
static

◆ find_chunk_by_tag()

static int find_chunk_by_tag ( demux_wav_t * this,
const uint32_t given_chunk_tag,
uint32_t * found_chunk_size,
off_t * found_chunk_pos )
static

References _X_LE_32, input(), and WAV_SIGNATURE_SIZE.

Referenced by open_wav_file().

◆ open_plugin()

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

◆ open_wav_file()

static int open_wav_file ( demux_wav_t * this)
static

◆ probe_wav_file()

static int probe_wav_file ( input_plugin_t * input)
static