archived-mpp/CHANGELOG.md
Herman Chen 4ed4f77864 docs: Update 1.0.11 CHANGELOG.md
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: Ia04f68f2cbbb973b4e97b0ef97937e6ad48c6c5c
2025-09-10 17:02:04 +08:00

28 KiB

1.0.11 (2025-09-10)

Feature

  • [mpp_trie]: Add info name max length record
  • [mpp_enc_cfg]: Separate init function
  • [mpp]: Add jpeg roi function for RV1126B
  • [kmpp]: Add jpeg roi function for kmpp
  • [kmpp]: Set chan_fd to init cfg
  • [kmpp]: Replace frame_infos with kmpp_frame
  • [kmpp_frame]: Add self_meta in kmpp_frame
  • [kmpp_buffer]: Add ioctl to inc ref and flush
  • [mpp_meta]: Add more frame buffer key to meta
  • [base]: Add toml function
  • [base]: Use enc cfg obj
  • [smart_v3]: Add new frame qp interface
  • [kmpp]: Add KmppMeta module
  • [kmpp]: Add KmppBuffer module
  • [kmpp_obj]: Add priv prop support for objdef

Fix

  • [h265e]: Remove unused buffer
  • [mpp]: Add null check for sync pkt buffer
  • [mpp_meta]: Add user data deep copy support
  • [mpp_meta]: Add KEY_NPU_UOBJ_FLAG and KEY_NPU_SOBJ_FLAG
  • [kmpp_obj]: Fix obj ioctl typo
  • [mpp_trie]: Fix get err node issue
  • [vdpp] Fix building tests against musl libc
  • [script]: Prepend bash with /usr/bin/env
  • [kmpp_buffer]: Close fd when deinit
  • [mpp_thread]: Fix thread name is not set
  • Rename FFmpeg to FF for sdk release request
  • [kmpp_obj]: Fix kmpp obj get by sptr
  • [h265d]: Ensure the DTS is transmitted to the frame
  • [kmpp_obj]: Rename kmpp_obj_impl_put func
  • [kmpp_obj]: Fix kmpp frm/pkt self meta erro
  • [h264e_api_v2]: Fix bit_real calc in skip mode
  • [h264d]: Fix fast play mode not working in shell environment.
  • [kmpp_frame]: Remove unnecessary logs
  • [enc_test]: Set input block mode in init kcfg
  • [hal_h265e]: Fix nal type in tsvc mode
  • [h265d]: Fix log issue
  • [vepu511]: Add tune stat update
  • [kmpp_obj]: Update tbl after objdef registration
  • [mpp_cfg_io]: Add more mpp_cfg_io function
  • [kmpp_obj]: Fix grp_cfg and buf_cfg leak in kmpp_obj_test
  • [vproc]: Fix unit tests cannot be disabled

Docs

  • Update 1.0.11 CHANGELOG.md

Refactor

  • [sys_cfg]: Refactor C++ sys_cfg to C
  • [test]: Refactor C++ test file to C
  • [osal]: Refactor C++ osal file to C
  • [rc]: Refactor C++ rc/rc_base to C
  • [enc]: Use KmppShmPtr to represent osd buffer
  • [kmpp]: Fix kmpp obj compilation warning
  • [rc_api]: Refactor C++ rc_api to C

Test

  • [mpi_enc_test]: Add jpeg roi test

Chore

  • [dec_test]: Remove unused code
  • [mpp_singleton]: Update name print
  • [hal]: Organize the relevant processes for vepu fmt
  • Rename Dolby for sdk release requirement
  • [kmpp_meta]: Disable failure log
  • [mpp_enc_cfg]: Add base:smart_en option
  • [kmpp_obj]: Add is_kobj query function
  • [rc_smt]: Adjust code style for rc_smt

1.0.10 (2025-06-23)

Feature

  • [mpp_log]: Add long log (llog) function
  • [mpp_buffer]: Add mpp_buffer discard function
  • [build]: add Android.bp support
  • [kmpp_packet]: Add kmpp_packet interface
  • [mpp_log]: Add external callback support
  • [kmpp_obj]: Refactor kmpp_obj helper
  • [kmpp_obj]: Add more kmpp_obj property
  • [kmpp_obj]: Add object update function
  • [kmpp_obj]: Add userspace objdef functions
  • [osal]: Add mpp_singleton module
  • [mpp_cfg_io]: Add mpp cfg io module
  • [kmpp]: Add kmpp_frame_test

