diff options
author | Stefano Sabatini | 2013-12-13 00:23:35 +0100 |
---|---|---|
committer | Stefano Sabatini | 2013-12-14 13:22:04 +0100 |
commit | 66a703ea01687bbe57469116bbe7ab0c414b3509 (patch) | |
tree | 2529188e398223627cf3e3975680fca6933791eb /ffprobe.c | |
parent | 2cfe70ff3eb9506225e800769b883a9cee93957c (diff) |
ffprobe: only show tags when explicitly requested
Diffstat (limited to 'ffprobe.c')
-rw-r--r-- | ffprobe.c | 27 |
1 files changed, 22 insertions, 5 deletions
@@ -66,6 +66,12 @@ static int do_show_data = 0; static int do_show_program_version = 0; static int do_show_library_versions = 0; +static int do_show_chapter_tags = 0; +static int do_show_format_tags = 0; +static int do_show_frame_tags = 0; +static int do_show_program_tags = 0; +static int do_show_stream_tags = 0; + static int show_value_unit = 0; static int use_value_prefix = 0; static int use_byte_value_binary_prefix = 0; @@ -1764,7 +1770,8 @@ static void show_frame(WriterContext *w, AVFrame *frame, AVStream *stream, print_str_opt("channel_layout", "unknown"); break; } - show_tags(w, av_frame_get_metadata(frame), SECTION_ID_FRAME_TAGS); + if (do_show_frame_tags) + show_tags(w, av_frame_get_metadata(frame), SECTION_ID_FRAME_TAGS); writer_print_section_footer(w); @@ -2116,7 +2123,8 @@ static int show_stream(WriterContext *w, AVFormatContext *fmt_ctx, int stream_id writer_print_section_footer(w); } - ret = show_tags(w, stream->metadata, in_program ? SECTION_ID_PROGRAM_STREAM_TAGS : SECTION_ID_STREAM_TAGS); + if (do_show_stream_tags) + ret = show_tags(w, stream->metadata, in_program ? SECTION_ID_PROGRAM_STREAM_TAGS : SECTION_ID_STREAM_TAGS); writer_print_section_footer(w); av_bprint_finalize(&pbuf, NULL); @@ -2155,7 +2163,8 @@ static int show_program(WriterContext *w, AVFormatContext *fmt_ctx, AVProgram *p print_time("start_time", program->start_time, &AV_TIME_BASE_Q); print_ts("end_pts", program->end_time); print_time("end_time", program->end_time, &AV_TIME_BASE_Q); - ret = show_tags(w, program->metadata, SECTION_ID_PROGRAM_TAGS); + if (do_show_program_tags) + ret = show_tags(w, program->metadata, SECTION_ID_PROGRAM_TAGS); if (ret < 0) goto end; @@ -2206,7 +2215,8 @@ static int show_chapters(WriterContext *w, AVFormatContext *fmt_ctx) print_time("start_time", chapter->start, &chapter->time_base); print_int("end", chapter->end); print_time("end_time", chapter->end, &chapter->time_base); - ret = show_tags(w, chapter->metadata, SECTION_ID_CHAPTER_TAGS); + if (do_show_chapter_tags) + ret = show_tags(w, chapter->metadata, SECTION_ID_CHAPTER_TAGS); writer_print_section_footer(w); } writer_print_section_footer(w); @@ -2236,7 +2246,8 @@ static int show_format(WriterContext *w, AVFormatContext *fmt_ctx) if (fmt_ctx->bit_rate > 0) print_val ("bit_rate", fmt_ctx->bit_rate, unit_bit_per_second_str); else print_str_opt("bit_rate", "N/A"); print_int("probe_score", av_format_get_probe_score(fmt_ctx)); - ret = show_tags(w, fmt_ctx->metadata, SECTION_ID_FORMAT_TAGS); + if (do_show_format_tags) + ret = show_tags(w, fmt_ctx->metadata, SECTION_ID_FORMAT_TAGS); writer_print_section_footer(w); fflush(stdout); @@ -2895,6 +2906,12 @@ int main(int argc, char **argv) SET_DO_SHOW(STREAM_DISPOSITION, stream_disposition); SET_DO_SHOW(PROGRAM_STREAM_DISPOSITION, stream_disposition); + SET_DO_SHOW(CHAPTER_TAGS, chapter_tags); + SET_DO_SHOW(FORMAT_TAGS, format_tags); + SET_DO_SHOW(FRAME_TAGS, frame_tags); + SET_DO_SHOW(PROGRAM_TAGS, program_tags); + SET_DO_SHOW(STREAM_TAGS, stream_tags); + if (do_bitexact && (do_show_program_version || do_show_library_versions)) { av_log(NULL, AV_LOG_ERROR, "-bitexact and -show_program_version or -show_library_versions " |