
Data Structures | |
| struct | decoder_sys_t |
| struct | decoder_sys_t::dirac_reorder_buffer |
| struct | decoder_sys_t::dirac_reorder_buffer::dirac_reorder_entry |
| struct | decoder_sys_t::seq_hdr_t |
| struct | parse_info_t |
| struct | dirac_block_encap_t |
| struct | fake_block_t |
Defines | |
| #define | SANITIZE_PREV_PARSE_OFFSET 1 |
Enumerations | |
| enum | { NOT_SYNCED = 0, TRY_SYNC, SYNCED, SYNCED_INCOMPLETEDU } |
| enum | { DIRAC_NON_DATED = (1 << 24 ), DIRAC_DISCARD = (2 << 24 ) } |
| enum | { DIRAC_DU_IN_EU, DIRAC_DU_ENDS_EU } |
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 dirac_block_encap_t * | dirac_RemoveBlockEncap (block_t *p_block) |
| static void | dirac_ReleaseBlockAndEncap (block_t *p_block) |
| static void | dirac_AddBlockEncap (block_t **pp_block, dirac_block_encap_t *p_dbe) |
| static dirac_block_encap_t * | dirac_NewBlockEncap (block_t **pp_block) |
| static dirac_block_encap_t * | dirac_GetBlockEncap (block_t *p_block) |
| static int | block_ChainToArray (block_t *p_block, block_t ***ppp_array) |
| given a chain of block_t, allocate and return an array containing pointers to all the blocks. | |
| static void | dirac_RecoverTimestamps (decoder_t *p_dec, size_t i_length) |
| Destructively find and recover the earliest timestamp from start of bytestream, upto i_length. | |
| static void | dirac_BackdateDTS (block_t *p_block, block_t *p_last, date_t *p_dts) |
| static void | dirac_BackdatePTS (block_t *p_block, block_t *p_last, date_t *p_pts, uint32_t u_pts_picnum) |
| static bool | dirac_isEOS (uint8_t u_parse_code) |
| static bool | dirac_isSeqHdr (uint8_t u_parse_code) |
| static bool | dirac_isPicture (uint8_t u_parse_code) |
| static int | dirac_numRefs (uint8_t u_parse_code) |
| static bool | dirac_PictureNbeforeM (uint32_t u_n, uint32_t u_m) |
| static void | dirac_ReorderInit (struct dirac_reorder_buffer *p_rb) |
| static block_t * | dirac_Reorder (decoder_t *p_dec, block_t *p_block_in, uint32_t u_picnum) |
| static bool | dirac_UnpackParseInfo (parse_info_t *p_pi, block_bytestream_t *p_bs, size_t u_offset) |
| static uint32_t | dirac_uint (bs_t *p_bs) |
| static int | dirac_bool (bs_t *p_bs) |
| static bool | dirac_UnpackSeqHdr (struct seq_hdr_t *p_sh, block_t *p_block) |
| static block_t * | dirac_EmitEOS (decoder_t *p_dec, uint32_t i_prev_parse_offset) |
| static block_t * | dirac_DoSync (decoder_t *p_dec) |
| static int | dirac_InspectDataUnit (decoder_t *p_dec, block_t **pp_block, block_t *p_eu) |
| static block_t * | dirac_BuildEncapsulationUnit (decoder_t *p_dec, block_t *p_block) |
| static int | dirac_TimeGenPush (decoder_t *p_dec, block_t *p_block_in) |
| dirac_TimeGenPush: : vlc object : whole encapsulation unit to generate timestamps for | |
| static block_t * | Packetize (decoder_t *p_dec, block_t **pp_block) |
| #define SANITIZE_PREV_PARSE_OFFSET 1 |
given a chain of block_t, allocate and return an array containing pointers to all the blocks.
(Acts as a replacement for the old p_prev member of block_t)
References block_ChainProperties(), i, and block_t::p_next.
Referenced by dirac_BackdateDTS(), and dirac_BackdatePTS().
| 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.
| p_this | pointer to this filter object | |
| p_this,: | the filter object |
| static void dirac_AddBlockEncap | ( | block_t ** | pp_block, | |
| dirac_block_encap_t * | p_dbe | |||
| ) | [static] |
References dirac_ReleaseBlockAndEncap(), fake_block_t::fake, fake_block_t::p_orig, fake_block_t::p_priv, dirac_block_encap_t::pf_blk_release, and block_t::pf_release.
Referenced by dirac_BuildEncapsulationUnit(), and dirac_NewBlockEncap().
References block_ChainToArray(), date_Decrement(), DIRAC_NON_DATED, block_t::i_dts, and VLC_TS_INVALID.
Referenced by dirac_TimeGenPush().
| static void dirac_BackdatePTS | ( | block_t * | p_block, | |
| block_t * | p_last, | |||
| date_t * | p_pts, | |||
| uint32_t | u_pts_picnum | |||
| ) | [static] |
References block_ChainToArray(), date_Decrement(), date_Increment(), dirac_GetBlockEncap(), DIRAC_NON_DATED, block_t::i_pts, dirac_block_encap_t::u_picture_number, and VLC_TS_INVALID.
Referenced by dirac_TimeGenPush().
References block_ChainGather(), block_ChainLastAppend(), dirac_AddBlockEncap(), DIRAC_DU_ENDS_EU, dirac_GetBlockEncap(), dirac_InspectDataUnit(), dirac_isPicture(), DIRAC_NON_DATED, dirac_RemoveBlockEncap(), GetDWBE, block_t::i_buffer, block_t::i_dts, decoder_sys_t::i_eu_dts, decoder_sys_t::i_eu_pts, block_t::i_flags, block_t::i_pts, block_t::p_buffer, decoder_sys_t::p_eu, decoder_t::p_sys, p_sys, decoder_sys_t::pp_eu_last, SetDWBE, decoder_sys_t::u_eu_last_npo, dirac_block_encap_t::u_last_next_offset, and VLC_TS_INVALID.
Referenced by Packetize().
References a, b, block_BytestreamFlush(), block_FindStartcodeFromOffset(), block_GetBytes(), block_New, block_PeekOffsetBytes(), block_SkipBytes(), decoder_sys_t::bytestream, dirac_NewBlockEncap(), dirac_RecoverTimestamps(), dirac_UnpackParseInfo(), block_t::i_buffer, block_t::i_dts, decoder_sys_t::i_offset, block_t::i_pts, decoder_sys_t::i_state, decoder_sys_t::i_sync_dts, decoder_sys_t::i_sync_pts, NOT_SYNCED, block_t::p_buffer, decoder_t::p_sys, p_sys, SYNCED, TRY_SYNC, dirac_block_encap_t::u_last_next_offset, decoder_sys_t::u_last_npo, parse_info_t::u_next_offset, parse_info_t::u_prev_offset, VLC_SUCCESS, and VLC_TS_INVALID.
Referenced by Packetize().
References block_New, DIRAC_NON_DATED, block_t::i_flags, block_t::p_buffer, and SetDWBE.
Referenced by dirac_InspectDataUnit(), dirac_TimeGenPush(), and Packetize().
| static dirac_block_encap_t* dirac_GetBlockEncap | ( | block_t * | p_block | ) | [static] |
Referenced by dirac_BackdatePTS(), dirac_BuildEncapsulationUnit(), dirac_InspectDataUnit(), and dirac_TimeGenPush().
| static int dirac_InspectDataUnit | ( | decoder_t * | p_dec, | |
| block_t ** | pp_block, | |||
| block_t * | p_eu | |||
| ) | [static] |
References decoder_sys_t::b_seen_eos, decoder_sys_t::b_seen_seq_hdr, BLOCK_FLAG_END_OF_SEQUENCE, BLOCK_FLAG_TYPE_I, block_Release(), date_Change(), DIRAC_DISCARD, DIRAC_DU_ENDS_EU, DIRAC_DU_IN_EU, dirac_EmitEOS(), dirac_GetBlockEncap(), dirac_isEOS(), dirac_isPicture(), dirac_isSeqHdr(), dirac_numRefs(), dirac_UnpackSeqHdr(), decoder_sys_t::dts, decoder_t::fmt_out, GetDWBE, block_t::i_buffer, block_t::i_dts, decoder_sys_t::i_eu_dts, decoder_sys_t::i_eu_pts, es_format_t::i_extra, block_t::i_flags, video_format_t::i_frame_rate, video_format_t::i_frame_rate_base, video_format_t::i_height, block_t::i_pts, decoder_sys_t::i_pts_offset, video_format_t::i_width, block_t::p_buffer, es_format_t::p_extra, decoder_t::p_sys, p_sys, decoder_sys_t::reorder_buf, decoder_sys_t::seq_hdr, decoder_sys_t::seq_hdr_t::u_fps_den, decoder_sys_t::seq_hdr_t::u_fps_num, decoder_sys_t::seq_hdr_t::u_height, decoder_sys_t::seq_hdr_t::u_picture_coding_mode, dirac_block_encap_t::u_picture_number, decoder_sys_t::dirac_reorder_buffer::u_size_max, decoder_sys_t::seq_hdr_t::u_width, es_format_t::video, VLC_TS_INVALID, and vlc_ureduce().
Referenced by dirac_BuildEncapsulationUnit().
| static bool dirac_isEOS | ( | uint8_t | u_parse_code | ) | [static] |
Referenced by dirac_InspectDataUnit().
| static bool dirac_isPicture | ( | uint8_t | u_parse_code | ) | [static] |
Referenced by dirac_BuildEncapsulationUnit(), and dirac_InspectDataUnit().
| static bool dirac_isSeqHdr | ( | uint8_t | u_parse_code | ) | [static] |
Referenced by dirac_InspectDataUnit().
| static dirac_block_encap_t* dirac_NewBlockEncap | ( | block_t ** | pp_block | ) | [static] |
| static int dirac_numRefs | ( | uint8_t | u_parse_code | ) | [static] |
Referenced by dirac_InspectDataUnit().
| static bool dirac_PictureNbeforeM | ( | uint32_t | u_n, | |
| uint32_t | u_m | |||
| ) | [inline, static] |
Referenced by dirac_Reorder(), and dirac_TimeGenPush().
| static void dirac_RecoverTimestamps | ( | decoder_t * | p_dec, | |
| size_t | i_length | |||
| ) | [static] |
Destructively find and recover the earliest timestamp from start of bytestream, upto i_length.
References decoder_sys_t::bytestream, block_t::i_buffer, block_t::i_dts, block_t::i_flags, block_bytestream_t::i_offset, block_t::i_pts, decoder_sys_t::i_sync_dts, decoder_sys_t::i_sync_pts, block_bytestream_t::p_block, block_t::p_next, decoder_t::p_sys, p_sys, and VLC_TS_INVALID.
Referenced by dirac_DoSync().
| static void dirac_ReleaseBlockAndEncap | ( | block_t * | p_block | ) | [static] |
References dirac_RemoveBlockEncap(), fake_block_t::p_orig, and block_t::pf_release.
Referenced by dirac_AddBlockEncap().
| static dirac_block_encap_t* dirac_RemoveBlockEncap | ( | block_t * | p_block | ) | [static] |
References fake_block_t::p_priv, and dirac_block_encap_t::pf_blk_release.
Referenced by dirac_BuildEncapsulationUnit(), and dirac_ReleaseBlockAndEncap().
| static block_t* dirac_Reorder | ( | decoder_t * | p_dec, | |
| block_t * | p_block_in, | |||
| uint32_t | u_picnum | |||
| ) | [static] |
References dirac_PictureNbeforeM(), decoder_sys_t::dirac_reorder_buffer::p_empty, decoder_sys_t::dirac_reorder_buffer::p_head, block_t::p_next, decoder_t::p_sys, p_sys, decoder_sys_t::reorder_buf, decoder_sys_t::dirac_reorder_buffer::u_size, and decoder_sys_t::dirac_reorder_buffer::u_size_max.
Referenced by dirac_TimeGenPush().
| static void dirac_ReorderInit | ( | struct dirac_reorder_buffer * | p_rb | ) | [static] |
dirac_TimeGenPush: : vlc object : whole encapsulation unit to generate timestamps for
Returns: 0: everything ok 1: EOS occured, please flush and reset 2: picture number discontinuity, please flush and reset
References decoder_sys_t::b_dts, decoder_sys_t::b_pts, decoder_sys_t::b_seen_seq_hdr, decoder_sys_t::b_tg_last_picnum, block_ChainRelease(), BLOCK_FLAG_DISCONTINUITY, BLOCK_FLAG_END_OF_SEQUENCE, date_Decrement(), date_Increment(), date_Set(), dirac_BackdateDTS(), dirac_BackdatePTS(), dirac_EmitEOS(), dirac_GetBlockEncap(), DIRAC_NON_DATED, dirac_PictureNbeforeM(), dirac_Reorder(), decoder_sys_t::dts, block_t::i_dts, block_t::i_flags, decoder_sys_t::i_pts, block_t::i_pts, decoder_sys_t::i_pts_offset, msg_Warn, block_t::p_next, decoder_sys_t::p_out_dts, decoder_sys_t::p_outqueue, decoder_t::p_sys, p_sys, dirac_block_encap_t::u_last_next_offset, dirac_block_encap_t::u_picture_number, decoder_sys_t::u_pts_picnum, decoder_sys_t::u_tg_last_picnum, and VLC_TS_INVALID.
Referenced by Packetize().
| static bool dirac_UnpackParseInfo | ( | parse_info_t * | p_pi, | |
| block_bytestream_t * | p_bs, | |||
| size_t | u_offset | |||
| ) | [static] |
References block_PeekOffsetBytes(), parse_info_t::i_parse_code, parse_info_t::u_next_offset, parse_info_t::u_prev_offset, and VLC_SUCCESS.
Referenced by dirac_DoSync().
| static bool dirac_UnpackSeqHdr | ( | struct seq_hdr_t * | p_sh, | |
| block_t * | p_block | |||
| ) | [static] |
References bs_init(), bs_skip(), dirac_bool(), dirac_uint(), block_t::i_buffer, and block_t::p_buffer.
Referenced by dirac_InspectDataUnit().
| 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:
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.
| p_this,: | the vlc_object |
| p_this | ||
| p_this,: | the filter object |
References decoder_sys_t::b_dts, decoder_sys_t::b_pts, decoder_sys_t::b_seen_seq_hdr, decoder_sys_t::b_tg_last_picnum, block_BytestreamPush(), block_ChainLastAppend(), block_ChainProperties(), BLOCK_FLAG_CORRUPTED, BLOCK_FLAG_DISCONTINUITY, BLOCK_FLAG_PRIVATE_MASK, block_Release(), decoder_sys_t::bytestream, dirac_BuildEncapsulationUnit(), DIRAC_DISCARD, dirac_DoSync(), dirac_EmitEOS(), DIRAC_NON_DATED, dirac_ReorderInit(), dirac_TimeGenPush(), block_t::i_dts, decoder_sys_t::i_dts_last_out, decoder_sys_t::i_eu_dts, decoder_sys_t::i_eu_pts, block_t::i_flags, block_t::i_pts, decoder_sys_t::i_pts_last_out, msg_Err, block_t::p_next, decoder_sys_t::p_out_dts, decoder_sys_t::p_outqueue, decoder_t::p_sys, p_sys, decoder_sys_t::pp_outqueue_last, decoder_sys_t::reorder_buf, and VLC_TS_INVALID.
| int vlc_entry__main | ( | module_t * | p_module | ) |
| const char* vlc_entry_license__main | ( | void | ) |
1.5.6