Fix

  • [h265d]: Fix yuv400 decode error
  • [h265d]: Fix GDR stream decoding
  • [kmpp_obj]: Undef KMPP_OBJ_SGLN_ID macro
  • [osal]: Fix timeout expire too soon issue
  • [cmake]: Fix static build issue
  • [vp8e]: Remove unused vp8e_rc file
  • [h265d_rkv]: Fix dec err after cut streams
  • [mpp_singleton]: fix init order issue
  • [mpp_dec]: Fix compile warning
  • [h265d_parser]: Fix slice header parse
  • [mpp_sys_cfg]: afbc calc support yuv444sp_10bit
  • [kmpp_obj]: Update helper macro
  • [h263d]: Fix missing initializer for field problem
  • [enc_utils]: Remove duplicate option
  • [kmpp_obj]: Remove extra print in helper
  • [avsd_plus]: Fix page fault when filtering field data
  • [h265d_vdpu384a]: Fix CABAC error detection issue.
  • [mpp_sys_cfg]: Fix stride issue on resolution change
  • [vepu_540c]: Reduce print hw_status when irq ret
  • [mpp_sys_cfg]: Fix ver_stride calc issue
  • [sys_cfg]: Fix ver stride calculation issue.
  • [vepu541]: Add warning for unsupport nv21/nv42
  • [avs2d]: fix vertical stride config
  • Revert "fix[mpp_enc_impl]: fix rc cfg for jpeg enc"
  • [h265d_ps]: Suppress YUV444 unsupported warning logs
  • [mpp_cfg]: Fix function define on C++ field
  • [h264e_dpb]: fix walk_len when refs_dryrun
  • [av1d_vdpu383]: fix segid page fault issue
  • [allocator]: Fix misc buffer group flag issue
  • [h265d_parser]: fix startcode finder for 00 00 00 xx case
  • [kmpp]: Fix eos frame with NULL buffer issue
  • [utils]: Remove duplicate assignments
  • [mpi_enc_test]: Sync mdc config of RV1126B
  • [sys_cfg]: Avoid frequent environment variable access.
  • [mpp_enc]: Add avc rc parameter set
  • [h265d_vdpu383]: Fix CABAC error detection issue.
  • [mpi]: Fix typo
  • [h264_vdpu384a]: Fix error proc issue
  • [h265e]: Correct tile syntax elements at PPS
  • [mpp]: Add atf set, atf value 0~3
  • [mpp_enc_cfg]: Add lambda_idx_i and lambda_idx_p
  • [mpp_enc]: Add encoder speed mode setup
  • [test]: Add qbias_arr and aq_rnge_arr init
  • [packet]: fix packet partition and eoi logic
  • [mpp]: add qpmap_en and enc_spd
  • [cmake]: Fix double object include issue
  • [sys_cfg]: Align to CTU64 to avoid info change.
  • [mpp]: Fix compile warning with ipc sdk toolchain

Docs

  • Update 1.0.10 CHANGELOG.md

Refactor

  • [base]: Refactor C++ mpp_enc_cfg to C
  • [base]: Refactor C++ mpp_meta to C
  • [base]: Refactor C++ mpp_packet to C
  • [base]: Refactor C++ mpp_frame to C
  • [base]: Refactor C++ mpp_buffer to C
  • [mpp_mem_pool]: Add exit leak pool print
  • [osal]: Refactor C++ mpp_server to C
  • [osal]: Refactor more module from C++ to C
  • [mpp_trace]: Refactor C++ mpp_trace to C
  • [mpp_runtime]: Refactor C++ mpp_runtime to C
  • [mpp_soc]: Refactor C++ mpp_soc to C
  • [mpp_platform]: Refactor C++ mpp_platform to C
  • [mem_pool]: Refactor C++ mem_pool to C
  • [mpp_mem]: Refactor C++ mpp_mem to C
  • [kmpp]: Replace venc_packet with KmppPacket
  • [osal/linux/os_log]: Use C constructor.
  • [base]: Remove MppDecCfgImpl
  • [base]: Refactor mpp_trie from C++ to C
  • [mpp_cfg_io]: Change cfg to trie interface

Test

  • [osal]: Add libc and OS compatibility checking
  • [resolution]: Add resolution test tool

Chore

  • [kmpp]: Modify kmpp_objs init / deinit order
  • [kmpp_obj]: Add from objs device macro
  • [kmpp_obj]: Add more obj function
  • [kmpp_obj]: Update flag calculation macro
  • [utils]: Add fbc frame data dump
  • A fix for company release requirement
  • [kmpp]: Remove get packet failed log

1.0.9 (2025-04-03)

Feature

  • [kmpp_frame]: Add KmppFrame module
  • [vepu_511]: Add rv1126b 265e/264e/jpge support
  • [mpp_meta]: Add osd_data3 fmt for 1103b/1126b
  • [kmpp_obj]: Sync to new KmppEntry share object
  • [err_proc]: Add a new command: DIS_ERR_CLR_MARK
  • [mpi_enc_test]: Support enc for kmpp flow
  • [kmpp_obj]: Add more kmpp_obj functions
  • [vdpu384a]: Support RV1126B new features
  • [mpp_soc]: Support rv1126b soc
  • [kmpp_obj]: Sync to new kmpp_meta
  • [kmpp_obj]: Sync to loctbl without flag_type
  • [mpp_buf_slot]: buf_slot add coded width alignment config
  • [h265d]: Add vdpu383 hevc yuv444_10bit support
  • [vproc]: Add more log for debugging
  • [mpp]: Support kmpp access
  • [kmpp]: Add kmpp module
  • [rk_mpi_cmd]: Merge cmds from mpp_interface
  • [build]: Add --toolchain to config toolchain for linux
  • [mpp_meta]: Use trie to index the meta key
  • [mpp_packet]: Add realease callback info
  • [kmpp_obj]: Update to new objdef query mode
  • [mpp_trie]: Allow empty name trie for import
  • [enc]: Support setting temporal_id
  • [mpp_enc_cfg]: Merge enc cfgs from mpp_interface
  • [mpp_sys_cfg_st]: Provide packaging for use on products
  • [mpp_sys_cfg]: Add raster/tile/fbc buffer alignment
  • [mpp_sys_cfg]: Support sys_cfg buffer alignment
  • [kmpp_obj]: Add kmpp_obj_get_hnd func
  • [mpp_venc_kcfg]: Add mpp_venc_kcfg module

Fix

  • [sys_cfg]: Add debug info
  • [sys_cfg]: fix fbc ver stride calc issue
  • [sys_cfg]: Fix external configuration stride issue
  • [sys_cfg]: Support alignment for mpeg2/mpeg4/h263/vp8.
  • [sys_cfg]: AVC is aligned to ctu to avoid info change
  • [sys_cfg]: Fix RK3399 hor/ver stride calculation issue.
  • [sys_cfg]: Fix HAL layer buffer alignment issue
  • [h264d]: Recovery only takes effect when no IDR frames present
  • [hal_jpege_api]: Fix jpege api path judgment
  • [vdpp]: Fix vdpp blk_size calculation.
  • [mpp_venc_kcfg]: Revert to mpp interface
  • [cmake]: Fix kmpp_base symbol missing
  • [av1_syntax]: Fix array out-of-bounds issue.
  • [build]: fix build failure with CMake 4.0
  • [vepu_511]: Speed grade configuration of 0.67
  • [mpp_frame]: Add rk_fbc fmt for 1126b
  • [jpegd_rkv]: New JPEG IP supports tile 4x4 output by default.
  • [jpeg_rkv]: New JPEG IP defaults to no RGB support.
  • [hal_rcb]: Fix rcb buf size calc issue
  • [kmpp_obj]: Fix rockit compile error
  • [avsd]: Skip redundant zeros between fields inside one picture
  • [av1]: parameter is 16 bits
  • [base]: Fix strncpy compile warning
  • [hal_h265e_vepu580]: Fix overflow status check
  • [kmpp]: Fix channel dup issue
  • [os_log]: Modify default log option for linux
  • [kmpp_obj]: Fix warning on arm32
  • [kmpp]: Set KEY_OUTPUT_INTRA meta to packet
  • [sys_cfg]: Align rk3399 h_stride to an odd multiple of 265.
  • [mpp_sys]: Fix old IP vertical alignment to 16 issue
  • [kmpp_obj]: Disable /dev/kmpp_objs not found log
  • [mpp_soc]: Fix cap_fbc for rv1126b
  • [sys_cfg]: Optimize comparison information printing.
  • [sys_cfg]: Print comparison information only once.
  • [mpp_meta]: Fix compile error
  • [vepu510]: Mark frame first part when split slice out
  • [hdr_meta]: Fix hdr format for av1
  • [mpp_sys_cfg]: Fix align pixel stride on rk3576
  • [vproc]: fix height out of boundary problem
  • [mpp_sys_cfg]: Fix abnormal stride calculation.
  • [h264d]: disable ref erorr when decode recovery frame period
  • [jpege_vpu720]: Correct encoded size config
  • [buf_slot]: Correct coding mistakes.
  • [build]: Avoid exporting toolchain to system PATH
  • [mpp_enc]: Fix some exceptions when force pskip
  • [kmpp]: Fill pts/dts/flag to MppPacket
  • [vproc]: fix frame output disorder problem
  • [vproc]: Fix field disordered problem
  • [mpp_enc_cfg]: Remove a redundant atr_str
  • []: Fix abnormal FBC info issue in Info Change
  • [h264d]: Fix segment fault problem
  • [vproc]: Fix error info missed problem
  • [vproc]: Fix output blank buffer problem
  • [fbc]: Fix RK3588 av1 FBC usage issue
  • [sys_cfg/buf_slot]: support yuv422sp 10bit
  • [mpp_enc_cfg]: Add sao_bit_ratio from mpp_interface
  • [buf_slot]: Correct coding mistakes.
  • [mpp_venc_kcfg]: Get objdef at runtime
  • [jpegd]: Avoid buffer overrun
  • [sys_cfg/buf_slot]: fix fbc yuv444sp buf calculation issue
  • [kmpp_obj]: Add extern C

