VLC  3.0.0-git
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Typedefs
Decoder
Codec

Audio, video and text decoders. More...

Collaboration diagram for Decoder:

Data Structures

struct  decoder_t

Typedefs

typedef struct decoder_owner_sys_t decoder_owner_sys_t
static int decoder_UpdateVideoFormat (decoder_t *dec)
 This function notifies the video output pipeline of a new video output format (fmt_out.video).
picture_tdecoder_NewPicture (decoder_t *)
 This function will return a new picture usable by a decoder as an output buffer.
static int decoder_UpdateAudioFormat (decoder_t *dec)
 This function notifies the audio output pipeline of a new audio output format (fmt_out.audio).
block_tdecoder_NewAudioBuffer (decoder_t *, int i_size)
 This function will return a new audio buffer usable by a decoder as an output buffer.
subpicture_tdecoder_NewSubpicture (decoder_t *, const subpicture_updater_t *)
 This function will return a new subpicture usable by a decoder as an output buffer.
int decoder_GetInputAttachments (decoder_t *, input_attachment_t ***ppp_attachment, int *pi_attachment)
 This function gives all input attachments at once.
mtime_t decoder_GetDisplayDate (decoder_t *, mtime_t)
 This function converts a decoder timestamp into a display date comparable to mdate().
int decoder_GetDisplayRate (decoder_t *)
 This function returns the current input rate.

Detailed Description

Audio, video and text decoders.

Typedef Documentation

Function Documentation

mtime_t decoder_GetDisplayDate ( decoder_t ,
mtime_t   
)

This function converts a decoder timestamp into a display date comparable to mdate().

You MUST use it only for gathering statistics about speed.

References decoder_t::pf_get_display_date, and VLC_TS_INVALID.

Referenced by decoder_SynchroChoose().

int decoder_GetDisplayRate ( decoder_t )

This function returns the current input rate.

You MUST use it only for gathering statistics about speed.

References INPUT_RATE_DEFAULT, and decoder_t::pf_get_display_rate.

Referenced by decoder_SynchroChoose().

int decoder_GetInputAttachments ( decoder_t ,
input_attachment_t ***  ppp_attachment,
int *  pi_attachment 
)

This function gives all input attachments at once.

You MUST release the returned values

< Unspecified error

References decoder_t::pf_get_attachments, and VLC_EGENERIC.

block_t* decoder_NewAudioBuffer ( decoder_t ,
int  i_size 
)

This function will return a new audio buffer usable by a decoder as an output buffer.

It must be released with block_Release() or returned it to the caller as a pf_decode_audio return value.

References es_format_t::audio, block_Alloc(), decoder_UpdateAudioFormat(), decoder_t::fmt_out, audio_format_t::i_bytes_per_frame, audio_format_t::i_frame_length, block_t::i_length, block_t::i_nb_samples, block_t::i_pts, and likely.

picture_t* decoder_NewPicture ( decoder_t )

This function will return a new picture usable by a decoder as an output buffer.

You have to release it using picture_Release() or by returning it to the caller as a pf_decode_video return value.

References decoder_UpdateVideoFormat(), msg_Warn, and decoder_t::pf_vout_buffer_new.

subpicture_t* decoder_NewSubpicture ( decoder_t ,
const subpicture_updater_t  
)

This function will return a new subpicture usable by a decoder as an output buffer.

You have to release it using subpicture_Delete() or by returning it to the caller as a pf_decode_sub return value.

References msg_Warn, and decoder_t::pf_spu_buffer_new.

static int decoder_UpdateAudioFormat ( decoder_t dec)
inlinestatic

This function notifies the audio output pipeline of a new audio output format (fmt_out.audio).

If there is currently no audio output or if the audio output format has changed, a new audio output will be set up.

Returns
0 if the audio output is working, -1 if not.

Referenced by decoder_NewAudioBuffer().

static int decoder_UpdateVideoFormat ( decoder_t dec)
inlinestatic

This function notifies the video output pipeline of a new video output format (fmt_out.video).

If there is currently no video output or if the video output format has changed, a new video output will be set up.

Returns
0 if the video output is working, -1 if not.

References decoder_t::pf_vout_format_update.

Referenced by decoder_NewPicture().