contrib: vpx: update to 1.15.0
This release includes new codec control for key frame filtering, more Neon optimizations, improvements to RTC encoding and bug fixes.
- Upgrading: This release is ABI compatible with the previous release. Temporal filtering improvement that can be turned on with the new codec control VP9E_SET_KEY_FRAME_FILTERING, which gives 1+% BD-rate saving with minimal encoder time increase. libwebm is upgraded to libwebm-1.0.0.31-10-g3b63004
- Enhancement: Neon optimization speed up Scene detection is allowed for all RTC speeds (>=5) Support profile guided optimizations Delta quantization parameters for UV channels for vp8 is supported in RTC rate control library Rate control parameters are reset and maximum QP is enforced on scene changes in SVC when there is no inter-layer prediction
- Bug fixes:
Fix to Uninitialized scalar variable in
vp9_rd_pick_inter_mode_sb()Fix to Integer-overflow inresize_multistepFix to Heap-buffer-overflow invpx_sad64x64_avx2Fix to Crash invpx_sad8x8_sse2Fix to Assertion inwrite_modesSupport profile guided optimizations Fix to Integer-overflow inencode_frame_to_data_rateFix to Integer-overflow invp9_svc_check_reset_layer_rc_flagFix to core dump error from /usr/bin/tools/tiny_ssim --help Fix to use-of-uninitialized-value invp9_setup_tpl_statsFix to Undefined-shift invp9_cyclic_refresh_setupFix to redundant&& __GNUC__preproc check Fix to valgrind warning in EncodeAPI.OssFuzz69906 Fix to Index-out-of-bounds invp8_rd_pick_inter_modeFix to Integer-overflow invp8_pick_frame_sizeFix to Use-of-uninitialized-value invpx_codec_peek_stream_infoFix to log clutters with the message "Warning: Desired height too large" Fix to Integer-overflow invp9_svc_adjust_avg_frame_qindexFix to integer overflows caused by huge target bitrate, frame rate, or g_timebase numerator or denominator Fix to missing license headers Fix to build failure for Android Armv7 Fix to integer overflows in image helpers Fix to Integer-overflow invp9_calc_iframe_target_size_one_pass_cbrFix to Heap-buffer-overflow invp9_pick_inter_modeFix to Segv invp9_multi_thread_tile_initFix to Use-of-uninitialized-value invp9_row_mt_sync_mem_deallocFix to Crash inmbloop_filter_vertical_edge_cFix to Check failed in CheckUnwind Fix to Heap-buffer-overflow inwrite_modes_bandvpx_writeFix to Possible signed integer overflow found invpx_codec_encodeFix to build conflicts between Abseil and libaom/libvpx in Win ARM64 builds Fix to build failures on aarch64 Fix to Data race in libvpx ARM NEON Fix to Heap-buffer-overflow inscale_plane_1_to_2_phase_0Fix to integer overflow inencode_mb_rowFix to Floating-point-exception invp8_pick_frame_sizeFix to Heap-buffer-overflow invp9_enc_setup_miFix to build failure with --target=arm64-win64-vs17 Fix to heap-buffer-overflow write invpx_img_read()Fix to C vs armv8-linux-gcc encode mismatches fory4m_360p_10bit_inputFix to Null-dereference READ inml_predict_var_rd_partitioningFix to Heap-buffer-overflow invpx_scaled_2d_ssse3Fix to Crash inconvolve_horizFix to Ill invpx_scaled_2d_ssse3Fix to Global-buffer-overflow incost_coeffs