| @@ -1020,43 +1020,37 @@ size_t av_get_codec_tag_string(char *buf, size_t buf_size, unsigned int codec_ta | |||
| void avcodec_string(char *buf, int buf_size, AVCodecContext *enc, int encode) | |||
| { | |||
| const char *codec_type; | |||
| const char *codec_name; | |||
| const char *profile = NULL; | |||
| AVCodec *p; | |||
| char buf1[32]; | |||
| int bitrate; | |||
| AVRational display_aspect_ratio; | |||
| if (encode) | |||
| p = avcodec_find_encoder(enc->codec_id); | |||
| else | |||
| p = avcodec_find_decoder(enc->codec_id); | |||
| if (p) { | |||
| codec_name = p->name; | |||
| profile = av_get_profile_name(p, enc->profile); | |||
| } else if (enc->codec_id == CODEC_ID_MPEG2TS) { | |||
| /* fake mpeg2 transport stream codec (currently not | |||
| registered) */ | |||
| codec_name = "mpeg2ts"; | |||
| } else if (enc->codec_name[0] != '\0') { | |||
| codec_name = enc->codec_name; | |||
| } else { | |||
| /* output avi tags */ | |||
| if (!buf || buf_size <= 0) | |||
| return; | |||
| codec_type = av_get_media_type_string(enc->codec_type); | |||
| codec_name = avcodec_get_name(enc->codec_id); | |||
| if (enc->profile != FF_PROFILE_UNKNOWN) { | |||
| p = encode ? avcodec_find_encoder(enc->codec_id) : | |||
| avcodec_find_decoder(enc->codec_id); | |||
| if (p) | |||
| profile = av_get_profile_name(p, enc->profile); | |||
| } | |||
| snprintf(buf, buf_size, "%s: %s%s", codec_type ? codec_type : "unknown", | |||
| codec_name, enc->mb_decision ? " (hq)" : ""); | |||
| buf[0] ^= 'a' ^ 'A'; /* first letter in uppercase */ | |||
| if (profile) | |||
| snprintf(buf + strlen(buf), buf_size - strlen(buf), " (%s)", profile); | |||
| if (enc->codec_tag) { | |||
| char tag_buf[32]; | |||
| av_get_codec_tag_string(tag_buf, sizeof(tag_buf), enc->codec_tag); | |||
| snprintf(buf1, sizeof(buf1), "%s / 0x%04X", tag_buf, enc->codec_tag); | |||
| codec_name = buf1; | |||
| snprintf(buf + strlen(buf), buf_size - strlen(buf), | |||
| " (%s / 0x%04X)", tag_buf, enc->codec_tag); | |||
| } | |||
| switch(enc->codec_type) { | |||
| case AVMEDIA_TYPE_VIDEO: | |||
| snprintf(buf, buf_size, | |||
| "Video: %s%s", | |||
| codec_name, enc->mb_decision ? " (hq)" : ""); | |||
| if (profile) | |||
| snprintf(buf + strlen(buf), buf_size - strlen(buf), | |||
| " (%s)", profile); | |||
| if (enc->pix_fmt != PIX_FMT_NONE) { | |||
| snprintf(buf + strlen(buf), buf_size - strlen(buf), | |||
| ", %s", | |||
| @@ -1089,12 +1083,6 @@ void avcodec_string(char *buf, int buf_size, AVCodecContext *enc, int encode) | |||
| } | |||
| break; | |||
| case AVMEDIA_TYPE_AUDIO: | |||
| snprintf(buf, buf_size, | |||
| "Audio: %s", | |||
| codec_name); | |||
| if (profile) | |||
| snprintf(buf + strlen(buf), buf_size - strlen(buf), | |||
| " (%s)", profile); | |||
| if (enc->sample_rate) { | |||
| snprintf(buf + strlen(buf), buf_size - strlen(buf), | |||
| ", %d Hz", enc->sample_rate); | |||
| @@ -1106,17 +1094,7 @@ void avcodec_string(char *buf, int buf_size, AVCodecContext *enc, int encode) | |||
| ", %s", av_get_sample_fmt_name(enc->sample_fmt)); | |||
| } | |||
| break; | |||
| case AVMEDIA_TYPE_DATA: | |||
| snprintf(buf, buf_size, "Data: %s", codec_name); | |||
| break; | |||
| case AVMEDIA_TYPE_SUBTITLE: | |||
| snprintf(buf, buf_size, "Subtitle: %s", codec_name); | |||
| break; | |||
| case AVMEDIA_TYPE_ATTACHMENT: | |||
| snprintf(buf, buf_size, "Attachment: %s", codec_name); | |||
| break; | |||
| default: | |||
| snprintf(buf, buf_size, "Invalid Codec type %d", enc->codec_type); | |||
| return; | |||
| } | |||
| if (encode) { | |||