Commit Graph

3555 Commits

Author SHA1 Message Date
Grey Li
f40928d06e [vdpu34x_vp9d]: Fix hdr stride 256 odd align error
Signed-off-by: Grey Li <grey.li@rock-chips.com>
Change-Id: I1f5c43317ad4d770017fabb459922d55c79e6fcf
2023-03-13 15:23:11 +08:00
Grey Li
3498fffb8a [cmake]: enable fast play once in android
Signed-off-by: Grey Li <grey.li@rock-chips.com>
Change-Id: I5e993f3652eab6ba03e0f549573f5bcd2f1981ec
2023-03-10 17:21:17 +08:00
Herman Chen
fe529b520b [jpege_vepu2]: Enlarge multi-core stream buffer
The original buffer size is too small for complex image and it will
cause iommu pagefault.

Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I3b2f1fb81cfb007fe6718a73c9eaca7d3951806c
2023-03-10 08:34:48 +08:00
Herman Chen
6ff8ad3358 [vdpu382_vp9d]: Fix hdr stride 256 odd align error
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I64312c935dbc9da6d6977e788bc8abfedc3a7505
2023-03-09 15:14:59 +08:00
Herman Chen
7aece2c5d8 [mpp_frame]: Ignore hdr flag on comparing frame
The HDR flag will not change the buffer size just ignore it.

Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: Ibebe60b8c0961e87b2b84236dd28a23e05f9d58f
2023-03-09 14:51:47 +08:00
Herman Chen
da6ad1ee5e [LICENSE]: Add MIT license to some code
1. Add LICENSE directory for Apache-2.0 and MIT
2. Add MIT license to vp8e code for linux kernel porting usage.

Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: Idcd9eb812e0737ae5d90802f33c2726b729f663e
2023-03-09 14:45:23 +08:00
xueman.ruan
cb7db08174 [mpp_enc_cfg]: Fix debug logic error.
Update trie node initial value by now.

Signed-off-by: xueman.ruan <xueman.ruan@rock-chips.com>
Change-Id: I5a01f452a689ad7587d4d249cdb6f760c35b8444
2023-03-08 11:03:20 +08:00
xueman.ruan
e6ef3d1d7a [h264e]: Fix profile compatibility error.
Issue introduced by encoding TSVC.

Signed-off-by: xueman.ruan <xueman.ruan@rock-chips.com>
Change-Id: I98c2c61634c7cc57180459e0427d5672fe407c47
2023-03-08 09:32:21 +08:00
Yandong Lin
919dfeefcc [av1d_api]: fix usr_set_fmt flag assignment err
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: Ia9e1a7025145acda57b0c8ba2ea8eedcb97945cc
2023-03-07 18:30:49 +08:00
Yandong Lin
2c1cbfbb50 [vdpu34x]: Refactor rcb info configuration
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I83653332e11576d392dee73c30c64ad3d777a8ea
2023-03-02 11:43:54 +08:00
Yandong Lin
eaef6f5871 [av1d_parser]: add some comments
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I3be8086aa126dc34631f1b2e14db93d5f2d484ad
2023-02-28 16:07:00 +08:00
Yandong Lin
835d8b3e96 [av1d_parser]: fix gm_params update issue
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: Id00be71023fb1ab3c4a67c290d0255f5021b4b71
2023-02-28 16:06:46 +08:00
Yandong Lin
7b7bca623a [av1d]: fix loss frame when eos packet has one more frame
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: Ied836d9947ad563749a23d29f2a4f658f15398bf
2023-02-22 14:43:05 +08:00
Yandong Lin
7786f1f518 [av1d_api]: fix compile warning
warning: unused parameter 'param' [-Wunused-parameter]''

Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: Ibc509112b096ffc381299f7d3346c34fd0c18b60
2023-02-22 14:42:43 +08:00
Yandong Lin
96380e798f [h264d_api]: fix compile warning
warning: unused variable 'hw_ref_miss' [-Wunused-variable]

Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: Ib08446dcba5f0ba0b54043ff185c6e5ed35a3cb2
2023-02-22 14:42:43 +08:00
Yandong Lin
2a69fc807c [av1d_vdpu]: fix segment read base configure err issue
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I476a18970449082f50fd605fbe54e12e0622ddaa
2023-02-22 14:42:43 +08:00
xueman.ruan
062c175265 [hal_jpege]: Add dma heap options for JPEG encode.
use cachable dma buffer to reduce copy time.

