ogg.c File Reference

Include dependency graph for ogg.c:


Data Structures

struct  logical_stream_s
struct  demux_sys_t
struct  stream_header_video_t
struct  stream_header_audio_t
struct  stream_header_t

Defines

#define OGG_BLOCK_SIZE   4096
#define PACKET_TYPE_HEADER   0x01
#define PACKET_TYPE_BITS   0x07
#define PACKET_LEN_BITS01   0xc0
#define PACKET_LEN_BITS2   0x02
#define PACKET_IS_SYNCPOINT   0x08

Typedefs

typedef struct logical_stream_s logical_stream_t

Functions

static int Open (vlc_object_t *)
 Probes and initializes.
static void Close (vlc_object_t *)
 Releases resources.
int vlc_entry__main (module_t *p_module)
const char * vlc_entry_license__main (void)
static int Demux (demux_t *)
static int Control (demux_t *, int, va_list)
static int Ogg_ReadPage (demux_t *, ogg_page *)
static void Ogg_UpdatePCR (logical_stream_t *, ogg_packet *)
static void Ogg_DecodePacket (demux_t *, logical_stream_t *, ogg_packet *)
static int Ogg_BeginningOfStream (demux_t *p_demux)
static int Ogg_FindLogicalStreams (demux_t *p_demux)
static void Ogg_EndOfStream (demux_t *p_demux)
static void Ogg_LogicalStreamDelete (demux_t *p_demux, logical_stream_t *p_stream)
 This function delete and release all data associated to a logical_stream_t.
static bool Ogg_LogicalStreamResetEsFormat (demux_t *p_demux, logical_stream_t *p_stream)
static void Ogg_ExtractMeta (demux_t *p_demux, vlc_fourcc_t i_codec, const uint8_t *p_headers, int i_headers)
static void Ogg_ReadTheoraHeader (logical_stream_t *, ogg_packet *)
static void Ogg_ReadVorbisHeader (logical_stream_t *, ogg_packet *)
static void Ogg_ReadSpeexHeader (logical_stream_t *, ogg_packet *)
static void Ogg_ReadKateHeader (logical_stream_t *, ogg_packet *)
static void Ogg_ReadFlacHeader (demux_t *, logical_stream_t *, ogg_packet *)
static void Ogg_ReadAnnodexHeader (vlc_object_t *, logical_stream_t *, ogg_packet *)
static bool Ogg_ReadDiracHeader (logical_stream_t *, ogg_packet *)
static bool Ogg_IsVorbisFormatCompatible (const es_format_t *p_new, const es_format_t *p_old)
 This function check if a we need to reset a decoder in case we are reusing an old ES.
static void Ogg_ExtractXiphMeta (demux_t *p_demux, const void *p_headers, unsigned i_headers, unsigned i_skip)
static uint32_t dirac_uint (bs_t *p_bs)
static int dirac_bool (bs_t *p_bs)

Define Documentation

#define OGG_BLOCK_SIZE   4096

Referenced by Ogg_ReadPage().

#define PACKET_IS_SYNCPOINT   0x08

Referenced by MuxBlock().

#define PACKET_LEN_BITS01   0xc0

Referenced by Ogg_DecodePacket().

#define PACKET_LEN_BITS2   0x02

Referenced by Ogg_DecodePacket().

#define PACKET_TYPE_BITS   0x07

#define PACKET_TYPE_HEADER   0x01


Typedef Documentation


Function Documentation

static void Close ( vlc_object_t p_this  )  [static]

Releases resources.

Close the module.

Destroys the X11 window.

Disconnect from the X server.

Close a SDL video output.

It destroys an OpenGL vout display.

Terminate a vout display created by Open.

It destroyes a Direct3D vout display.

Terminate an output method created by Open.

Release the drawable.

Close a libcaca video output.

Close a aa video output method.

Close the filter.

Terminate a splitter module.

This function closes a clone video splitter module.

Common close function.

Releases allocate resources.

Close: Destructor.

Parameters:
p_this pointer to this filter object
p_this,: the filter object

static int Control ( demux_t p_demux,
int  i_query,
va_list  args 
) [static]

static int Demux ( demux_t p_demux  )  [static]

static int dirac_bool ( bs_t p_bs  )  [static]

References bs_read().

Referenced by dirac_UnpackSeqHdr(), and Ogg_ReadDiracHeader().

static uint32_t dirac_uint ( bs_t p_bs  )  [static]

References bs_eof(), and bs_read().

Referenced by dirac_UnpackSeqHdr(), and Ogg_ReadDiracHeader().

static int Ogg_BeginningOfStream ( demux_t p_demux  )  [static]

static void Ogg_DecodePacket ( demux_t p_demux,
logical_stream_t p_stream,
ogg_packet *  p_oggpacket 
) [static]

static void Ogg_EndOfStream ( demux_t p_demux  )  [static]

static void Ogg_ExtractMeta ( demux_t p_demux,
vlc_fourcc_t  i_codec,
const uint8_t *  p_headers,
int  i_headers 
) [static]

static void Ogg_ExtractXiphMeta ( demux_t p_demux,
const void *  p_headers,
unsigned  i_headers,
unsigned  i_skip 
) [static]

static int Ogg_FindLogicalStreams ( demux_t p_demux  )  [static]

