diff options
author | Justin Ruggles <justin.ruggles@gmail.com> | 2012-10-22 13:40:10 -0400 |
---|---|---|
committer | Justin Ruggles <justin.ruggles@gmail.com> | 2012-11-01 11:29:13 -0400 |
commit | bb6941af2afd057c3897afb78d034de2c355b8a0 (patch) | |
tree | 0356b139f424ac2dde4da62ce15adea324647b01 /libavcodec | |
parent | 6b07830a77729fe25c30026feabd53e8c4c5eb9e (diff) | |
download | ffmpeg-bb6941af2afd057c3897afb78d034de2c355b8a0.tar.gz |
lavc: move SANE_NB_CHANNELS to internal.h and use it in the PCM decoders
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/internal.h | 2 | ||||
-rw-r--r-- | libavcodec/pcm.c | 6 | ||||
-rw-r--r-- | libavcodec/utils.c | 3 |
3 files changed, 5 insertions, 6 deletions
diff --git a/libavcodec/internal.h b/libavcodec/internal.h index e5b1958596..231d4b6809 100644 --- a/libavcodec/internal.h +++ b/libavcodec/internal.h @@ -30,6 +30,8 @@ #include "libavutil/pixfmt.h" #include "avcodec.h" +#define FF_SANE_NB_CHANNELS 128U + typedef struct InternalBuffer { uint8_t *base[AV_NUM_DATA_POINTERS]; uint8_t *data[AV_NUM_DATA_POINTERS]; diff --git a/libavcodec/pcm.c b/libavcodec/pcm.c index 1f8f22d172..832cb43851 100644 --- a/libavcodec/pcm.c +++ b/libavcodec/pcm.c @@ -31,8 +31,6 @@ #include "mathops.h" #include "pcm_tablegen.h" -#define MAX_CHANNELS 64 - static av_cold int pcm_encode_init(AVCodecContext *avctx) { avctx->frame_size = 0; @@ -210,7 +208,7 @@ static av_cold int pcm_decode_init(AVCodecContext *avctx) PCMDecode *s = avctx->priv_data; int i; - if (avctx->channels <= 0 || avctx->channels > MAX_CHANNELS) { + if (avctx->channels <= 0) { av_log(avctx, AV_LOG_ERROR, "PCM channels out of bounds\n"); return AVERROR(EINVAL); } @@ -340,7 +338,7 @@ static int pcm_decode_frame(AVCodecContext *avctx, void *data, break; case AV_CODEC_ID_PCM_S16LE_PLANAR: { - const uint8_t *src2[MAX_CHANNELS]; + const uint8_t *src2[FF_SANE_NB_CHANNELS]; n /= avctx->channels; for (c = 0; c < avctx->channels; c++) src2[c] = &src[c * n * 2]; diff --git a/libavcodec/utils.c b/libavcodec/utils.c index 8daacbe8cf..b4e7ed6b6b 100644 --- a/libavcodec/utils.c +++ b/libavcodec/utils.c @@ -758,8 +758,7 @@ int attribute_align_arg avcodec_open2(AVCodecContext *avctx, const AVCodec *code if (av_codec_is_decoder(codec)) av_freep(&avctx->subtitle_header); -#define SANE_NB_CHANNELS 128U - if (avctx->channels > SANE_NB_CHANNELS) { + if (avctx->channels > FF_SANE_NB_CHANNELS) { ret = AVERROR(EINVAL); goto free_and_end; } |