AVIOContext Struct Reference

Bytestream IO Context. More...

#include <avio.h>


Data Fields

const AVClass * av_class
A class for private options.
unsigned char * buffer
Start of the buffer.
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
true if the next seek should flush
true if eof reached
true if open for writing
unsigned long checksum
unsigned char * checksum_ptr
unsigned long(* update_checksum )(unsigned long checksum, const uint8_t *buf, unsigned int size)
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.
A combination of AVIO_SEEKABLE_ flags or 0 when the stream is not seekable.
int64_t maxsize
max filesize, used to limit allocations This field is internal to libavformat and access from outside is not allowed.
avio_read and avio_write should if possible be satisfied directly instead of going through a buffer, and avio_seek will always call the underlying seek function directly.
int64_t bytes_read
Bytes read statistic This field is internal to libavformat and access from outside is not allowed.
seek statistic This field is internal to libavformat and access from outside is not allowed.

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 68 of file avio.h.


Field Documentation

A class for private options.

If this AVIOContext is created by avio_open2(), av_class is set and passes the options down to protocols.

If this AVIOContext is manually allocated, then av_class may be set by the caller.

warning -- this field can be NULL, be sure to not pass this AVIOContext to any av_opt_* functions in that case.

Definition at line 81 of file avio.h.

Referenced by format_child_next().

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 85 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(), hls_read_seek(), init_packetizer(), read_gab2_sub(), and url_resetbuf().

unsigned char* AVIOContext::buf_ptr

Current position in the buffer.

Definition at line 84 of file avio.h.

Referenced by asf_write_trailer(), avio_r8(), avio_read(), avio_seek(), avio_seek_time(), avio_w8(), avio_write(), ffio_fill(), ffio_get_checksum(), ffio_init_checksum(), ffio_init_context(), ffio_read_partial(), ffio_rewind_with_probe_data(), ffio_set_buf_size(), fill_buffer(), flush_buffer(), hls_read_seek(), mxf_write_content_storage(), mxf_write_identification(), mxf_write_multi_descriptor(), mxf_write_package(), mxf_write_preface(), mxf_write_sequence(), mxf_write_structural_component(), mxf_write_track(), read_gab2_sub(), and rv10_write_header().

unsigned char* AVIOContext::buffer

Start of the buffer.

Definition at line 82 of file avio.h.

Referenced by asf_write_trailer(), avio_close(), avio_read(), avio_seek(), ffio_init_context(), ffio_rewind_with_probe_data(), ffio_set_buf_size(), fill_buffer(), flush_buffer(), free_variant_list(), hls_read_seek(), url_resetbuf(), and wtvfile_close().

Maximum buffer size.

Definition at line 83 of file avio.h.

Referenced by avio_read(), ff_gen_syncpoint_search(), ffio_init_context(), ffio_rewind_with_probe_data(), ffio_set_buf_size(), ffm_read_data(), fill_buffer(), and url_resetbuf().

Bytes read statistic This field is internal to libavformat and access from outside is not allowed.

Definition at line 136 of file avio.h.

Referenced by avio_close(), avio_read(), and fill_buffer().

unsigned long AVIOContext::checksum

Definition at line 99 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 100 of file avio.h.

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

avio_read and avio_write should if possible be satisfied directly instead of going through a buffer, and avio_seek will always call the underlying seek function directly.

Definition at line 130 of file avio.h.

Referenced by avio_read(), avio_seek(), avio_write(), and ffio_init_context().

true if eof reached

Definition at line 96 of file avio.h.

Referenced by asfrtp_parse_packet(), avio_read(), avio_seek(), bmv_read_packet(), cdxl_read_packet(), dfa_read_packet(), ff_mov_read_stsd_entries(), ffio_init_context(), ffio_rewind_with_probe_data(), fill_buffer(), gxf_packet(), hls_read_seek(), mov_read_ctts(), mov_read_sbgp(), mov_read_stco(), mov_read_stps(), mov_read_stsc(), mov_read_stss(), mov_read_stsz(), mov_read_stts(), mov_read_trun(), mp3_seek(), new_output_stream(), read_thread(), recheck_discard_flags(), smjpeg_read_header(), smjpeg_read_packet(), url_feof(), and xwma_read_header().

