|
VLC
3.0.15
|

Go to the source code of this file.
Data Structures | |
| struct | block_t |
Macros | |
| #define | BLOCK_FLAG_DISCONTINUITY 0x0001 |
| The content doesn't follow the last block, possible some blocks in between have been lost. More... | |
| #define | BLOCK_FLAG_TYPE_I 0x0002 |
| Intra frame. More... | |
| #define | BLOCK_FLAG_TYPE_P 0x0004 |
| Inter frame with backward reference only. More... | |
| #define | BLOCK_FLAG_TYPE_B 0x0008 |
| Inter frame with backward and forward reference. More... | |
| #define | BLOCK_FLAG_TYPE_PB 0x0010 |
| For inter frame when you don't know the real type. More... | |
| #define | BLOCK_FLAG_HEADER 0x0020 |
| Warn that this block is a header one. More... | |
| #define | BLOCK_FLAG_END_OF_SEQUENCE 0x0040 |
| This block contains the last part of a sequence More... | |
| #define | BLOCK_FLAG_CLOCK 0x0080 |
| This block contains a clock reference. More... | |
| #define | BLOCK_FLAG_SCRAMBLED 0x0100 |
| This block is scrambled. More... | |
| #define | BLOCK_FLAG_PREROLL 0x0200 |
| This block has to be decoded but not be displayed. More... | |
| #define | BLOCK_FLAG_CORRUPTED 0x0400 |
| This block is corrupted and/or there is data loss More... | |
| #define | BLOCK_FLAG_TOP_FIELD_FIRST 0x0800 |
| This block contains an interlaced picture with top field stored first. More... | |
| #define | BLOCK_FLAG_BOTTOM_FIELD_FIRST 0x1000 |
| This block contains an interlaced picture with bottom field stored first. More... | |
| #define | BLOCK_FLAG_SINGLE_FIELD 0x2000 |
| This block contains a single field from interlaced picture. More... | |
| #define | BLOCK_FLAG_INTERLACED_MASK (BLOCK_FLAG_TOP_FIELD_FIRST|BLOCK_FLAG_BOTTOM_FIELD_FIRST|BLOCK_FLAG_SINGLE_FIELD) |
| This block contains an interlaced picture. More... | |
| #define | BLOCK_FLAG_TYPE_MASK (BLOCK_FLAG_TYPE_I|BLOCK_FLAG_TYPE_P|BLOCK_FLAG_TYPE_B|BLOCK_FLAG_TYPE_PB) |
| #define | BLOCK_FLAG_CORE_PRIVATE_MASK 0x00ff0000 |
| #define | BLOCK_FLAG_CORE_PRIVATE_SHIFT 16 |
| #define | BLOCK_FLAG_PRIVATE_MASK 0xff000000 |
| #define | BLOCK_FLAG_PRIVATE_SHIFT 24 |
| #define | block_cleanup_push(block) vlc_cleanup_push (block_Cleanup, block) |
| #define | vlc_fifo_CleanupPush(fifo) vlc_cleanup_push(vlc_fifo_Cleanup, fifo) |
Typedefs | |
| typedef void(* | block_free_t) (block_t *) |
| typedef struct block_fifo_t | vlc_fifo_t |
Functions | |
| void | block_Init (block_t *, void *, size_t) |
| block_t * | block_Alloc (size_t size) |
| Allocates a block. More... | |
| block_t * | block_TryRealloc (block_t *, ssize_t pre, size_t body) |
| block_t * | block_Realloc (block_t *, ssize_t pre, size_t body) |
| Reallocates a block. More... | |
| static void | block_Release (block_t *block) |
| Releases a block. More... | |
| static void | block_CopyProperties (block_t *dst, block_t *src) |
| static block_t * | block_Duplicate (block_t *p_block) |
| Duplicates a block. More... | |
| block_t * | block_heap_Alloc (void *, size_t) |
| Wraps heap in a block. More... | |
| block_t * | block_mmap_Alloc (void *addr, size_t length) |
| Wraps a memory mapping in a block. More... | |
| block_t * | block_shm_Alloc (void *addr, size_t length) |
| Wraps a System V memory segment in a block. More... | |
| block_t * | block_File (int fd, bool write) |
| Maps a file handle in memory. More... | |
| block_t * | block_FilePath (const char *, bool write) |
| Maps a file in memory. More... | |
| static void | block_Cleanup (void *block) |
| static void | block_ChainAppend (block_t **pp_list, block_t *p_block) |
| static void | block_ChainLastAppend (block_t ***ppp_last, block_t *p_block) |
| static void | block_ChainRelease (block_t *p_block) |
| static size_t | block_ChainExtract (block_t *p_list, void *p_data, size_t i_max) |
| static void | block_ChainProperties (block_t *p_list, int *pi_count, size_t *pi_size, mtime_t *pi_length) |
| static block_t * | block_ChainGather (block_t *p_list) |
| block_fifo_t * | block_FifoNew (void) |
| Creates a thread-safe FIFO queue of blocks. More... | |
| void | block_FifoRelease (block_fifo_t *) |
| Destroys a FIFO created by block_FifoNew(). More... | |
| void | block_FifoEmpty (block_fifo_t *) |
| Clears all blocks in a FIFO. More... | |
| void | block_FifoPut (block_fifo_t *fifo, block_t *block) |
| Immediately queue one block at the end of a FIFO. More... | |
| block_t * | block_FifoGet (block_fifo_t *) |
| Dequeue the first block from the FIFO. More... | |
| block_t * | block_FifoShow (block_fifo_t *) |
| Peeks the first block in the FIFO. More... | |
| size_t | block_FifoSize (block_fifo_t *) |
| size_t | block_FifoCount (block_fifo_t *) |
| void | vlc_fifo_Lock (vlc_fifo_t *) |
| Locks a block FIFO. More... | |
| void | vlc_fifo_Unlock (vlc_fifo_t *) |
| Unlocks a block FIFO. More... | |
| void | vlc_fifo_Signal (vlc_fifo_t *) |
| Wakes up one thread waiting on the FIFO, if any. More... | |
| void | vlc_fifo_Wait (vlc_fifo_t *) |
| Waits on the FIFO. More... | |
| void | vlc_fifo_WaitCond (vlc_fifo_t *, vlc_cond_t *) |
| int | vlc_fifo_TimedWaitCond (vlc_fifo_t *, vlc_cond_t *, mtime_t) |
| Timed variant of vlc_fifo_WaitCond(). More... | |
| void | vlc_fifo_QueueUnlocked (vlc_fifo_t *, block_t *) |
| Queues a linked-list of blocks into a locked FIFO. More... | |
| block_t * | vlc_fifo_DequeueUnlocked (vlc_fifo_t *) |
| Dequeues the first block from a locked FIFO, if any. More... | |
| block_t * | vlc_fifo_DequeueAllUnlocked (vlc_fifo_t *) |
| Dequeues the all blocks from a locked FIFO. More... | |
| size_t | vlc_fifo_GetCount (const vlc_fifo_t *) |
| Counts blocks in a FIFO. More... | |
| size_t | vlc_fifo_GetBytes (const vlc_fifo_t *) |
| Counts bytes in a FIFO. More... | |
| static bool | vlc_fifo_IsEmpty (const vlc_fifo_t *fifo) |
| static void | vlc_fifo_Cleanup (void *fifo) |
Data block definition and functions
1.8.16