Nagram/TMessagesProj/jni/third_party/openh264/RELEASES
2021-07-15 17:24:57 +03:00

347 lines
16 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Releases
-----------
v2.1.0
------
- Experimentally support for multi-thread decoding(default disabled,and may result in random problems if enabled)
- Assembly optimization for loongson platform
- Update meson version to 5
- Some minor bug fixes
v2.0.0
------
- B-frame decoding support for Main and High Profile with two test cases
- Add support for loongson(https://en.wikipedia.org/wiki/Loongson) platform
- Add clang support for arm/arm64/x86 for NDK version over 17
- Enable stack protector
- Add some test cases
- Avoid using C++/CX code for threads for Windows Phone/Windows Store/UWP
- Remove extra visual studio projects for the decoder
- Remove check for working compiler in NDK
- Bug fixes
v1.8.0
------
- Add meson build for Linux/Windows platform
- Disable background detection for screen route
- Add a workaround for Visual Studio 2013 C++ x64 compiler bug on AVX2. That bug will cause crash and has been fixed in Visual Studio 2014
- Change the default profile from baseline to high if user does not set it and CABAC is specified
- Skip frames that are marked as IDR due to scene change and simultaneously marked as skip frame to reduce bit rate
- Refine threshold calculation algorithms for rate control in lower frame rate to get better effect
- Encoder return with a specific return value instead of uninitialize encoder when input resolution is invalid
- Refine strategy on level change to avoid frequent IDR. Encoder will not be reset if level is changed to a smaller one
- Support to set the min and max QP values on screen content mode
- Fix a memory issue that may cause encoder crash when temporal layer change
- Corrected some statistics information
- Refine error concealment algorithms to improve user experience
- Support to get information about current output picture is reference picture or not on decoder side
- Bug fix for decoder when 8x8 prediction mode is enabled on the input bitstream
- Enable NEON for ChromeOS devices
- Support for Fuchsia operating systerm
- Support for building arm64 with MSVC
- Remove some warnings when building with MSVC
- Fix clang compiler error when building arm assembly funtions
- Bug fixes for unit test
v1.7.0
------
- Changed SPS/PPS strategy option name,See enum ENCODER_OPTION
- Changed NAL size length parameter from static array to pointer to support more NALs.See struct SParserBsInfo
- Changed semaphores to condition variables on apple platform
- Changed version update mechanism as Major.Minor.patch,like 1.7.0
- Supported to force IDR independently for each layer in simulcast AVC case.See API ForceIntraFrame()
- Supported LTR request independently for each layer in simulcast AVC case.See struct SLTRRecoverRequest and SLTRMarkingFeedback
- Supported to set sample aspect ratio in VUI on encoder side. See struct SSpatialLayerConfig
- Supported to set profile and level, changed the default level as 4.1 if the user doesnt set it. See enum ELevelIdc
- Supported to get profile and level info on decoder side.See enum DECODER_OPTION
- Supported for enable/disable AVX2 build option. Build option: HAVE_AVX2
- Supported to set decoder statistics log interval, Add DECODER_OPTION_STATISTICS_LOG_INTERVAL.See DECODER_OPTION.
- Supported for AU delimiter NAL on decoder side. AU delimiter refers to section 7.3.2.4
- Supported for x86 PIC assembly and build option. Build option: ENABLEPIC. git issues:#2263 #2534
- Supported for Cygwin x86_64 build
- Supported to get sample aspect ratio by GetOption on decoder. Add option: DECODER_OPTION_GET_SAR_INFO
- Set constraint_set4_flag constraint_set5_flag to align to CHP definition in latest H264 standard
- Improved VUI support on decoder side
- Improved decoder statistics info output
- Refined the return value when failed in memory allocation
- Added SSSE3 motion compensation routines
- Added AVX2 motion compensation routines
- Optimization on some of SSE2/MMX functions
- Refactor rate control for RC_BUFFERBASED_MODE and RC_QUALITY_MODE mode
- Added more unit tests for random resolution input,slice mode switch,profile/level setting
- Refined logs
- Bug fixes for 4:0:0 format support on decoder
- Bug fixes for complexity calculation for screen content mode
- Bug fixes for loadbalancing turn on, git issue:#2618
- Bug fixes for parser subsps, scalling list, parser longer bitstream
v1.6.0
------
- Adjusted the encoder API structures
- Removed the unused data format in decoder API
- Encoder support of simulcast AVC
- Added support of video signal type present information
- Added support of encoder load-balancing
- Improved encoder multi-threads, rate control and down-sampling
- Fixed the frame size constraint in encoder
- Bug fixes for rate control, multi-threading, simulcasting in encoder
- Bug fixes for interface call, return value check, memory leak in decoder
- Bug fixes for UT and statistic information
- Bug fixes for assembly code
- Remove the unused and redundant code
- Improvements on UT, memory allocation failed protection, error-protection in decoder, input parameters checking in encoder, assembly for AVX2 support, assembly code performance, logging and documentation
- Correct some typos in source code and documents
v1.5.3
------
- Bug fixes for GMP Plugin
v1.5.2
------
- Fix GMP Plugin causing the Browser crash on Android
v1.5.1
------
- Bug fixes for GMP Plugin
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
- Added new encoder and decoder statistics
- Added option for generating pdb in windows builds
- Added new rate control mode (RC_TIMESTAMP_MODE) for inconstant frame rate input
- Added new Sps/Pps strategies for real-time video
— Added support for simulcast avc
- Improvements in code structure, assembly, input parameter checking, logging, UT and comments
- In gmp-openh264, return decoder error correctly and other fixes
- Decoder bug fixes when for Error Concealment disabled
- Bug fixes for ParseOnly functions
- Bug fixes for encoding large frame size (>32767MBs)
- Fixes to avoid valgrind warnings, potential crash and calculation overflow
-----------
v1.3.1
------
- Fixed and enhanced protection to avoid crash when reading lossy bitstreams
- Adjust the default mode of Error Concealment used by gmp-openh264
-----------
v1.3.0
------
- Removed manual API document, now using wiki: https://github.com/cisco/openh264/wiki (0af48e5 for v1.3.0)
- Added API version in API header files
- Added pkg-config file
- Added decoder support of parsing only (bParseOnly) for only parsing bit stream but not decoding
- Added timestamp and max nal size in gmp-openh264.cpp when calling encoding
- Added timestamp info in decoder input and return structure
- Added support of level 9 in decoder
- Added total length of the encoded frame in encoder return structure
- Added SetOption(ENCODER_OPTION_SVC_ENCODE_PARAM_BASE,&base) for encoder
- Set constraint set 0 and 1 flags for non-scalable
- Improved error concealment algorithms and provide more modes of error-concealment
- Improved rate control algorithms and reference selection algorithms for screen content encoding
- Added encoder and decoder statistics interface
- Improved input parameter checking and logging
- Bug fixes, warning reductions, and test improvements
-----------
v1.2.0
------
- Add and modify encoder APIs related to rate control and screen content encoding
- Remove PauseFrame in encoder APIs
- Improve rate control and compression ratio for screen content encoding
- Improve error concealment algorithm
- Improve validation of input parameters
- Add ARM64 assembly
- bug fixes
-----------
v1.1.0
------
- Modify some APIs (see API doc for detail)
- Improve the compression ratio of screen content encoding
- ARM64 assembly support for most of core functions in encoder & decoder
- Modify error concealment logic to always return decoding error info until IDR picture comes
- fix some bugs
Binaries
-----------
These binary releases are distributed under this license:
http://www.openh264.org/BINARY_LICENSE.txt
v2.1.0
http://ciscobinary.openh264.org/libopenh264-2.1.0-android-arm.so.bz2
http://ciscobinary.openh264.org/libopenh264-2.1.0-android-arm.so.sig.bz2
http://ciscobinary.openh264.org/libopenh264-2.1.0-android-arm64.so.bz2
http://ciscobinary.openh264.org/libopenh264-2.1.0-android-arm64.so.sig.bz2
http://ciscobinary.openh264.org/libopenh264-2.1.0-ios.a.bz2
http://ciscobinary.openh264.org/libopenh264-2.1.0-ios.a.sig.bz2
http://ciscobinary.openh264.org/libopenh264-2.1.0-linux32.5.so.bz2
http://ciscobinary.openh264.org/libopenh264-2.1.0-linux32.5.so.sig.bz2
http://ciscobinary.openh264.org/libopenh264-2.1.0-linux64.5.so.bz2
http://ciscobinary.openh264.org/libopenh264-2.1.0-linux64.5.so.sig.bz2
http://ciscobinary.openh264.org/libopenh264-2.1.0-osx32.5.dylib.bz2
http://ciscobinary.openh264.org/libopenh264-2.1.0-osx64.5.dylib.bz2
http://ciscobinary.openh264.org/openh264-2.1.0-win32.dll.bz2
http://ciscobinary.openh264.org/openh264-2.1.0-win64.dll.bz2
v2.0.0
------
http://ciscobinary.openh264.org/libopenh264-2.0.0-android.so.bz2
http://ciscobinary.openh264.org/libopenh264-2.0.0-android.so.sig.bz2
http://ciscobinary.openh264.org/libopenh264-2.0.0-ios.a.bz2
http://ciscobinary.openh264.org/libopenh264-2.0.0-ios.a.sig.bz2
http://ciscobinary.openh264.org/libopenh264-2.0.0-linux32.5.so.bz2
http://ciscobinary.openh264.org/libopenh264-2.0.0-linux32.5.so.sig.bz2
http://ciscobinary.openh264.org/libopenh264-2.0.0-linux64.5.so.bz2
http://ciscobinary.openh264.org/libopenh264-2.0.0-linux64.5.so.sig.bz2
http://ciscobinary.openh264.org/libopenh264-2.0.0-osx32.5.dylib.bz2
http://ciscobinary.openh264.org/libopenh264-2.0.0-osx64.5.dylib.bz2
http://ciscobinary.openh264.org/openh264-2.0.0-win32.dll.bz2
http://ciscobinary.openh264.org/openh264-2.0.0-win64.dll.bz2
v1.8.0
------
http://ciscobinary.openh264.org/libopenh264-1.8.0-android19.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.8.0-android19.so.sig.bz2
http://ciscobinary.openh264.org/libopenh264-1.8.0-ios.a.bz2
http://ciscobinary.openh264.org/libopenh264-1.8.0-ios.a.sig.bz2
http://ciscobinary.openh264.org/libopenh264-1.8.0-linux32.4.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.8.0-linux32.4.so.sig.bz2
http://ciscobinary.openh264.org/libopenh264-1.8.0-linux64.4.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.8.0-linux64.4.so.sig.bz2
http://ciscobinary.openh264.org/libopenh264-1.8.0-osx32.4.dylib.bz2
http://ciscobinary.openh264.org/libopenh264-1.8.0-osx64.4.dylib.bz2
http://ciscobinary.openh264.org/openh264-1.8.0-win32.dll.bz2
http://ciscobinary.openh264.org/openh264-1.8.0-win64.dll.bz2
v1.7.0
------
http://ciscobinary.openh264.org/libopenh264-1.7.0-android19.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.7.0-android19.so.sig.bz2
http://ciscobinary.openh264.org/libopenh264-1.7.0-ios.a.bz2
http://ciscobinary.openh264.org/libopenh264-1.7.0-ios.a.sig.bz2
http://ciscobinary.openh264.org/libopenh264-1.7.0-linux32.4.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.7.0-linux32.4.so.sig.bz2
http://ciscobinary.openh264.org/libopenh264-1.7.0-linux64.4.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.7.0-linux64.4.so.sig.bz2
http://ciscobinary.openh264.org/libopenh264-1.7.0-osx32.4.dylib.bz2
http://ciscobinary.openh264.org/libopenh264-1.7.0-osx64.4.dylib.bz2
http://ciscobinary.openh264.org/openh264-1.7.0-win32.dll.bz2
http://ciscobinary.openh264.org/openh264-1.7.0-win64.dll.bz2
v1.6.0
------
http://ciscobinary.openh264.org/libopenh264-1.6.0-android19.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.6.0-ios.a.bz2
http://ciscobinary.openh264.org/libopenh264-1.6.0-linux32.3.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.6.0-linux64.3.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.6.0-osx32.3.dylib.bz2
http://ciscobinary.openh264.org/libopenh264-1.6.0-osx64.3.dylib.bz2
http://ciscobinary.openh264.org/openh264-1.6.0-win32msvc.dll.bz2
http://ciscobinary.openh264.org/openh264-1.6.0-win64msvc.dll.bz2
v1.5.0
------
http://ciscobinary.openh264.org/libopenh264-1.5.0-android19.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.5.0-ios.a.bz2
http://ciscobinary.openh264.org/libopenh264-1.5.0-linux32.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.5.0-linux64.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.5.0-osx32.dylib.bz2
http://ciscobinary.openh264.org/libopenh264-1.5.0-osx64.dylib.bz2
http://ciscobinary.openh264.org/openh264-1.5.0-win32msvc.dll.bz2
http://ciscobinary.openh264.org/openh264-1.5.0-win64msvc.dll.bz2
v1.4.0
------
http://ciscobinary.openh264.org/libopenh264-1.4.0-android19.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.4.0-linux32.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.4.0-linux64.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.4.0-osx32.dylib.bz2
http://ciscobinary.openh264.org/libopenh264-1.4.0-osx64.dylib.bz2
http://ciscobinary.openh264.org/openh264-1.4.0-win32msvc.dll.bz2
http://ciscobinary.openh264.org/openh264-1.4.0-win64msvc.dll.bz2
v1.3.1
------
http://ciscobinary.openh264.org/libopenh264-1.3.1-android19.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.3.1-linux32.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.3.1-linux64.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.3.1-osx32.dylib.bz2
http://ciscobinary.openh264.org/libopenh264-1.3.1-osx64.dylib.bz2
http://ciscobinary.openh264.org/openh264-1.3.1-win32msvc.dll.bz2
http://ciscobinary.openh264.org/openh264-1.3.1-win64msvc.dll.bz2
v1.3.0
------
http://ciscobinary.openh264.org/libopenh264-1.3.0-android19.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.3.0-linux32.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.3.0-linux64.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.3.0-osx32.dylib.bz2
http://ciscobinary.openh264.org/libopenh264-1.3.0-osx64.dylib.bz2
http://ciscobinary.openh264.org/openh264-1.3.0-win32msvc.dll.bz2
http://ciscobinary.openh264.org/openh264-1.3.0-win64msvc.dll.bz2
v1.2.0
------
http://ciscobinary.openh264.org/libopenh264-1.2.0-android19.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.2.0-linux32.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.2.0-linux64.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.2.0-osx32.dylib.bz2
http://ciscobinary.openh264.org/libopenh264-1.2.0-osx64.dylib.bz2
http://ciscobinary.openh264.org/openh264-1.2.0-win32msvc.dll.bz2
http://ciscobinary.openh264.org/openh264-1.2.0-win64msvc.dll.bz2
v1.1.0
------
http://ciscobinary.openh264.org/libopenh264-1.1.0-android19.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.1.0-linux32.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.1.0-linux64.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.1.0-osx32.dylib.bz2
http://ciscobinary.openh264.org/libopenh264-1.1.0-osx64.dylib.bz2
http://ciscobinary.openh264.org/openh264-1.1.0-win32msvc.dll.bz2
http://ciscobinary.openh264.org/openh264-1.1.0-win64msvc.dll.bz2
v1.0.0
------
http://ciscobinary.openh264.org/libopenh264-1.0.0-android19.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.0.0-linux32.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.0.0-linux64.so.bz2
http://ciscobinary.openh264.org/libopenh264-1.0.0-osx64.dylib.bz2
http://ciscobinary.openh264.org/openh264-1.0.0-win32msvc.dll.bz2
http://ciscobinary.openh264.org/openh264-1.0.0-win64msvc.dll.bz2