Merge pull request #2157 from sijchen/mb
Sync from release 1.5 on API and release notes, etc.
This commit is contained in:
commit
10179539cf
4
Makefile
4
Makefile
@ -33,8 +33,8 @@ GMP_API_BRANCH=Firefox39
|
||||
CCASFLAGS=$(CFLAGS)
|
||||
STATIC_LDFLAGS=-lstdc++
|
||||
|
||||
VERSION=1.4
|
||||
SHAREDLIBVERSION=0
|
||||
VERSION=1.5
|
||||
SHAREDLIBVERSION=1
|
||||
|
||||
ifeq (,$(wildcard $(SRC_PATH)gmp-api))
|
||||
HAVE_GMP_API=No
|
||||
|
28
RELEASES
28
RELEASES
@ -1,6 +1,34 @@
|
||||
|
||||
Releases
|
||||
-----------
|
||||
v1.5.0
|
||||
------
|
||||
- Correct a typo in codec return value (github issue#2046, cmUnkonwReason -> cmUnknownReason)
|
||||
- Added Codec demo and auto build script for WP8
|
||||
- Decoder support of 'Constrained High Profile' of H.264
|
||||
- Encoder support of CABAC of H.264
|
||||
- Encoder support of input frame rate 60
|
||||
- Improved syntax of gaps_in_frame_num_value_allowed_flag in encoder
|
||||
- Improved memory usage for multi-threading in encoder
|
||||
- Added VUI info for base layer in encoder
|
||||
- Added encoder interface to get external setting of iMaxQp and iMinQp for rate control
|
||||
- Bug fixes for Rate Control, multi-threading and simulcasting in encoder
|
||||
- Bug fixes for NoDelay API, ParseOnly functions, error-concealment off functiond and error-detection in decoder
|
||||
- Bug fixes for UT
|
||||
- Fixes to avoid valgrind warnings, potential crash and calculation overflow
|
||||
- Merged files for decoder/encoder and remove unused files
|
||||
- Improvements on build scripts, UT, error-protection in decoder, input param checking in encoder, assembly for 64bit support, downsampling, logging and documentation
|
||||
|
||||
Note:
|
||||
'Constrained High Profile' = 'Constrained Baseline Profile' plus:
|
||||
- CABAC
|
||||
- Intra 8x8 mode support
|
||||
- 8x8 transform
|
||||
- QP scaling matrices
|
||||
- QP per chroma component
|
||||
- Mono 4:0:0 (experimental)
|
||||
- Weighted prediction
|
||||
|
||||
v1.4.0
|
||||
------
|
||||
- Decoder new interface of DecodeFrameNoDelay
|
||||
|
@ -80,7 +80,7 @@ typedef enum {
|
||||
typedef enum {
|
||||
cmResultSuccess, ///< successful
|
||||
cmInitParaError, ///< parameters are invalid
|
||||
cmUnkonwReason,
|
||||
cmUnknownReason,
|
||||
cmMallocMemeError, ///< malloc a memory error
|
||||
cmInitExpected, ///< initial action is expected
|
||||
cmUnsupportedData
|
||||
|
@ -4,12 +4,12 @@
|
||||
|
||||
#include "codec_app_def.h"
|
||||
|
||||
static const OpenH264Version g_stCodecVersion = {1, 4, 1, 0};
|
||||
static const char* const g_strCodecVer = "OpenH264 version:1.4.1.0";
|
||||
static const OpenH264Version g_stCodecVersion = {1, 5, 0, 0};
|
||||
static const char* const g_strCodecVer = "OpenH264 version:1.5.0.0";
|
||||
|
||||
#define OPENH264_MAJOR (1)
|
||||
#define OPENH264_MINOR (4)
|
||||
#define OPENH264_REVISION (1)
|
||||
#define OPENH264_MINOR (5)
|
||||
#define OPENH264_REVISION (0)
|
||||
#define OPENH264_RESERVED (0)
|
||||
|
||||
#endif // CODEC_VER_H
|
||||
|
@ -408,7 +408,7 @@ int CWelsH264SVCEncoder ::EncodeFrameInternal (const SSourcePicture* pSrcPic, S
|
||||
} else if ((kiEncoderReturn != ENC_RETURN_SUCCESS) && (kiEncoderReturn == ENC_RETURN_CORRECTED)) {
|
||||
WelsLog (&m_pWelsTrace->m_sLogCtx, WELS_LOG_ERROR, "unexpected return(%d) from EncodeFrameInternal()!",
|
||||
kiEncoderReturn);
|
||||
return cmUnkonwReason;
|
||||
return cmUnknownReason;
|
||||
}
|
||||
|
||||
UpdateStatistics (pSrcPic->uiTimeStamp, pBsInfo->eFrameType, pBsInfo->iFrameSizeInBytes, kiCurrentFrameMs);
|
||||
|
@ -1,4 +1,4 @@
|
||||
Name: gmpopenh264
|
||||
Description: GMP Plugin for OpenH264.
|
||||
Version: 1.4
|
||||
Version: 1.5
|
||||
APIs: encode-video[h264], decode-video[h264]
|
||||
|
@ -24,8 +24,8 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 1,4,1,0
|
||||
PRODUCTVERSION 1,4,1,0
|
||||
FILEVERSION 1,5,0,0
|
||||
PRODUCTVERSION 1,5,0,0
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
@ -43,12 +43,12 @@ BEGIN
|
||||
VALUE "Comments", "Cisco OpenH264 codec"
|
||||
VALUE "CompanyName", "Cisco Systems Inc."
|
||||
VALUE "FileDescription", "Cisco OpenH264 codec"
|
||||
VALUE "FileVersion", "1.4.1.0"
|
||||
VALUE "FileVersion", "1.5.0.0"
|
||||
VALUE "InternalName", "openh264.dll"
|
||||
VALUE "LegalCopyright", "© 2011-2015 Cisco and/or its affiliates. All rights reserved."
|
||||
VALUE "OriginalFilename", "openh264.dll"
|
||||
VALUE "ProductName", "Cisco OpenH264 codec"
|
||||
VALUE "ProductVersion", "1.4.1.0"
|
||||
VALUE "ProductVersion", "1.5.0.0"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
|
@ -204,7 +204,7 @@ class EncodeDecodeTestAPIBase : public EncodeDecodeTestBase {
|
||||
if (0 == iCheckTypeIndex)
|
||||
ASSERT_TRUE (rv == cmResultSuccess);
|
||||
else if (1 == iCheckTypeIndex)
|
||||
ASSERT_TRUE (rv == cmResultSuccess || rv == cmUnkonwReason);
|
||||
ASSERT_TRUE (rv == cmResultSuccess || rv == cmUnknownReason);
|
||||
}
|
||||
|
||||
void EncDecOneFrame (const int iWidth, const int iHeight, const int iFrame, FILE* pfEnc) {
|
||||
@ -990,7 +990,7 @@ TEST_P (EncodeDecodeTestAPI, GetOptionLTR_ALLLTR) {
|
||||
if (m_LTR_Recover_Request.uiFeedbackType == IDR_RECOVERY_REQUEST) {
|
||||
ASSERT_TRUE (info.eFrameType == videoFrameTypeIDR);
|
||||
}
|
||||
ASSERT_TRUE (rv == cmResultSuccess || rv == cmUnkonwReason);
|
||||
ASSERT_TRUE (rv == cmResultSuccess || rv == cmUnknownReason);
|
||||
m_LTR_Recover_Request.uiFeedbackType = LTR_RECOVERY_REQUEST;
|
||||
m_LTR_Recover_Request.iCurrentFrameNum = rand() % 2 == 1 ? -rand() % 10000 : rand() % 10000;
|
||||
m_LTR_Recover_Request.uiIDRPicId = rand() % 2 == 1 ? -rand() % 10000 : rand() % 10000;
|
||||
@ -2277,7 +2277,7 @@ class DecodeCrashTestAPI : public ::testing::TestWithParam<EncodeDecodeFileParam
|
||||
memset (buf_.data(), iRandValue, (frameSize >> 2));
|
||||
memset (buf_.data() + (frameSize >> 2), rand() % 256, (frameSize - (frameSize >> 2)));
|
||||
int rv = encoder_->EncodeFrame (&EncPic, &info);
|
||||
ASSERT_TRUE (rv == cmResultSuccess || rv == cmUnkonwReason);
|
||||
ASSERT_TRUE (rv == cmResultSuccess || rv == cmUnknownReason);
|
||||
}
|
||||
protected:
|
||||
unsigned char* ucBuf_;
|
||||
@ -2562,7 +2562,7 @@ class DecodeParseAPI : public ::testing::TestWithParam<EncodeDecodeFileParamBase
|
||||
ASSERT_TRUE (iSize == iFrameSize);
|
||||
}
|
||||
int rv = encoder_->EncodeFrame (&EncPic, &info);
|
||||
ASSERT_TRUE (rv == cmResultSuccess || rv == cmUnkonwReason);
|
||||
ASSERT_TRUE (rv == cmResultSuccess || rv == cmUnknownReason);
|
||||
}
|
||||
|
||||
void prepareParam (int iLayerNum, int iSliceNum, int width, int height, float framerate, SEncParamExt* pParam) {
|
||||
@ -3505,7 +3505,7 @@ class EncodeTestAPI : public ::testing::TestWithParam<EncodeOptionParam>, public
|
||||
if (0 == iCheckTypeIndex)
|
||||
ASSERT_TRUE (rv == cmResultSuccess) << "rv=" << rv;
|
||||
else if (1 == iCheckTypeIndex)
|
||||
ASSERT_TRUE (rv == cmResultSuccess || rv == cmUnkonwReason) << "rv=" << rv;
|
||||
ASSERT_TRUE (rv == cmResultSuccess || rv == cmUnknownReason) << "rv=" << rv;
|
||||
}
|
||||
};
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user