#include "avformat.h"
#include "avio_internal.h"
#include "internal.h"
#include "libavcodec/internal.h"
#include "libavcodec/raw.h"
#include "libavutil/opt.h"
#include "libavutil/dict.h"
#include "libavutil/pixdesc.h"
#include "metadata.h"
#include "id3v2.h"
#include "libavutil/avstring.h"
#include "libavutil/mathematics.h"
#include "libavutil/parseutils.h"
#include "riff.h"
#include "audiointerleave.h"
#include "url.h"
#include <sys/time.h>
#include <time.h>
#include <stdarg.h>
#include <assert.h>
Go to the source code of this file.
Defines | |
#define | LICENSE_PREFIX "libavformat license: " |
#define | PROBE_BUF_MIN 2048 |
size of probe buffer, for guessing file type from file contents | |
#define | PROBE_BUF_MAX (1<<20) |
#define | DURATION_MAX_READ_SIZE 250000 |
#define | DURATION_MAX_RETRY 3 |
#define | CHUNK_START 0x1000 |
#define | PRINT(...) do { if (!f) av_log(avcl, level, __VA_ARGS__); else fprintf(f, __VA_ARGS__); } while(0) |
#define | PRINT(...) do { if (!f) av_log(avcl, level, __VA_ARGS__); else fprintf(f, __VA_ARGS__); } while(0) |
Functions | |
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. | |
static void | frac_init (AVFrac *f, int64_t val, int64_t num, int64_t den) |
f = val + (num / den) + 0.5. | |
static void | frac_add (AVFrac *f, int64_t incr) |
Fractional addition to f: f = f + (incr / f->den). | |
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. | |
void | av_register_input_format (AVInputFormat *format) |
void | av_register_output_format (AVOutputFormat *format) |
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. | |
static int | match_format (const char *name, const char *names) |
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 CodecID | 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. | |
AVInputFormat * | av_find_input_format (const char *short_name) |
Find AVInputFormat based on the short name of the input format. | |
int | ffio_limit (AVIOContext *s, int size) |
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. | |
int | av_filename_number_test (const char *filename) |
Check whether filename actually is a numbered sequence generator. | |
AVInputFormat * | av_probe_input_format3 (AVProbeData *pd, int is_opened, int *score_ret) |
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_format (AVProbeData *pd, int is_opened) |
Guess the file format. | |
static int | set_codec_from_probe_data (AVFormatContext *s, AVStream *st, AVProbeData *pd) |
static AVDictionary * | convert_format_parameters (AVFormatParameters *ap) |
int | av_open_input_stream (AVFormatContext **ic_ptr, AVIOContext *pb, const char *filename, AVInputFormat *fmt, AVFormatParameters *ap) |
Open a media file from an IO stream. | |
int | av_demuxer_open (AVFormatContext *ic, AVFormatParameters *ap) |
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 | av_open_input_file (AVFormatContext **ic_ptr, const char *filename, AVInputFormat *fmt, int buf_size, AVFormatParameters *ap) |
Open a media file as input. | |
static int | init_input (AVFormatContext *s, const char *filename, AVDictionary **options) |
int | avformat_open_input (AVFormatContext **ps, const char *filename, AVInputFormat *fmt, AVDictionary **options) |
Open an input stream and read the header. | |
static AVPacket * | add_to_pktbuf (AVPacketList **packet_buffer, AVPacket *pkt, AVPacketList **plast_pktl) |
int | av_read_packet (AVFormatContext *s, AVPacket *pkt) |
Read a transport packet from a media file. | |
static int | get_audio_frame_size (AVCodecContext *enc, int size) |
Get the number of samples of an audio frame. | |
static void | compute_frame_duration (int *pnum, int *pden, AVStream *st, AVCodecParserContext *pc, AVPacket *pkt) |
Return the frame duration in seconds. | |
static int | is_intra_only (AVCodecContext *enc) |
static void | update_initial_timestamps (AVFormatContext *s, int stream_index, int64_t dts, int64_t pts) |
static void | update_initial_durations (AVFormatContext *s, AVStream *st, AVPacket *pkt) |
static void | compute_pkt_fields (AVFormatContext *s, AVStream *st, AVCodecParserContext *pc, AVPacket *pkt) |
static int | read_frame_internal (AVFormatContext *s, AVPacket *pkt) |
int | av_read_frame (AVFormatContext *s, AVPacket *pkt) |
Return the next frame of a stream. | |
static void | flush_packet_queue (AVFormatContext *s) |
int | av_find_default_stream_index (AVFormatContext *s) |
void | ff_read_frame_flush (AVFormatContext *s) |
Flush the frame reader. | |
void | av_update_cur_dts (AVFormatContext *s, AVStream *ref_st, int64_t timestamp) |
void | ff_update_cur_dts (AVFormatContext *s, AVStream *ref_st, int64_t timestamp) |
Update cur_dts of all streams based on the given timestamp and AVStream. | |
void | ff_reduce_index (AVFormatContext *s, int stream_index) |
Ensure the index uses less memory than the maximum specified in AVFormatContext.max_index_size by discarding entries if it grows too large. | |
int | ff_add_index_entry (AVIndexEntry **index_entries, int *nb_index_entries, unsigned int *index_entries_allocated_size, int64_t pos, int64_t timestamp, int size, int distance, int flags) |
Internal version of av_add_index_entry. | |
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. | |
int | ff_index_search_timestamp (const AVIndexEntry *entries, int nb_entries, int64_t wanted_timestamp, int flags) |
Internal version of av_index_search_timestamp. | |
int | av_index_search_timestamp (AVStream *st, int64_t wanted_timestamp, int flags) |
Get the index for a specific timestamp. | |
int | av_seek_frame_binary (AVFormatContext *s, int stream_index, int64_t target_ts, int flags) |
int | ff_seek_frame_binary (AVFormatContext *s, int stream_index, int64_t target_ts, int flags) |
Perform a binary search using av_index_search_timestamp() and AVInputFormat.read_timestamp(). | |
int64_t | av_gen_search (AVFormatContext *s, int stream_index, int64_t target_ts, int64_t pos_min, int64_t pos_max, int64_t pos_limit, int64_t ts_min, int64_t ts_max, int flags, int64_t *ts_ret, int64_t(*read_timestamp)(struct AVFormatContext *, int, int64_t *, int64_t)) |
int64_t | ff_gen_search (AVFormatContext *s, int stream_index, int64_t target_ts, int64_t pos_min, int64_t pos_max, int64_t pos_limit, int64_t ts_min, int64_t ts_max, int flags, int64_t *ts_ret, int64_t(*read_timestamp)(struct AVFormatContext *, int, int64_t *, int64_t)) |
Perform a binary search using read_timestamp(). | |
static int | seek_frame_byte (AVFormatContext *s, int stream_index, int64_t pos, int flags) |
static int | seek_frame_generic (AVFormatContext *s, int stream_index, int64_t timestamp, int flags) |
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. | |
static int | has_duration (AVFormatContext *ic) |
Return TRUE if the stream has accurate duration in any stream. | |
static void | update_stream_timings (AVFormatContext *ic) |
Estimate the stream timings from the one of each components. | |
static void | fill_all_stream_timings (AVFormatContext *ic) |
static void | estimate_timings_from_bit_rate (AVFormatContext *ic) |
static void | estimate_timings_from_pts (AVFormatContext *ic, int64_t old_offset) |
static void | estimate_timings (AVFormatContext *ic, int64_t old_offset) |
static int | has_codec_parameters (AVCodecContext *avctx) |
static int | has_decode_delay_been_guessed (AVStream *st) |
static int | try_decode_frame (AVStream *st, AVPacket *avpkt, AVDictionary **options) |
unsigned int | ff_codec_get_tag (const AVCodecTag *tags, enum CodecID id) |
enum CodecID | ff_codec_get_id (const AVCodecTag *tags, unsigned int tag) |
unsigned int | av_codec_get_tag (const AVCodecTag *const *tags, enum CodecID id) |
enum CodecID | av_codec_get_id (const AVCodecTag *const *tags, unsigned int tag) |
static void | compute_chapters_end (AVFormatContext *s) |
static int | get_std_framerate (int i) |
static int | tb_unreliable (AVCodecContext *c) |
int | av_find_stream_info (AVFormatContext *ic) |
Read packets of a media file to get stream information. | |
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_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 | av_close_input_stream (AVFormatContext *s) |
Free a AVFormatContext allocated by av_open_input_stream. | |
void | avformat_free_context (AVFormatContext *s) |
Free an AVFormatContext and all its streams. | |
void | av_close_input_file (AVFormatContext *s) |
void | avformat_close_input (AVFormatContext **ps) |
Close an opened input AVFormatContext. | |
AVStream * | av_new_stream (AVFormatContext *s, int id) |
Add a new stream to a media file. | |
AVStream * | avformat_new_stream (AVFormatContext *s, AVCodec *c) |
Add a new stream to a media file. | |
AVProgram * | av_new_program (AVFormatContext *ac, int id) |
AVChapter * | avpriv_new_chapter (AVFormatContext *s, int id, AVRational time_base, int64_t start, int64_t end, const char *title) |
Add a new chapter. | |
int | av_set_parameters (AVFormatContext *s, AVFormatParameters *ap) |
int | avformat_alloc_output_context2 (AVFormatContext **avctx, AVOutputFormat *oformat, const char *format, const char *filename) |
Allocate an AVFormatContext for an output format. | |
AVFormatContext * | avformat_alloc_output_context (const char *format, AVOutputFormat *oformat, const char *filename) |
static int | validate_codec_tag (AVFormatContext *s, AVStream *st) |
int | av_write_header (AVFormatContext *s) |
Allocate the stream private data and write the stream header to an output media file. | |
int | avformat_write_header (AVFormatContext *s, AVDictionary **options) |
Allocate the stream private data and write the stream header to an output media file. | |
static int | compute_pkt_fields2 (AVFormatContext *s, AVStream *st, AVPacket *pkt) |
int | av_write_frame (AVFormatContext *s, AVPacket *pkt) |
Write a packet to an output media file. | |
int | ff_interleave_add_packet (AVFormatContext *s, AVPacket *pkt, int(*compare)(AVFormatContext *, AVPacket *, AVPacket *)) |
Add packet to AVFormatContext->packet_buffer list, determining its interleaved position using compare() function argument. | |
static int | ff_interleave_compare_dts (AVFormatContext *s, AVPacket *next, AVPacket *pkt) |
int | av_interleave_packet_per_dts (AVFormatContext *s, AVPacket *out, AVPacket *pkt, int flush) |
Interleave a packet per dts in an output media file. | |
static int | interleave_packet (AVFormatContext *s, AVPacket *out, AVPacket *in, int flush) |
Interleave an AVPacket correctly so it can be muxed. | |
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. | |
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 | ff_program_add_stream_index (AVFormatContext *ac, int progid, unsigned int idx) |
static void | print_fps (double d, const char *postfix) |
static void | dump_metadata (void *ctx, AVDictionary *m, const char *indent) |
static void | dump_stream_format (AVFormatContext *ic, int i, int index, int is_output) |
void | dump_format (AVFormatContext *ic, int index, const char *url, int is_output) |
void | av_dump_format (AVFormatContext *ic, int index, const char *url, int is_output) |
int64_t | av_gettime (void) |
Get the current time in microseconds. | |
uint64_t | ff_ntp_time (void) |
Get the current time since NTP epoch in microseconds. | |
int64_t | parse_date (const char *timestr, int duration) |
Parse datestr and return a corresponding number of microseconds. | |
int | find_info_tag (char *arg, int arg_size, const char *tag1, const char *info) |
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. | |
static void | hex_dump_internal (void *avcl, FILE *f, int level, uint8_t *buf, int size) |
void | av_hex_dump (FILE *f, 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, uint8_t *buf, int size) |
Send a nice hexadecimal dump of a buffer to the log. | |
static void | pkt_dump_internal (void *avcl, FILE *f, int level, AVPacket *pkt, int dump_payload, AVRational time_base) |
void | av_pkt_dump (FILE *f, AVPacket *pkt, int dump_payload) |
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_log (void *avcl, int level, AVPacket *pkt, int dump_payload) |
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. | |
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. | |
char * | ff_data_to_hex (char *buff, const uint8_t *src, int s, int lowercase) |
int | ff_hex_to_data (uint8_t *data, const char *p) |
Parse a string of hexadecimal strings. | |
void | av_set_pts_info (AVStream *s, int pts_wrap_bits, unsigned int pts_num, unsigned int pts_den) |
void | avpriv_set_pts_info (AVStream *s, int pts_wrap_bits, unsigned int pts_num, unsigned int pts_den) |
Set the pts for a given stream. | |
int | ff_url_join (char *str, int size, const char *proto, const char *authorization, const char *hostname, int port, const char *fmt,...) |
int | ff_write_chained (AVFormatContext *dst, int dst_stream, AVPacket *pkt, AVFormatContext *src) |
Write a packet to another muxer than the one the user originally intended. | |
void | ff_parse_key_value (const char *str, ff_parse_key_val_cb callback_get_buf, void *context) |
Parse a string with comma-separated key=value pairs. | |
int | ff_find_stream_index (AVFormatContext *s, int id) |
Find stream index based on format-specific stream ID. | |
void | ff_make_absolute_url (char *buf, int size, const char *base, const char *rel) |
int64_t | ff_iso8601_to_unix_time (const char *datestr) |
Convert a date string in ISO8601 format to Unix timestamp. | |
int | avformat_query_codec (AVOutputFormat *ofmt, enum CodecID codec_id, int std_compliance) |
Test if the given container can store a codec. | |
int | avformat_network_init (void) |
Do global initialization of network components. | |
int | avformat_network_deinit (void) |
Undo the initialization done by avformat_network_init. | |
Variables | |
static AVInputFormat * | first_iformat = NULL |
head of registered input format linked list | |
static AVOutputFormat * | first_oformat = NULL |
head of registered output format linked list |
Definition in file utils.c.
#define CHUNK_START 0x1000 |
#define DURATION_MAX_READ_SIZE 250000 |
#define DURATION_MAX_RETRY 3 |
#define LICENSE_PREFIX "libavformat license: " |
#define PRINT | ( | ... | ) | do { if (!f) av_log(avcl, level, __VA_ARGS__); else fprintf(f, __VA_ARGS__); } while(0) |
#define PRINT | ( | ... | ) | do { if (!f) av_log(avcl, level, __VA_ARGS__); else fprintf(f, __VA_ARGS__); } while(0) |
#define PROBE_BUF_MAX (1<<20) |
#define PROBE_BUF_MIN 2048 |
size of probe buffer, for guessing file type from file contents
Definition at line 531 of file utils.c.
Referenced by av_probe_input_buffer().
static AVPacket* add_to_pktbuf | ( | AVPacketList ** | packet_buffer, | |
AVPacket * | pkt, | |||
AVPacketList ** | plast_pktl | |||
) | [static] |
Definition at line 733 of file utils.c.
Referenced by av_read_frame(), av_read_packet(), and avformat_find_stream_info().
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.
Update the entry if the list already contains it.
timestamp | timestamp in the time base of the given stream |
Definition at line 1533 of file utils.c.
Referenced by ape_read_header(), asf_build_simple_index(), asf_read_pts(), avi_read_idx1(), avi_sync(), clean_index(), find_and_decode_index(), flv_read_packet(), gxf_read_index(), matroska_add_index_entries(), matroska_parse_block(), mov_read_trun(), mpc8_parse_seektable(), mpc_read_packet(), mpegps_read_pes_header(), mpegts_get_dts(), mxf_parse_index(), nsv_parse_NSVs_header(), nut_write_packet(), nuv_read_dts(), parse_keyframes_index(), pmp_header(), pva_read_header(), read_braindead_odml_indx(), read_frame_internal(), read_header(), read_pakt_chunk(), read_part_of_packet(), rl2_read_header(), rm_read_dts(), rm_read_index(), rm_read_packet(), rpl_read_header(), tta_read_header(), wv_read_packet(), and xwma_read_header().
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 |
Definition at line 308 of file utils.c.
Referenced by dfa_read_packet(), read_packet(), wc3_read_header(), wc3_read_packet(), and wv_read_packet().
enum CodecID av_codec_get_id | ( | const AVCodecTag *const * | tags, | |
unsigned int | tag | |||
) |
unsigned int av_codec_get_tag | ( | const AVCodecTag *const * | tags, | |
enum CodecID | id | |||
) |
void av_dump_format | ( | AVFormatContext * | ic, | |
int | index, | |||
const char * | url, | |||
int | is_output | |||
) |
Definition at line 3669 of file utils.c.
Referenced by dump_format(), main(), open_input_file(), opt_input_file(), read_thread(), and transcode_init().
int av_filename_number_test | ( | const char * | filename | ) |
Check whether filename actually is a numbered sequence generator.
filename | possible numbered sequence string |
Definition at line 324 of file utils.c.
Referenced by av_guess_format(), avformat_open_input(), opt_output_file(), and read_probe().
int av_find_default_stream_index | ( | AVFormatContext * | s | ) |
int64_t av_gen_search | ( | AVFormatContext * | s, | |
int | stream_index, | |||
int64_t | target_ts, | |||
int64_t | pos_min, | |||
int64_t | pos_max, | |||
int64_t | pos_limit, | |||
int64_t | ts_min, | |||
int64_t | ts_max, | |||
int | flags, | |||
int64_t * | ts_ret, | |||
int64_t(*)(struct AVFormatContext *, int, int64_t *, int64_t) | read_timestamp | |||
) |
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.
Also handles the '0nd' format where 'n' is the total number of digits and '%'.
buf | destination buffer | |
buf_size | destination buffer size | |
path | numbered sequence string | |
number | frame number |
Definition at line 3780 of file utils.c.
Referenced by av_filename_number_test(), find_image_range(), and read_packet().
int av_get_output_timestamp | ( | struct AVFormatContext * | s, | |
int | stream, | |||
int64_t * | dts, | |||
int64_t * | wall | |||
) |
Get timing information for the data currently output.
The exact meaning of "currently output" depends on the format. It is mostly relevant for devices that have an internal buffer and/or work in real time.
s | media file handle | |
stream | stream in the media file | |
dts[out] | DTS of the last packet output for the stream, in stream time_base units | |
wall[out] | absolute time when that packet whas output, in microsecond |
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.
pkt | packet | |
size | desired payload size |
Definition at line 287 of file utils.c.
Referenced by adx_read_packet(), aea_read_packet(), aiff_read_packet(), apc_read_packet(), asf_read_header(), au_read_packet(), av_append_packet(), bfi_read_packet(), cdata_read_packet(), cin_read_packet(), daud_packet(), dfa_read_packet(), dxa_read_packet(), ea_read_packet(), ff_rm_parse_packet(), ff_rm_retrieve_cache(), film_read_packet(), flv_read_packet(), fourxm_read_packet(), g729_read_packet(), gsm_read_packet(), gxf_packet(), idcin_read_packet(), iff_read_packet(), iss_read_packet(), lmlm4_read_packet(), load_ipmovie_packet(), mov_read_packet(), mp3_read_packet(), mpc8_read_packet(), mpegps_read_packet(), msnwc_tcp_read_packet(), mtv_read_packet(), mxf_decrypt_triplet(), mxf_get_d10_aes3_packet(), mxf_read_packet(), mxf_read_packet_old(), nc_read_packet(), nsv_read_chunk(), nuv_packet(), oma_read_packet(), pmp_packet(), pva_read_packet(), qcp_read_packet(), r3d_read_reda(), r3d_read_redv(), raw_read_packet(), rawvideo_read_packet(), read_packet(), rl2_read_packet(), roq_read_packet(), rpl_read_packet(), rso_read_packet(), seq_read_packet(), siff_read_packet(), smjpeg_read_packet(), sol_read_packet(), sox_read_packet(), swf_read_packet(), thp_read_packet(), tmv_read_packet(), tta_read_packet(), txd_read_packet(), vc1t_read_packet(), vid_read_packet(), voc_get_packet(), wc3_read_packet(), wsaud_read_packet(), wsvqa_read_packet(), xa_read_packet(), xmv_fetch_audio_packet(), xmv_fetch_video_packet(), xwma_read_packet(), yop_read_packet(), and yuv4_read_packet().
int64_t av_gettime | ( | void | ) |
Get the current time in microseconds.
Definition at line 3748 of file utils.c.
Referenced by applehttp_read(), audio_get_output_timestamp(), audio_read_packet(), bktr_getframe(), enqueue_packet(), fbdev_read_packet(), ff_ntp_time(), ff_rtsp_setup_output_streams(), get_audio_clock(), get_external_clock(), get_video_clock(), get_video_frame(), getutime(), grab_read_header(), grab_read_packet(), http_server(), open_input_stream(), parse_playlist(), print_report(), process_callback(), rate_emu_sleep(), read_data(), read_packet(), rtsp_read_packet(), sap_write_header(), sap_write_packet(), sdl_audio_callback(), stream_toggle_pause(), transcode(), transcode_init(), update_video_pts(), video_audio_display(), video_refresh(), video_thread(), x11grab_read_header(), and x11grab_read_packet().
enum CodecID 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.
Definition at line 236 of file utils.c.
Referenced by choose_encoder().
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.
short_name | if non-NULL checks if short_name matches with the names of the registered formats | |
filename | if non-NULL checks if filename terminates with the extensions of the registered formats | |
mime_type | if non-NULL checks if mime_type matches with the MIME type of the registered formats |
Definition at line 201 of file utils.c.
Referenced by av_guess_format(), avformat_alloc_output_context2(), ff_rtp_chain_mux_open(), ffserver_guess_format(), parse_ffconfig(), and rtp_new_av_stream().
void av_hex_dump | ( | FILE * | f, | |
uint8_t * | buf, | |||
int | size | |||
) |
Send a nice hexadecimal dump of a buffer to the specified file stream.
f | The file stream pointer where the dump should be sent to. | |
buf | buffer | |
size | buffer size |
Definition at line 3864 of file utils.c.
Referenced by pkt_dump_internal().
void av_hex_dump_log | ( | void * | avcl, | |
int | level, | |||
uint8_t * | buf, | |||
int | size | |||
) |
Send a nice hexadecimal dump of a buffer to the log.
avcl | A pointer to an arbitrary struct of which the first field is a pointer to an AVClass struct. | |
level | The importance level of the message, lower values signifying higher importance. | |
buf | buffer | |
size | buffer size |
Definition at line 3869 of file utils.c.
Referenced by asf_read_header().
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.
Definition at line 126 of file utils.c.
Referenced by av_find_input_format(), av_probe_input_format3(), format_child_class_next(), opt_formats(), probe(), and show_format_opts().
int av_index_search_timestamp | ( | AVStream * | st, | |
int64_t | timestamp, | |||
int | flags | |||
) |
Get the index for a specific timestamp.
flags | if AVSEEK_FLAG_BACKWARD then the returned index will correspond to the timestamp which is <= the requested one, if backward is 0, then it will be >= if AVSEEK_FLAG_ANY seek to any frame, only keyframes otherwise |
Definition at line 1575 of file utils.c.
Referenced by ape_read_seek(), asf_read_seek(), avi_read_packet(), avi_read_seek(), ff_seek_frame_binary(), gxf_seek(), matroska_read_seek(), mov_seek_stream(), mpc8_read_seek(), mpc_read_seek(), mxf_read_seek(), nsv_read_seek(), nut_write_packet(), read_packet(), read_seek(), rl2_read_seek(), seek_frame_generic(), tta_read_seek(), and wv_read_seek().
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.
extensions | a comma-separated list of filename extensions |
Definition at line 156 of file utils.c.
Referenced by av_guess_format(), av_probe_input_format3(), http_parse_request(), ipod_get_codec_tag(), mpegts_probe(), mpegts_write_header(), and nsv_probe().
AVProgram* av_new_program | ( | AVFormatContext * | ac, | |
int | id | |||
) |
AVStream* av_new_stream | ( | AVFormatContext * | s, | |
int | id | |||
) |
Add a new stream to a media file.
Can only be called in the read_header() function. If the flag AVFMTCTX_NOHEADER is in the format context, then new streams can be added in read_packet too.
s | media file handle | |
id | file-format-dependent stream ID |
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.
Definition at line 132 of file utils.c.
Referenced by av_guess_format(), format_child_class_next(), opt_formats(), and show_format_opts().
void av_pkt_dump | ( | FILE * | f, | |
AVPacket * | pkt, | |||
int | dump_payload | |||
) |
void av_pkt_dump_log | ( | void * | avcl, | |
int | level, | |||
AVPacket * | pkt, | |||
int | dump_payload | |||
) |
Send a nice dump of a packet to the log.
avcl | A pointer to an arbitrary struct of which the first field is a pointer to an AVClass struct. | |
level | The importance level of the message, lower values signifying higher importance. | |
pkt | packet to dump | |
dump_payload | True if the payload must be displayed, too. | |
st | AVStream that the packet belongs to |
Definition at line 3921 of file utils.c.
Referenced by transcode().
void av_register_input_format | ( | AVInputFormat * | format | ) |
void av_register_output_format | ( | AVOutputFormat * | format | ) |
int av_seek_frame_binary | ( | AVFormatContext * | s, | |
int | stream_index, | |||
int64_t | target_ts, | |||
int | flags | |||
) |
int av_set_parameters | ( | AVFormatContext * | s, | |
AVFormatParameters * | ap | |||
) |
void av_set_pts_info | ( | AVStream * | s, | |
int | pts_wrap_bits, | |||
unsigned int | pts_num, | |||
unsigned int | pts_den | |||
) |
Definition at line 4038 of file utils.c.
Referenced by add_av_stream1().
void av_update_cur_dts | ( | AVFormatContext * | s, | |
AVStream * | ref_st, | |||
int64_t | timestamp | |||
) |
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.
The pointers to buffers for storing individual components may be null, in order to ignore that component. Buffers for components not found are set to empty strings. If the port is not found, it is set to a negative value.
proto | the buffer for the protocol | |
proto_size | the size of the proto buffer | |
authorization | the buffer for the authorization | |
authorization_size | the size of the authorization buffer | |
hostname | the buffer for the host name | |
hostname_size | the size of the hostname buffer | |
port_ptr | a pointer to store the port number in | |
path | the buffer for the path | |
path_size | the size of the path buffer | |
url | the URL to split |
Definition at line 3927 of file utils.c.
Referenced by ff_rtp_set_remote_url(), ff_udp_set_remote_url(), find_rtp_session_with_url(), gopher_open(), http_open_cnx(), mms_open(), mmsh_open_internal(), resetup_tcp(), rtmp_open(), rtp_open(), rtsp_cmd_describe(), rtsp_cmd_setup(), sap_read_header(), sap_write_header(), tcp_open(), tls_open(), and udp_open().
AVFormatContext* avformat_alloc_output_context | ( | const char * | format, | |
AVOutputFormat * | oformat, | |||
const char * | filename | |||
) |
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 |
Definition at line 2972 of file utils.c.
Referenced by avformat_alloc_output_context(), main(), and opt_output_file().
const char* avformat_configuration | ( | void | ) |
void avformat_free_context | ( | AVFormatContext * | s | ) |
Free an AVFormatContext and all its streams.
s | context to free |
Definition at line 2784 of file utils.c.
Referenced by applehttp_read_header(), av_close_input_stream(), avformat_alloc_output_context2(), avformat_open_input(), exit_program(), ff_mov_close_hinting(), ff_rtp_chain_mux_open(), ff_rtsp_undo_setup(), main(), and sap_write_close().
const char* avformat_license | ( | void | ) |
int avformat_network_deinit | ( | void | ) |
Undo the initialization done by avformat_network_init.
Definition at line 4285 of file utils.c.
Referenced by do_exit(), exit_program(), main(), and term_init().
int avformat_network_init | ( | void | ) |
Do global initialization of network components.
This is optional, but recommended, since it avoids the overhead of implicitly doing the setup for each session.
Calling this function will become mandatory if using network protocols at some major version bump.
Definition at line 4273 of file utils.c.
Referenced by main().
AVStream* avformat_new_stream | ( | AVFormatContext * | s, | |
AVCodec * | c | |||
) |
Add a new stream to a media file.
When demuxing, it is called by the demuxer in read_header(). If the flag AVFMTCTX_NOHEADER is set in s.ctx_flags, then it may also be called in read_packet().
When muxing, should be called by the user before avformat_write_header().
c | If non-NULL, the AVCodecContext corresponding to the new stream will be initialized to use this codec. This is needed for e.g. codec-specific defaults to be set, so codec should be provided if it is known. |
Definition at line 2854 of file utils.c.
Referenced by add_audio_stream(), add_dstream(), add_video_stream(), adts_aac_read_header(), adx_read_header(), aea_read_header(), aiff_read_header(), amr_read_header(), apc_read_header(), ape_read_header(), applehttp_read_header(), asf_read_stream_properties(), au_read_header(), audio_read_header(), av_new_stream(), avi_read_header(), avisynth_read_header(), avpriv_dv_init_demux(), avs_read_packet(), bfi_read_header(), bmv_read_header(), cdata_read_header(), cin_read_header(), create_audio_stream(), create_stream(), daud_header(), dc1394_read_header(), decode_main_header(), dfa_read_header(), dshow_add_device(), dv_extract_audio_info(), dxa_read_header(), ea_read_header(), fbdev_read_header(), ff_raw_audio_read_header(), ff_raw_read_header(), ff_raw_video_read_header(), ff_rtp_chain_mux_open(), ffm_read_header(), film_read_header(), flac_read_header(), flic_read_header(), fourxm_read_header(), g723_1_init(), g729_read_header(), get_attachment(), get_sindex(), grab_read_header(), gsm_read_header(), idcin_read_header(), iff_read_header(), ipmovie_read_header(), iss_read_header(), lavfi_read_header(), lmlm4_read_header(), loas_read_header(), lxf_read_header(), matroska_read_header(), microdvd_read_header(), mmf_read_header(), modplug_read_header(), mov_read_trak(), mp3_read_header(), mpc8_read_header(), mpc_read_header(), mpegps_read_packet(), mpegts_push_data(), mpegts_read_header(), mpegts_set_stream_info(), msnwc_tcp_read_header(), mtv_read_header(), mxf_parse_structural_metadata(), mxg_read_header(), nc_read_header(), new_output_stream(), new_stream(), nsv_parse_NSVs_header(), nut_read_header(), nuv_header(), ogg_new_stream(), oma_read_header(), pmp_header(), pmt_cb(), pulse_read_header(), pva_read_header(), qcp_read_header(), r3d_read_red1(), read_desc_chunk(), read_header(), read_packet(), rl2_read_header(), rm_read_header(), rm_read_header_old(), roq_read_header(), roq_read_packet(), rpl_read_header(), rso_read_header(), sap_fetch_packet(), sap_read_header(), seq_read_header(), siff_parse_vbv1(), smacker_read_header(), smjpeg_read_header(), sol_read_header(), sox_read_header(), spdif_read_packet(), srt_read_header(), str_read_packet(), swf_read_packet(), thp_read_header(), tmv_read_header(), tta_read_header(), txd_read_header(), v4l2_read_header(), vc1t_read_header(), vfw_read_header(), vid_read_header(), vmd_read_header(), voc_read_header(), vqf_read_header(), wc3_read_header(), wsaud_read_header(), wsvqa_read_header(), wv_read_header(), x11grab_read_header(), xa_read_header(), xmv_read_header(), xwma_read_header(), yop_read_header(), and yuv4_read_header().
int avformat_query_codec | ( | AVOutputFormat * | ofmt, | |
enum CodecID | codec_id, | |||
int | std_compliance | |||
) |
unsigned avformat_version | ( | void | ) |
AVChapter* avpriv_new_chapter | ( | AVFormatContext * | s, | |
int | id, | |||
AVRational | time_base, | |||
int64_t | start, | |||
int64_t | end, | |||
const char * | title | |||
) |
Add a new chapter.
s | media file handle | |
id | unique ID for this chapter | |
start | chapter start time in time_base units | |
end | chapter end time in time_base units | |
title | chapter title |
Definition at line 2927 of file utils.c.
Referenced by asf_read_marker(), decode_info_header(), flac_read_header(), matroska_read_header(), mov_read_chapters(), mov_read_chpl(), ogm_chapter(), read_chapter(), and read_header().
void avpriv_set_pts_info | ( | AVStream * | s, | |
int | pts_wrap_bits, | |||
unsigned int | pts_num, | |||
unsigned int | pts_den | |||
) |
Set the pts for a given stream.
If the new values would be invalid (<= 0), it leaves the AVStream unchanged.
s | stream | |
pts_wrap_bits | number of bits effectively used by the pts (used for wrap control, 33 is the value for MPEG) | |
pts_num | numerator to convert to seconds (MPEG: 1) | |
pts_den | denominator to convert to seconds (MPEG: 90000) |
Definition at line 4045 of file utils.c.
Referenced by adts_aac_read_header(), adx_read_header(), aiff_read_header(), aiff_write_header(), amr_read_header(), ape_read_header(), asf_read_stream_properties(), asf_write_header1(), asfrtp_parse_sdp_line(), au_read_header(), audio_read_header(), audio_write_header(), av_set_pts_info(), avformat_new_stream(), avi_read_header(), avi_write_header(), avisynth_read_header(), bfi_read_header(), bmv_read_header(), cdata_read_header(), celt_header(), cin_read_header(), create_audio_stream(), create_stream(), dc1394_read_header(), decode_stream_header(), dfa_read_header(), dirac_header(), dshow_add_device(), dv_extract_audio_info(), dv_extract_video_info(), dxa_read_header(), ea_read_header(), fbdev_read_header(), ff_raw_read_header(), ff_raw_video_read_header(), ff_rm_read_mdpr_codecdata(), ffm_read_header(), ffm_write_header(), film_read_header(), flac_header(), flac_read_header(), flic_read_header(), flv_write_header(), fourxm_read_header(), g723_1_init(), g729_read_header(), get_packet_header(), grab_read_header(), gsm_read_header(), gxf_header(), gxf_write_header(), idcin_read_header(), iff_read_header(), ipmovie_read_header(), iss_read_header(), lavfi_read_header(), lmlm4_read_header(), loas_read_header(), lxf_read_header(), matroska_read_header(), microdvd_read_header(), mkv_write_tracks(), mmf_read_header(), modplug_read_header(), mov_read_trak(), mov_write_header(), mp3_read_header(), mpc8_read_header(), mpc_read_header(), mpeg_mux_init(), mpegts_read_header(), mpegts_set_stream_info(), mpegts_write_header(), msnwc_tcp_read_header(), mtv_read_header(), mxf_parse_structural_metadata(), mxf_write_header(), mxg_read_header(), nc_read_header(), new_stream(), nsv_parse_NSVs_header(), nut_read_header(), nut_write_header(), nuv_header(), ogg_new_stream(), ogg_write_header(), ogm_header(), old_dirac_header(), oma_read_header(), pmp_header(), pulse_read_header(), pva_read_header(), qt_rtp_parse_packet(), r3d_read_red1(), read_gab2_sub(), read_header(), read_sl_header(), rl2_read_header(), roq_read_header(), roq_read_packet(), rpl_read_header(), rso_read_header(), seq_read_header(), siff_parse_vbv1(), skeleton_header(), smacker_read_header(), smjpeg_read_header(), sol_read_header(), sox_read_header(), speex_header(), srt_read_header(), str_read_packet(), swf_read_packet(), theora_header(), thp_read_header(), tmv_read_header(), tta_read_header(), v4l2_read_header(), vc1t_read_header(), vc1test_write_header(), vfw_read_header(), vid_read_header(), vmd_read_header(), vorbis_header(), vqf_read_header(), wc3_read_header(), write_header(), write_stream_data(), wsaud_read_header(), wsvqa_read_header(), wv_read_header(), x11grab_read_header(), xa_read_header(), xmv_read_header(), xwma_read_header(), yop_read_header(), and yuv4_read_header().
static void compute_chapters_end | ( | AVFormatContext * | s | ) | [static] |
static void compute_frame_duration | ( | int * | pnum, | |
int * | pden, | |||
AVStream * | st, | |||
AVCodecParserContext * | pc, | |||
AVPacket * | pkt | |||
) | [static] |
Return the frame duration in seconds.
Return 0 if not available.
Definition at line 882 of file utils.c.
Referenced by compute_pkt_fields(), and compute_pkt_fields2().
static void compute_pkt_fields | ( | AVFormatContext * | s, | |
AVStream * | st, | |||
AVCodecParserContext * | pc, | |||
AVPacket * | pkt | |||
) | [static] |
static int compute_pkt_fields2 | ( | AVFormatContext * | s, | |
AVStream * | st, | |||
AVPacket * | pkt | |||
) | [static] |
Definition at line 3215 of file utils.c.
Referenced by av_interleaved_write_frame(), and av_write_frame().
static AVDictionary* convert_format_parameters | ( | AVFormatParameters * | ap | ) | [static] |
Definition at line 424 of file utils.c.
Referenced by av_open_input_file(), and av_open_input_stream().
void dump_format | ( | AVFormatContext * | ic, | |
int | index, | |||
const char * | url, | |||
int | is_output | |||
) |
Definition at line 3660 of file utils.c.
Referenced by transcode_init().
static void dump_metadata | ( | void * | ctx, | |
AVDictionary * | m, | |||
const char * | indent | |||
) | [static] |
static void dump_stream_format | ( | AVFormatContext * | ic, | |
int | i, | |||
int | index, | |||
int | is_output | |||
) | [static] |
static void estimate_timings | ( | AVFormatContext * | ic, | |
int64_t | old_offset | |||
) | [static] |
static void estimate_timings_from_bit_rate | ( | AVFormatContext * | ic | ) | [static] |
static void estimate_timings_from_pts | ( | AVFormatContext * | ic, | |
int64_t | old_offset | |||
) | [static] |
int ff_add_index_entry | ( | AVIndexEntry ** | index_entries, | |
int * | nb_index_entries, | |||
unsigned int * | index_entries_allocated_size, | |||
int64_t | pos, | |||
int64_t | timestamp, | |||
int | size, | |||
int | distance, | |||
int | flags | |||
) |
Internal version of av_add_index_entry.
Definition at line 1487 of file utils.c.
Referenced by av_add_index_entry(), and read_header().
enum CodecID ff_codec_get_id | ( | const AVCodecTag * | tags, | |
unsigned int | tag | |||
) |
Definition at line 2282 of file utils.c.
Referenced by asf_read_stream_properties(), au_read_header(), av_codec_get_id(), avi_read_header(), avisynth_read_header(), decode_stream_header(), ff_mov_read_stsd_entries(), ff_mp4_read_dec_config_descr(), ff_rm_read_mdpr_codecdata(), get_aiff_header(), get_codec_data(), lxf_read_header(), matroska_read_header(), nsv_parse_NSVs_header(), nut_read_header(), ogm_dshow_header(), ogm_header(), oma_read_header(), parse_media_type(), read_desc_chunk(), read_header(), rm_read_audio_stream_info(), rso_read_header(), smjpeg_read_header(), swf_read_packet(), and voc_get_packet().
unsigned int ff_codec_get_tag | ( | const AVCodecTag * | tags, | |
enum CodecID | id | |||
) |
Definition at line 2272 of file utils.c.
Referenced by av_codec_get_tag(), caf_write_header(), gxf_write_header(), ipod_get_codec_tag(), mkv_write_codecprivate(), mkv_write_tracks(), mov_find_codec_tag(), mov_get_codec_tag(), mov_write_esds_tag(), mp4_get_codec_tag(), and swf_write_video().
char* ff_data_to_hex | ( | char * | buff, | |
const uint8_t * | src, | |||
int | s, | |||
int | lowercase | |||
) |
Definition at line 3988 of file utils.c.
Referenced by ff_rdt_calc_response_and_checksum(), hex_log(), make_digest_auth(), and open_input().
int ff_find_stream_index | ( | AVFormatContext * | s, | |
int | id | |||
) |
Find stream index based on format-specific stream ID.
Definition at line 4180 of file utils.c.
Referenced by get_sindex(), parse_chunks(), and pmt_cb().
int64_t ff_gen_search | ( | AVFormatContext * | s, | |
int | stream_index, | |||
int64_t | target_ts, | |||
int64_t | pos_min, | |||
int64_t | pos_max, | |||
int64_t | pos_limit, | |||
int64_t | ts_min, | |||
int64_t | ts_max, | |||
int | flags, | |||
int64_t * | ts_ret, | |||
int64_t(*)(struct AVFormatContext *, int, int64_t *, int64_t) | read_timestamp | |||
) |
Perform a binary search using read_timestamp().
target_ts | target timestamp in the time base of the given stream | |
stream_index | stream number |
Definition at line 1662 of file utils.c.
Referenced by av_gen_search(), ff_seek_frame_binary(), and read_seek().
int ff_hex_to_data | ( | uint8_t * | data, | |
const char * | p | |||
) |
Parse a string of hexadecimal strings.
Any space between the hexadecimal digits is ignored.
data | if non-null, the parsed data is written to this pointer | |
p | the string to parse |
Definition at line 4009 of file utils.c.
Referenced by parse_fmtp_config(), and parse_playlist().
int ff_index_search_timestamp | ( | const AVIndexEntry * | entries, | |
int | nb_entries, | |||
int64_t | wanted_timestamp, | |||
int | flags | |||
) |
Internal version of av_index_search_timestamp.
Definition at line 1541 of file utils.c.
Referenced by av_index_search_timestamp(), ff_add_index_entry(), and read_seek().
int ff_interleave_add_packet | ( | AVFormatContext * | s, | |
AVPacket * | pkt, | |||
int(*)(AVFormatContext *, AVPacket *, AVPacket *) | compare | |||
) |
Add packet to AVFormatContext->packet_buffer list, determining its interleaved position using compare() function argument.
Definition at line 3303 of file utils.c.
Referenced by av_interleave_packet_per_dts(), and ff_audio_rechunk_interleave().
static int ff_interleave_compare_dts | ( | AVFormatContext * | s, | |
AVPacket * | next, | |||
AVPacket * | pkt | |||
) | [static] |
int64_t ff_iso8601_to_unix_time | ( | const char * | datestr | ) |
Convert a date string in ISO8601 format to Unix timestamp.
Definition at line 4241 of file utils.c.
Referenced by dv_init_mux(), gxf_write_umf_material_description(), mov_write_header(), and mxf_write_header().
void ff_make_absolute_url | ( | char * | buf, | |
int | size, | |||
const char * | base, | |||
const char * | rel | |||
) |
uint64_t ff_ntp_time | ( | void | ) |
Get the current time since NTP epoch in microseconds.
Definition at line 3755 of file utils.c.
Referenced by rtp_write_header(), and rtp_write_packet().
void ff_parse_key_value | ( | const char * | str, | |
ff_parse_key_val_cb | callback_get_buf, | |||
void * | context | |||
) |
Parse a string with comma-separated key=value pairs.
The value strings may be quoted and may contain escaped characters within quoted strings.
str | the string to parse | |
callback_get_buf | function that returns where to store the unescaped value string. | |
context | the opaque context pointer to pass to callback_get_buf |
Definition at line 4126 of file utils.c.
Referenced by ff_http_auth_handle_header(), and parse_playlist().
void ff_program_add_stream_index | ( | AVFormatContext * | ac, | |
int | progid, | |||
unsigned int | idx | |||
) |
void ff_read_frame_flush | ( | AVFormatContext * | s | ) |
Flush the frame reader.
Definition at line 1421 of file utils.c.
Referenced by av_seek_frame(), avformat_seek_file(), ff_restore_parser_state(), ff_seek_frame_binary(), mpegts_get_dts(), search_hi_lo_keyframes(), and seek_frame_generic().
void ff_reduce_index | ( | AVFormatContext * | s, | |
int | stream_index | |||
) |
Ensure the index uses less memory than the maximum specified in AVFormatContext.max_index_size by discarding entries if it grows too large.
Definition at line 1474 of file utils.c.
Referenced by mpegps_read_pes_header(), mpegts_get_dts(), and read_frame_internal().
int ff_seek_frame_binary | ( | AVFormatContext * | s, | |
int | stream_index, | |||
int64_t | target_ts, | |||
int | flags | |||
) |
Perform a binary search using av_index_search_timestamp() and AVInputFormat.read_timestamp().
target_ts | target timestamp in the time base of the given stream | |
stream_index | stream number |
Definition at line 1588 of file utils.c.
Referenced by asf_read_seek(), av_seek_frame_binary(), and ogg_read_seek().
void ff_update_cur_dts | ( | AVFormatContext * | s, | |
AVStream * | ref_st, | |||
int64_t | timestamp | |||
) |
Update cur_dts of all streams based on the given timestamp and AVStream.
Stream ref_st unchanged, others set cur_dts in their native time base. Only needed for timestamp wrapping or if (dts not set and pts!=dts).
timestamp | new dts expressed in time_base of param ref_st | |
ref_st | reference stream giving time_base of param timestamp |
Definition at line 1461 of file utils.c.
Referenced by av_update_cur_dts(), ff_seek_frame_binary(), matroska_read_seek(), mxf_read_seek(), and seek_frame_generic().
int ff_url_join | ( | char * | str, | |
int | size, | |||
const char * | proto, | |||
const char * | authorization, | |||
const char * | hostname, | |||
int | port, | |||
const char * | fmt, | |||
... | ||||
) |
int ff_write_chained | ( | AVFormatContext * | dst, | |
int | dst_stream, | |||
AVPacket * | pkt, | |||
AVFormatContext * | src | |||
) |
Write a packet to another muxer than the one the user originally intended.
Useful when chaining muxers, where one muxer internally writes a received packet to another muxer.
dst | the muxer to write the packet to | |
dst_stream | the stream index within dst to write the packet to | |
pkt | the packet to be written | |
src | the muxer the packet originally was intended for |
Definition at line 4108 of file utils.c.
Referenced by ff_mov_add_hinted_packet(), rtsp_write_packet(), and sap_write_packet().
int ffio_limit | ( | AVIOContext * | s, | |
int | size | |||
) |
Definition at line 267 of file utils.c.
Referenced by av_get_packet(), cin_read_packet(), film_read_packet(), roq_read_packet(), siff_read_packet(), and vmd_read_packet().
static void fill_all_stream_timings | ( | AVFormatContext * | ic | ) | [static] |
Definition at line 2019 of file utils.c.
Referenced by estimate_timings(), and estimate_timings_from_pts().
int find_info_tag | ( | char * | arg, | |
int | arg_size, | |||
const char * | tag1, | |||
const char * | info | |||
) |
static void flush_packet_queue | ( | AVFormatContext * | s | ) | [static] |
Definition at line 1373 of file utils.c.
Referenced by av_close_input_stream(), estimate_timings_from_pts(), and ff_read_frame_flush().
static void frac_add | ( | AVFrac * | f, | |
int64_t | incr | |||
) | [static] |
Fractional addition to f: f = f + (incr / f->den).
f | fractional number | |
incr | increment, can be positive or negative |
Definition at line 101 of file utils.c.
Referenced by compute_pkt_fields2().
static void frac_init | ( | AVFrac * | f, | |
int64_t | val, | |||
int64_t | num, | |||
int64_t | den | |||
) | [static] |
f = val + (num / den) + 0.5.
'num' is normalized so that it is such as 0 <= num < den.
f | fractional number | |
val | integer value | |
num | must be >= 0 | |
den | must be >= 1 |
Definition at line 83 of file utils.c.
Referenced by avformat_write_header().
static int get_audio_frame_size | ( | AVCodecContext * | enc, | |
int | size | |||
) | [static] |
Get the number of samples of an audio frame.
Return -1 on error.
Definition at line 852 of file utils.c.
Referenced by compute_frame_duration(), and compute_pkt_fields2().
static int get_std_framerate | ( | int | i | ) | [static] |
static int has_codec_parameters | ( | AVCodecContext * | avctx | ) | [static] |
Definition at line 2196 of file utils.c.
Referenced by avformat_find_stream_info(), and try_decode_frame().
static int has_decode_delay_been_guessed | ( | AVStream * | st | ) | [static] |
static int has_duration | ( | AVFormatContext * | ic | ) | [static] |
Return TRUE if the stream has accurate duration in any stream.
Definition at line 1951 of file utils.c.
Referenced by estimate_timings().
static void hex_dump_internal | ( | void * | avcl, | |
FILE * | f, | |||
int | level, | |||
uint8_t * | buf, | |||
int | size | |||
) | [static] |
static int init_input | ( | AVFormatContext * | s, | |
const char * | filename, | |||
AVDictionary ** | options | |||
) | [static] |
static int interleave_packet | ( | AVFormatContext * | s, | |
AVPacket * | out, | |||
AVPacket * | in, | |||
int | flush | |||
) | [static] |
Interleave an AVPacket correctly so it can be muxed.
out | the interleaved packet will be output here | |
in | the input packet | |
flush | 1 if no further packets are available as input and all remaining packets should be output |
Definition at line 3452 of file utils.c.
Referenced by av_interleaved_write_frame(), and av_write_trailer().
static int is_intra_only | ( | AVCodecContext * | enc | ) | [static] |
static int match_format | ( | const char * | name, | |
const char * | names | |||
) | [static] |
int64_t parse_date | ( | const char * | datestr, | |
int | duration | |||
) |
Parse datestr and return a corresponding number of microseconds.
datestr | String representing a date or a duration. See av_parse_time() for the syntax of the provided string. |
static void pkt_dump_internal | ( | void * | avcl, | |
FILE * | f, | |||
int | level, | |||
AVPacket * | pkt, | |||
int | dump_payload, | |||
AVRational | time_base | |||
) | [static] |
Definition at line 3874 of file utils.c.
Referenced by av_pkt_dump(), av_pkt_dump2(), av_pkt_dump_log(), and av_pkt_dump_log2().
static void print_fps | ( | double | d, | |
const char * | postfix | |||
) | [static] |
static int read_frame_internal | ( | AVFormatContext * | s, | |
AVPacket * | pkt | |||
) | [static] |
Definition at line 1170 of file utils.c.
Referenced by av_read_frame(), and avformat_find_stream_info().
static int seek_frame_byte | ( | AVFormatContext * | s, | |
int | stream_index, | |||
int64_t | pos, | |||
int | flags | |||
) | [static] |
static int seek_frame_generic | ( | AVFormatContext * | s, | |
int | stream_index, | |||
int64_t | timestamp, | |||
int | flags | |||
) | [static] |
static int set_codec_from_probe_data | ( | AVFormatContext * | s, | |
AVStream * | st, | |||
AVProbeData * | pd | |||
) | [static] |
static int tb_unreliable | ( | AVCodecContext * | c | ) | [static] |
static int try_decode_frame | ( | AVStream * | st, | |
AVPacket * | avpkt, | |||
AVDictionary ** | options | |||
) | [static] |
static void update_initial_durations | ( | AVFormatContext * | s, | |
AVStream * | st, | |||
AVPacket * | pkt | |||
) | [static] |
static void update_initial_timestamps | ( | AVFormatContext * | s, | |
int | stream_index, | |||
int64_t | dts, | |||
int64_t | pts | |||
) | [static] |
static void update_stream_timings | ( | AVFormatContext * | ic | ) | [static] |
Estimate the stream timings from the one of each components.
Also computes the global bitrate if possible.
Definition at line 1971 of file utils.c.
Referenced by estimate_timings(), and fill_all_stream_timings().
static int validate_codec_tag | ( | AVFormatContext * | s, | |
AVStream * | st | |||
) | [static] |
Check that tag + id is in the table If neither is in the table -> OK If tag is in the table with another id -> FAIL If id is in the table with another tag -> FAIL unless strict < normal
Definition at line 3035 of file utils.c.
Referenced by avformat_write_header().
AVInputFormat* first_iformat = NULL [static] |
AVOutputFormat* first_oformat = NULL [static] |