Signed-off-by: xueman.ruan <xueman.ruan@rock-chips.com>
Change-Id: I7fcc0fa5942ea5aa4e247b5f10677843d006ff28
2023-02-21 20:57:26 +08:00
Yandong Lin
59f7ccc6ed [av1d]: add force 8bit output for user configure
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: Ie92713df9b4497fc362cc60bf7673d4e1db89fa9
2023-02-20 18:12:08 +08:00
Yandong Lin
9580df2493 [av1d_vdpu]: fix 10bit fbc confiure
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: Ie6c387a6cd92ff62dd6c9e1b5e46463c5ec4986c
2023-02-20 16:49:56 +08:00
Yandong Lin
4097c3c04d [h264d_dpb]: optimize handling when dpb buf is full
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: If8b490c0a0c64b14e5d6b7b26b9b5a5b6de7280f
2023-02-17 15:51:50 +08:00
Yandong Lin
5d81d75ba8 [h265d]: fix ref err with CRA frame issue
Flush frame when there is a frame in the dpb with poc > cur poc.

Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: Ib3a1f0a8bcdf1fddfa1f5b3928ea1dfd43bd4635
2023-02-16 17:21:13 +08:00
Herman Chen
1e2260727a [h264d]: Add ref miss check
1. Define more decoder frame error level.
2. Setup errInfo according to error type and level

Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I7d0e87d19fc5b24808cda6b2b1bdaa1e60d091f6
2023-02-16 17:18:15 +08:00
Herman Chen
4cbe378674 [h264d]: Add frame status setup on dpb_mark_malloc
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I7208f192ce44334e940d47d629d14bb1ff872859
2023-02-16 17:05:46 +08:00
Herman Chen
f7f39557e3 [mpp_frame]: Add MppFrameStatus for internal flow
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: Ie0203316dd674eb1dd43f68cb71d021deb650f0b
2023-02-16 17:05:46 +08:00
Yandong Lin
c1f8e93630 [h264d_dpb]: optimize frame num continuity check in field mode
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: Ib862a9d7a5b91202795c99b0e8da8f6927cd5178
2023-02-16 17:05:46 +08:00
Yandong Lin
6da2d072e9 [h264d_init]: fix some ref err check issue
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I9c7655425e287550614dff579a8fdf7c9d2a2320
2023-02-16 17:05:46 +08:00
xueman.ruan
2f24b438ca [hal_h264e]: Fix TSVC async encoding error.
issue: no block encoding sends task to HAL twice, result in flushing
slice, prefix, reorder and marking accordingly.

1. fix slice reading logic.
2. malloc memory to store async encode info.

Signed-off-by: xueman.ruan <xueman.ruan@rock-chips.com>
Change-Id: I7aedef0096d606ff91e1ed30d7e228a75359931d
2023-02-15 18:03:08 +08:00
Rimon Xu
82b9f0ade9 [m2vd_parser]: fix wrong frame period cause PTS predict error
When the frame period changes, it will be recorded in the last frame
period first, but this value is an error value, which cannot be updated
back to the correct frame period later, so the correct frame period
should be restored at this time.

Signed-off-by: Rimon Xu <rimon.xu@rock-chips.com>
Change-Id: I4b910efb0145b665ff664a552517ffa0ff920ba5
2023-02-13 09:55:23 +08:00
Rimon Xu
c145c84632 [h264d]: check frame slot index when need to combine frame
Change-Id: I189cbde57add32e6310030859e4d7920fb3e33bc
Signed-off-by: Rimon Xu <rimon.xu@rock-chips.com>
2023-02-10 16:54:59 +08:00
Yandong Lin
a05b01d84f [h264d_vdpu34x]: fix some filed video dec err for rk3588
In the case of rk3588 mutilcore decoding, some field sources are decoded
error because the poc_hight is not configured correctly.

Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I850900a9139724bd58210ecbbd77ff46bf7e299c
2023-02-10 16:46:28 +08:00
Rimon Xu
74d50b1246 [h264&h265]: modify sps/pps/vps id param to u32
sps/pps/vps id can't < 0, if we define to s32, otherwise, all places
used need to be checked < 0. but somewhere not checked it.

