If packet is splited outside of mpp and video_sequence_start_code is not
guaranteed, there will not be valid NALS. Thus segment fault will
happen.
Change-Id: Idb5e51772384c6663260d382b94845a8e1ac7c35
Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
When vproc create new output buffer with hdr_info the original hdr_info
in old buffer must be copy to the new one with hdr_offset and hdr_size.
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I7cbfec07adf2de8147f2918332e391074291e4c5
Add dup function for mpp_frame and mpp_meta.
NOTE: The buffer in MppFrame is not dup.
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I4965bc6016c8ffca4b72bbd49e2653eab06c7591
Modification Point:
1. Use enc configure object macro.
2. Use kmpp_obj_update to sync user cfg setup.
3. Distinguish between user mode and kernel mode for enc obj.
4. EncImpl only check codec related SET_CFG result.
5. Refactor SET_CFG flow.
6. Adapter jpeg q_mode feature.
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Signed-off-by: xiaoxu.chen <xiaoxu.chen@rock-chips.com>
Change-Id: I2856acdf863189fdaa29121ad8bc007fe90b5ab5
Platform: RK3576(vdpu383)
Spec: av1
Error case:
When using the Roku player, it crashes after seeking.
Because dxva->frame_refs[mapped_idx].Index == -1, cdf_buf
becomes NULL, which leads to a crash.
The deeper cause is that after seeking, playback doesn’t
start from an I-frame, so the reference frame info isn’t
ready.
Err log:
Null pointer crash stack.
Solution:
Check frame_refs index validity to avoid crashes.
Source:
test_av1_1920x1080.mp4 (Likely reproducible with other AV1 sources.)
Reported-by: Liming Xu <rimon.xu@rock-chips.com>
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
Change-Id: Id55c2b00aa4c42eec2ccd780974e933a052864de
1. Add rps_update_flag to indicate whether to update rps.
2. Fix global cfg data len for vdpu384a.
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I1c664c99f34f6dea940368496175273042b48b18
Platform: General
Spec: jpeg
Error case:
During JPEG decoding, the buf slot does not record
frame information, so after performing frame
information comparison in the buf slot, it will
always dump mismatch information.
Err log:
sys_cfg/legacy mismatch info
Solution:
Toggle to suppress mismatch dump messages
Reported-by: Lukaß Zhang <lekco_1320@qq.com> (github: #876)
Change-Id: Id7bc34b7876a9bf415b217eba1b55dcf7a2df208
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
Platform: RK3588
Spec: av1
Error case:
Decode the AV1 bitstream from Bilibili that includes
background frames.
Err log:
Correct: mpp_av1dec: irq_status: 00001100
Error: mpp_av1dec: irq_status: 00040100 // hw timeout
Solution:
The swreg8.sw_idr_pic_e shall be set to 1 when current frame
is an intra frame.
Source: Bilibili AV1 videos
ex: https://www.bilibili.com/video/BV11ibPzLEhe
Reported-by: redmine #575039
Change-Id: I9f83fe7025f2c7ed70c8121798f9db0bfc4b0a24
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
Platform: all
Spec: all
Deep copy user data/datas in meta to ensure async safety
and avoid use-after-free
Change-Id: Iebc42563b7700a1f3ca24a535a446cc1f6a7c451
Signed-off-by: Yanjun Liao <yanjun.liao@rock-chips.com>
UOBJ: deliver userspace buffer for rk3588 and rk3576
SOBJ: deliver shared memory buffer for rv1126b
Sync to kmpp-develop patch with the same log:
If596371639eaedb01d6900c737d1f7fec49bf8d4
Change-Id: I8927f6341b5d3f94bf52af32c02b75cd24ad0681
Signed-off-by: timkingh.huang <timkingh.huang@rock-chips.com>
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: Ia4db61137545f55be0ef08acf06f8d6a439297e2
Platform: all
Spec: h264e
The hw_length is in bytes, but bit_real is in bits.
Change-Id: I53428c6347c3f33ad63d2f6dd78daa72b910055f
Signed-off-by: Yanjun Liao <yanjun.liao@rock-chips.com>
Platform: General
Spec: h264
Error case:
Forced fast play mode does not take effect.
Reported-by: redmine #567023
Change-Id: Ia167a9c59feb0d3b276588bcade691518984fca9
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
Platform: vepu_580/540/510
Spec: h265e
In tsvc mode, top p-frames not used as reference frames.
Change-Id: I0b285e5ed753e73321fd728389195f0e5b118874
Signed-off-by: Yanjun Liao <yanjun.liao@rock-chips.com>
Sync with kmpp-develop commit:
feat[kmpp]: Use enc cfg obj
Add MppEncCfgImpl to compatible with MppEncCfgSet and kmpp_obj path.
Signed-off-by: xiaoxu.chen <xiaoxu.chen@rock-chips.com>
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: Id4e262d1053c03cd93d620828405f060f0f8517c