mpp-nyanmisaka/inc/rk_vdec_kcfg.h
Herman Chen b40657a3c7 feat[kmpp_vdec]: Add kmpp_vdec module
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I9467fa122fa0c5f3d755714ea63e089a4d86eca9
2025-10-24 17:34:33 +08:00

51 lines
1.7 KiB
C

/* SPDX-License-Identifier: Apache-2.0 OR MIT */
/*
* Copyright (c) 2025 Rockchip Electronics Co., Ltd.
*/
#ifndef __RK_VDEC_KCFG_H__
#define __RK_VDEC_KCFG_H__
#include "rk_type.h"
#include "mpp_err.h"
typedef void* MppVdecKcfg;
#ifdef __cplusplus
extern "C" {
#endif
typedef enum {
MPP_VDEC_KCFG_TYPE_INIT,
MPP_VDEC_KCFG_TYPE_DEINIT,
MPP_VDEC_KCFG_TYPE_RESET,
MPP_VDEC_KCFG_TYPE_START,
MPP_VDEC_KCFG_TYPE_STOP,
MPP_VDEC_KCFG_TYPE_BUTT,
} MppVdecKcfgType;
MPP_RET mpp_vdec_kcfg_init(MppVdecKcfg *cfg, MppVdecKcfgType type);
MPP_RET mpp_vdec_kcfg_init_by_name(MppVdecKcfg *cfg, const char *name);
MPP_RET mpp_vdec_kcfg_deinit(MppVdecKcfg cfg);
MPP_RET mpp_vdec_kcfg_set_s32(MppVdecKcfg cfg, const char *name, RK_S32 val);
MPP_RET mpp_vdec_kcfg_set_u32(MppVdecKcfg cfg, const char *name, RK_U32 val);
MPP_RET mpp_vdec_kcfg_set_s64(MppVdecKcfg cfg, const char *name, RK_S64 val);
MPP_RET mpp_vdec_kcfg_set_u64(MppVdecKcfg cfg, const char *name, RK_U64 val);
MPP_RET mpp_vdec_kcfg_set_ptr(MppVdecKcfg cfg, const char *name, void *val);
MPP_RET mpp_vdec_kcfg_set_st(MppVdecKcfg cfg, const char *name, void *val);
MPP_RET mpp_vdec_kcfg_get_s32(MppVdecKcfg cfg, const char *name, RK_S32 *val);
MPP_RET mpp_vdec_kcfg_get_u32(MppVdecKcfg cfg, const char *name, RK_U32 *val);
MPP_RET mpp_vdec_kcfg_get_s64(MppVdecKcfg cfg, const char *name, RK_S64 *val);
MPP_RET mpp_vdec_kcfg_get_u64(MppVdecKcfg cfg, const char *name, RK_U64 *val);
MPP_RET mpp_vdec_kcfg_get_ptr(MppVdecKcfg cfg, const char *name, void **val);
MPP_RET mpp_vdec_kcfg_get_st(MppVdecKcfg cfg, const char *name, void *val);
void mpp_vdec_kcfg_show(MppVdecKcfg cfg);
#ifdef __cplusplus
}
#endif
#endif /*__RK_VDEC_KCFG_H__*/