fix audio video rate info

This commit is contained in:
Jacek Jendrzej
2017-03-14 21:31:02 +01:00
parent 82a6c40bc4
commit e68a82cd50
2 changed files with 50 additions and 2 deletions

View File

@@ -224,7 +224,30 @@ void ADec::getAudioInfo(int &type, int &layer, int &freq, int &bitrate, int &mod
mode = 0; /* default: stereo */
printf("cAudio::getAudioInfo c %p\n", c);
if (c) {
type = (c->codec_id != AV_CODEC_ID_MP2); /* only mpeg / not mpeg is indicated */
switch (c->codec_id) {
case AV_CODEC_ID_MP2:
type = AUDIO_FMT_MPEG;
break;
case AV_CODEC_ID_MP3:
type = AUDIO_FMT_MP3;
break;
case AV_CODEC_ID_AC3:
case AV_CODEC_ID_TRUEHD:
type = AUDIO_FMT_DOLBY_DIGITAL;
break;
case AV_CODEC_ID_EAC3:
type = AUDIO_FMT_DD_PLUS;
break;
case AV_CODEC_ID_AAC:
type = AUDIO_FMT_AAC;
break;
case AV_CODEC_ID_DTS:
type = AUDIO_FMT_DTS;
break;
case AV_CODEC_ID_MLP:
type = AUDIO_FMT_MLP;
break;
}
freq = c->sample_rate;
bitrate = c->bit_rate;
if (c->channels == 1)