Docs

  • Update 1.0.9 CHANGELOG.md

Refactor

  • [kmpp]: Move kmpp to seperate directory
  • [mpp_trie]: Replace root import
  • [mpp_enc_cfg]: Adjust cu_qp_delta_depth

Chore

  • [mpp_buf_slot]: Modify sys_cfg mismatch print

1.0.8 (2024-12-30)

Feature

  • [enc]: Add switch for disable IDR encoding when FPS changed.
  • [test]: Add PSNR info for video encoder
  • [mpp_buf_slots]: Add coding attribute to buf slots
  • [mpp_sys_cfg]: Add mpp_sys_cfg function
  • [dec_nt_test]: Support jpeg decoding on decode
  • [mpp_dec]: Add jpeg put/get decode support
  • [mpp_obj]: Add mpp_obj for kernel object
  • [mpp_trie]: Add functions for import / export
  • [rk_type.h]: Add kernel driver compat define
  • [mpp_dec]: add control for select codec device
  • [mpp_dec]: support hdr10plus dynamic metadata parse
  • [hal_avsd]: enable hw dec timeout
  • [vpu_api]: Support configuration to disable decoding errors
  • [enc]: Support use frame meta to cfg pskip
  • [vepu510]: Add scaling list regs setup

Fix

  • [enc]: Fix CPB size not enough problem
  • [m4v_parser]: Fix split_parse setting failure issue
  • [mpp_trie]: Remove a redundant variables from log
  • [mpp_enc]: Set frm type in pkt meta
  • [mpp_sys_cfg]: Fix compile warning
  • [rc_smt]: Fix the variable overflow issue
  • [h264e_sps]: fix constraint_set3_flag flag issue
  • [vpu_legacy]: Fix vpu fbc configuration issue
  • [mpp_buffer]: Fix buffer put log
  • [mpp_mem_pool]: Record pool buffer allocator caller
  • [mpp]: Fix input_task_count for async enc
  • [av1d]: Fix uninitialized fbc_hdr_stride issue
  • [cfg]: fix cfg test segment fault problem
  • [drm]: Call drop master by default
  • [vepu580]: fix is_yuv/is_fbc typo
  • [misc]: Fix compile on 32bit platform
  • [jpegd]: replace packet size with stream length
  • [av1_vdpu383]: Fix the CDF issue between GOPs
  • [mpp_enc_impl]: fix rc cfg for jpeg enc
  • [av1_vdpu383]: fix cdf usage issue
  • [hal_h265d]: Avoid reg offset duplicate setting issue
  • [vepu580]: fix incorrect color range problem
  • [buf_slots]: Fix the issue of fmt conv during info change
  • [h264d]: force reset matrix coefficients when parse unknown value
  • [h264d]: Parse hdr parameters on enable_hdr_meta enabled
  • [h264d_parser]: Fix pps parsing issue
  • [hal_vdpu383]: fix fbc hor_stride mismatch issue
  • [hal_vepu580]: re-get roi buf when resolution switch
  • [hal_vepu541]: re-get roi buf when resolution switch
  • [iep2]: Remove unnessary log on init failed
  • [h264_dpb]: Add env variables to force fast play mode
  • [h265e_slice]: fix compilation warning
  • [hal_avs2d_vdpu383]: handle scene reference frame
  • [debain]: fix typo in compat version
  • [debian]: Update debian control
  • [debain]: Update debian/control
  • [debain]: Update compat to 10
  • [h264e_pps]: add pic_scaling_matrix_present check
  • [h2645d_sei]: fix read byte overflow error
  • [m2vd]: Fix refer frame error on beginning
  • [vdpu383]: fix err detection mask issue
  • [test]: Fix AQ table error
  • [vepu580]: Add md info internal buffer
  • [vepu580]: Add ATF weight adjust switch for H.265
  • [tune]: Replace qpmap_en with deblur_en
  • [vepu580]: Adjust frame-level QP for VI frame
  • [hal_jpegd]: fix huffman table selection
  • [h265]: fix pskip when enable tile mode
  • [smt_rc]: Fix first frame QP error
  • [h264d]: fix no output for mvc stream
  • [vepu580]: Fix motion level assignment error
  • [avsd]: Fix attach dev error issue
  • [h265d]: Fix conformance window offsets for chroma formats
  • [test]: Fix mdinfo size according to soc type
  • [h265d_vdpu383]: fix dec err when ps_update_flag=0
  • [vepu510]: Sync code from enc_tune branch
  • [mpp_cfg]: Fix compile warning
  • [h265d]: fix output err causeby refs cleard
  • [h264d]: remove error check for B frame has only one ref
  • [test]: Fix test demo stuck issue

