Opened 10 years ago Closed 10 years ago #1296 closed defect (fixed)parsing parseProfileTier not conformant with Table A 2 – Bitstream indications for conformance to format range extensions profiles
Description
It seems decoder interprets the fields:
incorrectly. For example the case of: Main 10 Intra 1 1 0 1 1 0 1 0 0 or 1
where: general_max_12bit_constraint_flag = 1; general_max_10bit_constraint_flag = 1; general_max_8bit_constraint_flag = 0; general_max_422chroma_constraint_flag = 1; general_max_420chroma_constraint_flag = 1; general_max_monochrome_constraint_flag = 0;
will be interpreted as Main 4:2:2 12, here is the code: READ_FLAG( uiCode, "general_max_12bit_constraint_flag" ); if (uiCode) maxBitDepth=12; READ_FLAG( uiCode, "general_max_10bit_constraint_flag" ); if (uiCode && maxBitDepth<10) maxBitDepth=10; READ_FLAG( uiCode, "general_max_8bit_constraint_flag" ); if (uiCode && maxBitDepth<8 ) maxBitDepth=8; if (maxBitDepth==0) maxBitDepth=16; ptl->setBitDepthConstraint(maxBitDepth); ChromaFormat chromaFmtConstraint=NUM_CHROMA_FORMAT; READ_FLAG( uiCode, "general_max_422chroma_constraint_flag" ); if (uiCode) chromaFmtConstraint=CHROMA_422; READ_FLAG( uiCode, "general_max_420chroma_constraint_flag" ); if (uiCode && chromaFmtConstraint==NUM_CHROMA_FORMAT) chromaFmtConstraint=CHROMA_420; READ_FLAG( uiCode, "general_max_monochrome_constraint_flag" ); if (uiCode && chromaFmtConstraint==NUM_CHROMA_FORMAT) chromaFmtConstraint=CHROMA_400; if (chromaFmtConstraint==NUM_CHROMA_FORMAT) chromaFmtConstraint=CHROMA_444;
Here is what I think it should be: UInt maxBitDepth=0; READ_FLAG( uiCode, "general_max_12bit_constraint_flag" ); if (uiCode) maxBitDepth=12; READ_FLAG( uiCode, "general_max_10bit_constraint_flag" ); if (uiCode) maxBitDepth=10; READ_FLAG( uiCode, "general_max_8bit_constraint_flag" ); if (uiCode) maxBitDepth=8; if (maxBitDepth==0) maxBitDepth=16; ptl->setBitDepthConstraint(maxBitDepth); ChromaFormat chromaFmtConstraint=NUM_CHROMA_FORMAT; READ_FLAG( uiCode, "general_max_422chroma_constraint_flag" ); if (uiCode) chromaFmtConstraint=CHROMA_422; READ_FLAG( uiCode, "general_max_420chroma_constraint_flag" ); if (uiCode) chromaFmtConstraint=CHROMA_420; READ_FLAG( uiCode, "general_max_monochrome_constraint_flag" ); if (uiCode) chromaFmtConstraint=CHROMA_400; if (chromaFmtConstraint==NUM_CHROMA_FORMAT) chromaFmtConstraint=CHROMA_444; Change History (2)comment:1 Changed 10 years ago by DefaultCC Plugin
comment:2 Changed 10 years ago by karlsharman
Note: See
TracTickets for help on using
tickets. | This list contains all users that will be notified about changes made to this ticket. These roles will be notified: Reporter, Owner, Subscriber, Participant
|
Fixed in r3989.