AVIOContext Struct Reference

Bytestream IO Context. More...

#include <avio.h>


Data Fields

unsigned char * buffer
 Start of the buffer.
int buffer_size
 Maximum buffer size.
unsigned char * buf_ptr
 Current position in the buffer.
unsigned char * buf_end
 End of the data, may be less than buffer+buffer_size if the read function returned less data than requested, e.g.
void * opaque
 A private pointer, passed to the read/write/seek/.
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
attribute_deprecated 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)
 Pause or resume playback for network streaming protocols - e.g.
int64_t(* read_seek )(void *opaque, int stream_index, int64_t timestamp, int flags)
 Seek to a given timestamp in stream with the specified stream_index.
int seekable
 A combination of AVIO_SEEKABLE_ flags or 0 when the stream is not seekable.


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(AVIOContext) must not be used outside libav*.

Note:
None of the function pointers in AVIOContext should be called directly, they should only be set by the client application when implementing custom I/O. Normally these are set to the function pointers specified in avio_alloc_context()

Definition at line 50 of file avio.h.


Field Documentation

unsigned char* AVIOContext::buf_end

End of the data, may be less than buffer+buffer_size if the read function returned less data than requested, e.g.

for streams where no more data has been received yet.

Definition at line 54 of file avio.h.

Referenced by avio_r8(), avio_read(), avio_seek(), avio_seek_time(), avio_w8(), avio_write(), ffio_fill(), ffio_init_context(), ffio_read_partial(), ffio_rewind_with_probe_data(), fill_buffer(), init_packetizer(), read_gab2_sub(), url_fgetc(), and url_resetbuf().

unsigned char* AVIOContext::buf_ptr

unsigned char* AVIOContext::buffer

unsigned long AVIOContext::checksum

Definition at line 71 of file avio.h.

Referenced by ffio_get_checksum(), ffio_init_checksum(), fill_buffer(), and flush_buffer().

unsigned char* AVIOContext::checksum_ptr

Definition at line 72 of file avio.h.

Referenced by ffio_get_checksum(), ffio_init_checksum(), fill_buffer(), and flush_buffer().

Definition at line 68 of file avio.h.

Referenced by ffio_init_context().

true if the next seek should flush

Definition at line 64 of file avio.h.

Referenced by avio_flush(), avio_seek(), ffio_init_context(), and ffio_rewind_with_probe_data().

A private pointer, passed to the read/write/seek/.

.. functions.

Definition at line 58 of file avio.h.

Referenced by avio_close(), avio_close_dyn_buf(), avio_pause(), avio_read(), avio_seek(), avio_seek_time(), avio_size(), ffio_init_context(), fill_buffer(), flush_buffer(), url_fileno(), and wtvfile_close().

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

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

Pause or resume playback for network streaming protocols - e.g.

MMS.

Referenced by avio_pause(), and ffio_init_context().

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

Seek to a given timestamp in stream with the specified stream_index.

Needed for some network streaming protocols which don't support seeking to byte position.

Referenced by avio_seek_time(), and ffio_init_context().

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

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

true if open for writing

Definition at line 66 of file avio.h.

Referenced by avio_seek(), ffio_rewind_with_probe_data(), ffio_set_buf_size(), and url_resetbuf().

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

Referenced by ffio_init_context(), and flush_buffer().


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

Generated on Fri Oct 26 02:39:51 2012 for FFmpeg by  doxygen 1.5.8