Docs

  • Update 1.0.8 CHANGELOG.md
  • update doc for fast play

Refactor

  • [hal]: Update the reg offset setting method.
  • [mpi]: Add ops name when assign for reading friendly
  • [av1d_vdpu383]: Regs definition sync with other protocols.
  • [vproc]: Refactor iep2 progress
  • [h265]: unify calculation tile width

Chore

  • [hal_jpegd]: Remove reset / flush functions
  • [test]: Use put/get in mpi_dec_test for jpeg
  • [MppPacket]: Add caller log on check failure

1.0.7 (2024-09-04)

Feature

  • [rc_smt]: Add rc container for smart mode
  • [vepu580]: Optimization to improve VMAF
  • [vepu580]: Optimize hal processing for smart encoding
  • [vepu580]: Add qpmap and rc container interface
  • [vepu510]: Add anti-smear regs setup for H.264
  • [vepu510]: Add H.264 tuning setup
  • [vepu510]: Sync code from enc_tune branch
  • [vepu510]: Sync code from enc_tune branch
  • [vepu510]: Sync code from enc_tune branch
  • [mpp_trie]: Add trie context filling feature
  • [mpp_trie]: Add trie tag and shrink feature
  • [h264d]: support hdr meta parse
  • [h265e]: Support force mark & use ltr
  • [vpu_api]: support yuv444sp decode ouput pixel format

Fix

  • [h265d]: fix infochange loss when two sps continuous
  • [hal_h264e]: Fix CAVLC encode smartP stream err
  • [mpi_enc_test]: Remove redundant code about smart encoding
  • [h264e_sps]: fix the default value of max mv length
  • [enc_roi]: Fix cu_map init in vepu_54x_roi
  • [hal_vp9]: Optimize prob memory usage
  • [hal_h265d]: Allow reference missing for GDR
  • [osal]: Fix mpp_mem single instance issue
  • [hal_vp9d_com]: Fixed memory leak issue
  • [hal_h265d]: Avoid risk of segment fault
  • [hal_h265d]: fix error slot index marking
  • [h265d]: Adjust condition of scan type judgement
  • [mpp_hdr]: Fix buffer overflow issue
  • [mpp_buffer]: Synchronous log addition point
  • [hal_vepu]: fix split regs assignment
  • [vepu580]: poll max set to 1 on split out lowdelay mode
  • [mpp_common]: fix compile err on F_DUPFD_CLOEXEC not defined
  • [h265d]: return error on sps/pps read failure
  • [build]: The first toolchains is selected by default
  • [265e]:Fix the st refernce frame err in tsvc
  • [av1d]: when MetaData found then it is new frame
  • [m2vd]: Fix seq_head check error
  • [h265e_vepu510]: Fix a memory leak
  • [h265d]: auto output frame in dpb when ready
  • [m2vd]: Remove ref frame when info changed
  • [mpp_meta]: Missing data in the instance
  • [mpp_bitread]: Fix negative shift error
  • [osal]: fix 128 odd plus 64 bytes alignment
  • [h265d_parser]: Fix fmt configuration issue
  • [hal_av1d_vdpu383]: modify av1 segid wr/rd base config
  • [h265d_parser]: Fix fmt configuration issue
  • [hal_av1d_vdpu383]: add segid reg base config

Docs

  • Update 1.0.7 CHANGELOG.md
  • [readme]: Add more repo info

Refactor

  • [mpp_cfg]: Refactor MppTrie and string cfg

Chore

  • [mpp_mem]: Add mpp_realloc_size
  • [mpp_cfg]: Remove some unused code
  • fix compile warning

1.0.6 (2024-06-12)

Feature

  • [vdpu383]: refine rcb info setup
  • [enc_265]: Support get Largest Code Unit size
  • [mpp_dec_cfg]: Add disable dpb check config
  • [vdpu383]: support 8K downscale mode

