[FFmpeg-devel] [PATCH 7/8] Reject block size changes in the shorten decoder.

Michael Niedermayer michaelni at gmx.at
Sun Oct 2 03:06:35 CEST 2011


On Sat, Oct 01, 2011 at 12:43:05AM +0200, Laurent Aimar wrote:
> On Thu, Sep 29, 2011 at 10:12:19PM -0400, Justin Ruggles wrote:
> > On 09/29/2011 06:27 PM, Laurent Aimar wrote:
> > 
> > > On Thu, Sep 29, 2011 at 06:24:35PM -0400, Justin Ruggles wrote:
> > >> On 09/29/2011 06:05 PM, fenrir at elivagar.org wrote:
> > >>
> > >>> From: Laurent Aimar <fenrir at videolan.org>
> > >>>
> > >>> ---
> > >>>  libavcodec/shorten.c |    9 +++++++--
> > >>>  1 files changed, 7 insertions(+), 2 deletions(-)
> > >>>
> > >>> diff --git a/libavcodec/shorten.c b/libavcodec/shorten.c
> > >>> index b39fcbd..966584d 100644
> > >>> --- a/libavcodec/shorten.c
> > >>> +++ b/libavcodec/shorten.c
> > >>> @@ -482,9 +482,14 @@ static int shorten_decode_frame(AVCodecContext *avctx,
> > >>>              case FN_BITSHIFT:
> > >>>                  s->bitshift = get_ur_golomb_shorten(&s->gb, BITSHIFTSIZE);
> > >>>                  break;
> > >>> -            case FN_BLOCKSIZE:
> > >>> -                s->blocksize = get_uint(s, av_log2(s->blocksize));
> > >>> +            case FN_BLOCKSIZE: {
> > >>> +                int blocksize = get_uint(s, av_log2(s->blocksize));
> > >>> +                if (blocksize != s->blocksize) {
> > >>> +                    av_log(avctx, AV_LOG_ERROR, "block size changes are not supported\n");
> > >>> +                    return AVERROR_PATCHWELCOME;
> > >>> +                }
> > >>>                  break;
> > >>> +            }
> > >>>              case FN_QUIT:
> > >>>                  *data_size = 0;
> > >>>                  return buf_size;
> > >>
> > >>
> > >> The last frame can use a different blocksize.
> > >  Ok. Sadly the current code don't support it as is, except maybe if it
> > > is shorter. Is that the case? And if yes, do you have a sample?
> > 
> > 
> > Yes, it is shorter. I was able to create my own sample that triggered
> > this with the shorten commandline program from
> > http://www.etree.org/shnutils/shorten/
> 
> New patch attached. It now only reject increasing block size changes.

applied, thanks

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

I am the wisest man alive, for I know one thing, and that is that I know
nothing. -- Socrates
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20111002/04830d20/attachment.asc>


More information about the ffmpeg-devel mailing list