Commit Graph

54 Commits

Author SHA1 Message Date
Hongjin Li
3ac819df3b feat[err_proc]: Add a new command: DIS_ERR_CLR_MARK
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
2025-03-24 15:06:27 +08:00
Hongjin Li
4db00f4c80 fix[vpu_legacy]: Fix vpu fbc configuration issue
Platform: General

Error case:
When info changing, setting the output format to fbc
causes buffer usage exceptions.

Solution:
Add the MPP_DEC_SET_FRAME_INFO command.

From: Product Department 2 czl

Change-Id: I779ca93b461bf220d64e3d4846128ce2f67ffc89
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
2024-12-13 11:27:26 +08:00
Xingwen Fang
ab45161834 feat[vpu_api]: Support configuration to disable decoding errors
Signed-off-by: Xingwen Fang <fxw@rock-chips.com>
Change-Id: I9f01c5092c02dc5ff36f27ca1c8eeaf503d0fa17
2024-10-14 11:50:40 +08:00
Hery Xu
2ea1a7ecd3 [vpu_api]: support nv21 format encode
Change-Id: I82af5c70702b759afbce8665ff536c517d164831
Signed-off-by: Hery Xu <hery.xu@rock-chips.com>
2024-04-16 09:26:53 +08:00
Rimon Xu
cb8fa73dbd [vpu_api_legacy]: Support input timeout control
Signed-off-by: Rimon Xu <rimon.xu@rock-chips.com>
Change-Id: I960d28a75f1ae9425bb0db54dc2e017102b7e6cb
2023-07-11 15:29:20 +08:00
Rimon Xu
dcedc39754 [vpu_api_legacy]: Support frame ready callback control
Signed-off-by: Rimon Xu <rimon.xu@rock-chips.com>
Change-Id: I7de1fcab204cdf7216d8f761763337da14923e59
2023-07-11 14:44:43 +08:00
dawnming.huang
9793b87ae2 [vpu_api_legacy] add contorl fbc horstride 256 odd align
Change-Id: Ife97b9585f9471705557612139c03caea479268b
Signed-off-by: dawnming.huang <dawnming.huang@rock-chips.com>
2022-12-30 12:32:14 +08:00
He Hua
93b1cd14f2 [vpu_api]: modify struct VideoFrame
1. add viewid in struct VideoFrame for mvc output
2. modify reserved to int type for future

Signed-off-by: He Hua <hh@rock-chips.com>
Change-Id: Ib95999221bef8c9d385b70736ab7978926a78836
2022-12-26 11:00:49 +08:00
He Hua
0f15067fcb [vpu_api]: Support mvc enable/disable cmd
Signed-off-by: He Hua <hh@rock-chips.com>
Change-Id: I58ffbfff1e9df937f54f8a92422838e30c49c15a
2022-12-26 09:31:33 +08:00
Grey Li
c2b676f089 [vpu_api]: Support set dec scale and hdr meta
Signed-off-by: Grey Li <grey.li@rock-chips.com>
Change-Id: Iafbd7b30ecee5894c44d7805598c8c425f83c166
2022-12-08 18:48:59 +08:00
Grey Li
6f325d444c [vpu_api]: use fbc fmt instead color space
Signed-off-by: Grey Li <grey.li@rock-chips.com>
Change-Id: Ia76fd5c09fc8ab9b9ac2f4365cbc1ff0f2b4f612
2022-12-08 18:47:40 +08:00
Grey Li
78b6db4a4a [vpu_api_legacy] suport avs2
Signed-off-by: Grey Li <grey.li@rock-chips.com>
Change-Id: I8ade3067a9de148ee27f3c6b92962b95b688e77a
2022-11-28 10:25:40 +08:00
Herman Chen
8828359534 [misc]: chmod all code file to 644
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I2225d7508a7f8bf5693077d20f48065e8324b318
2022-11-02 11:10:49 +08:00
Hery Xu
618cee428c [vpu_api_legacy] add cmd to use mpi config
Signed-off-by: Hery Xu <hery.xu@rock-chips.com>
Change-Id: I205e2f7e9015f09a59613850e828d72b85e59370
2022-11-01 15:09:49 +08:00
Yandong Lin
3adde926e2 [avs]: Add avs module
NOTE: I frame header decoding should check stream version.