Fix

  • [drm]: Fix permission check issue on GKI kernel
  • [hal_h265e]: Amend 510 tid and sync cache
  • [hal_h265e]: Fix nalu type avoid stream warning
  • [h265e]: Fix vps/sps max temparal layers val
  • [hal_jpeg_vdpu1]: fix dec failed on RK3036 problem
  • [osal]: rv1109/rv1126 vcodec_type mismatch problem
  • [h264e_vepu2]: Adjust inter favor table
  • [h264d]: fix drop packets after reset when err stream
  • [h265d]: Allow filtering of consecutive start code
  • [hal_h264d_vdpu383]: fix spspps update issue
  • [mpp]: fix mpp frame leak when async enc
  • [enc]: Add use_lt_idx to output packet meta
  • [hal_h265e]: fix sse_sum get err
  • [mpp_enc_async]: fix mpp packet leak when thread quit
  • [enc_roi]: Support ROI cfg under CQP mode
  • [hal]: Fix the lib interdependence issue
  • [vepu_510]: fix same log type when enc feedback
  • [mpp_buffer]: fix dec/inc ref_count in multi threads
  • [mpp_enc_async]: fix debreath not work on async flow
  • [base]: fix AV1 and AVS2 string info missing problem
  • [mpp]: Add encoder input/output pts log
  • [hal_vepu580/510]: fix split out err when pass1 frame
  • [hal]: Fix target link issue
  • [hal_enc]: Fix lib dependency issue
  • [hal_h265d_vdpu383]: fix ref_err mark for special poc
  • [rc2_test]: fix pkt buffer overflow error
  • [enc_utils]: Support read odd resolution image
  • [allocator]: fix on invalid DMA heap allocator
  • [hal_h265e_vepu580]: fix reg config err for 2pass
  • [jpegd_vdpu]: Adjust file dump path
  • [mpp_common]: fix 128 odd plus 64 alignment
  • [cmake]: fix static build
  • [vdpu383]: Update vdpu383 error detection

Docs

  • Update 1.0.6 CHANGELOG.md

Refactor

  • [hal_jpegd]: init devices at hal_jpegd_api
  • [dec]: get deocder capability via common routine
  • [hal_av1d]: Migrate av1d from vpu to rkdec

Chore

  • [h265d]: Reduce malloc/free frequency of vps
  • [mpp_service]: fix typo err
  • [hal_h265d]: use INT_MAX for poc distance initiation
  • [cmake]: remove duplicate code

1.0.5 (2024-04-19)

Feature

  • [vdpu383]: align hor stride to 128 odds + 64 byte
  • [vdpu383]: support 2x2 scale down
  • [mpp_buffer]: Add MppBuffer attach/detach func
  • [mpp_dev]: Add fd attach/detach operation
  • [vdpp]: Add libvdpp for hwpq
  • [vdpp]: Add capacity check function
  • [cmake]: Add building static library
  • [vdpp_test]: Add vdpp slt testcase
  • [av1d]: Add tile4x4 frame format support
  • [mpp_enc_cfg]: Add H.265 tier config
  • [jpeg]: Add VPU720 JPEG support
  • [enc]: Add config entry for output chroma format
  • [vdpu383]: Add vdpu383 av1 module
  • [vdpu383]: Add vdpu383 vp9 module
  • [vdpu383]: Add vdpu383 avs2 module
  • [vdpu383]: Add vdpu383 H.264 module
  • [vdpu383]: Add vdpu383 H.265 module
  • [vdpu383]: Add vdpu383 common module
  • [vdpp]: Add vdpp2 for rk3576
  • [vdpp]: Add vdpp module and vdpp_test
  • [vepu_510]: Add vepu510 h265e support
  • [vepu_510]: Add vepu510 h264e support
  • [mpp_frame]: Add tile format flag
  • [vepu_510] add vepu 510 common for H264 & h265
  • [mpp_soc]: support rk3576 soc

