diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2013-03-12 15:26:35 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2013-03-12 15:28:23 +0100 |
commit | c292e340ed0835b112309629e06765c319c5eb42 (patch) | |
tree | d67dac7316a48372dd4d213bb6574d05cb89db06 | |
parent | 9cf788eca8ba0990f3d5b3c5c3edea93ebad66e3 (diff) | |
download | ffmpeg-c292e340ed0835b112309629e06765c319c5eb42.tar.gz |
avformat: keep r_frame_rate
This field is used and nothing equivalent exists
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavformat/avformat.h | 27 | ||||
-rw-r--r-- | libavformat/utils.c | 6 |
2 files changed, 22 insertions, 11 deletions
diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 9a53905f95..0fc71aa9bb 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -663,17 +663,6 @@ typedef struct AVStream { * not actually used for encoding. */ AVCodecContext *codec; -#if FF_API_R_FRAME_RATE - /** - * 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; -#endif void *priv_data; /** @@ -738,6 +727,19 @@ typedef struct AVStream { */ AVPacket attached_pic; + /** + * 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; + /***************************************************************** * 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 @@ -875,6 +877,9 @@ typedef struct AVStream { } AVStream; +AVRational av_stream_get_r_frame_rate(const AVStream *s); +void av_stream_set_r_frame_rate(AVStream *s, AVRational r); + #define AV_PROGRAM_RUNNING 1 /** diff --git a/libavformat/utils.c b/libavformat/utils.c index 9b44166255..9491075aef 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -99,6 +99,12 @@ static int64_t wrap_timestamp(AVStream *st, int64_t timestamp) return timestamp; } +#define MAKE_ACCESSORS(str, name, type, field) \ + type av_##name##_get_##field(const str *s) { return s->field; } \ + void av_##name##_set_##field(str *s, type v) { s->field = v; } + +MAKE_ACCESSORS(AVStream, stream, AVRational, r_frame_rate) + /** head of registered input format linked list */ static AVInputFormat *first_iformat = NULL; /** head of registered output format linked list */ |