Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
Xiph.Org
aom-rav1e
Commits
0cf54d40
Commit
0cf54d40
authored
Oct 16, 2017
by
Sebastien Alaiwan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Remove abandonned SUPERTX experiment
Change-Id: I9d3f0380865790d8adcb85f03305b193bc1949d7
parent
365e644a
Changes
28
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
28 changed files
with
375 additions
and
4906 deletions
+375
-4906
av1/common/av1_loopfilter.c
av1/common/av1_loopfilter.c
+80
-155
av1/common/blockd.h
av1/common/blockd.h
+0
-21
av1/common/common_data.h
av1/common/common_data.h
+0
-27
av1/common/entropymode.c
av1/common/entropymode.c
+0
-31
av1/common/entropymode.h
av1/common/entropymode.h
+0
-7
av1/common/enums.h
av1/common/enums.h
+0
-5
av1/common/onyxc_int.h
av1/common/onyxc_int.h
+0
-14
av1/common/reconinter.c
av1/common/reconinter.c
+25
-383
av1/common/reconinter.h
av1/common/reconinter.h
+6
-29
av1/decoder/decodeframe.c
av1/decoder/decodeframe.c
+8
-1101
av1/decoder/decodemv.c
av1/decoder/decodemv.c
+79
-150
av1/decoder/decodemv.h
av1/decoder/decodemv.h
+0
-6
av1/encoder/bitstream.c
av1/encoder/bitstream.c
+15
-234
av1/encoder/bitstream.h
av1/encoder/bitstream.h
+0
-3
av1/encoder/context_tree.c
av1/encoder/context_tree.c
+0
-25
av1/encoder/context_tree.h
av1/encoder/context_tree.h
+0
-11
av1/encoder/encodeframe.c
av1/encoder/encodeframe.c
+148
-2442
av1/encoder/encodemb.c
av1/encoder/encodemb.c
+0
-28
av1/encoder/encodemb.h
av1/encoder/encodemb.h
+0
-3
av1/encoder/firstpass.c
av1/encoder/firstpass.c
+0
-3
av1/encoder/rdopt.c
av1/encoder/rdopt.c
+12
-125
av1/encoder/rdopt.h
av1/encoder/rdopt.h
+2
-21
av1/encoder/tokenize.c
av1/encoder/tokenize.c
+0
-49
av1/encoder/tokenize.h
av1/encoder/tokenize.h
+0
-5
build/cmake/aom_config_defaults.cmake
build/cmake/aom_config_defaults.cmake
+0
-1
build/cmake/aom_experiment_deps.cmake
build/cmake/aom_experiment_deps.cmake
+0
-7
configure
configure
+0
-7
tools/aom_entropy_optimizer.c
tools/aom_entropy_optimizer.c
+0
-13
No files found.
av1/common/av1_loopfilter.c
View file @
0cf54d40
...
...
@@ -640,15 +640,7 @@ static uint8_t get_filter_level(const AV1_COMMON *cm,
return
cm
->
mi
[
mi_row
*
cm
->
mi_stride
+
mi_col
].
mbmi
.
filt_lvl
;
#endif
#if CONFIG_SUPERTX
const
int
segment_id
=
AOMMIN
(
mbmi
->
segment_id
,
mbmi
->
segment_id_supertx
);
assert
(
IMPLIES
(
supertx_enabled
(
mbmi
),
mbmi
->
segment_id_supertx
!=
MAX_SEGMENTS
));
assert
(
IMPLIES
(
supertx_enabled
(
mbmi
),
mbmi
->
segment_id_supertx
<=
mbmi
->
segment_id
));
#else
const
int
segment_id
=
mbmi
->
segment_id
;
#endif // CONFIG_SUPERTX
if
(
cm
->
delta_lf_present_flag
)
{
#if CONFIG_LOOPFILTER_LEVEL
int
delta_lf
;
...
...
@@ -706,15 +698,7 @@ static uint8_t get_filter_level(const loop_filter_info_n *lfi_n,
return
mbmi
->
filt_lvl
;
#endif
#if CONFIG_SUPERTX
const
int
segment_id
=
AOMMIN
(
mbmi
->
segment_id
,
mbmi
->
segment_id_supertx
);
assert
(
IMPLIES
(
supertx_enabled
(
mbmi
),
mbmi
->
segment_id_supertx
!=
MAX_SEGMENTS
));
assert
(
IMPLIES
(
supertx_enabled
(
mbmi
),
mbmi
->
segment_id_supertx
<=
mbmi
->
segment_id
));
#else
const
int
segment_id
=
mbmi
->
segment_id
;
#endif // CONFIG_SUPERTX
return
lfi_n
->
lvl
[
segment_id
][
mbmi
->
ref_frame
[
0
]][
mode_lf_lut
[
mbmi
->
mode
]];
}
#endif
...
...
@@ -1619,20 +1603,12 @@ static void build_masks(AV1_COMMON *const cm,
static
void
build_y_mask
(
AV1_COMMON
*
const
cm
,
const
loop_filter_info_n
*
const
lfi_n
,
const
MODE_INFO
*
mi
,
const
int
shift_y
,
#if CONFIG_SUPERTX
int
supertx_enabled
,
#endif // CONFIG_SUPERTX
LOOP_FILTER_MASK
*
lfm
)
{
const
MB_MODE_INFO
*
mbmi
=
&
mi
->
mbmi
;
const
TX_SIZE
tx_size_y
=
txsize_sqr_map
[
mbmi
->
tx_size
];
const
TX_SIZE
tx_size_y_left
=
txsize_horz_map
[
mbmi
->
tx_size
];
const
TX_SIZE
tx_size_y_above
=
txsize_vert_map
[
mbmi
->
tx_size
];
#if CONFIG_SUPERTX
const
BLOCK_SIZE
block_size
=
supertx_enabled
?
(
BLOCK_SIZE
)(
3
*
tx_size_y
)
:
mbmi
->
sb_type
;
#else
const
BLOCK_SIZE
block_size
=
mbmi
->
sb_type
;
#endif
#if CONFIG_EXT_DELTA_Q
#if CONFIG_LOOPFILTER_LEVEL
const
int
filter_level
=
get_filter_level
(
cm
,
lfi_n
,
0
,
0
,
mbmi
);
...
...
@@ -1751,151 +1727,100 @@ void av1_setup_mask(AV1_COMMON *const cm, const int mi_row, const int mi_col,
// through the recursive loop structure multiple times.
switch
(
mip
[
0
]
->
mbmi
.
sb_type
)
{
case
BLOCK_64X64
:
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
0
,
0
,
lfm
);
break
;
case
BLOCK_64X32
:
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
0
,
0
,
lfm
);
#if CONFIG_SUPERTX && CONFIG_TX64X64
if
(
supertx_enabled
(
&
mip
[
0
]
->
mbmi
))
break
;
#endif // CONFIG_SUPERTX && CONFIG_TX64X64
case
BLOCK_64X32
:
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
0
,
0
,
lfm
);
mip2
=
mip
+
mode_info_stride
*
4
;
if
(
4
>=
max_rows
)
break
;
build_masks
(
cm
,
lfi_n
,
mip2
[
0
],
32
,
8
,
lfm
);
break
;
case
BLOCK_32X64
:
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
0
,
0
,
lfm
);
#if CONFIG_SUPERTX && CONFIG_TX64X64
if
(
supertx_enabled
(
&
mip
[
0
]
->
mbmi
))
break
;
#endif // CONFIG_SUPERTX && CONFIG_TX64X64
case
BLOCK_32X64
:
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
0
,
0
,
lfm
);
mip2
=
mip
+
4
;
if
(
4
>=
max_cols
)
break
;
build_masks
(
cm
,
lfi_n
,
mip2
[
0
],
4
,
2
,
lfm
);
break
;
default:
#if CONFIG_SUPERTX && CONFIG_TX64X64
if
(
mip
[
0
]
->
mbmi
.
tx_size
==
TX_64X64
)
{
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
0
,
0
,
lfm
);
}
else
{
#endif // CONFIG_SUPERTX && CONFIG_TX64X64
for
(
idx_32
=
0
;
idx_32
<
4
;
mip
+=
offset_32
[
idx_32
],
++
idx_32
)
{
const
int
shift_y_32
=
shift_32_y
[
idx_32
];
const
int
shift_uv_32
=
shift_32_uv
[
idx_32
];
const
int
mi_32_col_offset
=
((
idx_32
&
1
)
<<
2
);
const
int
mi_32_row_offset
=
((
idx_32
>>
1
)
<<
2
);
if
(
mi_32_col_offset
>=
max_cols
||
mi_32_row_offset
>=
max_rows
)
continue
;
switch
(
mip
[
0
]
->
mbmi
.
sb_type
)
{
case
BLOCK_32X32
:
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
shift_y_32
,
shift_uv_32
,
lfm
);
break
;
case
BLOCK_32X16
:
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
shift_y_32
,
shift_uv_32
,
lfm
);
#if CONFIG_SUPERTX
if
(
supertx_enabled
(
&
mip
[
0
]
->
mbmi
))
break
;
#endif
if
(
mi_32_row_offset
+
2
>=
max_rows
)
continue
;
mip2
=
mip
+
mode_info_stride
*
2
;
build_masks
(
cm
,
lfi_n
,
mip2
[
0
],
shift_y_32
+
16
,
shift_uv_32
+
4
,
lfm
);
break
;
case
BLOCK_16X32
:
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
shift_y_32
,
shift_uv_32
,
lfm
);
#if CONFIG_SUPERTX
if
(
supertx_enabled
(
&
mip
[
0
]
->
mbmi
))
break
;
#endif
if
(
mi_32_col_offset
+
2
>=
max_cols
)
continue
;
mip2
=
mip
+
2
;
build_masks
(
cm
,
lfi_n
,
mip2
[
0
],
shift_y_32
+
2
,
shift_uv_32
+
1
,
lfm
);
break
;
default:
#if CONFIG_SUPERTX
if
(
mip
[
0
]
->
mbmi
.
tx_size
==
TX_32X32
)
{
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
shift_y_32
,
shift_uv_32
,
lfm
);
break
;
}
#endif
for
(
idx_16
=
0
;
idx_16
<
4
;
mip
+=
offset_16
[
idx_16
],
++
idx_16
)
{
const
int
shift_y_32_16
=
shift_y_32
+
shift_16_y
[
idx_16
];
const
int
shift_uv_32_16
=
shift_uv_32
+
shift_16_uv
[
idx_16
];
const
int
mi_16_col_offset
=
mi_32_col_offset
+
((
idx_16
&
1
)
<<
1
);
const
int
mi_16_row_offset
=
mi_32_row_offset
+
((
idx_16
>>
1
)
<<
1
);
if
(
mi_16_col_offset
>=
max_cols
||
mi_16_row_offset
>=
max_rows
)
continue
;
switch
(
mip
[
0
]
->
mbmi
.
sb_type
)
{
case
BLOCK_16X16
:
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
shift_y_32_16
,
shift_uv_32_16
,
lfm
);
break
;
case
BLOCK_16X8
:
#if CONFIG_SUPERTX
if
(
supertx_enabled
(
&
mip
[
0
]
->
mbmi
))
break
;
#endif
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
shift_y_32_16
,
shift_uv_32_16
,
lfm
);
if
(
mi_16_row_offset
+
1
>=
max_rows
)
continue
;
mip2
=
mip
+
mode_info_stride
;
build_y_mask
(
cm
,
lfi_n
,
mip2
[
0
],
shift_y_32_16
+
8
,
#if CONFIG_SUPERTX
0
,
#endif
lfm
);
break
;
case
BLOCK_8X16
:
#if CONFIG_SUPERTX
if
(
supertx_enabled
(
&
mip
[
0
]
->
mbmi
))
break
;
#endif
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
shift_y_32_16
,
shift_uv_32_16
,
lfm
);
if
(
mi_16_col_offset
+
1
>=
max_cols
)
continue
;
mip2
=
mip
+
1
;
build_y_mask
(
cm
,
lfi_n
,
mip2
[
0
],
shift_y_32_16
+
1
,
#if CONFIG_SUPERTX
0
,
#endif
lfm
);
break
;
default:
{
const
int
shift_y_32_16_8_zero
=
shift_y_32_16
+
shift_8_y
[
0
];
#if CONFIG_SUPERTX
if
(
mip
[
0
]
->
mbmi
.
tx_size
==
TX_16X16
)
{
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
shift_y_32_16_8_zero
,
shift_uv_32_16
,
lfm
);
break
;
}
#endif
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
shift_y_32_16_8_zero
,
shift_uv_32_16
,
lfm
);
mip
+=
offset
[
0
];
for
(
idx_8
=
1
;
idx_8
<
4
;
mip
+=
offset
[
idx_8
],
++
idx_8
)
{
const
int
shift_y_32_16_8
=
shift_y_32_16
+
shift_8_y
[
idx_8
];
const
int
mi_8_col_offset
=
mi_16_col_offset
+
((
idx_8
&
1
));
const
int
mi_8_row_offset
=
mi_16_row_offset
+
((
idx_8
>>
1
));
if
(
mi_8_col_offset
>=
max_cols
||
mi_8_row_offset
>=
max_rows
)
continue
;
build_y_mask
(
cm
,
lfi_n
,
mip
[
0
],
shift_y_32_16_8
,
#if CONFIG_SUPERTX
supertx_enabled
(
&
mip
[
0
]
->
mbmi
),
#endif
lfm
);
}
break
;
for
(
idx_32
=
0
;
idx_32
<
4
;
mip
+=
offset_32
[
idx_32
],
++
idx_32
)
{
const
int
shift_y_32
=
shift_32_y
[
idx_32
];
const
int
shift_uv_32
=
shift_32_uv
[
idx_32
];
const
int
mi_32_col_offset
=
((
idx_32
&
1
)
<<
2
);
const
int
mi_32_row_offset
=
((
idx_32
>>
1
)
<<
2
);
if
(
mi_32_col_offset
>=
max_cols
||
mi_32_row_offset
>=
max_rows
)
continue
;
switch
(
mip
[
0
]
->
mbmi
.
sb_type
)
{
case
BLOCK_32X32
:
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
shift_y_32
,
shift_uv_32
,
lfm
);
break
;
case
BLOCK_32X16
:
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
shift_y_32
,
shift_uv_32
,
lfm
);
if
(
mi_32_row_offset
+
2
>=
max_rows
)
continue
;
mip2
=
mip
+
mode_info_stride
*
2
;
build_masks
(
cm
,
lfi_n
,
mip2
[
0
],
shift_y_32
+
16
,
shift_uv_32
+
4
,
lfm
);
break
;
case
BLOCK_16X32
:
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
shift_y_32
,
shift_uv_32
,
lfm
);
if
(
mi_32_col_offset
+
2
>=
max_cols
)
continue
;
mip2
=
mip
+
2
;
build_masks
(
cm
,
lfi_n
,
mip2
[
0
],
shift_y_32
+
2
,
shift_uv_32
+
1
,
lfm
);
break
;
default:
for
(
idx_16
=
0
;
idx_16
<
4
;
mip
+=
offset_16
[
idx_16
],
++
idx_16
)
{
const
int
shift_y_32_16
=
shift_y_32
+
shift_16_y
[
idx_16
];
const
int
shift_uv_32_16
=
shift_uv_32
+
shift_16_uv
[
idx_16
];
const
int
mi_16_col_offset
=
mi_32_col_offset
+
((
idx_16
&
1
)
<<
1
);
const
int
mi_16_row_offset
=
mi_32_row_offset
+
((
idx_16
>>
1
)
<<
1
);
if
(
mi_16_col_offset
>=
max_cols
||
mi_16_row_offset
>=
max_rows
)
continue
;
switch
(
mip
[
0
]
->
mbmi
.
sb_type
)
{
case
BLOCK_16X16
:
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
shift_y_32_16
,
shift_uv_32_16
,
lfm
);
break
;
case
BLOCK_16X8
:
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
shift_y_32_16
,
shift_uv_32_16
,
lfm
);
if
(
mi_16_row_offset
+
1
>=
max_rows
)
continue
;
mip2
=
mip
+
mode_info_stride
;
build_y_mask
(
cm
,
lfi_n
,
mip2
[
0
],
shift_y_32_16
+
8
,
lfm
);
break
;
case
BLOCK_8X16
:
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
shift_y_32_16
,
shift_uv_32_16
,
lfm
);
if
(
mi_16_col_offset
+
1
>=
max_cols
)
continue
;
mip2
=
mip
+
1
;
build_y_mask
(
cm
,
lfi_n
,
mip2
[
0
],
shift_y_32_16
+
1
,
lfm
);
break
;
default:
{
const
int
shift_y_32_16_8_zero
=
shift_y_32_16
+
shift_8_y
[
0
];
build_masks
(
cm
,
lfi_n
,
mip
[
0
],
shift_y_32_16_8_zero
,
shift_uv_32_16
,
lfm
);
mip
+=
offset
[
0
];
for
(
idx_8
=
1
;
idx_8
<
4
;
mip
+=
offset
[
idx_8
],
++
idx_8
)
{
const
int
shift_y_32_16_8
=
shift_y_32_16
+
shift_8_y
[
idx_8
];
const
int
mi_8_col_offset
=
mi_16_col_offset
+
((
idx_8
&
1
));
const
int
mi_8_row_offset
=
mi_16_row_offset
+
((
idx_8
>>
1
));
if
(
mi_8_col_offset
>=
max_cols
||
mi_8_row_offset
>=
max_rows
)
continue
;
build_y_mask
(
cm
,
lfi_n
,
mip
[
0
],
shift_y_32_16_8
,
lfm
);
}
break
;
}
}
break
;
}
}
break
;
}
#if CONFIG_SUPERTX && CONFIG_TX64X64
}
#endif // CONFIG_SUPERTX && CONFIG_TX64X64
break
;
}
// The largest loopfilter we have is 16x16 so we use the 16x16 mask
...
...
av1/common/blockd.h
View file @
0cf54d40
...
...
@@ -360,10 +360,6 @@ typedef struct MB_MODE_INFO {
#endif
int8_t
skip
;
int8_t
segment_id
;
#if CONFIG_SUPERTX
// Minimum of all segment IDs under the current supertx block.
int8_t
segment_id_supertx
;
#endif // CONFIG_SUPERTX
int8_t
seg_id_predicted
;
// valid only when temporal_update is enabled
#if CONFIG_MRC_TX
...
...
@@ -759,9 +755,6 @@ typedef struct macroblockd {
TXFM_CONTEXT
left_txfm_context_buffer
[
2
*
MAX_MIB_SIZE
];
TX_SIZE
max_tx_size
;
#if CONFIG_SUPERTX
TX_SIZE
supertx_size
;
#endif
#endif
#if CONFIG_LOOP_RESTORATION
...
...
@@ -877,14 +870,6 @@ static const TX_TYPE intra_mode_to_tx_type_context[INTRA_MODES] = {
ADST_ADST
,
// PAETH
};
#if CONFIG_SUPERTX
static
INLINE
int
supertx_enabled
(
const
MB_MODE_INFO
*
mbmi
)
{
TX_SIZE
max_tx_size
=
txsize_sqr_map
[
mbmi
->
tx_size
];
return
tx_size_wide
[
max_tx_size
]
>
AOMMIN
(
block_size_wide
[
mbmi
->
sb_type
],
block_size_high
[
mbmi
->
sb_type
]);
}
#endif // CONFIG_SUPERTX
#define USE_TXTYPE_SEARCH_FOR_SUB8X8_IN_CB4X4 1
#if CONFIG_RECT_TX
...
...
@@ -1387,12 +1372,6 @@ static INLINE TX_SIZE av1_get_uv_tx_size(const MB_MODE_INFO *mbmi,
assert
(
mbmi
->
tx_size
>
TX_2X2
);
#endif // CONFIG_CHROMA_2X2
#if CONFIG_SUPERTX
if
(
supertx_enabled
(
mbmi
))
return
uvsupertx_size_lookup
[
txsize_sqr_map
[
mbmi
->
tx_size
]]
[
pd
->
subsampling_x
][
pd
->
subsampling_y
];
#endif // CONFIG_SUPERTX
const
TX_SIZE
uv_txsize
=
uv_txsize_lookup
[
mbmi
->
sb_type
][
mbmi
->
tx_size
][
pd
->
subsampling_x
]
[
pd
->
subsampling_y
];
...
...
av1/common/common_data.h
View file @
0cf54d40
...
...
@@ -2119,33 +2119,6 @@ static const int intra_mode_context[INTRA_MODES] = {
};
#endif
#if CONFIG_SUPERTX
static
const
TX_SIZE
uvsupertx_size_lookup
[
TX_SIZES
][
2
][
2
]
=
{
// ss_x == 0 ss_x == 0 ss_x == 1 ss_x == 1
// ss_y == 0 ss_y == 1 ss_y == 0 ss_y == 1
#if CONFIG_CHROMA_2X2
{
{
TX_4X4
,
TX_4X4
},
{
TX_4X4
,
TX_4X4
}
},
#endif
{
{
TX_4X4
,
TX_4X4
},
{
TX_4X4
,
TX_4X4
}
},
{
{
TX_8X8
,
TX_4X4
},
{
TX_4X4
,
TX_4X4
}
},
{
{
TX_16X16
,
TX_8X8
},
{
TX_8X8
,
TX_8X8
}
},
{
{
TX_32X32
,
TX_16X16
},
{
TX_16X16
,
TX_16X16
}
},
#if CONFIG_TX64X64
{
{
TX_64X64
,
TX_32X32
},
{
TX_32X32
,
TX_32X32
}
},
#endif // CONFIG_TX64X64
};
#if CONFIG_EXT_PARTITION_TYPES
static
const
int
partition_supertx_context_lookup
[
EXT_PARTITION_TYPES
]
=
{
-
1
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
};
#else
static
const
int
partition_supertx_context_lookup
[
PARTITION_TYPES
]
=
{
-
1
,
0
,
0
,
1
};
#endif // CONFIG_EXT_PARTITION_TYPES
#endif // CONFIG_SUPERTX
#if CONFIG_NCOBMC_ADAPT_WEIGHT
// NCOBMC_ADAPT_INTRPL only supports block size >= BLOCK_8X8 and <= BLOCK_64X64
static
const
ADAPT_OVERLAP_BLOCK
adapt_overlap_block_lookup
[
BLOCK_SIZES_ALL
]
=
{
...
...
av1/common/entropymode.c
View file @
0cf54d40
...
...
@@ -2654,25 +2654,6 @@ static const aom_cdf_prob
};
#endif // CONFIG_FILTER_INTRA
#if CONFIG_SUPERTX
static const aom_prob
default_supertx_prob[PARTITION_SUPERTX_CONTEXTS][TX_SIZES] = {
#if CONFIG_CHROMA_2X2
#if CONFIG_TX64X64
{ 1, 1, 160, 160, 170, 180 }, { 1, 1, 200, 200, 210, 220 },
#else
{ 1, 1, 160, 160, 170 }, { 1, 1, 200, 200, 210 },
#endif // CONFIG_TX64X64
#else
#if CONFIG_TX64X64
{ 1, 160, 160, 170, 180 }, { 1, 200, 200, 210, 220 },
#else
{ 1, 160, 160, 170 }, { 1, 200, 200, 210 },
#endif // CONFIG_TX64X64
#endif // CONFIG_CHROMA_2X2
};
#endif // CONFIG_SUPERTX
// FIXME(someone) need real defaults here
static
const
aom_prob
default_segment_tree_probs
[
SEG_TREE_PROBS
]
=
{
128
,
128
,
128
,
128
,
128
,
128
,
128
...
...
@@ -6565,9 +6546,6 @@ static void init_mode_probs(FRAME_CONTEXT *fc) {
av1_copy
(
fc
->
interintra_mode_prob
,
default_interintra_mode_prob
);
av1_copy
(
fc
->
interintra_mode_cdf
,
default_interintra_mode_cdf
);
#endif // CONFIG_INTERINTRA
#if CONFIG_SUPERTX
av1_copy(fc->supertx_prob, default_supertx_prob);
#endif // CONFIG_SUPERTX
av1_copy
(
fc
->
seg
.
tree_probs
,
default_segment_tree_probs
);
av1_copy
(
fc
->
seg
.
pred_probs
,
default_segment_pred_probs
);
#if CONFIG_NEW_MULTISYMBOL
...
...
@@ -6704,15 +6682,6 @@ void av1_adapt_inter_frame_probs(AV1_COMMON *cm) {
#endif // CONFIG_MOTION_VAR && CONFIG_WARPED_MOTION
#endif // CONFIG_MOTION_VAR || CONFIG_WARPED_MOTION
#if CONFIG_SUPERTX
for (i = 0; i < PARTITION_SUPERTX_CONTEXTS; ++i) {
for (j = TX_8X8; j < TX_SIZES; ++j) {
fc->supertx_prob[i][j] = av1_mode_mv_merge_probs(
pre_fc->supertx_prob[i][j], counts->supertx[i][j]);
}
}
#endif // CONFIG_SUPERTX
for
(
i
=
0
;
i
<
INTER_MODE_CONTEXTS
;
i
++
)
aom_tree_merge_probs
(
av1_inter_compound_mode_tree
,
pre_fc
->
inter_compound_mode_probs
[
i
],
...
...
av1/common/entropymode.h
View file @
0cf54d40
...
...
@@ -326,9 +326,6 @@ typedef struct frame_contexts {
aom_cdf_prob
intrabc_cdf
[
CDF_SIZE
(
2
)];
#endif
int
initialized
;
#if CONFIG_SUPERTX
aom_prob
supertx_prob
[
PARTITION_SUPERTX_CONTEXTS
][
TX_SIZES
];
#endif // CONFIG_SUPERTX
struct
segmentation_probs
seg
;
#if CONFIG_FILTER_INTRA
aom_prob
filter_intra_probs
[
PLANE_TYPES
];
...
...
@@ -541,10 +538,6 @@ typedef struct FRAME_COUNTS {
unsigned
int
inter_ext_tx
[
EXT_TX_SIZES
][
TX_TYPES
];
#endif // CONFIG_EXT_TX
#endif // CONFIG_ENTROPY_STATS
#if CONFIG_SUPERTX
unsigned
int
supertx
[
PARTITION_SUPERTX_CONTEXTS
][
TX_SIZES
][
2
];
unsigned
int
supertx_size
[
TX_SIZES
];
#endif // CONFIG_SUPERTX
struct
seg_counts
seg
;
#if CONFIG_FILTER_INTRA
unsigned
int
filter_intra
[
PLANE_TYPES
][
2
];
...
...
av1/common/enums.h
View file @
0cf54d40
...
...
@@ -712,11 +712,6 @@ typedef enum {
#define MODE_CTX_REF_FRAMES (TOTAL_REFS_PER_FRAME + COMP_REFS)
#if CONFIG_SUPERTX
#define PARTITION_SUPERTX_CONTEXTS 2
#define MAX_SUPERTX_BLOCK_SIZE BLOCK_32X32
#endif // CONFIG_SUPERTX
#if CONFIG_LOOP_RESTORATION
typedef
enum
{
RESTORE_NONE
,
...
...
av1/common/onyxc_int.h
View file @
0cf54d40
...
...
@@ -914,20 +914,6 @@ static INLINE int is_chroma_reference(int mi_row, int mi_col, BLOCK_SIZE bsize,
#endif
}
#if CONFIG_SUPERTX
static
INLINE
int
need_handle_chroma_sub8x8
(
BLOCK_SIZE
bsize
,
int
subsampling_x
,
int
subsampling_y
)
{
const
int
bw
=
mi_size_wide
[
bsize
];
const
int
bh
=
mi_size_high
[
bsize
];
if
(
bsize
>=
BLOCK_8X8
||
((
!
(
bh
&
0x01
)
||
!
subsampling_y
)
&&
(
!
(
bw
&
0x01
)
||
!
subsampling_x
)))
return
0
;
else
return
1
;
}
#endif
static
INLINE
BLOCK_SIZE
scale_chroma_bsize
(
BLOCK_SIZE
bsize
,
int
subsampling_x
,
int
subsampling_y
)
{
BLOCK_SIZE
bs
=
bsize
;
...
...
av1/common/reconinter.c
View file @
0cf54d40
This diff is collapsed.
Click to expand it.
av1/common/reconinter.h
View file @
0cf54d40
...
...
@@ -286,9 +286,6 @@ void av1_make_masked_inter_predictor(
const
int
subpel_x
,
const
int
subpel_y
,
const
struct
scale_factors
*
sf
,
int
w
,
int
h
,
ConvolveParams
*
conv_params
,
InterpFilters
interp_filters
,
int
xs
,
int
ys
,
#if CONFIG_SUPERTX
int
wedge_offset_x
,
int
wedge_offset_y
,
#endif // CONFIG_SUPERTX
#if CONFIG_GLOBAL_MOTION || CONFIG_WARPED_MOTION || CONFIG_COMPOUND_SEGMENT
int
plane
,
#endif
...
...
@@ -375,25 +372,6 @@ void av1_build_inter_predictors_sb(const AV1_COMMON *cm, MACROBLOCKD *xd,
int
mi_row
,
int
mi_col
,
BUFFER_SET
*
ctx
,
BLOCK_SIZE
bsize
);
#if CONFIG_SUPERTX
void
av1_build_inter_predictor_sb_sub8x8_extend
(
const
AV1_COMMON
*
cm
,
MACROBLOCKD
*
xd
,
int
mi_row_ori
,
int
mi_col_ori
,
int
mi_row
,
int
mi_col
,
int
plane
,
BLOCK_SIZE
bsize
,
int
block
);
void
av1_build_inter_predictor_sb_extend
(
const
AV1_COMMON
*
cm
,
MACROBLOCKD
*
xd
,
int
mi_row_ori
,
int
mi_col_ori
,
int
mi_row
,
int
mi_col
,
int
plane
,
BLOCK_SIZE
bsize
);
struct
macroblockd_plane
;
void
av1_build_masked_inter_predictor_complex
(
MACROBLOCKD
*
xd
,
uint8_t
*
dst
,
int
dst_stride
,
const
uint8_t
*
pre
,
int
pre_stride
,
int
mi_row
,
int
mi_col
,
int
mi_row_ori
,
int
mi_col_ori
,
BLOCK_SIZE
bsize
,
BLOCK_SIZE
top_bsize
,
PARTITION_TYPE
partition
,
int
plane
);
#endif // CONFIG_SUPERTX
void
av1_build_inter_predictor
(
const
uint8_t
*
src
,
int
src_stride
,
uint8_t
*
dst
,
int
dst_stride
,
const
MV
*
src_mv
,
const
struct
scale_factors
*
sf
,
int
w
,
int
h
,
...
...
@@ -631,13 +609,12 @@ void av1_combine_interintra(MACROBLOCKD *xd, BLOCK_SIZE bsize, int plane,
void
av1_build_inter_predictors_for_planes_single_buf
(
MACROBLOCKD
*
xd
,
BLOCK_SIZE
bsize
,
int
plane_from
,
int
plane_to
,
int
mi_row
,
int
mi_col
,
int
ref
,
uint8_t
*
ext_dst
[
3
],
int
ext_dst_stride
[
3
]);
void
av1_build_wedge_inter_predictor_from_buf
(
MACROBLOCKD
*
xd
,
BLOCK_SIZE
bsize
,
int
plane_from
,
int
plane_to
,
#if CONFIG_SUPERTX
int
wedge_offset_x
,
int
wedge_offset_y
,
#endif // CONFIG_SUPERTX
uint8_t
*
ext_dst0
[
3
],
int
ext_dst_stride0
[
3
],
uint8_t
*
ext_dst1
[
3
],
int
ext_dst_stride1
[
3
]);
void
av1_build_wedge_inter_predictor_from_buf
(
MACROBLOCKD
*
xd
,
BLOCK_SIZE
bsize
,
int
plane_from
,
int
plane_to
,
uint8_t
*
ext_dst0
[
3
],
int
ext_dst_stride0
[
3
],
uint8_t
*
ext_dst1
[
3
],
int
ext_dst_stride1
[
3
]);
#if CONFIG_NCOBMC_ADAPT_WEIGHT
#define ASSIGN_ALIGNED_PTRS(p, a, s) \
...
...
av1/decoder/decodeframe.c
View file @
0cf54d40
This diff is collapsed.
Click to expand it.
av1/decoder/decodemv.c
View file @
0cf54d40
...
...
@@ -947,9 +947,6 @@ static void read_intra_angle_info(MACROBLOCKD *const xd, aom_reader *r) {
#endif // CONFIG_EXT_INTRA
void
av1_read_tx_type
(
const
AV1_COMMON
*
const
cm
,
MACROBLOCKD
*
xd
,
#if CONFIG_SUPERTX
int
supertx_enabled
,
#endif
#if CONFIG_TXK_SEL
int
blk_row
,
int
blk_col
,
int
block
,
int
plane
,
TX_SIZE
tx_size
,
...
...
@@ -986,9 +983,6 @@ void av1_read_tx_type(const AV1_COMMON *const cm, MACROBLOCKD *xd,
((
!
cm
->
seg
.
enabled
&&
cm
->
base_qindex
>
0
)
||
(
cm
->
seg
.
enabled
&&
xd
->
qindex
[
mbmi
->
segment_id
]
>
0
))
&&
!
mbmi
->
skip
&&
#if CONFIG_SUPERTX
!
supertx_enabled
&&
#endif // CONFIG_SUPERTX
!
segfeature_active
(
&
cm
->
seg
,
mbmi
->
segment_id
,
SEG_LVL_SKIP
))
{
const
TxSetType
tx_set_type
=
get_ext_tx_set_type
(
tx_size
,
mbmi
->
sb_type
,
inter_block
,
cm
->
reduced_tx_set_used
);
...
...
@@ -1080,9 +1074,6 @@ void av1_read_tx_type(const AV1_COMMON *const cm, MACROBLOCKD *xd,
((
!
cm
->
seg
.
enabled
&&
cm
->
base_qindex
>
0
)
||
(
cm
->
seg
.
enabled
&&
xd
->
qindex
[
mbmi
->
segment_id
]
>
0
))
&&
!
mbmi
->
skip
&&
#if CONFIG_SUPERTX
!
supertx_enabled
&&
#endif // CONFIG_SUPERTX
!
segfeature_active
(
&
cm
->
seg
,
mbmi
->
segment_id
,
SEG_LVL_SKIP
))
{
#if CONFIG_ENTROPY_STATS
FRAME_COUNTS
*
counts
=
xd
->
counts
;
...
...
@@ -1172,11 +1163,7 @@ static void read_intrabc_info(AV1_COMMON *const cm, MACROBLOCKD *const xd,
mbmi
->
min_tx_size
=
get_min_tx_size
(
mbmi
->
tx_size
);
#endif // CONFIG_VAR_TX
#if CONFIG_EXT_TX && !CONFIG_TXK_SEL
av1_read_tx_type
(
cm
,
xd
,
#if CONFIG_SUPERTX
0
,
#endif
r
);
av1_read_tx_type
(
cm
,
xd
,
r
);
#endif // CONFIG_EXT_TX && !CONFIG_TXK_SEL
}
}
...
...
@@ -1327,11 +1314,7 @@ static void read_intra_frame_mode_info(AV1_COMMON *const cm,
#endif // CONFIG_FILTER_INTRA
#if !CONFIG_TXK_SEL
av1_read_tx_type
(
cm
,
xd
,
#if CONFIG_SUPERTX
0
,
#endif
r
);
av1_read_tx_type
(
cm
,
xd
,
r
);
#endif // !CONFIG_TXK_SEL
}
...
...
@@ -2280,13 +2263,8 @@ static void dec_dump_logs(AV1_COMMON *cm, MODE_INFO *const mi, int mi_row,
static
void
read_inter_block_mode_info
(
AV1Decoder
*
const
pbi
,
MACROBLOCKD
*
const
xd
,
MODE_INFO
*
const
mi
,
#if CONFIG_SUPERTX
int
mi_row
,
int
mi_col
,
aom_reader
*
r
,
int
supertx_enabled
)
{
#else
int
mi_row
,
int