References stream_header_t::audio, es_format_t::audio, AUDIO_ES, stream_header_audio_t::avgbytespersec, logical_stream_s::b_force_backup, demux_sys_t::b_page_waiting, stream_header_t::bits_per_sample, stream_header_audio_t::blockalign, stream_header_t::buffersize, stream_header_audio_t::channels, stream_header_t::default_len, es_format_Init(), logical_stream_s::f_rate, logical_stream_s::fmt, logical_stream_s::fmt_old, GetDWLE(), GetQWLE(), GetWLE(), stream_header_video_t::height, es_format_t::i_bitrate, video_format_t::i_bits_per_pixel, audio_format_t::i_bitspersample, audio_format_t::i_blockalign, demux_sys_t::i_bos, es_format_t::i_cat, audio_format_t::i_channels, es_format_t::i_codec, es_format_t::i_extra, video_format_t::i_frame_rate, video_format_t::i_frame_rate_base, video_format_t::i_height, audio_format_t::i_rate, logical_stream_s::i_secondary_header_packets, logical_stream_s::i_serial_no, demux_sys_t::i_streams, video_format_t::i_width, msg_Dbg, msg_Err, msg_Warn, Ogg_ReadAnnodexHeader(), Ogg_ReadDiracHeader(), Ogg_ReadFlacHeader(), Ogg_ReadKateHeader(), Ogg_ReadPage(), Ogg_ReadSpeexHeader(), Ogg_ReadTheoraHeader(), Ogg_ReadVorbisHeader(), logical_stream_s::os, es_format_t::p_extra, logical_stream_s::p_headers, p_stream, demux_t::p_sys, PACKET_TYPE_BITS, PACKET_TYPE_HEADER, demux_sys_t::pp_stream, stream_header_t::samples_per_unit, stream_header_t::sh, stream_header_t::size, SPU_ES, stream_header_t::streamtype, stream_header_t::subtype, TAB_APPEND, stream_header_t::time_unit, stream_header_t::video, es_format_t::video, VIDEO_ES, VLC_CODEC_FLAC, VLC_CODEC_SUBT, VLC_CODEC_TARKIN, VLC_EGENERIC, VLC_ENOMEM, VLC_FOURCC, VLC_OBJECT, VLC_SUCCESS, wf_tag_to_fourcc(), and stream_header_video_t::width.

Referenced by Ogg_BeginningOfStream().

static bool Ogg_IsVorbisFormatCompatible ( const es_format_t p_new,
const es_format_t p_old 
) [static]

This function check if a we need to reset a decoder in case we are reusing an old ES.

References i, es_format_t::i_extra, es_format_t::p_extra, XIPH_MAX_HEADER_COUNT, and xiph_SplitHeaders().

Referenced by Ogg_LogicalStreamResetEsFormat().

static void Ogg_LogicalStreamDelete ( demux_t p_demux,
logical_stream_t p_stream 
) [static]

static bool Ogg_LogicalStreamResetEsFormat ( demux_t p_demux,
logical_stream_t p_stream 
) [static]

static void Ogg_ReadAnnodexHeader ( vlc_object_t p_this,
logical_stream_t p_stream,
ogg_packet *  p_oggpacket 
) [static]

static bool Ogg_ReadDiracHeader ( logical_stream_t p_stream,
ogg_packet *  p_oggpacket 
) [static]

static void Ogg_ReadFlacHeader ( demux_t p_demux,
logical_stream_t p_stream,
ogg_packet *  p_oggpacket 
) [static]

static void Ogg_ReadKateHeader ( logical_stream_t p_stream,
ogg_packet *  p_oggpacket 
) [static]

static int Ogg_ReadPage ( demux_t p_demux,
ogg_page *  p_oggpage 
) [static]

static void Ogg_ReadSpeexHeader ( logical_stream_t p_stream,
ogg_packet *  p_oggpacket 
) [static]

static void Ogg_ReadTheoraHeader ( logical_stream_t p_stream,
ogg_packet *  p_oggpacket 
) [static]

static void Ogg_ReadVorbisHeader ( logical_stream_t p_stream,
ogg_packet *  p_oggpacket 
) [static]

static void Ogg_UpdatePCR ( logical_stream_t p_stream,
ogg_packet *  p_oggpacket 
) [static]

static int Open ( vlc_object_t p_this  )  [static]

Probes and initializes.

Basic chorus/flanger/delay audio filter This implements a variable delay filter for VLC.

Todo:

  • Improve CDDB support (non-blocking, cache, .

Open the module.

Create an X11 window.

Probe the X server.

This function initializes SDL vout method.

It creates an OpenGL vout display.

This function allocates and initialize the DirectX vout display.

It creates a Direct3D vout display.

This function allocates and initializes a FB vout method.

Find the drawable set by libvlc application.

This function initializes libcaca vout method.

This function allocates and initializes a aa vout method.

This function allocates and initializes a Wall splitter module.

Open the filter.

This function allocates and initializes a Clone splitter module.

Open: initialize and create stuff.

Connect to the sftp server and ask for a file.

Parameters:
p_this,: the vlc_object
Returns:
VLC_SUCCESS if everything was fine
Parameters:
p_this 
p_this,: the filter object
Returns:
VLC_SUCCESS or vlc error codes

Todo:
Reinstate meta codec name

int vlc_entry__main ( module_t p_module  ) 

const char* vlc_entry_license__main ( void   ) 


Generated on Tue May 25 08:05:17 2010 for VLC by  doxygen 1.5.6