FFmpeg
1.2.4
|
Main libavformat public API header. More...
#include <time.h>
#include <stdio.h>
#include "libavcodec/avcodec.h"
#include "libavutil/dict.h"
#include "libavutil/log.h"
#include "avio.h"
#include "libavformat/version.h"
#include "libavutil/time.h"
Go to the source code of this file.
Data Structures | |
struct | AVFrac |
The exact value of the fractional number is: 'val + num / den'. More... | |
struct | AVProbeData |
This structure contains the data a format has to probe a file. More... | |
struct | AVOutputFormat |
struct | AVInputFormat |
struct | AVIndexEntry |
struct | AVStream |
Stream structure. More... | |
struct | AVProgram |
New fields can be added to the end with minor version bumps. More... | |
struct | AVChapter |
struct | AVFormatContext |
Format I/O context. More... | |
struct | AVPacketList |
Macros | |
#define | AVPROBE_SCORE_MAX 100 |
#define | AVPROBE_SCORE_RETRY (AVPROBE_SCORE_MAX/4) |
#define | AVPROBE_PADDING_SIZE 32 |
#define | AVFMT_NOFILE 0x0001 |
#define | AVFMT_NEEDNUMBER 0x0002 |
#define | AVFMT_SHOW_IDS 0x0008 |
#define | AVFMT_RAWPICTURE 0x0020 |
#define | AVFMT_GLOBALHEADER 0x0040 |
#define | AVFMT_NOTIMESTAMPS 0x0080 |
#define | AVFMT_GENERIC_INDEX 0x0100 |
#define | AVFMT_TS_DISCONT 0x0200 |
#define | AVFMT_VARIABLE_FPS 0x0400 |
#define | AVFMT_NODIMENSIONS 0x0800 |
#define | AVFMT_NOSTREAMS 0x1000 |
#define | AVFMT_NOBINSEARCH 0x2000 |
#define | AVFMT_NOGENSEARCH 0x4000 |
#define | AVFMT_NO_BYTE_SEEK 0x8000 |
#define | AVFMT_ALLOW_FLUSH 0x10000 |
#define | AVFMT_TS_NONSTRICT 0x8020000 |
#define | AVFMT_SEEK_TO_PTS 0x4000000 |
#define | AVINDEX_KEYFRAME 0x0001 |
#define | AV_DISPOSITION_DEFAULT 0x0001 |
#define | AV_DISPOSITION_DUB 0x0002 |
#define | AV_DISPOSITION_ORIGINAL 0x0004 |
#define | AV_DISPOSITION_COMMENT 0x0008 |
#define | AV_DISPOSITION_LYRICS 0x0010 |
#define | AV_DISPOSITION_KARAOKE 0x0020 |
#define | AV_DISPOSITION_FORCED 0x0040 |
#define | AV_DISPOSITION_HEARING_IMPAIRED 0x0080 |
#define | AV_DISPOSITION_VISUAL_IMPAIRED 0x0100 |
#define | AV_DISPOSITION_CLEAN_EFFECTS 0x0200 |
#define | AV_DISPOSITION_ATTACHED_PIC 0x0400 |
#define | AV_PTS_WRAP_IGNORE 0 |
#define | AV_PTS_WRAP_ADD_OFFSET 1 |
#define | AV_PTS_WRAP_SUB_OFFSET -1 |
#define | MAX_STD_TIMEBASES (60*12+6) |
#define | MAX_PROBE_PACKETS 2500 |
#define | MAX_REORDER_DELAY 16 |
#define | AV_PROGRAM_RUNNING 1 |
#define | AVFMTCTX_NOHEADER 0x0001 |
#define | AVFMT_FLAG_GENPTS 0x0001 |
#define | AVFMT_FLAG_IGNIDX 0x0002 |
#define | AVFMT_FLAG_NONBLOCK 0x0004 |
#define | AVFMT_FLAG_IGNDTS 0x0008 |
#define | AVFMT_FLAG_NOFILLIN 0x0010 |
#define | AVFMT_FLAG_NOPARSE 0x0020 |
#define | AVFMT_FLAG_NOBUFFER 0x0040 |
#define | AVFMT_FLAG_CUSTOM_IO 0x0080 |
#define | AVFMT_FLAG_DISCARD_CORRUPT 0x0100 |
#define | AVFMT_FLAG_MP4A_LATM 0x8000 |
#define | AVFMT_FLAG_SORT_DTS 0x10000 |
#define | AVFMT_FLAG_PRIV_OPT 0x20000 |
#define | AVFMT_FLAG_KEEP_SIDE_DATA 0x40000 |
#define | FF_FDEBUG_TS 0x0001 |
#define | RAW_PACKET_BUFFER_SIZE 2500000 |
#define | AVSEEK_FLAG_BACKWARD 1 |
#define | AVSEEK_FLAG_BYTE 2 |
#define | AVSEEK_FLAG_ANY 4 |
#define | AVSEEK_FLAG_FRAME 8 |
#define | AVPROBE_SCORE_MAX 100 |
maximum score, half of that is used for file-extension-based detection | |
#define | AVPROBE_SCORE_RETRY (AVPROBE_SCORE_MAX/4) |
#define | AVPROBE_PADDING_SIZE 32 |
extra allocated bytes at the end of the probe buffer | |
#define | AVFMT_NOFILE 0x0001 |
Demuxer will use avio_open, no opened file should be provided by the caller. | |
#define | AVFMT_NEEDNUMBER 0x0002 |
Needs 'd' in filename. | |
#define | AVFMT_SHOW_IDS 0x0008 |
Show format stream IDs numbers. | |
#define | AVFMT_RAWPICTURE 0x0020 |
Format wants AVPicture structure for raw picture data. | |
#define | AVFMT_GLOBALHEADER 0x0040 |
Format wants global header. | |
#define | AVFMT_NOTIMESTAMPS 0x0080 |
Format does not need / have any timestamps. | |
#define | AVFMT_GENERIC_INDEX 0x0100 |
Use generic index building code. | |
#define | AVFMT_TS_DISCONT 0x0200 |
Format allows timestamp discontinuities. | |
#define | AVFMT_VARIABLE_FPS 0x0400 |
Format allows variable fps. | |
#define | AVFMT_NODIMENSIONS 0x0800 |
Format does not need width/height. | |
#define | AVFMT_NOSTREAMS 0x1000 |
Format does not require any streams. | |
#define | AVFMT_NOBINSEARCH 0x2000 |
Format does not allow to fallback to binary search via read_timestamp. | |
#define | AVFMT_NOGENSEARCH 0x4000 |
Format does not allow to fallback to generic search. | |
#define | AVFMT_NO_BYTE_SEEK 0x8000 |
Format does not allow seeking by bytes. | |
#define | AVFMT_ALLOW_FLUSH 0x10000 |
Format allows flushing. | |
#define | AVFMT_TS_NONSTRICT 0x8020000 |
Format does not require strictly increasing timestamps, but they must still be monotonic. | |
#define | AVFMT_SEEK_TO_PTS 0x4000000 |
Seeking is based on PTS. | |
#define | AVINDEX_KEYFRAME 0x0001 |
#define | AV_DISPOSITION_DEFAULT 0x0001 |
#define | AV_DISPOSITION_DUB 0x0002 |
#define | AV_DISPOSITION_ORIGINAL 0x0004 |
#define | AV_DISPOSITION_COMMENT 0x0008 |
#define | AV_DISPOSITION_LYRICS 0x0010 |
#define | AV_DISPOSITION_KARAOKE 0x0020 |
#define | AV_DISPOSITION_FORCED 0x0040 |
Track should be used during playback by default. | |
#define | AV_DISPOSITION_HEARING_IMPAIRED 0x0080 |
stream for hearing impaired audiences | |
#define | AV_DISPOSITION_VISUAL_IMPAIRED 0x0100 |
stream for visual impaired audiences | |
#define | AV_DISPOSITION_CLEAN_EFFECTS 0x0200 |
stream without voice | |
#define | AV_DISPOSITION_ATTACHED_PIC 0x0400 |
The stream is stored in the file as an attached picture/"cover art" (e.g. | |
#define | AV_PTS_WRAP_IGNORE 0 |
Options for behavior on timestamp wrap detection. | |
#define | AV_PTS_WRAP_ADD_OFFSET 1 |
add the format specific offset on wrap detection | |
#define | AV_PTS_WRAP_SUB_OFFSET -1 |
subtract the format specific offset on wrap detection | |
#define | MAX_STD_TIMEBASES (60*12+6) |
Stream information used internally by av_find_stream_info() | |
#define | MAX_PROBE_PACKETS 2500 |
Number of packets to buffer for codec probing. | |
#define | MAX_REORDER_DELAY 16 |
#define | AV_PROGRAM_RUNNING 1 |
#define | AVFMTCTX_NOHEADER 0x0001 |
signal that no header is present (streams are added dynamically) | |
#define | AVFMT_FLAG_GENPTS 0x0001 |
Generate missing pts even if it requires parsing future frames. | |
#define | AVFMT_FLAG_IGNIDX 0x0002 |
Ignore index. | |
#define | AVFMT_FLAG_NONBLOCK 0x0004 |
Do not block when reading packets from input. | |
#define | AVFMT_FLAG_IGNDTS 0x0008 |
Ignore DTS on frames that contain both DTS & PTS. | |
#define | AVFMT_FLAG_NOFILLIN 0x0010 |
Do not infer any values from other values, just return what is stored in the container. | |
#define | AVFMT_FLAG_NOPARSE 0x0020 |
Do not use AVParsers, you also must set AVFMT_FLAG_NOFILLIN as the fillin code works on frames and no parsing -> no frames. Also seeking to frames can not work if parsing to find frame boundaries has been disabled. | |
#define | AVFMT_FLAG_NOBUFFER 0x0040 |
Do not buffer frames when possible. | |
#define | AVFMT_FLAG_CUSTOM_IO 0x0080 |
The caller has supplied a custom AVIOContext, don't avio_close() it. | |
#define | AVFMT_FLAG_DISCARD_CORRUPT 0x0100 |
Discard frames marked corrupted. | |
#define | AVFMT_FLAG_MP4A_LATM 0x8000 |
Enable RTP MP4A-LATM payload. | |
#define | AVFMT_FLAG_SORT_DTS 0x10000 |
try to interleave outputted packets by dts (using this flag can slow demuxing down) | |
#define | AVFMT_FLAG_PRIV_OPT 0x20000 |
Enable use of private options by delaying codec open (this could be made default once all code is converted) | |
#define | AVFMT_FLAG_KEEP_SIDE_DATA 0x40000 |
Don't merge side data but keep it separate. | |
#define | FF_FDEBUG_TS 0x0001 |
#define | RAW_PACKET_BUFFER_SIZE 2500000 |
Remaining size available for raw_packet_buffer, in bytes. | |
#define | AVSEEK_FLAG_BACKWARD 1 |
#define | AVSEEK_FLAG_BYTE 2 |
seeking based on position in bytes | |
#define | AVSEEK_FLAG_ANY 4 |
seek to any frame, even non-keyframes | |
#define | AVSEEK_FLAG_FRAME 8 |
seeking based on frame number |
Typedefs | |
typedef struct AVFrac | AVFrac |
The exact value of the fractional number is: 'val + num / den'. | |
typedef struct AVProbeData | AVProbeData |
This structure contains the data a format has to probe a file. | |
typedef struct AVOutputFormat | AVOutputFormat |
typedef struct AVInputFormat | AVInputFormat |
typedef struct AVIndexEntry | AVIndexEntry |
typedef struct AVStream | AVStream |
Stream structure. | |
typedef struct AVProgram | AVProgram |
New fields can be added to the end with minor version bumps. | |
typedef struct AVChapter | AVChapter |
typedef struct AVFormatContext | AVFormatContext |
Format I/O context. | |
typedef struct AVPacketList | AVPacketList |
Enumerations | |
enum | AVStreamParseType { AVSTREAM_PARSE_NONE, AVSTREAM_PARSE_FULL, AVSTREAM_PARSE_HEADERS, AVSTREAM_PARSE_TIMESTAMPS, AVSTREAM_PARSE_FULL_ONCE, AVSTREAM_PARSE_FULL_RAW = MKTAG(0,'R','A','W'), AVSTREAM_PARSE_NONE, AVSTREAM_PARSE_FULL, AVSTREAM_PARSE_HEADERS, AVSTREAM_PARSE_TIMESTAMPS, AVSTREAM_PARSE_FULL_ONCE, AVSTREAM_PARSE_FULL_RAW = MKTAG(0,'R','A','W'), AVSTREAM_PARSE_NONE, AVSTREAM_PARSE_FULL, AVSTREAM_PARSE_HEADERS, AVSTREAM_PARSE_TIMESTAMPS, AVSTREAM_PARSE_FULL_ONCE, AVSTREAM_PARSE_FULL_RAW = MKTAG(0,'R','A','W') } |
enum | AVDurationEstimationMethod { AVFMT_DURATION_FROM_PTS, AVFMT_DURATION_FROM_STREAM, AVFMT_DURATION_FROM_BITRATE, AVFMT_DURATION_FROM_PTS, AVFMT_DURATION_FROM_STREAM, AVFMT_DURATION_FROM_BITRATE, AVFMT_DURATION_FROM_PTS, AVFMT_DURATION_FROM_STREAM, AVFMT_DURATION_FROM_BITRATE } |
The duration of a video can be estimated through various ways, and this enum can be used to know how the duration was estimated. More... |
Functions | |
int | av_get_packet (AVIOContext *s, AVPacket *pkt, int size) |
Allocate and read the payload of a packet and initialize its fields with default values. | |
int | av_append_packet (AVIOContext *s, AVPacket *pkt, int size) |
Read data and append it to the current content of the AVPacket. | |
enum AVDurationEstimationMethod | av_fmt_ctx_get_duration_estimation_method (const AVFormatContext *ctx) |
Returns the method used to set ctx->duration. | |
unsigned | avformat_version (void) |
Return the LIBAVFORMAT_VERSION_INT constant. | |
const char * | avformat_configuration (void) |
Return the libavformat build-time configuration. | |
const char * | avformat_license (void) |
Return the libavformat license. | |
void | av_register_all (void) |
Initialize libavformat and register all the muxers, demuxers and protocols. | |
void | av_register_input_format (AVInputFormat *format) |
void | av_register_output_format (AVOutputFormat *format) |
int | avformat_network_init (void) |
Do global initialization of network components. | |
int | avformat_network_deinit (void) |
Undo the initialization done by avformat_network_init. | |
AVInputFormat * | av_iformat_next (AVInputFormat *f) |
If f is NULL, returns the first registered input format, if f is non-NULL, returns the next registered input format after f or NULL if f is the last one. | |
AVOutputFormat * | av_oformat_next (AVOutputFormat *f) |
If f is NULL, returns the first registered output format, if f is non-NULL, returns the next registered output format after f or NULL if f is the last one. | |
AVFormatContext * | avformat_alloc_context (void) |
Allocate an AVFormatContext. | |
void | avformat_free_context (AVFormatContext *s) |
Free an AVFormatContext and all its streams. | |
const AVClass * | avformat_get_class (void) |
Get the AVClass for AVFormatContext. | |
AVStream * | avformat_new_stream (AVFormatContext *s, const AVCodec *c) |
Add a new stream to a media file. | |
AVProgram * | av_new_program (AVFormatContext *s, int id) |
int | avformat_alloc_output_context2 (AVFormatContext **ctx, AVOutputFormat *oformat, const char *format_name, const char *filename) |
Allocate an AVFormatContext for an output format. | |
AVInputFormat * | av_find_input_format (const char *short_name) |
Find AVInputFormat based on the short name of the input format. | |
AVInputFormat * | av_probe_input_format (AVProbeData *pd, int is_opened) |
Guess the file format. | |
AVInputFormat * | av_probe_input_format2 (AVProbeData *pd, int is_opened, int *score_max) |
Guess the file format. | |
AVInputFormat * | av_probe_input_format3 (AVProbeData *pd, int is_opened, int *score_ret) |
Guess the file format. | |
int | av_probe_input_buffer (AVIOContext *pb, AVInputFormat **fmt, const char *filename, void *logctx, unsigned int offset, unsigned int max_probe_size) |
Probe a bytestream to determine the input format. | |
int | avformat_open_input (AVFormatContext **ps, const char *filename, AVInputFormat *fmt, AVDictionary **options) |
Open an input stream and read the header. | |
attribute_deprecated int | av_demuxer_open (AVFormatContext *ic) |
int | avformat_find_stream_info (AVFormatContext *ic, AVDictionary **options) |
Read packets of a media file to get stream information. | |
AVProgram * | av_find_program_from_stream (AVFormatContext *ic, AVProgram *last, int s) |
Find the programs which belong to a given stream. | |
int | av_find_best_stream (AVFormatContext *ic, enum AVMediaType type, int wanted_stream_nb, int related_stream, AVCodec **decoder_ret, int flags) |
Find the "best" stream in the file. | |
int | av_read_frame (AVFormatContext *s, AVPacket *pkt) |
Return the next frame of a stream. | |
int | av_seek_frame (AVFormatContext *s, int stream_index, int64_t timestamp, int flags) |
Seek to the keyframe at timestamp. | |
int | avformat_seek_file (AVFormatContext *s, int stream_index, int64_t min_ts, int64_t ts, int64_t max_ts, int flags) |
Seek to timestamp ts. | |
int | av_read_play (AVFormatContext *s) |
Start playing a network-based stream (e.g. | |
int | av_read_pause (AVFormatContext *s) |
Pause a network-based stream (e.g. | |
void | avformat_close_input (AVFormatContext **s) |
Close an opened input AVFormatContext. | |
int | avformat_write_header (AVFormatContext *s, AVDictionary **options) |
Allocate the stream private data and write the stream header to an output media file. | |
int | av_write_frame (AVFormatContext *s, AVPacket *pkt) |
Write a packet to an output media file. | |
int | av_interleaved_write_frame (AVFormatContext *s, AVPacket *pkt) |
Write a packet to an output media file ensuring correct interleaving. | |
int | av_write_trailer (AVFormatContext *s) |
Write the stream trailer to an output media file and free the file private data. | |
AVOutputFormat * | av_guess_format (const char *short_name, const char *filename, const char *mime_type) |
Return the output format in the list of registered output formats which best matches the provided parameters, or return NULL if there is no match. | |
enum AVCodecID | av_guess_codec (AVOutputFormat *fmt, const char *short_name, const char *filename, const char *mime_type, enum AVMediaType type) |
Guess the codec ID based upon muxer and filename. | |
int | av_get_output_timestamp (struct AVFormatContext *s, int stream, int64_t *dts, int64_t *wall) |
Get timing information for the data currently output. | |
void | av_hex_dump (FILE *f, const uint8_t *buf, int size) |
Send a nice hexadecimal dump of a buffer to the specified file stream. | |
void | av_hex_dump_log (void *avcl, int level, const uint8_t *buf, int size) |
Send a nice hexadecimal dump of a buffer to the log. | |
void | av_pkt_dump2 (FILE *f, AVPacket *pkt, int dump_payload, AVStream *st) |
Send a nice dump of a packet to the specified file stream. | |
void | av_pkt_dump_log2 (void *avcl, int level, AVPacket *pkt, int dump_payload, AVStream *st) |
Send a nice dump of a packet to the log. | |
enum AVCodecID | av_codec_get_id (const struct AVCodecTag *const *tags, unsigned int tag) |
Get the AVCodecID for the given codec tag tag. | |
unsigned int | av_codec_get_tag (const struct AVCodecTag *const *tags, enum AVCodecID id) |
Get the codec tag for the given codec id id. | |
int | av_codec_get_tag2 (const struct AVCodecTag *const *tags, enum AVCodecID id, unsigned int *tag) |
Get the codec tag for the given codec id. | |
int | av_find_default_stream_index (AVFormatContext *s) |
int | av_index_search_timestamp (AVStream *st, int64_t timestamp, int flags) |
Get the index for a specific timestamp. | |
int | av_add_index_entry (AVStream *st, int64_t pos, int64_t timestamp, int size, int distance, int flags) |
Add an index entry into a sorted list. | |
void | av_url_split (char *proto, int proto_size, char *authorization, int authorization_size, char *hostname, int hostname_size, int *port_ptr, char *path, int path_size, const char *url) |
Split a URL string into components. | |
void | av_dump_format (AVFormatContext *ic, int index, const char *url, int is_output) |
int | av_get_frame_filename (char *buf, int buf_size, const char *path, int number) |
Return in 'buf' the path with 'd' replaced by a number. | |
int | av_filename_number_test (const char *filename) |
Check whether filename actually is a numbered sequence generator. | |
int | av_sdp_create (AVFormatContext *ac[], int n_files, char *buf, int size) |
Generate an SDP for an RTP session. | |
int | av_match_ext (const char *filename, const char *extensions) |
Return a positive value if the given filename has one of the given extensions, 0 otherwise. | |
int | avformat_query_codec (AVOutputFormat *ofmt, enum AVCodecID codec_id, int std_compliance) |
Test if the given container can store a codec. | |
struct AVCodecTag * | avformat_get_riff_video_tags (void) |
struct AVCodecTag * | avformat_get_riff_audio_tags (void) |
AVRational | av_guess_sample_aspect_ratio (AVFormatContext *format, AVStream *stream, AVFrame *frame) |
Guess the sample aspect ratio of a frame, based on both the stream and the frame aspect ratio. | |
int | avformat_match_stream_specifier (AVFormatContext *s, AVStream *st, const char *spec) |
Check if the stream st contained in s is matched by the stream specifier spec. | |
void | avformat_queue_attached_pictures (AVFormatContext *s) |
Main libavformat public API header.
Definition in file avformat.h.
#define AV_DISPOSITION_ATTACHED_PIC 0x0400 |
#define AV_DISPOSITION_ATTACHED_PIC 0x0400 |
The stream is stored in the file as an attached picture/"cover art" (e.g.
APIC frame in ID3v2). The single packet associated with it will be returned among the first few packets read from the file unless seeking takes place. It can also be accessed at any time in AVStream.attached_pic.
Definition at line 630 of file avformat.h.
#define AV_DISPOSITION_CLEAN_EFFECTS 0x0200 |
#define AV_DISPOSITION_CLEAN_EFFECTS 0x0200 |
stream without voice
Definition at line 623 of file avformat.h.
#define AV_DISPOSITION_COMMENT 0x0008 |
Definition at line 611 of file avformat.h.
#define AV_DISPOSITION_COMMENT 0x0008 |
#define AV_DISPOSITION_DEFAULT 0x0001 |
Definition at line 608 of file avformat.h.
#define AV_DISPOSITION_DEFAULT 0x0001 |
#define AV_DISPOSITION_DUB 0x0002 |
#define AV_DISPOSITION_DUB 0x0002 |
Definition at line 609 of file avformat.h.
#define AV_DISPOSITION_FORCED 0x0040 |
Track should be used during playback by default.
Useful for subtitle track that should be displayed even when user did not explicitly ask for subtitles.
Definition at line 620 of file avformat.h.
#define AV_DISPOSITION_FORCED 0x0040 |
#define AV_DISPOSITION_HEARING_IMPAIRED 0x0080 |
stream for hearing impaired audiences
Definition at line 621 of file avformat.h.
#define AV_DISPOSITION_HEARING_IMPAIRED 0x0080 |
#define AV_DISPOSITION_KARAOKE 0x0020 |
Definition at line 613 of file avformat.h.
#define AV_DISPOSITION_KARAOKE 0x0020 |
#define AV_DISPOSITION_LYRICS 0x0010 |
Definition at line 612 of file avformat.h.
#define AV_DISPOSITION_LYRICS 0x0010 |
#define AV_DISPOSITION_ORIGINAL 0x0004 |
Definition at line 610 of file avformat.h.
#define AV_DISPOSITION_ORIGINAL 0x0004 |
#define AV_DISPOSITION_VISUAL_IMPAIRED 0x0100 |
stream for visual impaired audiences
Definition at line 622 of file avformat.h.
#define AV_DISPOSITION_VISUAL_IMPAIRED 0x0100 |
#define AV_PROGRAM_RUNNING 1 |
#define AV_PROGRAM_RUNNING 1 |
Definition at line 878 of file avformat.h.
#define AV_PTS_WRAP_ADD_OFFSET 1 |
#define AV_PTS_WRAP_ADD_OFFSET 1 |
add the format specific offset on wrap detection
Definition at line 636 of file avformat.h.
#define AV_PTS_WRAP_IGNORE 0 |
#define AV_PTS_WRAP_IGNORE 0 |
Options for behavior on timestamp wrap detection.
ignore the wrap
Definition at line 635 of file avformat.h.
#define AV_PTS_WRAP_SUB_OFFSET -1 |
#define AV_PTS_WRAP_SUB_OFFSET -1 |
subtract the format specific offset on wrap detection
Definition at line 637 of file avformat.h.
#define AVFMT_ALLOW_FLUSH 0x10000 |
Format allows flushing.
If not set, the muxer will not receive a NULL packet in the write_packet function.
Definition at line 364 of file avformat.h.
#define AVFMT_ALLOW_FLUSH 0x10000 |
#define AVFMT_FLAG_CUSTOM_IO 0x0080 |
#define AVFMT_FLAG_CUSTOM_IO 0x0080 |
The caller has supplied a custom AVIOContext, don't avio_close() it.
Definition at line 1026 of file avformat.h.
#define AVFMT_FLAG_DISCARD_CORRUPT 0x0100 |
#define AVFMT_FLAG_DISCARD_CORRUPT 0x0100 |
Discard frames marked corrupted.
Definition at line 1027 of file avformat.h.
#define AVFMT_FLAG_GENPTS 0x0001 |
#define AVFMT_FLAG_GENPTS 0x0001 |
Generate missing pts even if it requires parsing future frames.
Definition at line 1019 of file avformat.h.
#define AVFMT_FLAG_IGNDTS 0x0008 |
#define AVFMT_FLAG_IGNDTS 0x0008 |
Ignore DTS on frames that contain both DTS & PTS.
Definition at line 1022 of file avformat.h.
#define AVFMT_FLAG_IGNIDX 0x0002 |
#define AVFMT_FLAG_IGNIDX 0x0002 |
Ignore index.
Definition at line 1020 of file avformat.h.
#define AVFMT_FLAG_KEEP_SIDE_DATA 0x40000 |
#define AVFMT_FLAG_KEEP_SIDE_DATA 0x40000 |
Don't merge side data but keep it separate.
Definition at line 1031 of file avformat.h.
#define AVFMT_FLAG_MP4A_LATM 0x8000 |
Enable RTP MP4A-LATM payload.
Definition at line 1028 of file avformat.h.
#define AVFMT_FLAG_MP4A_LATM 0x8000 |
#define AVFMT_FLAG_NOBUFFER 0x0040 |
Do not buffer frames when possible.
Definition at line 1025 of file avformat.h.
#define AVFMT_FLAG_NOBUFFER 0x0040 |
#define AVFMT_FLAG_NOFILLIN 0x0010 |
#define AVFMT_FLAG_NOFILLIN 0x0010 |
Do not infer any values from other values, just return what is stored in the container.
Definition at line 1023 of file avformat.h.
#define AVFMT_FLAG_NONBLOCK 0x0004 |
#define AVFMT_FLAG_NONBLOCK 0x0004 |
Do not block when reading packets from input.
Definition at line 1021 of file avformat.h.
#define AVFMT_FLAG_NOPARSE 0x0020 |
Do not use AVParsers, you also must set AVFMT_FLAG_NOFILLIN as the fillin code works on frames and no parsing -> no frames. Also seeking to frames can not work if parsing to find frame boundaries has been disabled.
Definition at line 1024 of file avformat.h.
#define AVFMT_FLAG_NOPARSE 0x0020 |
#define AVFMT_FLAG_PRIV_OPT 0x20000 |
#define AVFMT_FLAG_PRIV_OPT 0x20000 |
Enable use of private options by delaying codec open (this could be made default once all code is converted)
Definition at line 1030 of file avformat.h.
#define AVFMT_FLAG_SORT_DTS 0x10000 |
try to interleave outputted packets by dts (using this flag can slow demuxing down)
Definition at line 1029 of file avformat.h.
#define AVFMT_FLAG_SORT_DTS 0x10000 |
#define AVFMT_GENERIC_INDEX 0x0100 |
Use generic index building code.
Definition at line 356 of file avformat.h.
#define AVFMT_GENERIC_INDEX 0x0100 |
#define AVFMT_GLOBALHEADER 0x0040 |
#define AVFMT_GLOBALHEADER 0x0040 |
Format wants global header.
Definition at line 354 of file avformat.h.
#define AVFMT_NEEDNUMBER 0x0002 |
Needs 'd' in filename.
Definition at line 350 of file avformat.h.
#define AVFMT_NEEDNUMBER 0x0002 |
#define AVFMT_NO_BYTE_SEEK 0x8000 |
#define AVFMT_NO_BYTE_SEEK 0x8000 |
Format does not allow seeking by bytes.
Definition at line 363 of file avformat.h.
#define AVFMT_NOBINSEARCH 0x2000 |
Format does not allow to fallback to binary search via read_timestamp.
Definition at line 361 of file avformat.h.
#define AVFMT_NOBINSEARCH 0x2000 |
#define AVFMT_NODIMENSIONS 0x0800 |
Format does not need width/height.
Definition at line 359 of file avformat.h.
#define AVFMT_NODIMENSIONS 0x0800 |
#define AVFMT_NOFILE 0x0001 |
#define AVFMT_NOFILE 0x0001 |
Demuxer will use avio_open, no opened file should be provided by the caller.
Definition at line 349 of file avformat.h.
#define AVFMT_NOGENSEARCH 0x4000 |
#define AVFMT_NOGENSEARCH 0x4000 |
Format does not allow to fallback to generic search.
Definition at line 362 of file avformat.h.
#define AVFMT_NOSTREAMS 0x1000 |
Format does not require any streams.
Definition at line 360 of file avformat.h.
#define AVFMT_NOSTREAMS 0x1000 |
#define AVFMT_NOTIMESTAMPS 0x0080 |
Format does not need / have any timestamps.
Definition at line 355 of file avformat.h.
#define AVFMT_NOTIMESTAMPS 0x0080 |
#define AVFMT_RAWPICTURE 0x0020 |
Format wants AVPicture structure for raw picture data.
Definition at line 352 of file avformat.h.
#define AVFMT_RAWPICTURE 0x0020 |
#define AVFMT_SEEK_TO_PTS 0x4000000 |
Seeking is based on PTS.
Definition at line 374 of file avformat.h.
#define AVFMT_SEEK_TO_PTS 0x4000000 |
#define AVFMT_SHOW_IDS 0x0008 |
Show format stream IDs numbers.
Definition at line 351 of file avformat.h.
#define AVFMT_SHOW_IDS 0x0008 |
#define AVFMT_TS_DISCONT 0x0200 |
Format allows timestamp discontinuities.
Note, muxers always require valid (monotone) timestamps
Definition at line 357 of file avformat.h.
#define AVFMT_TS_DISCONT 0x0200 |
#define AVFMT_TS_NONSTRICT 0x8020000 |
#define AVFMT_TS_NONSTRICT 0x8020000 |
Format does not require strictly increasing timestamps, but they must still be monotonic.
Definition at line 366 of file avformat.h.
#define AVFMT_VARIABLE_FPS 0x0400 |
Format allows variable fps.
Definition at line 358 of file avformat.h.
#define AVFMT_VARIABLE_FPS 0x0400 |
#define AVFMTCTX_NOHEADER 0x0001 |
#define AVFMTCTX_NOHEADER 0x0001 |
signal that no header is present (streams are added dynamically)
Definition at line 912 of file avformat.h.
#define AVINDEX_KEYFRAME 0x0001 |
Definition at line 602 of file avformat.h.
#define AVINDEX_KEYFRAME 0x0001 |
#define AVPROBE_PADDING_SIZE 32 |
#define AVPROBE_PADDING_SIZE 32 |
extra allocated bytes at the end of the probe buffer
Definition at line 346 of file avformat.h.
#define AVPROBE_SCORE_MAX 100 |
maximum score, half of that is used for file-extension-based detection
Definition at line 344 of file avformat.h.
#define AVPROBE_SCORE_MAX 100 |
#define AVPROBE_SCORE_RETRY (AVPROBE_SCORE_MAX/4) |
#define AVPROBE_SCORE_RETRY (AVPROBE_SCORE_MAX/4) |
Definition at line 345 of file avformat.h.
#define AVSEEK_FLAG_ANY 4 |
seek to any frame, even non-keyframes
Definition at line 1727 of file avformat.h.
#define AVSEEK_FLAG_ANY 4 |
#define AVSEEK_FLAG_BACKWARD 1 |
#define AVSEEK_FLAG_BACKWARD 1 |
seek backward
Definition at line 1725 of file avformat.h.
#define AVSEEK_FLAG_BYTE 2 |
seeking based on position in bytes
Definition at line 1726 of file avformat.h.
#define AVSEEK_FLAG_BYTE 2 |
#define AVSEEK_FLAG_FRAME 8 |
#define AVSEEK_FLAG_FRAME 8 |
seeking based on frame number
Definition at line 1728 of file avformat.h.
#define FF_FDEBUG_TS 0x0001 |
Definition at line 1128 of file avformat.h.
#define FF_FDEBUG_TS 0x0001 |
#define MAX_PROBE_PACKETS 2500 |
Number of packets to buffer for codec probing.
Definition at line 793 of file avformat.h.
#define MAX_PROBE_PACKETS 2500 |
#define MAX_REORDER_DELAY 16 |
#define MAX_REORDER_DELAY 16 |
Definition at line 820 of file avformat.h.
#define MAX_STD_TIMEBASES (60*12+6) |
Stream information used internally by av_find_stream_info()
Definition at line 752 of file avformat.h.
#define MAX_STD_TIMEBASES (60*12+6) |
#define RAW_PACKET_BUFFER_SIZE 2500000 |
#define RAW_PACKET_BUFFER_SIZE 2500000 |
Remaining size available for raw_packet_buffer, in bytes.
Definition at line 1250 of file avformat.h.
typedef struct AVFormatContext AVFormatContext |
Format I/O 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(AVFormatContext) must not be used outside libav*, use avformat_alloc_context() to create an AVFormatContext.
The exact value of the fractional number is: 'val + num / den'.
num is assumed to be 0 <= num < den.
typedef struct AVIndexEntry AVIndexEntry |
typedef struct AVPacketList AVPacketList |
typedef struct AVProbeData AVProbeData |
This structure contains the data a format has to probe a file.
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(AVProgram) must not be used outside libav*.
Stream structure.
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(AVStream) must not be used outside libav*.
The duration of a video can be estimated through various ways, and this enum can be used to know how the duration was estimated.
Definition at line 927 of file avformat.h.
enum AVStreamParseType |
Definition at line 583 of file avformat.h.
int av_append_packet | ( | AVIOContext * | s, |
AVPacket * | pkt, | ||
int | size | ||
) |
Read data and append it to the current content of the AVPacket.
If pkt->size is 0 this is identical to av_get_packet. Note that this uses av_grow_packet and thus involves a realloc which is inefficient. Thus this function should only be used when there is no reasonable way to know (an upper bound of) the final size.
pkt | packet |
size | amount of data to read |
enum AVDurationEstimationMethod av_fmt_ctx_get_duration_estimation_method | ( | const AVFormatContext * | ctx | ) |
int av_get_packet | ( | AVIOContext * | s, |
AVPacket * | pkt, | ||
int | size | ||
) |
int avformat_alloc_output_context2 | ( | AVFormatContext ** | ctx, |
AVOutputFormat * | oformat, | ||
const char * | format_name, | ||
const char * | filename | ||
) |
Allocate an AVFormatContext for an output format.
avformat_free_context() can be used to free the context and everything allocated by the framework within it.
*ctx | is set to the created format context, or to NULL in case of failure |
oformat | format to use for allocating the context, if NULL format_name and filename are used instead |
format_name | the name of output format to use for allocating the context, if NULL filename is used instead |
filename | the name of the filename to use for allocating the context, may be NULL |