summaryrefslogtreecommitdiff
path: root/libavformat/wav.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavformat/wav.c')
-rw-r--r--libavformat/wav.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/libavformat/wav.c b/libavformat/wav.c
index 81301122d5..f8dd6c442e 100644
--- a/libavformat/wav.c
+++ b/libavformat/wav.c
@@ -115,7 +115,6 @@ void get_wav_header(ByteIOContext *pb, AVCodecContext *codec, int size)
int id;
id = get_le16(pb);
- codec->codec_id = wav_codec_get_id(id, codec->frame_bits);
codec->codec_type = CODEC_TYPE_AUDIO;
codec->codec_tag = id;
codec->channels = get_le16(pb);
@@ -124,10 +123,10 @@ void get_wav_header(ByteIOContext *pb, AVCodecContext *codec, int size)
codec->block_align = get_le16(pb);
if (size == 14) { /* We're dealing with plain vanilla WAVEFORMAT */
codec->bits_per_sample = 8;
- return;
- }
-
- codec->bits_per_sample = get_le16(pb);
+ }else
+ codec->bits_per_sample = get_le16(pb);
+ codec->codec_id = wav_codec_get_id(id, codec->bits_per_sample);
+
if (size > 16) { /* We're obviously dealing with WAVEFORMATEX */
codec->extradata_size = get_le16(pb);
if (codec->extradata_size > 0) {