asf.c File Reference

Include dependency graph for asf.c:


Data Structures

struct  asf_track_t
struct  sout_mux_sys_t
struct  bo_t

Defines

#define MAX_ASF_TRACKS   128
#define ASF_DATA_PACKET_SIZE   4096
#define SOUT_CFG_PREFIX   "sout-asf-"
#define TITLE_TEXT   N_("Title")
#define TITLE_LONGTEXT   N_("Title to put in ASF comments." )
#define AUTHOR_TEXT   N_("Author")
#define AUTHOR_LONGTEXT   N_("Author to put in ASF comments." )
#define COPYRIGHT_TEXT   N_("Copyright")
#define COPYRIGHT_LONGTEXT   N_("Copyright string to put in ASF comments." )
#define COMMENT_TEXT   N_("Comment")
#define COMMENT_LONGTEXT   N_("Comment to put in ASF comments." )
#define RATING_TEXT   N_("Rating")
#define RATING_LONGTEXT   N_("\"Rating\" to put in ASF comments." )
#define PACKETSIZE_TEXT   N_("Packet Size")
#define PACKETSIZE_LONGTEXT   N_("ASF packet size -- default is 4096 bytes")
#define BITRATE_TEXT   N_("Bitrate override")
#define BITRATE_LONGTEXT   N_("Do not try to guess ASF bitrate. Setting this, allows you to control how Windows Media Player will cache streamed content. Set to audio+video bitrate in bytes")

Typedefs

typedef GUID guid_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 Control (sout_mux_t *, int, va_list)
static int AddStream (sout_mux_t *, sout_input_t *)
static int DelStream (sout_mux_t *, sout_input_t *)
static int Mux (sout_mux_t *)
static block_tasf_header_create (sout_mux_t *, bool)
static block_tasf_packet_create (sout_mux_t *, asf_track_t *, block_t *)
static block_tasf_stream_end_create (sout_mux_t *)
static block_tasf_packet_flush (sout_mux_t *)
static void bo_init (bo_t *, uint8_t *, int)
static void bo_add_u8 (bo_t *, uint8_t)
static void bo_addle_u16 (bo_t *, uint16_t)
static void bo_addle_u32 (bo_t *, uint32_t)
static void bo_addle_u64 (bo_t *, uint64_t)
static void bo_add_mem (bo_t *, uint8_t *, int)
static void bo_addle_str16 (bo_t *, const char *)
static void bo_addle_str16_nosize (bo_t *bo, const char *str)
static void bo_add_guid (bo_t *p_bo, const guid_t *id)
static void asf_chunk_add (bo_t *bo, int i_type, int i_len, int i_flags, int i_seq)

Variables

static const char *const ppsz_sout_options []
static const guid_t asf_object_header_guid
static const guid_t asf_object_data_guid
static const guid_t asf_object_file_properties_guid
static const guid_t asf_object_stream_properties_guid
static const guid_t asf_object_header_extension_guid
static const guid_t asf_object_stream_type_audio
static const guid_t asf_object_stream_type_video
static const guid_t asf_guid_audio_conceal_none
static const guid_t asf_guid_audio_conceal_spread
static const guid_t asf_guid_video_conceal_none
static const guid_t asf_guid_reserved_1
static const guid_t asf_object_codec_list_guid
static const guid_t asf_object_codec_list_reserved_guid
static const guid_t asf_object_content_description_guid
static const guid_t asf_object_index_guid
static const guid_t asf_object_metadata_guid
static const guid_t asf_object_extended_stream_properties_guid

Define Documentation

#define ASF_DATA_PACKET_SIZE   4096

#define AUTHOR_LONGTEXT   N_("Author to put in ASF comments." )

#define AUTHOR_TEXT   N_("Author")

#define BITRATE_LONGTEXT   N_("Do not try to guess ASF bitrate. Setting this, allows you to control how Windows Media Player will cache streamed content. Set to audio+video bitrate in bytes")

#define BITRATE_TEXT   N_("Bitrate override")

#define COMMENT_LONGTEXT   N_("Comment to put in ASF comments." )

#define COMMENT_TEXT   N_("Comment")

#define COPYRIGHT_LONGTEXT   N_("Copyright string to put in ASF comments." )

