mirror of
https://github.com/ultravideo/uvg266.git
synced 2024-11-23 18:14:06 +00:00
Merge branch 'thread_dep_fixes'
This commit is contained in:
commit
5358e9f3e3
|
@ -146,7 +146,8 @@ void kvz_dbg_yuview_init(const encoder_control_t* const encoder, char* filename,
|
|||
fprintf(yuview_output, "%%;scaleToBlockSize;1\r\n");
|
||||
fprintf(yuview_output, "%%;type;18;TR-Skip;range\r\n");
|
||||
fprintf(yuview_output, "%%;defaultRange;0;2;heat\r\n");
|
||||
|
||||
fprintf(yuview_output, "%%;type;19;MRL;range\r\n");
|
||||
fprintf(yuview_output, "%%;defaultRange;0;2;autumn\r\n");
|
||||
}
|
||||
|
||||
static int yuview_check_allocated_memory(int poc, int type) {
|
||||
|
|
|
@ -54,7 +54,8 @@ enum {
|
|||
DBG_YUVIEW_NUM_SIG_COEFF_U = 16,
|
||||
DBG_YUVIEW_NUM_SIG_COEFF_V = 17,
|
||||
DBG_YUVIEW_TR_SKIP = 18,
|
||||
DBG_YUVIEW_NUM_ITEMS = 19,
|
||||
DBG_YUVIEW_MRL = 19,
|
||||
DBG_YUVIEW_NUM_ITEMS = 20,
|
||||
|
||||
};
|
||||
|
||||
|
|
|
@ -858,6 +858,9 @@ static void encode_intra_coding_unit(encoder_state_t * const state,
|
|||
bool enable_mrl = state->encoder_control->cfg.mrl;
|
||||
int multi_ref_idx = enable_mrl ? cur_cu->intra.multi_ref_idx : 0;
|
||||
|
||||
#ifdef KVZ_DEBUG_PRINT_YUVIEW_CSV
|
||||
if(multi_ref_idx) DBG_YUVIEW_VALUE(state->frame->poc, DBG_YUVIEW_MRL, x, y, width, width, multi_ref_idx);
|
||||
#endif
|
||||
|
||||
if (cur_cu->type == CU_INTRA && (y % LCU_WIDTH) != 0 && !cur_cu->bdpcmMode && enable_mrl) {
|
||||
if (MAX_REF_LINE_IDX > 1) {
|
||||
|
|
|
@ -937,7 +937,7 @@ static void encoder_state_encode_leaf(encoder_state_t * const state)
|
|||
for (int i = 0; dep_lcu->below && i < ctrl->max_inter_ref_lcu.down; i++) {
|
||||
dep_lcu = dep_lcu->below;
|
||||
}
|
||||
for (int i = 0; dep_lcu->right && i < ctrl->max_inter_ref_lcu.right; i++) {
|
||||
for (int i = 0; dep_lcu->right && i < ctrl->max_inter_ref_lcu.right + 1; i++) {
|
||||
dep_lcu = dep_lcu->right;
|
||||
}
|
||||
kvz_threadqueue_job_dep_add(job[0], ref_state->tile->wf_recon_jobs[dep_lcu->id]);
|
||||
|
|
|
@ -131,7 +131,7 @@ typedef int16_t mv_t;
|
|||
//#define KVZ_DEBUG 1
|
||||
|
||||
//#define KVZ_DEBUG_PRINT_YUVIEW_CSV 1
|
||||
|
||||
//#define KVZ_DEBUG_PRINT_MV_INFO 1
|
||||
/* CONFIG VARIABLES */
|
||||
|
||||
//spec: references to variables defined in Rec. ITU-T H.265 (04/2013)
|
||||
|
|
|
@ -116,15 +116,15 @@ static INLINE bool fracmv_within_tile(const inter_search_info_t *info, int x, in
|
|||
// Check that the block does not reference pixels that are not final.
|
||||
|
||||
// Margin as luma pixels.
|
||||
int margin = 0;
|
||||
int margin = 2; // Added two-pixel margin since some nondeterministic behaviour happens otherwise
|
||||
if (is_frac_luma) {
|
||||
// Fractional motion estimation needs up to 4 pixels outside the
|
||||
// block.
|
||||
margin = 4;
|
||||
margin += 4;
|
||||
} else if (is_frac_chroma) {
|
||||
// Odd chroma interpolation needs up to 2 luma pixels outside the
|
||||
// block.
|
||||
margin = 2;
|
||||
margin += 2;
|
||||
}
|
||||
|
||||
if (ctrl->cfg.sao_type) {
|
||||
|
|
Loading…
Reference in a new issue