fifo.c File Reference
#include "common.h"
#include "fifo.h"

Go to the source code of this file.

Functions

AVFifoBufferav_fifo_alloc (unsigned int size)
 Initialize an AVFifoBuffer.
void av_fifo_free (AVFifoBuffer *f)
 Free an AVFifoBuffer.
void av_fifo_reset (AVFifoBuffer *f)
 Reset the AVFifoBuffer to the state right after av_fifo_alloc, in particular it is emptied.
int av_fifo_size (AVFifoBuffer *f)
 Return the amount of data in bytes in the AVFifoBuffer, that is the amount of data you can read from it.
int av_fifo_space (AVFifoBuffer *f)
 Return the amount of space in bytes in the AVFifoBuffer, that is the amount of data you can write into it.
int av_fifo_realloc2 (AVFifoBuffer *f, unsigned int new_size)
 Resize an AVFifoBuffer.
int av_fifo_generic_write (AVFifoBuffer *f, void *src, int size, int(*func)(void *, void *, int))
 Feed data from a user-supplied callback to an AVFifoBuffer.
int av_fifo_generic_read (AVFifoBuffer *f, void *dest, int buf_size, void(*func)(void *, void *, int))
 Feed data from an AVFifoBuffer to a user-supplied callback.
void av_fifo_drain (AVFifoBuffer *f, int size)
 Discard data from the FIFO.

Function Documentation

AVFifoBuffer* av_fifo_alloc ( unsigned int  size)

Initialize an AVFifoBuffer.

Parameters:
sizeof FIFO
Returns:
AVFifoBuffer or NULL in case of memory allocation failure

Definition at line 25 of file fifo.c.

Referenced by av_fifo_realloc2(), dv_init_mux(), ff_audio_interleave_init(), flac_parse_init(), init(), mpeg_mux_init(), start_jack(), swf_write_header(), transcode(), and transcode_init().

void av_fifo_drain ( AVFifoBuffer f,
int  size 
)

Discard data from the FIFO.

Read and discard the specified amount of data from an AVFifoBuffer.

Definition at line 123 of file fifo.c.

Referenced by av_fifo_generic_read(), dv_assemble_frame(), and flac_parse().

int av_fifo_generic_read ( AVFifoBuffer f,
void dest,
int  buf_size,
void(*)(void *, void *, int)  func 
)

Feed data from an AVFifoBuffer to a user-supplied callback.

Parameters:
fAVFifoBuffer to read from
buf_sizenumber of bytes to read
funcgeneric read function
destdata destination

Definition at line 105 of file fifo.c.

Referenced by audio_read_packet(), av_fifo_realloc2(), do_audio_out(), ff_interleave_new_audio_packet(), flush_encoders(), flush_packet(), free_pkt_fifo(), output_packet(), process_callback(), request_frame(), swf_write_video(), and uninit().

int av_fifo_generic_write ( AVFifoBuffer f,
void src,
int  size,
int(*)(void *, void *, int)  func 
)

Feed data from a user-supplied callback to an AVFifoBuffer.

Parameters:
fAVFifoBuffer to write to
srcdata source; non-const since it may be used as a modifiable context by the function defined in func
sizenumber of bytes to write
funcgeneric write function; the first parameter is src, the second is dest_buf, the third is dest_buf_size. func must return the number of bytes written to dest_buf, or <= 0 to indicate no more data available to write. If func is NULL, src is interpreted as a simple byte array for source data.
Returns:
the number of bytes written to the FIFO

Definition at line 82 of file fifo.c.

Referenced by do_audio_out(), dv_assemble_frame(), ff_audio_rechunk_interleave(), flac_parse(), mpeg_mux_write_packet(), process_callback(), start_frame(), supply_new_packets(), and swf_write_audio().

int av_fifo_realloc2 ( AVFifoBuffer f,
unsigned int  size 
)

Resize an AVFifoBuffer.

Parameters:
fAVFifoBuffer to resize
sizenew AVFifoBuffer size in bytes
Returns:
<0 for failure, >=0 otherwise

Definition at line 62 of file fifo.c.

Referenced by do_audio_out(), ff_audio_rechunk_interleave(), flac_parse(), and mpeg_mux_write_packet().

void av_fifo_reset ( AVFifoBuffer f)

Reset the AVFifoBuffer to the state right after av_fifo_alloc, in particular it is emptied.

Parameters:
fAVFifoBuffer to reset

Definition at line 46 of file fifo.c.

Referenced by av_fifo_alloc().

int av_fifo_space ( AVFifoBuffer f)

Return the amount of space in bytes in the AVFifoBuffer, that is the amount of data you can write into it.

Parameters:
fAVFifoBuffer to write into
Returns:
size

Definition at line 57 of file fifo.c.

Referenced by poll_frame(), process_callback(), start_frame(), and supply_new_packets().