Unified · Split
| @@ -2526,9 +2526,8 @@ static void hls_decode_neighbour(HEVCLocalContext *lc, int x_ctb, int y_ctb, · 2525 unmodified lines | ||
| 2526 | 2526 | lc->ctb_up_left_flag = ((x_ctb > 0) && (y_ctb > 0) && (ctb_addr_in_slice-1 >= s->ps.sps->ctb_width) && (s->ps.pps->tile_id[ctb_addr_ts] == s->ps.pps->tile_id[s->ps.pps->ctb_addr_rs_to_ts[ctb_addr_rs-1 - s->ps.sps->ctb_width]])); |
| 2527 | 2527 | } |
| 2528 | 2528 | |
| 2529 | −static int hls_decode_entry(AVCodecContext *avctxt, void *arg) | |
| 2529 | +static int hls_decode_entry(HEVCContext *s) | |
| 2530 | 2530 | { |
| 2531 | − HEVCContext *s = avctxt->priv_data; | |
| 2532 | 2531 | HEVCLocalContext *const lc = s->HEVClc; |
| 2533 | 2532 | int ctb_size = 1 << s->ps.sps->log2_ctb_size; |
| 2534 | 2533 | int more_data = 1; |
| @@ -2588,13 +2587,6 @@ static int hls_decode_entry(AVCodecContext *avctxt, void *arg) · 53 unmodified lines | ||
| 2588 | 2587 | return ctb_addr_ts; |
| 2589 | 2588 | } |
| 2590 | 2589 | |
| 2591 | −static int hls_slice_data(HEVCContext *s) | |
| 2592 | −{ | |
| 2593 | − int ret = 0; | |
| 2594 | − | |
| 2595 | − s->avctx->execute(s->avctx, hls_decode_entry, NULL, &ret , 1, 0); | |
| 2596 | − return ret; | |
| 2597 | −} | |
| 2598 | 2590 | static int hls_decode_entry_wpp(AVCodecContext *avctxt, void *hevc_lclist, |
| 2599 | 2591 | int job, int self_id) |
| 2600 | 2592 | { |
| @@ -3133,7 +3125,7 @@ static int decode_nal_unit(HEVCContext *s, const H2645NAL *nal) · 532 unmodified lines | ||
| 3133 | 3125 | if (s->threads_number > 1 && s->sh.num_entry_point_offsets > 0) |
| 3134 | 3126 | ctb_addr_ts = hls_slice_data_wpp(s, nal); |
| 3135 | 3127 | else |
| 3136 | − ctb_addr_ts = hls_slice_data(s); | |
| 3128 | + ctb_addr_ts = hls_decode_entry(s); | |
| 3137 | 3129 | if (ctb_addr_ts >= (s->ps.sps->ctb_width * s->ps.sps->ctb_height)) { |
| 3138 | 3130 | ret = hevc_frame_end(s); |
| 3139 | 3131 | if (ret < 0) |