summaryrefslogtreecommitdiff
path: root/libavformat
diff options
context:
space:
mode:
authorRodger Combs <rodger.combs@gmail.com>2017-09-26 14:02:44 -0300
committerJames Almer <jamrial@gmail.com>2017-09-26 14:02:44 -0300
commit3b9ef13588360b16c22ece7521ebd9b11f9ffb17 (patch)
tree10ff233f24a6d7cc12baad4f420f45483215c008 /libavformat
parent52223ffe44614738499ea6c0068810e250fb7b26 (diff)
parent9df9309d233f59d9706444a1e24ac24139f2640d (diff)
Merge commit '9df9309d233f59d9706444a1e24ac24139f2640d'
* commit '9df9309d233f59d9706444a1e24ac24139f2640d': dashenc: calculate stream bitrate from first segment if not available Merged-by: Rodger Combs <rodger.combs@gmail.com>
Diffstat (limited to 'libavformat')
-rw-r--r--libavformat/dashenc.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/libavformat/dashenc.c b/libavformat/dashenc.c
index ca24015115..089a3e7b01 100644
--- a/libavformat/dashenc.c
+++ b/libavformat/dashenc.c
@@ -754,6 +754,16 @@ static int dash_flush(AVFormatContext *s, int final, int stream)
break;
}
}
+
+ 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);
+ if (bitrate >= 0) {
+ os->bit_rate = bitrate;
+ snprintf(os->bandwidth_str, sizeof(os->bandwidth_str),
+ " bandwidth=\"%d\"", os->bit_rate);
+ }
+ }
add_segment(os, filename, os->start_pts, os->max_pts - os->start_pts, start_pos, range_length, index_length);
av_log(s, AV_LOG_VERBOSE, "Representation %d media segment %d written to: %s\n", i, os->segment_index, full_path);
}