Lines Matching refs:p

242     M2VDParserContext *p = (M2VDParserContext *)c->parse_ctx;  in m2vd_parser_init()  local
244 if (p == NULL) { in m2vd_parser_init()
245 M2VD_CHK_M(p = (M2VDParserContext*)mpp_calloc(M2VDParserContext, 1)); in m2vd_parser_init()
246 c->parse_ctx = p; in m2vd_parser_init()
249 M2VD_CHK_F(m2vd_parser_init_ctx(p, parser_cfg)); in m2vd_parser_init()
263 M2VDParserContext *p = (M2VDParserContext *)c->parse_ctx; in m2vd_parser_deinit() local
268 M2VD_FCLOSE(p->fp_dbg_file[k]); in m2vd_parser_deinit()
270 M2VD_FCLOSE(p->fp_dbg_yuv); in m2vd_parser_deinit()
272 if (p->bitstream_sw_buf) { in m2vd_parser_deinit()
273 mpp_free(p->bitstream_sw_buf); in m2vd_parser_deinit()
274 p->bitstream_sw_buf = NULL; in m2vd_parser_deinit()
276 if (p->qp_tab_sw_buf) { in m2vd_parser_deinit()
277 mpp_free(p->qp_tab_sw_buf); in m2vd_parser_deinit()
278 p->qp_tab_sw_buf = NULL; in m2vd_parser_deinit()
281 if (p->input_packet) { in m2vd_parser_deinit()
282 mpp_packet_deinit(&p->input_packet); in m2vd_parser_deinit()
285 if (p->dxva_ctx) { in m2vd_parser_deinit()
286 mpp_free(p->dxva_ctx); in m2vd_parser_deinit()
287 p->dxva_ctx = NULL; in m2vd_parser_deinit()
289 if (p->bitread_ctx) { in m2vd_parser_deinit()
290 mpp_free(p->bitread_ctx); in m2vd_parser_deinit()
291 p->bitread_ctx = NULL; in m2vd_parser_deinit()
295 mpp_frame_deinit(&p->Framehead[k].f); in m2vd_parser_deinit()
298 if (p) { in m2vd_parser_deinit()
299 mpp_free(p); in m2vd_parser_deinit()
316 M2VDParserContext *p = (M2VDParserContext *)c->parse_ctx; in m2vd_parser_reset() local
318 if (p->frame_cur->slot_index >= 0) in m2vd_parser_reset()
319 mpp_buf_slot_clr_flag(p->frame_slots, p->frame_cur->slot_index, in m2vd_parser_reset()
322 if (p->frame_ref0->slot_index >= 0) { in m2vd_parser_reset()
323 if (p->frame_ref0->flags) { in m2vd_parser_reset()
324 mpp_buf_slot_set_flag(p->frame_slots, p->frame_ref0->slot_index, in m2vd_parser_reset()
326 mpp_buf_slot_enqueue(p->frame_slots, p->frame_ref0->slot_index, in m2vd_parser_reset()
328 p->frame_ref0->flags = 0; in m2vd_parser_reset()
330 mpp_buf_slot_clr_flag(p->frame_slots, p->frame_ref0->slot_index, in m2vd_parser_reset()
334 if (p->frame_ref1->slot_index >= 0) in m2vd_parser_reset()
335 mpp_buf_slot_clr_flag(p->frame_slots, p->frame_ref1->slot_index, in m2vd_parser_reset()
338 if (p->input_packet) { in m2vd_parser_reset()
339 mpp_packet_clr_eos(p->input_packet); in m2vd_parser_reset()
342 p->frame_cur->slot_index = -1; in m2vd_parser_reset()
343 p->frame_ref0->slot_index = -1; in m2vd_parser_reset()
344 p->frame_ref1->slot_index = -1; in m2vd_parser_reset()
345 p->ref_frame_cnt = 0; in m2vd_parser_reset()
346 p->resetFlag = 1; in m2vd_parser_reset()
347 p->eos = 0; in m2vd_parser_reset()
348 p->left_length = 0; in m2vd_parser_reset()
349 p->vop_header_found = 0; in m2vd_parser_reset()
364 M2VDParserContext *p = (M2VDParserContext *)c->parse_ctx; in m2vd_parser_flush() local
367 if ((p->frame_ref0->slot_index >= 0) && p->frame_ref0->flags) { in m2vd_parser_flush()
368 mpp_buf_slot_set_flag(p->frame_slots, p->frame_ref0->slot_index, in m2vd_parser_flush()
370 mpp_buf_slot_enqueue(p->frame_slots, p->frame_ref0->slot_index, in m2vd_parser_flush()
372 p->frame_ref0->flags = 0; in m2vd_parser_flush()
405 M2VDParserContext *p = ctx; in mpp_m2vd_parser_split() local
413 if (!p->vop_header_found) { in mpp_m2vd_parser_split()
414 if ((dst_len < sizeof(p->state)) && in mpp_m2vd_parser_split()
415 ((p->state & 0x00FFFFFF) == 0x000001)) { in mpp_m2vd_parser_split()
423 p->state = (p->state << 8) | src_buf[src_pos]; in mpp_m2vd_parser_split()
431 if (p->state == SEQUENCE_HEADER_CODE || p->state == PICTURE_START_CODE) { in mpp_m2vd_parser_split()
432 p->pts = mpp_packet_get_pts(src); in mpp_m2vd_parser_split()
433 p->dts = mpp_packet_get_dts(src); in mpp_m2vd_parser_split()
434 p->vop_header_found = 1; in mpp_m2vd_parser_split()
440 if (p->vop_header_found) { in mpp_m2vd_parser_split()
442 p->state = (p->state << 8) | src_buf[src_pos]; in mpp_m2vd_parser_split()
445 if (((p->state & 0x00FFFFFF) == 0x000001) && (src_pos < src_len) && in mpp_m2vd_parser_split()
449 p->vop_header_found = 0; in mpp_m2vd_parser_split()
470 M2VDParserContext *p = (M2VDParserContext *)c->parse_ctx; in m2vd_parser_prepare() local
484 if (eos && !length && !p->left_length) { in m2vd_parser_prepare()
491 if (p->bitstream_sw_buf == NULL) { in m2vd_parser_prepare()
496 mpp_packet_set_length(p->input_packet, p->left_length); in m2vd_parser_prepare()
498 size_t total_length = MPP_ALIGN(p->left_length + length, 16) + 64; in m2vd_parser_prepare()
500 if (total_length > p->max_stream_size) { in m2vd_parser_prepare()
504 p->max_stream_size <<= 1; in m2vd_parser_prepare()
505 } while (total_length > p->max_stream_size); in m2vd_parser_prepare()
507 dst = mpp_malloc_size(RK_U8, p->max_stream_size); in m2vd_parser_prepare()
510 if (p->left_length > 0) { in m2vd_parser_prepare()
511 memcpy(dst, p->bitstream_sw_buf, p->left_length); in m2vd_parser_prepare()
513 mpp_free(p->bitstream_sw_buf); in m2vd_parser_prepare()
514 p->bitstream_sw_buf = dst; in m2vd_parser_prepare()
516 mpp_packet_set_data(p->input_packet, p->bitstream_sw_buf); in m2vd_parser_prepare()
517 mpp_packet_set_size(p->input_packet, p->max_stream_size); in m2vd_parser_prepare()
520 if (!p->cfg->base.split_parse) { in m2vd_parser_prepare()
524 memcpy(p->bitstream_sw_buf, pos + offset, length - offset); in m2vd_parser_prepare()
526 mpp_packet_set_length(p->input_packet, length - offset); in m2vd_parser_prepare()
527 mpp_packet_set_data(p->input_packet, p->bitstream_sw_buf); in m2vd_parser_prepare()
528 mpp_packet_set_size(p->input_packet, p->max_stream_size); in m2vd_parser_prepare()
531 mpp_packet_set_eos(p->input_packet); in m2vd_parser_prepare()
533 p->pts = mpp_packet_get_pts(pkt); in m2vd_parser_prepare()
534 p->dts = mpp_packet_get_dts(pkt); in m2vd_parser_prepare()
538 if (MPP_OK == mpp_m2vd_parser_split(p, p->input_packet, pkt)) { in m2vd_parser_prepare()
539 p->left_length = 0; in m2vd_parser_prepare()
543 p->left_length = mpp_packet_get_length(p->input_packet); in m2vd_parser_prepare()
548 mpp_packet_set_extra_data(p->input_packet); in m2vd_parser_prepare()
551 p->eos = mpp_packet_get_eos(p->input_packet); in m2vd_parser_prepare()
552 mpp_packet_set_pts(p->input_packet, p->pts); in m2vd_parser_prepare()
553 mpp_packet_set_dts(p->input_packet, p->dts); in m2vd_parser_prepare()
554 task->input_packet = p->input_packet; in m2vd_parser_prepare()
555 task->flags.eos = p->eos; in m2vd_parser_prepare()
1098 static MPP_RET m2v_update_ref_frame(M2VDParserContext *p, RK_S32 force) in m2v_update_ref_frame() argument
1101 if (force || (p->pic_code_ext_head.picture_structure == M2VD_PIC_STRUCT_FRAME) || in m2v_update_ref_frame()
1102 …((p->pic_code_ext_head.picture_structure == M2VD_PIC_STRUCT_BOTTOM_FIELD) && p->pic_code_ext_head.… in m2v_update_ref_frame()
1103 …((p->pic_code_ext_head.picture_structure == M2VD_PIC_STRUCT_TOP_FIELD) && (!p->pic_code_ext_head.t… in m2v_update_ref_frame()
1104 if (p->frame_cur->picCodingType == M2VD_CODING_TYPE_B) { in m2v_update_ref_frame()
1105 mpp_buf_slot_set_flag(p->frame_slots, p->frame_cur->slot_index, SLOT_QUEUE_USE); in m2v_update_ref_frame()
1106 mpp_buf_slot_enqueue(p->frame_slots, p->frame_cur->slot_index, QUEUE_DISPLAY); in m2v_update_ref_frame()
1107 mpp_buf_slot_clr_flag(p->frame_slots, p->frame_cur->slot_index, SLOT_CODEC_USE); in m2v_update_ref_frame()
1108 p->frame_cur->slot_index = -1; in m2v_update_ref_frame()
1109 } else if (p->frame_cur->picCodingType != 0xffffffff) { in m2v_update_ref_frame()
1111 p->ref_frame_cnt++; in m2v_update_ref_frame()
1112 if (p->frame_ref0->slot_index >= 0) { in m2v_update_ref_frame()
1113 if (p->frame_ref0->flags) { in m2v_update_ref_frame()
1114 … mpp_buf_slot_set_flag(p->frame_slots, p->frame_ref0->slot_index, SLOT_QUEUE_USE); in m2v_update_ref_frame()
1115 mpp_buf_slot_enqueue(p->frame_slots, p->frame_ref0->slot_index, QUEUE_DISPLAY); in m2v_update_ref_frame()
1116 p->frame_ref0->flags = 0; in m2v_update_ref_frame()
1119 if (p->info_changed) { in m2v_update_ref_frame()
1120 … mpp_buf_slot_clr_flag(p->frame_slots, p->frame_ref0->slot_index, SLOT_CODEC_USE); in m2v_update_ref_frame()
1121 p->frame_ref0->slot_index = -1; in m2v_update_ref_frame()
1122 p->info_changed = 0; in m2v_update_ref_frame()
1126 if (p->frame_ref1->slot_index >= 0) { in m2v_update_ref_frame()
1127 mpp_buf_slot_clr_flag(p->frame_slots, p->frame_ref1->slot_index, SLOT_CODEC_USE); in m2v_update_ref_frame()
1128 p->frame_ref1->slot_index = -1; in m2v_update_ref_frame()
1130 tmpHD = p->frame_ref1; in m2v_update_ref_frame()
1131 p->frame_ref1 = p->frame_ref0; in m2v_update_ref_frame()
1132 p->frame_ref0 = p->frame_cur; in m2v_update_ref_frame()
1133 p->frame_cur = tmpHD; in m2v_update_ref_frame()
1338 static MPP_RET m2vd_convert_to_dxva(M2VDParserContext *p) in m2vd_convert_to_dxva() argument
1342 M2VDDxvaParam *dst = p->dxva_ctx; in m2vd_convert_to_dxva()
1343 M2VDFrameHead *pfw = p->frame_ref1; in m2vd_convert_to_dxva()
1344 M2VDFrameHead *pbw = p->frame_ref0; in m2vd_convert_to_dxva()
1345 BitReadCtx_t *bx = p->bitread_ctx; in m2vd_convert_to_dxva()
1351 dst->seq.decode_width = p->seq_head.decode_width; in m2vd_convert_to_dxva()
1352 dst->seq.decode_height = p->seq_head.decode_height; in m2vd_convert_to_dxva()
1353 dst->seq.aspect_ratio_information = p->seq_head.aspect_ratio_information; in m2vd_convert_to_dxva()
1354 dst->seq.frame_rate_code = p->seq_head.frame_rate_code; in m2vd_convert_to_dxva()
1355 dst->seq.bit_rate_value = p->seq_head.bit_rate_value; in m2vd_convert_to_dxva()
1356 dst->seq.vbv_buffer_size = p->seq_head.vbv_buffer_size; in m2vd_convert_to_dxva()
1357 dst->seq.constrained_parameters_flag = p->seq_head.constrained_parameters_flag; in m2vd_convert_to_dxva()
1358 dst->seq.load_intra_quantizer_matrix = p->seq_head.load_intra_quantizer_matrix; in m2vd_convert_to_dxva()
1359 dst->seq.load_non_intra_quantizer_matrix = p->seq_head.load_non_intra_quantizer_matrix; in m2vd_convert_to_dxva()
1361 dst->seq_ext.profile_and_level_indication = p->seq_ext_head.profile_and_level_indication; in m2vd_convert_to_dxva()
1362 dst->seq_ext.progressive_sequence = p->seq_ext_head.progressive_sequence; in m2vd_convert_to_dxva()
1363 dst->seq_ext.chroma_format = p->seq_ext_head.chroma_format; in m2vd_convert_to_dxva()
1364 dst->seq_ext.low_delay = p->seq_ext_head.low_delay; in m2vd_convert_to_dxva()
1365 dst->seq_ext.frame_rate_extension_n = p->seq_ext_head.frame_rate_extension_n; in m2vd_convert_to_dxva()
1366 dst->seq_ext.frame_rate_extension_d = p->seq_ext_head.frame_rate_extension_d; in m2vd_convert_to_dxva()
1369 dst->gop.drop_flag = p->gop_head.drop_flag; in m2vd_convert_to_dxva()
1370 dst->gop.hour = p->gop_head.hour; in m2vd_convert_to_dxva()
1371 dst->gop.minute = p->gop_head.minute; in m2vd_convert_to_dxva()
1372 dst->gop.sec = p->gop_head.sec; in m2vd_convert_to_dxva()
1373 dst->gop.frame = p->gop_head.frame; in m2vd_convert_to_dxva()
1374 dst->gop.closed_gop = p->gop_head.closed_gop; in m2vd_convert_to_dxva()
1375 dst->gop.broken_link = p->gop_head.broken_link; in m2vd_convert_to_dxva()
1378 dst->pic.temporal_reference = p->pic_head.temporal_reference; in m2vd_convert_to_dxva()
1379 dst->pic.picture_coding_type = p->pic_head.picture_coding_type; in m2vd_convert_to_dxva()
1380 dst->pic.pre_picture_coding_type = p->pic_head.pre_picture_coding_type; in m2vd_convert_to_dxva()
1381 dst->pic.vbv_delay = p->pic_head.vbv_delay; in m2vd_convert_to_dxva()
1382 dst->pic.full_pel_forward_vector = p->pic_head.full_pel_forward_vector; in m2vd_convert_to_dxva()
1383 dst->pic.forward_f_code = p->pic_head.forward_f_code; in m2vd_convert_to_dxva()
1384 dst->pic.full_pel_backward_vector = p->pic_head.full_pel_backward_vector; in m2vd_convert_to_dxva()
1385 dst->pic.backward_f_code = p->pic_head.backward_f_code; in m2vd_convert_to_dxva()
1386 dst->pic.pre_temporal_reference = p->pic_head.pre_temporal_reference; in m2vd_convert_to_dxva()
1388 dst->seq_disp_ext.video_format = p->seq_disp_ext_head.video_format; in m2vd_convert_to_dxva()
1389 dst->seq_disp_ext.color_description = p->seq_disp_ext_head.color_description; in m2vd_convert_to_dxva()
1390 dst->seq_disp_ext.color_primaries = p->seq_disp_ext_head.color_primaries; in m2vd_convert_to_dxva()
1391 dst->seq_disp_ext.transfer_characteristics = p->seq_disp_ext_head.transfer_characteristics; in m2vd_convert_to_dxva()
1392 dst->seq_disp_ext.matrix_coefficients = p->seq_disp_ext_head.matrix_coefficients; in m2vd_convert_to_dxva()
1394 memcpy(dst->pic_code_ext.f_code, p->pic_code_ext_head.f_code, 2 * 2 * sizeof(RK_S32)); in m2vd_convert_to_dxva()
1395 dst->pic_code_ext.intra_dc_precision = p->pic_code_ext_head.intra_dc_precision; in m2vd_convert_to_dxva()
1396 dst->pic_code_ext.picture_structure = p->pic_code_ext_head.picture_structure; in m2vd_convert_to_dxva()
1397 dst->pic_code_ext.top_field_first = p->pic_code_ext_head.top_field_first; in m2vd_convert_to_dxva()
1398 dst->pic_code_ext.frame_pred_frame_dct = p->pic_code_ext_head.frame_pred_frame_dct; in m2vd_convert_to_dxva()
1399 … dst->pic_code_ext.concealment_motion_vectors = p->pic_code_ext_head.concealment_motion_vectors; in m2vd_convert_to_dxva()
1400 dst->pic_code_ext.q_scale_type = p->pic_code_ext_head.q_scale_type; in m2vd_convert_to_dxva()
1401 dst->pic_code_ext.intra_vlc_format = p->pic_code_ext_head.intra_vlc_format; in m2vd_convert_to_dxva()
1402 dst->pic_code_ext.alternate_scan = p->pic_code_ext_head.alternate_scan; in m2vd_convert_to_dxva()
1403 dst->pic_code_ext.repeat_first_field = p->pic_code_ext_head.repeat_first_field; in m2vd_convert_to_dxva()
1404 dst->pic_code_ext.chroma_420_type = p->pic_code_ext_head.chroma_420_type; in m2vd_convert_to_dxva()
1405 dst->pic_code_ext.progressive_frame = p->pic_code_ext_head.progressive_frame; in m2vd_convert_to_dxva()
1406 dst->pic_code_ext.composite_display_flag = p->pic_code_ext_head.composite_display_flag; in m2vd_convert_to_dxva()
1407 dst->pic_code_ext.v_axis = p->pic_code_ext_head.v_axis; in m2vd_convert_to_dxva()
1408 dst->pic_code_ext.field_sequence = p->pic_code_ext_head.field_sequence; in m2vd_convert_to_dxva()
1409 dst->pic_code_ext.sub_carrier = p->pic_code_ext_head.sub_carrier; in m2vd_convert_to_dxva()
1410 dst->pic_code_ext.burst_amplitude = p->pic_code_ext_head.burst_amplitude; in m2vd_convert_to_dxva()
1411 dst->pic_code_ext.sub_carrier_phase = p->pic_code_ext_head.sub_carrier_phase; in m2vd_convert_to_dxva()
1413 …memcpy(dst->pic_disp_ext.frame_center_horizontal_offset, p->pic_disp_ext_head.frame_center_horizon… in m2vd_convert_to_dxva()
1414 …memcpy(dst->pic_disp_ext.frame_center_vertical_offset, p->pic_disp_ext_head.frame_center_vertical_… in m2vd_convert_to_dxva()
1416 dst->bitstream_length = p->frame_size - ((readbits >> 3) & (~7)); in m2vd_convert_to_dxva()
1419 dst->qp_tab = p->qp_tab_sw_buf; in m2vd_convert_to_dxva()
1420 dst->CurrPic.Index7Bits = p->frame_cur->slot_index; in m2vd_convert_to_dxva()
1421 p->cur_slot_index = p->frame_cur->slot_index; in m2vd_convert_to_dxva()
1423 if (p->frame_ref0->slot_index < 0) in m2vd_convert_to_dxva()
1424 pbw = p->frame_cur; in m2vd_convert_to_dxva()
1426 if (p->frame_ref1->slot_index < 0) in m2vd_convert_to_dxva()
1432 if (p->pic_head.picture_coding_type == M2VD_CODING_TYPE_B) { in m2vd_convert_to_dxva()
1439 mpp_buf_slot_get_prop(p->frame_slots, pfw->slot_index, SLOT_FRAME_PTR, &frame0); in m2vd_convert_to_dxva()
1440 mpp_buf_slot_get_prop(p->frame_slots, pbw->slot_index, SLOT_FRAME_PTR, &frame1); in m2vd_convert_to_dxva()
1444 if ((p->pic_code_ext_head.picture_structure == M2VD_PIC_STRUCT_FRAME) || in m2vd_convert_to_dxva()
1445 …((p->pic_code_ext_head.picture_structure == M2VD_PIC_STRUCT_TOP_FIELD) && p->pic_code_ext_head.top… in m2vd_convert_to_dxva()
1446 …((p->pic_code_ext_head.picture_structure == M2VD_PIC_STRUCT_BOTTOM_FIELD) && (!p->pic_code_ext_hea… in m2vd_convert_to_dxva()
1449 } else if (p->pic_code_ext_head.picture_structure == M2VD_PIC_STRUCT_TOP_FIELD) { in m2vd_convert_to_dxva()
1451 dst->frame_refs[1].Index7Bits = p->frame_cur->slot_index; in m2vd_convert_to_dxva()
1452 } else if (p->pic_code_ext_head.picture_structure == M2VD_PIC_STRUCT_BOTTOM_FIELD) { in m2vd_convert_to_dxva()
1453 dst->frame_refs[0].Index7Bits = p->frame_cur->slot_index; in m2vd_convert_to_dxva()
1456 dst->frame_refs[2].Index7Bits = p->frame_cur->slot_index; in m2vd_convert_to_dxva()
1457 dst->frame_refs[3].Index7Bits = p->frame_cur->slot_index; in m2vd_convert_to_dxva()
1458 mpp_buf_slot_get_prop(p->frame_slots, pbw->slot_index, SLOT_FRAME_PTR, &frame); in m2vd_convert_to_dxva()
1461 if (p->frame_cur->picCodingType == M2VD_CODING_TYPE_I) { in m2vd_convert_to_dxva()
1464 dst->seq_ext_head_dec_flag = p->MPEG2_Flag; in m2vd_convert_to_dxva()
1467 mpp_buf_slot_get_prop(p->frame_slots, p->cur_slot_index, SLOT_FRAME_PTR, &frame); in m2vd_convert_to_dxva()
1479 M2VDParserContext *p = (M2VDParserContext *)c->parse_ctx; in m2vd_parser_parse() local
1486 p->flush_dpb_eos = 0; in m2vd_parser_parse()
1488 p->frame_size = (RK_U32)mpp_packet_get_length(in_task->input_packet); in m2vd_parser_parse()
1490 mpp_set_bitread_ctx(p->bitread_ctx, p->bitstream_sw_buf, p->frame_size); in m2vd_parser_parse()
1492 rev = m2vd_decode_head(p); in m2vd_parser_parse()
1494 if (!p->mHeaderDecFlag) { in m2vd_parser_parse()
1495 if (p->mExtraHeaderDecFlag && in m2vd_parser_parse()
1496 p->pic_head.picture_coding_type == M2VD_CODING_TYPE_I) { in m2vd_parser_parse()
1497 p->mHeaderDecFlag = 1; in m2vd_parser_parse()
1507 if (p->seq_head.decode_width > 1920 || p->seq_head.decode_height > 1088) { in m2vd_parser_parse()
1512 p->mb_width = (p->seq_head.decode_width + 15) >> 4; in m2vd_parser_parse()
1513 p->mb_height = (p->seq_head.decode_height + 15) >> 4; in m2vd_parser_parse()
1523 if (m2vd_alloc_frame(p)) { in m2vd_parser_parse()
1526 m2vd_convert_to_dxva(p); in m2vd_parser_parse()
1527 in_task->syntax.data = (void *)p->dxva_ctx; in m2vd_parser_parse()
1529 in_task->output = p->frame_cur->slot_index; in m2vd_parser_parse()
1530 p->pic_head.pre_picture_coding_type = p->pic_head.picture_coding_type; in m2vd_parser_parse()
1532 if (p->frame_ref0->slot_index >= 0 && in m2vd_parser_parse()
1533 (p->frame_ref0->slot_index != p->frame_cur->slot_index)) { in m2vd_parser_parse()
1534 mpp_buf_slot_set_flag(p->frame_slots, p->frame_ref0->slot_index, SLOT_HAL_INPUT); in m2vd_parser_parse()
1535 in_task->refer[0] = p->frame_ref0->slot_index; in m2vd_parser_parse()
1538 … if (p->frame_ref1->slot_index >= 0 && (p->frame_ref1->slot_index != p->frame_cur->slot_index)) { in m2vd_parser_parse()
1539 mpp_buf_slot_set_flag(p->frame_slots, p->frame_ref1->slot_index, SLOT_HAL_INPUT); in m2vd_parser_parse()
1540 in_task->refer[1] = p->frame_ref1->slot_index; in m2vd_parser_parse()
1544 mpp_buf_slot_get_prop(p->frame_slots, p->cur_slot_index, SLOT_FRAME_PTR, &frame); in m2vd_parser_parse()
1545 mpp_frame_set_poc(frame, p->pic_head.temporal_reference); in m2vd_parser_parse()
1547 if (p->dxva_ctx->seq_disp_ext.color_description) { in m2vd_parser_parse()
1548 mpp_frame_set_color_primaries(frame, p->dxva_ctx->seq_disp_ext.color_primaries); in m2vd_parser_parse()
1549 mpp_frame_set_color_trc(frame, p->dxva_ctx->seq_disp_ext.transfer_characteristics); in m2vd_parser_parse()
1550 mpp_frame_set_colorspace(frame, p->dxva_ctx->seq_disp_ext.matrix_coefficients); in m2vd_parser_parse()
1558 m2v_update_ref_frame(p, 0); in m2vd_parser_parse()
1562 if (p->eos) in m2vd_parser_parse()
1574 M2VDParserContext *p = (M2VDParserContext *)c->parse_ctx; in m2vd_parser_callback() local
1579 mpp_buf_slot_get_prop(p->frame_slots, p->cur_slot_index, SLOT_FRAME_PTR, &frame); in m2vd_parser_callback()