Fix

  • [avs2d_vdpu383]: Optimise dec result
  • [vdpu383]: Fix compiler warning
  • [vdpp]: Fix dmsr reg size imcompat error
  • [vdpu383]: hor stride alignment fix for vdpu383
  • [h265d_ref]: fix set fbc output fmt not effect issue
  • [vdpu383]: Fix memory out of bounds issue
  • [h264d_vdpu383]: Fix global parameter config issue
  • [avs2_parse]: add colorspace config to mpp_frame
  • [hal_h264e]:fix crash after init vepu buffer failure
  • [vpu_api]: Fix frame format and eos cfg
  • [av1d_vdpu383]: fix fbc hor_stride error
  • [av1d_parser]: fix fmt error for 10bit HDR source
  • [avs2d]: fix stuck when seq_end shows at pkt tail
  • [av1d_vdpu]: Fix forced 8bit output failure issue
  • [enc_async]: Invalidate cache for output buffer
  • [hal_av1d_vdpu383]: memleak for cdf_bufs
  • [av1d_vdpu383]: fix rcb buffer size
  • [vp9d_vdpu383]: Fix segid config issue
  • [vepu510]: Add split low delay output mode support
  • [avs2d_vdpu383]: Fix declaring shadow local variables issue
  • [av1]: Fix global config issue
  • [hal_av1d]: Delte cdf unused value
  • [av1]: Fix av1 display abnormality issue
  • [avs2d]: Remove a unnecessary log
  • [vepu510]: Adjust regs assignment
  • [hal_jpegd]: Add stream buffer flush
  • [265e_api]: Support cons_intra_pred_flag cfg
  • [mpp_enc]: Add device attach/detach on enc flow
  • [mpp_dec]: Add device attach/detach on dec flow
  • [vdpp]: Add error detection
  • [hal_265e_510]: modify srgn_max & rime_lvl val
  • [vdpu383]: spspps data not need copy all range ppsid
  • [vpu_api_legacy]: fix frame CodingType err
  • [av1]: Fix 10bit source display issue
  • [mpp_enc]: Expand the hdr_buf size
  • [av1]: Fix delta_q value read issue
  • [vdpu383]: Enable error detection
  • [ext_dma]: fix mmap permission error
  • [jpege_vpu720]: sync cache before return task
  • [mpp_buffer]: fix buffer type assigning
  • [vepu510]: Configure reg of Subjective param
  • [vepu510]: Checkout and optimize 510 reg.h
  • [mpp_dec]: Optimize HDR meta process
  • [av1d]: Fix scanlist calc issue
  • [h265e]: fix the profile tier cfg
  • [av1d]: Fix av1d ref stride error
  • [hal_h265e_vepu510]: Add cudecis reg cfg
  • [av1d]: Only rk3588 support 10bit translate to 8bit
  • [vp9d]: Fix vp9 hor stride issue
  • [rc]: Add i quality delta cfg on fixqp mode
  • [hal_h265d]: Fix filter col rcb buffer size calc
  • [av1d]: Fix compiler warning
  • [h264d]: Fix error mvc stream crash issue
  • [hal_h264e]: Fix qp err when fixqp mode
  • [h264d]: Fix H.264 error chroma_format_idc
  • [vdpu383]: Fix av1 rkfbc output error
  • [av1d]: Fix compatibility issues
  • [hal_h264d_vdpu383]: Reduce mpp_put_bits calls
  • Fix clerical error
  • [avs2d]: Fix get ref_frm slot idx error
  • [vdpu383]: Fix av1 global params bit pos issue
  • [vdpp]: fix sharp config error
  • [hal_av1d]: fix av1 dec err for rk3588
  • [vdpu383]: Fix av1 global params issue
  • [vepu510]: Fix camera record stuck issue
  • [utils]: fix read and write some YUV format
  • [mpp_bitput]: fix put bits overflow
  • [mpp_service]: fix rcb info env config
  • [vepu510]: Fix compile warning
  • [hal_vp9d]: fix colmv size calculator err
  • [avsd]: Fix the ref_frm slot idx erro in fast mode.

Docs

  • Update 1.0.5 CHANGELOG.md
  • [mpp_frame]: Add MppFrameFormat description

Refactor

  • [hal_av2sd]: refactor hal_api assign flow
  • [hal_h264d]: refactor hal_api assign flow
  • Using soc_type for compare instead of soc_name

Chore

  • [hal_h264e]: clean some unused code

1.0.4 (2024-02-07)

Feature

  • [vpu_api_legacy]: Support RGB24 setup
  • [avsd]: keep codec type if not avs+
  • [mpi_enc_test]: add YUV400 fmt support
  • [mpp_enc]: Add YUV400 support for vepu580/540

Fix

  • [h265e]: fix hw stream size check error
  • [hal_vdpu]: unify colmv buffer size calculation
  • [vproc]: Fix deadlock in vproc thread
  • [h265e]: disable tmvp by default
  • [h265e]: Amend temporal_id to stream
  • [mpp_dump]: add YUV420SP_10BIT format dump
  • [hal_h265d]: Fix register length for rk3328/rk3328H
  • [hal_avsd]: Fix crash on no buffer decoded
  • [mpp_enc]: allow vp8 to cfg force idr frame
  • [m2vd]: fix unindentical of input and output pts list
  • [h265e_vepu580]: fix SIGSEGV when reencoding
  • [mpp_dmabuf]: fix align cache line size calculate err
  • [h265e_vepu580]: flush cache for the first tile
  • [dmabuf]: Disable dmabuf partial sync function
  • [iep_test]: use internal buffer group
  • [common]: Add mpp_dup function
  • [h265e]: Adapter RK3528 when encoding P frame skip
  • [h265e]: fix missing end_of_slice_segment_flag problem
  • [hal_av1d_vdpu]: change rkv_hor_align to 16 align
  • [av1d_parser]: set color info per frame
  • [jpegd]: add sof marker check when parser done

Docs

  • Update 1.0.4 CHANGELOG.md

Chore

  • [script]: add rebuild and clean for build
  • [mpp_enc_roi_utils]: change file format dos to unix

1.0.3 (2023-12-08)

Feature

  • [dec_test]: Add buffer mode option
  • [mpp_dmabuf]: Add dmabuf sync operation
  • [jpege]: Allow rk3588 jpege 4 tasks async
  • [rc_v2]: Support flex fps rate control

