|
|
|
@ -976,6 +976,34 @@ typedef struct AVStream { |
|
|
|
|
int event_flags; |
|
|
|
|
#define AVSTREAM_EVENT_FLAG_METADATA_UPDATED 0x0001 ///< The call resulted in updated metadata.
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Real base framerate of the stream. |
|
|
|
|
* This is the lowest framerate with which all timestamps can be |
|
|
|
|
* represented accurately (it is the least common multiple of all |
|
|
|
|
* framerates in the stream). Note, this value is just a guess! |
|
|
|
|
* For example, if the time base is 1/90000 and all frames have either |
|
|
|
|
* approximately 3600 or 1800 timer ticks, then r_frame_rate will be 50/1. |
|
|
|
|
*/ |
|
|
|
|
AVRational r_frame_rate; |
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* String containing paris of key and values describing recommended encoder configuration. |
|
|
|
|
* Paris are separated by ','. |
|
|
|
|
* Keys are separated from values by '='. |
|
|
|
|
*/ |
|
|
|
|
char *recommended_encoder_configuration; |
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Codec parameters associated with this stream. Allocated and freed by |
|
|
|
|
* libavformat in avformat_new_stream() and avformat_free_context() |
|
|
|
|
* respectively. |
|
|
|
|
* |
|
|
|
|
* - demuxing: filled by libavformat on stream creation or in |
|
|
|
|
* avformat_find_stream_info() |
|
|
|
|
* - muxing: filled by the caller before avformat_write_header() |
|
|
|
|
*/ |
|
|
|
|
AVCodecParameters *codecpar; |
|
|
|
|
|
|
|
|
|
/*****************************************************************
|
|
|
|
|
* All fields below this line are not part of the public API. They |
|
|
|
|
* may not be used outside of libavformat and can be changed and |
|
|
|
@ -1060,19 +1088,6 @@ typedef struct AVStream { |
|
|
|
|
int nb_index_entries; |
|
|
|
|
unsigned int index_entries_allocated_size; |
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Real base framerate of the stream. |
|
|
|
|
* This is the lowest framerate with which all timestamps can be |
|
|
|
|
* represented accurately (it is the least common multiple of all |
|
|
|
|
* framerates in the stream). Note, this value is just a guess! |
|
|
|
|
* For example, if the time base is 1/90000 and all frames have either |
|
|
|
|
* approximately 3600 or 1800 timer ticks, then r_frame_rate will be 50/1. |
|
|
|
|
* |
|
|
|
|
* Code outside avformat should access this field using: |
|
|
|
|
* av_stream_get/set_r_frame_rate(stream) |
|
|
|
|
*/ |
|
|
|
|
AVRational r_frame_rate; |
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Stream Identifier |
|
|
|
|
* This is the MPEG-TS stream identifier +1 |
|
|
|
@ -1178,19 +1193,6 @@ typedef struct AVStream { |
|
|
|
|
*/ |
|
|
|
|
int inject_global_side_data; |
|
|
|
|
|
|
|
|
|
/*****************************************************************
|
|
|
|
|
* All fields above this line are not part of the public API. |
|
|
|
|
* Fields below are part of the public API and ABI again. |
|
|
|
|
***************************************************************** |
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* String containing paris of key and values describing recommended encoder configuration. |
|
|
|
|
* Paris are separated by ','. |
|
|
|
|
* Keys are separated from values by '='. |
|
|
|
|
*/ |
|
|
|
|
char *recommended_encoder_configuration; |
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* display aspect ratio (0 if unknown) |
|
|
|
|
* - encoding: unused |
|
|
|
@ -1205,17 +1207,6 @@ typedef struct AVStream { |
|
|
|
|
* Must not be accessed in any way by callers. |
|
|
|
|
*/ |
|
|
|
|
AVStreamInternal *internal; |
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Codec parameters associated with this stream. Allocated and freed by |
|
|
|
|
* libavformat in avformat_new_stream() and avformat_free_context() |
|
|
|
|
* respectively. |
|
|
|
|
* |
|
|
|
|
* - demuxing: filled by libavformat on stream creation or in |
|
|
|
|
* avformat_find_stream_info() |
|
|
|
|
* - muxing: filled by the caller before avformat_write_header() |
|
|
|
|
*/ |
|
|
|
|
AVCodecParameters *codecpar; |
|
|
|
|
} AVStream; |
|
|
|
|
|
|
|
|
|
AVRational av_stream_get_r_frame_rate(const AVStream *s); |
|
|
|
|