mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-24 11:16:51 +00:00
rkmpp: update to f367af4
This commit is contained in:
parent
e1da5b4a93
commit
a6e2371d14
@ -2,8 +2,8 @@
|
||||
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="rkmpp"
|
||||
PKG_VERSION="50d2179ff5d271c591f87082ad757aa99ee6501d"
|
||||
PKG_SHA256="f9bc02d987de47b98aa9c847ca696bf23fedcdd8bed7f1fe8509cc5ba25954ed"
|
||||
PKG_VERSION="f367af4a37db719dde7a03a09bc0bb977b185a29"
|
||||
PKG_SHA256="546f74e2e6ef9bbd543778fd39793f552929db2838b518a5c7a51e864756c73f"
|
||||
PKG_ARCH="arm aarch64"
|
||||
PKG_LICENSE="APL"
|
||||
PKG_SITE="https://github.com/rockchip-linux/mpp"
|
||||
|
@ -1,4 +1,4 @@
|
||||
From dded8152c718456fc35e4ba8ae42aca9b92509f0 Mon Sep 17 00:00:00 2001
|
||||
From 3b9802254aeed9a0708d6c0c6b64c6b94ede3fa5 Mon Sep 17 00:00:00 2001
|
||||
From: Jakob Unterwurzacher <jakob.unterwurzacher@theobroma-systems.com>
|
||||
Date: Mon, 29 May 2017 14:08:43 +0200
|
||||
Subject: [PATCH] fix 32-bit mmap issue on 64-bit kernels
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 0bcf210be37b631039ceef89155538770ccefed7 Mon Sep 17 00:00:00 2001
|
||||
From 9e8b370b826e662879fcec9193956ec59a7db331 Mon Sep 17 00:00:00 2001
|
||||
From: Jonas Karlman <jonas@kwiboo.se>
|
||||
Date: Sun, 24 Jun 2018 11:07:44 +0200
|
||||
Subject: [PATCH] disable unit tests by default
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 773108dc3584ce325ff4127dbd54a0a935a89bfc Mon Sep 17 00:00:00 2001
|
||||
From 57a996a3c2ebf8991216c9084b476254e205c28c Mon Sep 17 00:00:00 2001
|
||||
From: Jonas Karlman <jonas@kwiboo.se>
|
||||
Date: Fri, 7 Sep 2018 19:53:10 +0200
|
||||
Subject: [PATCH] [h264d]: fix mpp_buf_slot_get_prop crash
|
||||
@ -8,10 +8,10 @@ Subject: [PATCH] [h264d]: fix mpp_buf_slot_get_prop crash
|
||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/mpp/codec/dec/h264/h264d_init.c b/mpp/codec/dec/h264/h264d_init.c
|
||||
index f32c2a77..46f02466 100644
|
||||
index cd17776c..acad2ea7 100644
|
||||
--- a/mpp/codec/dec/h264/h264d_init.c
|
||||
+++ b/mpp/codec/dec/h264/h264d_init.c
|
||||
@@ -1387,7 +1387,11 @@ static RK_U32 check_ref_dbp_err(H264_DecCtx_t *p_Dec, H264_RefPicInfo_t *pref, R
|
||||
@@ -1401,7 +1401,11 @@ static RK_U32 check_ref_dbp_err(H264_DecCtx_t *p_Dec, H264_RefPicInfo_t *pref, R
|
||||
for (i = 0; i < MAX_REF_SIZE; i++) {
|
||||
if (pref[i].valid) {
|
||||
MppFrame mframe = NULL;
|
@ -1,140 +0,0 @@
|
||||
From 51c122a2ee9a1f06c6a33bddc0be2db1065bb385 Mon Sep 17 00:00:00 2001
|
||||
From: Jonas Karlman <jonas@kwiboo.se>
|
||||
Date: Tue, 7 Aug 2018 18:14:57 +0200
|
||||
Subject: [PATCH] [h264d]: revert vdpu fast mode code
|
||||
|
||||
---
|
||||
mpp/hal/rkdec/h264d/hal_h264d_vdpu1.c | 18 +++++-------------
|
||||
mpp/hal/rkdec/h264d/hal_h264d_vdpu2.c | 18 +++++-------------
|
||||
2 files changed, 10 insertions(+), 26 deletions(-)
|
||||
|
||||
diff --git a/mpp/hal/rkdec/h264d/hal_h264d_vdpu1.c b/mpp/hal/rkdec/h264d/hal_h264d_vdpu1.c
|
||||
index 59d1d7dd..35356c2f 100644
|
||||
--- a/mpp/hal/rkdec/h264d/hal_h264d_vdpu1.c
|
||||
+++ b/mpp/hal/rkdec/h264d/hal_h264d_vdpu1.c
|
||||
@@ -416,7 +416,8 @@ static MPP_RET vdpu1_set_vlc_regs(H264dHalCtx_t *p_hal,
|
||||
//!< set poc to buffer
|
||||
{
|
||||
H264dVdpuRegCtx_t *reg_ctx = (H264dVdpuRegCtx_t *)p_hal->reg_ctx;
|
||||
- RK_U32 *pocBase = (RK_U32 *)mpp_buffer_get_ptr(reg_ctx->poc_buf);
|
||||
+ RK_U32 *pocBase = (RK_U32 *)((RK_U8 *)mpp_buffer_get_ptr(reg_ctx->cabac_buf)
|
||||
+ + VDPU_CABAC_TAB_SIZE);
|
||||
|
||||
//!< set reference reorder poc
|
||||
for (i = 0; i < 32; i++) {
|
||||
@@ -620,7 +621,8 @@ static MPP_RET vdpu1_set_asic_regs(H264dHalCtx_t *p_hal,
|
||||
H264dVdpuRegCtx_t *reg_ctx = (H264dVdpuRegCtx_t *)p_hal->reg_ctx;
|
||||
if (p_hal->pp->scaleing_list_enable_flag) {
|
||||
RK_U32 temp = 0;
|
||||
- RK_U32 *ptr = (RK_U32 *)mpp_buffer_get_ptr(reg_ctx->sclst_buf);
|
||||
+ RK_U32 *ptr = (RK_U32 *)((RK_U8 *)mpp_buffer_get_ptr(reg_ctx->cabac_buf)
|
||||
+ + VDPU_CABAC_TAB_SIZE + VDPU_POC_BUF_SIZE);
|
||||
|
||||
for (i = 0; i < 6; i++) {
|
||||
for (j = 0; j < 4; j++) {
|
||||
@@ -722,21 +724,15 @@ MPP_RET vdpu1_h264d_init(void *hal, MppHalCfg *cfg)
|
||||
H264dVdpuRegCtx_t *reg_ctx = (H264dVdpuRegCtx_t *)p_hal->reg_ctx;
|
||||
//!< malloc buffers
|
||||
FUN_CHECK(ret = mpp_buffer_get(p_hal->buf_group,
|
||||
- ®_ctx->cabac_buf, VDPU_CABAC_TAB_SIZE));
|
||||
+ ®_ctx->cabac_buf, VDPU_CABAC_TAB_SIZE + VDPU_POC_BUF_SIZE + VDPU_SCALING_LIST_SIZE));
|
||||
RK_U32 i = 0;
|
||||
RK_U32 loop = p_hal->fast_mode ? MPP_ARRAY_ELEMS(reg_ctx->reg_buf) : 1;
|
||||
for (i = 0; i < loop; i++) {
|
||||
reg_ctx->reg_buf[i].regs = mpp_calloc_size(void, sizeof(H264dVdpu1Regs_t));
|
||||
- FUN_CHECK(ret = mpp_buffer_get(p_hal->buf_group,
|
||||
- ®_ctx->reg_buf[i].poc, VDPU_POC_BUF_SIZE));
|
||||
- FUN_CHECK(ret = mpp_buffer_get(p_hal->buf_group,
|
||||
- ®_ctx->reg_buf[i].sclst, VDPU_SCALING_LIST_SIZE));
|
||||
}
|
||||
|
||||
if (!p_hal->fast_mode) {
|
||||
reg_ctx->regs = reg_ctx->reg_buf[0].regs;
|
||||
- reg_ctx->poc_buf = reg_ctx->reg_buf[0].poc;
|
||||
- reg_ctx->sclst_buf = reg_ctx->reg_buf[0].sclst;
|
||||
}
|
||||
//!< copy cabac table bytes
|
||||
FUN_CHECK(ret = mpp_buffer_write(reg_ctx->cabac_buf, 0,
|
||||
@@ -771,8 +767,6 @@ MPP_RET vdpu1_h264d_deinit(void *hal)
|
||||
RK_U32 loop = p_hal->fast_mode ? MPP_ARRAY_ELEMS(reg_ctx->reg_buf) : 1;
|
||||
for (i = 0; i < loop; i++) {
|
||||
MPP_FREE(reg_ctx->reg_buf[i].regs);
|
||||
- mpp_buffer_put(reg_ctx->reg_buf[i].poc);
|
||||
- mpp_buffer_put(reg_ctx->reg_buf[i].sclst);
|
||||
}
|
||||
mpp_buffer_put(reg_ctx->cabac_buf);
|
||||
MPP_FREE(p_hal->reg_ctx);
|
||||
@@ -809,8 +803,6 @@ MPP_RET vdpu1_h264d_gen_regs(void *hal, HalTaskInfo *task)
|
||||
for (i = 0; i < MPP_ARRAY_ELEMS(reg_ctx->reg_buf); i++) {
|
||||
if (!reg_ctx->reg_buf[i].valid) {
|
||||
task->dec.reg_index = i;
|
||||
- reg_ctx->poc_buf = reg_ctx->reg_buf[i].poc;
|
||||
- reg_ctx->sclst_buf = reg_ctx->reg_buf[i].sclst;
|
||||
reg_ctx->regs = reg_ctx->reg_buf[i].regs;
|
||||
reg_ctx->reg_buf[i].valid = 1;
|
||||
break;
|
||||
diff --git a/mpp/hal/rkdec/h264d/hal_h264d_vdpu2.c b/mpp/hal/rkdec/h264d/hal_h264d_vdpu2.c
|
||||
index 7ad44840..71dd9e44 100644
|
||||
--- a/mpp/hal/rkdec/h264d/hal_h264d_vdpu2.c
|
||||
+++ b/mpp/hal/rkdec/h264d/hal_h264d_vdpu2.c
|
||||
@@ -451,7 +451,8 @@ static MPP_RET set_vlc_regs(H264dHalCtx_t *p_hal, H264dVdpuRegs_t *p_regs)
|
||||
//!< set poc to buffer
|
||||
{
|
||||
H264dVdpuRegCtx_t *reg_ctx = (H264dVdpuRegCtx_t *)p_hal->reg_ctx;
|
||||
- RK_U32 *ptr = (RK_U32 *)mpp_buffer_get_ptr(reg_ctx->poc_buf);
|
||||
+ RK_U32 *ptr = (RK_U32 *)((RK_U8 *)mpp_buffer_get_ptr(reg_ctx->cabac_buf)
|
||||
+ + VDPU_CABAC_TAB_SIZE);
|
||||
//!< set reference reorder poc
|
||||
for (i = 0; i < 32; i++) {
|
||||
if (pp->RefFrameList[i / 2].bPicEntry != 0xff) {
|
||||
@@ -636,7 +637,8 @@ static MPP_RET set_asic_regs(H264dHalCtx_t *p_hal, H264dVdpuRegs_t *p_regs)
|
||||
H264dVdpuRegCtx_t *reg_ctx = (H264dVdpuRegCtx_t *)p_hal->reg_ctx;
|
||||
if (p_hal->pp->scaleing_list_enable_flag) {
|
||||
RK_U32 temp = 0;
|
||||
- RK_U32 *ptr = (RK_U32 *)mpp_buffer_get_ptr(reg_ctx->cabac_buf);
|
||||
+ RK_U32 *ptr = (RK_U32 *)((RK_U8 *)mpp_buffer_get_ptr(reg_ctx->cabac_buf)
|
||||
+ + VDPU_CABAC_TAB_SIZE + VDPU_POC_BUF_SIZE);
|
||||
|
||||
for (i = 0; i < 6; i++) {
|
||||
for (j = 0; j < 4; j++) {
|
||||
@@ -686,21 +688,15 @@ MPP_RET vdpu2_h264d_init(void *hal, MppHalCfg *cfg)
|
||||
H264dVdpuRegCtx_t *reg_ctx = (H264dVdpuRegCtx_t *)p_hal->reg_ctx;
|
||||
//!< malloc buffers
|
||||
FUN_CHECK(ret = mpp_buffer_get(p_hal->buf_group,
|
||||
- ®_ctx->cabac_buf, VDPU_CABAC_TAB_SIZE));
|
||||
+ ®_ctx->cabac_buf, VDPU_CABAC_TAB_SIZE + VDPU_POC_BUF_SIZE + VDPU_SCALING_LIST_SIZE));
|
||||
RK_U32 i = 0;
|
||||
RK_U32 loop = p_hal->fast_mode ? MPP_ARRAY_ELEMS(reg_ctx->reg_buf) : 1;
|
||||
for (i = 0; i < loop; i++) {
|
||||
reg_ctx->reg_buf[i].regs = mpp_calloc_size(void, sizeof(H264dVdpuRegs_t));
|
||||
- FUN_CHECK(ret = mpp_buffer_get(p_hal->buf_group,
|
||||
- ®_ctx->reg_buf[i].poc, VDPU_POC_BUF_SIZE));
|
||||
- FUN_CHECK(ret = mpp_buffer_get(p_hal->buf_group,
|
||||
- ®_ctx->reg_buf[i].sclst, VDPU_SCALING_LIST_SIZE));
|
||||
}
|
||||
|
||||
if (!p_hal->fast_mode) {
|
||||
reg_ctx->regs = reg_ctx->reg_buf[0].regs;
|
||||
- reg_ctx->poc_buf = reg_ctx->reg_buf[0].poc;
|
||||
- reg_ctx->sclst_buf = reg_ctx->reg_buf[0].sclst;
|
||||
}
|
||||
//!< copy cabac table bytes
|
||||
FUN_CHECK(ret = mpp_buffer_write(reg_ctx->cabac_buf, 0,
|
||||
@@ -735,8 +731,6 @@ MPP_RET vdpu2_h264d_deinit(void *hal)
|
||||
RK_U32 loop = p_hal->fast_mode ? MPP_ARRAY_ELEMS(reg_ctx->reg_buf) : 1;
|
||||
for (i = 0; i < loop; i++) {
|
||||
MPP_FREE(reg_ctx->reg_buf[i].regs);
|
||||
- mpp_buffer_put(reg_ctx->reg_buf[i].poc);
|
||||
- mpp_buffer_put(reg_ctx->reg_buf[i].sclst);
|
||||
}
|
||||
mpp_buffer_put(reg_ctx->cabac_buf);
|
||||
MPP_FREE(p_hal->reg_ctx);
|
||||
@@ -773,8 +767,6 @@ MPP_RET vdpu2_h264d_gen_regs(void *hal, HalTaskInfo *task)
|
||||
for (i = 0; i < MPP_ARRAY_ELEMS(reg_ctx->reg_buf); i++) {
|
||||
if (!reg_ctx->reg_buf[i].valid) {
|
||||
task->dec.reg_index = i;
|
||||
- reg_ctx->poc_buf = reg_ctx->reg_buf[i].poc;
|
||||
- reg_ctx->sclst_buf = reg_ctx->reg_buf[i].sclst;
|
||||
reg_ctx->regs = reg_ctx->reg_buf[i].regs;
|
||||
reg_ctx->reg_buf[i].valid = 1;
|
||||
break;
|
@ -1,4 +1,4 @@
|
||||
From 6be271fa4bbebae10ec5e680a2d90266eb3d9ea8 Mon Sep 17 00:00:00 2001
|
||||
From 087282d7d3fb5b5216acf7d10864ab2a42dd8473 Mon Sep 17 00:00:00 2001
|
||||
From: Jonas Karlman <jonas@kwiboo.se>
|
||||
Date: Thu, 1 Mar 2018 22:31:47 +0100
|
||||
Subject: [PATCH] [m2vd]: use ctx pts
|
@ -1,4 +1,4 @@
|
||||
From 50c49fe8cdb9b236d27ec2b1d3195ca5121d9677 Mon Sep 17 00:00:00 2001
|
||||
From e8b390f2a92a9a5668ed8f00255b75d21f9ce60a Mon Sep 17 00:00:00 2001
|
||||
From: Jonas Karlman <jonas@kwiboo.se>
|
||||
Date: Sat, 15 Sep 2018 11:24:28 +0200
|
||||
Subject: [PATCH] [m2vd]: export aspect ratio information
|
Loading…
x
Reference in New Issue
Block a user