mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2025-02-04 13:53:26 +00:00
lavf: Switch bitrate to 64bit unless compatibility with avconv was requested.
Based on a patch by Steve Swanson, swanysteve at gmail. Fixes ticket #2089.
This commit is contained in:
parent
7404f3bdb9
commit
c311713ca9
@ -15,6 +15,10 @@ libavutil: 2015-08-28
|
||||
|
||||
API changes, most recent first:
|
||||
|
||||
2015-09-15 - lavf 57.1.100 - avformat.h
|
||||
bit_rate was changed to 64bit, make sure you update any
|
||||
printf() or other type sensitive code
|
||||
|
||||
2015-09-15 - lavc 57.2.100 - avcodec.h
|
||||
bit_rate/rc_max_rate/rc_min_rate were changed to 64bit, make sure you update
|
||||
any printf() or other type sensitive code
|
||||
|
@ -1358,7 +1358,11 @@ typedef struct AVFormatContext {
|
||||
* available. Never set it directly if the file_size and the
|
||||
* duration are known as FFmpeg can compute it automatically.
|
||||
*/
|
||||
#if AV_HAVE_INCOMPATIBLE_LIBAV_ABI
|
||||
int bit_rate;
|
||||
#else
|
||||
int64_t bit_rate;
|
||||
#endif
|
||||
|
||||
unsigned int packet_size;
|
||||
int max_delay;
|
||||
|
@ -518,7 +518,7 @@ void av_dump_format(AVFormatContext *ic, int index,
|
||||
}
|
||||
av_log(NULL, AV_LOG_INFO, ", bitrate: ");
|
||||
if (ic->bit_rate)
|
||||
av_log(NULL, AV_LOG_INFO, "%d kb/s", ic->bit_rate / 1000);
|
||||
av_log(NULL, AV_LOG_INFO, "%"PRId64" kb/s", (int64_t)ic->bit_rate / 1000);
|
||||
else
|
||||
av_log(NULL, AV_LOG_INFO, "N/A");
|
||||
av_log(NULL, AV_LOG_INFO, "\n");
|
||||
|
@ -57,7 +57,7 @@ static int g729_read_header(AVFormatContext *s)
|
||||
} else if (s->bit_rate == 8000) {
|
||||
st->codec->block_align = 10;
|
||||
} else {
|
||||
av_log(s, AV_LOG_ERROR, "Only 8000 b/s and 6400 b/s bitrates are supported. Provided: %d b/s\n", s->bit_rate);
|
||||
av_log(s, AV_LOG_ERROR, "Only 8000 b/s and 6400 b/s bitrates are supported. Provided: %"PRId64" b/s\n", (int64_t)s->bit_rate);
|
||||
return AVERROR_INVALIDDATA;
|
||||
}
|
||||
|
||||
|
@ -2369,7 +2369,7 @@ static void update_stream_timings(AVFormatContext *ic)
|
||||
/* compute the bitrate */
|
||||
double bitrate = (double) filesize * 8.0 * AV_TIME_BASE /
|
||||
(double) ic->duration;
|
||||
if (bitrate >= 0 && bitrate <= INT_MAX)
|
||||
if (bitrate >= 0 && (!AV_HAVE_INCOMPATIBLE_LIBAV_ABI || bitrate <= INT_MAX))
|
||||
ic->bit_rate = bitrate;
|
||||
}
|
||||
}
|
||||
@ -2614,10 +2614,10 @@ static void estimate_timings(AVFormatContext *ic, int64_t old_offset)
|
||||
(double) st->duration / AV_TIME_BASE);
|
||||
}
|
||||
av_log(ic, AV_LOG_TRACE,
|
||||
"stream: start_time: %0.3f duration: %0.3f bitrate=%d kb/s\n",
|
||||
"stream: start_time: %0.3f duration: %0.3f bitrate=%"PRId64" kb/s\n",
|
||||
(double) ic->start_time / AV_TIME_BASE,
|
||||
(double) ic->duration / AV_TIME_BASE,
|
||||
ic->bit_rate / 1000);
|
||||
(int64_t)ic->bit_rate / 1000);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -30,7 +30,7 @@
|
||||
#include "libavutil/version.h"
|
||||
|
||||
#define LIBAVFORMAT_VERSION_MAJOR 57
|
||||
#define LIBAVFORMAT_VERSION_MINOR 0
|
||||
#define LIBAVFORMAT_VERSION_MINOR 1
|
||||
#define LIBAVFORMAT_VERSION_MICRO 100
|
||||
|
||||
#define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
|
||||
|
Loading…
Reference in New Issue
Block a user