#define COPYRIGHT_TEXT   N_("Copyright")

#define MAX_ASF_TRACKS   128

Referenced by AddStream().

#define PACKETSIZE_LONGTEXT   N_("ASF packet size -- default is 4096 bytes")

#define PACKETSIZE_TEXT   N_("Packet Size")

#define RATING_LONGTEXT   N_("\"Rating\" to put in ASF comments." )

#define RATING_TEXT   N_("Rating")

#define SOUT_CFG_PREFIX   "sout-asf-"

#define TITLE_LONGTEXT   N_("Title to put in ASF comments." )

#define TITLE_TEXT   N_("Title")


Typedef Documentation

typedef GUID guid_t


Function Documentation

static int AddStream ( sout_mux_t p_mux,
sout_input_t p_input 
) [static]

References _, es_format_t::audio, AUDIO_ES, sout_mux_sys_t::b_asf_http, asf_track_t::b_audio_correction, asf_track_t::b_extended, sout_mux_sys_t::b_write_header, bo_add_mem(), bo_add_u8(), bo_addle_u16(), bo_addle_u32(), bo_init(), es_format_Copy(), asf_track_t::fmt, sout_mux_sys_t::i_bitrate, es_format_t::i_bitrate, sout_mux_sys_t::i_bitrate_override, audio_format_t::i_bitspersample, asf_track_t::i_blockalign, audio_format_t::i_blockalign, es_format_t::i_cat, asf_track_t::i_cat, audio_format_t::i_channels, es_format_t::i_codec, es_format_t::i_extra, asf_track_t::i_extra, asf_track_t::i_fourcc, video_format_t::i_height, es_format_t::i_original_fourcc, audio_format_t::i_rate, asf_track_t::i_sequence, asf_track_t::i_tag, video_format_t::i_width, MAX_ASF_TRACKS, msg_Dbg, msg_Err, es_format_t::p_extra, asf_track_t::p_extra, sout_input_t::p_fmt, sout_input_t::p_sys, sout_mux_t::p_sys, sout_mux_sys_t::p_tracks, asf_track_t::psz_name, tk, es_format_t::video, VIDEO_ES, vlc_array_append(), vlc_array_count(), vlc_array_index_of_item(), VLC_CODEC_A52, VLC_CODEC_DIV2, VLC_CODEC_DIV3, VLC_CODEC_H264, VLC_CODEC_MP4A, VLC_CODEC_MP4V, VLC_CODEC_MPGA, VLC_CODEC_S16L, VLC_CODEC_S24L, VLC_CODEC_S32L, VLC_CODEC_U8, VLC_CODEC_VC1, VLC_CODEC_WMA1, VLC_CODEC_WMA2, VLC_CODEC_WMAL, VLC_CODEC_WMAP, VLC_CODEC_WMV1, VLC_CODEC_WMV2, VLC_CODEC_WMV3, VLC_EGENERIC, VLC_ENOMEM, VLC_FOURCC, VLC_SUCCESS, WAVE_FORMAT_A52, WAVE_FORMAT_AAC, WAVE_FORMAT_MPEG, WAVE_FORMAT_MPEGLAYER3, WAVE_FORMAT_PCM, WAVE_FORMAT_WMA1, WAVE_FORMAT_WMA2, WAVE_FORMAT_WMAL, and WAVE_FORMAT_WMAP.

static void asf_chunk_add ( bo_t bo,
int  i_type,
int  i_len,
int  i_flags,
int  i_seq 
) [static]

static block_t * asf_header_create ( sout_mux_t p_mux,
bool  b_broadcast 
) [static]

static block_t * asf_packet_create ( sout_mux_t p_mux,
asf_track_t tk,
block_t data 
) [static]

static block_t * asf_packet_flush ( sout_mux_t p_mux  )  [static]

static block_t * asf_stream_end_create ( sout_mux_t p_mux  )  [static]

static void bo_add_guid ( bo_t p_bo,
const guid_t id 
) [static]

static void bo_add_mem ( bo_t p_bo,
uint8_t *  p_mem,
int  i_size 
) [static]

static void bo_add_u8 ( bo_t p_bo,
uint8_t  i 
) [static]

