amrnbdec: set channels, channel_layout, and sample_rate

Only mono 8kHz is supported.
This commit is contained in:
Justin Ruggles 2012-10-07 21:17:45 -04:00
parent a4202003b2
commit b24a4449a5

View File

@ -43,6 +43,7 @@
#include <string.h> #include <string.h>
#include <math.h> #include <math.h>
#include "libavutil/audioconvert.h"
#include "avcodec.h" #include "avcodec.h"
#include "dsputil.h" #include "dsputil.h"
#include "libavutil/common.h" #include "libavutil/common.h"
@ -154,6 +155,14 @@ static av_cold int amrnb_decode_init(AVCodecContext *avctx)
AMRContext *p = avctx->priv_data; AMRContext *p = avctx->priv_data;
int i; int i;
if (avctx->channels > 1) {
av_log_missing_feature(avctx, "multi-channel AMR", 0);
return AVERROR_PATCHWELCOME;
}
avctx->channels = 1;
avctx->channel_layout = AV_CH_LAYOUT_MONO;
avctx->sample_rate = 8000;
avctx->sample_fmt = AV_SAMPLE_FMT_FLT; avctx->sample_fmt = AV_SAMPLE_FMT_FLT;
// p->excitation always points to the same position in p->excitation_buf // p->excitation always points to the same position in p->excitation_buf