History

support scalinglist8x8

fix issue update according to wayne's suggestiong

zhuiling committed 11 years ago

Commit 17e5ea91 parent 698ba112 files · +39 −26Browse files

Showing the changes to codec/decoder/core/src/au_parser.cpp (1 of 2 files). Show all

Unified · Split

codec/decoder/core/src/au_parser.cpp+11−18
@@ -1504,7 +1504,7 @@ int32_t ParseScalingList (PSps pSps, PBitStringAux pBs, bool bPPS, bool* pScalin · 1503 unmodified lines
15041504 uint8_t (*iScalingList4x4)[16], uint8_t (*iScalingList8x8)[64]) {
15051505 uint32_t uiScalingListNum;
15061506 uint32_t uiCode;
1507− int32_t iRetTmp;
1507+
15081508 bool bUseDefaultScalingMatrixFlag4x4 = false;
15091509 bool bUseDefaultScalingMatrixFlag8x8 = false;
15101510 bool bInit = false;
@@ -1526,28 +1526,21 @@ int32_t ParseScalingList (PSps pSps, PBitStringAux pBs, bool bPPS, bool* pScalin · 15 unmodified lines
15261526 WELS_READ_VERIFY (BsGetOneBit (pBs, &uiCode));
15271527 pScalingListPresentFlag[i] = !!uiCode;
15281528 if (!!uiCode) {
1529− if (i < 6) {
1530− iRetTmp = SetScalingListValue (iScalingList4x4[i], 16, &bUseDefaultScalingMatrixFlag4x4, pBs);
1531− if (iRetTmp == ERR_NONE) {
1532− if (bUseDefaultScalingMatrixFlag4x4) {
1533− bUseDefaultScalingMatrixFlag4x4 = false;
1534− memcpy (iScalingList4x4[i], g_kuiDequantScaling4x4Default[i / 3], sizeof (uint8_t) * 16);
1535− }
1536− } else
1537− return iRetTmp;
1529+ if (i < 6) {//4x4 scaling list
1530+ WELS_READ_VERIFY (SetScalingListValue (iScalingList4x4[i], 16, &bUseDefaultScalingMatrixFlag4x4, pBs));
1531+ if (bUseDefaultScalingMatrixFlag4x4) {
1532+ bUseDefaultScalingMatrixFlag4x4 = false;
1533+ memcpy (iScalingList4x4[i], g_kuiDequantScaling4x4Default[i / 3], sizeof (uint8_t) * 16);
1534+ }
1535+
15381536
15391537 } else {
1540− SetScalingListValue (iScalingList8x8[i - 6], 64, &bUseDefaultScalingMatrixFlag8x8, pBs);
1541− //if(iRetTmp == ERR_NONE)
1542− //{
1538+ WELS_READ_VERIFY (SetScalingListValue (iScalingList8x8[i - 6], 64, &bUseDefaultScalingMatrixFlag8x8, pBs));
1539+
15431540 if (bUseDefaultScalingMatrixFlag8x8) {
15441541 bUseDefaultScalingMatrixFlag8x8 = false;
15451542 memcpy (iScalingList8x8[i - 6], g_kuiDequantScaling8x8Default[ (i - 6) & 1], sizeof (uint8_t) * 64);
15461543 }
1547− // }
1548−
1549− //else
1550− // return iRetTmp;
15511544 }
15521545
15531546 } else {
@@ -1561,7 +1554,7 @@ int32_t ParseScalingList (PSps pSps, PBitStringAux pBs, bool bPPS, bool* pScalin · 7 unmodified lines
15611554 if ((i == 6) || (i == 7))
15621555 memcpy (iScalingList8x8[i - 6], defaultScaling[ (i & 1) + 2], sizeof (uint8_t) * 64);
15631556 else
1564− memcpy (iScalingList8x8[i - 6], iScalingList8x8[ (i - 6) / 3], sizeof (uint8_t) * 64);
1557+ memcpy (iScalingList8x8[i - 6], iScalingList8x8[i - 8], sizeof (uint8_t) * 64);
15651558
15661559 }
15671560 }

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t