Message ID | 20220506065543.9085-1-etemesicaleb@gmail.com |
---|---|
State | Accepted |
Commit | 6a0cec53153b58a553ebb79f32309cc4533704eb |
Headers | show |
Series | [FFmpeg-devel] avcodec/jpeg2000: Fast fail if HTJ2K codeblocks are present. | expand |
Context | Check | Description |
---|---|---|
yinshiyou/make_loongarch64 | success | Make finished |
yinshiyou/make_fate_loongarch64 | success | Make fate finished |
andriy/make_x86 | success | Make finished |
andriy/make_fate_x86 | success | Make fate finished |
LGTM On Thu, May 5, 2022 at 11:56 PM caleb <etemesicaleb@gmail.com> wrote: > > --- > libavcodec/jpeg2000.h | 2 ++ > libavcodec/jpeg2000dec.c | 4 ++++ > 2 files changed, 6 insertions(+) > > diff --git a/libavcodec/jpeg2000.h b/libavcodec/jpeg2000.h > index d06313425e..e5ecb4cbf9 100644 > --- a/libavcodec/jpeg2000.h > +++ b/libavcodec/jpeg2000.h > @@ -110,6 +110,8 @@ enum Jpeg2000Quantsty { // quantization style > #define JPEG2000_CSTY_PREC 0x01 // Precincts defined in coding style > #define JPEG2000_CSTY_SOP 0x02 // SOP marker present > #define JPEG2000_CSTY_EPH 0x04 // EPH marker present > +#define JPEG2000_CTSY_HTJ2K_F 0x40 // Only HT code-blocks (Rec. ITU-T T.814 | ISO/IEC 15444-15) are present > +#define JPEG2000_CTSY_HTJ2K_M 0xC0 // HT code blocks (Rec. ITU-T T.814 | ISO/IEC 15444-15) can be present > > // Progression orders > #define JPEG2000_PGOD_LRCP 0x00 // Layer-resolution level-component-position progression > diff --git a/libavcodec/jpeg2000dec.c b/libavcodec/jpeg2000dec.c > index 92966b11f5..30f8c878d1 100644 > --- a/libavcodec/jpeg2000dec.c > +++ b/libavcodec/jpeg2000dec.c > @@ -521,6 +521,10 @@ static int get_cox(Jpeg2000DecoderContext *s, Jpeg2000CodingStyle *c) > > c->cblk_style = bytestream2_get_byteu(&s->g); > if (c->cblk_style != 0) { // cblk style > + if (c->cblk_style & JPEG2000_CTSY_HTJ2K_M || c->cblk_style & JPEG2000_CTSY_HTJ2K_F) { > + av_log(s->avctx, AV_LOG_ERROR, "Support for High throughput JPEG 2000 is not yet available\n"); > + return AVERROR_PATCHWELCOME; > + } > av_log(s->avctx, AV_LOG_WARNING, "extra cblk styles %X\n", c->cblk_style); > if (c->cblk_style & JPEG2000_CBLK_BYPASS) > av_log(s->avctx, AV_LOG_WARNING, "Selective arithmetic coding bypass\n"); > -- > 2.34.0 >
On Fri, May 06, 2022 at 10:56:16AM -0700, Pierre-Anthony Lemieux wrote:
> LGTM
will apply
thx
[...]
Hi before applying this Author: caleb <etemesicaleb@gmail.com> If you want your full name there please resend this with your full name so its in git with your full name. It cannot be changed later if its pushed like this thx [...]
> -----Original Message----- > From: ffmpeg-devel <ffmpeg-devel-bounces@ffmpeg.org> On Behalf Of > Michael Niedermayer > Sent: Saturday, May 7, 2022 10:31 AM > To: FFmpeg development discussions and patches <ffmpeg- > devel@ffmpeg.org> > Subject: Re: [FFmpeg-devel] [PATCH] avcodec/jpeg2000: Fast fail if > HTJ2K codeblocks are present. > > On Fri, May 06, 2022 at 10:56:16AM -0700, Pierre-Anthony Lemieux > wrote: > > LGTM > > will apply > > thx > > [...] > -- > Michael GnuPG fingerprint: > 9FF2128B147EF6730BADF133611EC787040B0FAB > > Into a blind darkness they enter who follow after the Ignorance, > they as if into a greater darkness enter who devote themselves > to the Knowledge alone. -- Isha Upanishad They who read as if sentences devoted to pretention of the wise words into great pain will enter. -- softworkz :-)
caleb is fine. On Sat, May 7, 2022 at 11:35 AM Michael Niedermayer <michael@niedermayer.cc> wrote: > Hi > > before applying this > > Author: caleb <etemesicaleb@gmail.com> > > If you want your full name there please resend this with your full name > so its in git with your full name. It cannot be > changed later if its pushed like this > > thx > > [...] > -- > Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB > > The educated differ from the uneducated as much as the living from the > dead. -- Aristotle > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email > ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". >
On Sun, Aug 07, 2022 at 07:46:51PM +0300, Caleb Etemesi wrote:
> caleb is fine.
ok will apply
thx
[...]
Also apologies for a really late reply, Still learning about mail threads Kind regards. Caleb On Sun, 7 Aug 2022, 22:51 Michael Niedermayer, <michael@niedermayer.cc> wrote: > On Sun, Aug 07, 2022 at 07:46:51PM +0300, Caleb Etemesi wrote: > > caleb is fine. > > ok will apply > > thx > > [...] > -- > Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB > > Old school: Use the lowest level language in which you can solve the > problem > conveniently. > New school: Use the highest level language in which the latest > supercomputer > can solve the problem without the user falling asleep waiting. > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email > ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". >
diff --git a/libavcodec/jpeg2000.h b/libavcodec/jpeg2000.h index d06313425e..e5ecb4cbf9 100644 --- a/libavcodec/jpeg2000.h +++ b/libavcodec/jpeg2000.h @@ -110,6 +110,8 @@ enum Jpeg2000Quantsty { // quantization style #define JPEG2000_CSTY_PREC 0x01 // Precincts defined in coding style #define JPEG2000_CSTY_SOP 0x02 // SOP marker present #define JPEG2000_CSTY_EPH 0x04 // EPH marker present +#define JPEG2000_CTSY_HTJ2K_F 0x40 // Only HT code-blocks (Rec. ITU-T T.814 | ISO/IEC 15444-15) are present +#define JPEG2000_CTSY_HTJ2K_M 0xC0 // HT code blocks (Rec. ITU-T T.814 | ISO/IEC 15444-15) can be present // Progression orders #define JPEG2000_PGOD_LRCP 0x00 // Layer-resolution level-component-position progression diff --git a/libavcodec/jpeg2000dec.c b/libavcodec/jpeg2000dec.c index 92966b11f5..30f8c878d1 100644 --- a/libavcodec/jpeg2000dec.c +++ b/libavcodec/jpeg2000dec.c @@ -521,6 +521,10 @@ static int get_cox(Jpeg2000DecoderContext *s, Jpeg2000CodingStyle *c) c->cblk_style = bytestream2_get_byteu(&s->g); if (c->cblk_style != 0) { // cblk style + if (c->cblk_style & JPEG2000_CTSY_HTJ2K_M || c->cblk_style & JPEG2000_CTSY_HTJ2K_F) { + av_log(s->avctx, AV_LOG_ERROR, "Support for High throughput JPEG 2000 is not yet available\n"); + return AVERROR_PATCHWELCOME; + } av_log(s->avctx, AV_LOG_WARNING, "extra cblk styles %X\n", c->cblk_style); if (c->cblk_style & JPEG2000_CBLK_BYPASS) av_log(s->avctx, AV_LOG_WARNING, "Selective arithmetic coding bypass\n");