Change-Id: I6d319d6dcb305d36ff44c2d793128f72a885ac32
Signed-off-by: Rimon Xu <rimon.xu@rock-chips.com>
2023-02-10 11:32:21 +08:00
Chandler Chen
dd1be23a61 [h264d_api] add compatible for avcc fmt judgement
Signed-off-by: Chandler Chen <chandler.chen@rock-chips.com>
Change-Id: If7b077238c21fb5b4e07d8073e093350afc98984
2023-02-10 09:56:38 +08:00
Yandong Lin
404a526759 [av1d_vdpu]: optimize some debug info
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: Ice87860624585cf73502aeafb2a5953b116eb7b2
2023-02-09 16:11:18 +08:00
Yandong Lin
0801cf6cb6 [av1d_vdpu]: fix dec err for streams with infochange
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: Ia2a9e2303238b5f7f4d185d5c4254a4db26f1a93
2023-02-09 16:11:18 +08:00
Yandong Lin
d9430171f9 [av1d_parser]: fix split frame issue
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I9e96b099e47352ad986253a2ed8278569d48cf3a
2023-02-09 16:11:18 +08:00
Yandong Lin
a7401eded1 [av1d_parser]: fix parse err with unknown metadata
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: Ie6a7c1085bd126c6b776b53f2488f7700aa6d395
2023-02-09 16:08:42 +08:00
Yandong Lin
efd877e4d2 [av1d]: fix dec err for stream with seperate tile groups obu
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: Ib50dd56ad65fbf298b288ebdff0344151de88aa5
2023-02-09 16:08:42 +08:00
Yandong Lin
ba36d64fee [av1d]: fix gm params parse issue
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I5eadcdccba796201ba697c12f6983579608e0998
2023-02-09 16:07:01 +08:00
Herman Chen
eee1ed838e [mpp_dec]: Fix crash on send eos frame to vproc
When sending eos frame to vproc with -1 slot_index and decoder is reset
the -1 index will enter mpp_buf_slot_get_prop and trigger slot assert.

Remove the mpp_buf_slot_get_prop process and just wait until vproc
thread is idle.

Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com>
Change-Id: Idf4a523ea039a16c92cd466f6d8d954f5709e70e
2023-02-02 10:31:45 +08:00
Johnson Ding
5652daa280 [vdpu382_avs2]: Fix ref info reading at link mode
According to patch at https://10.10.10.29/c/rk/kernel/+/174932,
reference usage should be read from reg265.

Change-Id: I59aa3476e90a85debaf2f64e7aa64c2a75b621fa
Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
2023-02-01 17:42:12 +08:00
xueman.ruan
4c9071d19a [vp8e]: Fix vp8 reencode logic error.
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I0ca2e7725fb2dfb746c882eed14c0e9cf17353db
Signed-off-by: xueman.ruan <xueman.ruan@rock-chips.com>
2023-01-31 11:40:35 +08:00
xueman.ruan
69870145ef [avs2d]: Fix fbc output error.
1. add offset_y for output frame.
2. set hor_stride 64 aligned.

Signed-off-by: xueman.ruan <xueman.ruan@rock-chips.com>
Change-Id: Ie399c2d1f9d783e498d16fbaa409529f7dff71ea
2023-01-29 08:56:27 +08:00
Herman Chen
f36b3425dc [h264e]: Add segment info for gdr prefix nal
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I12a5efd496496ddba43f15a3a5358bcbed86ec94
2023-01-15 15:26:12 +08:00
Chandler Chen
8189983f15 [vdpu382] fix build error
Signed-off-by: Chandler Chen <chandler.chen@rock-chips.com>
Change-Id: I57ac847f07ae7a4e627bdfc2c7e0978477184e9a
2023-01-15 09:49:01 +08:00
Johnson Ding
75fa02920f [h264d]: Fix MVC slice parsing error
When packet is splited outside, the slice_layer_extension NALU won't be
store correctly. We need to treat it as a normal slice NALU.

Change-Id: I4bc3a700e30dffd6a028b63876773889cb01eaff
Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
2023-01-13 14:49:09 +08:00
Chandler Chen
4c14bb1556 [mpp_soc] dec hw_cap add cap_colmv_compress
Signed-off-by: Chandler Chen <chandler.chen@rock-chips.com>
Change-Id: I13b98c5227f03a235c48cfdb639286e7ee595b3f
2023-01-13 14:20:00 +08:00
Chandler Chen
726840336e [mpp_soc] add hw cap for rk3528
Signed-off-by: Chandler Chen <chandler.chen@rock-chips.com>
Change-Id: Iadd4e3b99789a52f24a8da1dc96896ffc59a0266
2023-01-13 14:20:00 +08:00
Chandler Chen
1756c9a4de [mpp_soc][hal]: Add rk3562 support
add hw_id define for rk3562 & rk3528

Signed-off-by: Chandler Chen <chandler.chen@rock-chips.com>
Change-Id: Ie32ecec242da6bdcb59a1df3e3f2a3a1a54fd695
2023-01-13 14:20:00 +08:00
Yandong Lin
f3c5e843cb [vdpu382]: add two mode to config rcb info
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I5b90f129ee29ed656b5b1c47a268274de29de6c2
2023-01-13 10:17:53 +08:00
Herman Chen
101d43bef1 [mpp_enc]: Send header on gdr recovery point
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I50a3420555320dd77eceee038d53afeade35963f
2023-01-12 16:25:08 +08:00