avformat/avr: use ff_get_pcm_codec_id()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
This commit is contained in:
Paul B Mahol 2013-10-12 20:21:38 +00:00
parent cfc9a4c732
commit fd54f70072

View File

@ -69,16 +69,9 @@ static int avr_read_header(AVFormatContext *s)
avio_skip(s->pb, 20);
avio_skip(s->pb, 64);
if (!sign && bps == 8) {
st->codec->codec_id = AV_CODEC_ID_PCM_U8;
} else if (!sign && bps == 16) {
st->codec->codec_id = AV_CODEC_ID_PCM_U16BE;
} else if (sign == 0xFFFFu && bps == 8) {
st->codec->codec_id = AV_CODEC_ID_PCM_S8;
} else if (sign == 0xFFFFu && bps == 16) {
st->codec->codec_id = AV_CODEC_ID_PCM_S16BE;
} else {
avpriv_request_sample(s, "bits per sample %d", bps);
st->codec->codec_id = ff_get_pcm_codec_id(bps, 0, 1, sign);
if (st->codec->codec_id == AV_CODEC_ID_NONE) {
avpriv_request_sample(s, "Bps %d and sign %d", bps, sign);
return AVERROR_PATCHWELCOME;
}