Lines Matching refs:info

718     if (!sti->info) // if we have left find_stream_info then nb_decoded_frames won't increase anymore for stream copy
1283 sti->info->found_decoder = 0;
1815 if (st->duration == AV_NOPTS_VALUE || sti->info->last_duration<= 0 ||
1816 (st->duration < duration && FFABS(duration - sti->info->last_duration) < 60LL*st->time_base.den / st->time_base.num))
1818 sti->info->last_duration = duration;
1915 /* less precise: use bitrate info */
1967 if (sti->info->found_decoder >= 0 &&
1974 if (sti->info->found_decoder >= 0 && !sti->nb_decoded_frames && avctx->codec_id == AV_CODEC_ID_DTS)
1984 if (sti->info->found_decoder >= 0 && avctx->pix_fmt == AV_PIX_FMT_NONE)
2019 sti->info->found_decoder <= 0 &&
2020 (st->codecpar->codec_id != -sti->info->found_decoder || !st->codecpar->codec_id)) {
2026 sti->info->found_decoder = -st->codecpar->codec_id;
2044 sti->info->found_decoder = -avctx->codec_id;
2047 sti->info->found_decoder = 1;
2048 } else if (!sti->info->found_decoder)
2049 sti->info->found_decoder = 1;
2051 if (sti->info->found_decoder < 0) {
2193 FFStreamInfo *info = sti->info;
2194 int64_t last = info->last_dts;
2201 if (!info->duration_error)
2202 info->duration_error = av_mallocz(sizeof(info->duration_error[0])*2);
2203 if (!info->duration_error)
2209 if (info->duration_error[0][1][i] < 1e10) {
2215 info->duration_error[j][0][i] += error;
2216 info->duration_error[j][1][i] += error*error;
2220 if (info->rfps_duration_sum <= INT64_MAX - duration) {
2221 info->duration_count++;
2222 info->rfps_duration_sum += duration;
2225 if (info->duration_count % 10 == 0) {
2226 int n = info->duration_count;
2228 if (info->duration_error[0][1][i] < 1e10) {
2229 double a0 = info->duration_error[0][0][i] / n;
2230 double error0 = info->duration_error[0][1][i] / n - a0*a0;
2231 double a1 = info->duration_error[1][0][i] / n;
2232 double error1 = info->duration_error[1][1][i] / n - a1*a1;
2234 info->duration_error[0][1][i] = 2e10;
2235 info->duration_error[1][1][i] = 2e10;
2242 if (info->duration_count > 3 && is_relative(ts) == is_relative(last))
2243 info->duration_gcd = av_gcd(info->duration_gcd, duration);
2246 info->last_dts = ts;
2262 if (tb_unreliable(sti->avctx) && sti->info->duration_count > 15 && sti->info->duration_gcd > FFMAX(1, st->time_base.den/(500LL*st->time_base.num)) && !st->r_frame_rate.num &&
2263 sti->info->duration_gcd < INT64_MAX / st->time_base.num)
2264 av_reduce(&st->r_frame_rate.num, &st->r_frame_rate.den, st->time_base.den, st->time_base.num * sti->info->duration_gcd, INT_MAX);
2265 if (sti->info->duration_count > 1 && !st->r_frame_rate.num
2272 if (sti->info->codec_info_duration &&
2273 sti->info->codec_info_duration*av_q2d(st->time_base) < (1001*11.5)/get_std_framerate(j))
2275 if (!sti->info->codec_info_duration && get_std_framerate(j) < 1001*12)
2278 if (av_q2d(st->time_base) * sti->info->rfps_duration_sum / sti->info->duration_count < (1001*12.0 * 0.8)/get_std_framerate(j))
2282 int n = sti->info->duration_count;
2283 double a = sti->info->duration_error[k][0][j] / n;
2284 double error = sti->info->duration_error[k][1][j]/n - a*a;
2299 && st->r_frame_rate.num && sti->info->rfps_duration_sum
2300 && sti->info->codec_info_duration <= 0
2301 && sti->info->duration_count > 2
2302 && fabs(1.0 / (av_q2d(st->r_frame_rate) * av_q2d(st->time_base)) - sti->info->rfps_duration_sum / (double)sti->info->duration_count) <= 1.0
2308 av_freep(&sti->info->duration_error);
2309 sti->info->last_dts = AV_NOPTS_VALUE;
2310 sti->info->duration_count = 0;
2311 sti->info->rfps_duration_sum = 0;
2571 sti->info->codec_info_duration_fields/2 :
2572 sti->info->duration_count;
2580 if (sti->info->frame_delay_evidence && count < 2 && sti->avctx->has_b_frames == 0)
2600 /* If we found the info for all the codecs, we can stop. */
2602 av_log(ic, AV_LOG_DEBUG, "All info found\n");
2607 /* We did not get all the codec info, but we read too much data. */
2616 sti->info->duration_count <= 1 &&
2664 if (sti->info->fps_last_dts != AV_NOPTS_VALUE &&
2665 sti->info->fps_last_dts >= pkt->dts) {
2669 st->index, sti->info->fps_last_dts_idx,
2670 sti->info->fps_last_dts, sti->codec_info_nb_frames,
2672 sti->info->fps_first_dts =
2673 sti->info->fps_last_dts = AV_NOPTS_VALUE;
2678 if (sti->info->fps_last_dts != AV_NOPTS_VALUE &&
2679 sti->info->fps_last_dts_idx > sti->info->fps_first_dts_idx &&
2680 (pkt->dts - (uint64_t)sti->info->fps_last_dts) / 1000 >
2681 (sti->info->fps_last_dts - (uint64_t)sti->info->fps_first_dts) /
2682 (sti->info->fps_last_dts_idx - sti->info->fps_first_dts_idx)) {
2686 st->index, sti->info->fps_last_dts_idx,
2687 sti->info->fps_last_dts, sti->codec_info_nb_frames,
2689 sti->info->fps_first_dts =
2690 sti->info->fps_last_dts = AV_NOPTS_VALUE;
2694 if (sti->info->fps_first_dts == AV_NOPTS_VALUE) {
2695 sti->info->fps_first_dts = pkt->dts;
2696 sti->info->fps_first_dts_idx = sti->codec_info_nb_frames;
2698 sti->info->fps_last_dts = pkt->dts;
2699 sti->info->fps_last_dts_idx = sti->codec_info_nb_frames;
2706 t = av_rescale_q(sti->info->codec_info_duration, st->time_base, AV_TIME_BASE_Q);
2712 && sti->info->fps_first_dts != AV_NOPTS_VALUE
2713 && sti->info->fps_last_dts != AV_NOPTS_VALUE) {
2714 int64_t dur = av_sat_sub64(sti->info->fps_last_dts, sti->info->fps_first_dts);
2734 sti->info->codec_info_duration = FFMIN(pkt->pts - st->start_time, sti->info->codec_info_duration + pkt->duration);
2736 sti->info->codec_info_duration += pkt->duration;
2737 sti->info->codec_info_duration_fields += sti->parser && sti->need_parsing && avctx->ticks_per_frame == 2
2746 sti->info->frame_delay_evidence = 1;
2808 if (sti->info->found_decoder == 1) {
2836 if (sti->info->codec_info_duration_fields &&
2838 sti->info->codec_info_duration) {
2843 if (sti->info->codec_info_duration >= INT64_MAX / st->time_base.num / 2||
2844 sti->info->codec_info_duration_fields >= INT64_MAX / st->time_base.den ||
2845 sti->info->codec_info_duration < 0)
2848 sti->info->codec_info_duration_fields * (int64_t) st->time_base.den,
2849 sti->info->codec_info_duration * 2 * (int64_t) st->time_base.num, 60000);
2976 if (sti->info) {
2977 av_freep(&sti->info->duration_error);
2978 av_freep(&sti->info);