Print a list of valid AMR bitrates if a wrong one is used.

patch by Víctor Paesa, wzrlpy arsystel com

Originally committed as revision 8639 to svn://svn.ffmpeg.org/ffmpeg/trunk
pull/126/head
Víctor Paesa 18 years ago committed by Diego Biurrun
parent f4d47d6b30
commit 414425e064
  1. 15
      libavcodec/amr.c

@ -86,6 +86,11 @@
#include "amr_float/interf_enc.h"
#endif
static const char *nb_bitrate_unsupported =
"bitrate not supported: use one of 4.75k, 5.15k, 5.9k, 6.7k, 7.4k, 7.95k, 10.2k or 12.2k\n";
static const char *wb_bitrate_unsupported =
"bitrate not supported: use one of 6.6k, 8.85k, 12.65k, 14.25k, 15.85k, 18.25k, 19.85k, 23.05k, or 23.85k\n";
/* Common code for fixed and float version*/
typedef struct AMR_bitrates
{
@ -217,7 +222,7 @@ static int amr_nb_encode_init(AVCodecContext * avctx)
if((s->enc_bitrate=getBitrateMode(avctx->bit_rate))<0)
{
av_log(avctx, AV_LOG_ERROR, "bitrate not supported\n");
av_log(avctx, AV_LOG_ERROR, nb_bitrate_unsupported);
return -1;
}
@ -414,7 +419,7 @@ static int amr_nb_encode_init(AVCodecContext * avctx)
if((s->enc_bitrate=getBitrateMode(avctx->bit_rate))<0)
{
av_log(avctx, AV_LOG_ERROR, "bitrate not supported\n");
av_log(avctx, AV_LOG_ERROR, nb_bitrate_unsupported);
return -1;
}
@ -475,7 +480,7 @@ static int amr_nb_encode_frame(AVCodecContext *avctx,
if((s->enc_bitrate=getBitrateMode(avctx->bit_rate))<0)
{
av_log(avctx, AV_LOG_ERROR, "bitrate not supported\n");
av_log(avctx, AV_LOG_ERROR, nb_bitrate_unsupported);
return -1;
}
@ -591,7 +596,7 @@ static int amr_wb_encode_init(AVCodecContext * avctx)
if((s->mode=getWBBitrateMode(avctx->bit_rate))<0)
{
av_log(avctx, AV_LOG_ERROR, "bitrate not supported\n");
av_log(avctx, AV_LOG_ERROR, wb_bitrate_unsupported);
return -1;
}
@ -622,7 +627,7 @@ static int amr_wb_encode_frame(AVCodecContext *avctx,
if((s->mode=getWBBitrateMode(avctx->bit_rate))<0)
{
av_log(avctx, AV_LOG_ERROR, "bitrate not supported\n");
av_log(avctx, AV_LOG_ERROR, wb_bitrate_unsupported);
return -1;
}
size = E_IF_encode(s->state, s->mode, data, frame, s->allow_dtx);

Loading…
Cancel
Save