static void bo_addle_str16 ( bo_t bo,
const char *  str 
) [static]

References bo_addle_u16(), and c.

Referenced by asf_header_create().

static void bo_addle_str16_nosize ( bo_t bo,
const char *  str 
) [static]

References bo_addle_u16(), and c.

Referenced by asf_header_create().

static void bo_addle_u16 ( bo_t p_bo,
uint16_t  i 
) [static]

static void bo_addle_u32 ( bo_t p_bo,
uint32_t  i 
) [static]

static void bo_addle_u64 ( bo_t p_bo,
uint64_t  i 
) [static]

static void bo_init ( bo_t p_bo,
uint8_t *  p_buffer,
int  i_size 
) [static]

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 ( sout_mux_t p_mux,
int  i_query,
va_list  args 
) [static]

static int DelStream ( sout_mux_t p_mux,
sout_input_t p_input 
) [static]

static int Mux ( sout_mux_t p_mux  )  [static]

static int Open ( vlc_object_t p_this  )  [static]

Probes and initializes.

Status of this demuxer: Real Media format -----------------.

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   ) 


Variable Documentation

Initial value:

{0x20FB5700, 0x5B55, 0x11CF, {0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B}}

Initial value:

{0xBFC3CD50, 0x618F, 0x11CF, {0x8B, 0xB2, 0x00, 0xAA, 0x00, 0xB4, 0xE2, 0x20}}

const guid_t asf_guid_reserved_1 [static]

Initial value:

{0xABD3D211, 0xA9BA, 0x11cf, {0x8E, 0xE6, 0x00, 0xC0, 0x0C ,0x20, 0x53, 0x65}}

Initial value:

{0x20FB5700, 0x5B55, 0x11CF, {0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B}}

Initial value:

{0x86D15240, 0x311D, 0x11D0, {0xA3, 0xA4, 0x00, 0xA0, 0xC9, 0x03, 0x48, 0xF6}}

Initial value:

{0x86D15241, 0x311D, 0x11D0, {0xA3, 0xA4, 0x00, 0xA0, 0xC9, 0x03, 0x48, 0xF6}}

Initial value:

{0x75B22633, 0x668E, 0x11CF, {0xa6, 0xd9, 0x00, 0xaa, 0x00, 0x62, 0xce, 0x6c}}

const guid_t asf_object_data_guid [static]

Initial value:

{0x75B22636, 0x668E, 0x11CF, {0xA6, 0xD9, 0x00, 0xAA, 0x00, 0x62, 0xCE, 0x6C}}

Initial value:

{0x14E6A5CB, 0xC672, 0x4332, {0x83, 0x99, 0xA9, 0x69, 0x52, 0x06, 0x5B, 0x5A}}

Initial value:

{0x8cabdca1, 0xa947, 0x11cf, {0x8e, 0xe4, 0x00, 0xC0, 0x0C, 0x20, 0x53, 0x65}}

Initial value:

{0x5FBF03B5, 0xA92E, 0x11CF, {0x8E, 0xE3, 0x00, 0xC0, 0x0C, 0x20, 0x53, 0x65}}

Initial value:

{0x75B22630, 0x668E, 0x11CF, {0xA6, 0xD9, 0x00, 0xAA, 0x00, 0x62, 0xCE, 0x6C}}

const guid_t asf_object_index_guid [static]

Initial value:

{0x33000890, 0xE5B1, 0x11CF, {0x89, 0xF4, 0x00, 0xA0, 0xC9, 0x03, 0x49, 0xCB}}

Initial value:

{0xC5F8CBEA, 0x5BAF, 0x4877, {0x84, 0x67, 0xAA, 0x8C, 0x44, 0xFA, 0x4C, 0xCA}}

Initial value:

{0xB7DC0791, 0xA9B7, 0x11CF, {0x8E, 0xE6, 0x00, 0xC0, 0x0C, 0x20, 0x53, 0x65}}

Initial value:

{0xF8699E40, 0x5B4D, 0x11CF, {0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B}}

Initial value:

{0xbc19efc0, 0x5B4D, 0x11CF, {0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B}}

const char* const ppsz_sout_options[] [static]

Initial value:

 {
    "title", "author", "copyright", "comment", "rating", NULL
}


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