|
|
|
@ -1040,6 +1040,7 @@ static int dash_flush(AVFormatContext *s, int final, int stream) |
|
|
|
|
|
|
|
|
|
for (i = 0; i < s->nb_streams; i++) { |
|
|
|
|
OutputStream *os = &c->streams[i]; |
|
|
|
|
AVStream *st = s->streams[i]; |
|
|
|
|
char filename[1024] = "", full_path[1024], temp_path[1024]; |
|
|
|
|
int range_length, index_length = 0; |
|
|
|
|
|
|
|
|
@ -1091,7 +1092,9 @@ static int dash_flush(AVFormatContext *s, int final, int stream) |
|
|
|
|
|
|
|
|
|
if (!os->bit_rate) { |
|
|
|
|
// calculate average bitrate of first segment
|
|
|
|
|
int64_t bitrate = (int64_t) range_length * 8 * AV_TIME_BASE / (os->max_pts - os->start_pts); |
|
|
|
|
int64_t bitrate = (int64_t) range_length * 8 * AV_TIME_BASE / av_rescale_q(os->max_pts - os->start_pts, |
|
|
|
|
st->time_base, |
|
|
|
|
AV_TIME_BASE_Q); |
|
|
|
|
if (bitrate >= 0) { |
|
|
|
|
os->bit_rate = bitrate; |
|
|
|
|
snprintf(os->bandwidth_str, sizeof(os->bandwidth_str), |
|
|
|
|