mirror of
https://github.com/ultravideo/uvg266.git
synced 2024-11-24 02:24:07 +00:00
Fix errors in MRL implementation in intra rdo search.
This commit is contained in:
parent
9396940900
commit
f0a412e202
|
@ -1065,6 +1065,10 @@ void kvz_search_cu_intra(encoder_state_t * const state,
|
||||||
// Copy rough results for other reference lines
|
// Copy rough results for other reference lines
|
||||||
for (int line = 1; line < MAX_REF_LINE_IDX; ++line) {
|
for (int line = 1; line < MAX_REF_LINE_IDX; ++line) {
|
||||||
number_of_modes[line] = number_of_modes[0];
|
number_of_modes[line] = number_of_modes[0];
|
||||||
|
for (int i = 0; i < number_of_modes[line]; ++i) {
|
||||||
|
modes[line][i] = modes[0][i];
|
||||||
|
costs[line][i] = costs[0][i];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
for(int line = 0; line < MAX_REF_LINE_IDX; ++line) {
|
for(int line = 0; line < MAX_REF_LINE_IDX; ++line) {
|
||||||
|
@ -1077,8 +1081,8 @@ void kvz_search_cu_intra(encoder_state_t * const state,
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t lines = 1;
|
uint8_t lines = 1;
|
||||||
// Find modes with multiple reference lines if in use
|
// Find modes with multiple reference lines if in use. Do not use if CU in first row.
|
||||||
if (state->encoder_control->cfg.mrl) {
|
if (state->encoder_control->cfg.mrl && (y_px % LCU_WIDTH) != 0) {
|
||||||
lines = MAX_REF_LINE_IDX;
|
lines = MAX_REF_LINE_IDX;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue