AudioSpecificConfig$ELDSpecificConfig.smali
.class public Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/AudioSpecificConfig$ELDSpecificConfig;
.super Ljava/lang/Object;
.source "AudioSpecificConfig.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/AudioSpecificConfig;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = "ELDSpecificConfig"
.end annotation
# static fields
.field private static final ELDEXT_TERM:I
# instance fields
.field public aacScalefactorDataResilienceFlag:Z
.field public aacSectionDataResilienceFlag:Z
.field public aacSpectralDataResilienceFlag:Z
.field public frameLengthFlag:Z
.field public ldSbrCrcFlag:Z
.field public ldSbrPresentFlag:Z
.field public ldSbrSamplingRate:Z
.field final synthetic this$0:Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/AudioSpecificConfig;
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public constructor <init>(Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/AudioSpecificConfig;ILcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;)V
.registers 9
.param p2, "channelConfiguration" # I
.param p3, "bitReaderBuffer" # Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;
.line 518
iput-object p1, p0, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/AudioSpecificConfig$ELDSpecificConfig;->this$0:Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/AudioSpecificConfig;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 520
invoke-virtual {p3}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBool()Z
move-result p1
iput-boolean p1, p0, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/AudioSpecificConfig$ELDSpecificConfig;->frameLengthFlag:Z
.line 521
invoke-virtual {p3}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBool()Z
move-result p1
iput-boolean p1, p0, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/AudioSpecificConfig$ELDSpecificConfig;->aacSectionDataResilienceFlag:Z
.line 522
invoke-virtual {p3}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBool()Z
move-result p1
iput-boolean p1, p0, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/AudioSpecificConfig$ELDSpecificConfig;->aacScalefactorDataResilienceFlag:Z
.line 523
invoke-virtual {p3}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBool()Z
move-result p1
iput-boolean p1, p0, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/AudioSpecificConfig$ELDSpecificConfig;->aacSpectralDataResilienceFlag:Z
.line 525
invoke-virtual {p3}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBool()Z
move-result p1
iput-boolean p1, p0, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/AudioSpecificConfig$ELDSpecificConfig;->ldSbrPresentFlag:Z
.line 526
if-eqz p1, :cond_34
.line 527
invoke-virtual {p3}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBool()Z
move-result p1
iput-boolean p1, p0, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/AudioSpecificConfig$ELDSpecificConfig;->ldSbrSamplingRate:Z
.line 528
invoke-virtual {p3}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBool()Z
move-result p1
iput-boolean p1, p0, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/AudioSpecificConfig$ELDSpecificConfig;->ldSbrCrcFlag:Z
.line 529
invoke-virtual {p0, p2, p3}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/AudioSpecificConfig$ELDSpecificConfig;->ld_sbr_header(ILcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;)V
.line 532
:cond_34
:goto_34
const/4 p1, 0x4
invoke-virtual {p3, p1}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v0
move v1, v0
.local v1, "eldExtType":I
if-nez v0, :cond_3d
.line 554
return-void
.line 533
:cond_3d
invoke-virtual {p3, p1}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result p1
.line 534
.local p1, "eldExtLen":I
move v0, p1
.line 535
.local v0, "len":I
const/4 v2, 0x0
.line 536
.local v2, "eldExtLenAdd":I
const/16 v3, 0xf
const/16 v4, 0x8
if-ne p1, v3, :cond_4e
.line 537
invoke-virtual {p3, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v2
.line 538
add-int/2addr v0, v2
.line 540
:cond_4e
const/16 v3, 0xff
if-ne v2, v3, :cond_59
.line 541
const/16 v3, 0x10
invoke-virtual {p3, v3}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v3
.line 542
.local v3, "eldExtLenAddAdd":I
add-int/2addr v0, v3
.line 544
.end local v3 # "eldExtLenAddAdd":I
:cond_59
nop
.line 547
const/4 v3, 0x0
.local v3, "cnt":I
:goto_5b
if-lt v3, v0, :cond_5e
goto :goto_34
.line 548
:cond_5e
invoke-virtual {p3, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
.line 547
add-int/lit8 v3, v3, 0x1
goto :goto_5b
.end method
# virtual methods
.method public ld_sbr_header(ILcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;)V
.registers 7
.param p1, "channelConfiguration" # I
.param p2, "bitReaderBuffer" # Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;
.line 558
packed-switch p1, :pswitch_data_1c
.line 575
const/4 v0, 0x0
.local v0, "numSbrHeader":I
goto :goto_d
.line 572
.end local v0 # "numSbrHeader":I
:pswitch_5
const/4 v0, 0x4
.line 573
.restart local v0 # "numSbrHeader":I
goto :goto_d
.line 569
.end local v0 # "numSbrHeader":I
:pswitch_7
const/4 v0, 0x3
.line 570
.restart local v0 # "numSbrHeader":I
goto :goto_d
.line 564
.end local v0 # "numSbrHeader":I
:pswitch_9
const/4 v0, 0x2
.line 565
.restart local v0 # "numSbrHeader":I
goto :goto_d
.line 561
.end local v0 # "numSbrHeader":I
:pswitch_b
const/4 v0, 0x1
.line 562
.restart local v0 # "numSbrHeader":I
nop
.line 578
:goto_d
const/4 v1, 0x0
.local v1, "el":I
:goto_e
if-lt v1, v0, :cond_11
.line 581
.end local v1 # "el":I
return-void
.line 579
.restart local v1 # "el":I
:cond_11
new-instance v2, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/AudioSpecificConfig$sbr_header;
iget-object v3, p0, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/AudioSpecificConfig$ELDSpecificConfig;->this$0:Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/AudioSpecificConfig;
invoke-direct {v2, v3, p2}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/AudioSpecificConfig$sbr_header;-><init>(Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/AudioSpecificConfig;Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;)V
.line 578
add-int/lit8 v1, v1, 0x1
goto :goto_e
nop
:pswitch_data_1c
.packed-switch 0x1
:pswitch_b
:pswitch_b
:pswitch_9
:pswitch_7
:pswitch_7
:pswitch_7
:pswitch_5
.end packed-switch
.end method