From: Aurelien Jacobs Date: Thu, 9 Feb 2006 23:53:07 +0000 (+0000) Subject: voc: set bits_per_sample correctly (fix mplayer playback) X-Git-Tag: v0.5~13181 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b96532e9702e46572e5acad2deba3a7cd802630e;p=platform%2Fupstream%2Flibav.git voc: set bits_per_sample correctly (fix mplayer playback) Originally committed as revision 4968 to svn://svn.ffmpeg.org/ffmpeg/trunk --- diff --git a/libavformat/voc.c b/libavformat/voc.c index 7c723a401..712f71a72 100644 --- a/libavformat/voc.c +++ b/libavformat/voc.c @@ -90,6 +90,18 @@ static int voc_read_header(AVFormatContext *s, AVFormatParameters *ap) return 0; } +static int voc_get_bps(int codec_id) +{ + switch (codec_id) { + case CODEC_ID_PCM_S16LE: + return 16; + case CODEC_ID_ADPCM_CT: + return 4; + default: + return 8; + } +} + int voc_get_packet(AVFormatContext *s, AVPacket *pkt, AVStream *st, int max_size) { @@ -115,6 +127,7 @@ voc_get_packet(AVFormatContext *s, AVPacket *pkt, AVStream *st, int max_size) dec->sample_rate = sample_rate; dec->channels = channels; dec->codec_id = codec_get_id(voc_codec_tags, get_byte(pb)); + dec->bits_per_sample = voc_get_bps(dec->codec_id); voc->remaining_size -= 2; max_size -= 2; channels = 1;