author | renjiang.han <renjiang.han@amlogic.com> | 2020-03-31 10:04:36 (GMT) |
---|---|---|
committer | Zhi Zhou <zhi.zhou@amlogic.com> | 2020-04-29 10:35:00 (GMT) |
commit | b39d60ee00946c97b8f1e9e3a900ec05650964c7 (patch) | |
tree | d05bac31796bfe67da4e621f422f23458d95e9b6 | |
parent | 8f51e2702d60f4a11c84e6f4296855497d001676 (diff) | |
download | media_modules-b39d60ee00946c97b8f1e9e3a900ec05650964c7.zip media_modules-b39d60ee00946c97b8f1e9e3a900ec05650964c7.tar.gz media_modules-b39d60ee00946c97b8f1e9e3a900ec05650964c7.tar.bz2 |
vdec: add vdetect in path. [1/1]
PD#SWPL-19199
Problem:
add vdetect module for vnn scene judgment feature.
Solution:
Add the vdetect module to provide vf data for vnn to judge the scene.
set /sys/module/decoder_common/parameters/debug_vdetect to 0 can close
vdetect module function. The default of the vdetect module is closed.
Verify:
on ab301
Change-Id: Id8cce2a017f2cae3835c96668e13c457ed17929f
Signed-off-by: renjiang.han <renjiang.han@amlogic.com>
-rw-r--r-- | drivers/frame_provider/decoder/utils/vdec.c | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/drivers/frame_provider/decoder/utils/vdec.c b/drivers/frame_provider/decoder/utils/vdec.c index c1f4037..00b154a 100644 --- a/drivers/frame_provider/decoder/utils/vdec.c +++ b/drivers/frame_provider/decoder/utils/vdec.c @@ -85,6 +85,7 @@ static DEFINE_MUTEX(vdec_mutex); static int inited_vcodec_num; #define jiffies_ms div64_u64(get_jiffies_64() * 1000, HZ) static int poweron_clock_level; +static int debug_vdetect = 0; static int keep_vdec_mem; static unsigned int debug_trace_num = 16 * 20; static int step_mode; @@ -2294,9 +2295,17 @@ s32 vdec_init(struct vdec_s *vdec, int is_4k) "%s %s", vdec->vf_provider_name, "amlvideo amvideo"); } else { - snprintf(vdec->vfm_map_chain, VDEC_MAP_NAME_SIZE, - "%s %s", vdec->vf_provider_name, - "amlvideo ppmgr deinterlace amvideo"); + if (debug_vdetect) + snprintf(vdec->vfm_map_chain, + VDEC_MAP_NAME_SIZE, + "%s vdetect.0 %s", + vdec->vf_provider_name, + "amlvideo ppmgr deinterlace amvideo"); + else + snprintf(vdec->vfm_map_chain, + VDEC_MAP_NAME_SIZE, "%s %s", + vdec->vf_provider_name, + "amlvideo ppmgr deinterlace amvideo"); } snprintf(vdec->vfm_map_id, VDEC_MAP_NAME_SIZE, "vdec-map-%d", vdec->id); @@ -4350,7 +4359,6 @@ static ssize_t enable_mvdec_info_store(struct class *cla, return count; } - static ssize_t store_poweron_clock_level(struct class *class, struct class_attribute *attr, const char *buf, size_t size) @@ -5443,6 +5451,9 @@ module_param(max_di_instance, int, 0664); MODULE_PARM_DESC(max_di_instance, "\n max_di_instance\n"); +module_param(debug_vdetect, int, 0664); +MODULE_PARM_DESC(debug_vdetect, "\n debug_vdetect\n"); + /* *module_init(vdec_module_init); *module_exit(vdec_module_exit); |