|
| const AVClass * | av_class |
| | A class for private options.
|
| |
| 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/... functions.
|
| |
| int(* | read_packet )(void *opaque, uint8_t *buf, int buf_size) |
| |
| int(* | write_packet )(void *opaque, const 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 | eof_reached |
| | true if was unable to read due to error or eof
|
| |
| int | error |
| | contains the error code or 0 if no error happened
|
| |
| int | write_flag |
| | true if open for writing
|
| |
| int | max_packet_size |
| |
| int | min_packet_size |
| | Try to buffer at least this amount of data before flushing it.
|
| |
| unsigned long | checksum |
| |
| unsigned char * | checksum_ptr |
| |
| unsigned long(* | update_checksum )(unsigned long checksum, const uint8_t *buf, unsigned int size) |
| |
| 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.
|
| |
| int | direct |
| | 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.
|
| |
| const char * | protocol_whitelist |
| | ',' separated list of allowed protocols.
|
| |
| const char * | protocol_blacklist |
| | ',' separated list of disallowed protocols.
|
| |
| int(* | write_data_type )(void *opaque, const uint8_t *buf, int buf_size, enum AVIODataMarkerType type, int64_t time) |
| | A callback that is used instead of write_packet.
|
| |
| int | ignore_boundary_point |
| | If set, don't call write_data_type separately for AVIO_DATA_MARKER_BOUNDARY_POINT, but ignore them and treat them as AVIO_DATA_MARKER_UNKNOWN (to avoid needlessly small chunks of data returned from the callback).
|
| |
| unsigned char * | buf_ptr_max |
| | Maximum reached position before a backward seek in the write buffer, used keeping track of already written data for a later flush.
|
| |
| int64_t | bytes_read |
| | Read-only statistic of bytes read for this AVIOContext.
|
| |
| int64_t | bytes_written |
| | Read-only statistic of bytes written for this AVIOContext.
|
| |
Bytestream IO Context.
New public fields can be added with minor version bumps. Removal, reordering and changes to existing public 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()
- Examples
- avio_read_callback.c, qsv_decode.c, and transcode_aac.c.
Definition at line 160 of file avio.h.
| const AVClass* AVIOContext::av_class |
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 173 of file avio.h.