ByteIOContext Struct Reference

Bytestream IO Context. More...

#include <avio.h>


Data Fields

unsigned char * buffer
int buffer_size
unsigned char * buf_ptr
unsigned char * buf_end
void * opaque
int(* read_packet )(void *opaque, uint8_t *buf, int buf_size)
int(* write_packet )(void *opaque, uint8_t *buf, int buf_size)
int64_t(* seek )(void *opaque, int64_t offset, int whence)
int64_t pos
 position in the file of the current buffer
int must_flush
 true if the next seek should flush
int eof_reached
 true if eof reached
int write_flag
 true if open for writing
int is_streamed
int max_packet_size
unsigned long checksum
unsigned char * checksum_ptr
unsigned long(* update_checksum )(unsigned long checksum, const uint8_t *buf, unsigned int size)
int error
 contains the error code or 0 if no error happened
int(* read_pause )(void *opaque, int pause)
int64_t(* read_seek )(void *opaque, int stream_index, int64_t timestamp, int flags)


Detailed Description

Bytestream IO Context.

New fields can be added to the end with minor version bumps. Removal, reordering and changes to existing fields require a major version bump. sizeof(ByteIOContext) must not be used outside libav*.

Definition at line 178 of file avio.h.


Field Documentation

unsigned char * ByteIOContext::buf_end

unsigned char* ByteIOContext::buf_ptr

unsigned char* ByteIOContext::buffer

Definition at line 180 of file avio.h.

Referenced by fill_buffer(), get_buffer(), init_put_byte(), url_resetbuf(), and url_setbufsize().

unsigned long ByteIOContext::checksum

Definition at line 192 of file avio.h.

Referenced by fill_buffer(), flush_buffer(), get_checksum(), and init_checksum().

Definition at line 193 of file avio.h.

Referenced by fill_buffer(), flush_buffer(), get_checksum(), and init_checksum().

true if eof reached

Definition at line 188 of file avio.h.

Referenced by decode_thread(), fill_buffer(), get_buffer(), init_put_byte(), url_feof(), and url_fseek().

contains the error code or 0 if no error happened

Definition at line 195 of file avio.h.

Referenced by fill_buffer(), flush_buffer(), get_buffer(), init_put_byte(), and url_ferror().

Definition at line 191 of file avio.h.

Referenced by fill_buffer(), init_put_byte(), and url_fget_max_packet_size().

true if the next seek should flush

Definition at line 187 of file avio.h.

Referenced by init_put_byte(), put_flush_packet(), and url_fseek().

position in the file of the current buffer

Definition at line 186 of file avio.h.

Referenced by av_url_read_fseek(), ffm_read_packet(), fill_buffer(), flush_buffer(), get_buffer(), init_put_byte(), url_fseek(), and url_fsize().

int(* ByteIOContext::read_packet)(void *opaque, uint8_t *buf, int buf_size)

int(* ByteIOContext::read_pause)(void *opaque, int pause)

int64_t(* ByteIOContext::read_seek)(void *opaque, int stream_index, int64_t timestamp, int flags)

Referenced by av_url_read_fseek(), and init_put_byte().

int64_t(* ByteIOContext::seek)(void *opaque, int64_t offset, int whence)

unsigned long(* ByteIOContext::update_checksum)(unsigned long checksum, const uint8_t *buf, unsigned int size)

true if open for writing

Definition at line 189 of file avio.h.

Referenced by url_fseek(), url_resetbuf(), and url_setbufsize().

int(* ByteIOContext::write_packet)(void *opaque, uint8_t *buf, int buf_size)

Referenced by flush_buffer(), and init_put_byte().


The documentation for this struct was generated from the following file:

Generated on Fri Oct 26 02:35:47 2012 for FFmpeg by  doxygen 1.5.8