Lines Matching refs:sms_tree
39 AV1_COMP *const cpi, MACROBLOCK *x, SIMPLE_MOTION_DATA_TREE *sms_tree,
375 SIMPLE_MOTION_DATA_TREE *sms_tree, in simple_motion_search_based_split() argument
408 simple_motion_search_prune_part_features(cpi, x, sms_tree, mi_row, mi_col, in simple_motion_search_based_split()
465 AV1_COMP *const cpi, MACROBLOCK *x, SIMPLE_MOTION_DATA_TREE *sms_tree, in simple_motion_search_get_best_ref() argument
490 const FULLPEL_MV *start_mvs = sms_tree->start_mvs; in simple_motion_search_get_best_ref()
502 sms_tree->start_mvs[ref].row = best_mv.as_mv.row / 8; in simple_motion_search_get_best_ref()
503 sms_tree->start_mvs[ref].col = best_mv.as_mv.col / 8; in simple_motion_search_get_best_ref()
508 SIMPLE_MOTION_DATA_TREE *sub_tree = sms_tree->split[r_idx]; in simple_motion_search_get_best_ref()
509 sub_tree->start_mvs[ref] = sms_tree->start_mvs[ref]; in simple_motion_search_get_best_ref()
532 AV1_COMP *const cpi, MACROBLOCK *x, SIMPLE_MOTION_DATA_TREE *sms_tree, in simple_motion_search_prune_part_features() argument
549 if (!sms_tree->sms_none_valid && features_to_get & FEATURE_SMS_NONE_FLAG) { in simple_motion_search_prune_part_features()
550 simple_motion_search_get_best_ref(cpi, x, sms_tree, mi_row, mi_col, bsize, in simple_motion_search_prune_part_features()
552 &sms_tree->sms_none_feat[0], in simple_motion_search_prune_part_features()
553 &sms_tree->sms_none_feat[1]); in simple_motion_search_prune_part_features()
554 sms_tree->sms_none_valid = 1; in simple_motion_search_prune_part_features()
563 SIMPLE_MOTION_DATA_TREE *sub_tree = sms_tree->split[r_idx]; in simple_motion_search_prune_part_features()
576 if (!sms_tree->sms_rect_valid && features_to_get & FEATURE_SMS_RECT_FLAG) { in simple_motion_search_prune_part_features()
584 cpi, x, sms_tree, sub_mi_row, sub_mi_col, subsize, ref_list, num_refs, in simple_motion_search_prune_part_features()
585 use_subpixel, 0, &sms_tree->sms_rect_feat[2 * r_idx], in simple_motion_search_prune_part_features()
586 &sms_tree->sms_rect_feat[2 * r_idx + 1]); in simple_motion_search_prune_part_features()
596 cpi, x, sms_tree, sub_mi_row, sub_mi_col, subsize, ref_list, num_refs, in simple_motion_search_prune_part_features()
597 use_subpixel, 0, &sms_tree->sms_rect_feat[4 + 2 * r_idx], in simple_motion_search_prune_part_features()
598 &sms_tree->sms_rect_feat[4 + 2 * r_idx + 1]); in simple_motion_search_prune_part_features()
600 sms_tree->sms_rect_valid = 1; in simple_motion_search_prune_part_features()
608 features[f_idx++] = log1pf((float)sms_tree->sms_none_feat[sub_idx]); in simple_motion_search_prune_part_features()
614 SIMPLE_MOTION_DATA_TREE *sub_tree = sms_tree->split[sub_idx]; in simple_motion_search_prune_part_features()
622 features[f_idx++] = log1pf((float)sms_tree->sms_rect_feat[sub_idx]); in simple_motion_search_prune_part_features()
650 SIMPLE_MOTION_DATA_TREE *sms_tree, in simple_motion_search_prune_rect() argument
685 simple_motion_search_prune_part_features(cpi, x, sms_tree, mi_row, mi_col, in simple_motion_search_prune_rect()
739 AV1_COMP *const cpi, MACROBLOCK *x, SIMPLE_MOTION_DATA_TREE *sms_tree, in av1_simple_motion_search_early_term_none() argument
746 simple_motion_search_prune_part_features(cpi, x, sms_tree, mi_row, mi_col, in av1_simple_motion_search_early_term_none()
977 static inline void get_min_bsize(const SIMPLE_MOTION_DATA_TREE *sms_tree, in get_min_bsize() argument
979 if (!sms_tree) return; in get_min_bsize()
981 const BLOCK_SIZE bsize = sms_tree->block_size; in get_min_bsize()
988 PARTITION_TYPE part_type = sms_tree->partitioning; in get_min_bsize()
993 get_min_bsize(sms_tree->split[i], min_bw, min_bh); in get_min_bsize()
1017 SIMPLE_MOTION_DATA_TREE *const sms_tree, in av1_ml_early_term_after_split() argument
1078 get_min_bsize(sms_tree->split[i], &min_bw, &min_bh); in av1_ml_early_term_after_split()
1083 simple_motion_search_prune_part_features(cpi, x, sms_tree, mi_row, mi_col, in av1_ml_early_term_after_split()
1087 features[f_idx++] = log1pf((float)sms_tree->sms_none_feat[1]); in av1_ml_early_term_after_split()
1089 features[f_idx++] = log1pf((float)sms_tree->split[0]->sms_none_feat[1]); in av1_ml_early_term_after_split()
1090 features[f_idx++] = log1pf((float)sms_tree->split[1]->sms_none_feat[1]); in av1_ml_early_term_after_split()
1091 features[f_idx++] = log1pf((float)sms_tree->split[2]->sms_none_feat[1]); in av1_ml_early_term_after_split()
1092 features[f_idx++] = log1pf((float)sms_tree->split[3]->sms_none_feat[1]); in av1_ml_early_term_after_split()
1094 features[f_idx++] = log1pf((float)sms_tree->sms_rect_feat[1]); in av1_ml_early_term_after_split()
1095 features[f_idx++] = log1pf((float)sms_tree->sms_rect_feat[3]); in av1_ml_early_term_after_split()
1096 features[f_idx++] = log1pf((float)sms_tree->sms_rect_feat[5]); in av1_ml_early_term_after_split()
1097 features[f_idx++] = log1pf((float)sms_tree->sms_rect_feat[7]); in av1_ml_early_term_after_split()
1557 SIMPLE_MOTION_DATA_TREE *const sms_tree, in av1_prune_partitions_before_search() argument
1709 simple_motion_search_based_split(cpi, x, sms_tree, part_state); in av1_prune_partitions_before_search()
1733 simple_motion_search_prune_rect(cpi, x, sms_tree, part_state); in av1_prune_partitions_before_search()
2323 AV1_COMP *const cpi, SIMPLE_MOTION_DATA_TREE *sms_tree) { in setup_sms_tree() argument
2333 this_sms = &sms_tree[0]; in setup_sms_tree()
2341 SIMPLE_MOTION_DATA_TREE *const tree = &sms_tree[sms_tree_index]; in setup_sms_tree()
2349 SIMPLE_MOTION_DATA_TREE *const tree = &sms_tree[sms_tree_index]; in setup_sms_tree()
2360 SIMPLE_MOTION_DATA_TREE *const tree = &sms_tree[sms_tree_index]; in setup_sms_tree()
2366 return &sms_tree[tree_nodes - 1]; in setup_sms_tree()
2404 SIMPLE_MOTION_DATA_TREE *sms_tree = NULL; in av1_collect_motion_search_features_sb() local
2409 CHECK_MEM_ERROR(cm, sms_tree, aom_calloc(tree_nodes, sizeof(*sms_tree))); in av1_collect_motion_search_features_sb()
2410 SIMPLE_MOTION_DATA_TREE *sms_root = setup_sms_tree(cpi, sms_tree); in av1_collect_motion_search_features_sb()
2428 aom_free(sms_tree); in av1_collect_motion_search_features_sb()
2465 aom_free(sms_tree); in av1_collect_motion_search_features_sb()
2480 SIMPLE_MOTION_DATA_TREE *sms_tree = NULL; in av1_prepare_motion_search_features_block() local
2485 CHECK_MEM_ERROR(cm, sms_tree, aom_calloc(tree_nodes, sizeof(*sms_tree))); in av1_prepare_motion_search_features_block()
2486 SIMPLE_MOTION_DATA_TREE *sms_root = setup_sms_tree(cpi, sms_tree); in av1_prepare_motion_search_features_block()
2534 aom_free(sms_tree); in av1_prepare_motion_search_features_block()
2540 SIMPLE_MOTION_DATA_TREE *sms_tree, const FULLPEL_MV *start_mvs) { in init_simple_motion_search_mvs() argument
2541 memcpy(sms_tree->start_mvs, start_mvs, sizeof(sms_tree->start_mvs)); in init_simple_motion_search_mvs()
2542 av1_zero(sms_tree->sms_none_feat); in init_simple_motion_search_mvs()
2543 av1_zero(sms_tree->sms_rect_feat); in init_simple_motion_search_mvs()
2544 av1_zero(sms_tree->sms_none_valid); in init_simple_motion_search_mvs()
2545 av1_zero(sms_tree->sms_rect_valid); in init_simple_motion_search_mvs()
2547 if (sms_tree->block_size >= BLOCK_8X8) { in init_simple_motion_search_mvs()
2548 init_simple_motion_search_mvs(sms_tree->split[0], start_mvs); in init_simple_motion_search_mvs()
2549 init_simple_motion_search_mvs(sms_tree->split[1], start_mvs); in init_simple_motion_search_mvs()
2550 init_simple_motion_search_mvs(sms_tree->split[2], start_mvs); in init_simple_motion_search_mvs()
2551 init_simple_motion_search_mvs(sms_tree->split[3], start_mvs); in init_simple_motion_search_mvs()