SequenceParameterSetRbsp.smali
.class public Lcom/googlecode/mp4parser/authoring/tracks/h265/SequenceParameterSetRbsp;
.super Ljava/lang/Object;
.source "SequenceParameterSetRbsp.java"
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public constructor <init>(Ljava/io/InputStream;)V
.registers 15
.param p1, "is" # Ljava/io/InputStream;
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 13
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 14
new-instance v0, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;
invoke-direct {v0, p1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;-><init>(Ljava/io/InputStream;)V
.line 16
.local v0, "bsr":Lcom/googlecode/mp4parser/h264/read/CAVLCReader;
const/4 v1, 0x4
const-string/jumbo v2, "sps_video_parameter_set_id"
invoke-virtual {v0, v1, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
.line 17
const/4 v2, 0x3
const-string/jumbo v3, "sps_max_sub_layers_minus1"
invoke-virtual {v0, v2, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
move-result-wide v3
long-to-int v4, v3
.line 18
.local v4, "sps_max_sub_layers_minus1":I
const-string/jumbo v3, "sps_temporal_id_nesting_flag"
invoke-virtual {v0, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
.line 19
invoke-direct {p0, v4, v0}, Lcom/googlecode/mp4parser/authoring/tracks/h265/SequenceParameterSetRbsp;->profile_tier_level(ILcom/googlecode/mp4parser/h264/read/CAVLCReader;)V
.line 20
const-string/jumbo v3, "sps_seq_parameter_set_id"
invoke-virtual {v0, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
.line 21
const-string v3, "chroma_format_idc"
invoke-virtual {v0, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v3
.line 22
.local v3, "chroma_format_idc":I
if-ne v3, v2, :cond_56
.line 23
invoke-virtual {v0}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->read1Bit()I
.line 24
const-string v2, "pic_width_in_luma_samples"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
.line 25
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
.line 26
const-string v2, "conformance_window_flag"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v2
.line 27
.local v2, "conformance_window_flag":Z
if-eqz v2, :cond_56
.line 28
const-string v5, "conf_win_left_offset"
invoke-virtual {v0, v5}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
.line 29
const-string v5, "conf_win_right_offset"
invoke-virtual {v0, v5}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
.line 30
const-string v5, "conf_win_top_offset"
invoke-virtual {v0, v5}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
.line 31
const-string v5, "conf_win_bottom_offset"
invoke-virtual {v0, v5}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
.line 34
.end local v2 # "conformance_window_flag":Z
:cond_56
const-string v2, "bit_depth_luma_minus8"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
.line 35
const-string v2, "bit_depth_chroma_minus8"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
.line 36
const-string v2, "log2_max_pic_order_cnt_lsb_minus4"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
.line 37
const-string/jumbo v2, "sps_sub_layer_ordering_info_present_flag"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v2
.line 39
.local v2, "sps_sub_layer_ordering_info_present_flag":Z
const/4 v5, 0x0
if-eqz v2, :cond_71
const/4 v6, 0x0
goto :goto_72
:cond_71
move v6, v4
:goto_72
sub-int v6, v4, v6
add-int/lit8 v6, v6, 0x1
.line 40
.local v6, "j":I
new-array v7, v6, [I
.line 41
.local v7, "sps_max_dec_pic_buffering_minus1":[I
new-array v8, v6, [I
.line 42
.local v8, "sps_max_num_reorder_pics":[I
new-array v9, v6, [I
.line 44
.local v9, "sps_max_latency_increase_plus1":[I
if-eqz v2, :cond_7f
goto :goto_80
:cond_7f
move v5, v4
.local v5, "i":I
:goto_80
if-le v5, v4, :cond_d8
.line 50
.end local v5 # "i":I
const-string v5, "log2_min_luma_coding_block_size_minus3"
invoke-virtual {v0, v5}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
.line 51
const-string v5, "log2_diff_max_min_luma_coding_block_size"
invoke-virtual {v0, v5}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
.line 52
const-string v5, "log2_min_transform_block_size_minus2"
invoke-virtual {v0, v5}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
.line 53
const-string v5, "log2_diff_max_min_transform_block_size"
invoke-virtual {v0, v5}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
.line 54
const-string v5, "max_transform_hierarchy_depth_inter"
invoke-virtual {v0, v5}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
.line 55
const-string v5, "max_transform_hierarchy_depth_intra"
invoke-virtual {v0, v5}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
.line 57
const-string/jumbo v5, "scaling_list_enabled_flag"
invoke-virtual {v0, v5}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v5
.line 58
.local v5, "scaling_list_enabled_flag":Z
if-eqz v5, :cond_b5
.line 59
const-string/jumbo v10, "sps_scaling_list_data_present_flag"
invoke-virtual {v0, v10}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v10
.line 60
.local v10, "sps_scaling_list_data_present_flag":Z
if-eqz v10, :cond_b5
.line 61
invoke-direct {p0, v0}, Lcom/googlecode/mp4parser/authoring/tracks/h265/SequenceParameterSetRbsp;->scaling_list_data(Lcom/googlecode/mp4parser/h264/read/CAVLCReader;)V
.line 64
.end local v10 # "sps_scaling_list_data_present_flag":Z
:cond_b5
const-string v10, "amp_enabled_flag"
invoke-virtual {v0, v10}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
.line 65
const-string/jumbo v10, "sample_adaptive_offset_enabled_flag"
invoke-virtual {v0, v10}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
.line 66
const-string v10, "pcm_enabled_flag"
invoke-virtual {v0, v10}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v10
.line 68
.local v10, "pcm_enabled_flag":Z
if-eqz v10, :cond_d7
.line 69
const-string v11, "pcm_sample_bit_depth_luma_minus1"
invoke-virtual {v0, v1, v11}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
.line 70
const-string v11, "pcm_sample_bit_depth_chroma_minus1"
invoke-virtual {v0, v1, v11}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
.line 71
const-string v1, "log2_min_pcm_luma_coding_block_size_minus3"
invoke-virtual {v0, v1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
.line 73
:cond_d7
return-void
.line 45
.end local v10 # "pcm_enabled_flag":Z
.local v5, "i":I
:cond_d8
new-instance v10, Ljava/lang/StringBuilder;
const-string/jumbo v11, "sps_max_dec_pic_buffering_minus1["
invoke-direct {v10, v11}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v10, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v11, "]"
invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v10
invoke-virtual {v0, v10}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v10
aput v10, v7, v5
.line 46
new-instance v10, Ljava/lang/StringBuilder;
const-string/jumbo v12, "sps_max_num_reorder_pics["
invoke-direct {v10, v12}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v10, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v10
invoke-virtual {v0, v10}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v10
aput v10, v8, v5
.line 47
new-instance v10, Ljava/lang/StringBuilder;
const-string/jumbo v12, "sps_max_latency_increase_plus1["
invoke-direct {v10, v12}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v10, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v10
invoke-virtual {v0, v10}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v10
aput v10, v9, v5
.line 44
add-int/lit8 v5, v5, 0x1
goto/16 :goto_80
.end method
.method private profile_tier_level(ILcom/googlecode/mp4parser/h264/read/CAVLCReader;)V
.registers 24
.param p1, "maxNumSubLayersMinus1" # I
.param p2, "bsr" # Lcom/googlecode/mp4parser/h264/read/CAVLCReader;
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 109
move/from16 v0, p1
move-object/from16 v1, p2
const/4 v2, 0x2
const-string v3, "general_profile_space"
invoke-virtual {v1, v2, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readU(ILjava/lang/String;)I
.line 110
const-string v3, "general_tier_flag"
invoke-virtual {v1, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
.line 111
const/4 v3, 0x5
const-string v4, "general_profile_idc"
invoke-virtual {v1, v3, v4}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readU(ILjava/lang/String;)I
.line 112
const/16 v4, 0x20
new-array v5, v4, [Z
.line 113
.local v5, "general_profile_compatibility_flag":[Z
const/4 v6, 0x0
.local v6, "j":I
:goto_1a
if-lt v6, v4, :cond_1f1
.line 116
.end local v6 # "j":I
const-string v6, "general_progressive_source_flag"
invoke-virtual {v1, v6}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
.line 117
const-string v6, "general_interlaced_source_flag"
invoke-virtual {v1, v6}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
.line 118
const-string v6, "general_non_packed_constraint_flag"
invoke-virtual {v1, v6}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
.line 119
const-string v6, "general_frame_only_constraint_flag"
invoke-virtual {v1, v6}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
.line 120
const/16 v7, 0x2c
const-string v6, "general_reserved_zero_44bits"
invoke-virtual {v1, v7, v6}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
.line 121
invoke-virtual/range {p2 .. p2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readByte()I
.line 122
new-array v8, v0, [Z
.line 123
.local v8, "sub_layer_profile_present_flag":[Z
new-array v9, v0, [Z
.line 124
.local v9, "sub_layer_level_present_flag":[Z
const/4 v6, 0x0
.local v6, "i":I
:goto_3f
const-string v10, "]"
if-lt v6, v0, :cond_1b1
.line 129
.end local v6 # "i":I
const/16 v11, 0x8
if-lez v0, :cond_69
.line 130
new-array v6, v11, [I
.line 132
.local v6, "reserved_zero_2bits":[I
move/from16 v12, p1
.local v12, "i":I
:goto_4b
if-lt v12, v11, :cond_4e
goto :goto_69
.line 133
:cond_4e
new-instance v13, Ljava/lang/StringBuilder;
const-string/jumbo v14, "reserved_zero_2bits["
invoke-direct {v13, v14}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v13, v12}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v13, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v13
invoke-virtual {v1, v2, v13}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readU(ILjava/lang/String;)I
move-result v13
aput v13, v6, v12
.line 132
add-int/lit8 v12, v12, 0x1
goto :goto_4b
.line 136
.end local v6 # "reserved_zero_2bits":[I
.end local v12 # "i":I
:cond_69
:goto_69
new-array v12, v0, [I
.line 137
.local v12, "sub_layer_profile_space":[I
new-array v13, v0, [Z
.line 138
.local v13, "sub_layer_tier_flag":[Z
new-array v14, v0, [I
.line 139
.local v14, "sub_layer_profile_idc":[I
new-array v6, v2, [I
const/4 v15, 0x1
aput v4, v6, v15
const/4 v15, 0x0
aput v0, v6, v15
const-class v15, Z
invoke-static {v15, v6}, Ljava/lang/reflect/Array;->newInstance(Ljava/lang/Class;[I)Ljava/lang/Object;
move-result-object v6
move-object v15, v6
check-cast v15, [[Z
.line 140
.local v15, "sub_layer_profile_compatibility_flag":[[Z
new-array v6, v0, [Z
.line 141
.local v6, "sub_layer_progressive_source_flag":[Z
new-array v11, v0, [Z
.line 142
.local v11, "sub_layer_interlaced_source_flag":[Z
new-array v7, v0, [Z
.line 143
.local v7, "sub_layer_non_packed_constraint_flag":[Z
new-array v4, v0, [Z
.line 144
.local v4, "sub_layer_frame_only_constraint_flag":[Z
new-array v3, v0, [J
.line 145
.local v3, "sub_layer_reserved_zero_44bits":[J
new-array v2, v0, [I
.line 148
.local v2, "sub_layer_level_idc":[I
const/16 v17, 0x0
move-object/from16 v18, v5
move/from16 v5, v17
.local v5, "i":I
.local v18, "general_profile_compatibility_flag":[Z
:goto_92
if-lt v5, v0, :cond_95
.line 166
.end local v5 # "i":I
return-void
.line 149
.restart local v5 # "i":I
:cond_95
aget-boolean v17, v8, v5
if-eqz v17, :cond_182
.line 150
new-instance v0, Ljava/lang/StringBuilder;
move-object/from16 v17, v8
.end local v8 # "sub_layer_profile_present_flag":[Z
.local v17, "sub_layer_profile_present_flag":[Z
const-string/jumbo v8, "sub_layer_profile_space["
invoke-direct {v0, v8}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const/4 v8, 0x2
invoke-virtual {v1, v8, v0}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readU(ILjava/lang/String;)I
move-result v0
aput v0, v12, v5
.line 151
new-instance v0, Ljava/lang/StringBuilder;
const-string/jumbo v8, "sub_layer_tier_flag["
invoke-direct {v0, v8}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v0
aput-boolean v0, v13, v5
.line 152
new-instance v0, Ljava/lang/StringBuilder;
const-string/jumbo v8, "sub_layer_profile_idc["
invoke-direct {v0, v8}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const/4 v8, 0x5
invoke-virtual {v1, v8, v0}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readU(ILjava/lang/String;)I
move-result v0
aput v0, v14, v5
.line 153
const/4 v0, 0x0
.local v0, "j":I
:goto_e6
const/16 v8, 0x20
if-lt v0, v8, :cond_155
.line 156
.end local v0 # "j":I
new-instance v0, Ljava/lang/StringBuilder;
const-string/jumbo v8, "sub_layer_progressive_source_flag["
invoke-direct {v0, v8}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v0
aput-boolean v0, v6, v5
.line 157
new-instance v0, Ljava/lang/StringBuilder;
const-string/jumbo v8, "sub_layer_interlaced_source_flag["
invoke-direct {v0, v8}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v0
aput-boolean v0, v11, v5
.line 158
new-instance v0, Ljava/lang/StringBuilder;
const-string/jumbo v8, "sub_layer_non_packed_constraint_flag["
invoke-direct {v0, v8}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v0
aput-boolean v0, v7, v5
.line 159
new-instance v0, Ljava/lang/StringBuilder;
const-string/jumbo v8, "sub_layer_frame_only_constraint_flag["
invoke-direct {v0, v8}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v0
aput-boolean v0, v4, v5
.line 160
const/16 v8, 0x2c
invoke-virtual {v1, v8}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(I)J
move-result-wide v19
aput-wide v19, v3, v5
move-object/from16 v20, v3
goto :goto_186
.line 154
.restart local v0 # "j":I
:cond_155
const/16 v8, 0x2c
aget-object v16, v15, v5
new-instance v8, Ljava/lang/StringBuilder;
move-object/from16 v20, v3
.end local v3 # "sub_layer_reserved_zero_44bits":[J
.local v20, "sub_layer_reserved_zero_44bits":[J
const-string/jumbo v3, "sub_layer_profile_compatibility_flag["
invoke-direct {v8, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v8, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v3, "]["
invoke-virtual {v8, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v8, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-virtual {v1, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v3
aput-boolean v3, v16, v0
.line 153
add-int/lit8 v0, v0, 0x1
move-object/from16 v3, v20
const/4 v8, 0x5
goto/16 :goto_e6
.line 149
.end local v0 # "j":I
.end local v17 # "sub_layer_profile_present_flag":[Z
.end local v20 # "sub_layer_reserved_zero_44bits":[J
.restart local v3 # "sub_layer_reserved_zero_44bits":[J
.restart local v8 # "sub_layer_profile_present_flag":[Z
:cond_182
move-object/from16 v20, v3
move-object/from16 v17, v8
.line 162
.end local v3 # "sub_layer_reserved_zero_44bits":[J
.end local v8 # "sub_layer_profile_present_flag":[Z
.restart local v17 # "sub_layer_profile_present_flag":[Z
.restart local v20 # "sub_layer_reserved_zero_44bits":[J
:goto_186
aget-boolean v0, v9, v5
if-eqz v0, :cond_1a5
.line 163
new-instance v0, Ljava/lang/StringBuilder;
const-string/jumbo v3, "sub_layer_level_idc["
invoke-direct {v0, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const/16 v3, 0x8
invoke-virtual {v1, v3, v0}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readU(ILjava/lang/String;)I
move-result v0
aput v0, v2, v5
goto :goto_1a7
.line 162
:cond_1a5
const/16 v3, 0x8
.line 148
:goto_1a7
add-int/lit8 v5, v5, 0x1
move/from16 v0, p1
move-object/from16 v8, v17
move-object/from16 v3, v20
goto/16 :goto_92
.line 125
.end local v2 # "sub_layer_level_idc":[I
.end local v4 # "sub_layer_frame_only_constraint_flag":[Z
.end local v7 # "sub_layer_non_packed_constraint_flag":[Z
.end local v11 # "sub_layer_interlaced_source_flag":[Z
.end local v12 # "sub_layer_profile_space":[I
.end local v13 # "sub_layer_tier_flag":[Z
.end local v14 # "sub_layer_profile_idc":[I
.end local v15 # "sub_layer_profile_compatibility_flag":[[Z
.end local v17 # "sub_layer_profile_present_flag":[Z
.end local v18 # "general_profile_compatibility_flag":[Z
.end local v20 # "sub_layer_reserved_zero_44bits":[J
.local v5, "general_profile_compatibility_flag":[Z
.local v6, "i":I
.restart local v8 # "sub_layer_profile_present_flag":[Z
:cond_1b1
move-object/from16 v18, v5
move-object/from16 v17, v8
.end local v5 # "general_profile_compatibility_flag":[Z
.end local v8 # "sub_layer_profile_present_flag":[Z
.restart local v17 # "sub_layer_profile_present_flag":[Z
.restart local v18 # "general_profile_compatibility_flag":[Z
new-instance v0, Ljava/lang/StringBuilder;
const-string/jumbo v2, "sub_layer_profile_present_flag["
invoke-direct {v0, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v0
aput-boolean v0, v17, v6
.line 126
new-instance v0, Ljava/lang/StringBuilder;
const-string/jumbo v2, "sub_layer_level_present_flag["
invoke-direct {v0, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v0
aput-boolean v0, v9, v6
.line 124
add-int/lit8 v6, v6, 0x1
move/from16 v0, p1
const/4 v2, 0x2
const/4 v3, 0x5
const/16 v4, 0x20
const/16 v7, 0x2c
goto/16 :goto_3f
.line 114
.end local v9 # "sub_layer_level_present_flag":[Z
.end local v17 # "sub_layer_profile_present_flag":[Z
.end local v18 # "general_profile_compatibility_flag":[Z
.restart local v5 # "general_profile_compatibility_flag":[Z
.local v6, "j":I
:cond_1f1
move-object/from16 v18, v5
.end local v5 # "general_profile_compatibility_flag":[Z
.restart local v18 # "general_profile_compatibility_flag":[Z
invoke-virtual/range {p2 .. p2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool()Z
move-result v0
aput-boolean v0, v18, v6
.line 113
add-int/lit8 v6, v6, 0x1
move/from16 v0, p1
const/4 v2, 0x2
const/4 v3, 0x5
const/16 v4, 0x20
goto/16 :goto_1a
.end method
.method private scaling_list_data(Lcom/googlecode/mp4parser/h264/read/CAVLCReader;)V
.registers 16
.param p1, "bsr" # Lcom/googlecode/mp4parser/h264/read/CAVLCReader;
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 76
const/4 v0, 0x4
new-array v1, v0, [[Z
.line 77
.local v1, "scaling_list_pred_mode_flag":[[Z
new-array v2, v0, [[I
.line 78
.local v2, "scaling_list_pred_matrix_id_delta":[[I
const/4 v3, 0x2
new-array v4, v3, [[I
.line 79
.local v4, "scaling_list_dc_coef_minus8":[[I
new-array v5, v0, [[[I
.line 81
.local v5, "ScalingList":[[[I
const/4 v6, 0x0
.local v6, "sizeId":I
:goto_b
if-lt v6, v0, :cond_e
.line 105
.end local v6 # "sizeId":I
return-void
.line 82
.restart local v6 # "sizeId":I
:cond_e
const/4 v7, 0x0
.local v7, "matrixId":I
:goto_f
const/4 v8, 0x6
const/4 v9, 0x3
if-ne v6, v9, :cond_15
const/4 v10, 0x2
goto :goto_16
:cond_15
const/4 v10, 0x6
:goto_16
if-lt v7, v10, :cond_1b
.line 81
.end local v7 # "matrixId":I
add-int/lit8 v6, v6, 0x1
goto :goto_b
.line 83
.restart local v7 # "matrixId":I
:cond_1b
if-ne v6, v9, :cond_1f
const/4 v10, 0x2
goto :goto_20
:cond_1f
const/4 v10, 0x6
:goto_20
new-array v10, v10, [Z
aput-object v10, v1, v6
.line 84
if-ne v6, v9, :cond_28
const/4 v10, 0x2
goto :goto_29
:cond_28
const/4 v10, 0x6
:goto_29
new-array v10, v10, [I
aput-object v10, v2, v6
.line 85
if-ne v6, v9, :cond_30
const/4 v8, 0x2
:cond_30
new-array v8, v8, [[I
aput-object v8, v5, v6
.line 86
aget-object v8, v1, v6
invoke-virtual {p1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool()Z
move-result v9
aput-boolean v9, v8, v7
.line 87
aget-object v8, v1, v6
aget-boolean v8, v8, v7
const-string v9, "]"
if-nez v8, :cond_67
.line 88
aget-object v8, v2, v6
new-instance v10, Ljava/lang/StringBuilder;
const-string/jumbo v11, "scaling_list_pred_matrix_id_delta["
invoke-direct {v10, v11}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v10, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v11, "]["
invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v10, v7}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v10, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v9
invoke-virtual {p1, v9}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v9
aput v9, v8, v7
.line 89
goto :goto_ac
.line 90
:cond_67
const/16 v8, 0x8
.line 91
.local v8, "nextCoef":I
const/16 v10, 0x40
shl-int/lit8 v11, v6, 0x1
add-int/2addr v11, v0
const/4 v12, 0x1
shl-int v11, v12, v11
invoke-static {v10, v11}, Ljava/lang/Math;->min(II)I
move-result v10
.line 92
.local v10, "coefNum":I
if-le v6, v12, :cond_a3
.line 93
add-int/lit8 v11, v6, -0x2
aget-object v11, v4, v11
new-instance v12, Ljava/lang/StringBuilder;
const-string/jumbo v13, "scaling_list_dc_coef_minus8["
invoke-direct {v12, v13}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v12, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v13, "- 2]["
invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v12, v7}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v12, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v9
invoke-virtual {p1, v9}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readSE(Ljava/lang/String;)I
move-result v9
aput v9, v11, v7
.line 94
add-int/lit8 v9, v6, -0x2
aget-object v9, v4, v9
aget v9, v9, v7
add-int/lit8 v8, v9, 0x8
.line 96
:cond_a3
aget-object v9, v5, v6
new-array v11, v10, [I
aput-object v11, v9, v7
.line 97
const/4 v9, 0x0
.local v9, "i":I
:goto_aa
if-lt v9, v10, :cond_b0
.line 82
.end local v8 # "nextCoef":I
.end local v9 # "i":I
.end local v10 # "coefNum":I
:goto_ac
add-int/lit8 v7, v7, 0x1
goto/16 :goto_f
.line 98
.restart local v8 # "nextCoef":I
.restart local v9 # "i":I
.restart local v10 # "coefNum":I
:cond_b0
const-string/jumbo v11, "scaling_list_delta_coef "
invoke-virtual {p1, v11}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readSE(Ljava/lang/String;)I
move-result v11
.line 99
.local v11, "scaling_list_delta_coef":I
add-int v12, v8, v11
add-int/lit16 v12, v12, 0x100
rem-int/lit16 v8, v12, 0x100
.line 100
aget-object v12, v5, v6
aget-object v12, v12, v7
aput v8, v12, v9
.line 97
.end local v11 # "scaling_list_delta_coef":I
add-int/lit8 v9, v9, 0x1
goto :goto_aa
.end method