mirror of
https://github.com/nyanmisaka/mpp.git
synced 2025-10-08 02:20:06 +08:00
[jpegd]: Disable SOF markers but baseline DCT.
Signed-off-by: xueman.ruan <xueman.ruan@rock-chips.com> Change-Id: I1479fca1722c69b38d09a3c05a21a4fb10ed7e22
This commit is contained in:
@@ -780,6 +780,7 @@ static MPP_RET jpegd_decode_frame(JpegdCtx *ctx)
|
||||
/* nothing to do on SOI */
|
||||
syntax->dht_found = 0;
|
||||
syntax->eoi_found = 0;
|
||||
syntax->sof0_found = 0;
|
||||
syntax->qtable_cnt = 0;
|
||||
syntax->qtbl_entry = 0;
|
||||
syntax->htbl_entry = 0;
|
||||
@@ -807,6 +808,8 @@ static MPP_RET jpegd_decode_frame(JpegdCtx *ctx)
|
||||
For baseline, it should be 8\n", ctx->syntax->sample_precision);
|
||||
goto fail;
|
||||
}
|
||||
|
||||
syntax->sof0_found = 1;
|
||||
break;
|
||||
case EOI:
|
||||
syntax->eoi_found = 1;
|
||||
@@ -815,6 +818,11 @@ static MPP_RET jpegd_decode_frame(JpegdCtx *ctx)
|
||||
goto done;
|
||||
break;
|
||||
case SOS:
|
||||
if (!syntax->sof0_found) {
|
||||
mpp_err_f("Warning: only support baseline type\n");
|
||||
goto fail;
|
||||
}
|
||||
|
||||
if ((ret = jpegd_decode_sos(ctx)) != MPP_OK) {
|
||||
mpp_err_f("sos decode error\n");
|
||||
goto fail;
|
||||
|
@@ -133,6 +133,7 @@ typedef struct JpegdSyntax {
|
||||
/* 0 - not found; 1 - found */
|
||||
RK_U8 dht_found;
|
||||
RK_U8 eoi_found;
|
||||
RK_U8 sof0_found;
|
||||
|
||||
/* amount of quantize tables: 1 or 3 */
|
||||
RK_U8 qtable_cnt;
|
||||
|
Reference in New Issue
Block a user