Signed-off-by: Ding Wei <leo.ding@rock-chips.com>
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
Change-Id: I1c8276f4499d73e3b60d582890037dec376e136f
2022-10-13 15:16:13 +08:00
Chen Jinsen
a26e71291e [vpu_api_legacy]: support fbc fmt setup
Signed-off-by: Chen Jinsen <kevin.chen@rock-chips.com>
Change-Id: If43694ce50a0f163776a260a1a919d2f9d12a4d0
2021-04-22 11:29:48 +08:00
shine.liu
9714d846d9 [legacy]: add cfg for FIXQP mode from outside
Change-Id: I6945630c8fb2fc8188c8ff8d608e017c34f4239d
Signed-off-by: shine.liu <shine.liu@rock-chips.com>
2020-12-09 17:46:50 +08:00
Herman Chen
455e1ceb40 [legacy]: Add VPU_API_SET_PARSER_SPLIT_MODE ctrl
Add VPU_API_SET_PARSER_SPLIT_MODE control for MPP_DEC_SET_PARSER_SPLIT_MODE

Change-Id: I7d6c2738f8d39ac4b179ae5d0c8534b580de80b7
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2020-08-11 11:52:41 +08:00
Herman Chen
6a64cde817 [mlvec]: Add MLVEC interface in vpu_api
1. Add vpu_api_mlvec module.
2. Attach vpu_api_mlvec module to vpu_api_legacy.
3. Add static and dynamic configure process.
4. At VpuApiLegacy::init if the extra_data is NULL do not get sps/pps.
5. Add VPU_API_GET_EXTRA_INFO (0x200) control to provide sps/pps.

Change-Id: I4666148ba4c150eea81bfa8cd25b63264cd16a2b
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2020-07-24 16:18:31 +08:00
Chen Jinsen
1af542e405 [legacy]: vframe add vui info
Change-Id: I595e90cd46412a37440b9555f93fb8fa46d9d6dd
Signed-off-by: Chen Jinsen <kevin.chen@rock-chips.com>
Signed-off-by: Hery Xu <hery.xu@rock-chips.com>
2019-11-19 09:08:38 +08:00
Ding Wei
3e5ad4fed3 [h265e]: add h265 encoder code
Change-Id: I08350dc76d3040bc1a16a3d8234f836f5fbf69d0
Signed-off-by: Ding Wei <leo.ding@rock-chips.com>
2018-11-21 09:59:31 +08:00
Ding Wei
44ad1558ec [vpu_api]: add command VPU_API_SET_IMMEDIATE_OUT
tips: this command is used to set decoded frame immediate out,
whehter is in display order or not.

Change-Id: I0b6b2c34fde722fe724019118c7af142b4b2e6f1
Signed-off-by: Ding Wei <leo.ding@rock-chips.com>
2018-05-03 09:53:10 +08:00
Ding Wei
f391bd9ea4 [vpu_api]: modify interface to get stride when buffer malloc
1. remove vpu_api_get_format interface.
2. rename vpu_api improper name.

Change-Id: I8986b989ab352972f8f03fb1d3c35447bf3eda47
Signed-off-by: Ding Wei <leo.ding@rock-chips.com>
2017-11-22 10:07:04 +08:00
leo.ding
e54fafe8cb [vpu_api]: add vpuCodecContext parameters
a) mpp_mode: if have rkv, can set it 1 to use rkv decoder
b) bit_depth: for calculate stride
c) yuv_format: for setting multiplication coefficient when malloc

