[FFmpeg-devel] [PATCH 7/7] avcodec/adpcmenc: cleanup trellis checks
Andreas Rheinhardt
andreas.rheinhardt at gmail.com
Wed Jun 10 21:44:06 EEST 2020
Zane van Iperen:
> Signed-off-by: Zane van Iperen <zane at zanevaniperen.com>
> ---
> libavcodec/adpcmenc.c | 29 ++++++++++++++---------------
> 1 file changed, 14 insertions(+), 15 deletions(-)
>
> diff --git a/libavcodec/adpcmenc.c b/libavcodec/adpcmenc.c
> index 242c92e61a..c18e67a94f 100644
> --- a/libavcodec/adpcmenc.c
> +++ b/libavcodec/adpcmenc.c
> @@ -72,23 +72,22 @@ static av_cold int adpcm_encode_init(AVCodecContext *avctx)
> return AVERROR(EINVAL);
> }
>
> - if (avctx->trellis && (unsigned)avctx->trellis > 16U) {
> - av_log(avctx, AV_LOG_ERROR, "invalid trellis size\n");
> - return AVERROR(EINVAL);
> - }
> + if (avctx->trellis) {
> + if ((unsigned)avctx->trellis > 16U) {
> + av_log(avctx, AV_LOG_ERROR, "invalid trellis size\n");
> + return AVERROR(EINVAL);
> + }
>
> - if (avctx->trellis &&
> - (avctx->codec->id == AV_CODEC_ID_ADPCM_IMA_SSI ||
> - avctx->codec->id == AV_CODEC_ID_ADPCM_IMA_APM)) {
> - /*
> - * The current trellis implementation doesn't work for extended
> - * runs of samples without periodic resets. Disallow it.
> - */
> - av_log(avctx, AV_LOG_ERROR, "trellis not supported\n");
> - return AVERROR_PATCHWELCOME;
> - }
> + if (avctx->codec->id == AV_CODEC_ID_ADPCM_IMA_SSI ||
> + avctx->codec->id == AV_CODEC_ID_ADPCM_IMA_APM) {
> + /*
> + * The current trellis implementation doesn't work for extended
> + * runs of samples without periodic resets. Disallow it.
> + */
> + av_log(avctx, AV_LOG_ERROR, "trellis not supported\n");
> + return AVERROR_PATCHWELCOME;
> + }
>
> - if (avctx->trellis) {
> int frontier = 1 << avctx->trellis;> int max_paths = frontier * FREEZE_INTERVAL;
These declarations will be in the middle of the trellis block after this
patch, leading to new warnings.
> FF_ALLOC_OR_GOTO(avctx, s->paths,
>
More information about the ffmpeg-devel
mailing list