Showing the changes to codec/decoder/plus/src/welsDecoderExt.cpp (1 of 5 files). Show all
Unified · Split
| @@ -944,9 +944,9 @@ DECODING_STATE CWelsDecoder::FlushFrame (unsigned char** ppDst, · 943 unmodified lines | |||
| 944 | #endif | 944 | #endif |
| 945 | #endif | 945 | #endif |
| 946 | memcpy (pDstInfo, &m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].sBufferInfo, sizeof (SBufferInfo)); | 946 | memcpy (pDstInfo, &m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].sBufferInfo, sizeof (SBufferInfo)); |
| 947 | ppDst[0] = m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].pData[0]; | 947 | ppDst[0] = pDstInfo->pDst[0]; |
| 948 | ppDst[1] = m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].pData[1]; | 948 | ppDst[1] = pDstInfo->pDst[1]; |
| 949 | ppDst[2] = m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].pData[2]; | 949 | ppDst[2] = pDstInfo->pDst[2]; |
| 950 | m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].iPOC = IMinInt32; | 950 | m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].iPOC = IMinInt32; |
| 951 | PPicBuff pPicBuff = m_iThreadCount <= 1 ? m_pDecThrCtx[0].pCtx->pPicBuff : m_pPicBuff; | 951 | PPicBuff pPicBuff = m_iThreadCount <= 1 ? m_pDecThrCtx[0].pCtx->pPicBuff : m_pPicBuff; |
| 952 | if (m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].iPicBuffIdx < pPicBuff->iCapacity) { | 952 | if (m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].iPicBuffIdx < pPicBuff->iCapacity) { |
| @@ -1046,9 +1046,6 @@ void CWelsDecoder::BufferingReadyPicture (PWelsDecoderContext pCtx, unsigned cha · 93 unmodified lines | |||
| 1046 | for (int32_t i = 0; i < 16; ++i) { | 1046 | for (int32_t i = 0; i < 16; ++i) { |
| 1047 | if (m_sPictInfoList[i].iPOC == IMinInt32) { | 1047 | if (m_sPictInfoList[i].iPOC == IMinInt32) { |
| 1048 | memcpy (&m_sPictInfoList[i].sBufferInfo, pDstInfo, sizeof (SBufferInfo)); | 1048 | memcpy (&m_sPictInfoList[i].sBufferInfo, pDstInfo, sizeof (SBufferInfo)); |
| 1049 | m_sPictInfoList[i].pData[0] = ppDst[0]; | ||
| 1050 | m_sPictInfoList[i].pData[1] = ppDst[1]; | ||
| 1051 | m_sPictInfoList[i].pData[2] = ppDst[2]; | ||
| 1052 | m_sPictInfoList[i].iPOC = pCtx->pSliceHeader->iPicOrderCntLsb; | 1049 | m_sPictInfoList[i].iPOC = pCtx->pSliceHeader->iPicOrderCntLsb; |
| 1053 | m_sPictInfoList[i].uiDecodingTimeStamp = pCtx->uiDecodingTimeStamp; | 1050 | m_sPictInfoList[i].uiDecodingTimeStamp = pCtx->uiDecodingTimeStamp; |
| 1054 | m_sPictInfoList[i].iPicBuffIdx = pCtx->pLastDecPicInfo->pPreviousDecodedPictureInDpb->iPicBuffIdx; | 1051 | m_sPictInfoList[i].iPicBuffIdx = pCtx->pLastDecPicInfo->pPreviousDecodedPictureInDpb->iPicBuffIdx; |
| @@ -1090,9 +1087,9 @@ void CWelsDecoder::ReleaseBufferedReadyPicture (PWelsDecoderContext pCtx, unsign · 35 unmodified lines | |||
| 1090 | #endif | 1087 | #endif |
| 1091 | #endif | 1088 | #endif |
| 1092 | memcpy (pDstInfo, &m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].sBufferInfo, sizeof (SBufferInfo)); | 1089 | memcpy (pDstInfo, &m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].sBufferInfo, sizeof (SBufferInfo)); |
| 1093 | ppDst[0] = m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].pData[0]; | 1090 | ppDst[0] = pDstInfo->pDst[0]; |
| 1094 | ppDst[1] = m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].pData[1]; | 1091 | ppDst[1] = pDstInfo->pDst[1]; |
| 1095 | ppDst[2] = m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].pData[2]; | 1092 | ppDst[2] = pDstInfo->pDst[2]; |
| 1096 | m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].iPOC = IMinInt32; | 1093 | m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].iPOC = IMinInt32; |
| 1097 | PPicture pPic = pPicBuff->ppPic[m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].iPicBuffIdx]; | 1094 | PPicture pPic = pPicBuff->ppPic[m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].iPicBuffIdx]; |
| 1098 | --pPic->iRefCount; | 1095 | --pPic->iRefCount; |
| @@ -1123,9 +1120,9 @@ void CWelsDecoder::ReleaseBufferedReadyPicture (PWelsDecoderContext pCtx, unsign · 24 unmodified lines | |||
| 1123 | } | 1120 | } |
| 1124 | if (uiDecodingTimeStamp > 0) { | 1121 | if (uiDecodingTimeStamp > 0) { |
| 1125 | memcpy (pDstInfo, &m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].sBufferInfo, sizeof (SBufferInfo)); | 1122 | memcpy (pDstInfo, &m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].sBufferInfo, sizeof (SBufferInfo)); |
| 1126 | ppDst[0] = m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].pData[0]; | 1123 | ppDst[0] = pDstInfo->pDst[0]; |
| 1127 | ppDst[1] = m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].pData[1]; | 1124 | ppDst[1] = pDstInfo->pDst[1]; |
| 1128 | ppDst[2] = m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].pData[2]; | 1125 | ppDst[2] = pDstInfo->pDst[2]; |
| 1129 | m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].iPOC = IMinInt32; | 1126 | m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].iPOC = IMinInt32; |
| 1130 | PPicture pPic = pPicBuff->ppPic[m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].iPicBuffIdx]; | 1127 | PPicture pPic = pPicBuff->ppPic[m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].iPicBuffIdx]; |
| 1131 | --pPic->iRefCount; | 1128 | --pPic->iRefCount; |
| @@ -1164,9 +1161,9 @@ void CWelsDecoder::ReleaseBufferedReadyPicture (PWelsDecoderContext pCtx, unsign · 32 unmodified lines | |||
| 1164 | #endif | 1161 | #endif |
| 1165 | #endif | 1162 | #endif |
| 1166 | memcpy (pDstInfo, &m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].sBufferInfo, sizeof (SBufferInfo)); | 1163 | memcpy (pDstInfo, &m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].sBufferInfo, sizeof (SBufferInfo)); |
| 1167 | ppDst[0] = m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].pData[0]; | 1164 | ppDst[0] = pDstInfo->pDst[0]; |
| 1168 | ppDst[1] = m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].pData[1]; | 1165 | ppDst[1] = pDstInfo->pDst[1]; |
| 1169 | ppDst[2] = m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].pData[2]; | 1166 | ppDst[2] = pDstInfo->pDst[2]; |
| 1170 | m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].iPOC = IMinInt32; | 1167 | m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].iPOC = IMinInt32; |
| 1171 | PPicture pPic = pPicBuff->ppPic[m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].iPicBuffIdx]; | 1168 | PPicture pPic = pPicBuff->ppPic[m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].iPicBuffIdx]; |
| 1172 | --pPic->iRefCount; | 1169 | --pPic->iRefCount; |