|
|
|
@ -2902,6 +2902,9 @@ void dump_format(AVFormatContext *ic, |
|
|
|
|
int is_output) |
|
|
|
|
{ |
|
|
|
|
int i; |
|
|
|
|
uint8_t *printed = av_mallocz(ic->nb_streams); |
|
|
|
|
if (ic->nb_streams && !printed) |
|
|
|
|
return; |
|
|
|
|
|
|
|
|
|
av_log(NULL, AV_LOG_INFO, "%s #%d, %s, %s '%s':\n", |
|
|
|
|
is_output ? "Output" : "Input", |
|
|
|
@ -2940,19 +2943,25 @@ void dump_format(AVFormatContext *ic, |
|
|
|
|
av_log(NULL, AV_LOG_INFO, "\n"); |
|
|
|
|
} |
|
|
|
|
if(ic->nb_programs) { |
|
|
|
|
int j, k; |
|
|
|
|
int j, k, total = 0; |
|
|
|
|
for(j=0; j<ic->nb_programs; j++) { |
|
|
|
|
AVMetadataTag *name = av_metadata_get(ic->programs[j]->metadata, |
|
|
|
|
"name", NULL, 0); |
|
|
|
|
av_log(NULL, AV_LOG_INFO, " Program %d %s\n", ic->programs[j]->id, |
|
|
|
|
name ? name->value : ""); |
|
|
|
|
for(k=0; k<ic->programs[j]->nb_stream_indexes; k++) |
|
|
|
|
for(k=0; k<ic->programs[j]->nb_stream_indexes; k++) { |
|
|
|
|
dump_stream_format(ic, ic->programs[j]->stream_index[k], index, is_output); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
printed[ic->programs[j]->stream_index[k]] = 1; |
|
|
|
|
} |
|
|
|
|
total += ic->programs[j]->nb_stream_indexes; |
|
|
|
|
} |
|
|
|
|
if (total < ic->nb_streams) |
|
|
|
|
av_log(NULL, AV_LOG_INFO, " No Program\n"); |
|
|
|
|
} |
|
|
|
|
for(i=0;i<ic->nb_streams;i++) |
|
|
|
|
if (!printed[i]) |
|
|
|
|
dump_stream_format(ic, i, index, is_output); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (ic->metadata) { |
|
|
|
|
AVMetadataTag *tag=NULL; |
|
|
|
|
av_log(NULL, AV_LOG_INFO, " Metadata\n"); |
|
|
|
@ -2960,7 +2969,7 @@ void dump_format(AVFormatContext *ic, |
|
|
|
|
av_log(NULL, AV_LOG_INFO, " %-16s: %s\n", tag->key, tag->value); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
av_free(printed); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#if LIBAVFORMAT_VERSION_MAJOR < 53 |
|
|
|
|