Message ID | 1587894562-30207-3-git-send-email-lance.lmwang@gmail.com |
---|---|
State | Accepted |
Commit | 759565ccf8ce0a14b536f870b36405dcef791b1b |
Headers | show |
Series | [FFmpeg-devel,v1,1/6] fftools/ffmpeg: use local variable with same contents directly | expand |
Context | Check | Description |
---|---|---|
andriy/default | pending | |
andriy/make | success | Make finished |
andriy/make_fate | success | Make fate finished |
On 4/26/20 3:19 PM, lance.lmwang@gmail.com wrote: > From: Limin Wang <lance.lmwang@gmail.com> > > Signed-off-by: Limin Wang <lance.lmwang@gmail.com> > --- > libavformat/dashenc.c | 14 +++++--------- > 1 file changed, 5 insertions(+), 9 deletions(-) > > diff --git a/libavformat/dashenc.c b/libavformat/dashenc.c > index 5fbe4dd..96c0ea3 100644 > --- a/libavformat/dashenc.c > +++ b/libavformat/dashenc.c > @@ -1916,6 +1916,7 @@ static int dash_flush(AVFormatContext *s, int final, int stream) > OutputStream *os = &c->streams[i]; > AVStream *st = s->streams[i]; > int range_length, index_length = 0; > + int64_t duration; > > if (!os->packets_written) > continue; > @@ -1955,23 +1956,18 @@ static int dash_flush(AVFormatContext *s, int final, int stream) > } > } > > - os->last_duration = FFMAX(os->last_duration, av_rescale_q(os->max_pts - os->start_pts, > - st->time_base, > - AV_TIME_BASE_Q)); > + duration = av_rescale_q(os->max_pts - os->start_pts, st->time_base, AV_TIME_BASE_Q); > + os->last_duration = FFMAX(os->last_duration, duration); > > if (!os->muxer_overhead && os->max_pts > os->start_pts) > os->muxer_overhead = ((int64_t) (range_length - os->total_pkt_size) * > - 8 * AV_TIME_BASE) / > - av_rescale_q(os->max_pts - os->start_pts, > - st->time_base, AV_TIME_BASE_Q); > + 8 * AV_TIME_BASE) / duration; > os->total_pkt_size = 0; > os->total_pkt_duration = 0; > > if (!os->bit_rate) { > // calculate average bitrate of first segment > - 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); > + int64_t bitrate = (int64_t) range_length * 8 * AV_TIME_BASE / duration; > if (bitrate >= 0) > os->bit_rate = bitrate; > } LGTM
diff --git a/libavformat/dashenc.c b/libavformat/dashenc.c index 5fbe4dd..96c0ea3 100644 --- a/libavformat/dashenc.c +++ b/libavformat/dashenc.c @@ -1916,6 +1916,7 @@ static int dash_flush(AVFormatContext *s, int final, int stream) OutputStream *os = &c->streams[i]; AVStream *st = s->streams[i]; int range_length, index_length = 0; + int64_t duration; if (!os->packets_written) continue; @@ -1955,23 +1956,18 @@ static int dash_flush(AVFormatContext *s, int final, int stream) } } - os->last_duration = FFMAX(os->last_duration, av_rescale_q(os->max_pts - os->start_pts, - st->time_base, - AV_TIME_BASE_Q)); + duration = av_rescale_q(os->max_pts - os->start_pts, st->time_base, AV_TIME_BASE_Q); + os->last_duration = FFMAX(os->last_duration, duration); if (!os->muxer_overhead && os->max_pts > os->start_pts) os->muxer_overhead = ((int64_t) (range_length - os->total_pkt_size) * - 8 * AV_TIME_BASE) / - av_rescale_q(os->max_pts - os->start_pts, - st->time_base, AV_TIME_BASE_Q); + 8 * AV_TIME_BASE) / duration; os->total_pkt_size = 0; os->total_pkt_duration = 0; if (!os->bit_rate) { // calculate average bitrate of first segment - 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); + int64_t bitrate = (int64_t) range_length * 8 * AV_TIME_BASE / duration; if (bitrate >= 0) os->bit_rate = bitrate; }