Browse Source

j2kdec: profile code from jpeg2000

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
tags/n2.0
Michael Niedermayer 12 years ago
parent
commit
a2daf929ed
1 changed files with 11 additions and 1 deletions
  1. +11
    -1
      libavcodec/j2kdec.c

+ 11
- 1
libavcodec/j2kdec.c View File

@@ -146,7 +146,7 @@ static int get_siz(Jpeg2000DecoderContext *s)
if (bytestream2_get_bytes_left(&s->g) < 36)
return AVERROR(EINVAL);

bytestream2_get_be16u(&s->g); // Rsiz
s->avctx->profile = bytestream2_get_be16u(&s->g); // Rsiz
s->width = bytestream2_get_be32u(&s->g); // Width
s->height = bytestream2_get_be32u(&s->g); // Height
s->image_offset_x = bytestream2_get_be32u(&s->g); // X0Siz
@@ -1022,6 +1022,15 @@ static void jpeg2000_init_static_data(AVCodec *codec)
ff_jpeg2000_init_tier1_luts();
}

static const AVProfile profiles[] = {
{ FF_PROFILE_JPEG2000_CSTREAM_RESTRICTION_0, "JPEG 2000 codestream restriction 0" },
{ FF_PROFILE_JPEG2000_CSTREAM_RESTRICTION_1, "JPEG 2000 codestream restriction 1" },
{ FF_PROFILE_JPEG2000_CSTREAM_NO_RESTRICTION, "JPEG 2000 no codestream restrictions" },
{ FF_PROFILE_JPEG2000_DCINEMA_2K, "JPEG 2000 digital cinema 2K" },
{ FF_PROFILE_JPEG2000_DCINEMA_4K, "JPEG 2000 digital cinema 4K" },
{ FF_PROFILE_UNKNOWN },
};

AVCodec ff_j2k_decoder = {
.name = "j2k",
.long_name = NULL_IF_CONFIG_SMALL("JPEG 2000"),
@@ -1031,4 +1040,5 @@ AVCodec ff_j2k_decoder = {
.priv_data_size = sizeof(Jpeg2000DecoderContext),
.init_static_data = jpeg2000_init_static_data,
.decode = decode_frame,
.profiles = NULL_IF_CONFIG_SMALL(profiles)
};

Loading…
Cancel
Save