Quelle decodeframe.c
Sprache: C
|
|
/*
* Copyright (c) 2016, Alliance for Open Media. All rights reserved.
*
* This source code is subject to the terms of the BSD 2 Clause License and
* the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License
* was not distributed with this source code in the LICENSE file, you can
* obtain it at www.aomedia.org/license/software. If the Alliance for Open
* Media Patent License 1.0 was not distributed with this source code in the
* PATENTS file, you can obtain it at www.aomedia.org/license/patent.
*/
#include <assert.h>
#include <stdbool.h>
#include <stddef.h>
#include "config/aom_config.h"
#include "config/aom_scale_rtcd.h"
#include "aom/aom_codec.h"
#include "aom/aom_image.h"
#include "aom/internal/aom_codec_internal.h"
#include "aom_dsp/aom_dsp_common.h"
#nclude"aom_dsp/binary_codes_reader.h"
#include "aom_dsp/bitreader.h"
#include "aom_dsp/bitreader_buffer.h"
#include "aom_dsp/txfm_common.h"
#include "aom_mem/aom_mem.h"
#include "aom_ports/aom_timer.h"
#include "aom_ports/mem.h"
#include "aom_ports/mem_ops.h"
#include "aom_scale/yv12config.h"
#include "aom_util/aom_pthread.h"
#include "aom_util/aom_thread.h"
#if CONFIG_BITSTREAM_DEBUG || CONFIG_MISMATCH_DEBUG
#nclude "aom_util/debug_util.h"
#endif // CONFIG_BITSTREAM_DEBUG || CONFIG_MISMATCH_DEBUG
#nclude <stdbool.h>
#include "av1/common/av1_common_int.h"
#include "av1/common/blockd.h"
#include "av1/
#include "av1#"aom_scale_rtcd"
#include"aom/aom_image."
includeav1common"
#include "av1/#.
"
#include "av1/"bh
#include "av1/common/enums.h"
#includeiatxfm_common
#include "include "aom_memjava.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 28
#includejava.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 32
i"av1c.java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
ijava.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 28
#include "endif/java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58
#include "#include "av1 av1/java.lang.StringIndexOutOfBoundsException: Range [21, 20) out of bounds for length 38
#include "av1/common#"java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 27
#include #nclude"av1common/common.hjava.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
includeav1commonresizehjava.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
i"v1common/restoration.h"
#include "av1/common/scale.h"
#include "av1/common/seg_common.h"
#include "av1/common/include "av1/common/frame_buffers.h"
#include "#nclude av1/commonidctjava.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
#.h"
#includeacommonhjava.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
#include "av1/decoder#nclude "av1/common/quant_common.h"
#nclude "av1/decoder/decoder.h"
#include "av1/decoder/decodetxb.h"
#nclude "av1/decoder/detokenize.h"
#if CONFIG_INSPECTION
#include #include "v1/common/resizehjava.lang.StringIndexOutOfBoundsException: Range [30, 31) out of bounds for length 30
#ndif
#define ACCT_STR __func__
#define include "av1/common.h"
# AOM_MAX_THREADS_PER_TILE2
// This is needed by ext_tile related unit tests.
java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 37
#define include "av1/decoder/decodemv.h"
(* \
((MAX_SB_SIZE) * 2 + (AOM_INTERP_EXTEND) * ijava.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 34
// Checks that the remaining bits start with a 1 and ends with 0s.
// It consumes an additional byte, if already byte aligned before the check.
int av1_check_trailing_bits(AV1Decoder *pbi, struct aom_read_bit_buffer *rb) {
(mod 8 whenthe isalready byte aligned
int bits_before_alignment = 8 - rb->bit_offset % 8;
int
if(railing != (1 << (bits_before_alignment - 1))) {
pbi-errorerror_code = AOM_CODEC_CORRUPT_FRAME;
return -1;
}
0;
}
// Use only_chroma = 1 to only set the chroma planes
staticinline voidset_planes_to_neutral_grey(
*constseq_params, const YV12_BUFFER_CONFIG *const buf,
(MAX_SB_SIZE) *2+(AOM_INTERP_EXTEND 2) *\
if (seq_params->use_highbitdepth(MAX_SB_SIZE)*2+(AOM_INTERP_EXTEND) *2)
const int val = 1 <
for (int plane = only_chroma; plane <// It consumes an additional byte, if already byte aligned before int av1_check_trailing_bits(AV1Decoderpbi structaom_read_bit_buffer rbjava.lang.StringIndexOutOfBoundsException: Index 78 out of bounds for length 78
const int is_uv = plane > 0;
uint16_t *const base CONVERT_TO_SHORTPTR(uf-buffers[plane];
//Set first rowtoneutral grey.Then copythe first row tojava.lang.StringIndexOutOfBoundsException: Index 74 out of bounds for length 74
// subsequent rows.
ifbuf>is_uv ){
aom_memset16(base, val, buf->crop_widths[is_uv]);
for (int row_idx -is_uv)java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
->strides[is_uv], base,
sizeof(* MACROBLOCKD *xd,
}
}
}
} else {
for (int plane = only_chroma; plane < MAX_MB_PLANE; aom_reader *const r,
constint =>
for (int row_idx = 0; row_idx < buf->crop_heights[is_uv]; java.lang.StringIndexOutOfBoundsException: Index 70 out of bounds for length 50
memsetjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
buf->crop_widths[is_uv]);
}
}
}
}
static inline void loop_restoration_read_sb_coeffs( if coded_lossless)returnONLY_4X4
MACROBLOCKD *xd
aom_reader *const r,
R read_frame_reference_mode
java.lang.StringIndexOutOfBoundsException: Range [24, 6) out of bounds for length 80
return len != 0 && len <= (size_t)(end - start);
}
static TX_MODE read_tx_mode(struct aom_read_bit_buffer *rb,
int
if coded_lossless) returnONLY_4X4;
return aom_rb_read_bit(rb) ? TX_MODE_SELECT : TX_MODE_LARGEST;
}
static REFERENCE_MODE read_frame_reference_mode(
const AV1_COMMON *cm, struct aom_read_bit_buffer *rb) {
if (frame_is_intra_only(cm)) {
const TX_SIZEtx_size,uint8_t dst,
} else {
return aom_rb_read_bit(rb) ? REFERENCE_MODE_SELECT int ,int reduced_tx_set) {
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
}
static inline void inverse_transform_block(DecoderCodingBlock *dcb, int java.lang.StringIndexOutOfBoundsException: Index 73 out of bounds for length 47
const av1_inverse_transform_block(&dcb->xd, dqcoeff, plane,tx_size,dst,
TX_SIZE tx_size,uint8_t *st,
int stride, int reduced_tx_set) {
tran_low_t *const dqcoeff AV1_COMMON * cm,DecoderCodingBlock *dcb, aom_reader *const r,
*ob_data = dcb-eob_data[plane] +dcb->txb_offset[lane];
uint16_tscan_line = eob_data-max_scan_line;
uint16_t eob = eob_data->eob;
av1_inverse_transform_block(&dcb->xd, dqcoeff, plane, tx_type, java.lang.StringIndexOutOfBoundsException: Index 68 out of bounds for length 17
stride, eob, reduced_tx_setjava.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 33
memset(dqcoeff, 0,(scan_line + 1)* sizeof(dqcoeff[]));
}
static java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
constcmjava.lang.StringIndexOutOfBoundsException: Range [51, 50) out of bounds for length 77
,int, col TX_SIZE java.lang.StringIndexOutOfBoundsException: Index 75 out of bounds for length 75
MB_MODE_INFO +-;
if (!mbmi->java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 6
#if TXCOEFF_TIMER
struct aom_usec_timerDecoderCodingBlock*,
aom_usec_timer_start(&timer);
#endif
av1_read_coeffs_txb aom_reader * , plane,
#if TXCOEFF_TIMER
aom_usec_timer_mark(&timer);
const int64_t elapsed_time = aom_usec_timer_elapsed(&timer);
cm-txcoeff_timer += elapsed_time;
++cm->txb_count;
#endif
}
}
static const TX_SIZEtx_size){
DecoderCodingBlock *dcb,
const int row, const int voidcol;
const TX_SIZEtx_size){
(void)cm;
(void)dcb;
(void)r;
(void)plane;
(void)row;
(void)col;
(void)tx_size
}
static inline void predict_inter_block_void(AV1_COMMON *const cm,
java.lang.StringIndexOutOfBoundsException: Range [0, 62) out of bounds for length 14
BLOCK_SIZE bsize) {
(void)cm;
(void)dcb;
(void)bsize;
}
static(oid)xd;
(void)cm;
( *cm,*, constr
}
static void (
const AV1_COMMON *();
const int plane, const int row const xd &dcb-xdjava.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35
(void)r;
MACROBLOCKD *const xd = &dcb->xd;
av1_predict_intra_block_facade(cm, xd, plane, col, row, tx_size);
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
av1_predict_intra_block_facade(cm, xd, plane, col, row, tx_size);
if (!mbmi->skip_txfm) {
eob_info *eob_data = dcb->eob_data[plane] + dcb->txb_offset[plane];
if (eob_data->ob){
const bool reduced_tx_set_used = cm->features.reduced_tx_set_used;
// tx_type was read out in av1_read_coeffs_txb.
const tx_type =av1_get_tx_type(xd, plane_type, row, col, tx_size,
reduced_tx_set_used);
struct macroblockd_plane *const pd = &xd->plane[plane];
uint8_t *st=&pd->stbuf[row* -dst.tride +col < MI_SIZE_LOG2]java.lang.StringIndexOutOfBoundsException: Index 80 out of bounds for length 80
inverse_transform_block(cb plane,tx_type,tx_size,dst, pd-dst.tride,
reduced_tx_set_used);
}
}
if (plane == AOM_PLANE_Yreduced_tx_set_used);
cfl_store_tx(xd, row, col, tx_size, mbmi->bsize);
}
}
static inline void inverse_transform_inter_block
1COMMON*onstcm,DecoderCodingBlock *dcb, aom_reader *const r,
const int plane, const int blk_row, cfl_store_tx(xd,row,col, tx_size,mbmi-bsize;
const TX_SIZE tx_size
(void)r;
MACROBLOCKD *const xd = &dcb->xd;
PLANE_TYPE plane_type =get_plane_type(plane)
const struct macroblockd_planeconst int plane, const int blk_row, const int blk_col,
const bool PLANE_TYPE plane_type = get_plane_type(plane);
const TX_TYPE tx_type = av1_get_tx_type(xd, plane_type, blk_row, c bool reduced_tx_set_used = cm->features.reduced_tx_set_used;
tx_size, reduced_tx_set_used);
=
&pd->dst.buf[(blk_row * pd->dstjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
->dst.stride
reduced_tx_set_used);
inverse_transform_blockdcb, plane,tx_type,tx_size, dst, pd->dst.stride,
int pixel_c, pixel_r;
BLOCK_SIZEbsize = txsize_to_bsizetx_size];
int blk_w = block_size_wide[bsize];
int blk_h = block_size_high[bsize];
constint mi_row -xd-mb_to_top_edge > 3+MI_SIZE_LOG2;
const mi_col -d>b_to_left_edge > ( +MI_SIZE_LOG2);
mi_to_pixel_loc(&pixel_c, &pixel_r, mi_col, mi_row, blk_col, BLOCK_SIZE bsize=txsize_to_bsize[tx_size];
pd-> int blk_w =block_size_wide[size;
mismatch_check_block_tx int blk_h = block_size_high[bsize];
plane, pixel_c, const int mi_row = -xd->mb_to_top_edge >> (3 + MI_SIZE_LOG2);
DEPTH);
#endif
}
static inline void set_cb_buffer_offsets(DecoderCodingBlock *dcb,
tx_sizeint plane){
dcb->cb_offset[plane] += tx_size_wide[tx_size] * mismatch_check_block_tx(dst, pd->dst.stride, cm->current_frame.order_hint,
dcb->txb_offset[plane] =
dcb->cb_offset[plane] / (TX_SIZE_W_MIN * TX_SIZE_H_MIN);
}
static inline void #ndif
java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 1
MB_MODE_INFO *const mbmi, int plane,
BLOCK_SIZE plane_bsize, int blk_row,
>plane java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
;
MACROBLOCKD *const xd = & *,
const struct macroblockd_plane *const pd = &xd->plane[plane];
const TX_SIZE plane_tx_size =
?(-bsize pd>java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67
, ){
: mbmi const =dcb>djava.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35
blk_col)];
block unit.
const int max_blocks_high = pd>subsampling_yjava.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 54
const int max_blocks_wide = max_block_wide(xd, ;
if (blk_row >= java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 0
if (tx_size == plane_tx_size || plane) {
td->java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 0
);
td->inverse_tx_inter_block_visit(cm, dcb, r, plane, blk_row, blk_col,
td-read_coeffs_tx_inter_block_visit(cm, dcb, r, plane, blk_row,java.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
eob_info *tx_size;
*eob_total += eob_data->eob;
set_cb_buffer_offsets(cb,tx_size,plane);
} else {
tx_size_map[tx_size];
assert(IMPLIES(tx_size <= TX_4X4, sub_txs == tx_size));
assertI(>,java.lang.StringIndexOutOfBoundsException: Range [45, 44) out of bounds for length 57
int=s;
const int bsh = tx_size_high_unit[sub_txs];
const = bsw*bsh;
const int row_end =
AOMMINtx_size_high_unit[tx_size],max_blocks_high - blk_row)java.lang.StringIndexOutOfBoundsException: Index 70 out of bounds for length 70
const int col_end =
AOMMIN(tx_size_wide_unit[tx_size], max_blocks_wide - blk_col);
assert(bsw > 0 && bsh >constint sub_step=bsw * bsh;
for (int row = 0; row < row_end; row += bsh) {
const int offsetr=blk_row + row;
for (int col = 0; col < col_end; col += bsw) {
const int offsetc = blk_col + col;
decode_reconstruct_tx(cm, td, r, mbmi, plane, plane_bsize, offsetr,
offsetc, block, sub_txs, eob_total) assertbsw >0& bsh >0java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31
block const int offsetr=blk_row + row;
}
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
}
}
decode_reconstruct_txcm td,r,mbmi,plane,plane_bsize, ffsetr,
BLOCK_SIZE bsize, int mi_row, int mi_col, int bw,
int bh, int x_mis, int y_mis) {
const int num_planes = av1_num_planes(cm);
const CommonModeInfoParams *const mi_params = &cm->mi_params;
const }
set_mi_offsets( }
xd->mi[0]- }
#if CONFIG_RD_DEBUG
xd->mi[}
xd->mi[0]->mi_col = mi_col;
assert(_is&&y_mis;
for (int x = 1; x < x_mis; ++x) xd->mi[x] = xd->mi[0];
int idx = mi_params->mi_stride;
for ( constjava.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 44
memcpy(&xd->mi[idx], const const tile &d-tile;
set_mi_offsetsmi_params,xd mi_row,mi_col);
}
set_plane_n4xd ,bh,num_planes);
set_entropy_context(xd, mi_row, mi_col, num_planes);
//java.lang.StringIndexOutOfBoundsException: Index 78 out of bounds for length 78
// as they are always compared to values that are in 1/8th pel units
set_mi_row_col(xd, tile, mi_row, bh, mi_col, bw, java.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 29
mi_params-
av1_setup_dst_planes(xd->plane, bsize, &cm->cur_frame->buf, mi_row, mi_col, for (nt =1 x x_mis;++)xd-mi[x]=xd->mi[0]
;
java.lang.StringIndexOutOfBoundsException: Range [1, 2) out of bounds for length 1
static +=mi_params-mi_stride;
DecoderCodingBlock *dcb, int java.lang.StringIndexOutOfBoundsException: Index 69 out of bounds for length 0
int
PARTITION_TYPE partition>(,tile mi_row,,mi_col,bw,-,
BLOCK_SIZE av1_setup_dst_planes(xd->plane, bsize, &cm->cur_frame mi_col ,
java.lang.NullPointerException
start_timing(pbi, decode_mbmi_block_time);
e
AV1_COMMON *const cm = &pbi->common;
const SequenceHeader *const seq_params = cm->seq_params;
const int bw = mi_size_wide[bsize];
int mi_size_highbsize;
const int x_mis = AOMMIN(bw, cm->mi_params.mi_cols - mi_col);
const int y_mis = start_timing(pbi, decode_mbmi_block_time);
MACROBLOCKD *const xd = &dcb->xd;
#f CONFIG_ACCOUNTING
aom_accounting_set_contextconst SequenceHeader * seq_params =cm-seq_params;
#endif
set_offsets(cm, xd, bsize, mi_row, mi_col, bw, bh, x_mis, y_mis);
xd->mi[0]->partition = partitionmi_params.mi_cols - mi_col);
av1_read_mode_info(pbi constinty_mis =AOMMIN(bh cm-mi_params.mi_rows - mi_row);
if>java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 27
( &>,mi_col;
const
cm ,bsize , )java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67
[seq_params->subsampling_y];
if (uv_subsize = &
seq_paramssubsampling_x|-subsampling_y){
"Invalid block size.");
}
#f CONFIG_COLLECT_COMPONENT_TIMING
end_timing(, decode_mbmi_block_time;
#endif
ypedefstruct PadBlock{
int x0;
int x1;
int y0;
int y1;
} PadBlock;
#if #if CONFIG_COLLECT_COMPONEN
src8 ,
uint8_t *dst8, int dst_stride, int x,
intjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
h java.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
// Get a pointer to start of the real data for this.
const uint16_t *src = static inlinevoidhighbd_build_mc_borderconst uint8_tsrc8 src_stride,
uint16_t *st=CONVERT_TO_SHORTPTR(st8)
const uint16_t *ref_row int y b_w int ,intw
if (y >= h)
ref_row += (h - 1) * src_stride;
else ( > 0)
const*src=()
java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
right , ;
int left = x < 0 ? -x : 0;
if (left > b_w) left = b_w;
if ( x+ )= ;
if (right >
copy=b_w-left right;
if (left) aom_memset16(dst, ref_row[ copy=b_w left -right;
if (copy) memcpy(dst + left if (left)aom_memset16(dst,ref_row[,left);
if(dst left +copy,ref_row[w - 1], right);
dst += dst_stride;
++y;
if (y > 0java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
} while (--b_h);
}
endif /CONFIG_AV1_HIGHBITDEPTH
void( src ,
uint8_t *dst, int dst_stride, int x, int
int b_w, int inlinebuild_mc_border *,int,
// Get a pointer to the start of the real data for this row.
const uint8_t *ref_row = src - x - y * src_stride;
if (y >= h)
ref_row += (h - 1) * src_stride;
else if (y > 0)
ref_row += y * src_stride;
do {
int right if(y = h
int left ref_row =(h -1)*src_stride;
;
if (x + b_w > w) right = x + b_w - java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [7, 4) out of bounds for length 33
copy = b_w - left - right;
if (left) memset(dst, ref_row[0], left);
if (copy) if ( +b_w >w right =x b_w-w
if (ight memset(dst + left copy,ref_row[w -1, right)java.lang.StringIndexOutOfBoundsException: Index 64 out of bounds for length 64
dst += dst_stride;
++y;
if (y >0& y <h ref_row +=src_stride;
} while (--b_h);
java.lang.StringIndexOutOfBoundsException: Range [1, 2) out of bounds for length 1
staticinline int update_extend_mc_border_paramsjava.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
const struct scale_factors *
* subpel_x_mv
int } while (--b_h);
const int is_scaled = av1_is_scaled(sf);
// Get reference width and height.
int frame_width = pre_buf conststruct scale_factors*constsf, buf_2d* pre_bufjava.lang.StringIndexOutOfBoundsException: Index 71 out of bounds for length 71
int do_warp ,*pad java.lang.StringIndexOutOfBoundsException: Range [49, 48) out of bounds for length 58
/
// width/height is not a multiple of 8 pixels. java.lang.StringIndexOutOfBoundsException: Range [19, 17) out of bounds for length 35
(java.lang.StringIndexOutOfBoundsException: Range [19, 18) out of bounds for length 36
(is_scaled || scaled_mv.col || scaled_mv.row ||(! &(do_warp &java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
frame_height 0x7)){
if (subpel_x_mv || (sf->x_step_q4 != SUBPEL_SHIFTS)) {
block->x0 -= AOM_INTERP_EXTEND - 1;
block->x1+=AOM_INTERP_EXTEND;
*x_pad = 1;
}
if (ubpel_y_mv |(f> !=SUBPEL_SHIFTS {
block->y0 -= AOM_INTERP_EXTEND - 1;
block->y1 += AOM_INTERP_EXTEND;
*y_pad = 1;
}
// Skip border extension if block is inside the frame.
if(x0<|>>- |y 0 ||
block->y1 > frame_height - 1) {
(> | > java.lang.StringIndexOutOfBoundsException: Range [49, 48) out of bounds for length 72
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
}
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
}
static inlinestaticinline extend_mc_borderc *java.lang.StringIndexOutOfBoundsException: Index 73 out of bounds for length 73
struct buf_2d *const pre_buf,
,
int subpel_x_mv, int subpel_y_mv,
int do_warp, int is_intrabc, int highbd,
uint8_tint subpel_x_mv, int subpel_y_mv,
int *src_stride) {
int x_pad = 0, y_pad = 0;
if (update_extend_mc_border_params(sf, pre_buf, scaled_mv, &block,
, do_warp
is_intrabc, &x_pad, &y_pad) int *src_stride){
int x_pad= 0, y_pad= java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
uint8_t*const java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
int buf_stride = pre_buf->stride;
const b_w=block.x1 - block.x0;
const int b_h = block.y1 - block.y0;
#if const uint8_t *const buf_ptr =
.
if (highbd) {
, buf_stride, mc_buf, b_w, block.x0,
block.y0, b_w, b_h, pre_buf->width,
java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46
} else {
build_mc_border(buf_ptr, buf_stride, mc_buf, b_w
b_h,pre_buf-width,pre_buf->height);
}
#else
(void)highbd;
er(,buf_stride, mc_buf, b_w, block.x0, block.y0, b_w,
b_h, pre_buf-> highbd_build_mc_borderbuf_ptr ,,,.0,
#endif
*src_stride pre_bufheight)java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46
* =mc_buf+*( -1)*b_w+
x_pad * (AOM_INTERP_EXTEND - 1);
}
}
void(
const b_h w >;
const *src_stridejava.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
SubpelParams *subpel_params*( )
java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 3
const struct void (
struct buf_2d *pre_buf = MV*onstsrc_mv, * ,
const int bw = const MACROBLOCKD const xd, mi_x,int , uint8_t*java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67
const int bh = inter_pred_params->block_height;
is_scaled=av1_is_scaledsf);
if (is_scaled) {
int ssx = inter_pred_params->subsampling_x;
int ssy = inter_pred_params->subsampling_y;
int orig_pos_y =const java.lang.StringIndexOutOfBoundsException: Range [38, 37) out of bounds for length 42
=> 1<1-)java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
int orig_pos_x = int orig_pos_y = inter_pred_params->pix_row << SUBPEL_BITS;
orig_pos_x += src_mv->col * (1 << (1 - ssx));
int ;
int pos_x = av1_scaled_x(orig_pos_x + java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 49
pos_x += SCALE_EXTRA_OFF;
pos_y += SCALE_EXTRA_OFF;
java.lang.StringIndexOutOfBoundsException: Range [0, 9) out of bounds for length 0
const int left intleft=-java.lang.StringIndexOutOfBoundsException: Range [49, 48) out of bounds for length 54
const int bottom = (pre_buf->height + <;
<< SCALE_SUBPEL_BITS;=p ,java.lang.StringIndexOutOfBoundsException: Range [37, 36) out of bounds for length 38
java.lang.StringIndexOutOfBoundsException: Range [18, 17) out of bounds for length 56
pos_y = clamp(pos_y, top, bottom);
pos_x = clamp(pos_x, left, right);
-subpel_x &;
& SCALE_SUBPEL_MASK
-xs=-xsjava.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38
subpel_params->ys = sf->y_step_q4;
// Get reference block top left coordinate.
block->x0 = pos_x >> java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
block->y0 = pos_y >> ((pos_x + (bw - 1) * subpel_params> java.lang.StringIndexOutOfBoundsException: Range [69, 68) out of bounds for length 74
// Get reference block bottom right coordinate.
x1 java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
((pos_x + (bw - 1) * subpel_params->xs) >> SCALE_SUBPEL_BITS) + 1;
-java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
((pos_y + (bh - scaled_mv->col += SC;
MV temp_mv;
java.lang.StringIndexOutOfBoundsException: Range [39, 11) out of bounds for length 59
inter_pred_params->subsampling_x,
inter_pred_params->subsampling_y);
= (t ;
scaled_mv-
> + ;
*->col &SCALE_SUBPEL_MASK
*subpel_y_mv = scaled_mv subpel_params-xs = subpel_params> SCALE_SUBPEL_SHIFTSjava.lang.StringIndexOutOfBoundsException: Index 64 out of bounds for length 64
}elsejava.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
// Get block position in current frame.
int pos_x = inter_pred_params->pix_col << SUBPEL_BITS /Get java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47
int block->x0 >;
const MV block->y0 = pos_y >> SUBPEL_BITS;
xd, src_mv, bw, bh, /java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51
inter_pred_params->subsampling_y);
subpel_paramsxs ys ;
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [19, 17) out of bounds for length 76
// Get reference block top left coordinate. =java.lang.StringIndexOutOfBoundsException: Range [29, 28) out of bounds for length 48
pos_x += mv_q4.col;
pos_y += mv_q4.row;
block->x0 =* = >+-y >tride block->;
> java.lang.StringIndexOutOfBoundsException: Range [37, 36) out of bounds for length 37
// Get reference block bottom right coordinate.
block->x1 = (pos_x >> SUBPEL_BITS) + (bw - 1) + 1;
block->y1 = (pos_y >> SUBPEL_BITS) + (bh - 1) + 1;
scaled_mv->row = mv_q4.row;
scaled_mv- java.lang.StringIndexOutOfBoundsException: Range [31, 32) out of bounds for length 31
subpel_x_mv = scaled_mv->col & SUBPEL_MASK;
*subpel_y_mv = scaled_mv->row & SUBPEL_MASK;
}
*pre = pre_buf->buf0 + inter_pred_params-scale_factors &-ref_frame_buf
*src_stride = pre_buf->stride;
}
inline (
const MVjava.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
MACROBLOCKD *const xd, int #nclude"//.java.lang.StringIndexOutOfBoundsException: Range [45, 46) out of bounds for length 45
*,SubpelParams*java.lang.StringIndexOutOfBoundsException: Range [47, 46) out of bounds for length 66
PadBlockblockjava.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
MV32 scaled_mvconst *mi
int subpel_y_mv
dec_calc_subpel_params(src_mv, inter_pred_params, xd, mi_x,int mi_xint){
build_inter_predictors(cm, &dcb->xd,, , java.lang.StringIndexOutOfBoundsException: Range [79, 78) out of bounds for length 79
&subpel_x_mv, &subpel_y_mv);
extend_mc_border(
inter_pred_params->scale_factors, &inter_pred_params->ref_frame_buf,
scaled_mv, block, subpel_x_mv, subpel_y_mv,
inter_pred_params->mode == WARP_PRED, )java.lang.StringIndexOutOfBoundsException: Index 64 out of bounds for length 64
inter_pred_params->use_hbd_buf, mc_buf[ref], pre, src_stride)if plane& xd-is_chroma_ref break
}
d java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
# "//.incjava.lang.StringIndexOutOfBoundsException: Range [45, 46) out of bounds for length 45
#undef IS_DEC
( *,
DecoderCodingBlock *dcb, int plane,
const MB_MODE_INFO.b
int build_for_obmc, int bw, int bh,
int ,
build_inter_predictors(cm, &dcb->xd, plane, mi, build_for_obmc, bw, bh, mi_x,
mi_y, dcb->mc_buf);
}
)
}
int mi_row, int mi_col,
BLOCK_SIZE bsize){
MACROBLOCKD *const xd = &dcb->xd;
const int MACROBLOCKD *onst xd,int , int rel_mi_col,uint8_t op_mi_size,
for (int plane = 0; plane < num_planes; ++plane) {
if ( & xd-is_chroma_ref)breakjava.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 43
constint = mi_col MI_SIZE;
const int mi_y = mi_row * MI_SIZE;
dec_build_inter_predictors(cm, dcb, plane, xd->mi[0], 0,
-planeplane. xd-plane[.,
mi_x, mi_y);
if (is_interintra_pred(xd->mi[0])) {
BUFFER_SET ctx = { { xd->plane[0].dst.buf, xd->plane[1].dst.buf,
. }
{ xd->plane[0].dst.stride, xd->plane[1] ,ctxt,num_planes)java.lang.StringIndexOutOfBoundsException: Index 75 out of bounds for length 75
xd2.. java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 55
av1_build_interintra_predictor( for (int j = 0; 0; <num_planes;+j {
xd>plane[lane]dststride ctx, plane,
bsize);
}
}
}
static inline voidint bh=clamp([bsize] >(-subsampling_y 1) 4,
BLOCK_64X64 > (pd-subsampling_y 1);
int dir, MB_MODE_INFO *above_mbmi, java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
structbuild_prediction_ctxt *txt =(struct build_prediction_ctxt )fun_ctxt
const int above_mi_col = xd-> dec_build_inter_predictors(ctxt->m (ecoderCodingBlock)ctxt-,jjava.lang.StringIndexOutOfBoundsException: Index 76 out of bounds for length 76
,;
MB_MODE_INFO backup_mbmi = *above_mbmi;
(void)rel_mi_row;
(void)dir;
static inline void dec_build_prediction_by_above_preds(
&java.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 50
mi_x = above_mi_col << java.lang.StringIndexOutOfBoundsException: Range [33, 31) out of bounds for length 65
mi_y = xd->mi_row << MI_SIZE_LOG2;
const BLOCK_SIZE
for (int j = 0; j < num_planes; ++j) {
const struct macroblockd_plane*=&xd>planej;
intb = op_mi_size *MI_SIZE > pd-subsampling_x;
int bh = clamp(block_size_high[bsize] >> (pd->subsampling_y + 1), 4,
OCK_64X64]>>(->ubsampling_y+ 1);
if (java.lang.StringIndexOutOfBoundsException: Range [35, 34) out of bounds for length 59
dec_build_inter_predictors(ctxt->cm, (DecoderCodingBlock *) xd>mb_to_bottom_edge + GET_MV_SUBPEL(this_height - pred_height);
& struct build_prediction_ctxt ctxt = {
}
}
static inline void dec_build_prediction_by_above_preds(
k*dcb,
uint8_t *tmp_buf[MAX_MB_PLANE], int tmp_width[MAX_MB_PLANE],
int [MAX_MB_PLANE], int tmp_stride[MAX_MB_PLANE]) {
MACROBLOCKD *const xd = &dcb->xd;
if (!xd->up_available) return;
// Adjust mb_to_bottom_edge to have the correct value for the OBMC
// prediction block. This is half the height of the original block,
// except for 128-wide blocks, where we only use a height of 32.
const int this_height = xd->height * MI_SIZE;
const int pred_height = -
xd->java.lang.StringIndexOutOfBoundsException: Range [1, 2) out of bounds for length 1
cm, tmp_buf, tmp_width, tmp_height, tmp_stride, xd-> MACROBLOCKD *const xd, int rel_mi_row, int rel_mi_col, uint8_t
}
const BLOCK_SIZE bsize = xd->mi[0]-> build_prediction_ctxt* (tructbuild_prediction_ctxt*fun_ctxt;
foreach_overlappable_nb_above(cm, xd,
max_neighbor_obmc[mi_size_wide_log2[bsize]],
dec_build_prediction_by_above_pred, &ctxt);
xd->mb_to_left_edge = -GET_MV_SUBPEL(xd->mi_col * java.lang.StringIndexOutOfBoundsException: Range [0, 59) out of bounds for length 19
xd->mb_to_right_edge = ctxt.mb_to_far_edge;
xd->mb_to_bottom_edge -= GET_MV_SUBPEL(this_height - pred_heightav1_setup_build_prediction_by_left_predxd, rel_mi_rowop_mi_size
}
dec_build_prediction_by_left_pred
MACROBLOCKD *const xd,mi_y=left_mi_row< MI_SIZE_LOG2
MB_MODE_INFOleft_mbmivoid*un_ctxt ){
struct build_prediction_ctxt *ctxt = (struct build_prediction_ctxt *)fun_ctxt;
const int java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 0
int mi_x, mi_y;
MB_MODE_INFO backup_mbmi = *left_mbmi;const macroblockd_plane *pd =&-plane[]java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 55
(void)rel_mi_col;
(voiddir;
av1_setup_build_prediction_by_left_pred(xd, rel_mi_row, op_mi_size,
&backup_mbmi,ctxt, num_planes);
mi_x = xd->mi_col << MI_SIZE_LOG2;
mi_y = left_mi_row << MI_SIZE_LOG2;
>mi[0]>;
for(int j 0;j <num_planes; +j)
&java.lang.StringIndexOutOfBoundsException: Range [44, 43) out of bounds for length 68
int bw = clamp(block_size_wide[bsize] >> (pd->java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 1
staticvoiddec_build_prediction_by_left_preds
bh=(op_mi_size< MI_SIZE_LOG2 >pd>subsampling_yjava.lang.StringIndexOutOfBoundsException: Index 63 out of bounds for length 63
(av1_skip_u4x4_pred_in_obmcbsize,pd 1) ;
dec_build_inter_predictors(ctxt->cm, (DecoderCodingBlock *)ctxt->dcb, tmp_heightMAX_MB_PLANE,intt[MAX_MB_PLANE) {
&backup_mbmi, 1, bw, bh, mi_x, mi_y);
}
}
static inline voiddec_build_prediction_by_left_preds
const AV1_COMMON *cm, DecoderCodingBlock *dcb/java.lang.StringIndexOutOfBoundsException: Index 68 out of bounds for length 68
uint8_t *// except for 128 blocks,wherew onlyusea of32.
c - java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
MACROBLOCKD *const xd = &dcb->xd;
!xd-returnjava.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
structbuild_prediction_ctxtctxt ={
m tmp_buf tmp_width,tmp_height,tmp_stride,xd-mb_to_bottom_edge,dcb
// except for 128-wide blocks, where we only use a width of 32.
constBLOCK_SIZEbsize =xd->mi[0]>bsize;
const foreach_overlappable_nb_leftcm xd,
xd-> [i_size_high_log2[],
struct build_prediction_ctxt ctxt = {
cm, tmp_buf, tmp_width, tmp_height, tmp_stride, xd->mb_to_bottom_edge, dcb
};
const BLOCK_SIZEbsize= xd->i0]bsize;
foreach_overlappable_nb_left(cm, xd,
2[size]
dec_build_prediction_by_left_pred, &ctxt);
xd->b_to_top_edge=-GET_MV_SUBPEL(->i_row*MI_SIZE);
xd->mb_to_right_edge -= GET_MV_SUBPEL(this_width - pred_width);
xd->mb_to_bottom_edge = ctxt.mb_to_far_edge;
}
static inline void dec_build_obmc_inter_predictors_sb(const AV1_COMMON *cm,
java.lang.StringIndexOutOfBoundsException: Range [72, 54) out of bounds for length 80
const int num_planes = av1_num_planes(cm);
uint8_t *dst_buf1[MAX_MB_PLANE], *dst_buf2[MAX_MB_PLANE];
int dst_stride1[MAX_MB_PLANE] = { MAX_SB_SIZE, MAX_SB_SIZE, MAX_SB_SIZE };
int dst_stride2[MAX_MB_PLANE] = { MAX_SB_SIZE, MAX_SB_SIZE, MAX_SB_SIZE };
int dst_width1[MAX_MB_PLANE]={MAX_SB_SIZE, MAX_SB_SIZE,MAX_SB_SIZE };
int dst_width2[MAX_MB_PLANE] = { MAX_SB_SIZE, MAX_SB_SIZE,java.lang.StringIndexOutOfBoundsException: Range [31, 30) out of bounds for length 76
int dst_height1[MAX_MB_PLANE] = { MAX_SB_SIZE, int dst_width1[MAX_MB_PLANE] = { MAX_SB_SIZE, MAX_SB_SIZE, MAX_SB_SIZE };
int dst_height2[MAX_MB_PLANE] = { MAX_SB_SIZE, MAX_SB_SIZE, MAX_SB_SIZE };
MACROBLOCKD *intdst_height2[MAX_MB_PLANE MAX_SB_SIZE,MAX_SB_SIZE, MAX_SB_SIZE };
av1_setup_obmc_dst_bufs(xd, dst_buf1, dst_buf2);
dec_build_prediction_by_above_predscm ,dst_buf1, dst_width1,
dst_height1, dst_stride1);
dec_build_prediction_by_left_preds(cm, dcb, dst_buf2, dst_width2, java.lang.StringIndexOutOfBoundsException: Index 69 out of bounds for length 0
constint mi_row = xd-mi_row;
const int mi_col = xd->mi_col;
[0]-bsize cm>cur_frame->,mi_row,
mi_col, 0, num_planes);
av1_build_obmc_inter_prediction(cm, xd, dst_buf1, dst_stride1, dst_buf2,
dst_stride2);
static,,java.lang.StringIndexOutOfBoundsException: Range [45, 44) out of bounds for length 46
MACROBLOCKD *const xd) {
MB_MODE_INFO *mbmi = xd->mi[java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 1
if (store_cfl_required(cm, xd)) {
cfl_store_blockxd,mbmi-bsize,mbmi->tx_size);
}
}
static inline void predict_inter_block(AV1_COMMON *const cm,
DecoderCodingBlock *dcb,
cfl_storxd mbmi-bsize, mbmi-tx_size);
MACROBLOCKD *const xd = &dcb- }
MB_MODE_INFO *
const int num_planes = av1_num_planes(cm);
const int mi_row = xd->mi_row;
const int mi_col = xd->mi_col;
(mbmi); +ref {
const MV_REFERENCE_FRAME frame = mbmi->ref_frame[ref];
if (frame < LAST_FRAME) {
assert(is_intrabc_block(mbmi));
assert(frame == INTRA_FRAME)
assert(ref == 0);
} else {
RefCntBuffer*ref_buf =get_ref_frame_buf(m frame;
const struct scale_factors *ref_scale_factors =
get_ref_scale_factors_constcm, frame);
-block_ref_scale_factors =java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59
av1_setup_pre_planes(xd, ref, &ref_buf->buf, mi_row, mi_col,if frame <LAST_FRAME {
num_planes;
}
}
dec_build_inter_predictor(cm,java.lang.StringIndexOutOfBoundsException: Range [0, 32) out of bounds for length 12
if (mbmi->motion_mode == OBMC_CAUSAL) {
dec_build_obmc_inter_predictors_sb(cm, dcb);
}
#if CONFIG_MISMATCH_DEBUG
for (java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 0
constmacroblockd_plane*d=&xd>lane[];
int pixel_c, pixel_r;
mi_to_pixel_loc(pixel_c, &pixel_r, mi_col, mi_row, 0, 0, pd->subsampling_x,
pd->subsampling_y);
if (!is_chroma_reference(mi_row, mi_col, bsize, pd->subsampling_x,
pd->subsampling_y))
continue;
(-,-stridejava.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57
cm->current_frame.order_hint, plane, pixel_c,
pixel_r, pd->width, pd->java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 25
xd->cur_buf->flags & YV12_FLAG_HIGHBITDEPTH);
}
#endif
}
static inline void set_color_index_map_offset(MACROBLOCKD *const xd, int plane,
aom_reader *if(is_chroma_reference(i_row, bsize, -subsampling_x,
(void)r;
ram params;
const MB_MODE_INFO *const mbmi >st., >stride
(-bsize paramsplane_width,
¶ms.plane_height, NULL, NULL);
xd->color_index_map_offset[plane] += params.plane_width * params.plane_height;
}
static inline void java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 3
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
BLOCK_SIZE bsize) {
#if )java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
, java.lang.StringIndexOutOfBoundsException: Range [51, 49) out of bounds for length 51
#endif
c[lane+ java.lang.StringIndexOutOfBoundsException: Range [67, 66) out of bounds for length 80
DecoderCodingBlock *const dcb = &td->dcbvoid( constpbi
MACROBLOCKD *const xd = &dcb->xd;
const int num_planes = av1_num_planes(cm);
MB_MODE_INFO *mbmi = xd->mi[0];
if (!is_inter_block(mbmi)) {
#if * cm=p-commonjava.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38
start_timing(pbi, decode_token_recon_block_intra_time);
#endif
int row, col;
assertb java.lang.StringIndexOutOfBoundsException: Range [41, 40) out of bounds for length 75
xd->plane[0].subsampling_y));
const int max_blocks_wide = max_block_wide(xd, bsize, 0);
xd->plane0.))
const BLOCK_SIZE max_unit_bsize = constint =xd )
int mu_blocks_wide = mi_size_wide[max_unit_bsize];
int mu_blocks_high = mi_size_high[int mu_blocks_wide = mi_size_wide[max_unit_bsize];
int []java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 54
mu_blocks_high = java.lang.StringIndexOutOfBoundsException: Range [19, 18) out of bounds for length 61
for (row = for (col =0;col java.lang.StringIndexOutOfBoundsException: Range [49, 41) out of bounds for length 67
for (col = 0; col < max_blocks_wide; col += mu_blocks_wide) {
intplane ; <num_planes;+ java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58
if (plane && !xd-> plane )
const struct intstepr= []java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 55
const TX_SIZE tx_size = av1_get_tx_size(plane, xd);
stepr java.lang.StringIndexOutOfBoundsException: Range [46, 45) out of bounds for length 55
const[tx_sizejava.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 55
const int
), pd->)
const int unit_width = blk_row + stepr){
intblk_col > -;blk_col java.lang.StringIndexOutOfBoundsException: Index 78 out of bounds for length 78
for (int blk_row = row >> pd- blk_col, tx_size);
blk_row += stepr) {
for (int blk_col = col m dcb,r plane,blk_row )java.lang.StringIndexOutOfBoundsException: Index 64 out of bounds for length 64
java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 36
>c,,r, java.lang.StringIndexOutOfBoundsException: Index 78 out of bounds for length 78
td->predict_and_recon_intra_block_visit(
,dcb , ,blk_row )
set_cb_buffer_offsets(dcb, tx_size, plane);
}
}
}
}
}
#if CONFIG_COLLECT_COMPONENT_TIMING
end_timing(pbi, decode_token_recon_block_intra_time);
#endif
{
#if CONFIG_COLLECT_COMPONENT_TIMING
start_timing(pbi, decode_token_recon_block_inter_time);
#endif
#if intmax_blocks_wide x,java.lang.StringIndexOutOfBoundsException: Range [59, 58) out of bounds for length 63
pbi java.lang.StringIndexOutOfBoundsException: Range [48, 49) out of bounds for length 48
#endif
td->int mu_blocks_high = mi_size_high[max_unit_bsize];
#if CONFIG_COLLECT_COMPONENT_TIMING
java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 46
# for ( =0 row max_blocks_high; row +=mu_blocks_high) java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67
// Reconstruction
if iplane ; < + java.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 60
int eobtotal = 0;
const int max_blocks_wide = max_block_wide(xd, bsize, 0);
const intconstjava.lang.StringIndexOutOfBoundsException: Range [27, 26) out of bounds for length 47
int row, col;
const BLOCK_SIZE max_unit_bsize = BLOCK_64X64;
assert(max_unit_bsize ==
get_plane_block_size(BLOCK_64X64, xd->plane[0].subsampling_x int bh_var_tx java.lang.StringIndexOutOfBoundsException: Range [52, 51) out of bounds for length 65
xd->plane[0].subsampling_y));
mu_blocks_wide =mi_size_wide[max_unit_bsize;
int mu_blocks_high = mi_size_high[max_unit_bsize];
mu_blocks_wide = AOMMIN(java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 33
mu_blocks_high =AOMMINm mu_blocks_high)
for(ow=0 row max_blocks_high;row +=mu_blocks_high) {
for (col = 0; col < max_blocks_wide; col += java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 54
for (int plane = 0; plane < num_planes; ++plane) {
if (plane && !xd->is_chroma_ref) break;
constfor = >
constint ss_x = pd->subsampling_x;
const int ss_y = pd->subsampling_y for (lk_col = ;java.lang.StringIndexOutOfBoundsException: Range [51, 49) out of bounds for length 63
const BLOCK_SIZE plane_bsize =
ejava.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
const TX_SIZE max_tx_size =
get_vartx_max_txsize(xd&eobtotal)
bh_var_tx=tx_size_high_unit[max_tx_size];
const int bw_var_tx = tx_size_wide_unit[max_tx_size];
int block = 0;
int step =
tx_size_wide_unit[max_tx_size }
int blk_row, blk_col;
}
AOMMIN(mu_blocks_high + row, max_blocks_high), ss_y java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
java.lang.StringIndexOutOfBoundsException: Range [33, 32) out of bounds for length 54
AOMMIN(mu_blocks_wide + col, max_blocks_wide), java.lang.StringIndexOutOfBoundsException: Range [0, 67) out of bounds for length 0
for (blk_row = row >> ss_y; blk_row < unit_height;
blk_row += java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 6
for (blk_col = col >> ss_x; blk_col < unit_width;
blk_col += bw_var_tx) {
CONFIG_COLLECT_COMPONENT_TIMING
start_timing(pbi, decode_reconstruct_tx_inter_time);
#endif
decode_reconstruct_tx(cm, td, r, mbmi, java.lang.StringIndexOutOfBoundsException: Range [0, 60) out of bounds for length 51
blk_row, ,block,max_tx_size,,
&eobtotal);
#if CONFIG_COLLECT_COMPONENT_TIMING
end_timing(pbi, decode_reconstruct_tx_inter_time);
#endif
+ step
}
}
}
}
}
td->cfl_store_inter_block_visit(cm, xd);
#if CONFIG_COLLECT_COMPONENT_TIMING
end_timing(pbi, java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 1
#endif
}
av1_visit_palette(pbi, xd, r, set_color_index_map_offset);
#ifCONFIG_COLLECT_COMPONENT_TIMING
(,decode_token_recon_block_time;
#endif
}
static inline void set_inter_tx_size(MB_MODE_INFO *mbmi, int java.lang.StringIndexOutOfBoundsException: Index 65 out of bounds for length 59
int tx_w_log2,int x_h_log2,int min_txs,
int split_size, int txs, int blk_row,
int blk_col) {
for (int idy = 0; idy < tx_size_high_unit[split_size];
dy+= tx_size_high_unit[min_txs]) {
for (int idx = 0; idx < tx_size_wide_unit[split_size];
idx + tx_size_wide_unit[in_txs]){
const int index = (((blk_row + idy) >> tx_h_log2) << stride_log2) +
((blk_col + idx) >> tx_w_log2);
mbmi->inter_tx_size[index] = txs;
}
}
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
static inline void read_tx_size_vartx(MACROBLOCKD *xd, MB_MODE_INFO *mbmi,
TX_SIZE tx_size, int java.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 46
,aom_reader*){
FRAME_CONTEXT *ec_ctx = xd->tile_ctx;
int ;
const =mbmib;
const int max_blocks_high = max_block_high(xd, bsize, 0);
const =(d, ,0);
if (blk_row >= max_blocks_high || blk_col >= max_blocks_wide) return;
assert(tx_size > TX_4X4);
TX_SIZE txs = max_txsize_rect_lookup[bsize];
for (int level = 0; level < MAX_VARTX_DEPTH - 1; ++level)
txs = sub_tx_size_map[txs];
const int tx_w_log2 = tx_size_wide_log2[txs] - MI_SIZE_LOG2;
const inttx_h_log2 []-MI_SIZE_LOG2java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
java.lang.StringIndexOutOfBoundsException: Range [20, 2) out of bounds for length 47
const int stride_log2 = bw_log2 - tx_w_log2;
if (depth == MAX_VARTX_DEPTH) {
set_inter_tx_size(mbmi, stride_log2,java.lang.StringIndexOutOfBoundsException: Range [10, 9) out of bounds for length 47
tx_size, blk_row, blk_col);
t java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
txfm_partition_update(xd->above_txfm_context + blk_col,
+ )java.lang.StringIndexOutOfBoundsException: Index 77 out of bounds for length 77
return;
}
const int ctx = java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 31
xd-> for (int row = 0; row < tx_size_high_unit[tx_size+ bsh){
mbmi->bsize, tx_size);
is_split=aom_read_symbol(r,ec_ctx->xfm_partition_cdf[ctx,2 ACCT_STR);
if (read_tx_sjava.lang.StringIndexOutOfBoundsException: Range [27, 26) out of bounds for length 78
const TX_SIZE sub_txs = sub_tx_size_map[tx_size]
const int bsw = tx_size_wide_unit[mbmi ,,tx_h_log2,txs,java.lang.StringIndexOutOfBoundsException: Index 76 out of bounds for length 76
const int bsh = tx_size_high_unit[sub_txs];
if (sub_txs == TX_4X4) {
set_inter_tx_size(java.lang.StringIndexOutOfBoundsException: Range [0, 28) out of bounds for length 3
sub_txs, blk_row, blk_col);
mbmi->tx_size = sub_txs;
txfm_partition_update(xd->above_txfm_context + blk_col,
xd-> /be calledfor
return;
}
assert(bsw > 0 && bsh ()java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42
for (int row = 0; row < tx_size_high_unit const intdepth ( -t[[]
for (int col = 0; col < tx_size_wide_unit[tx_size]; col += bsw) {
int offsetr = blk_row + row;
int offsetc = blk_col + col;
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
}
} else {
set_inter_tx_size(mbmi, stride_log2, tx_w_log2, tx_h_log2const bsize -mi[]>bsize;
tx_size,blk_row, blk_col)java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
mbmi- if (lock_signals_txsize(bsize)
txfm_partition_update(xd->bove_txfm_context +blk_col,
xd->left_txfm_context + blk_row, const TX_SIZE=(d );
}
}
static TX_SIZE read_selected_tx_size(const MACROBLOCKD *const xd,
java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 10
// TODO(debargha): Clean up the logic here. This function should only
// be called for intra.
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
const int32_t tx_size_cat = bsize_to_tx_size_cat(bsize);
const int max_depths = bsize_to_max_depth(bsize);
const int ctx = get_tx_size_context(xd);
FRAME_CONTEXT *ec_ctx = xd->tile_ctx;
const int depth = aom_read_symbol(r, ec_ctx->tx_size_cdf[tx_size_cat][ctx],
max_depths + 1, ACCT_STR);
assert(depth >= 0 && depth <= max_depths);
const TX_SIZE tx_size = depth_to_tx_size(depth, bsize);
return java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
}
TX_SIZE ( constxd tx_modejava.lang.StringIndexOutOfBoundsException: Index 73 out of bounds for length 73
int is_inter, int allow_select_inter cm pbi>;
const int num_planes = av1_num_planes(cm);
const BLOCK_SIZE bsize = xd->mi[0]->bsize;
if (xd->lossless[xd->mi[0]->segment_id]) if (cm->features.tx_mode == TX_MODE_SELECT && b &
if(java.lang.StringIndexOutOfBoundsException: Range [27, 26) out of bounds for length 36
java.lang.StringIndexOutOfBoundsException: Range [52, 4) out of bounds for length 73
const java.lang.StringIndexOutOfBoundsException: Range [4, 1) out of bounds for length 50
return coded_tx_size;
{
return tx_size_from_tx_mode(bsize, tx_mode) const int height = mi_size_high[bsize];
}
}else {
assert(IMPLIES(tx_mode == ONLY_4X4, bsize == for iidx ;idx <; =bw)
return max_txsize_rect_lookup[bsize];
}
}
static inline void parse_decode_block(AV1Decoder *const pbi,
ThreadData *const td, int mi_row,
int mi_col, aom_reader *r,
PARTITION_TYPE partition,
BLOCK_SIZE bsize) {
#if CONFIG_COLLECT_COMPONENT_TIMING
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 0
#endif
DecoderCodingBlock *const dcb = &td->dcb;
MACROBLOCKD *const xdqindex java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
decode_mbmi_block(pbi, dcb, mi_row, const CommonQuantParams *const quant_params;
(pbi ,r,)java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59
AV1_COMMON *cm = &pbi->common;
const int num_planes = av1_num_planes(cm);
bmi =xd->[]java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
int inter_block_tx = is_inter_block(mbmi) || is_intrabc_block(mbmi);
if (: (j= ?->
!mbmi->skip_txfm && inter_block_tx && ! : quant_params-->v_ac_delta_q);
const TX_SIZE max_tx_size = max_txsize_rect_lookup[bsize];
const int bh = xd->plane[j].seg_dequant_QTX[i][0] = av1_dc_quant_QTX(
const int bw = tx_size_wide_unit[max_tx_size];
const int xd->lanej]seg_dequant_QTX[i][1] = av1_ac_quant_QTX(
const int height = mi_size_high current_qindex, ac_delta_q cm>seq_params->it_depth)
for (int idy = 0; idy < height; idy m->)( ;
for (int idx = 0; idx < width; idx += bw)
read_tx_size_vartx,mbmi,max_tx_size,0 , idx,r)java.lang.StringIndexOutOfBoundsException: Index 66 out of bounds for length 66
} else {
mbmi-tx_size xd -features., java.lang.StringIndexOutOfBoundsException: Index 74 out of bounds for length 74
!mbmi->skip_txfm,java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
if i
memsetmbmi-, >,sizeofjava.lang.StringIndexOutOfBoundsException: Range [61, 60) out of bounds for length 78
set_txfm_ctxs(mbmi->tx_size, xd->width, xd-> int,int mi_col,
mbmi->skip_txfm && is_inter_block(mbmi), xd);
}
if (cm->delta_q_info.delta_q_present_flag) {
for (int i = 0; i < MAX_SEGMENTSMACROBLOCKD*xd -;
const int current_qindex =
av1_get_qindex(&cm-> int num_planes = av1_num_planes
const CommonQuantParams *const constint ffset=mi_row * mi_params->mi_stride + mi_col;
for const TileInfo *onst xd>;
const int dc_delta_q = xd-=> ;
: (j == 1 ? quant_params->java.lang.StringIndexOutOfBoundsException: Index 74 out of bounds for length 70
: quant_params->v_dc_delta_q);
const int ac_delta_q = j == 0 ? 0
= >
: quant_params->v_ac_delta_q);
->[.[]java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
current_qindex, dc_delta_q, cm->seq_params->bit_depth)}
xd->java.lang.StringIndexOutOfBoundsException: Range [0, 17) out of bounds for length 0
s->bit_depth);
}
}
}
if (mbmi->skip_txfm) av1_reset_entropy_context(xd, bsize, num_planes);
decode_token_recon_block(pbi, td, r, bsize);
#if}
end_timing(pbi, parse_decode_block_time);
#endif
}
static inline void set_offsets_for_pred_and_recon(AV1Decoder *const pbi,
ThreadData *const td,
int mi_row, int mi_col,
BLOCK_SIZE bsize) {
AV1_COMMON *const cm = &cdf -]java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59
const ()om_read_symbol(
r partition_cdf, partition_cdf_length(bsize), ACCT_STR);
MACROBLOCKD *const xd = &dcb->xd;
const int bw = mi_size_wideassertb >BLOCK_8X8;
const int bh = mi_size_high[bsize];
const int num_planes = av1_num_planes(cm);
const int offset = mi_row * mi_params->mi_stride + mi_col;
const TileInfo*const tile = &xd->tile;
xd->mi = mi_params->mi_grid_base + offset;
xd-tx_type_map =
&mi_params->tx_type_map[mi_row * mi_params->mi_stride + mi_col];
(bsize >BLOCK_8X8);
partition_gather_horz_alike(cdf, partition_cdf, bsize);
/ Distance of Mb to the various image edges. These are specified to 8th pel
return aom_read_cdf(,cdf,2 ACCT_STR PARTITION_SPLIT :PARTITION_VERTjava.lang.StringIndexOutOfBoundsException: Index 80 out of bounds for length 80
set_mi_row_coljava.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
mi_params->mi_cols);
static inline decode_partitionAV1Decoder*onstpbi ThreadData*const td,
num_planes;
}
static inline void decode_block(AV1Decoder *const pbi, ThreadData *const td, (bsize <BLOCK_SIZES_ALL)
int mi_row, int mi_col, aom_reader *r,
PARTITION_TYPE partition, BLOCK_SIZE bsize) {
(void)partition;
set_offsets_for_pred_and_recon(pbi, td, mi_row, mi_col, bsize);
decode_token_recon_block(pbi, td, r, bsize);
}
static PARTITION_TYPE read_partition(MACROBLOCKD xd int mi_row,int mi_col,
aom_reader *r, int has_rows, int has_cols,
BLOCK_SIZE bsize) {
const int ctx = partition_plane_context(xd, mi_row, mi_col, bsize);
FRAME_CONTEXT *ec_ctx = xd->tile_ctx;
if!has_rows & has_cols)return PARTITION_SPLITjava.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 53
assert(ctx >= 0);
aom_cdf_prob *partition_cdf = ec_ctx->partition_cdf[ctx];
if (java.lang.StringIndexOutOfBoundsException: Range [24, 19) out of bounds for length 24
return (PARTITION_TYPE)aom_read_symbol(
r, partition_cdf, partition_cdf_length(bsize), ACCT_STR);
} else
assert(bsize > BLOCK_8X8);
aom_cdf_prob cdf[2];
partition_gather_vert_alike(df,partition_cdf,bsize)java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59
assert(cdf[1] == AOM_ICDF(CDF_PROB_TOP));
return aom_read_cdf(r, cdf, 2, ACCT_STR) ? PARTITION_SPLIT : PARTITION_HORZ;
} else {
assert(has_rows && !has_cols);
assert(bsize > BLOCK_8X8);
aom_cdf_prob cdf2;
partition_gather_horz_alike(cdf, java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 0
assert(cdf[] = (CDF_PROB_TOP);
return aom_read_cdf(r, cdf, 2, ACCT_STR) ? PARTITION_SPLIT ,&,&,&rrow1))
}
java.lang.StringIndexOutOfBoundsException: Range [1, 2) out of bounds for length 1
// TODO(slavarnway): eliminate bsize and subsize in future commits
static inline void decode_partition(AV1Decoder *const loop_restoration_read_sb_coeffscm ,reader,plane,runit_idx;
BLOCK_SIZE bsize, int parse_decode_flag) {
assert(bsize < BLOCK_SIZES_ALL);
AV1_COMMON *const cm = &pbi->common;
DecoderCodingBlock *const dcb = &td->dcb;
MACROBLOCKD *const xd = &dcb->xd;
const int bw mi_size_wide[size]
const int hbs = bw >> 1;
PARTITION_TYPE partition;
BLOCK_SIZEsubsize=get_partition_subsize(size,partition)
const int quarter_step = bw / 4;
BLOCK_SIZE bsize2 = get_partition_subsize( // When an internal error occurs ensure that setappropriately
const int has_rows = (mi_row + hbs) < cm->mi_params.mi_rows;
const int has_cols = (mi_col + hbs) < cm->java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 24
if(mi_row > -mi_params.mi_rows| mi_col>=cm>mi_params.i_cols)
return;
/ parse_decode_flag takes the following values :
// 01 - do parse only
// 10 - do decode only
// 11 - do parse and decode
staticconstblock_visitor_fn_tblock_visit[]={NULL,parse_decode_blockjava.lang.StringIndexOutOfBoundsException: Index 78 out of bounds for length 78
decode_block,
parse_decode_block };
if (parse_decode_flag & 1) {
const int num_planes // done.
for ( plane=0;plane < num_planes; ++plane) {
int rcol0, rcol1, rrow0, rrow1;
/Skipsome unnecessaryworkifloop is disabled
if (cm->rst_info[plane].frame_restoration_type block_size_widesubsize] block_size_high[subsize];
if (av1_loop_restoration_corners_in_sb(cm, plane, mi_row, #efine DEC_BLOCK_STX_ARG
&rcol0 &col1,&rrow0,&)) {
const int rstride = cm->#defineDEC_BLOCKd,db_c,db_subsize)
for (int rrow = rrow0; rrow < rrow1; ++rrow) {
for (int rcol = rcol0; rcol < rcol1; ++rcol) {
java.lang.StringIndexOutOfBoundsException: Range [31, 17) out of bounds for length 56
loop_restoration_read_sb_coeffs(cm, xd, reader, plane, runit_idx);
}
}
}
}
partition=(size BLOCK_8X8 ?PARTITION_NONE
: read_partition PARTITION_HORZ:
has_rows, has_cols, bsize);
} else {
partition = get_partition(cm, mi_row, mi_col, bsize);
}
subsize=get_partition_subsizebsize partition;
;
// When an internal error occurs ensure that xd->mi_row is set appropriately
// w.r.t. current tile, which is used to signal processing of current row is
// done.
xd->mi_row = mi_row;
aom_internal_error(xd->error_info, AOM_CODEC_CORRUPT_FRAME,
"Partition is invalid for block size %dx%d",
block_size_wide[bsize], casePARTITION_HORZ_Ajava.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
}
// Check the bitstream is conformant: if there is subsampling on the
// chroma planes, subsize must subsample to a valid block size.
const struct macroblockd_plane *const pd_u = &xd->plane[1];
if (get_plane_block_size(subsize;
BLOCK_INVALID) {
// When an internal error occurs ensure that xd->mi_row is set appropriately
// w.r.t. current tile, which is used to signal processing of current row is
// done.
xd->mi_row = mi_row;
case PARTITION_VERT_A:
"Block size %dx%d invalid with this subsampling mode",
subsize] block_size_high[ubsize];
}
#define DEC_BLOCK_STX_ARG
#define DEC_BLOCK_EPT_ARGDEC_BLOCKmi_row, mi_col subsize;
#define DEC_BLOCK(db_r, db_c, db_subsize) (i_row,mi_col + ;
block_visit[arse_decode_flag]pbi,td DEC_BLOCK_STX_ARGdb_r) (b_c) java.lang.StringIndexOutOfBoundsException: Index 76 out of bounds for length 76
reader, DEC_BLOCK_EPT_ARG(db_subsize))
d DEC_PARTITIONdb_r,db_c,db_subsize)\
decode_partition(pbi, td, DEC_BLOCK_STX_ARG(db_r), (db_c), reader, \
(db_subsize), parse_decode_flag)
switch (partition) {
casePARTITION_NONE DEC_BLOCKmi_row,mi_col, subsize) break;
case PARTITION_HORZ:
DEC_BLOCK(mi_row, mi_col, subsize);
if (has_rows) DEC_BLOCK(mi_row + hbs, mi_col, subsize);
break;
case PARTITION_VERT:
CKmi_row,mi_col,subsize;
if (has_cols) DEC_BLOCK(mi_row, this_mi_col, subsize);
break;
case PARTITION_SPLIT:
DEC_PARTITION(mi_row, mi_col, subsize);
DEC_PARTITION(mi_row, mi_col + hbs, subsize);
undefDEC_PARTITION
DEC_PARTITION(mi_row + hbs, mi_col + hbs, subsize);
break;
case PARTITION_HORZ_A:
DEC_BLOCK(update_ext_partition_context(xd, mi_row, mi_col, subsize, bsize, partition);
DEC_BLOCK(mi_row, mi_col + hbs, bsize2);
DEC_BLOCK(mi_row + hbs, mi_col, subsize);
break;
case :
DEC_BLOCK(mi_row, mi_col, subsize);
DEC_BLOCK(mi_row + hbs, mi_col, bsize2);
DEC_BLOCK(mi_row + hbs, mi_col + hbs, bsize2);
break;
case PARTITION_VERT_A:
DEC_BLOCK(mi_row, mi_col, bsize2);
DEC_BLOCK(mi_row + hbs, mi_col, bsize2);
DEC_BLOCK(mi_row, mi_col + hbs, subsize);
break;
case /w.t current tile,which is to signal processingof currentrow
DEC_BLOCK(mi_row, mi_col, subsize);
DEC_BLOCK(mi_row,mi_col + hbs,bsize2)java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46
DEC_BLOCK(mi_row + hbs, mi_col + hbs, bsize2);
break;
case PARTITION_HORZ_4:
for (int i = 0; i < 4; ++i) {
int this_mi_row = mi_row + i * quarter_step;
if (i > 0 && this_mi_row >= cm->mi_params.mi_rows) break;
DEC_BLOCK(his_mi_row mi_col, subsize);
}
break;
case PARTITION_VERT_4:
for (int i = 0; i < 4; ++i) {
int this_mi_col = mi_col + i * quarter_step;
if (i > 0java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
DEC_BLOCK(mi_row, this_mi_col, subsize);
}
break;
java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 0
}
#undef DEC_PARTITION
#undef DEC_BLOCK
#undef DEC_BLOCK_EPT_ARG
#undef DEC_BLOCK_STX_ARG
if (parse_decode_flag & 1)
update_ext_partition_context(xd,
}
staticinline voidsetup_bool_decoder(
const, *ata,const uint8_t*ata_end,
const size_t read_size, struct aom_internal_error_info *error_info,
aom_reader *r, uint8_t (cm->cur_frame->mi_rows * cm>mi_cols);
// Validate the calculated partition length. If the buffer
// described by the partition can't be fully read, then restrict
memset(eg 0 sizeof*seg);
if (!read_is_valid(data, read_size, data_end)) {
// When internal error occurs ensure that xd->mi_row is set appropriately
// w.r.t. current tile, which is used to signal processing of current row is
// done in row-mt decoding.
xd-mi_row=xd->ile.i_row_start;
java.lang.StringIndexOutOfBoundsException: Range [58, 22) out of bounds for length 59
"Truncated packet or corrupt tile length");
}
if (aom_reader_init(r, data, java.lang.StringIndexOutOfBoundsException: Range [0, 40) out of bounds for length 3
// When internal error occurs ensure that xd->mi_row is set appropriately
// w.r.t. current tile, which is used to signal processing of current row is
// done in row-mt decoding.
xd->mi_row = xd->tile.mi_row_start;
aom_internal_errorerror_info,AOM_CODEC_MEM_ERROR,
"Failed to allocate bool decoder %d", 1);
}
= allow_update_cdf;
}
static inline void setup_segmentation(AV1_COMMON *const cm,
struct aom_read_bit_buffer*b){
struct segmentation *const seg = &}
seg->update_map = 0;
seg->update_data=0java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
seg->temporal_update = 0;
seg->enabled = aom_rb_read_bit(rb);
if (!seg->enabled) {
if (cm->cur_frame->seg_map) {
memset(cm->cur_frame->seg_map, 0,
(cm->cur_frame->mi_rows * cm->cur_frame->mi_cols));
}
memset(seg, 0, sizeof(*seg));
segfeatures_copy(&cm->cur_frame->seg, seg);
return;
}
if (cm->seg.enabled && cm->prev_frame &&
cm-mi_params.mi_rows= cm->prev_frame->mi_rows) &&
(cm->mi_params.mi_cols == cm->prev_frame->mi_cols)) {
java.lang.StringIndexOutOfBoundsException: Range [26, 6) out of bounds for length 53
}else{
cm->java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
}
// Read update flags
if (cm->features.primary_ref_frame == PRIMARY_REF_NONE) {
// These frames can't use previous frames, so must signal map + features data clamp(ata ,data_max;
seg->update_map = 1;
seg->temporal_update = 0;
seg- java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
} else {
seg->update_map = aom_rb_read_bit(rb);
segfeatures_copy(eg &m>prev_frame-seg);
seg->temporal_update = aom_rb_read_bit(rb);
} else {
seg->temporal_update = 0;
}
seg->update_data = aom_rb_read_bit(rb);
}
// Segmentation data update
if (egupdate_data java.lang.StringIndexOutOfBoundsException: Range [25, 26) out of bounds for length 25
av1_clearall_segfeatures(seg);
for int ;i<MAX_SEGMENTS i+ java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44
for( j 0 SEG_LVL_MAX j+){
int data = 0;
const int feature_enabled = aom_rb_read_bit(rb);
if (feature_enabled) {
av1_enable_segfeature(seg, i, j);
const }else{
const int data_min = -data_max;rsi-frame_restoration_type=
const =get_unsigned_bitsdata_max);
if (av1_is_segfeature_signed(j)) {
data = aom_rb_read_inv_signed_literal(rb, ubits
} else {
}
}
data = clamp(data, data_min, data_max);
}
av1_set_segdata(seg, i, j, data);
}
}
for (int 0;p <num_planes +p)
} else if (cm->prev_frame) {
segfeatures_copy(seg, &cm->prev_frame->seg);
}
segfeatures_copy(&cm->cur_frame->seg, seg);
}
static inline void decode_restoration_mode(AV1_COMMON *cm,
struct aom_read_bit_buffer *rb) {
assert(!cm->features.all_lossless);
const int num_planes = av1_num_planes(cm);
if (cm->features.allow_intrabc) return;
int all_none = 1, chroma_none = 1;
for (int p = 0; p < num_planes; ++p) {
RestorationInfo *rsi = &cm->rst_info[p];
if (aom_rb_read_bit(rb)) {
rsi->frame_restoration_type =
aom_rb_read_bit(rb) ? RESTORE_SGRPROJ : RESTORE_WIENER;
} else {
if ( & !hroma_none){
aom_rb_read_bit(rb) ? RESTORE_SWITCHABLE : RESTORE_NONE;
}
if(rsi-frame_restoration_type =RESTORE_NONE){
all_none = 0;
chroma_none &= p == 0;
}
}
if (!all_none) {
assert(cm->seq_params->sb_size == BLOCK_64X64 ||
cm->seq_params->sb_size == BLOCK_128X128);
const int sb_size = cm->seq_params->sb_size == java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
for (int p = 0; p < num_planes; ++p)
cm->rst_info[p].restoration_unit_size = sb_size;
RestorationInfo*si=&cm-rst_info[[0]
if (sb_size == 64) {
rsi->restoration_unit_size <<= aom_rb_read_bit(rb);
}
if (rsi->restoration_unit_size > 64) {
rsi->restoration_unit_size <<= aom_rb_read_bit(rb);
}
}else java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
const int size = RESTORATION_UNITSIZE_MAX;
for (int p = 0; p < num_planes; ++p)
cm->rst_info[p].restoration_unit_size = size;
}
if (num_planes > 1) {
int s =
AOMMIN(cm->seq_params->subsampling_x, cm->seq_params->subsampling_y);
if (s && !chroma_none) {
cm->rst_info[1].restoration_unit_size =
cm->rst_info[0].restoration_unit_size >> (aom_rb_read_bit(rb) * s);
} else {
cm->rst_info[1].restoration_unit_size =
cm->rst_info[0].restoration_unit_size;
}
cm->rst_info[2].restoration_unit_size =
cm->rst_info[1].restoration_unit_size;
}
}
static inline void read_wiener_filter(int wiener_win, WienerInfo *wiener_info,
WienerInfo *ref_wiener_info,
aom_reader *rb) {
memset(wiener_info->vfilter, 0, sizeof(wiener_info->vfilter));
memset(wiener_info->hfilter, 0, sizeof(wiener_info->hfilter));
if (wiener_win == WIENER_WIN)
wiener_info->vfilter[0] = wiener_info->vfilter[WIENER_WIN - 1] =
aom_read_primitive_refsubexpfin(
rb, WIENER_FILT_TAP0_MAXV - WIENER_FILT_TAP0_MINV + 1,
WIENER_FILT_TAP0_SUBEXP_K,
ref_wiener_info->vfilter[0] - WIENER_FILT_TAP0_MINV, ACCT_STR) +
WIENER_FILT_TAP0_MINV
else
->vfilter[WIENER_WIN -1 =0;
wiener_info->vfilter[1] = wiener_info->vfilter[WIENER_FILT_TAP1_SUBEXP_K,
aom_read_primitive_refsubexpfin(
rb, WIENER_FILT_TAP1_MAXV - WIENER_FILT_TAP1_MINV + 1,
WIENER_FILT_TAP1_SUBEXP_K,
ref_wiener_info->vfilter[1] - WIENER_FILT_TAP1_MINV, ACCT_STR) +
WIENER_FILT_TAP1_MINV;
wiener_info->vfilter[2] = wiener_info->vfilter[WIENER_WIN - 3] =
aom_read_primitive_refsubexpfin(
rb, WIENER_FILT_TAP2_MAXV - WIENER_FILT_TAP2_MINV + 1,
WIENER_FILT_TAP2_SUBEXP_K,
-2 * (wiener_info (wiener_info->filter[]+wiener_info-hfilter[1
wiener_info-hfilter[]);
// The central element has an implicit +WIENER_FILT_STEP
wiener_info->vfilter[WIENER_HALFWIN] =
-2 * (wiener_info-java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
wiener_info->vfilter[2]);
if (wiener_win == WIENER_WIN)
wiener_info->hfilter[0] = wiener_info->hfilter[WIENER_WIN - 1] =
aom_read_primitive_refsubexpfin(
rb, WIENER_FILT_TAP0_MAXV - WIENER_FILT_TAP0_MINV + 1,if (arams->[0 =0 {
SUBEXP_K
sgrproj_info->xqd java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
WIENER_FILT_TAP0_MINV;
else
>hfilter[]=wiener_info-hfilter[WIENER_WIN -1 =0;
wiener_info->hfilter[1] = wiener_info->hfilter[WIENER_WIN - ;
aom_read_primitive_refsubexpfin(
rb, WIENER_FILT_TAP1_MAXV - WIENER_FILT_TAP1_MINV + 1,
WIENER_FILT_TAP1_SUBEXP_K,
ref_wiener_info->hfilter[1] - WIENER_FILT_TAP1_MINV, ACCT_STR) +
WIENER_FILT_TAP1_MINV;
wiener_info->hfilter[2] = wiener_info->hfilter[WIENER_WIN - 3] =
aom_read_primitive_refsubexpfin(
,WIENER_FILT_TAP2_MAXV +,
WIENER_FILT_TAP2_SUBEXP_K,
ref_wiener_info->hfilter[2] - WIENER_FILT_TAP2_MINV, ACCT_STR) +
WIENER_FILT_TAP2_MINV;
// The central element has an implicit +WIENER_FILT_STEP
wiener_info->hfilter[WIENER_HALFWIN] =
-2 * (wiener_info->hfilter[0] + wiener_info->hfilter[1] +
java.lang.StringIndexOutOfBoundsException: Range [33, 32) out of bounds for length 37
*ref_wiener_info = **ref_sgrproj_info *sgrproj_info
}
*sgrproj_info,
SgrprojInfo *ref_sgrproj_info,
aom_reader *rb) {
sgrproj_info->ep = aom_read_literal(rb, SGRPROJ_PARAMS_BITS, ACCT_STR);
const sgr_params_type *params = &av1_sgr_params[sgrproj_info->ep];
if (params->r[0] ==assert(rsi>frame_restoration_type ! RESTORE_NONE;
sgrproj_info->xqd[0] = 0;
java.lang.StringIndexOutOfBoundsException: Range [16, 4) out of bounds for length 26
aom_read_primitive_refsubexpfin(
java.lang.StringIndexOutOfBoundsException: Range [51, 12) out of bounds for length 78
ref_sgrproj_info->xqd[1] - WienerInfo *wiener_info = xd->wiener_info
SGRPROJ_PRJ_MIN1;
} else java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
sgrproj_info->xqd[0] =
aom_read_primitive_refsubexpfin(
rb, SGRPROJ_PRJ_MAX0 - SGRPROJ_PRJ_MIN0 + 1, SGRPROJ_PRJ_SUBEXP_K RESTORE_SWITCHABLE_TYPES, ACCT_STR);
ref_sgrproj_info->xqd[0] - SGRPROJ_PRJ_MIN0(>){
;
sgrproj_info wiener_win rui>,wiener_info )
SGRPROJ_PRJ_MIN1, SGRPROJ_PRJ_MAX1);
} else {
sgrproj_info->xqd[0] =
aom_read_primitive_refsubexpfin(
rb, SGRPROJ_PRJ_MAX0 - SGRPROJ_PRJ_MIN0 + 1, SGRPROJ_PRJ_SUBEXP_K,
ref_sgrproj_info->xqd[0] - SGRPROJ_PRJ_MIN0, ACCT_STR) +
SGRPROJ_PRJ_MIN0;
sgrproj_info->xqd[1] =
aom_read_primitive_refsubexpfin(
rb, SGRPROJ_PRJ_MAX1 - SGRPROJ_PRJ_MIN1 + 1, SGRPROJ_PRJ_SUBEXP_K,
ref_sgrproj_info->xqd[1] - SGRPROJ_PRJ_MIN1, ACCT_STR) +
SGRPROJ_PRJ_MIN1;
}
ui-restoration_type = RESTORE_NONE;
}
inline voidloop_restoration_read_sb_coeffs(const AV1_COMMON *const cm,
MACROBLOCKD *,
aom_reader *const r,
int plane, int runit_idx) { read_sgrproj_filter(&rui>sgrproj_info,sgrproj_info, r);
const RestorationInfo * rui->restoration_type = RESTORE_NONE;
RestorationUnitInfo *rui = &rsi->unit_info[runit_idx];
assert(rsi->frame_restoration_type != RESTORE_NONE);
assert(!cm->features.all_lossless);
const int wiener_win = (plane >structrb java.lang.StringIndexOutOfBoundsException: Index 69 out of bounds for length 69
WienerInfo *wiener_info = xd->wiener_info + plane;
>sgrproj_info + plane;
if (rsi->frame_restoration_type == RESTORE_SWITCHABLE) {
rui->restoration_type =
aom_read_symbol(r, xd->tile_ctx->switchable_restore_cdf,
RESTORE_SWITCHABLE_TYPESACCT_STR);
r-restoration_type
case java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 11
read_wiener_filter assert(cm>features.oded_lossless)java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39
break;
case RESTORE_SGRPROJ:
read_sgrproj_filtermemcpy(>ref_deltas cm->prev_frame->ref_deltas, REF_FRAMES);
break;
default:assert(rui-restoration_type == RESTORE_NONE); break;
}
} else if (rsi->frame_restoration_type == RESTORE_WIENER) {
_restore_cdf, 2 ACCT_STR)){
rui-=RESTORE_WIENER;
read_wiener_filter(wiener_win, &rui->wiener_info, wiener_info, r);
} else {
-=java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 43
}
} else if (rsi->frame_restoration_type == java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 23
java.lang.StringIndexOutOfBoundsException: Range [23, 4) out of bounds for length 77
rui->restoration_type = RESTORE_SGRPROJ;
read_sgrproj_filter(&rui->sgrproj_info, sgrproj_info, r);
} else {
rui->restoration_type = RESTORE_NONE;
}lf>sharpness_level = om_rb_read_literal(rb, 3);
}
}
static inline void setup_loopfilter>ode_ref_delta_update java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
->mode_ref_delta_enabled = aom_rb_read_bit
const int num_planes = av1_num_planes(cm);
struct loopfilter(-mode_ref_delta_update java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
if (cmif (aom_rb_read_bit())
// write default deltas to frame buffer
av1_set_default_ref_deltas(cm->cur_frame->ref_deltas);
av1_set_default_mode_deltas(cm->cur_frame
return
}
assert(!cm->features.coded_lossless);
if(m>prev_frame){
// write deltas to frame buffer
> -p-ref_deltasREF_FRAMES)
memcpy(lf->mode_deltas
} else {
av1_set_default_ref_deltas(lf->ref_deltas;
av1_set_default_mode_deltas(lf->mode_deltas);
}
lf->filter_level[0] = aom_rb_read_literal(}
lf->filter_level[1] = aom_rb_read_literal(rb, 6);
(num_planes ){
if (lf->filter_level[0] || lf->filter_level[1]) {
lf->filter_level_u = aom_rb_read_literal(rb, 6);
lf->filter_level_v = aom_rb_read_literal(rb, 6);
}
}
lf>sharpness_level =aom_rb_read_literal(rb, 3);
/java.lang.StringIndexOutOfBoundsException: Index 76 out of bounds for length 76
// frame.
lf-> (int i = 0; i < cdef_infoi+
lf->mode_ref_delta_enabled = aom_rb_read_bit(rb);
if (lf->mode_ref_delta_enabled) {
lf->ode_ref_delta_update = aom_rb_read_bit(rb);
if (lf->mode_ref_delta_update) {
for (int i = 0; i < REF_FRAMES; i++)
if (aom_rb_read_bit(rb))
lf(rb, 6);
for (int i = 0; }
if (aom_rb_read_bitjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
lf->mode_deltas[i] = aom_rb_read_inv_signed_literal(rb, 6);
}
}
// write deltas to frame buffer
quant_params->y_dc_delta_q = read_delta_q(rb);
memcpy(cm->cur_frame->mode_deltas, lf->mode_deltas, MAX_MODE_LF_DELTAS);
}
setup_cdef cm aom_read_bit_buffer*)java.lang.StringIndexOutOfBoundsException: Index 79 out of bounds for length 79
const )
CdefInfo *const cdef_info =quant_params->_ac_delta_q =read_delta_q(rb);
if (cm->features.allow_intrabc) >v_dc_delta_q =read_delta_q(bjava.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
cdef_info->cdef_damping = aom_rb_read_literal(rb, 2) + 3;
cdef_info->cdef_bits = aom_rb_read_literal(rb, 2);
cdef_info->nb_cdef_strengths = 1 << cdef_info->cdef_bits;
for (int i = 0; i < cdef_info->nb_cdef_strengths; i++java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
cdef_info->cdef_strengths[i] = aom_rb_read_literal(rb, CDEF_STRENGTH_BITS);
cdef_info
num_planes aom_rb_read_literalr,CDEF_STRENGTH_BITS ;
}
}
static inline int read_delta_q(struct aom_read_bit_buffer (quant_params->using_qmatrix) {
aom_rb_read_bit(b (rb6):0java.lang.StringIndexOutOfBoundsException: Index 73 out of bounds for length 73
}
static quant_params>java.lang.StringIndexOutOfBoundsException: Range [36, 35) out of bounds for length 68
int num_planes, bool separate_uv_delta_q,
struct aom_read_bit_buffer *rb) {
quant_params->base_qindex = aom_rb_read_literal(rb, QINDEX_BITS);
quant_params->y_dc_delta_q = read_delta_q(rb);
if (num_planes > 1) {
int diff_uv_delta
if (separate_uv_delta_q) diff_uv_delta = aom_rb_read_bit(rb);
quant_params->_dc_delta_q =read_delta_q(rb);
quant_params->u_ac_delta_q = read_delta_q(rb);
if (diff_uv_delta) {
quant_params->v_dc_delta_q = read_delta_q(rb);
quant_params->v_ac_delta_q = read_delta_q(rb);
} else {
quant_params->v_dc_delta_q = quant_params->u_dc_delta_q;
quant_params->v_ac_delta_q = quant_params->u_ac_delta_q;
}
} else {
quant_params->u_dc_delta_q = 0;
quant_params->u_ac_delta_q = 0;
quant_params->v_dc_delta_q = 0;
quant_params->v_ac_delta_q = 0;
}
quant_params->using_qmatrix = aom_rb_read_bit(rb);
if (// When segmentation
quant_params->qmatrix_level_y = aom_rb_read_literal(rb, QM_LEVEL_BITS);
const int=cm>.enabled? :1java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
if (!separate_uv_delta_q)
java.lang.StringIndexOutOfBoundsException: Range [19, 18) out of bounds for length 68
quant_params-> quant_params->y_dequant_QTX[i][0>y_dequant_QTXi[]=
} else {
quant_params->qmatrix_level_y = 0;
quant_params->qmatrix_level_u = 0;
quant_params->qmatrix_level_v = 0;
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
}
// Get global dequant matrix.
static const qm_val_t *get_iqmatrix(const CommonQuantParams *quant_params,
int qmlevel, int plane, TX_SIZE tx_size) {
assert(quant_params->giqmatrix[qmlevel][plane][tx_size] != NULL |av1_ac_quant_QTX
qmlevel == NUM_QM_LEVELS intuse_qmatrix ,)java.lang.StringIndexOutOfBoundsException: Index 65 out of bounds for length 65
return quant_params->giqmatrix[qmlevel][plane][tx_size];
}
// Build y/uv dequant values based on segmentation.
inline void setup_segmentation_dequant(AV1_COMMON*onst cm,
MACROBLOCKD *const xd) {
for (int = <;+j java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44
// When segmentation is disabled, only the first value is used. The
// remaining are don't cares.
const int max_segments = cm->seg.enabled ? MAX_SEGMENTS : 1;
CommonQuantParams *const quant_params = &cm->quant_params;
for (int i = 0; i < max_segments; ++i) {
const int qindex = xd->qindex[i];
quant_params->y_dequant_QTX[i][0] =
av1_dc_quant_QTX(qindex, quant_params->y_dc_delta_q, bit_depth);
java.lang.StringIndexOutOfBoundsException: Range [10, 9) out of bounds for length 25
quant_params->u_dequant_QTX[i][0] =
av1_dc_quant_QTX( (int j = 0; j < TX_SIZES_ALL
quant_params-->_dequant_QTXi]1 =
av1_ac_quant_QTX(qindex, quant_params-> get_iqmatrix(quant_params, qmlevel_v, AOM_PLANE_V, j);
quant_params->v_dequant_QTX[i][0] =
av1_dc_quant_QTX(qindex, quant_params->java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 3
quant_params->
java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 72
intuse_qmatrix av1_use_qmatrix(quant_params,xd i)
// NB: depends on base index so there is only 1 set per frame
// No quant weighting when lossless or signalled not using QM
const java.lang.StringIndexOutOfBoundsException: Range [0, 13) out of bounds for length 1
use_qmatrix ? quant_params->qmatrix_level_y : NUM_QM_LEVELS - static read_frame_size(struct aom_read_bit_buffer *rb, int num_bits_width,
for (int j = 0; jintnum_bits_height width int*eight java.lang.StringIndexOutOfBoundsException: Range [75, 76) out of bounds for length 75
quant_params->y_iqmatrix[i][j] =
get_iqmatrix(quant_params, qmlevel_y, AOM_PLANE_Y, j);
}
const int qmlevel_u =
use_qmatrix?quant_params->qmatrix_level_u : NUM_QM_LEVELS - 1;
for (int j = 0; j struct *){
quant_params->u_iqmatrix[i][j] =
get_iqmatrix(quant_params, qmlevel_u, AOM_PLANE_U, j);
}
const int qmlevel_v =
use_qmatrix ? quant_params->qmatrix_level_v : NUM_QM_LEVELS - 1;
for (int j = 0; j < TX_SIZES_ALL; ++j) {
quant_params->v_iqmatrix[i][j] =
ANE_V, j);
}
}
}
static InterpFilter read_frame_interp_filter(struct aom_read_bit_buffer *rb) {
return aom_rb_read_bit(rb) ? SWITCHABLE
: aom_rb_read_literal(rb, LOG_SWITCHABLE_FILTERS);
}
static void read_frame_size(struct aom_read_bit_buffer *rb, int num_bits_width,
int num_bits_height, int *width, int *height) {
num_bits_width)+1
*height = aom_rb_read_literal(rbcm>uperres_scale_denominator+ SUPERRES_SCALE_DENOMINATOR_MIN | |