Showing the changes to codec/api (2 of 6 files). Show all
Unified · Split
| @@ -106,6 +106,14 @@ class ISVCDecoder { · 105 unmodified lines | |||
| 106 | unsigned char** ppDst, | 106 | unsigned char** ppDst, |
| 107 | SBufferInfo* pDstInfo) = 0; | 107 | SBufferInfo* pDstInfo) = 0; |
| 108 | 108 | ||
| 109 | /* | ||
| 110 | * This function parse input bitstream only, and rewrite possible SVC syntax to AVC syntax | ||
| 111 | * return: 0 - success; otherwise -failed; | ||
| 112 | */ | ||
| 113 | virtual DECODING_STATE EXTAPI DecodeParser (const unsigned char* pSrc, | ||
| 114 | const int iSrcLen, | ||
| 115 | SParserBsInfo* pDstInfo) = 0; | ||
| 116 | |||
| 109 | /* | 117 | /* |
| 110 | * this API does not work for now!! This is for future use to support non-I420 color format output. | 118 | * this API does not work for now!! This is for future use to support non-I420 color format output. |
| 111 | */ | 119 | */ |
| @@ -169,6 +177,10 @@ DECODING_STATE (*DecodeFrame2) (ISVCDecoder*, const unsigned char* pSrc, · 57 unmodified lines | |||
| 169 | unsigned char** ppDst, | 177 | unsigned char** ppDst, |
| 170 | SBufferInfo* pDstInfo); | 178 | SBufferInfo* pDstInfo); |
| 171 | 179 | ||
| 180 | DECODING_STATE (*DecodeParser) (ISVCDecoder*, const unsigned char* pSrc, | ||
| 181 | const int iSrcLen, | ||
| 182 | SParserBsInfo* pDstInfo); | ||
| 183 | |||
| 172 | DECODING_STATE (*DecodeFrameEx) (ISVCDecoder*, const unsigned char* pSrc, | 184 | DECODING_STATE (*DecodeFrameEx) (ISVCDecoder*, const unsigned char* pSrc, |
| 173 | const int iSrcLen, | 185 | const int iSrcLen, |
| 174 | unsigned char* pDst, | 186 | unsigned char* pDst, |
| @@ -447,4 +447,12 @@ typedef struct TagDecoderCapability { · 446 unmodified lines | |||
| 447 | bool bRedPicCap; | 447 | bool bRedPicCap; |
| 448 | } SDecoderCapability; | 448 | } SDecoderCapability; |
| 449 | 449 | ||
| 450 | typedef struct TagParserBsInfo { | ||
| 451 | int iNalNum; //total NAL number in current AU | ||
| 452 | int iNalLenInByte [MAX_NAL_UNITS_IN_LAYER]; //each nal length | ||
| 453 | unsigned char* pDstBuff; //outputted dst buffer for parsed bitstream | ||
| 454 | int iSpsWidthInPixel; //required SPS width info | ||
| 455 | int iSpsHeightInPixel; //required SPS height info | ||
| 456 | } SParserBsInfo, PParserBsInfo; | ||
| 457 | |||
| 450 | #endif//WELS_VIDEO_CODEC_APPLICATION_DEFINITION_H__ | 458 | #endif//WELS_VIDEO_CODEC_APPLICATION_DEFINITION_H__ |