History

add EC frame/slice copy.

huili2 committed 12 years ago

Commit bc2c4b01 parent b2f71919 files · +156 −21Browse files

Showing the changes to codec/decoder/core/inc (3 of 9 files). Show all

Unified · Split

3 files
  1. codec/decoder/core/inc/dec_frame.h +1 −0
  2. codec/decoder/core/inc/decoder_context.h +3 −1
  3. codec/decoder/core/inc/error_concealment.h +1 −1
codec/decoder/core/inc/dec_frame.h+1−0
@@ -74,6 +74,7 @@ struct TagDqLayer { · 73 unmodified lines
7474 int8_t (*pNzcRs)[24];
7575 int8_t* pResidualPredFlag;
7676 int8_t* pInterPredictionDoneFlag;
77+ bool* pMbCorrectlyDecodedFlag;
7778 int16_t (*pScaledTCoeff)[MB_COEFF_LIST_SIZE];
7879 int8_t (*pIntraPredMode)[8]; //0~3 top4x4 ; 4~6 left 4x4; 7 intra16x16
7980 int8_t (*pIntra4x4FinalMode)[MB_BLOCK4x4_NUM];
codec/decoder/core/inc/decoder_context.h+3−1
@@ -211,6 +211,7 @@ typedef struct TagWelsDecoderContext { · 210 unmodified lines
211211 int32_t* pSliceIdc[LAYER_NUM_EXCHANGEABLE]; // using int32_t for slice_idc
212212 int8_t* pResidualPredFlag[LAYER_NUM_EXCHANGEABLE];
213213 int8_t* pInterPredictionDoneFlag[LAYER_NUM_EXCHANGEABLE];
214+ bool* pMbCorrectlyDecodedFlag[LAYER_NUM_EXCHANGEABLE];
214215 uint32_t iMbWidth;
215216 uint32_t iMbHeight;
216217 } sMb;
@@ -279,6 +280,7 @@ typedef struct TagWelsDecoderContext { · 62 unmodified lines
279280 #endif
280281 bool bNewSeqBegin;
281282 int32_t iErrorConMethod; //
283+ PPicture pPreviousDecodedPictureInDpb; //pointer to previously decoded picture in DPB for error concealment
282284 PGetIntraPredFunc pGetI16x16LumaPredFunc[7]; //h264_predict_copy_16x16;
283285 PGetIntraPredFunc pGetI4x4LumaPredFunc[14]; // h264_predict_4x4_t
284286 PGetIntraPredFunc pGetIChromaPredFunc[7]; // h264_predict_8x8_t
@@ -293,7 +295,7 @@ typedef struct TagWelsDecoderContext { · 8 unmodified lines
293295
294296 /* For Block */
295297 SBlockFunc sBlockFunc;
296− /* For EC */
298+
297299 int32_t iCurSeqIntervalTargetDependId;
298300 int32_t iCurSeqIntervalMaxPicWidth;
299301 int32_t iCurSeqIntervalMaxPicHeight;
codec/decoder/core/inc/error_concealment.h+1−1
@@ -54,7 +54,7 @@ int32_t MarkECFrameAsRef (PWelsDecoderContext pCtx); · 53 unmodified lines
5454 bool NeedErrorCon (PWelsDecoderContext pCtx);
5555 // ImplementErrorConceal
5656 // Do actual error concealment
57−int32_t ImplementErrorCon (PWelsDecoderContext pCtx);
57+void ImplementErrorCon (PWelsDecoderContext pCtx);
5858
5959 } // namespace WelsDec
6060

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