Platform: General
Spec: avs2
Error case:
In AVS2, CTU supports both 64 and 32 alignment. The
sys_cfg defaults to 64 alignment. However, if the
parsed CTU size is 32, it may cause additional info
changes.
This is because, initially, when calculating the
stride, there is no external stride configuration,
so it defaults to 64 alignment. After parsing the
video sequence, the stride is configured, and
calculations should then follow the configured
stride.
Solution:
During the parsing process, the stride is not set
and is entirely calculated by sys_cfg.
Reported-by: Liming Xu <rimon.xu@rock-chips.com>
Source: test_avs2_160x90.av1
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
Change-Id: I0fed8b86391a03651f22ef859ec2ff1c02647b12
Platform: General
Solution:
To resolve GPU compatibility issues, horizontal pixel
alignment relies on processing in the parser to avoid
incompatibility issues caused by byte alignment intro
-duced by pixel alignment.
Reported-by: Jinsen Chen <kevin.chen@rock-chips.com>
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
Change-Id: Id17abf9e39a6b9bc5bd468ff50eadaf45b9d6520
Platform: General
Error case:
1. Image height is 1080
2. Use SLOTS_FRAME_INFO command to set frame information
3. Use SLOT_FRAME command to set info change
4. info change: ver_stride 1080 -> 1088
5. Generates an avoidable info change, re-applies for buffer,
affects fast play
Solution:
For avc, in sys_cfg, align directly according to ctu
Reported-by: Jinsen Chen <kevin.chen@rock-chips.com>
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
Change-Id: I87e396ae8ac8ea55d6bd8ad314d52e2b6f796e98
Platform:
RK3399, vp9/h265
RK3562/RK3576/RK3588, vp9
Error case:
The stride result calculated by sys_cfg is not
synchronized with the HAL layer.
Change-Id: I98f4e18fcb9af19850ca7dbd201bded8137e7861
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
update hsd_mode/vsd_mode before blk_size calculation, fix the mismatch
between hsd_mode/vsd_mode registers and blk_size registers.
Change-Id: I49215f99430382ec8f59adad3cd81b9f9ab736d8
Signed-off-by: akira.wang <akira.wang@rock-chips.com>
1. Sync kmpp_obj_func.h and kmpp_obj_helper.h from kernel.
2. Add more kmpp_obj function from kernel.
3. Add KmppFrame module.
4. Fix kmpp_obj_check failure.
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: Ib333370eb36c7b63ef50d3e52cf7fd753c9e5af1
This reverts commit 1f8aafea1c.
Platform: General
Spec: h264
Solution:
The base line profile, Main profile, and Extended profile do not
support transform_8x8_mode_flag, pic_scaling_matrix_present_flag,
and second_chroma_qp_index_offset.
However, nonstandard sequences may incorrectly include certain
fields and some extensions or custom implementations may violate
the standard
Therefore, the processing here is strictly carried out according
to the sequence processing logic provided by the spec
Consider #516724, it has been confirmed that it is caused by
incomplete sequence reception. The revert patch here does not
affect the correctness of mpp processing
Reported-by: redmine #543598
Source:
base_line.h264
atomos_mainprofile.h264
Change-Id: I130216a3d7c1651076c3e8037b5079ea5f54e62c
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
See:
https://cmake.org/cmake/help/latest/command/cmake_minimum_required.html
> Changed in version 4.0: Compatibility with versions of CMake older than
3.5 is removed. Calls to cmake_minimum_required(VERSION) or
cmake_policy(VERSION) that do not specify at least 3.5 as their policy
version (optionally via ...<max>) will produce an error in CMake 4.0 and
above.
Change-Id: I0f920e259e7bf2354e1b475df2cf6f60e41aa681
Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
NOTE: kernel should update to after commit:
feat[kmpp_obj]: Modify KmppLocTbl to KmppEntry
1. Change basic share info between kernel and userspace.
2. Add entry function to trie.
3. Update object init function to access object base address.
4. Fix kmpp_buffer crash on releasing buf after releasing group.
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I5c82c3052229abdf1af85d2fd15284897b549ea0
Platform: General
Spec: h264/h265/avs2/avs2d/m2vd
MPP_DEC_SET_DISABLE_ERROR:
Comes with an error mark by default.
MPP_DEC_SET_DIS_ERR_CLR_MARK:
Takes effect when MPP_DEC_SET_DISABLE_ERROR is enabled and
is used to clear the error mark.
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
Change-Id: I82b00c737bb72bdc420267d36c28752a5e3ee9a6
Hardware decoder may failed at decoding the last field of one picture
when there are too many zeros between first and the second field. So
we should tell hardware to read from the exact place of field stream.
Change-Id: Ia78f5d0a97136861ceb3ab198419fe51905c3b2f
Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
1. Add kmpp_obj_get_by_name for quick object creation.
2. Add kmpp_obj_get_by_sptr for quick shm import.
3. Add ioctl support and sample flow by KmppIoc.
4. Add KmppBuffer test to kmpp_obj_test.
5. Add kmpp_obj_set_shm_obj and kmpp_obj_get_shm_obj for obj access.
6. Rename obj handle to KmppShmPtr.
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I996fe5e6dc882c8ed943f0d3bd2c5c8a69a29cd0
LOG_PERROR: Directs output to stderr stream.
LOG_CONS: Fallback to /dev/console only when syslogd is unavailable.
The syslogd maybe unavailable in linux os.
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: Iae95f7df9e6ed3f7e8ce15accce6fae5a65f2fef
Platform: RK3399/RK3588
Error case:
When aligned to 8, decoding with the old IP results in green bars.
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
Change-Id: I8e23a4b80b4c99c98e9b765a876918ed10a503e1