Showing the changes to test/api/BaseEncoderTest.cpp (1 of 5 files). Show all
Unified · Split
| @@ -6,8 +6,8 @@ · 5 unmodified lines | |||
| 6 | #include "BaseEncoderTest.h" | 6 | #include "BaseEncoderTest.h" |
| 7 | 7 | ||
| 8 | static int InitWithParam (ISVCEncoder* encoder, EUsageType usageType, int width, | 8 | static int InitWithParam (ISVCEncoder* encoder, EUsageType usageType, int width, |
| 9 | int height, float frameRate, SliceModeEnum sliceMode, bool denoise, int layers) { | 9 | int height, float frameRate, SliceModeEnum sliceMode, bool denoise, int layers, bool losslessLink, bool enableLtr) { |
| 10 | if (SM_SINGLE_SLICE == sliceMode && !denoise && layers == 1) { | 10 | if (SM_SINGLE_SLICE == sliceMode && !denoise && layers == 1 && !losslessLink && !enableLtr) { |
| 11 | SEncParamBase param; | 11 | SEncParamBase param; |
| 12 | memset (¶m, 0, sizeof (SEncParamBase)); | 12 | memset (¶m, 0, sizeof (SEncParamBase)); |
| 13 | 13 | ||
| @@ -29,6 +29,8 @@ static int InitWithParam (ISVCEncoder* encoder, EUsageType usageType, int width, · 15 unmodified lines | |||
| 29 | param.iTargetBitrate = 5000000; | 29 | param.iTargetBitrate = 5000000; |
| 30 | param.bEnableDenoise = denoise; | 30 | param.bEnableDenoise = denoise; |
| 31 | param.iSpatialLayerNum = layers; | 31 | param.iSpatialLayerNum = layers; |
| 32 | param.bIsLosslessLink = losslessLink; | ||
| 33 | param.bEnableLongTermReference = enableLtr; | ||
| 32 | 34 | ||
| 33 | if (sliceMode != SM_SINGLE_SLICE && sliceMode != SM_DYN_SLICE) //SM_DYN_SLICE don't support multi-thread now | 35 | if (sliceMode != SM_SINGLE_SLICE && sliceMode != SM_DYN_SLICE) //SM_DYN_SLICE don't support multi-thread now |
| 34 | param.iMultipleThreadIdc = 2; | 36 | param.iMultipleThreadIdc = 2; |
| @@ -67,8 +69,8 @@ void BaseEncoderTest::TearDown() { · 32 unmodified lines | |||
| 67 | } | 69 | } |
| 68 | 70 | ||
| 69 | void BaseEncoderTest::EncodeStream (InputStream* in, EUsageType usageType, int width, int height, | 71 | void BaseEncoderTest::EncodeStream (InputStream* in, EUsageType usageType, int width, int height, |
| 70 | float frameRate, SliceModeEnum slices, bool denoise, int layers, Callback* cbk) { | 72 | float frameRate, SliceModeEnum slices, bool denoise, int layers, bool losslessLink, bool enableLtr, Callback* cbk) { |
| 71 | int rv = InitWithParam (encoder_, usageType, width, height, frameRate, slices, denoise, layers); | 73 | int rv = InitWithParam (encoder_, usageType, width, height, frameRate, slices, denoise, layers, losslessLink, enableLtr); |
| 72 | ASSERT_TRUE (rv == cmResultSuccess); | 74 | ASSERT_TRUE (rv == cmResultSuccess); |
| 73 | 75 | ||
| 74 | // I420: 1(Y) + 1/4(U) + 1/4(V) | 76 | // I420: 1(Y) + 1/4(U) + 1/4(V) |
| @@ -101,8 +103,8 @@ void BaseEncoderTest::EncodeStream (InputStream* in, EUsageType usageType, int w · 26 unmodified lines | |||
| 101 | } | 103 | } |
| 102 | 104 | ||
| 103 | void BaseEncoderTest::EncodeFile (const char* fileName, EUsageType usageType, int width, int height, | 105 | void BaseEncoderTest::EncodeFile (const char* fileName, EUsageType usageType, int width, int height, |
| 104 | float frameRate, SliceModeEnum slices, bool denoise, int layers, Callback* cbk) { | 106 | float frameRate, SliceModeEnum slices, bool denoise, int layers, bool losslessLink, bool enableLtr, Callback* cbk) { |
| 105 | FileInputStream fileStream; | 107 | FileInputStream fileStream; |
| 106 | ASSERT_TRUE (fileStream.Open (fileName)); | 108 | ASSERT_TRUE (fileStream.Open (fileName)); |
| 107 | EncodeStream (&fileStream, usageType, width, height, frameRate, slices, denoise, layers, cbk); | 109 | EncodeStream (&fileStream, usageType, width, height, frameRate, slices, denoise, layers, losslessLink, enableLtr, cbk); |
| 108 | } | 110 | } |