SeqParameterSet.smali
.class public Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;
.super Lcom/googlecode/mp4parser/h264/model/BitstreamElement;
.source "SeqParameterSet.java"
# instance fields
.field public bit_depth_chroma_minus8:I
.field public bit_depth_luma_minus8:I
.field public chroma_format_idc:Lcom/googlecode/mp4parser/h264/model/ChromaFormat;
.field public constraint_set_0_flag:Z
.field public constraint_set_1_flag:Z
.field public constraint_set_2_flag:Z
.field public constraint_set_3_flag:Z
.field public constraint_set_4_flag:Z
.field public constraint_set_5_flag:Z
.field public delta_pic_order_always_zero_flag:Z
.field public direct_8x8_inference_flag:Z
.field public entropy_coding_mode_flag:Z
.field public field_pic_flag:Z
.field public frame_crop_bottom_offset:I
.field public frame_crop_left_offset:I
.field public frame_crop_right_offset:I
.field public frame_crop_top_offset:I
.field public frame_cropping_flag:Z
.field public frame_mbs_only_flag:Z
.field public gaps_in_frame_num_value_allowed_flag:Z
.field public level_idc:I
.field public log2_max_frame_num_minus4:I
.field public log2_max_pic_order_cnt_lsb_minus4:I
.field public mb_adaptive_frame_field_flag:Z
.field public num_ref_frames:I
.field public num_ref_frames_in_pic_order_cnt_cycle:I
.field public offsetForRefFrame:[I
.field public offset_for_non_ref_pic:I
.field public offset_for_top_to_bottom_field:I
.field public pic_height_in_map_units_minus1:I
.field public pic_order_cnt_type:I
.field public pic_width_in_mbs_minus1:I
.field public profile_idc:I
.field public qpprime_y_zero_transform_bypass_flag:Z
.field public reserved_zero_2bits:J
.field public residual_color_transform_flag:Z
.field public scalingMatrix:Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;
.field public seq_parameter_set_id:I
.field public vuiParams:Lcom/googlecode/mp4parser/h264/model/VUIParameters;
.field public weighted_bipred_idc:I
.field public weighted_pred_flag:Z
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public constructor <init>()V
.registers 1
.line 37
invoke-direct {p0}, Lcom/googlecode/mp4parser/h264/model/BitstreamElement;-><init>()V
return-void
.end method
.method private static ReadVUIParameters(Lcom/googlecode/mp4parser/h264/read/CAVLCReader;)Lcom/googlecode/mp4parser/h264/model/VUIParameters;
.registers 7
.param p0, "reader" # Lcom/googlecode/mp4parser/h264/read/CAVLCReader;
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 202
new-instance v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;
invoke-direct {v0}, Lcom/googlecode/mp4parser/h264/model/VUIParameters;-><init>()V
.line 203
.local v0, "vuip":Lcom/googlecode/mp4parser/h264/model/VUIParameters;
nop
.line 204
const-string v1, "VUI: aspect_ratio_info_present_flag"
invoke-virtual {p0, v1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v1
.line 203
iput-boolean v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->aspect_ratio_info_present_flag:Z
.line 205
iget-boolean v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->aspect_ratio_info_present_flag:Z
const/16 v2, 0x8
if-eqz v1, :cond_3d
.line 206
nop
.line 207
nop
.line 206
const-string v1, "VUI: aspect_ratio"
invoke-virtual {p0, v2, v1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
move-result-wide v3
long-to-int v1, v3
invoke-static {v1}, Lcom/googlecode/mp4parser/h264/model/AspectRatio;->fromValue(I)Lcom/googlecode/mp4parser/h264/model/AspectRatio;
move-result-object v1
iput-object v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->aspect_ratio:Lcom/googlecode/mp4parser/h264/model/AspectRatio;
.line 208
iget-object v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->aspect_ratio:Lcom/googlecode/mp4parser/h264/model/AspectRatio;
sget-object v3, Lcom/googlecode/mp4parser/h264/model/AspectRatio;->Extended_SAR:Lcom/googlecode/mp4parser/h264/model/AspectRatio;
if-ne v1, v3, :cond_3d
.line 209
const/16 v1, 0x10
const-string v3, "VUI: sar_width"
invoke-virtual {p0, v1, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
move-result-wide v3
long-to-int v4, v3
iput v4, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->sar_width:I
.line 210
const-string v3, "VUI: sar_height"
invoke-virtual {p0, v1, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
move-result-wide v3
long-to-int v1, v3
iput v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->sar_height:I
.line 213
:cond_3d
nop
.line 214
const-string v1, "VUI: overscan_info_present_flag"
invoke-virtual {p0, v1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v1
.line 213
iput-boolean v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->overscan_info_present_flag:Z
.line 215
iget-boolean v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->overscan_info_present_flag:Z
if-eqz v1, :cond_53
.line 216
nop
.line 217
const-string v1, "VUI: overscan_appropriate_flag"
invoke-virtual {p0, v1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v1
.line 216
iput-boolean v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->overscan_appropriate_flag:Z
.line 219
:cond_53
nop
.line 220
const-string v1, "VUI: video_signal_type_present_flag"
invoke-virtual {p0, v1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v1
.line 219
iput-boolean v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->video_signal_type_present_flag:Z
.line 221
iget-boolean v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->video_signal_type_present_flag:Z
if-eqz v1, :cond_a1
.line 222
const/4 v1, 0x3
const-string v3, "VUI: video_format"
invoke-virtual {p0, v1, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
move-result-wide v3
long-to-int v1, v3
iput v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->video_format:I
.line 223
nop
.line 224
const-string v1, "VUI: video_full_range_flag"
invoke-virtual {p0, v1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v1
.line 223
iput-boolean v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->video_full_range_flag:Z
.line 225
nop
.line 226
const-string v1, "VUI: colour_description_present_flag"
invoke-virtual {p0, v1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v1
.line 225
iput-boolean v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->colour_description_present_flag:Z
.line 227
iget-boolean v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->colour_description_present_flag:Z
if-eqz v1, :cond_a1
.line 228
nop
.line 229
nop
.line 228
const-string v1, "VUI: colour_primaries"
invoke-virtual {p0, v2, v1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
move-result-wide v3
long-to-int v1, v3
iput v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->colour_primaries:I
.line 230
nop
.line 231
nop
.line 230
const-string v1, "VUI: transfer_characteristics"
invoke-virtual {p0, v2, v1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
move-result-wide v3
long-to-int v1, v3
iput v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->transfer_characteristics:I
.line 232
nop
.line 233
nop
.line 232
const-string v1, "VUI: matrix_coefficients"
invoke-virtual {p0, v2, v1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
move-result-wide v1
long-to-int v2, v1
iput v2, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->matrix_coefficients:I
.line 236
:cond_a1
nop
.line 237
const-string v1, "VUI: chroma_loc_info_present_flag"
invoke-virtual {p0, v1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v1
.line 236
iput-boolean v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->chroma_loc_info_present_flag:Z
.line 238
iget-boolean v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->chroma_loc_info_present_flag:Z
if-eqz v1, :cond_c0
.line 239
nop
.line 240
const-string v1, "VUI chroma_sample_loc_type_top_field"
invoke-virtual {p0, v1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v1
.line 239
iput v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->chroma_sample_loc_type_top_field:I
.line 241
nop
.line 242
const-string v1, "VUI chroma_sample_loc_type_bottom_field"
invoke-virtual {p0, v1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v1
.line 241
iput v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->chroma_sample_loc_type_bottom_field:I
.line 244
:cond_c0
nop
.line 245
const-string v1, "VUI: timing_info_present_flag"
invoke-virtual {p0, v1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v1
.line 244
iput-boolean v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->timing_info_present_flag:Z
.line 246
iget-boolean v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->timing_info_present_flag:Z
if-eqz v1, :cond_ec
.line 247
nop
.line 248
nop
.line 247
const/16 v1, 0x20
const-string v2, "VUI: num_units_in_tick"
invoke-virtual {p0, v1, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
move-result-wide v2
long-to-int v3, v2
iput v3, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->num_units_in_tick:I
.line 249
const-string v2, "VUI: time_scale"
invoke-virtual {p0, v1, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
move-result-wide v1
long-to-int v2, v1
iput v2, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->time_scale:I
.line 250
nop
.line 251
const-string v1, "VUI: fixed_frame_rate_flag"
invoke-virtual {p0, v1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v1
.line 250
iput-boolean v1, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->fixed_frame_rate_flag:Z
.line 253
:cond_ec
nop
.line 254
const-string v1, "VUI: nal_hrd_parameters_present_flag"
invoke-virtual {p0, v1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v1
.line 253
nop
.line 255
.local v1, "nal_hrd_parameters_present_flag":Z
if-eqz v1, :cond_fc
.line 256
invoke-static {p0}, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->readHRDParameters(Lcom/googlecode/mp4parser/h264/read/CAVLCReader;)Lcom/googlecode/mp4parser/h264/model/HRDParameters;
move-result-object v2
iput-object v2, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->nalHRDParams:Lcom/googlecode/mp4parser/h264/model/HRDParameters;
.line 257
:cond_fc
nop
.line 258
const-string v2, "VUI: vcl_hrd_parameters_present_flag"
invoke-virtual {p0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v2
.line 257
nop
.line 259
.local v2, "vcl_hrd_parameters_present_flag":Z
if-eqz v2, :cond_10c
.line 260
invoke-static {p0}, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->readHRDParameters(Lcom/googlecode/mp4parser/h264/read/CAVLCReader;)Lcom/googlecode/mp4parser/h264/model/HRDParameters;
move-result-object v3
iput-object v3, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->vclHRDParams:Lcom/googlecode/mp4parser/h264/model/HRDParameters;
.line 261
:cond_10c
if-nez v1, :cond_110
if-eqz v2, :cond_119
.line 262
:cond_110
nop
.line 263
const-string v3, "VUI: low_delay_hrd_flag"
invoke-virtual {p0, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v3
.line 262
iput-boolean v3, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->low_delay_hrd_flag:Z
.line 265
:cond_119
nop
.line 266
const-string v3, "VUI: pic_struct_present_flag"
invoke-virtual {p0, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v3
.line 265
iput-boolean v3, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->pic_struct_present_flag:Z
.line 267
nop
.line 268
const-string v3, "VUI: bitstream_restriction_flag"
invoke-virtual {p0, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v3
.line 267
nop
.line 269
.local v3, "bitstream_restriction_flag":Z
if-eqz v3, :cond_179
.line 270
new-instance v4, Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;
invoke-direct {v4}, Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;-><init>()V
iput-object v4, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->bitstreamRestriction:Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;
.line 271
iget-object v4, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->bitstreamRestriction:Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;
.line 272
const-string v5, "VUI: motion_vectors_over_pic_boundaries_flag"
invoke-virtual {p0, v5}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v5
.line 271
iput-boolean v5, v4, Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;->motion_vectors_over_pic_boundaries_flag:Z
.line 273
iget-object v4, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->bitstreamRestriction:Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;
.line 274
const-string v5, "VUI max_bytes_per_pic_denom"
invoke-virtual {p0, v5}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v5
.line 273
iput v5, v4, Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;->max_bytes_per_pic_denom:I
.line 275
iget-object v4, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->bitstreamRestriction:Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;
.line 276
const-string v5, "VUI max_bits_per_mb_denom"
invoke-virtual {p0, v5}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v5
.line 275
iput v5, v4, Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;->max_bits_per_mb_denom:I
.line 277
iget-object v4, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->bitstreamRestriction:Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;
.line 278
const-string v5, "VUI log2_max_mv_length_horizontal"
invoke-virtual {p0, v5}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v5
.line 277
iput v5, v4, Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;->log2_max_mv_length_horizontal:I
.line 279
iget-object v4, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->bitstreamRestriction:Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;
.line 280
const-string v5, "VUI log2_max_mv_length_vertical"
invoke-virtual {p0, v5}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v5
.line 279
iput v5, v4, Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;->log2_max_mv_length_vertical:I
.line 281
iget-object v4, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->bitstreamRestriction:Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;
.line 282
const-string v5, "VUI num_reorder_frames"
invoke-virtual {p0, v5}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v5
.line 281
iput v5, v4, Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;->num_reorder_frames:I
.line 283
iget-object v4, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->bitstreamRestriction:Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;
.line 284
const-string v5, "VUI max_dec_frame_buffering"
invoke-virtual {p0, v5}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v5
.line 283
iput v5, v4, Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;->max_dec_frame_buffering:I
.line 287
:cond_179
return-object v0
.end method
.method public static read(Ljava/io/InputStream;)Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;
.registers 7
.param p0, "is" # Ljava/io/InputStream;
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 81
new-instance v0, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;
invoke-direct {v0, p0}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;-><init>(Ljava/io/InputStream;)V
.line 82
.local v0, "reader":Lcom/googlecode/mp4parser/h264/read/CAVLCReader;
new-instance v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;
invoke-direct {v1}, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;-><init>()V
.line 84
.local v1, "sps":Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;
const/16 v2, 0x8
const-string v3, "SPS: profile_idc"
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
iput v4, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->profile_idc:I
.line 85
nop
.line 86
const-string v3, "SPS: constraint_set_0_flag"
invoke-virtual {v0, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v3
.line 85
iput-boolean v3, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->constraint_set_0_flag:Z
.line 87
nop
.line 88
const-string v3, "SPS: constraint_set_1_flag"
invoke-virtual {v0, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v3
.line 87
iput-boolean v3, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->constraint_set_1_flag:Z
.line 89
nop
.line 90
const-string v3, "SPS: constraint_set_2_flag"
invoke-virtual {v0, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v3
.line 89
iput-boolean v3, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->constraint_set_2_flag:Z
.line 91
nop
.line 92
const-string v3, "SPS: constraint_set_3_flag"
invoke-virtual {v0, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v3
.line 91
iput-boolean v3, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->constraint_set_3_flag:Z
.line 93
nop
.line 94
const-string v3, "SPS: constraint_set_4_flag"
invoke-virtual {v0, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v3
.line 93
iput-boolean v3, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->constraint_set_4_flag:Z
.line 95
nop
.line 96
const-string v3, "SPS: constraint_set_5_flag"
invoke-virtual {v0, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v3
.line 95
iput-boolean v3, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->constraint_set_5_flag:Z
.line 98
const/4 v3, 0x2
const-string v4, "SPS: reserved_zero_2bits"
invoke-virtual {v0, v3, v4}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
move-result-wide v3
iput-wide v3, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->reserved_zero_2bits:J
.line 99
const-string v3, "SPS: level_idc"
invoke-virtual {v0, v2, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
move-result-wide v2
long-to-int v3, v2
iput v3, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->level_idc:I
.line 100
const-string v2, "SPS: seq_parameter_set_id"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v2
iput v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->seq_parameter_set_id:I
.line 102
iget v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->profile_idc:I
const/16 v3, 0x64
if-eq v2, v3, :cond_7d
const/16 v3, 0x6e
if-eq v2, v3, :cond_7d
.line 103
const/16 v3, 0x7a
if-eq v2, v3, :cond_7d
const/16 v3, 0x90
if-ne v2, v3, :cond_78
goto :goto_7d
.line 122
:cond_78
sget-object v2, Lcom/googlecode/mp4parser/h264/model/ChromaFormat;->YUV_420:Lcom/googlecode/mp4parser/h264/model/ChromaFormat;
iput-object v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->chroma_format_idc:Lcom/googlecode/mp4parser/h264/model/ChromaFormat;
goto :goto_bf
.line 104
:cond_7d
:goto_7d
nop
.line 105
const-string v2, "SPS: chroma_format_idc"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v2
.line 104
invoke-static {v2}, Lcom/googlecode/mp4parser/h264/model/ChromaFormat;->fromId(I)Lcom/googlecode/mp4parser/h264/model/ChromaFormat;
move-result-object v2
iput-object v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->chroma_format_idc:Lcom/googlecode/mp4parser/h264/model/ChromaFormat;
.line 106
sget-object v3, Lcom/googlecode/mp4parser/h264/model/ChromaFormat;->YUV_444:Lcom/googlecode/mp4parser/h264/model/ChromaFormat;
if-ne v2, v3, :cond_97
.line 107
nop
.line 108
const-string v2, "SPS: residual_color_transform_flag"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v2
.line 107
iput-boolean v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->residual_color_transform_flag:Z
.line 110
:cond_97
nop
.line 111
const-string v2, "SPS: bit_depth_luma_minus8"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v2
.line 110
iput v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->bit_depth_luma_minus8:I
.line 112
nop
.line 113
const-string v2, "SPS: bit_depth_chroma_minus8"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v2
.line 112
iput v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->bit_depth_chroma_minus8:I
.line 114
nop
.line 115
const-string v2, "SPS: qpprime_y_zero_transform_bypass_flag"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v2
.line 114
iput-boolean v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->qpprime_y_zero_transform_bypass_flag:Z
.line 116
nop
.line 117
const-string v2, "SPS: seq_scaling_matrix_present_lag"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v2
.line 116
nop
.line 118
.local v2, "seqScalingMatrixPresent":Z
if-eqz v2, :cond_bf
.line 119
invoke-static {v0, v1}, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->readScalingListMatrix(Lcom/googlecode/mp4parser/h264/read/CAVLCReader;Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;)V
.line 124
.end local v2 # "seqScalingMatrixPresent":Z
:cond_bf
:goto_bf
nop
.line 125
const-string v2, "SPS: log2_max_frame_num_minus4"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v2
.line 124
iput v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->log2_max_frame_num_minus4:I
.line 126
const-string v2, "SPS: pic_order_cnt_type"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v2
iput v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->pic_order_cnt_type:I
.line 127
if-nez v2, :cond_dc
.line 128
nop
.line 129
const-string v2, "SPS: log2_max_pic_order_cnt_lsb_minus4"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v2
.line 128
iput v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->log2_max_pic_order_cnt_lsb_minus4:I
goto :goto_12b
.line 130
:cond_dc
const/4 v3, 0x1
if-ne v2, v3, :cond_12b
.line 131
nop
.line 132
const-string v2, "SPS: delta_pic_order_always_zero_flag"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v2
.line 131
iput-boolean v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->delta_pic_order_always_zero_flag:Z
.line 133
nop
.line 134
const-string v2, "SPS: offset_for_non_ref_pic"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readSE(Ljava/lang/String;)I
move-result v2
.line 133
iput v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->offset_for_non_ref_pic:I
.line 135
nop
.line 136
const-string v2, "SPS: offset_for_top_to_bottom_field"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readSE(Ljava/lang/String;)I
move-result v2
.line 135
iput v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->offset_for_top_to_bottom_field:I
.line 137
nop
.line 138
const-string v2, "SPS: num_ref_frames_in_pic_order_cnt_cycle"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v2
.line 137
iput v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->num_ref_frames_in_pic_order_cnt_cycle:I
.line 139
new-array v2, v2, [I
iput-object v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->offsetForRefFrame:[I
.line 140
const/4 v2, 0x0
.local v2, "i":I
:goto_108
iget v3, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->num_ref_frames_in_pic_order_cnt_cycle:I
if-lt v2, v3, :cond_10d
goto :goto_12c
.line 141
:cond_10d
iget-object v3, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->offsetForRefFrame:[I
.line 142
new-instance v4, Ljava/lang/StringBuilder;
const-string v5, "SPS: offsetForRefFrame ["
invoke-direct {v4, v5}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v5, "]"
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
invoke-virtual {v0, v4}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readSE(Ljava/lang/String;)I
move-result v4
.line 141
aput v4, v3, v2
.line 140
add-int/lit8 v2, v2, 0x1
goto :goto_108
.line 130
.end local v2 # "i":I
:cond_12b
:goto_12b
nop
.line 145
:goto_12c
const-string v2, "SPS: num_ref_frames"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v2
iput v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->num_ref_frames:I
.line 146
nop
.line 147
const-string v2, "SPS: gaps_in_frame_num_value_allowed_flag"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v2
.line 146
iput-boolean v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->gaps_in_frame_num_value_allowed_flag:Z
.line 148
nop
.line 149
const-string v2, "SPS: pic_width_in_mbs_minus1"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v2
.line 148
iput v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->pic_width_in_mbs_minus1:I
.line 150
nop
.line 151
const-string v2, "SPS: pic_height_in_map_units_minus1"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v2
.line 150
iput v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->pic_height_in_map_units_minus1:I
.line 152
const-string v2, "SPS: frame_mbs_only_flag"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v2
iput-boolean v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_mbs_only_flag:Z
.line 153
if-nez v2, :cond_162
.line 154
nop
.line 155
const-string v2, "SPS: mb_adaptive_frame_field_flag"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v2
.line 154
iput-boolean v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->mb_adaptive_frame_field_flag:Z
.line 157
:cond_162
nop
.line 158
const-string v2, "SPS: direct_8x8_inference_flag"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v2
.line 157
iput-boolean v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->direct_8x8_inference_flag:Z
.line 159
const-string v2, "SPS: frame_cropping_flag"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v2
iput-boolean v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_cropping_flag:Z
.line 160
if-eqz v2, :cond_199
.line 161
nop
.line 162
const-string v2, "SPS: frame_crop_left_offset"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v2
.line 161
iput v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_crop_left_offset:I
.line 163
nop
.line 164
const-string v2, "SPS: frame_crop_right_offset"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v2
.line 163
iput v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_crop_right_offset:I
.line 165
nop
.line 166
const-string v2, "SPS: frame_crop_top_offset"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v2
.line 165
iput v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_crop_top_offset:I
.line 167
nop
.line 168
const-string v2, "SPS: frame_crop_bottom_offset"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v2
.line 167
iput v2, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_crop_bottom_offset:I
.line 170
:cond_199
nop
.line 171
const-string v2, "SPS: vui_parameters_present_flag"
invoke-virtual {v0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v2
.line 170
nop
.line 172
.local v2, "vui_parameters_present_flag":Z
if-eqz v2, :cond_1a9
.line 173
invoke-static {v0}, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->ReadVUIParameters(Lcom/googlecode/mp4parser/h264/read/CAVLCReader;)Lcom/googlecode/mp4parser/h264/model/VUIParameters;
move-result-object v3
iput-object v3, v1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->vuiParams:Lcom/googlecode/mp4parser/h264/model/VUIParameters;
.line 175
:cond_1a9
invoke-virtual {v0}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readTrailingBits()V
.line 177
return-object v1
.end method
.method private static readHRDParameters(Lcom/googlecode/mp4parser/h264/read/CAVLCReader;)Lcom/googlecode/mp4parser/h264/model/HRDParameters;
.registers 5
.param p0, "reader" # Lcom/googlecode/mp4parser/h264/read/CAVLCReader;
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 292
new-instance v0, Lcom/googlecode/mp4parser/h264/model/HRDParameters;
invoke-direct {v0}, Lcom/googlecode/mp4parser/h264/model/HRDParameters;-><init>()V
.line 293
.local v0, "hrd":Lcom/googlecode/mp4parser/h264/model/HRDParameters;
const-string v1, "SPS: cpb_cnt_minus1"
invoke-virtual {p0, v1}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v1
iput v1, v0, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->cpb_cnt_minus1:I
.line 294
const/4 v1, 0x4
const-string v2, "HRD: bit_rate_scale"
invoke-virtual {p0, v1, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
move-result-wide v2
long-to-int v3, v2
iput v3, v0, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->bit_rate_scale:I
.line 295
const-string v2, "HRD: cpb_size_scale"
invoke-virtual {p0, v1, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
move-result-wide v1
long-to-int v2, v1
iput v2, v0, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->cpb_size_scale:I
.line 296
iget v1, v0, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->cpb_cnt_minus1:I
add-int/lit8 v1, v1, 0x1
new-array v1, v1, [I
iput-object v1, v0, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->bit_rate_value_minus1:[I
.line 297
iget v1, v0, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->cpb_cnt_minus1:I
add-int/lit8 v1, v1, 0x1
new-array v1, v1, [I
iput-object v1, v0, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->cpb_size_value_minus1:[I
.line 298
iget v1, v0, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->cpb_cnt_minus1:I
add-int/lit8 v1, v1, 0x1
new-array v1, v1, [Z
iput-object v1, v0, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->cbr_flag:[Z
.line 300
const/4 v1, 0x0
.local v1, "SchedSelIdx":I
:goto_39
iget v2, v0, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->cpb_cnt_minus1:I
if-le v1, v2, :cond_6b
.line 307
.end local v1 # "SchedSelIdx":I
nop
.line 308
nop
.line 307
const/4 v1, 0x5
const-string v2, "HRD: initial_cpb_removal_delay_length_minus1"
invoke-virtual {p0, v1, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
move-result-wide v2
long-to-int v3, v2
iput v3, v0, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->initial_cpb_removal_delay_length_minus1:I
.line 309
nop
.line 310
nop
.line 309
const-string v2, "HRD: cpb_removal_delay_length_minus1"
invoke-virtual {p0, v1, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
move-result-wide v2
long-to-int v3, v2
iput v3, v0, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->cpb_removal_delay_length_minus1:I
.line 311
nop
.line 312
nop
.line 311
const-string v2, "HRD: dpb_output_delay_length_minus1"
invoke-virtual {p0, v1, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
move-result-wide v2
long-to-int v3, v2
iput v3, v0, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->dpb_output_delay_length_minus1:I
.line 313
nop
.line 314
nop
.line 313
const-string v2, "HRD: time_offset_length"
invoke-virtual {p0, v1, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readNBit(ILjava/lang/String;)J
move-result-wide v1
long-to-int v2, v1
iput v2, v0, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->time_offset_length:I
.line 315
return-object v0
.line 301
.restart local v1 # "SchedSelIdx":I
:cond_6b
iget-object v2, v0, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->bit_rate_value_minus1:[I
.line 302
const-string v3, "HRD: bit_rate_value_minus1"
invoke-virtual {p0, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v3
.line 301
aput v3, v2, v1
.line 303
iget-object v2, v0, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->cpb_size_value_minus1:[I
.line 304
const-string v3, "HRD: cpb_size_value_minus1"
invoke-virtual {p0, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readUE(Ljava/lang/String;)I
move-result v3
.line 303
aput v3, v2, v1
.line 305
iget-object v2, v0, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->cbr_flag:[Z
const-string v3, "HRD: cbr_flag"
invoke-virtual {p0, v3}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v3
aput-boolean v3, v2, v1
.line 300
add-int/lit8 v1, v1, 0x1
goto :goto_39
.end method
.method private static readScalingListMatrix(Lcom/googlecode/mp4parser/h264/read/CAVLCReader;Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;)V
.registers 7
.param p0, "reader" # Lcom/googlecode/mp4parser/h264/read/CAVLCReader;
.param p1, "sps" # Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 182
new-instance v0, Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;
invoke-direct {v0}, Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;-><init>()V
iput-object v0, p1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->scalingMatrix:Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;
.line 183
const/4 v0, 0x0
.local v0, "i":I
:goto_8
const/16 v1, 0x8
if-lt v0, v1, :cond_d
.line 198
.end local v0 # "i":I
return-void
.line 184
.restart local v0 # "i":I
:cond_d
nop
.line 185
const-string v2, "SPS: seqScalingListPresentFlag"
invoke-virtual {p0, v2}, Lcom/googlecode/mp4parser/h264/read/CAVLCReader;->readBool(Ljava/lang/String;)Z
move-result v2
.line 184
nop
.line 186
.local v2, "seqScalingListPresentFlag":Z
if-eqz v2, :cond_41
.line 187
iget-object v3, p1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->scalingMatrix:Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;
new-array v4, v1, [Lcom/googlecode/mp4parser/h264/model/ScalingList;
iput-object v4, v3, Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;->ScalingList4x4:[Lcom/googlecode/mp4parser/h264/model/ScalingList;
.line 188
iget-object v3, p1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->scalingMatrix:Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;
new-array v1, v1, [Lcom/googlecode/mp4parser/h264/model/ScalingList;
iput-object v1, v3, Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;->ScalingList8x8:[Lcom/googlecode/mp4parser/h264/model/ScalingList;
.line 189
const/4 v1, 0x6
if-ge v0, v1, :cond_33
.line 190
iget-object v1, p1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->scalingMatrix:Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;
iget-object v1, v1, Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;->ScalingList4x4:[Lcom/googlecode/mp4parser/h264/model/ScalingList;
.line 191
const/16 v3, 0x10
.line 190
invoke-static {p0, v3}, Lcom/googlecode/mp4parser/h264/model/ScalingList;->read(Lcom/googlecode/mp4parser/h264/read/CAVLCReader;I)Lcom/googlecode/mp4parser/h264/model/ScalingList;
move-result-object v3
aput-object v3, v1, v0
.line 192
goto :goto_41
.line 193
:cond_33
iget-object v1, p1, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->scalingMatrix:Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;
iget-object v1, v1, Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;->ScalingList8x8:[Lcom/googlecode/mp4parser/h264/model/ScalingList;
add-int/lit8 v3, v0, -0x6
.line 194
const/16 v4, 0x40
.line 193
invoke-static {p0, v4}, Lcom/googlecode/mp4parser/h264/model/ScalingList;->read(Lcom/googlecode/mp4parser/h264/read/CAVLCReader;I)Lcom/googlecode/mp4parser/h264/model/ScalingList;
move-result-object v4
aput-object v4, v1, v3
.line 183
.end local v2 # "seqScalingListPresentFlag":Z
:cond_41
:goto_41
add-int/lit8 v0, v0, 0x1
goto :goto_8
.end method
.method private writeHRDParameters(Lcom/googlecode/mp4parser/h264/model/HRDParameters;Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;)V
.registers 7
.param p1, "hrd" # Lcom/googlecode/mp4parser/h264/model/HRDParameters;
.param p2, "writer" # Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 503
iget v0, p1, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->cpb_cnt_minus1:I
const-string v1, "HRD: cpb_cnt_minus1"
invoke-virtual {p2, v0, v1}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 504
iget v0, p1, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->bit_rate_scale:I
int-to-long v0, v0
const/4 v2, 0x4
const-string v3, "HRD: bit_rate_scale"
invoke-virtual {p2, v0, v1, v2, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeNBit(JILjava/lang/String;)V
.line 505
iget v0, p1, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->cpb_size_scale:I
int-to-long v0, v0
const-string v3, "HRD: cpb_size_scale"
invoke-virtual {p2, v0, v1, v2, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeNBit(JILjava/lang/String;)V
.line 507
const/4 v0, 0x0
.local v0, "SchedSelIdx":I
:goto_19
iget v1, p1, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->cpb_cnt_minus1:I
if-le v0, v1, :cond_42
.line 512
.end local v0 # "SchedSelIdx":I
iget v0, p1, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->initial_cpb_removal_delay_length_minus1:I
int-to-long v0, v0
.line 513
nop
.line 512
const/4 v2, 0x5
const-string v3, "HRD: initial_cpb_removal_delay_length_minus1"
invoke-virtual {p2, v0, v1, v2, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeNBit(JILjava/lang/String;)V
.line 514
iget v0, p1, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->cpb_removal_delay_length_minus1:I
int-to-long v0, v0
.line 515
nop
.line 514
const-string v3, "HRD: cpb_removal_delay_length_minus1"
invoke-virtual {p2, v0, v1, v2, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeNBit(JILjava/lang/String;)V
.line 516
iget v0, p1, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->dpb_output_delay_length_minus1:I
int-to-long v0, v0
.line 517
nop
.line 516
const-string v3, "HRD: dpb_output_delay_length_minus1"
invoke-virtual {p2, v0, v1, v2, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeNBit(JILjava/lang/String;)V
.line 518
iget v0, p1, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->time_offset_length:I
int-to-long v0, v0
const-string v3, "HRD: time_offset_length"
invoke-virtual {p2, v0, v1, v2, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeNBit(JILjava/lang/String;)V
.line 519
return-void
.line 508
.restart local v0 # "SchedSelIdx":I
:cond_42
iget-object v1, p1, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->bit_rate_value_minus1:[I
aget v1, v1, v0
const-string v2, "HRD: "
invoke-virtual {p2, v1, v2}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 509
iget-object v1, p1, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->cpb_size_value_minus1:[I
aget v1, v1, v0
invoke-virtual {p2, v1, v2}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 510
iget-object v1, p1, Lcom/googlecode/mp4parser/h264/model/HRDParameters;->cbr_flag:[Z
aget-boolean v1, v1, v0
invoke-virtual {p2, v1, v2}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 507
add-int/lit8 v0, v0, 0x1
goto :goto_19
.end method
.method private writeVUIParameters(Lcom/googlecode/mp4parser/h264/model/VUIParameters;Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;)V
.registers 8
.param p1, "vuip" # Lcom/googlecode/mp4parser/h264/model/VUIParameters;
.param p2, "writer" # Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 411
iget-boolean v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->aspect_ratio_info_present_flag:Z
.line 412
nop
.line 411
const-string v1, "VUI: aspect_ratio_info_present_flag"
invoke-virtual {p2, v0, v1}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 413
iget-boolean v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->aspect_ratio_info_present_flag:Z
const/16 v1, 0x8
if-eqz v0, :cond_33
.line 414
iget-object v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->aspect_ratio:Lcom/googlecode/mp4parser/h264/model/AspectRatio;
invoke-virtual {v0}, Lcom/googlecode/mp4parser/h264/model/AspectRatio;->getValue()I
move-result v0
int-to-long v2, v0
.line 415
nop
.line 414
const-string v0, "VUI: aspect_ratio"
invoke-virtual {p2, v2, v3, v1, v0}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeNBit(JILjava/lang/String;)V
.line 416
iget-object v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->aspect_ratio:Lcom/googlecode/mp4parser/h264/model/AspectRatio;
sget-object v2, Lcom/googlecode/mp4parser/h264/model/AspectRatio;->Extended_SAR:Lcom/googlecode/mp4parser/h264/model/AspectRatio;
if-ne v0, v2, :cond_33
.line 417
iget v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->sar_width:I
int-to-long v2, v0
const/16 v0, 0x10
const-string v4, "VUI: sar_width"
invoke-virtual {p2, v2, v3, v0, v4}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeNBit(JILjava/lang/String;)V
.line 418
iget v2, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->sar_height:I
int-to-long v2, v2
const-string v4, "VUI: sar_height"
invoke-virtual {p2, v2, v3, v0, v4}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeNBit(JILjava/lang/String;)V
.line 421
:cond_33
iget-boolean v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->overscan_info_present_flag:Z
.line 422
nop
.line 421
const-string v2, "VUI: overscan_info_present_flag"
invoke-virtual {p2, v0, v2}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 423
iget-boolean v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->overscan_info_present_flag:Z
if-eqz v0, :cond_47
.line 424
iget-boolean v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->overscan_appropriate_flag:Z
.line 425
nop
.line 424
const-string v2, "VUI: overscan_appropriate_flag"
invoke-virtual {p2, v0, v2}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 427
:cond_47
iget-boolean v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->video_signal_type_present_flag:Z
.line 428
nop
.line 427
const-string v2, "VUI: video_signal_type_present_flag"
invoke-virtual {p2, v0, v2}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 429
iget-boolean v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->video_signal_type_present_flag:Z
if-eqz v0, :cond_8b
.line 430
iget v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->video_format:I
int-to-long v2, v0
const/4 v0, 0x3
const-string v4, "VUI: video_format"
invoke-virtual {p2, v2, v3, v0, v4}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeNBit(JILjava/lang/String;)V
.line 431
iget-boolean v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->video_full_range_flag:Z
.line 432
nop
.line 431
const-string v2, "VUI: video_full_range_flag"
invoke-virtual {p2, v0, v2}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 433
iget-boolean v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->colour_description_present_flag:Z
.line 434
nop
.line 433
const-string v2, "VUI: colour_description_present_flag"
invoke-virtual {p2, v0, v2}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 435
iget-boolean v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->colour_description_present_flag:Z
if-eqz v0, :cond_8b
.line 436
iget v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->colour_primaries:I
int-to-long v2, v0
.line 437
nop
.line 436
const-string v0, "VUI: colour_primaries"
invoke-virtual {p2, v2, v3, v1, v0}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeNBit(JILjava/lang/String;)V
.line 438
iget v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->transfer_characteristics:I
int-to-long v2, v0
.line 439
nop
.line 438
const-string v0, "VUI: transfer_characteristics"
invoke-virtual {p2, v2, v3, v1, v0}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeNBit(JILjava/lang/String;)V
.line 440
iget v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->matrix_coefficients:I
int-to-long v2, v0
.line 441
nop
.line 440
const-string v0, "VUI: matrix_coefficients"
invoke-virtual {p2, v2, v3, v1, v0}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeNBit(JILjava/lang/String;)V
.line 444
:cond_8b
iget-boolean v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->chroma_loc_info_present_flag:Z
.line 445
nop
.line 444
const-string v1, "VUI: chroma_loc_info_present_flag"
invoke-virtual {p2, v0, v1}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 446
iget-boolean v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->chroma_loc_info_present_flag:Z
if-eqz v0, :cond_a7
.line 447
iget v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->chroma_sample_loc_type_top_field:I
.line 448
nop
.line 447
const-string v1, "VUI: chroma_sample_loc_type_top_field"
invoke-virtual {p2, v0, v1}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 449
iget v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->chroma_sample_loc_type_bottom_field:I
.line 450
nop
.line 449
const-string v1, "VUI: chroma_sample_loc_type_bottom_field"
invoke-virtual {p2, v0, v1}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 452
:cond_a7
iget-boolean v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->timing_info_present_flag:Z
.line 453
nop
.line 452
const-string v1, "VUI: timing_info_present_flag"
invoke-virtual {p2, v0, v1}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 454
iget-boolean v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->timing_info_present_flag:Z
if-eqz v0, :cond_ce
.line 455
iget v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->num_units_in_tick:I
int-to-long v0, v0
.line 456
nop
.line 455
const/16 v2, 0x20
const-string v3, "VUI: num_units_in_tick"
invoke-virtual {p2, v0, v1, v2, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeNBit(JILjava/lang/String;)V
.line 457
iget v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->time_scale:I
int-to-long v0, v0
const-string v3, "VUI: time_scale"
invoke-virtual {p2, v0, v1, v2, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeNBit(JILjava/lang/String;)V
.line 458
iget-boolean v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->fixed_frame_rate_flag:Z
.line 459
nop
.line 458
const-string v1, "VUI: fixed_frame_rate_flag"
invoke-virtual {p2, v0, v1}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 461
:cond_ce
iget-object v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->nalHRDParams:Lcom/googlecode/mp4parser/h264/model/HRDParameters;
const/4 v1, 0x1
const/4 v2, 0x0
if-eqz v0, :cond_d6
const/4 v0, 0x1
goto :goto_d7
:cond_d6
const/4 v0, 0x0
:goto_d7
const-string v3, "VUI: "
invoke-virtual {p2, v0, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 462
iget-object v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->nalHRDParams:Lcom/googlecode/mp4parser/h264/model/HRDParameters;
if-eqz v0, :cond_e5
.line 463
iget-object v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->nalHRDParams:Lcom/googlecode/mp4parser/h264/model/HRDParameters;
invoke-direct {p0, v0, p2}, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->writeHRDParameters(Lcom/googlecode/mp4parser/h264/model/HRDParameters;Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;)V
.line 465
:cond_e5
iget-object v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->vclHRDParams:Lcom/googlecode/mp4parser/h264/model/HRDParameters;
if-eqz v0, :cond_eb
const/4 v0, 0x1
goto :goto_ec
:cond_eb
const/4 v0, 0x0
:goto_ec
invoke-virtual {p2, v0, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 466
iget-object v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->vclHRDParams:Lcom/googlecode/mp4parser/h264/model/HRDParameters;
if-eqz v0, :cond_f8
.line 467
iget-object v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->vclHRDParams:Lcom/googlecode/mp4parser/h264/model/HRDParameters;
invoke-direct {p0, v0, p2}, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->writeHRDParameters(Lcom/googlecode/mp4parser/h264/model/HRDParameters;Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;)V
.line 470
:cond_f8
iget-object v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->nalHRDParams:Lcom/googlecode/mp4parser/h264/model/HRDParameters;
if-nez v0, :cond_100
iget-object v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->vclHRDParams:Lcom/googlecode/mp4parser/h264/model/HRDParameters;
if-eqz v0, :cond_109
.line 471
:cond_100
nop
.line 472
iget-boolean v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->low_delay_hrd_flag:Z
.line 473
nop
.line 472
const-string v4, "VUI: low_delay_hrd_flag"
invoke-virtual {p2, v0, v4}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 475
:cond_109
iget-boolean v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->pic_struct_present_flag:Z
.line 476
nop
.line 475
const-string v4, "VUI: pic_struct_present_flag"
invoke-virtual {p2, v0, v4}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 477
iget-object v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->bitstreamRestriction:Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;
if-eqz v0, :cond_116
goto :goto_117
:cond_116
const/4 v1, 0x0
:goto_117
invoke-virtual {p2, v1, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 478
iget-object v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->bitstreamRestriction:Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;
if-eqz v0, :cond_167
.line 479
nop
.line 481
iget-object v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->bitstreamRestriction:Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;
iget-boolean v0, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;->motion_vectors_over_pic_boundaries_flag:Z
.line 482
nop
.line 480
const-string v1, "VUI: motion_vectors_over_pic_boundaries_flag"
invoke-virtual {p2, v0, v1}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 483
iget-object v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->bitstreamRestriction:Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;
iget v0, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;->max_bytes_per_pic_denom:I
.line 484
nop
.line 483
const-string v1, "VUI: max_bytes_per_pic_denom"
invoke-virtual {p2, v0, v1}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 485
iget-object v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->bitstreamRestriction:Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;
iget v0, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;->max_bits_per_mb_denom:I
.line 486
nop
.line 485
const-string v1, "VUI: max_bits_per_mb_denom"
invoke-virtual {p2, v0, v1}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 487
nop
.line 488
iget-object v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->bitstreamRestriction:Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;
iget v0, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;->log2_max_mv_length_horizontal:I
.line 489
nop
.line 487
const-string v1, "VUI: log2_max_mv_length_horizontal"
invoke-virtual {p2, v0, v1}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 490
nop
.line 491
iget-object v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->bitstreamRestriction:Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;
iget v0, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;->log2_max_mv_length_vertical:I
.line 492
nop
.line 490
const-string v1, "VUI: log2_max_mv_length_vertical"
invoke-virtual {p2, v0, v1}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 493
iget-object v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->bitstreamRestriction:Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;
iget v0, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;->num_reorder_frames:I
.line 494
nop
.line 493
const-string v1, "VUI: num_reorder_frames"
invoke-virtual {p2, v0, v1}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 495
iget-object v0, p1, Lcom/googlecode/mp4parser/h264/model/VUIParameters;->bitstreamRestriction:Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;
iget v0, v0, Lcom/googlecode/mp4parser/h264/model/VUIParameters$BitstreamRestriction;->max_dec_frame_buffering:I
.line 496
nop
.line 495
const-string v1, "VUI: max_dec_frame_buffering"
invoke-virtual {p2, v0, v1}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 499
:cond_167
return-void
.end method
# virtual methods
.method public toString()Ljava/lang/String;
.registers 3
.line 523
new-instance v0, Ljava/lang/StringBuilder;
const-string v1, "SeqParameterSet{ \n pic_order_cnt_type="
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
.line 524
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->pic_order_cnt_type:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 525
const-string v1, ", \n field_pic_flag="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->field_pic_flag:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
.line 526
const-string v1, ", \n delta_pic_order_always_zero_flag="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->delta_pic_order_always_zero_flag:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
.line 527
const-string v1, ", \n weighted_pred_flag="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->weighted_pred_flag:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
.line 528
const-string v1, ", \n weighted_bipred_idc="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->weighted_bipred_idc:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 529
const-string v1, ", \n entropy_coding_mode_flag="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->entropy_coding_mode_flag:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
.line 530
const-string v1, ", \n mb_adaptive_frame_field_flag="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->mb_adaptive_frame_field_flag:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
.line 531
const-string v1, ", \n direct_8x8_inference_flag="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->direct_8x8_inference_flag:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
.line 532
const-string v1, ", \n chroma_format_idc="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->chroma_format_idc:Lcom/googlecode/mp4parser/h264/model/ChromaFormat;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
.line 533
const-string v1, ", \n log2_max_frame_num_minus4="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->log2_max_frame_num_minus4:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 534
const-string v1, ", \n log2_max_pic_order_cnt_lsb_minus4="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->log2_max_pic_order_cnt_lsb_minus4:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 535
const-string v1, ", \n pic_height_in_map_units_minus1="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->pic_height_in_map_units_minus1:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 536
const-string v1, ", \n pic_width_in_mbs_minus1="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->pic_width_in_mbs_minus1:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 537
const-string v1, ", \n bit_depth_luma_minus8="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->bit_depth_luma_minus8:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 538
const-string v1, ", \n bit_depth_chroma_minus8="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->bit_depth_chroma_minus8:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 539
const-string v1, ", \n qpprime_y_zero_transform_bypass_flag="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->qpprime_y_zero_transform_bypass_flag:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
.line 540
const-string v1, ", \n profile_idc="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->profile_idc:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 541
const-string v1, ", \n constraint_set_0_flag="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->constraint_set_0_flag:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
.line 542
const-string v1, ", \n constraint_set_1_flag="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->constraint_set_1_flag:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
.line 543
const-string v1, ", \n constraint_set_2_flag="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->constraint_set_2_flag:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
.line 544
const-string v1, ", \n constraint_set_3_flag="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->constraint_set_3_flag:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
.line 545
const-string v1, ", \n constraint_set_4_flag="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->constraint_set_4_flag:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
.line 546
const-string v1, ", \n constraint_set_5_flag="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->constraint_set_5_flag:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
.line 547
const-string v1, ", \n level_idc="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->level_idc:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 548
const-string v1, ", \n seq_parameter_set_id="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->seq_parameter_set_id:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 549
const-string v1, ", \n residual_color_transform_flag="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->residual_color_transform_flag:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
.line 550
const-string v1, ", \n offset_for_non_ref_pic="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->offset_for_non_ref_pic:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 551
const-string v1, ", \n offset_for_top_to_bottom_field="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->offset_for_top_to_bottom_field:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 552
const-string v1, ", \n num_ref_frames="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->num_ref_frames:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 553
const-string v1, ", \n gaps_in_frame_num_value_allowed_flag="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->gaps_in_frame_num_value_allowed_flag:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
.line 554
const-string v1, ", \n frame_mbs_only_flag="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_mbs_only_flag:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
.line 555
const-string v1, ", \n frame_cropping_flag="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_cropping_flag:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
.line 556
const-string v1, ", \n frame_crop_left_offset="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_crop_left_offset:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 557
const-string v1, ", \n frame_crop_right_offset="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_crop_right_offset:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 558
const-string v1, ", \n frame_crop_top_offset="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_crop_top_offset:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 559
const-string v1, ", \n frame_crop_bottom_offset="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_crop_bottom_offset:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 560
const-string v1, ", \n offsetForRefFrame="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->offsetForRefFrame:[I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
.line 561
const-string v1, ", \n vuiParams="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->vuiParams:Lcom/googlecode/mp4parser/h264/model/VUIParameters;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
.line 562
const-string v1, ", \n scalingMatrix="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->scalingMatrix:Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
.line 563
const-string v1, ", \n num_ref_frames_in_pic_order_cnt_cycle="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->num_ref_frames_in_pic_order_cnt_cycle:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 564
const/16 v1, 0x7d
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
.line 523
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public write(Ljava/io/OutputStream;)V
.registers 10
.param p1, "out" # Ljava/io/OutputStream;
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 319
new-instance v0, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;
invoke-direct {v0, p1}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;-><init>(Ljava/io/OutputStream;)V
.line 321
.local v0, "writer":Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->profile_idc:I
int-to-long v1, v1
const/16 v3, 0x8
const-string v4, "SPS: profile_idc"
invoke-virtual {v0, v1, v2, v3, v4}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeNBit(JILjava/lang/String;)V
.line 322
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->constraint_set_0_flag:Z
const-string v2, "SPS: constraint_set_0_flag"
invoke-virtual {v0, v1, v2}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 323
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->constraint_set_1_flag:Z
const-string v2, "SPS: constraint_set_1_flag"
invoke-virtual {v0, v1, v2}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 324
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->constraint_set_2_flag:Z
const-string v2, "SPS: constraint_set_2_flag"
invoke-virtual {v0, v1, v2}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 325
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->constraint_set_3_flag:Z
const-string v2, "SPS: constraint_set_3_flag"
invoke-virtual {v0, v1, v2}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 326
const-wide/16 v1, 0x0
const/4 v4, 0x4
const-string v5, "SPS: reserved"
invoke-virtual {v0, v1, v2, v4, v5}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeNBit(JILjava/lang/String;)V
.line 327
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->level_idc:I
int-to-long v1, v1
const-string v4, "SPS: level_idc"
invoke-virtual {v0, v1, v2, v3, v4}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeNBit(JILjava/lang/String;)V
.line 328
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->seq_parameter_set_id:I
const-string v2, "SPS: seq_parameter_set_id"
invoke-virtual {v0, v1, v2}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 330
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->profile_idc:I
const/4 v2, 0x0
const/4 v4, 0x1
const-string v5, "SPS: "
const/16 v6, 0x64
if-eq v1, v6, :cond_58
const/16 v6, 0x6e
if-eq v1, v6, :cond_58
const/16 v6, 0x7a
if-eq v1, v6, :cond_58
.line 331
const/16 v6, 0x90
if-ne v1, v6, :cond_e4
.line 332
:cond_58
iget-object v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->chroma_format_idc:Lcom/googlecode/mp4parser/h264/model/ChromaFormat;
invoke-virtual {v1}, Lcom/googlecode/mp4parser/h264/model/ChromaFormat;->getId()I
move-result v1
const-string v6, "SPS: chroma_format_idc"
invoke-virtual {v0, v1, v6}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 333
iget-object v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->chroma_format_idc:Lcom/googlecode/mp4parser/h264/model/ChromaFormat;
sget-object v6, Lcom/googlecode/mp4parser/h264/model/ChromaFormat;->YUV_444:Lcom/googlecode/mp4parser/h264/model/ChromaFormat;
if-ne v1, v6, :cond_71
.line 334
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->residual_color_transform_flag:Z
.line 335
nop
.line 334
const-string v6, "SPS: residual_color_transform_flag"
invoke-virtual {v0, v1, v6}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 337
:cond_71
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->bit_depth_luma_minus8:I
invoke-virtual {v0, v1, v5}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 338
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->bit_depth_chroma_minus8:I
invoke-virtual {v0, v1, v5}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 339
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->qpprime_y_zero_transform_bypass_flag:Z
.line 340
nop
.line 339
const-string v6, "SPS: qpprime_y_zero_transform_bypass_flag"
invoke-virtual {v0, v1, v6}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 341
iget-object v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->scalingMatrix:Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;
if-eqz v1, :cond_89
const/4 v1, 0x1
goto :goto_8a
:cond_89
const/4 v1, 0x0
:goto_8a
invoke-virtual {v0, v1, v5}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 342
iget-object v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->scalingMatrix:Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;
if-eqz v1, :cond_e4
.line 343
const/4 v1, 0x0
.local v1, "i":I
:goto_92
if-lt v1, v3, :cond_95
goto :goto_e4
.line 344
:cond_95
const/4 v6, 0x6
if-ge v1, v6, :cond_ba
.line 345
nop
.line 346
iget-object v6, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->scalingMatrix:Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;
iget-object v6, v6, Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;->ScalingList4x4:[Lcom/googlecode/mp4parser/h264/model/ScalingList;
aget-object v6, v6, v1
if-eqz v6, :cond_a3
const/4 v6, 0x1
goto :goto_a4
:cond_a3
const/4 v6, 0x0
.line 347
:goto_a4
nop
.line 345
invoke-virtual {v0, v6, v5}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 348
iget-object v6, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->scalingMatrix:Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;
iget-object v6, v6, Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;->ScalingList4x4:[Lcom/googlecode/mp4parser/h264/model/ScalingList;
aget-object v6, v6, v1
if-eqz v6, :cond_e1
.line 349
iget-object v6, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->scalingMatrix:Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;
iget-object v6, v6, Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;->ScalingList4x4:[Lcom/googlecode/mp4parser/h264/model/ScalingList;
aget-object v6, v6, v1
invoke-virtual {v6, v0}, Lcom/googlecode/mp4parser/h264/model/ScalingList;->write(Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;)V
.line 351
goto :goto_e1
.line 352
:cond_ba
nop
.line 353
iget-object v6, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->scalingMatrix:Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;
iget-object v6, v6, Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;->ScalingList8x8:[Lcom/googlecode/mp4parser/h264/model/ScalingList;
add-int/lit8 v7, v1, -0x6
aget-object v6, v6, v7
if-eqz v6, :cond_c7
const/4 v6, 0x1
goto :goto_c8
:cond_c7
const/4 v6, 0x0
.line 354
:goto_c8
nop
.line 352
invoke-virtual {v0, v6, v5}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 355
iget-object v6, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->scalingMatrix:Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;
iget-object v6, v6, Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;->ScalingList8x8:[Lcom/googlecode/mp4parser/h264/model/ScalingList;
add-int/lit8 v7, v1, -0x6
aget-object v6, v6, v7
if-eqz v6, :cond_e1
.line 356
iget-object v6, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->scalingMatrix:Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;
iget-object v6, v6, Lcom/googlecode/mp4parser/h264/model/ScalingMatrix;->ScalingList8x8:[Lcom/googlecode/mp4parser/h264/model/ScalingList;
add-int/lit8 v7, v1, -0x6
aget-object v6, v6, v7
invoke-virtual {v6, v0}, Lcom/googlecode/mp4parser/h264/model/ScalingList;->write(Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;)V
.line 343
:cond_e1
:goto_e1
add-int/lit8 v1, v1, 0x1
goto :goto_92
.line 362
.end local v1 # "i":I
:cond_e4
:goto_e4
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->log2_max_frame_num_minus4:I
.line 363
nop
.line 362
const-string v3, "SPS: log2_max_frame_num_minus4"
invoke-virtual {v0, v1, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 364
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->pic_order_cnt_type:I
const-string v3, "SPS: pic_order_cnt_type"
invoke-virtual {v0, v1, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 365
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->pic_order_cnt_type:I
if-nez v1, :cond_100
.line 366
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->log2_max_pic_order_cnt_lsb_minus4:I
.line 367
nop
.line 366
const-string v3, "SPS: log2_max_pic_order_cnt_lsb_minus4"
invoke-virtual {v0, v1, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
goto :goto_12f
.line 368
:cond_100
if-ne v1, v4, :cond_12f
.line 369
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->delta_pic_order_always_zero_flag:Z
.line 370
nop
.line 369
const-string v3, "SPS: delta_pic_order_always_zero_flag"
invoke-virtual {v0, v1, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 371
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->offset_for_non_ref_pic:I
.line 372
nop
.line 371
const-string v3, "SPS: offset_for_non_ref_pic"
invoke-virtual {v0, v1, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeSE(ILjava/lang/String;)V
.line 373
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->offset_for_top_to_bottom_field:I
.line 374
nop
.line 373
const-string v3, "SPS: offset_for_top_to_bottom_field"
invoke-virtual {v0, v1, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeSE(ILjava/lang/String;)V
.line 375
iget-object v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->offsetForRefFrame:[I
array-length v1, v1
invoke-virtual {v0, v1, v5}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 376
const/4 v1, 0x0
.restart local v1 # "i":I
:goto_121
iget-object v3, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->offsetForRefFrame:[I
array-length v6, v3
if-lt v1, v6, :cond_127
goto :goto_130
.line 377
:cond_127
aget v3, v3, v1
invoke-virtual {v0, v3, v5}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeSE(ILjava/lang/String;)V
.line 376
add-int/lit8 v1, v1, 0x1
goto :goto_121
.line 368
.end local v1 # "i":I
:cond_12f
:goto_12f
nop
.line 379
:goto_130
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->num_ref_frames:I
const-string v3, "SPS: num_ref_frames"
invoke-virtual {v0, v1, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 380
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->gaps_in_frame_num_value_allowed_flag:Z
.line 381
nop
.line 380
const-string v3, "SPS: gaps_in_frame_num_value_allowed_flag"
invoke-virtual {v0, v1, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 382
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->pic_width_in_mbs_minus1:I
const-string v3, "SPS: pic_width_in_mbs_minus1"
invoke-virtual {v0, v1, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 383
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->pic_height_in_map_units_minus1:I
.line 384
nop
.line 383
const-string v3, "SPS: pic_height_in_map_units_minus1"
invoke-virtual {v0, v1, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 385
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_mbs_only_flag:Z
const-string v3, "SPS: frame_mbs_only_flag"
invoke-virtual {v0, v1, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 386
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_mbs_only_flag:Z
if-nez v1, :cond_161
.line 387
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->mb_adaptive_frame_field_flag:Z
.line 388
nop
.line 387
const-string v3, "SPS: mb_adaptive_frame_field_flag"
invoke-virtual {v0, v1, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 390
:cond_161
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->direct_8x8_inference_flag:Z
.line 391
nop
.line 390
const-string v3, "SPS: direct_8x8_inference_flag"
invoke-virtual {v0, v1, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 392
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_cropping_flag:Z
const-string v3, "SPS: frame_cropping_flag"
invoke-virtual {v0, v1, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 393
iget-boolean v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_cropping_flag:Z
if-eqz v1, :cond_193
.line 394
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_crop_left_offset:I
.line 395
nop
.line 394
const-string v3, "SPS: frame_crop_left_offset"
invoke-virtual {v0, v1, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 396
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_crop_right_offset:I
.line 397
nop
.line 396
const-string v3, "SPS: frame_crop_right_offset"
invoke-virtual {v0, v1, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 398
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_crop_top_offset:I
const-string v3, "SPS: frame_crop_top_offset"
invoke-virtual {v0, v1, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 399
iget v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->frame_crop_bottom_offset:I
.line 400
nop
.line 399
const-string v3, "SPS: frame_crop_bottom_offset"
invoke-virtual {v0, v1, v3}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeUE(ILjava/lang/String;)V
.line 402
:cond_193
iget-object v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->vuiParams:Lcom/googlecode/mp4parser/h264/model/VUIParameters;
if-eqz v1, :cond_198
const/4 v2, 0x1
:cond_198
invoke-virtual {v0, v2, v5}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeBool(ZLjava/lang/String;)V
.line 403
iget-object v1, p0, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->vuiParams:Lcom/googlecode/mp4parser/h264/model/VUIParameters;
if-eqz v1, :cond_1a2
.line 404
invoke-direct {p0, v1, v0}, Lcom/googlecode/mp4parser/h264/model/SeqParameterSet;->writeVUIParameters(Lcom/googlecode/mp4parser/h264/model/VUIParameters;Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;)V
.line 406
:cond_1a2
invoke-virtual {v0}, Lcom/googlecode/mp4parser/h264/write/CAVLCWriter;->writeTrailingBits()V
.line 407
return-void
.end method