contains the error code or 0 if no error happened

Definition at line 102 of file avio.h.

Referenced by av_interleaved_write_frame(), av_write_frame(), av_write_trailer(), avformat_write_header(), avi_sync(), avio_read(), cin_read_frame_header(), ebml_read_num(), ff_asf_get_packet(), ffio_init_context(), ffio_read_partial(), fill_buffer(), flv_write_packet(), mxg_read_packet(), read_thread(), writeout(), and wtvfile_read_packet().

Definition at line 98 of file avio.h.

Referenced by avio_close_dyn_buf(), ffio_init_context(), fill_buffer(), and rtp_write_header().

max filesize, used to limit allocations This field is internal to libavformat and access from outside is not allowed.

Definition at line 123 of file avio.h.

Referenced by ffio_limit(), mp3_read_header(), and thp_read_header().

true if the next seek should flush

Definition at line 95 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 89 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(), ffio_url_child_next(), fill_buffer(), writeout(), and wtvfile_close().

position in the file of the current buffer

Definition at line 94 of file avio.h.

Referenced by asfrtp_parse_packet(), avio_read(), avio_seek(), avio_seek_time(), avio_size(), ffio_init_context(), ffio_rewind_with_probe_data(), ffm_read_packet(), fill_buffer(), hls_read_seek(), init_packetizer(), and writeout().

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

Referenced by avio_read(), ffio_init_context(), and fill_buffer().

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)

Referenced by avio_seek(), avio_seek_time(), avio_size(), ffio_init_context(), and nut_read_header().

seek statistic This field is internal to libavformat and access from outside is not allowed.

Definition at line 142 of file avio.h.

Referenced by avio_close(), and avio_seek().

A combination of AVIO_SEEKABLE_ flags or 0 when the stream is not seekable.

Definition at line 117 of file avio.h.

Referenced by aiff_read_header(), aiff_write_trailer(), amf_parse_object(), ape_read_header(), asf_write_header1(), asf_write_trailer(), avi_read_header(), avi_write_header(), avi_write_idx1(), avi_write_ix(), avi_write_packet(), avi_write_trailer(), avio_seek(), caf_write_header(), caf_write_trailer(), estimate_timings(), ff_id3v1_read(), ff_voc_get_packet(), ffio_init_context(), ffm_read_header(), flac_write_trailer(), flv_read_packet(), gxf_write_header(), hls_read_header(), http_prepare_data(), http_receive_data(), ico_write_header(), matroska_execute_seekhead(), mkv_write_header(), mkv_write_packet(), mkv_write_packet_internal(), mkv_write_trailer(), mov_find_next_sample(), mov_read_default(), mov_read_header(), mov_write_header(), mov_write_trailer(), mp3_read_header(), mp3_write_xing(), mpc8_read_header(), mpc_read_header(), mpegps_read_pes_header(), mpegts_read_header(), mxf_parse_handle_essence(), mxf_write_footer(), nut_read_header(), ogg_get_length(), r3d_read_header(), read_header(), read_seek(), rm_read_header(), rm_write_trailer(), rso_write_header(), rv10_write_header(), smjpeg_write_trailer(), sox_write_trailer(), swf_write_trailer(), vc1test_write_trailer(), write_trailer(), wv_read_block_header(), and wv_read_header().

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

Referenced by avio_read(), avio_write(), ffio_get_checksum(), ffio_init_checksum(), ffio_init_context(), fill_buffer(), and flush_buffer().

true if open for writing

Definition at line 97 of file avio.h.

Referenced by avio_close(), 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 writeout().


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

Generated on Fri Oct 26 02:50:14 2012 for FFmpeg by doxygen 1.5.8

AltStyle によって変換されたページ (->オリジナル) /