| 8 | //TODO: consider using BaseEncoderTest class from #include "../BaseEncoderTest.h" |
| 9 | |
| 10 | class EncoderInterfaceTest : public ::testing::Test { |
| 11 | #define MB_SIZE (16) |
| 12 | #define MAX_WIDTH (3840) |
| 13 | #define MAX_HEIGHT (2160) |
| 14 | #define VALID_SIZE(iSize) (((iSize)>16)?(iSize):16) |
| 15 | #define MEM_VARY_SIZE (512) |
| 16 | #define IMAGE_VARY_SIZE (512) |
| 17 | #define TEST_FRAMES (30) |
| 18 | |
| 19 | #define NAL_HEADER_BYTES (4) |
| 20 | #define NAL_TYPE (0x0F) |
| 21 | #define SPS_NAL_TYPE (7) |
| 22 | #define PPS_NAL_TYPE (8) |
| 23 | #define SUBSETSPS_NAL_TYPE (15) |
| 24 | #define GET_NAL_TYPE(pNalStart) (*(pNalStart+NAL_HEADER_BYTES) & NAL_TYPE) |
| 25 | #define IS_PARASET(iNalType) ((iNalType==SPS_NAL_TYPE) || (iNalType==PPS_NAL_TYPE) || (iNalType==SUBSETSPS_NAL_TYPE)) |
| 26 | |
| 27 | public: |
| 28 | virtual void SetUp() { |
| 29 | int rv = WelsCreateSVCEncoder (&pPtrEnc); |
| 30 | ASSERT_EQ (0, rv); |
| 31 | ASSERT_TRUE (pPtrEnc != NULL); |
| 32 | |
| 33 | unsigned int uiTraceLevel = WELS_LOG_ERROR; |
| 34 | pPtrEnc->SetOption (ENCODER_OPTION_TRACE_LEVEL, &uiTraceLevel); |
| 35 | |
| 36 | pParamExt = new SEncParamExt(); |
| 37 | ASSERT_TRUE (pParamExt != NULL); |
| 38 | |
| 39 | pSrcPic = new SSourcePicture; |
| 40 | ASSERT_TRUE (pSrcPic != NULL); |
| 41 | |
| 42 | pOption = new SEncParamExt(); |
| 43 | ASSERT_TRUE (pOption != NULL); |
| 44 | |
| 45 | pYUV = NULL; |
| 46 | m_iWidth = MAX_WIDTH; |
| 47 | m_iHeight = MAX_HEIGHT; |
| 48 | m_iPicResSize = m_iWidth * m_iHeight * 3 >> 1; |
| 49 | pYUV = new unsigned char [m_iPicResSize]; |
| 50 | ASSERT_TRUE (pYUV != NULL); |
| 51 | } |
| 52 | |
| 53 | virtual void TearDown() { |
| 54 | delete pParamExt; |
| 55 | delete pOption; |
| 56 | delete pSrcPic; |
| 57 | delete []pYUV; |
| 58 | if (pPtrEnc) { |
| 59 | WelsDestroySVCEncoder (pPtrEnc); |
| 60 | pPtrEnc = NULL; |
| 61 | } |
| 62 | } |
| 63 | |
| 64 | void InitializeParamExt(); |
| 65 | void SetRandomParams(); |
| 66 | void TemporalLayerSettingTest(); |
| 67 | void MemoryCheckTest(); |
nothing calls this directly
no outgoing calls
no test coverage detected