Fix

  • [av1d_api]: fix loss last frame when empty eos
  • [h265e_dpb]: do not check frm status when pass1
  • [hal_bufs]: clear buffer when hal_bufs get failed
  • [dma-buf]: Add dma-buf.h for old ndk compiling
  • [enc]: Fix sw enc path segment_info issue
  • [cmake]: Remove HAVE_DRM option
  • [m2vd]: update frame period on frame rate code change
  • [test]: Fix mpi_enc_mt_test error
  • [dma_heap]: add dma heap uncached node checking
  • [mpp_mem]: Fix MEM_ALIGNED macro error
  • [mpeg4_api]: fix drop frame when two stream switch
  • [script]: fix shift clear input parameter error
  • [hal_h265e_vepu541]: fix roi buffer variables incorrect use

Docs

  • Update 1.0.3 CHANGELOG.md

Refactor

  • [allocator]: Refactor allocator flow

Chore

  • [vp8d]: optimize vp8d debug
  • [mpp_enc]: Encoder changes to cacheable buffer
  • [mpp_dec]: Decoder changes to cacheable buffer
  • [mpp_dmabuf]: Add dmabuf ioctl unit test

1.0.2 (2023-11-01)

Feature

  • [mpp_lock]: Add spinlock timing statistic
  • [mpp_thread]: Add simple thread
  • add more enc info to meta

Fix

  • [vepu540c]: fix h265 config
  • [h264d]: Optimize sps check error
  • [utils]: adjust format range constraint
  • [h264d]: fix mpp split eos process err
  • [h264d]: add errinfo for 4:4:4 lossless mode
  • [h264d]: fix eos not updated err
  • [camera_source]: Fix memory double-free issue
  • [mpp_dec]:fix mpp_destroy crash
  • [mpp_enc]: Fix async multi-thread case error
  • [jpeg_dec]: Add parse & gen_reg err check for jpeg dec
  • [h265e_vepu580]: fix tile mode cfg
  • [vp9d]: Fix AFBC to non-FBC mode switch issue
  • [h264e_dpb]: fix modification_of_pic_nums_idc error issue
  • [allocator]: dma_heap allocator has the highest priority
  • [camera_source]: enumerate device and format
  • [utils]: fix hor_stride 24 aligned error

Docs

  • Update 1.0.2 CHANGELOG.md
  • Add mpp developer guide markdown

Chore

  • [scipt]: Update changelog.sh

1.0.1 (2023-09-28)

Feature

  • [venc]: Modify fqp init value to invalid.
  • [vepu580]: Add frm min/max qp and scene_mode cmd param
  • [venc]: Add qbias for rkvenc encoder
  • Support fbc mode change on info change stage
  • [hal_vepu5xx]: Expand color transform for 540c
  • Add rk3528a support

Fix

  • [mpp_enc_impl]: fix some error values without return an error
  • [av1d_cbs]: fix read 32bit data err
  • [Venc]: Fix jpeg and vpx fqp param error.
  • [h265e_vepu580]: dual cores concurrency problem
  • [hal_h264e_vepu]: terminate task if not support
  • [vdpu_34x]: disable cabac err check for rk3588
  • [enc]: fix duplicate idr frame
  • [h264e_amend]: fix slice read overread issue
  • [hal_jpegd]: add pp feature check
  • [enc]: fix duplicate sps/pps information
  • [h264e_slice]: fix pic_order_cnt_lsb wrap issue
  • [hal_h264e_vepu540c]: fix reg configuration
  • [hal_h264e_vepu540c]: Amend slice header
  • [h264d]: fix crash on check reflist
  • [hal_vp9d]: not support fast mode for rk3588
  • [h264d]: fix frame output order when dpb full
  • [mpp_frame]: setup color default UNSPECIFIED instead 0
  • [hal_h264d]: adjust position of env_get
  • [h264e_slice]: fix pic_order_cnt_lsb wrap issue
  • [hal_avs2d]: fix some issue
  • fix redundant prefix NALU amended problem
  • [hal_jpegd]: fix rgb out_fmt mismatch error
  • [utils]: fix convert format error
  • [h265e]: check input profile_idc
  • [hal_h264e_vepu580]: fix SEGV on GDR setting
  • [h264d]: fix TSVC decode assert error.
  • [hal_vepu580]: fix comiple issue
  • [h264d]: fix MVC DPB allocation
  • [h264d]: fix SEI packet parsing
  • [hal_vp8e]: fix entropy init
  • [mpp_soc]: fix rk356x vepu2 capability

Docs

  • Add 1.0.1 CHANGELOG.md
  • update readme.txt

Refactor

  • move same tables to common module

1.0.0 (2023-07-26)

Docs

  • Add 1.0.0 CHANGELOG.md