Loading drivers/media/platform/msm/vidc/hfi_packetization.c +3 −0 Original line number Diff line number Diff line Loading @@ -458,6 +458,9 @@ static int get_hfi_extradata_index(enum hal_extradata_id index) case HAL_EXTRADATA_LTR_INFO: ret = HFI_PROPERTY_PARAM_VENC_LTR_INFO; break; case HAL_EXTRADATA_METADATA_MBI: ret = HFI_PROPERTY_PARAM_VENC_MBI_DUMPING; break; default: dprintk(VIDC_WARN, "Extradata index not found: %d\n", index); break; Loading drivers/media/platform/msm/vidc/msm_venc.c +19 −13 Original line number Diff line number Diff line Loading @@ -120,6 +120,7 @@ static const char *const mpeg_video_vidc_extradata[] = { "Extradata input crop", "Extradata digital zoom", "Extradata aspect ratio", "Extradata macroblock metadata", }; static const char *const perf_level[] = { Loading Loading @@ -687,7 +688,7 @@ static struct msm_vidc_ctrl msm_venc_ctrls[] = { .name = "Extradata Type", .type = V4L2_CTRL_TYPE_MENU, .minimum = V4L2_MPEG_VIDC_EXTRADATA_NONE, .maximum = V4L2_MPEG_VIDC_EXTRADATA_LTR, .maximum = V4L2_MPEG_VIDC_EXTRADATA_METADATA_MBI, .default_value = V4L2_MPEG_VIDC_EXTRADATA_NONE, .menu_skip_mask = ~( (1 << V4L2_MPEG_VIDC_EXTRADATA_NONE) | Loading @@ -706,7 +707,8 @@ static struct msm_vidc_ctrl msm_venc_ctrls[] = { (1 << V4L2_MPEG_VIDC_EXTRADATA_INPUT_CROP) | (1 << V4L2_MPEG_VIDC_EXTRADATA_DIGITAL_ZOOM) | (1 << V4L2_MPEG_VIDC_EXTRADATA_ASPECT_RATIO) | (1 << V4L2_MPEG_VIDC_EXTRADATA_LTR) (1 << V4L2_MPEG_VIDC_EXTRADATA_LTR) | (1 << V4L2_MPEG_VIDC_EXTRADATA_METADATA_MBI) ), .qmenu = mpeg_video_vidc_extradata, .step = 0, Loading Loading @@ -962,29 +964,33 @@ static int msm_venc_queue_setup(struct vb2_queue *q, *num_buffers = buff_req->buffer_count_actual = max(*num_buffers, buff_req->buffer_count_actual); } if (*num_buffers < MIN_NUM_CAPTURE_BUFFERS) *num_buffers = MIN_NUM_CAPTURE_BUFFERS; if (*num_buffers > VIDEO_MAX_FRAME) { dprintk(VIDC_ERR, "Changing buffers requested, from %d to max"\ " supported (%d) best effort encoding\n", *num_buffers, VIDEO_MAX_FRAME); *num_buffers = VIDEO_MAX_FRAME; if (*num_buffers < MIN_NUM_CAPTURE_BUFFERS || *num_buffers > VIDEO_MAX_FRAME) { int temp = *num_buffers; *num_buffers = clamp_val(*num_buffers, MIN_NUM_CAPTURE_BUFFERS, VIDEO_MAX_FRAME); dprintk(VIDC_INFO, "Changing buffer count on CAPTURE_MPLANE from %d to %d for best effort encoding\n", temp, *num_buffers); } ctrl = v4l2_ctrl_find(&inst->ctrl_handler, V4L2_CID_MPEG_VIDC_VIDEO_EXTRADATA); if (ctrl) extradata = v4l2_ctrl_g_ctrl(ctrl); if ((extradata == V4L2_MPEG_VIDC_EXTRADATA_MULTISLICE_INFO) || (extradata == V4L2_MPEG_VIDC_EXTRADATA_LTR)) if (extradata != V4L2_MPEG_VIDC_EXTRADATA_NONE) *num_planes = *num_planes + 1; inst->fmts[CAPTURE_PORT]->num_planes = *num_planes; for (i = 0; i < *num_planes; i++) { sizes[i] = inst->fmts[CAPTURE_PORT]->get_frame_size( i, inst->prop.height[CAPTURE_PORT], inst->prop.width[CAPTURE_PORT]); } property_id = HAL_PARAM_BUFFER_COUNT_ACTUAL; new_buf_count.buffer_type = HAL_BUFFER_OUTPUT; new_buf_count.buffer_count_actual = *num_buffers; Loading drivers/media/platform/msm/vidc/msm_vidc_common.c +3 −0 Original line number Diff line number Diff line Loading @@ -3226,6 +3226,9 @@ enum hal_extradata_id msm_comm_get_hal_extradata_index( case V4L2_MPEG_VIDC_EXTRADATA_LTR: ret = HAL_EXTRADATA_LTR_INFO; break; case V4L2_MPEG_VIDC_EXTRADATA_METADATA_MBI: ret = HAL_EXTRADATA_METADATA_MBI; break; default: dprintk(VIDC_WARN, "Extradata not found: %d\n", index); break; Loading drivers/media/platform/msm/vidc/vidc_hfi.h +3 −0 Original line number Diff line number Diff line Loading @@ -227,6 +227,9 @@ struct hfi_extradata_header { (HFI_PROPERTY_PARAM_VENC_OX_START + 0x002) #define HFI_PROPERTY_PARAM_VENC_LTR_INFO \ (HFI_PROPERTY_PARAM_VENC_OX_START + 0x003) #define HFI_PROPERTY_PARAM_VENC_MBI_DUMPING \ (HFI_PROPERTY_PARAM_VENC_OX_START + 0x005) #define HFI_PROPERTY_CONFIG_VENC_OX_START \ (HFI_DOMAIN_BASE_VENC + HFI_ARCH_OX_OFFSET + 0x6000) #define HFI_PROPERTY_CONFIG_VENC_FRAME_QP \ Loading drivers/media/platform/msm/vidc/vidc_hfi_api.h +1 −0 Original line number Diff line number Diff line Loading @@ -106,6 +106,7 @@ enum hal_extradata_id { HAL_EXTRADATA_INPUT_CROP, HAL_EXTRADATA_DIGITAL_ZOOM, HAL_EXTRADATA_LTR_INFO, HAL_EXTRADATA_METADATA_MBI, }; enum hal_property { Loading Loading
drivers/media/platform/msm/vidc/hfi_packetization.c +3 −0 Original line number Diff line number Diff line Loading @@ -458,6 +458,9 @@ static int get_hfi_extradata_index(enum hal_extradata_id index) case HAL_EXTRADATA_LTR_INFO: ret = HFI_PROPERTY_PARAM_VENC_LTR_INFO; break; case HAL_EXTRADATA_METADATA_MBI: ret = HFI_PROPERTY_PARAM_VENC_MBI_DUMPING; break; default: dprintk(VIDC_WARN, "Extradata index not found: %d\n", index); break; Loading
drivers/media/platform/msm/vidc/msm_venc.c +19 −13 Original line number Diff line number Diff line Loading @@ -120,6 +120,7 @@ static const char *const mpeg_video_vidc_extradata[] = { "Extradata input crop", "Extradata digital zoom", "Extradata aspect ratio", "Extradata macroblock metadata", }; static const char *const perf_level[] = { Loading Loading @@ -687,7 +688,7 @@ static struct msm_vidc_ctrl msm_venc_ctrls[] = { .name = "Extradata Type", .type = V4L2_CTRL_TYPE_MENU, .minimum = V4L2_MPEG_VIDC_EXTRADATA_NONE, .maximum = V4L2_MPEG_VIDC_EXTRADATA_LTR, .maximum = V4L2_MPEG_VIDC_EXTRADATA_METADATA_MBI, .default_value = V4L2_MPEG_VIDC_EXTRADATA_NONE, .menu_skip_mask = ~( (1 << V4L2_MPEG_VIDC_EXTRADATA_NONE) | Loading @@ -706,7 +707,8 @@ static struct msm_vidc_ctrl msm_venc_ctrls[] = { (1 << V4L2_MPEG_VIDC_EXTRADATA_INPUT_CROP) | (1 << V4L2_MPEG_VIDC_EXTRADATA_DIGITAL_ZOOM) | (1 << V4L2_MPEG_VIDC_EXTRADATA_ASPECT_RATIO) | (1 << V4L2_MPEG_VIDC_EXTRADATA_LTR) (1 << V4L2_MPEG_VIDC_EXTRADATA_LTR) | (1 << V4L2_MPEG_VIDC_EXTRADATA_METADATA_MBI) ), .qmenu = mpeg_video_vidc_extradata, .step = 0, Loading Loading @@ -962,29 +964,33 @@ static int msm_venc_queue_setup(struct vb2_queue *q, *num_buffers = buff_req->buffer_count_actual = max(*num_buffers, buff_req->buffer_count_actual); } if (*num_buffers < MIN_NUM_CAPTURE_BUFFERS) *num_buffers = MIN_NUM_CAPTURE_BUFFERS; if (*num_buffers > VIDEO_MAX_FRAME) { dprintk(VIDC_ERR, "Changing buffers requested, from %d to max"\ " supported (%d) best effort encoding\n", *num_buffers, VIDEO_MAX_FRAME); *num_buffers = VIDEO_MAX_FRAME; if (*num_buffers < MIN_NUM_CAPTURE_BUFFERS || *num_buffers > VIDEO_MAX_FRAME) { int temp = *num_buffers; *num_buffers = clamp_val(*num_buffers, MIN_NUM_CAPTURE_BUFFERS, VIDEO_MAX_FRAME); dprintk(VIDC_INFO, "Changing buffer count on CAPTURE_MPLANE from %d to %d for best effort encoding\n", temp, *num_buffers); } ctrl = v4l2_ctrl_find(&inst->ctrl_handler, V4L2_CID_MPEG_VIDC_VIDEO_EXTRADATA); if (ctrl) extradata = v4l2_ctrl_g_ctrl(ctrl); if ((extradata == V4L2_MPEG_VIDC_EXTRADATA_MULTISLICE_INFO) || (extradata == V4L2_MPEG_VIDC_EXTRADATA_LTR)) if (extradata != V4L2_MPEG_VIDC_EXTRADATA_NONE) *num_planes = *num_planes + 1; inst->fmts[CAPTURE_PORT]->num_planes = *num_planes; for (i = 0; i < *num_planes; i++) { sizes[i] = inst->fmts[CAPTURE_PORT]->get_frame_size( i, inst->prop.height[CAPTURE_PORT], inst->prop.width[CAPTURE_PORT]); } property_id = HAL_PARAM_BUFFER_COUNT_ACTUAL; new_buf_count.buffer_type = HAL_BUFFER_OUTPUT; new_buf_count.buffer_count_actual = *num_buffers; Loading
drivers/media/platform/msm/vidc/msm_vidc_common.c +3 −0 Original line number Diff line number Diff line Loading @@ -3226,6 +3226,9 @@ enum hal_extradata_id msm_comm_get_hal_extradata_index( case V4L2_MPEG_VIDC_EXTRADATA_LTR: ret = HAL_EXTRADATA_LTR_INFO; break; case V4L2_MPEG_VIDC_EXTRADATA_METADATA_MBI: ret = HAL_EXTRADATA_METADATA_MBI; break; default: dprintk(VIDC_WARN, "Extradata not found: %d\n", index); break; Loading
drivers/media/platform/msm/vidc/vidc_hfi.h +3 −0 Original line number Diff line number Diff line Loading @@ -227,6 +227,9 @@ struct hfi_extradata_header { (HFI_PROPERTY_PARAM_VENC_OX_START + 0x002) #define HFI_PROPERTY_PARAM_VENC_LTR_INFO \ (HFI_PROPERTY_PARAM_VENC_OX_START + 0x003) #define HFI_PROPERTY_PARAM_VENC_MBI_DUMPING \ (HFI_PROPERTY_PARAM_VENC_OX_START + 0x005) #define HFI_PROPERTY_CONFIG_VENC_OX_START \ (HFI_DOMAIN_BASE_VENC + HFI_ARCH_OX_OFFSET + 0x6000) #define HFI_PROPERTY_CONFIG_VENC_FRAME_QP \ Loading
drivers/media/platform/msm/vidc/vidc_hfi_api.h +1 −0 Original line number Diff line number Diff line Loading @@ -106,6 +106,7 @@ enum hal_extradata_id { HAL_EXTRADATA_INPUT_CROP, HAL_EXTRADATA_DIGITAL_ZOOM, HAL_EXTRADATA_LTR_INFO, HAL_EXTRADATA_METADATA_MBI, }; enum hal_property { Loading