Hongjin Li
7c340c8885
[mpp_dec]: update base cfg to decImpl
...
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com >
Change-Id: I6a05657ff921f6652a7641053fdaf2facd1bfd3c
2022-06-15 17:25:30 +08:00
sayon.chen
a053db7241
[h265e]: Fix fractional frame rate issue
...
Change-Id: If26781a4e16592eb0c350f1e6f2ddeeac28bbd86
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com >
2022-06-15 16:04:22 +08:00
xueman.ruan
ec1f93f181
[h265d_parser]: avoid segment fault
...
Signed-off-by: xueman.ruan <xueman.ruan@rock-chips.com >
Change-Id: I6d1e6b4407c56e96657beb731b8a3432e881142c
2022-06-15 09:37:50 +08:00
Herman Chen
dd284cc827
[cmake]: Set VISIBILITY_PRESET to default
...
Change-Id: I3f2266904b8ee83b7c1fe3a419cd4ed931d0036b
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-06-14 14:56:17 +08:00
Herman Chen
675363214a
[test]: Add split_out cfg to mpi_enc_test
...
NOTE: Due to limitation of output task number the split output mode with
block input flow should only have less than 8 slices. Otherwise the
put_frame call will be blocked due to lack of output task slot.
Change-Id: Iab351be04196fa2b3ac3a116bd7c999f570e25eb
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com >
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-06-14 08:58:21 +08:00
Herman Chen
69a46f67e0
[hal_h264e]: Support slice split output callback
...
Change-Id: I6f0b1c3f0c570426c8693f74687832b06ae10c94
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-06-14 08:58:21 +08:00
Herman Chen
33308d0a3c
[hal_h265e]: Support slice split output callback
...
Change-Id: Iddd4a0d9e9daf1751838deb01db239e73e2c4abc
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com >
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-06-14 08:58:21 +08:00
Herman Chen
326dd264b8
[mpp_enc]: Prepareation for slice output mode
...
1. Add mpp_enc_callback for hal module.
2. Add low delay output check.
Change-Id: Ibda81043e3760defc0c2fd41166197a57abbbbe3
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com >
2022-06-14 08:58:21 +08:00
Hongjin Li
3cd4fecca5
[h264d_dpb]: Fix h264 dpb full issue
...
When the poc interval is 1, if there is frame loss,
it will cause dpb to accumulate to the maximum.
Update the poc interval in real time for accidental
frame loss to avoid dpb accumulation.
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com >
Change-Id: Ie1dd39605529bdc9239d4cd27424b4ad2c5bd930
2022-06-09 13:54:36 +08:00
Rimon Xu
4de5c47106
[cmake] fix CMAKE_BUILD_TYPE judge error
...
Change-Id: Ia58609aec3a01374218af9f48b13e72b6883bbbf
Signed-off-by: Rimon Xu <rimon.xu@rock-chips.com >
2022-06-09 12:41:33 +08:00
Grey Li
2edb2d91e8
[jpegd]: unsupport yuv400 upsampling
...
Signed-off-by: Grey Li <grey.li@rock-chips.com >
Change-Id: I4a7488e83a336517ed5dd6b5783b574e43953dd7
2022-06-09 09:18:51 +08:00
Yandong Lin
a33f11fbfd
[mpp_buf_slot]: fix field source display err on fast mode
...
In fast mode, there is a situation:
The current frame is output, when the top field decoding is completed
and the bot field decoding is not completed, because of the top and bot
field share one MppFrame.
Solution: modify the hal_output of SlotStatus frome ont bit to two bits
counter. Using hal_output indicates whether a whole frame completed.
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com >
Change-Id: I18429399e9188c848385c40f847333f1b46fd6bb
2022-06-09 09:01:43 +08:00
Grey Li
d583888955
[jpegd]: support yuv400 same h/v sample ratio
...
Signed-off-by: Grey Li <grey.li@rock-chips.com >
Change-Id: I26788afcce332f80d99bcb95bce739de4d82fe25
2022-06-07 19:09:04 +08:00
sayon.chen
ad3d94c87f
[rc_mode_v2]: Fix reenc qpscale no update cause reenc fail
...
Change-Id: If545e3e0406396daa20c68447b8f06bea2ab43b8
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com >
2022-06-06 10:06:18 +08:00
Herman Chen
cf699e9faa
[mpp_enc]: Add max 2 frame delay on async enc path
...
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
Change-Id: I34dda78bdc3511272dfc76dd8b80e82540298ad9
2022-06-02 15:35:23 +08:00
Herman Chen
811e468f5a
[mpp_device]: Add last flag to PollCfg slice info
...
Change-Id: I262f6a032015e1ce7a05db3dc4db6d01e14d81a7
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-06-02 08:44:30 +08:00
Herman Chen
da2d7e43f2
[mpp_callback]: Separate dec/enc callback param
...
Change-Id: Icd3abeebaca197c7d26c5f376b689430db181769
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-06-02 08:35:37 +08:00
sayon.chen
7f382cc10d
[h265d]: Fix IDR with redundancy nal parse error
...
Change-Id: Ic2bfe0e740b8e1f6952d2ba2d43c20eaebd0cbd2
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com >
2022-06-01 10:33:52 +08:00
sayon.chen
4d1e611051
[h265d]: Skip err nal after slice decode
...
Change-Id: I15f9580bab71259d42c185b081ed6061b6cb9844
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com >
2022-06-01 10:27:48 +08:00
sayon.chen
16b4ef2703
[h265_vdpu34x]: Skip no ref frame decode with fbc
...
Change-Id: I1d43b42dc741e63ccb03a2a1e6f49b4d5a1712d4
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com >
2022-06-01 09:54:40 +08:00
Herman Chen
bb3dd76f91
[hal_task]: Add task stage count on init
...
Change-Id: Ic983ae423f826e244518e8d5ef06124a5c65c5dc
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-05-26 15:09:47 +08:00
Jeffy Chen
0f0d28c2ec
Fix compile errors with musl
...
Tested on RK3588 EVB with musl-1.2.2 and gcc-10.2.
Change-Id: I10574446f46964bad5e67ab45c76060a193b8335
Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com >
2022-05-26 11:19:59 +08:00
Herman Chen
5dccad43d4
[mpi_enc_test]: Add AFBC_V2 source support
...
Change-Id: I089c41137edf39211f33faf234b68295256bcfc1
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-05-24 14:34:41 +08:00
Herman Chen
0d85aab268
[utils]: Add more YUV422 YUYV format support
...
Change-Id: Ic8e2061c01bf6a9603c2291a17eabe0f978ef4f2
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-05-24 14:21:28 +08:00
Herman Chen
1bccabfcd4
[hal_h265e_vepu580]: Fix fbc stride error
...
Change-Id: Idd043f73b9d0e61ebfd47f30e084da7f065bc260
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-05-24 11:40:58 +08:00
Rimon Xu
728d9422f9
[cmake] add -g definitions when debug version
...
Change-Id: I80c83bbda36b49f02d8e7a6877884590d293d9bb
Signed-off-by: Rimon Xu <rimon.xu@rock-chips.com >
2022-05-20 17:45:48 +08:00
Herman Chen
17a47899be
[cmake]: Fix warning on armv8-a
...
Change-Id: I31a26eaa80c980e3e2fa160d8ddcf5fd0a6875ca
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-05-20 16:23:05 +08:00
sayon.chen
42250b7579
[h264e_slice]: Slice read enable 0x3 detection
...
When 0x3 detect used_bits should be add 8bit
Change-Id: If2285fe1f22ccc3fe7907c3f8ee426ead79b0b62
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com >
2022-05-20 16:13:10 +08:00
Herman Chen
2b35cee0ce
[mpp_log]: Add more log helper function
...
1. Move mpp_log.h to inc for external user.
2. Add mpp_debug.h for mpp internal logging.
3. Fix some warning.
4. Add log level setup function.
5. Check env log_level value in mpp_get_log_level call.
NOTE:
1. mpp internal module should use mpp_debug.h and mpp external user
should use mpp_log.h
2. Use mpp_get_log_level to update mpp_log_level when the env changed.
Change-Id: I90a55a02a72db177533013280dfe111ca3479229
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-05-20 11:42:10 +08:00
Hongjin Li
b2479a59ec
[mpp_dec]: Fix the field video pts is abnormal issue
...
The number of input field video frames to the decoder
is half of the number output frame video frames.
When the sorting pts is turned on, only half of the
pts cache is taken out from the pts linked list.
So when decoding field video, only half as many pts are cached.
Change-Id: If9055480365b776475861add1470d68210b65971
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com >
2022-05-20 08:55:15 +08:00
Yandong Lin
0794bf083b
[h264d]: fix fmt assignment for yuv400 souce err
...
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com >
Change-Id: I24e4cd2a7edbb4161a3f7b323482343e2275df67
2022-05-19 10:53:59 +08:00
Grey Li
1ad3e05f13
[h264d]: fix sps id overflow
...
Signed-off-by: Grey Li <grey.li@rock-chips.com >
Change-Id: I3aec751595f4441dac8e9d47065eaf52d40ded5b
2022-05-19 09:06:51 +08:00
Herman Chen
aec7dd7a27
[mpp_frame]: Add error function name on check
...
Change-Id: I889eb1a55af663ce19d7a716e59c5aaae4ac6410
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-05-18 17:06:50 +08:00
Herman Chen
81bbf310e6
Fix extra IDR frame on setup same cfg
...
Change-Id: I40b54e2e4dfa2ed1ba59e25428b08bf98f416263
Signed-off-by: Xinhuang Li <buluess.li@rock-chips.com >
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-05-17 09:58:35 +08:00
Herman Chen
e66e69d389
[mpp_dec]: Diable fast mode when hal not support
...
Change-Id: Ibf1263968ed29b369f079655721046d2d73bad5a
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-05-13 16:48:22 +08:00
Herman Chen
514c92ac7d
[mpp_enc_impl]: Request IDR after reset
...
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
Change-Id: Id6ff0b1b56a2ee3ff6af5794e001f9952f74e855
2022-05-13 14:25:50 +08:00
Herman Chen
d0af51251c
[mpp_enc]: Fix extra segment on multi gen_hdr
...
Change-Id: I706261b30abfd87e2449f7a3a4b259a966920b7a
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-05-13 10:54:52 +08:00
Herman Chen
5d7a4724af
[linux]: Add env detect for syslog flags
...
Change-Id: I70746562aee7131ef25a55db0cae3b7ad0c17164
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-05-12 11:32:24 +08:00
Herman Chen
31aac54a4f
[h264e/h265e]: Add segment info on header gen
...
Change-Id: I8bba93efe03e262a0684f62a9e2a2a03d223f5f2
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-05-11 16:49:44 +08:00
Herman Chen
12858d56d1
[mpp_packet]: Add segment info and segment nb
...
Change-Id: I26cb5bba11393ccfb3a73b0d682b67f219034c13
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-05-11 16:49:30 +08:00
Herman Chen
de864932e3
[h265d]: Fix error of reset on info change
...
Change-Id: I31c5e7a0888da0ff0e7363929d0bd45369149178
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com >
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-05-11 16:47:30 +08:00
Herman Chen
6ddafd0bfa
[mpp_enc]: Add split output flag
...
Split output flag is for low delay packet output mode.
Change-Id: I2f743f14b89864625406ebf94687f4f838f0df15
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-05-10 11:19:23 +08:00
Hongjin Li
badde4fc94
[mpp_h264]: Adjust the range of fast play marker discard
...
Change-Id: Id388f7eec752da6652c4a034e6346d333cdb9cd2
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com >
2022-05-09 09:17:03 +08:00
Herman Chen
b9828c98f2
[hal_bufs]: Add size check on clear
...
Change-Id: I6e294a97d3da6930f72ddb3a6181b7cbf0f3041d
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-05-06 16:08:01 +08:00
shine.liu
e874362996
[h265d]: Fix scaling list prediction delta for the 32x32 inter matrix
...
Change-Id: I2512a20941fcba7c5a43a3aa9f85387b8c9d29a2
Signed-off-by: shine.liu <shine.liu@rock-chips.com >
2022-05-05 14:58:39 +08:00
Herman Chen
31083b6ee3
[mpp]: Add MppIoMode
...
Change-Id: I5cf9fc124396141244d03dca338b4ec05a4504e0
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-04-29 17:47:59 +08:00
Herman Chen
6f288f656e
[mpp_task]: Add more interface
...
Change-Id: Ib80597267a439d5c42a3cf9eed77614cc8cda5c5
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-04-29 17:38:46 +08:00
Herman Chen
6d43966df0
[mpp_packet]: Add task for internal flow
...
Change-Id: If70f07b2c7e527a9b8335e59b99fcb2cef971614
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-04-29 16:56:50 +08:00
Herman Chen
230837e41e
[mpp_frame]: Add task for internal flow
...
1. Remove next entry in MppFrame.
2. Add MppTask in MppFrame
Change-Id: Icdf4f451e54a30977c5725848c5f4357ae54e6d8
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
2022-04-29 16:56:50 +08:00
Herman Chen
da3fc7c4a8
[mpp_list]: Add more wait functions
...
Signed-off-by: Herman Chen <herman.chen@rock-chips.com >
Change-Id: Icc8457ce1bff75eee7e5b8b8cc34360a339571a8
2022-04-29 09:52:22 +08:00