Change-Id: Id7c32c7cac17d3c9007a0674979c2b73769ae44f
Signed-off-by: leo.ding <leo.ding@rock-chips.com>
2017-10-11 09:58:01 +08:00
leo.ding
28bdc96b2d [vpu_api_legacy]: disprese MPP_DEC_SET_FRAME_INFO function to
each codec.

Change-Id: I5ac177fbaba6e81db53c7d162a1d81ba3e00c2e4
Signed-off-by: leo.ding <leo.ding@rock-chips.com>
2017-09-06 10:08:31 +08:00
Randy Li
ab07acf076 [legacy]: update hevc device node name
I also fix a number of compiler warnings in this commmit.
A funtion is forgot to be exported and some functions should not
be exported.

Change-Id: I945456721a7507d448cfa0559418c356c6cb6ace
Signed-off-by: Randy Li <randy.li@rock-chips.com>
2017-04-05 14:13:07 +08:00
rimon.xu
cd27842b1e [h265d]: add h265d colorType support HDR
1.colorType bitmask add dynamic range and color space
2.need to cooperate with mediacodec modifications
3.need to cooperate with omx_il modifications

Change-Id: Ib8c23f6b0488cf799e69ced2bdc9b54d309a1630
Signed-off-by: rimon.xu <rimon.xu@rock-chips.com>
2017-02-27 17:43:10 +08:00
Herman Chen
444e8b429f [mpp]: Fix compile warning for strict-prototypes
Change-Id: Ia430a5d157dc2d19c92a43ca15eab83f1ac540c6
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2017-01-11 10:43:27 +08:00
timkingh.huang
34698dcaf8 [tools]: add doxygen config file
1.The INPUT tag used to specify the files and/or directories that
contain documented source files is set to mpp/inc.
2.The OUTPUT_DIRECTORY tag used to specify the (relative or absolute)
path into which the generated documentation will be written is set
to mpp/doc.
3.Assuming that doxygen is configured correctly under Linux, if you
want to get documentation of pdf format, do as follow:
    cd mpp/tools
    doxygen mpp_doxyfile
    cd ../doc/latex
    make
4.mpp/doc/html contains documentation of html format.
5.modify notes of vpu_api.h and rk_mpi.h.

Change-Id: I02b09514ff44b4689ea99e3d99d2acc9eb58cd19
Signed-off-by: timkingh.huang <timkingh.huang@rock-chips.com>
2016-11-30 11:33:41 +08:00
Herman Chen
1752473f33 [mpi]: fix -Wstrict-prototypes warning
Change-Id: If9549b213c6b5d5545186e1289a436957160924f
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-09-14 16:13:28 +08:00
Lin Kesheng
60373a6973 [all]: format code
use fromdos to change file type, remove ^M in code.

Change-Id: I000202dc51fcff57cc0771455baebea595115b1d
Signed-off-by: Lin Kesheng <lks@rock-chips.com>
2016-09-08 15:21:02 +08:00
Herman Chen
43bfdc6bdf [format]: format coding style
Change-Id: I3d0e081f6636ca8162df4bda68618ec0ba37e7ae
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2016-08-23 09:16:22 +08:00
ChenHengming
05e4178f9d [mpp_enc]: implement more encoder control function
git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@1119 6e48237b-75ef-9749-8fc9-41990f28c85a
2016-07-28 06:39:53 +00:00
ChenHengming
abc3e78078 [mpp_enc]: remove mpp_enc_get_extra_data and mpp_enc_get_extra_data_size function and use control to get sps/pps of H.264 encoder
git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@1104 6e48237b-75ef-9749-8fc9-41990f28c85a
2016-07-27 06:27:32 +00:00
ZhaoJun
28745421d5 [sofia-3gr-linux]: add sofia-3gr-linux platform support
git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@1096 6e48237b-75ef-9749-8fc9-41990f28c85a
2016-07-25 08:32:27 +00:00
ChenHengming
34d8d5b04e [mpp_enc]: add more print to encoder configure process
git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@1070 6e48237b-75ef-9749-8fc9-41990f28c85a
2016-07-22 01:49:39 +00:00
ChenHengming
4201f689c0 [format]: format coding style
git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@907 6e48237b-75ef-9749-8fc9-41990f28c85a
2016-06-13 09:47:19 +00:00
ChenHengming
c0866a76f9 [comment]: fix company name hand writing error
git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@906 6e48237b-75ef-9749-8fc9-41990f28c85a
2016-06-13 09:42:31 +00:00
ChenHengming
916fcd2fbe [misc]: code clean up and remove unused functions
git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@745 6e48237b-75ef-9749-8fc9-41990f28c85a
2016-05-12 10:02:19 +00:00
DingWei
ecf49af775 [vpu_api] add VPU_API_GET_VPUMEM_USED_COUNT
[h264d]  remove dpb_info_old; check_dpb,and add h264d_reset
[mpp_buf_slot]  add get_used_slot_count

