Handle more ADPCM codecs in av_get_bits_per_sample().

This removes some special-case code from riff.c.
CODEC_ID_ADPCM_G726 is still handled in riff.c as before because it is
not guaranteed to be fixed 4 bits per sample.

Originally committed as revision 21037 to svn://svn.ffmpeg.org/ffmpeg/trunk
release/0.6
Daniel Verkamp 15 years ago
parent 1e289b0979
commit 9df9b810c5
  1. 3
      libavcodec/utils.c
  2. 2
      libavformat/riff.c

@ -963,6 +963,9 @@ int av_get_bits_per_sample(enum CodecID codec_id){
return 3;
case CODEC_ID_ADPCM_SBPRO_4:
case CODEC_ID_ADPCM_CT:
case CODEC_ID_ADPCM_WAV:
case CODEC_ID_ADPCM_MS:
case CODEC_ID_ADPCM_YAMAHA:
return 4;
case CODEC_ID_PCM_ALAW:
case CODEC_ID_PCM_MULAW:

@ -336,7 +336,7 @@ int ff_put_wav_header(ByteIOContext *pb, AVCodecContext *enc)
put_le32(pb, enc->sample_rate);
if (enc->codec_id == CODEC_ID_MP2 || enc->codec_id == CODEC_ID_MP3 || enc->codec_id == CODEC_ID_GSM_MS) {
bps = 0;
} else if (enc->codec_id == CODEC_ID_ADPCM_IMA_WAV || enc->codec_id == CODEC_ID_ADPCM_MS || enc->codec_id == CODEC_ID_ADPCM_G726 || enc->codec_id == CODEC_ID_ADPCM_YAMAHA) { //
} else if (enc->codec_id == CODEC_ID_ADPCM_G726) {
bps = 4;
} else {
if (!(bps = av_get_bits_per_sample(enc->codec_id)))

Loading…
Cancel
Save