xine-lib 1.2.13-20230125hg15249
Data Structures | Macros | Enumerations | Functions | Variables
demux_aac.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"
#include "id3.h"

Data Structures

struct  demux_aac_t
 

Macros

#define LOG_MODULE   "demux_aac"
 
#define LOG_VERBOSE
 

Enumerations

enum  demux_aac_mode_t { DEMUX_AAC_ADTS = 0 , DEMUX_AAC_ADIF }
 

Functions

static int probe_aac_file (xine_stream_t *stream, input_plugin_t *input, demux_aac_mode_t *mode)
 
static uint32_t demux_aac_samples_per_frame (uint32_t object_type)
 
static void demux_aac_apply_adts (demux_aac_t *this, const uint8_t *buf)
 
static uint32_t demux_aac_get_bits (const uint8_t *buf, uint32_t bitpos, uint32_t bits)
 
static void demux_aac_apply_adif (demux_aac_t *this, const uint8_t *buf)
 
static int demux_aac_next (demux_aac_t *this, uint8_t *buf)
 
static int demux_aac_send_chunk (demux_plugin_t *this_gen)
 
static void demux_aac_send_headers (demux_plugin_t *this_gen)
 
static int demux_aac_seek (demux_plugin_t *this_gen, off_t start_pos, int start_time, int playing)
 
static int demux_aac_get_status (demux_plugin_t *this_gen)
 
static int demux_aac_get_stream_length (demux_plugin_t *this_gen)
 
static uint32_t demux_aac_get_capabilities (demux_plugin_t *this_gen)
 
static int demux_aac_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_aac_init_plugin (xine_t *xine, const void *data)
 

Variables

static const uint32_t demux_aac_sample_rates [16]
 

Macro Definition Documentation

◆ LOG_MODULE

#define LOG_MODULE   "demux_aac"

◆ LOG_VERBOSE

#define LOG_VERBOSE

Enumeration Type Documentation

◆ demux_aac_mode_t

Enumerator
DEMUX_AAC_ADTS 
DEMUX_AAC_ADIF 

Function Documentation

◆ demux_aac_apply_adif()

static void demux_aac_apply_adif ( demux_aac_t * this,
const uint8_t * buf )
static

◆ demux_aac_apply_adts()

static void demux_aac_apply_adts ( demux_aac_t * this,
const uint8_t * buf )
static

◆ demux_aac_get_bits()

static uint32_t demux_aac_get_bits ( const uint8_t * buf,
uint32_t bitpos,
uint32_t bits )
static

References _X_BE_32, and bits.

Referenced by demux_aac_apply_adif().

◆ demux_aac_get_capabilities()

static uint32_t demux_aac_get_capabilities ( demux_plugin_t * this_gen)
static

References DEMUX_CAP_NOCAP.

Referenced by open_plugin().

◆ demux_aac_get_optional_data()

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

References DEMUX_OPTIONAL_UNSUPPORTED.

Referenced by open_plugin().

◆ demux_aac_get_status()

static int demux_aac_get_status ( demux_plugin_t * this_gen)
static

Referenced by open_plugin().

◆ demux_aac_get_stream_length()

static int demux_aac_get_stream_length ( demux_plugin_t * this_gen)
static

Referenced by open_plugin().

◆ demux_aac_init_plugin()

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

◆ demux_aac_next()

static int demux_aac_next ( demux_aac_t * this,
uint8_t * buf )
static

◆ demux_aac_samples_per_frame()

static uint32_t demux_aac_samples_per_frame ( uint32_t object_type)
static

◆ demux_aac_seek()

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

◆ demux_aac_send_chunk()

static int demux_aac_send_chunk ( demux_plugin_t * this_gen)
static

◆ demux_aac_send_headers()

static void demux_aac_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

◆ probe_aac_file()

static int probe_aac_file ( xine_stream_t * stream,
input_plugin_t * input,
demux_aac_mode_t * mode )
static

Variable Documentation

◆ demux_aac_sample_rates

const uint32_t demux_aac_sample_rates[16]
static
Initial value:
= {
96000, 88200, 64000, 48000, 44100, 32000, 24000, 22050,
16000, 12000, 11025, 8000, 0, 0, 0, 0
}

Referenced by demux_aac_apply_adif(), and demux_aac_apply_adts().