Merge remote branch 'qatar/master'
* qatar/master: ac3enc: ARM optimised ac3_compute_matissa_size ac3: armv6 optimised bit_alloc_calc_bap fate: simplify fft test rules avio: document avio_alloc_context. lavf: make compute_chapters_end less picky. sierravmd: fix Indeo3 videos FFT: simplify fft8() fate: add fixed-point fft/mdct tests Fixed-point support in fft-test ape: check that number of seektable entries is equal to number of frames Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
@@ -2168,22 +2168,23 @@ enum CodecID av_codec_get_id(const AVCodecTag * const *tags, unsigned int tag)
|
||||
|
||||
static void compute_chapters_end(AVFormatContext *s)
|
||||
{
|
||||
unsigned int i;
|
||||
unsigned int i, j;
|
||||
int64_t max_time = s->duration + (s->start_time == AV_NOPTS_VALUE) ? 0 : s->start_time;
|
||||
|
||||
for (i=0; i+1<s->nb_chapters; i++)
|
||||
for (i = 0; i < s->nb_chapters; i++)
|
||||
if (s->chapters[i]->end == AV_NOPTS_VALUE) {
|
||||
assert(s->chapters[i]->start <= s->chapters[i+1]->start);
|
||||
assert(!av_cmp_q(s->chapters[i]->time_base, s->chapters[i+1]->time_base));
|
||||
s->chapters[i]->end = s->chapters[i+1]->start;
|
||||
}
|
||||
AVChapter *ch = s->chapters[i];
|
||||
int64_t end = max_time ? av_rescale_q(max_time, AV_TIME_BASE_Q, ch->time_base)
|
||||
: INT64_MAX;
|
||||
|
||||
if (s->nb_chapters && s->chapters[i]->end == AV_NOPTS_VALUE) {
|
||||
assert(s->start_time != AV_NOPTS_VALUE);
|
||||
assert(s->duration > 0);
|
||||
s->chapters[i]->end = av_rescale_q(s->start_time + s->duration,
|
||||
AV_TIME_BASE_Q,
|
||||
s->chapters[i]->time_base);
|
||||
}
|
||||
for (j = 0; j < s->nb_chapters; j++) {
|
||||
AVChapter *ch1 = s->chapters[j];
|
||||
int64_t next_start = av_rescale_q(ch1->start, ch1->time_base, ch->time_base);
|
||||
if (j != i && next_start > ch->start && next_start < end)
|
||||
end = next_start;
|
||||
}
|
||||
ch->end = (end == INT64_MAX) ? ch->start : end;
|
||||
}
|
||||
}
|
||||
|
||||
static int get_std_framerate(int i){
|
||||
|
||||
Reference in New Issue
Block a user