break;
case AVMEDIA_TYPE_SUBTITLE:
- ret = avcodec_decode_subtitle2(dec_ctx, &sub, &got_frame, pkt);
+ if (*packet_new)
+ ret = avcodec_decode_subtitle2(dec_ctx, &sub, &got_frame, pkt);
*packet_new = 0;
break;
default:
goto end;
}
while (!av_read_frame(fmt_ctx, &pkt)) {
- if (ifile->nb_streams > nb_streams) {
+ if (fmt_ctx->nb_streams > nb_streams) {
REALLOCZ_ARRAY_STREAM(nb_streams_frames, nb_streams, fmt_ctx->nb_streams);
REALLOCZ_ARRAY_STREAM(nb_streams_packets, nb_streams, fmt_ctx->nb_streams);
REALLOCZ_ARRAY_STREAM(selected_streams, nb_streams, fmt_ctx->nb_streams);
- nb_streams = ifile->nb_streams;
+ nb_streams = fmt_ctx->nb_streams;
}
if (selected_streams[pkt.stream_index]) {
AVRational tb = ifile->streams[pkt.stream_index].st->time_base;
case AVMEDIA_TYPE_VIDEO:
print_int("width", par->width);
print_int("height", par->height);
+#if FF_API_LAVF_AVCTX
if (dec_ctx) {
print_int("coded_width", dec_ctx->coded_width);
print_int("coded_height", dec_ctx->coded_height);
}
+#endif
print_int("has_b_frames", par->video_delay);
sar = av_guess_sample_aspect_ratio(fmt_ctx, stream, NULL);
- if (sar.den) {
+ if (sar.num) {
print_q("sample_aspect_ratio", sar, ':');
av_reduce(&dar.num, &dar.den,
par->width * sar.num,
} while (0)
if (do_show_stream_disposition) {
- writer_print_section_header(w, in_program ? SECTION_ID_PROGRAM_STREAM_DISPOSITION : SECTION_ID_STREAM_DISPOSITION);
- PRINT_DISPOSITION(DEFAULT, "default");
- PRINT_DISPOSITION(DUB, "dub");
- PRINT_DISPOSITION(ORIGINAL, "original");
- PRINT_DISPOSITION(COMMENT, "comment");
- PRINT_DISPOSITION(LYRICS, "lyrics");
- PRINT_DISPOSITION(KARAOKE, "karaoke");
- PRINT_DISPOSITION(FORCED, "forced");
- PRINT_DISPOSITION(HEARING_IMPAIRED, "hearing_impaired");
- PRINT_DISPOSITION(VISUAL_IMPAIRED, "visual_impaired");
- PRINT_DISPOSITION(CLEAN_EFFECTS, "clean_effects");
- PRINT_DISPOSITION(ATTACHED_PIC, "attached_pic");
- PRINT_DISPOSITION(TIMED_THUMBNAILS, "timed_thumbnails");
- writer_print_section_footer(w);
+ writer_print_section_header(w, in_program ? SECTION_ID_PROGRAM_STREAM_DISPOSITION : SECTION_ID_STREAM_DISPOSITION);
+ PRINT_DISPOSITION(DEFAULT, "default");
+ PRINT_DISPOSITION(DUB, "dub");
+ PRINT_DISPOSITION(ORIGINAL, "original");
+ PRINT_DISPOSITION(COMMENT, "comment");
+ PRINT_DISPOSITION(LYRICS, "lyrics");
+ PRINT_DISPOSITION(KARAOKE, "karaoke");
+ PRINT_DISPOSITION(FORCED, "forced");
+ PRINT_DISPOSITION(HEARING_IMPAIRED, "hearing_impaired");
+ PRINT_DISPOSITION(VISUAL_IMPAIRED, "visual_impaired");
+ PRINT_DISPOSITION(CLEAN_EFFECTS, "clean_effects");
+ PRINT_DISPOSITION(ATTACHED_PIC, "attached_pic");
+ PRINT_DISPOSITION(TIMED_THUMBNAILS, "timed_thumbnails");
+ writer_print_section_footer(w);
}
if (do_show_stream_tags)
int ret = 0;
writer_print_section_header(w, SECTION_ID_FORMAT);
- print_str_validate("filename", fmt_ctx->filename);
+ print_str_validate("filename", fmt_ctx->url);
print_int("nb_streams", fmt_ctx->nb_streams);
print_int("nb_programs", fmt_ctx->nb_programs);
print_str("format_name", fmt_ctx->iformat->name);
ist->dec_ctx->pkt_timebase = stream->time_base;
ist->dec_ctx->framerate = stream->avg_frame_rate;
+#if FF_API_LAVF_AVCTX
+ ist->dec_ctx->coded_width = stream->codec->coded_width;
+ ist->dec_ctx->coded_height = stream->codec->coded_height;
+#endif
if (avcodec_open2(ist->dec_ctx, codec, &opts) < 0) {
av_log(NULL, AV_LOG_WARNING, "Could not open codec for input stream %d\n",
PRINT_PIX_FMT_FLAG(HWACCEL, "hwaccel");
PRINT_PIX_FMT_FLAG(PLANAR, "planar");
PRINT_PIX_FMT_FLAG(RGB, "rgb");
+#if FF_API_PSEUDOPAL
PRINT_PIX_FMT_FLAG(PSEUDOPAL, "pseudopal");
+#endif
PRINT_PIX_FMT_FLAG(ALPHA, "alpha");
writer_print_section_footer(w);
}
options = real_options;
parse_loglevel(argc, argv, options);
- av_register_all();
avformat_network_init();
init_opts();
#if CONFIG_AVDEVICE