git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@600 6e48237b-75ef-9749-8fc9-41990f28c85a
2016-04-05 03:10:03 +00:00
DingWei
653a6b5aa4 [mpi] add avs marco
[vpu_api] add avs marco
[avsd]    add avs interface
[test]    comment
[h264d]   move h264d_rw to codec 

git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@599 6e48237b-75ef-9749-8fc9-41990f28c85a
2016-04-01 09:49:23 +00:00
DingWei
a9b5219f97 [h264d] 1.h264d_init picbuf => refpic; astyle format
git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@591 6e48237b-75ef-9749-8fc9-41990f28c85a
2016-03-18 03:51:32 +00:00
DingWei
a3151e2aac [vpu_api] add VPU_API_DEC_GET_STREAM_COUNT cmd to query packets stored in vpu which have not been decoded.
git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@586 6e48237b-75ef-9749-8fc9-41990f28c85a
2016-03-11 09:33:54 +00:00
ChenSiyong
24c3d7712e [mpp_dec]:add default horstride verstrid config for first frame info set
git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@579 6e48237b-75ef-9749-8fc9-41990f28c85a
2016-02-26 03:49:52 +00:00
ChenHengming
4bf0d086a3 [astyle]: format coding style
git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@539 6e48237b-75ef-9749-8fc9-41990f28c85a
2016-01-20 09:45:56 +00:00
ChenSiyong
0aabc8d9d9 1、[h265d] skip decoder poc small then cra frame,fix seek picture mosaic
2、[h265d] skip hevcc case the steam is align with zero cause decoder fail
3、[mpp_dec] add fast dec path for mpp dec   

git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@507 6e48237b-75ef-9749-8fc9-41990f28c85a
2015-12-10 21:44:51 +00:00
DingWei
21230b11bc [vpu_api] add VPU_FRAME_ERR enums
[mpp_frame] add error info functions
[h264d]     add callback function;
            update SEI function;
            DivX && YUV444 unsupport return

git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@505 6e48237b-75ef-9749-8fc9-41990f28c85a
2015-12-09 21:28:43 +00:00
ChenHengming
a813c14c3c [mpi]: add new mpp_control cmd
git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@391 6e48237b-75ef-9749-8fc9-41990f28c85a
2015-10-19 22:29:51 +00:00
ChenHengming
511e6bbbb0 [codec_h265d]: merge csy's h265d module
[hal_task]: add input_packet to parser_prepare output, change stmbuf to input_index

git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@352 6e48237b-75ef-9749-8fc9-41990f28c85a
2015-10-12 15:56:08 +00:00
ChenHengming
5c32a968af [vpu_api]: add legacy VPU_OUTPUT_FORMAT definition
git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@103 6e48237b-75ef-9749-8fc9-41990f28c85a
2015-08-14 01:06:51 +00:00