DTSTrackImpl.smali
.class public Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;
.super Lcom/googlecode/mp4parser/authoring/AbstractTrack;
.source "DTSTrackImpl.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl$LookAhead;
}
.end annotation
# static fields
.field private static final BUFFER:I
# instance fields
.field bcCoreBitRate:I
.field bcCoreChannelMask:I
.field bcCoreMaxSampleRate:I
.field bitrate:I
.field channelCount:I
.field channelMask:I
.field codecDelayAtMaxFs:I
.field coreBitRate:I
.field coreChannelMask:I
.field coreFramePayloadInBytes:I
.field coreMaxSampleRate:I
.field coreSubStreamPresent:Z
.field private dataOffset:I
.field private dataSource:Lcom/googlecode/mp4parser/DataSource;
.field ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
.field extAvgBitrate:I
.field extFramePayloadInBytes:I
.field extPeakBitrate:I
.field extSmoothBuffSize:I
.field extensionSubStreamPresent:Z
.field frameSize:I
.field isVBR:Z
.field private lang:Ljava/lang/String;
.field lbrCodingPresent:I
.field lsbTrimPercent:I
.field maxSampleRate:I
.field numExtSubStreams:I
.field numFramesTotal:I
.field numSamplesOrigAudioAtMaxFs:I
.field sampleDescriptionBox:Lcom/coremedia/iso/boxes/SampleDescriptionBox;
.field private sampleDurations:[J
.field sampleSize:I
.field samplerate:I
.field private samples:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lcom/googlecode/mp4parser/authoring/Sample;",
">;"
}
.end annotation
.end field
.field samplesPerFrame:I
.field samplesPerFrameAtMaxFs:I
.field trackMetaData:Lcom/googlecode/mp4parser/authoring/TrackMetaData;
.field type:Ljava/lang/String;
# direct methods
.method static constructor <clinit>()V
.registers 1
const v0, 0x400156f
invoke-static {v0}, Lnp/NPFog;->d(I)I
move-result v0
sput v0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->BUFFER:I
return-void
.end method
.method public constructor <init>(Lcom/googlecode/mp4parser/DataSource;)V
.registers 4
.param p1, "dataSource" # Lcom/googlecode/mp4parser/DataSource;
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 74
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p0, v0}, Lcom/googlecode/mp4parser/authoring/AbstractTrack;-><init>(Ljava/lang/String;)V
.line 21
new-instance v0, Lcom/googlecode/mp4parser/authoring/TrackMetaData;
invoke-direct {v0}, Lcom/googlecode/mp4parser/authoring/TrackMetaData;-><init>()V
iput-object v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->trackMetaData:Lcom/googlecode/mp4parser/authoring/TrackMetaData;
.line 26
const/4 v0, 0x0
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->frameSize:I
.line 31
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->dataOffset:I
.line 32
new-instance v1, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
invoke-direct {v1}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;-><init>()V
iput-object v1, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
.line 38
iput-boolean v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->isVBR:Z
.line 39
iput-boolean v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreSubStreamPresent:Z
.line 40
iput-boolean v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->extensionSubStreamPresent:Z
.line 41
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->numExtSubStreams:I
.line 42
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreMaxSampleRate:I
.line 43
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreBitRate:I
.line 44
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreChannelMask:I
.line 45
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreFramePayloadInBytes:I
.line 46
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->extAvgBitrate:I
.line 47
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->extPeakBitrate:I
.line 48
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->extSmoothBuffSize:I
.line 49
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->extFramePayloadInBytes:I
.line 51
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->maxSampleRate:I
.line 52
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->lbrCodingPresent:I
.line 53
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->numFramesTotal:I
.line 54
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->samplesPerFrameAtMaxFs:I
.line 55
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->numSamplesOrigAudioAtMaxFs:I
.line 56
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->channelMask:I
.line 57
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->codecDelayAtMaxFs:I
.line 58
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->bcCoreMaxSampleRate:I
.line 59
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->bcCoreBitRate:I
.line 60
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->bcCoreChannelMask:I
.line 61
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->lsbTrimPercent:I
.line 63
const-string v0, "none"
iput-object v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->type:Ljava/lang/String;
.line 64
const-string v0, "eng"
iput-object v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->lang:Ljava/lang/String;
.line 75
iput-object p1, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->dataSource:Lcom/googlecode/mp4parser/DataSource;
.line 76
invoke-direct {p0}, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->parse()V
.line 77
return-void
.end method
.method public constructor <init>(Lcom/googlecode/mp4parser/DataSource;Ljava/lang/String;)V
.registers 5
.param p1, "dataSource" # Lcom/googlecode/mp4parser/DataSource;
.param p2, "lang" # Ljava/lang/String;
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 67
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p0, v0}, Lcom/googlecode/mp4parser/authoring/AbstractTrack;-><init>(Ljava/lang/String;)V
.line 21
new-instance v0, Lcom/googlecode/mp4parser/authoring/TrackMetaData;
invoke-direct {v0}, Lcom/googlecode/mp4parser/authoring/TrackMetaData;-><init>()V
iput-object v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->trackMetaData:Lcom/googlecode/mp4parser/authoring/TrackMetaData;
.line 26
const/4 v0, 0x0
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->frameSize:I
.line 31
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->dataOffset:I
.line 32
new-instance v1, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
invoke-direct {v1}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;-><init>()V
iput-object v1, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
.line 38
iput-boolean v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->isVBR:Z
.line 39
iput-boolean v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreSubStreamPresent:Z
.line 40
iput-boolean v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->extensionSubStreamPresent:Z
.line 41
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->numExtSubStreams:I
.line 42
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreMaxSampleRate:I
.line 43
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreBitRate:I
.line 44
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreChannelMask:I
.line 45
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreFramePayloadInBytes:I
.line 46
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->extAvgBitrate:I
.line 47
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->extPeakBitrate:I
.line 48
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->extSmoothBuffSize:I
.line 49
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->extFramePayloadInBytes:I
.line 51
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->maxSampleRate:I
.line 52
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->lbrCodingPresent:I
.line 53
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->numFramesTotal:I
.line 54
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->samplesPerFrameAtMaxFs:I
.line 55
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->numSamplesOrigAudioAtMaxFs:I
.line 56
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->channelMask:I
.line 57
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->codecDelayAtMaxFs:I
.line 58
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->bcCoreMaxSampleRate:I
.line 59
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->bcCoreBitRate:I
.line 60
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->bcCoreChannelMask:I
.line 61
iput v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->lsbTrimPercent:I
.line 63
const-string v0, "none"
iput-object v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->type:Ljava/lang/String;
.line 64
const-string v0, "eng"
iput-object v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->lang:Ljava/lang/String;
.line 68
iput-object p2, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->lang:Ljava/lang/String;
.line 69
iput-object p1, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->dataSource:Lcom/googlecode/mp4parser/DataSource;
.line 70
invoke-direct {p0}, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->parse()V
.line 71
return-void
.end method
.method private generateSamples(Lcom/googlecode/mp4parser/DataSource;IJI)Ljava/util/List;
.registers 15
.param p1, "dataSource" # Lcom/googlecode/mp4parser/DataSource;
.param p2, "dataOffset" # I
.param p3, "dataSize" # J
.param p5, "corePresent" # I
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/googlecode/mp4parser/DataSource;",
"IJI)",
"Ljava/util/List<",
"Lcom/googlecode/mp4parser/authoring/Sample;",
">;"
}
.end annotation
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 651
new-instance v8, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl$LookAhead;
int-to-long v3, p2
move-object v0, v8
move-object v1, p0
move-object v2, p1
move-wide v5, p3
move v7, p5
invoke-direct/range {v0 .. v7}, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl$LookAhead;-><init>(Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;Lcom/googlecode/mp4parser/DataSource;JJI)V
.line 653
.local v0, "la":Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl$LookAhead;
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V
.line 655
.local v1, "mySamples":Ljava/util/List;, "Ljava/util/List<Lcom/googlecode/mp4parser/authoring/Sample;>;"
nop
:goto_11
invoke-virtual {v0}, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl$LookAhead;->findNextStart()Ljava/nio/ByteBuffer;
move-result-object v2
move-object v3, v2
.local v3, "sample":Ljava/nio/ByteBuffer;
if-nez v2, :cond_20
.line 672
sget-object v2, Ljava/lang/System;->err:Ljava/io/PrintStream;
const-string v4, "all samples found"
invoke-virtual {v2, v4}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
.line 673
return-object v1
.line 656
:cond_20
move-object v2, v3
.line 657
.local v2, "finalSample":Ljava/nio/ByteBuffer;
new-instance v4, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl$1;
invoke-direct {v4, p0, v2}, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl$1;-><init>(Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;Ljava/nio/ByteBuffer;)V
invoke-interface {v1, v4}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_11
.end method
.method private getBitRate(I)I
.registers 4
.param p1, "rate" # I
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 678
packed-switch p1, :pswitch_data_5a
.line 786
new-instance v0, Ljava/io/IOException;
const-string v1, "Unknown bitrate value"
invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
throw v0
.line 782
:pswitch_b
const/4 v0, -0x1
.line 783
.local v0, "bitrate":I
goto :goto_58
.line 778
.end local v0 # "bitrate":I
:pswitch_d
const/16 v0, 0x600
.line 779
.restart local v0 # "bitrate":I
goto :goto_58
.line 774
.end local v0 # "bitrate":I
:pswitch_10
const/16 v0, 0x5c0
.line 775
.restart local v0 # "bitrate":I
goto :goto_58
.line 770
.end local v0 # "bitrate":I
:pswitch_13
const/16 v0, 0x583
.line 771
.restart local v0 # "bitrate":I
goto :goto_58
.line 766
.end local v0 # "bitrate":I
:pswitch_16
const/16 v0, 0x580
.line 767
.restart local v0 # "bitrate":I
goto :goto_58
.line 762
.end local v0 # "bitrate":I
:pswitch_19
const/16 v0, 0x540
.line 763
.restart local v0 # "bitrate":I
goto :goto_58
.line 758
.end local v0 # "bitrate":I
:pswitch_1c
const/16 v0, 0x500
.line 759
.restart local v0 # "bitrate":I
goto :goto_58
.line 754
.end local v0 # "bitrate":I
:pswitch_1f
const/16 v0, 0x480
.line 755
.restart local v0 # "bitrate":I
goto :goto_58
.line 750
.end local v0 # "bitrate":I
:pswitch_22
const/16 v0, 0x400
.line 751
.restart local v0 # "bitrate":I
goto :goto_58
.line 746
.end local v0 # "bitrate":I
:pswitch_25
const/16 v0, 0x3c0
.line 747
.restart local v0 # "bitrate":I
goto :goto_58
.line 742
.end local v0 # "bitrate":I
:pswitch_28
const/16 v0, 0x300
.line 743
.restart local v0 # "bitrate":I
goto :goto_58
.line 738
.end local v0 # "bitrate":I
:pswitch_2b
const/16 v0, 0x280
.line 739
.restart local v0 # "bitrate":I
goto :goto_58
.line 734
.end local v0 # "bitrate":I
:pswitch_2e
const/16 v0, 0x240
.line 735
.restart local v0 # "bitrate":I
goto :goto_58
.line 730
.end local v0 # "bitrate":I
:pswitch_31
const/16 v0, 0x200
.line 731
.restart local v0 # "bitrate":I
goto :goto_58
.line 726
.end local v0 # "bitrate":I
:pswitch_34
const/16 v0, 0x1c0
.line 727
.restart local v0 # "bitrate":I
goto :goto_58
.line 722
.end local v0 # "bitrate":I
:pswitch_37
const/16 v0, 0x180
.line 723
.restart local v0 # "bitrate":I
goto :goto_58
.line 718
.end local v0 # "bitrate":I
:pswitch_3a
const/16 v0, 0x140
.line 719
.restart local v0 # "bitrate":I
goto :goto_58
.line 714
.end local v0 # "bitrate":I
:pswitch_3d
const/16 v0, 0x100
.line 715
.restart local v0 # "bitrate":I
goto :goto_58
.line 710
.end local v0 # "bitrate":I
:pswitch_40
const/16 v0, 0xe0
.line 711
.restart local v0 # "bitrate":I
goto :goto_58
.line 706
.end local v0 # "bitrate":I
:pswitch_43
const/16 v0, 0xc0
.line 707
.restart local v0 # "bitrate":I
goto :goto_58
.line 702
.end local v0 # "bitrate":I
:pswitch_46
const/16 v0, 0x80
.line 703
.restart local v0 # "bitrate":I
goto :goto_58
.line 698
.end local v0 # "bitrate":I
:pswitch_49
const/16 v0, 0x70
.line 699
.restart local v0 # "bitrate":I
goto :goto_58
.line 694
.end local v0 # "bitrate":I
:pswitch_4c
const/16 v0, 0x60
.line 695
.restart local v0 # "bitrate":I
goto :goto_58
.line 690
.end local v0 # "bitrate":I
:pswitch_4f
const/16 v0, 0x40
.line 691
.restart local v0 # "bitrate":I
goto :goto_58
.line 686
.end local v0 # "bitrate":I
:pswitch_52
const/16 v0, 0x38
.line 687
.restart local v0 # "bitrate":I
goto :goto_58
.line 682
.end local v0 # "bitrate":I
:pswitch_55
const/16 v0, 0x20
.line 683
.restart local v0 # "bitrate":I
nop
.line 789
:goto_58
return v0
nop
:pswitch_data_5a
.packed-switch 0x0
:pswitch_55
:pswitch_52
:pswitch_4f
:pswitch_4c
:pswitch_49
:pswitch_46
:pswitch_43
:pswitch_40
:pswitch_3d
:pswitch_3a
:pswitch_37
:pswitch_34
:pswitch_31
:pswitch_2e
:pswitch_2b
:pswitch_28
:pswitch_25
:pswitch_22
:pswitch_1f
:pswitch_1c
:pswitch_19
:pswitch_16
:pswitch_13
:pswitch_10
:pswitch_d
:pswitch_b
.end packed-switch
.end method
.method private getSampleRate(I)I
.registers 4
.param p1, "sfreq" # I
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 794
packed-switch p1, :pswitch_data_2a
.line 834
:pswitch_3
new-instance v0, Ljava/io/IOException;
const-string v1, "Unknown Sample Rate"
invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
throw v0
.line 830
:pswitch_b
const v0, 0xbb80
.line 831
.local v0, "samplerate":I
goto :goto_28
.line 826
.end local v0 # "samplerate":I
:pswitch_f
const/16 v0, 0x5dc0
.line 827
.restart local v0 # "samplerate":I
goto :goto_28
.line 822
.end local v0 # "samplerate":I
:pswitch_12
const/16 v0, 0x2ee0
.line 823
.restart local v0 # "samplerate":I
goto :goto_28
.line 818
.end local v0 # "samplerate":I
:pswitch_15
const v0, 0xac44
.line 819
.restart local v0 # "samplerate":I
goto :goto_28
.line 814
.end local v0 # "samplerate":I
:pswitch_19
const/16 v0, 0x5622
.line 815
.restart local v0 # "samplerate":I
goto :goto_28
.line 810
.end local v0 # "samplerate":I
:pswitch_1c
const/16 v0, 0x2b11
.line 811
.restart local v0 # "samplerate":I
goto :goto_28
.line 806
.end local v0 # "samplerate":I
:pswitch_1f
const/16 v0, 0x7d00
.line 807
.restart local v0 # "samplerate":I
goto :goto_28
.line 802
.end local v0 # "samplerate":I
:pswitch_22
const/16 v0, 0x3e80
.line 803
.restart local v0 # "samplerate":I
goto :goto_28
.line 798
.end local v0 # "samplerate":I
:pswitch_25
const/16 v0, 0x1f40
.line 799
.restart local v0 # "samplerate":I
nop
.line 837
:goto_28
return v0
nop
:pswitch_data_2a
.packed-switch 0x1
:pswitch_25
:pswitch_22
:pswitch_1f
:pswitch_3
:pswitch_3
:pswitch_1c
:pswitch_19
:pswitch_15
:pswitch_3
:pswitch_3
:pswitch_12
:pswitch_f
:pswitch_b
.end packed-switch
.end method
.method private parse()V
.registers 5
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 84
invoke-direct {p0}, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->readVariables()Z
move-result v0
if-eqz v0, :cond_56
.line 88
new-instance v0, Lcom/coremedia/iso/boxes/SampleDescriptionBox;
invoke-direct {v0}, Lcom/coremedia/iso/boxes/SampleDescriptionBox;-><init>()V
iput-object v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->sampleDescriptionBox:Lcom/coremedia/iso/boxes/SampleDescriptionBox;
.line 89
new-instance v0, Lcom/coremedia/iso/boxes/sampleentry/AudioSampleEntry;
iget-object v1, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->type:Ljava/lang/String;
invoke-direct {v0, v1}, Lcom/coremedia/iso/boxes/sampleentry/AudioSampleEntry;-><init>(Ljava/lang/String;)V
.line 90
.local v0, "audioSampleEntry":Lcom/coremedia/iso/boxes/sampleentry/AudioSampleEntry;
iget v1, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->channelCount:I
invoke-virtual {v0, v1}, Lcom/coremedia/iso/boxes/sampleentry/AudioSampleEntry;->setChannelCount(I)V
.line 91
iget v1, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->samplerate:I
int-to-long v1, v1
invoke-virtual {v0, v1, v2}, Lcom/coremedia/iso/boxes/sampleentry/AudioSampleEntry;->setSampleRate(J)V
.line 92
const/4 v1, 0x1
invoke-virtual {v0, v1}, Lcom/coremedia/iso/boxes/sampleentry/AudioSampleEntry;->setDataReferenceIndex(I)V
.line 93
const/16 v1, 0x10
invoke-virtual {v0, v1}, Lcom/coremedia/iso/boxes/sampleentry/AudioSampleEntry;->setSampleSize(I)V
.line 96
iget-object v1, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
invoke-virtual {v0, v1}, Lcom/coremedia/iso/boxes/sampleentry/AudioSampleEntry;->addBox(Lcom/coremedia/iso/boxes/Box;)V
.line 97
iget-object v1, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->sampleDescriptionBox:Lcom/coremedia/iso/boxes/SampleDescriptionBox;
invoke-virtual {v1, v0}, Lcom/coremedia/iso/boxes/SampleDescriptionBox;->addBox(Lcom/coremedia/iso/boxes/Box;)V
.line 99
iget-object v1, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->trackMetaData:Lcom/googlecode/mp4parser/authoring/TrackMetaData;
new-instance v2, Ljava/util/Date;
invoke-direct {v2}, Ljava/util/Date;-><init>()V
invoke-virtual {v1, v2}, Lcom/googlecode/mp4parser/authoring/TrackMetaData;->setCreationTime(Ljava/util/Date;)V
.line 100
iget-object v1, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->trackMetaData:Lcom/googlecode/mp4parser/authoring/TrackMetaData;
new-instance v2, Ljava/util/Date;
invoke-direct {v2}, Ljava/util/Date;-><init>()V
invoke-virtual {v1, v2}, Lcom/googlecode/mp4parser/authoring/TrackMetaData;->setModificationTime(Ljava/util/Date;)V
.line 101
iget-object v1, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->trackMetaData:Lcom/googlecode/mp4parser/authoring/TrackMetaData;
iget-object v2, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->lang:Ljava/lang/String;
invoke-virtual {v1, v2}, Lcom/googlecode/mp4parser/authoring/TrackMetaData;->setLanguage(Ljava/lang/String;)V
.line 102
iget-object v1, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->trackMetaData:Lcom/googlecode/mp4parser/authoring/TrackMetaData;
iget v2, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->samplerate:I
int-to-long v2, v2
invoke-virtual {v1, v2, v3}, Lcom/googlecode/mp4parser/authoring/TrackMetaData;->setTimescale(J)V
.line 105
return-void
.line 85
.end local v0 # "audioSampleEntry":Lcom/coremedia/iso/boxes/sampleentry/AudioSampleEntry;
:cond_56
new-instance v0, Ljava/io/IOException;
invoke-direct {v0}, Ljava/io/IOException;-><init>()V
throw v0
.end method
.method private parseAuprhdr(ILjava/nio/ByteBuffer;)Z
.registers 10
.param p1, "size" # I
.param p2, "bb" # Ljava/nio/ByteBuffer;
.line 185
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->get()B
.line 186
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getShort()S
move-result v0
.line 187
.local v0, "bitwAupresData":I
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->get()B
move-result v1
.line 188
.local v1, "a":I
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getShort()S
move-result v2
.line 189
.local v2, "b":I
shl-int/lit8 v3, v1, 0x10
const v4, 0xffff
and-int v5, v2, v4
or-int/2addr v3, v5
iput v3, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->maxSampleRate:I
.line 190
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getInt()I
move-result v3
iput v3, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->numFramesTotal:I
.line 191
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getShort()S
move-result v3
iput v3, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->samplesPerFrameAtMaxFs:I
.line 192
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->get()B
move-result v1
.line 193
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getInt()I
move-result v2
.line 194
shl-int/lit8 v3, v1, 0x20
and-int v5, v2, v4
or-int/2addr v3, v5
iput v3, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->numSamplesOrigAudioAtMaxFs:I
.line 195
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getShort()S
move-result v3
iput v3, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->channelMask:I
.line 196
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getShort()S
move-result v3
iput v3, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->codecDelayAtMaxFs:I
.line 197
const/16 v3, 0x15
.line 198
.local v3, "c":I
and-int/lit8 v5, v0, 0x3
const/4 v6, 0x3
if-ne v5, v6, :cond_63
.line 199
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->get()B
move-result v1
.line 200
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getShort()S
move-result v2
.line 201
shl-int/lit8 v5, v1, 0x10
and-int/2addr v4, v2
or-int/2addr v4, v5
iput v4, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->bcCoreMaxSampleRate:I
.line 202
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getShort()S
move-result v4
iput v4, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->bcCoreBitRate:I
.line 203
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getShort()S
move-result v4
iput v4, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->bcCoreChannelMask:I
.line 204
add-int/lit8 v3, v3, 0x7
.line 206
:cond_63
and-int/lit8 v4, v0, 0x4
if-lez v4, :cond_6f
.line 207
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->get()B
move-result v4
iput v4, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->lsbTrimPercent:I
.line 208
add-int/lit8 v3, v3, 0x1
.line 210
:cond_6f
and-int/lit8 v4, v0, 0x8
const/4 v5, 0x1
if-lez v4, :cond_76
.line 211
iput v5, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->lbrCodingPresent:I
.line 213
:cond_76
:goto_76
if-lt v3, p1, :cond_79
.line 218
return v5
.line 214
:cond_79
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->get()B
.line 215
add-int/lit8 v3, v3, 0x1
goto :goto_76
.end method
.method private parseCoressmd(ILjava/nio/ByteBuffer;)Z
.registers 7
.param p1, "size" # I
.param p2, "bb" # Ljava/nio/ByteBuffer;
.line 170
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->get()B
move-result v0
.line 171
.local v0, "cmsr_1":I
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getShort()S
move-result v1
.line 172
.local v1, "cmsr_2":I
shl-int/lit8 v2, v0, 0x10
const v3, 0xffff
and-int/2addr v3, v1
or-int/2addr v2, v3
iput v2, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreMaxSampleRate:I
.line 173
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getShort()S
move-result v2
iput v2, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreBitRate:I
.line 174
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getShort()S
move-result v2
iput v2, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreChannelMask:I
.line 175
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getInt()I
move-result v2
iput v2, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreFramePayloadInBytes:I
.line 176
const/16 v2, 0xb
.line 177
.local v2, "i":I
nop
:goto_26
if-lt v2, p1, :cond_2a
.line 181
const/4 v3, 0x1
return v3
.line 178
:cond_2a
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->get()B
.line 179
add-int/lit8 v2, v2, 0x1
goto :goto_26
.end method
.method private parseDtshdhdr(ILjava/nio/ByteBuffer;)V
.registers 7
.param p1, "size" # I
.param p2, "bb" # Ljava/nio/ByteBuffer;
.line 142
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getInt()I
.line 143
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->get()B
.line 144
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getInt()I
.line 145
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->get()B
.line 146
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getShort()S
move-result v0
.line 147
.local v0, "bitwStreamMetadata":I
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->get()B
.line 148
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->get()B
move-result v1
iput v1, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->numExtSubStreams:I
.line 150
and-int/lit8 v1, v0, 0x1
const/4 v2, 0x1
if-ne v1, v2, :cond_20
.line 151
iput-boolean v2, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->isVBR:Z
.line 153
:cond_20
and-int/lit8 v1, v0, 0x8
const/16 v3, 0x8
if-ne v1, v3, :cond_28
.line 154
iput-boolean v2, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreSubStreamPresent:Z
.line 156
:cond_28
and-int/lit8 v1, v0, 0x10
const/16 v3, 0x10
if-ne v1, v3, :cond_36
.line 157
iput-boolean v2, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->extensionSubStreamPresent:Z
.line 158
iget v1, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->numExtSubStreams:I
add-int/2addr v1, v2
iput v1, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->numExtSubStreams:I
.line 159
goto :goto_39
.line 160
:cond_36
const/4 v1, 0x0
iput v1, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->numExtSubStreams:I
.line 162
:goto_39
const/16 v1, 0xe
.line 163
.local v1, "i":I
nop
:goto_3c
if-lt v1, p1, :cond_3f
.line 167
return-void
.line 164
:cond_3f
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->get()B
.line 165
add-int/lit8 v1, v1, 0x1
goto :goto_3c
.end method
.method private parseExtssmd(ILjava/nio/ByteBuffer;)Z
.registers 8
.param p1, "size" # I
.param p2, "bb" # Ljava/nio/ByteBuffer;
.line 225
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->get()B
move-result v0
.line 226
.local v0, "a":I
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getShort()S
move-result v1
.line 227
.local v1, "b":I
shl-int/lit8 v2, v0, 0x10
const v3, 0xffff
and-int v4, v1, v3
or-int/2addr v2, v4
iput v2, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->extAvgBitrate:I
.line 228
const/4 v2, 0x3
.line 229
.local v2, "i":I
iget-boolean v4, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->isVBR:Z
if-eqz v4, :cond_2e
.line 230
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->get()B
move-result v0
.line 231
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getShort()S
move-result v1
.line 232
shl-int/lit8 v4, v0, 0x10
and-int/2addr v3, v1
or-int/2addr v3, v4
iput v3, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->extPeakBitrate:I
.line 233
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getShort()S
move-result v3
iput v3, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->extSmoothBuffSize:I
.line 234
add-int/lit8 v2, v2, 0x5
.line 235
goto :goto_37
.line 236
:cond_2e
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->getInt()I
move-result v3
iput v3, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->extFramePayloadInBytes:I
.line 237
add-int/lit8 v2, v2, 0x4
.line 239
nop
:goto_37
if-lt v2, p1, :cond_3b
.line 243
const/4 v3, 0x1
return v3
.line 240
:cond_3b
invoke-virtual {p2}, Ljava/nio/ByteBuffer;->get()B
.line 241
add-int/lit8 v2, v2, 0x1
goto :goto_37
.end method
.method private readVariables()Z
.registers 40
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 247
move-object/from16 v6, p0
iget-object v0, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->dataSource:Lcom/googlecode/mp4parser/DataSource;
const-wide/16 v1, 0x0
const-wide/16 v3, 0x61a8
invoke-interface {v0, v1, v2, v3, v4}, Lcom/googlecode/mp4parser/DataSource;->map(JJ)Ljava/nio/ByteBuffer;
move-result-object v7
.line 248
.local v7, "bb":Ljava/nio/ByteBuffer;
invoke-virtual {v7}, Ljava/nio/ByteBuffer;->getInt()I
move-result v0
.line 249
.local v0, "testHeader1":I
invoke-virtual {v7}, Ljava/nio/ByteBuffer;->getInt()I
move-result v1
.line 250
.local v1, "testHeader2":I
const v2, 0x44545348
if-ne v0, v2, :cond_64f
const v3, 0x44484452
if-ne v1, v3, :cond_64f
move v8, v0
move v9, v1
.line 254
.end local v0 # "testHeader1":I
.end local v1 # "testHeader2":I
.local v8, "testHeader1":I
.local v9, "testHeader2":I
:goto_20
const v0, 0x5354524d
if-ne v8, v0, :cond_2a
const v0, 0x44415441
if-eq v9, v0, :cond_32
:cond_2a
invoke-virtual {v7}, Ljava/nio/ByteBuffer;->remaining()I
move-result v0
const/16 v4, 0x64
if-gt v0, v4, :cond_5ec
.line 278
:cond_32
invoke-virtual {v7}, Ljava/nio/ByteBuffer;->getLong()J
move-result-wide v10
.line 279
.local v10, "dataSize":J
invoke-virtual {v7}, Ljava/nio/ByteBuffer;->position()I
move-result v0
iput v0, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->dataOffset:I
.line 281
const/4 v0, -0x1
.line 282
.local v0, "amode":I
const/4 v2, 0x0
.line 283
.local v2, "extAudioId":I
const/4 v3, 0x0
.line 285
.local v3, "extAudio":I
const/4 v4, -0x1
.line 286
.local v4, "corePresent":I
const/4 v5, -0x1
.line 287
.local v5, "extPresent":I
const/4 v12, 0x0
.line 288
.local v12, "extXch":I
const/4 v13, 0x0
.line 289
.local v13, "extXXch":I
const/4 v14, 0x0
.line 290
.local v14, "extX96k":I
const/4 v15, 0x0
.line 291
.local v15, "extXbr":I
const/16 v16, 0x0
.line 292
.local v16, "extLbr":I
const/16 v17, 0x0
.line 293
.local v17, "extXll":I
const/16 v18, 0x0
.line 295
.local v18, "extCore":I
const/16 v19, 0x0
.line 298
.local v19, "done":Z
move/from16 v20, v16
move/from16 v21, v17
move/from16 v22, v18
move/from16 v38, v12
move v12, v0
move v0, v15
move v15, v4
move v4, v13
move v13, v2
move v2, v14
move v14, v3
move/from16 v3, v38
.end local v16 # "extLbr":I
.end local v17 # "extXll":I
.end local v18 # "extCore":I
.local v0, "extXbr":I
.local v2, "extX96k":I
.local v3, "extXch":I
.local v4, "extXXch":I
.local v12, "amode":I
.local v13, "extAudioId":I
.local v14, "extAudio":I
.local v15, "corePresent":I
.local v20, "extLbr":I
.local v21, "extXll":I
.local v22, "extCore":I
:goto_5e
if-eqz v19, :cond_35b
.line 467
const/16 v27, -0x1
.line 468
.local v27, "fd":I
iget v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->samplesPerFrame:I
move/from16 v29, v3
.end local v3 # "extXch":I
.local v29, "extXch":I
const/16 v3, 0x200
move/from16 v30, v9
.end local v9 # "testHeader2":I
.local v30, "testHeader2":I
const/16 v9, 0x1000
if-eq v1, v3, :cond_8a
const/16 v3, 0x400
if-eq v1, v3, :cond_85
const/16 v3, 0x800
if-eq v1, v3, :cond_80
if-eq v1, v9, :cond_7b
move/from16 v3, v27
goto :goto_8e
.line 484
:cond_7b
const/16 v27, 0x3
move/from16 v3, v27
goto :goto_8e
.line 480
:cond_80
const/16 v27, 0x2
.line 481
move/from16 v3, v27
goto :goto_8e
.line 476
:cond_85
const/16 v27, 0x1
.line 477
move/from16 v3, v27
goto :goto_8e
.line 472
:cond_8a
const/16 v27, 0x0
.line 473
move/from16 v3, v27
.line 488
.end local v27 # "fd":I
.local v3, "fd":I
:goto_8e
const/4 v1, -0x1
if-ne v3, v1, :cond_93
.line 491
const/4 v1, 0x0
return v1
.line 494
:cond_93
const/16 v1, 0x1f
.line 495
.local v1, "coreLayout":I
if-eqz v12, :cond_9f
const/4 v9, 0x2
if-eq v12, v9, :cond_9f
packed-switch v12, :pswitch_data_65a
move v9, v1
goto :goto_a1
.line 506
:cond_9f
:pswitch_9f
move v1, v12
move v9, v1
.line 509
.end local v1 # "coreLayout":I
.local v9, "coreLayout":I
:goto_a1
const/4 v1, 0x0
.line 510
.local v1, "streamContruction":I
move/from16 v27, v1
.end local v1 # "streamContruction":I
.local v27, "streamContruction":I
const-string v1, "dtsh"
if-nez v15, :cond_110
.line 511
move/from16 v31, v12
move/from16 v12, v21
move/from16 v21, v8
const/4 v8, 0x1
.end local v8 # "testHeader1":I
.local v12, "extXll":I
.local v21, "testHeader1":I
.local v31, "amode":I
if-ne v12, v8, :cond_d3
.line 512
move/from16 v8, v22
.end local v22 # "extCore":I
.local v8, "extCore":I
if-nez v8, :cond_c6
.line 513
const/16 v1, 0x11
.line 514
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
move/from16 v22, v1
.end local v1 # "streamContruction":I
.local v22, "streamContruction":I
const-string v1, "dtsl"
iput-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->type:Ljava/lang/String;
.line 515
move/from16 v1, v22
move-object/from16 v22, v7
move/from16 v7, v20
move/from16 v20, v15
goto :goto_103
.line 516
.end local v22 # "streamContruction":I
.restart local v27 # "streamContruction":I
:cond_c6
const/16 v22, 0x15
.line 517
.end local v27 # "streamContruction":I
.restart local v22 # "streamContruction":I
iput-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->type:Ljava/lang/String;
.line 519
move/from16 v1, v22
move-object/from16 v22, v7
move/from16 v7, v20
move/from16 v20, v15
goto :goto_103
.end local v8 # "extCore":I
.local v22, "extCore":I
.restart local v27 # "streamContruction":I
:cond_d3
move/from16 v8, v22
.end local v22 # "extCore":I
.restart local v8 # "extCore":I
move-object/from16 v22, v7
move/from16 v7, v20
move/from16 v20, v15
const/4 v15, 0x1
.end local v15 # "corePresent":I
.local v7, "extLbr":I
.local v20, "corePresent":I
.local v22, "bb":Ljava/nio/ByteBuffer;
if-ne v7, v15, :cond_e5
.line 520
const/16 v1, 0x12
.line 521
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
const-string v15, "dtse"
iput-object v15, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->type:Ljava/lang/String;
.line 522
goto :goto_103
.end local v1 # "streamContruction":I
.restart local v27 # "streamContruction":I
:cond_e5
const/4 v15, 0x1
if-ne v8, v15, :cond_101
.line 523
iput-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->type:Ljava/lang/String;
.line 524
if-nez v4, :cond_f1
if-nez v12, :cond_f1
.line 525
const/16 v1, 0x13
.line 526
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
goto :goto_103
.end local v1 # "streamContruction":I
.restart local v27 # "streamContruction":I
:cond_f1
const/4 v1, 0x1
if-ne v4, v1, :cond_f9
if-nez v12, :cond_f9
.line 527
const/16 v1, 0x14
.line 528
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
goto :goto_103
.end local v1 # "streamContruction":I
.restart local v27 # "streamContruction":I
:cond_f9
if-nez v4, :cond_101
const/4 v1, 0x1
if-ne v12, v1, :cond_101
.line 529
const/16 v1, 0x15
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
goto :goto_103
.line 532
.end local v1 # "streamContruction":I
.restart local v27 # "streamContruction":I
:cond_101
move/from16 v1, v27
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
:goto_103
iget v15, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->maxSampleRate:I
iput v15, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->samplerate:I
.line 533
const/16 v15, 0x18
iput v15, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->sampleSize:I
.line 534
move v15, v1
move/from16 v17, v5
goto/16 :goto_239
.line 535
.end local v1 # "streamContruction":I
.end local v31 # "amode":I
.local v7, "bb":Ljava/nio/ByteBuffer;
.local v8, "testHeader1":I
.local v12, "amode":I
.restart local v15 # "corePresent":I
.local v20, "extLbr":I
.local v21, "extXll":I
.local v22, "extCore":I
.restart local v27 # "streamContruction":I
:cond_110
move/from16 v31, v12
move/from16 v12, v21
move/from16 v21, v8
move/from16 v8, v22
move-object/from16 v22, v7
move/from16 v7, v20
move/from16 v20, v15
.end local v15 # "corePresent":I
.local v7, "extLbr":I
.local v8, "extCore":I
.local v12, "extXll":I
.local v20, "corePresent":I
.local v21, "testHeader1":I
.local v22, "bb":Ljava/nio/ByteBuffer;
.restart local v31 # "amode":I
const/4 v15, 0x1
if-ge v5, v15, :cond_151
.line 536
const-string v15, "dtsc"
if-lez v14, :cond_149
.line 537
if-eqz v13, :cond_141
move/from16 v17, v5
const/4 v5, 0x2
.end local v5 # "extPresent":I
.local v17, "extPresent":I
if-eq v13, v5, :cond_13b
const/4 v5, 0x6
if-eq v13, v5, :cond_135
.line 554
const/4 v5, 0x0
.line 555
.end local v27 # "streamContruction":I
.local v5, "streamContruction":I
iput-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->type:Ljava/lang/String;
.line 558
move v15, v5
goto/16 :goto_239
.line 549
.end local v5 # "streamContruction":I
.restart local v27 # "streamContruction":I
:cond_135
const/4 v5, 0x3
.line 550
.end local v27 # "streamContruction":I
.restart local v5 # "streamContruction":I
iput-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->type:Ljava/lang/String;
.line 551
move v15, v5
goto/16 :goto_239
.line 544
.end local v5 # "streamContruction":I
.restart local v27 # "streamContruction":I
:cond_13b
const/4 v1, 0x4
.line 545
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
iput-object v15, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->type:Ljava/lang/String;
.line 546
move v15, v1
goto/16 :goto_239
.line 539
.end local v1 # "streamContruction":I
.end local v17 # "extPresent":I
.local v5, "extPresent":I
.restart local v27 # "streamContruction":I
:cond_141
move/from16 v17, v5
.end local v5 # "extPresent":I
.restart local v17 # "extPresent":I
const/4 v1, 0x2
.line 540
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
iput-object v15, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->type:Ljava/lang/String;
.line 541
move v15, v1
goto/16 :goto_239
.line 559
.end local v1 # "streamContruction":I
.end local v17 # "extPresent":I
.restart local v5 # "extPresent":I
.restart local v27 # "streamContruction":I
:cond_149
move/from16 v17, v5
.end local v5 # "extPresent":I
.restart local v17 # "extPresent":I
const/4 v1, 0x1
.line 560
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
iput-object v15, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->type:Ljava/lang/String;
.line 562
move v15, v1
goto/16 :goto_239
.line 563
.end local v1 # "streamContruction":I
.end local v17 # "extPresent":I
.restart local v5 # "extPresent":I
.restart local v27 # "streamContruction":I
:cond_151
move/from16 v17, v5
.end local v5 # "extPresent":I
.restart local v17 # "extPresent":I
iput-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->type:Ljava/lang/String;
.line 564
if-nez v14, :cond_1c1
.line 565
if-nez v8, :cond_168
const/4 v1, 0x1
if-ne v4, v1, :cond_168
if-nez v2, :cond_168
if-nez v0, :cond_168
if-nez v12, :cond_168
if-nez v7, :cond_168
.line 566
const/4 v1, 0x5
.line 567
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
move v15, v1
goto/16 :goto_239
.end local v1 # "streamContruction":I
.restart local v27 # "streamContruction":I
:cond_168
if-nez v8, :cond_179
if-nez v4, :cond_179
if-nez v2, :cond_179
const/4 v1, 0x1
if-ne v0, v1, :cond_179
if-nez v12, :cond_179
if-nez v7, :cond_179
.line 568
const/4 v1, 0x6
.line 569
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
move v15, v1
goto/16 :goto_239
.end local v1 # "streamContruction":I
.restart local v27 # "streamContruction":I
:cond_179
if-nez v8, :cond_18b
const/4 v1, 0x1
if-ne v4, v1, :cond_18b
if-nez v2, :cond_18b
if-ne v0, v1, :cond_18b
if-nez v12, :cond_18b
if-nez v7, :cond_18b
.line 570
const/16 v1, 0x9
.line 571
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
move v15, v1
goto/16 :goto_239
.end local v1 # "streamContruction":I
.restart local v27 # "streamContruction":I
:cond_18b
if-nez v8, :cond_19d
if-nez v4, :cond_19d
const/4 v1, 0x1
if-ne v2, v1, :cond_19d
if-nez v0, :cond_19d
if-nez v12, :cond_19d
if-nez v7, :cond_19d
.line 572
const/16 v1, 0xa
.line 573
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
move v15, v1
goto/16 :goto_239
.end local v1 # "streamContruction":I
.restart local v27 # "streamContruction":I
:cond_19d
if-nez v8, :cond_1af
const/4 v1, 0x1
if-ne v4, v1, :cond_1af
if-ne v2, v1, :cond_1af
if-nez v0, :cond_1af
if-nez v12, :cond_1af
if-nez v7, :cond_1af
.line 574
const/16 v1, 0xd
.line 575
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
move v15, v1
goto/16 :goto_239
.end local v1 # "streamContruction":I
.restart local v27 # "streamContruction":I
:cond_1af
if-nez v8, :cond_237
if-nez v4, :cond_237
if-nez v2, :cond_237
if-nez v0, :cond_237
const/4 v1, 0x1
if-ne v12, v1, :cond_237
if-nez v7, :cond_237
.line 576
const/16 v1, 0xe
.line 578
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
move v15, v1
goto/16 :goto_239
.line 579
.end local v1 # "streamContruction":I
.restart local v27 # "streamContruction":I
:cond_1c1
if-nez v13, :cond_1d4
if-nez v8, :cond_1d4
if-nez v4, :cond_1d4
if-nez v2, :cond_1d4
const/4 v1, 0x1
if-ne v0, v1, :cond_1d4
if-nez v12, :cond_1d4
if-nez v7, :cond_1d4
.line 580
const/4 v1, 0x7
.line 581
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
move v15, v1
goto/16 :goto_239
.end local v1 # "streamContruction":I
.restart local v27 # "streamContruction":I
:cond_1d4
const/4 v1, 0x6
if-ne v13, v1, :cond_1e9
if-nez v8, :cond_1e9
if-nez v4, :cond_1e9
if-nez v2, :cond_1e9
const/4 v1, 0x1
if-ne v0, v1, :cond_1e9
if-nez v12, :cond_1e9
if-nez v7, :cond_1e9
.line 582
const/16 v1, 0x8
.line 583
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
move v15, v1
goto/16 :goto_239
.end local v1 # "streamContruction":I
.restart local v27 # "streamContruction":I
:cond_1e9
if-nez v13, :cond_1fc
if-nez v8, :cond_1fc
if-nez v4, :cond_1fc
const/4 v1, 0x1
if-ne v2, v1, :cond_1fc
if-nez v0, :cond_1fc
if-nez v12, :cond_1fc
if-nez v7, :cond_1fc
.line 584
const/16 v1, 0xb
.line 585
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
move v15, v1
goto :goto_239
.end local v1 # "streamContruction":I
.restart local v27 # "streamContruction":I
:cond_1fc
const/4 v1, 0x6
if-ne v13, v1, :cond_210
if-nez v8, :cond_210
if-nez v4, :cond_210
const/4 v1, 0x1
if-ne v2, v1, :cond_210
if-nez v0, :cond_210
if-nez v12, :cond_210
if-nez v7, :cond_210
.line 586
const/16 v1, 0xc
.line 587
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
move v15, v1
goto :goto_239
.end local v1 # "streamContruction":I
.restart local v27 # "streamContruction":I
:cond_210
if-nez v13, :cond_223
if-nez v8, :cond_223
if-nez v4, :cond_223
if-nez v2, :cond_223
if-nez v0, :cond_223
const/4 v1, 0x1
if-ne v12, v1, :cond_223
if-nez v7, :cond_223
.line 588
const/16 v1, 0xf
.line 589
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
move v15, v1
goto :goto_239
.end local v1 # "streamContruction":I
.restart local v27 # "streamContruction":I
:cond_223
const/4 v1, 0x2
if-ne v13, v1, :cond_237
if-nez v8, :cond_237
if-nez v4, :cond_237
if-nez v2, :cond_237
if-nez v0, :cond_237
const/4 v1, 0x1
if-ne v12, v1, :cond_237
if-nez v7, :cond_237
.line 590
const/16 v1, 0x10
move v15, v1
.end local v27 # "streamContruction":I
.restart local v1 # "streamContruction":I
goto :goto_239
.line 595
.end local v1 # "streamContruction":I
.restart local v27 # "streamContruction":I
:cond_237
move/from16 v15, v27
.end local v27 # "streamContruction":I
.local v15, "streamContruction":I
:goto_239
iget-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
iget v5, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->maxSampleRate:I
move/from16 v26, v4
.end local v4 # "extXXch":I
.local v26, "extXXch":I
int-to-long v4, v5
invoke-virtual {v1, v4, v5}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;->setDTSSamplingFrequency(J)V
.line 596
iget-boolean v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->isVBR:Z
if-eqz v1, :cond_255
.line 597
iget-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
iget v4, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreBitRate:I
iget v5, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->extPeakBitrate:I
add-int/2addr v4, v5
mul-int/lit16 v4, v4, 0x3e8
int-to-long v4, v4
invoke-virtual {v1, v4, v5}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;->setMaxBitRate(J)V
.line 598
goto :goto_262
.line 599
:cond_255
iget-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
iget v4, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreBitRate:I
iget v5, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->extAvgBitrate:I
add-int/2addr v4, v5
mul-int/lit16 v4, v4, 0x3e8
int-to-long v4, v4
invoke-virtual {v1, v4, v5}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;->setMaxBitRate(J)V
.line 601
:goto_262
iget-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
iget v4, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreBitRate:I
iget v5, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->extAvgBitrate:I
add-int/2addr v4, v5
mul-int/lit16 v4, v4, 0x3e8
int-to-long v4, v4
invoke-virtual {v1, v4, v5}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;->setAvgBitRate(J)V
.line 602
iget-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
iget v4, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->sampleSize:I
invoke-virtual {v1, v4}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;->setPcmSampleDepth(I)V
.line 603
iget-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
invoke-virtual {v1, v3}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;->setFrameDuration(I)V
.line 604
iget-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
invoke-virtual {v1, v15}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;->setStreamConstruction(I)V
.line 605
iget v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreChannelMask:I
and-int/lit8 v4, v1, 0x8
if-gtz v4, :cond_293
const/16 v4, 0x1000
and-int/2addr v1, v4
if-lez v1, :cond_28c
goto :goto_293
.line 608
:cond_28c
iget-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
const/4 v4, 0x0
invoke-virtual {v1, v4}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;->setCoreLFEPresent(I)V
goto :goto_29a
.line 606
:cond_293
:goto_293
iget-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
const/4 v4, 0x1
invoke-virtual {v1, v4}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;->setCoreLFEPresent(I)V
.line 607
nop
.line 610
:goto_29a
iget-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
invoke-virtual {v1, v9}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;->setCoreLayout(I)V
.line 611
iget-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
iget v4, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreFramePayloadInBytes:I
invoke-virtual {v1, v4}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;->setCoreSize(I)V
.line 612
iget-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
const/4 v4, 0x0
invoke-virtual {v1, v4}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;->setStereoDownmix(I)V
.line 613
iget-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
const/4 v4, 0x4
invoke-virtual {v1, v4}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;->setRepresentationType(I)V
.line 614
iget-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
iget v4, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->channelMask:I
invoke-virtual {v1, v4}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;->setChannelLayout(I)V
.line 615
iget v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->coreMaxSampleRate:I
if-lez v1, :cond_2c9
iget v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->extAvgBitrate:I
if-lez v1, :cond_2c9
.line 616
iget-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
const/4 v4, 0x1
invoke-virtual {v1, v4}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;->setMultiAssetFlag(I)V
.line 617
const/4 v5, 0x0
goto :goto_2d0
.line 615
:cond_2c9
const/4 v4, 0x1
.line 618
iget-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
const/4 v5, 0x0
invoke-virtual {v1, v5}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;->setMultiAssetFlag(I)V
.line 620
:goto_2d0
iget-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
iget v4, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->lbrCodingPresent:I
invoke-virtual {v1, v4}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;->setLBRDurationMod(I)V
.line 621
iget-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->ddts:Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;
invoke-virtual {v1, v5}, Lcom/googlecode/mp4parser/boxes/DTSSpecificBox;->setReservedBoxPresent(I)V
.line 623
iput v5, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->channelCount:I
.line 624
const/4 v1, 0x0
.local v1, "bit":I
:goto_2df
const/16 v4, 0x10
if-lt v1, v4, :cond_312
.line 643
.end local v1 # "bit":I
iget-object v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->dataSource:Lcom/googlecode/mp4parser/DataSource;
iget v4, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->dataOffset:I
move v5, v0
.end local v0 # "extXbr":I
.local v5, "extXbr":I
move-object/from16 v0, p0
move/from16 v27, v9
const/4 v9, 0x1
.end local v9 # "coreLayout":I
.local v27, "coreLayout":I
move/from16 v32, v2
.end local v2 # "extX96k":I
.local v32, "extX96k":I
move v2, v4
move/from16 v28, v3
move/from16 v34, v26
move/from16 v33, v29
.end local v3 # "fd":I
.end local v26 # "extXXch":I
.end local v29 # "extXch":I
.local v28, "fd":I
.local v33, "extXch":I
.local v34, "extXXch":I
move-wide v3, v10
move/from16 v35, v5
move/from16 v29, v17
.end local v5 # "extXbr":I
.end local v17 # "extPresent":I
.local v29, "extPresent":I
.local v35, "extXbr":I
move/from16 v5, v20
invoke-direct/range {v0 .. v5}, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->generateSamples(Lcom/googlecode/mp4parser/DataSource;IJI)Ljava/util/List;
move-result-object v0
iput-object v0, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->samples:Ljava/util/List;
.line 644
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
new-array v0, v0, [J
iput-object v0, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->sampleDurations:[J
.line 645
iget v1, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->samplesPerFrame:I
int-to-long v1, v1
invoke-static {v0, v1, v2}, Ljava/util/Arrays;->fill([JJ)V
.line 647
return v9
.line 625
.end local v27 # "coreLayout":I
.end local v28 # "fd":I
.end local v32 # "extX96k":I
.end local v33 # "extXch":I
.end local v34 # "extXXch":I
.end local v35 # "extXbr":I
.restart local v0 # "extXbr":I
.restart local v1 # "bit":I
.restart local v2 # "extX96k":I
.restart local v3 # "fd":I
.restart local v9 # "coreLayout":I
.restart local v17 # "extPresent":I
.restart local v26 # "extXXch":I
.local v29, "extXch":I
:cond_312
move/from16 v35, v0
move/from16 v32, v2
move/from16 v28, v3
move/from16 v27, v9
move/from16 v34, v26
move/from16 v33, v29
const/4 v9, 0x1
move/from16 v29, v17
.end local v0 # "extXbr":I
.end local v2 # "extX96k":I
.end local v3 # "fd":I
.end local v9 # "coreLayout":I
.end local v17 # "extPresent":I
.end local v26 # "extXXch":I
.restart local v27 # "coreLayout":I
.restart local v28 # "fd":I
.local v29, "extPresent":I
.restart local v32 # "extX96k":I
.restart local v33 # "extXch":I
.restart local v34 # "extXXch":I
.restart local v35 # "extXbr":I
iget v0, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->channelMask:I
shr-int/2addr v0, v1
and-int/2addr v0, v9
if-ne v0, v9, :cond_34a
.line 626
if-eqz v1, :cond_345
const/16 v0, 0xc
if-eq v1, v0, :cond_345
const/16 v0, 0xe
if-eq v1, v0, :cond_345
const/4 v0, 0x3
if-eq v1, v0, :cond_345
const/4 v0, 0x4
if-eq v1, v0, :cond_345
const/4 v0, 0x7
if-eq v1, v0, :cond_345
const/16 v0, 0x8
if-eq v1, v0, :cond_345
.line 638
iget v0, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->channelCount:I
const/4 v2, 0x2
add-int/2addr v0, v2
iput v0, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->channelCount:I
goto :goto_34a
.line 634
:cond_345
iget v0, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->channelCount:I
add-int/2addr v0, v9
iput v0, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->channelCount:I
.line 624
:cond_34a
:goto_34a
add-int/lit8 v1, v1, 0x1
move/from16 v9, v27
move/from16 v3, v28
move/from16 v17, v29
move/from16 v2, v32
move/from16 v29, v33
move/from16 v26, v34
move/from16 v0, v35
goto :goto_2df
.line 299
.end local v1 # "bit":I
.end local v27 # "coreLayout":I
.end local v28 # "fd":I
.end local v29 # "extPresent":I
.end local v30 # "testHeader2":I
.end local v31 # "amode":I
.end local v32 # "extX96k":I
.end local v33 # "extXch":I
.end local v34 # "extXXch":I
.end local v35 # "extXbr":I
.restart local v0 # "extXbr":I
.restart local v2 # "extX96k":I
.local v3, "extXch":I
.restart local v4 # "extXXch":I
.local v5, "extPresent":I
.local v7, "bb":Ljava/nio/ByteBuffer;
.local v8, "testHeader1":I
.local v9, "testHeader2":I
.local v12, "amode":I
.local v15, "corePresent":I
.local v20, "extLbr":I
.local v21, "extXll":I
.local v22, "extCore":I
:cond_35b
move/from16 v35, v0
move/from16 v32, v2
move/from16 v33, v3
move/from16 v34, v4
move/from16 v29, v5
move/from16 v30, v9
move/from16 v31, v12
move/from16 v12, v21
const/4 v9, 0x1
move/from16 v21, v8
move/from16 v8, v22
move-object/from16 v22, v7
move/from16 v7, v20
move/from16 v20, v15
.end local v0 # "extXbr":I
.end local v2 # "extX96k":I
.end local v3 # "extXch":I
.end local v4 # "extXXch":I
.end local v5 # "extPresent":I
.end local v9 # "testHeader2":I
.end local v15 # "corePresent":I
.local v7, "extLbr":I
.local v8, "extCore":I
.local v12, "extXll":I
.local v20, "corePresent":I
.local v21, "testHeader1":I
.local v22, "bb":Ljava/nio/ByteBuffer;
.restart local v29 # "extPresent":I
.restart local v30 # "testHeader2":I
.restart local v31 # "amode":I
.restart local v32 # "extX96k":I
.restart local v33 # "extXch":I
.restart local v34 # "extXXch":I
.restart local v35 # "extXbr":I
invoke-virtual/range {v22 .. v22}, Ljava/nio/ByteBuffer;->position()I
move-result v0
.line 300
.local v0, "offset":I
invoke-virtual/range {v22 .. v22}, Ljava/nio/ByteBuffer;->getInt()I
move-result v1
.line 301
.local v1, "sync":I
const v2, 0x7ffe8001
if-ne v1, v2, :cond_4c1
.line 302
move/from16 v4, v20
.end local v20 # "corePresent":I
.local v4, "corePresent":I
if-ne v4, v9, :cond_3a4
.line 303
const/16 v19, 0x1
.line 304
move v15, v4
move/from16 v20, v7
move-object/from16 v7, v22
move/from16 v5, v29
move/from16 v9, v30
move/from16 v2, v32
move/from16 v3, v33
move/from16 v4, v34
move/from16 v0, v35
move/from16 v22, v8
move/from16 v8, v21
move/from16 v21, v12
move/from16 v12, v31
goto/16 :goto_5e
.line 305
:cond_3a4
const/4 v15, 0x1
.line 306
.end local v4 # "corePresent":I
.restart local v15 # "corePresent":I
new-instance v2, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;
move-object/from16 v5, v22
.end local v22 # "bb":Ljava/nio/ByteBuffer;
.local v5, "bb":Ljava/nio/ByteBuffer;
invoke-direct {v2, v5}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;-><init>(Ljava/nio/ByteBuffer;)V
.line 308
.local v2, "brb":Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;
invoke-virtual {v2, v9}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v3
.line 309
.local v3, "ftype":I
const/4 v4, 0x5
move-wide/from16 v27, v10
.end local v10 # "dataSize":J
.local v27, "dataSize":J
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v10
.line 310
.local v10, "shrt":I
invoke-virtual {v2, v9}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v11
.line 311
.local v11, "cpf":I
if-ne v3, v9, :cond_4b9
const/16 v9, 0x1f
if-ne v10, v9, :cond_4b9
if-eqz v11, :cond_3cb
move-object/from16 v20, v2
move/from16 v24, v3
move/from16 v25, v10
goto/16 :goto_4bf
.line 317
:cond_3cb
const/4 v9, 0x7
invoke-virtual {v2, v9}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v22
.line 318
.local v22, "nblks":I
add-int/lit8 v9, v22, 0x1
mul-int/lit8 v9, v9, 0x20
iput v9, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->samplesPerFrame:I
.line 319
const/16 v9, 0xe
invoke-virtual {v2, v9}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v9
.line 320
.local v9, "fsize":I
iget v4, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->frameSize:I
add-int/lit8 v23, v9, 0x1
add-int v4, v4, v23
iput v4, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->frameSize:I
.line 321
const/4 v4, 0x6
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v23
.line 322
.end local v31 # "amode":I
.local v23, "amode":I
move/from16 v24, v3
const/4 v4, 0x4
.end local v3 # "ftype":I
.local v24, "ftype":I
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v3
.line 324
.local v3, "sfreq":I
invoke-direct {v6, v3}, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->getSampleRate(I)I
move-result v4
iput v4, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->samplerate:I
.line 326
move/from16 v31, v3
const/4 v4, 0x5
.end local v3 # "sfreq":I
.local v31, "sfreq":I
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v3
.line 328
.local v3, "rate":I
invoke-direct {v6, v3}, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->getBitRate(I)I
move-result v4
iput v4, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->bitrate:I
.line 330
const/4 v4, 0x1
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v36
.line 331
.local v36, "fixedBit":I
if-eqz v36, :cond_40c
.line 334
const/4 v4, 0x0
return v4
.line 337
:cond_40c
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
.line 338
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
.line 339
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
.line 340
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
.line 341
const/4 v4, 0x3
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v13
.line 342
const/4 v4, 0x1
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v14
.line 343
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
.line 344
const/4 v4, 0x2
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
.line 345
const/4 v4, 0x1
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
.line 346
nop
.line 347
if-ne v11, v4, :cond_435
.line 350
const/16 v4, 0x10
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
.line 353
:cond_435
const/4 v4, 0x1
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
.line 354
move/from16 v37, v3
const/4 v4, 0x4
.end local v3 # "rate":I
.local v37, "rate":I
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v3
.line 355
.local v3, "vernum":I
const/4 v4, 0x2
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
.line 356
move/from16 v25, v10
const/4 v4, 0x3
.end local v10 # "shrt":I
.local v25, "shrt":I
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v10
.line 357
.local v10, "pcmr":I
if-eqz v10, :cond_468
const/4 v4, 0x1
if-eq v10, v4, :cond_468
const/4 v4, 0x2
if-eq v10, v4, :cond_463
const/4 v4, 0x3
if-eq v10, v4, :cond_463
const/4 v4, 0x5
if-eq v10, v4, :cond_45e
const/4 v4, 0x6
if-eq v10, v4, :cond_45e
.line 376
const/4 v4, 0x0
return v4
.line 372
:cond_45e
const/16 v4, 0x18
iput v4, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->sampleSize:I
.line 373
goto :goto_46d
.line 367
:cond_463
const/16 v4, 0x14
iput v4, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->sampleSize:I
.line 368
goto :goto_46d
.line 362
:cond_468
const/16 v4, 0x10
iput v4, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->sampleSize:I
.line 363
nop
.line 379
:goto_46d
const/4 v4, 0x1
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
.line 380
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
.line 381
const/4 v4, 0x0
.line 382
.local v4, "dialnorm":I
nop
.line 383
move/from16 v17, v4
const/4 v4, 0x6
.end local v4 # "dialnorm":I
.local v17, "dialnorm":I
if-eq v3, v4, :cond_48c
const/4 v4, 0x7
if-eq v3, v4, :cond_485
.line 397
const/4 v4, 0x4
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move/from16 v4, v17
goto :goto_493
.line 392
:cond_485
const/4 v4, 0x4
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v4
.line 393
.end local v17 # "dialnorm":I
.restart local v4 # "dialnorm":I
nop
.line 394
goto :goto_493
.line 387
.end local v4 # "dialnorm":I
.restart local v17 # "dialnorm":I
:cond_48c
const/4 v4, 0x4
invoke-virtual {v2, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v4
.line 388
.end local v17 # "dialnorm":I
.restart local v4 # "dialnorm":I
nop
.line 389
nop
.line 400
:goto_493
add-int v17, v0, v9
move-object/from16 v20, v2
const/16 v18, 0x1
.end local v2 # "brb":Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;
.local v20, "brb":Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;
add-int/lit8 v2, v17, 0x1
invoke-virtual {v5, v2}, Ljava/nio/ByteBuffer;->position(I)Ljava/nio/Buffer;
.line 402
.end local v3 # "vernum":I
.end local v4 # "dialnorm":I
.end local v9 # "fsize":I
.end local v10 # "pcmr":I
.end local v11 # "cpf":I
.end local v20 # "brb":Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;
.end local v22 # "nblks":I
.end local v24 # "ftype":I
.end local v25 # "shrt":I
.end local v31 # "sfreq":I
.end local v36 # "fixedBit":I
.end local v37 # "rate":I
move/from16 v20, v7
move/from16 v22, v8
move/from16 v8, v21
move-wide/from16 v10, v27
move/from16 v9, v30
move/from16 v2, v32
move/from16 v3, v33
move/from16 v4, v34
move/from16 v0, v35
move-object v7, v5
move/from16 v21, v12
move/from16 v12, v23
move/from16 v5, v29
goto/16 :goto_5e
.line 311
.end local v23 # "amode":I
.restart local v2 # "brb":Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;
.local v3, "ftype":I
.local v10, "shrt":I
.restart local v11 # "cpf":I
.local v31, "amode":I
:cond_4b9
move-object/from16 v20, v2
move/from16 v24, v3
move/from16 v25, v10
.line 314
.end local v2 # "brb":Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;
.end local v3 # "ftype":I
.end local v10 # "shrt":I
.restart local v20 # "brb":Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;
.restart local v24 # "ftype":I
.restart local v25 # "shrt":I
:goto_4bf
const/4 v2, 0x0
return v2
.line 402
.end local v5 # "bb":Ljava/nio/ByteBuffer;
.end local v11 # "cpf":I
.end local v15 # "corePresent":I
.end local v24 # "ftype":I
.end local v25 # "shrt":I
.end local v27 # "dataSize":J
.local v10, "dataSize":J
.local v20, "corePresent":I
.local v22, "bb":Ljava/nio/ByteBuffer;
:cond_4c1
move-wide/from16 v27, v10
move/from16 v4, v20
move-object/from16 v5, v22
.end local v10 # "dataSize":J
.end local v20 # "corePresent":I
.end local v22 # "bb":Ljava/nio/ByteBuffer;
.local v4, "corePresent":I
.restart local v5 # "bb":Ljava/nio/ByteBuffer;
.restart local v27 # "dataSize":J
const v2, 0x64582025
if-ne v1, v2, :cond_5d2
.line 403
const/4 v2, -0x1
if-ne v4, v2, :cond_4d6
.line 404
const/4 v2, 0x0
.line 405
.end local v4 # "corePresent":I
.local v2, "corePresent":I
iget v3, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->samplesPerFrameAtMaxFs:I
iput v3, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->samplesPerFrame:I
move v15, v2
goto :goto_4d7
.line 403
.end local v2 # "corePresent":I
.restart local v4 # "corePresent":I
:cond_4d6
move v15, v4
.line 407
.end local v4 # "corePresent":I
.restart local v15 # "corePresent":I
:goto_4d7
const/4 v2, 0x1
.line 408
.end local v29 # "extPresent":I
.local v2, "extPresent":I
new-instance v3, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;
invoke-direct {v3, v5}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;-><init>(Ljava/nio/ByteBuffer;)V
.line 409
.local v3, "brb":Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;
const/16 v4, 0x8
invoke-virtual {v3, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
.line 410
const/4 v4, 0x2
invoke-virtual {v3, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
.line 411
const/4 v4, 0x1
invoke-virtual {v3, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v9
.line 412
.local v9, "headerSizeType":I
const/16 v4, 0xc
.line 413
.local v4, "nuBits4Header":I
const/16 v10, 0x14
.line 414
.local v10, "nuBits4ExSSFsize":I
if-nez v9, :cond_4f5
.line 415
const/16 v4, 0x8
.line 416
const/16 v10, 0x10
.line 418
:cond_4f5
invoke-virtual {v3, v4}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v11
move/from16 v17, v1
const/4 v1, 0x1
.end local v1 # "sync":I
.local v17, "sync":I
add-int/2addr v11, v1
.line 419
.local v11, "nuExtSSHeaderSize":I
invoke-virtual {v3, v10}, Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;->readBits(I)I
move-result v18
add-int/lit8 v18, v18, 0x1
.line 420
.local v18, "nuExtSSFsize":I
add-int v1, v0, v11
invoke-virtual {v5, v1}, Ljava/nio/ByteBuffer;->position(I)Ljava/nio/Buffer;
.line 421
invoke-virtual {v5}, Ljava/nio/ByteBuffer;->getInt()I
move-result v1
.line 422
.local v1, "extSync":I
move/from16 v22, v2
.end local v2 # "extPresent":I
.local v22, "extPresent":I
const v2, 0x5a5a5a5a
if-ne v1, v2, :cond_527
.line 423
move-object/from16 v23, v3
move/from16 v2, v33
const/4 v3, 0x1
.end local v3 # "brb":Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;
.end local v33 # "extXch":I
.local v2, "extXch":I
.local v23, "brb":Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;
if-ne v2, v3, :cond_51c
.line 424
const/16 v19, 0x1
.line 426
:cond_51c
const/4 v2, 0x1
.line 427
move/from16 v33, v2
move/from16 v20, v7
move/from16 v2, v32
move/from16 v3, v35
goto/16 :goto_5af
.end local v2 # "extXch":I
.end local v23 # "brb":Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;
.restart local v3 # "brb":Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;
.restart local v33 # "extXch":I
:cond_527
move-object/from16 v23, v3
move/from16 v2, v33
.end local v3 # "brb":Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;
.end local v33 # "extXch":I
.restart local v2 # "extXch":I
.restart local v23 # "brb":Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;
const v3, 0x47004a03
if-ne v1, v3, :cond_544
.line 428
move/from16 v33, v2
move/from16 v3, v34
const/4 v2, 0x1
.end local v2 # "extXch":I
.end local v34 # "extXXch":I
.local v3, "extXXch":I
.restart local v33 # "extXch":I
if-ne v3, v2, :cond_539
.line 429
const/16 v19, 0x1
.line 431
:cond_539
const/4 v2, 0x1
.line 432
.end local v3 # "extXXch":I
.local v2, "extXXch":I
move/from16 v34, v2
move/from16 v20, v7
move/from16 v2, v32
move/from16 v3, v35
goto/16 :goto_5af
.end local v33 # "extXch":I
.local v2, "extXch":I
.restart local v34 # "extXXch":I
:cond_544
move/from16 v33, v2
move/from16 v3, v34
.end local v2 # "extXch":I
.end local v34 # "extXXch":I
.restart local v3 # "extXXch":I
.restart local v33 # "extXch":I
const v2, 0x1d95f262
if-ne v1, v2, :cond_55c
.line 433
move/from16 v34, v3
move/from16 v2, v32
const/4 v3, 0x1
.end local v3 # "extXXch":I
.end local v32 # "extX96k":I
.local v2, "extX96k":I
.restart local v34 # "extXXch":I
if-ne v2, v3, :cond_556
.line 434
const/16 v19, 0x1
.line 436
:cond_556
const/4 v2, 0x1
.line 437
move/from16 v20, v7
move/from16 v3, v35
goto :goto_5af
.end local v2 # "extX96k":I
.end local v34 # "extXXch":I
.restart local v3 # "extXXch":I
.restart local v32 # "extX96k":I
:cond_55c
move/from16 v34, v3
move/from16 v2, v32
.end local v3 # "extXXch":I
.end local v32 # "extX96k":I
.restart local v2 # "extX96k":I
.restart local v34 # "extXXch":I
const v3, 0x655e315e
if-ne v1, v3, :cond_575
.line 438
move/from16 v32, v2
move/from16 v3, v35
const/4 v2, 0x1
.end local v2 # "extX96k":I
.end local v35 # "extXbr":I
.local v3, "extXbr":I
.restart local v32 # "extX96k":I
if-ne v3, v2, :cond_56e
.line 439
const/16 v19, 0x1
.line 441
:cond_56e
const/4 v2, 0x1
.line 442
.end local v3 # "extXbr":I
.local v2, "extXbr":I
move v3, v2
move/from16 v20, v7
move/from16 v2, v32
goto :goto_5af
.end local v32 # "extX96k":I
.local v2, "extX96k":I
.restart local v35 # "extXbr":I
:cond_575
move/from16 v32, v2
move/from16 v3, v35
.end local v2 # "extX96k":I
.end local v35 # "extXbr":I
.restart local v3 # "extXbr":I
.restart local v32 # "extX96k":I
const v2, 0xa801921
if-ne v1, v2, :cond_589
.line 443
const/4 v2, 0x1
if-ne v7, v2, :cond_583
.line 444
const/16 v19, 0x1
.line 446
:cond_583
const/4 v2, 0x1
.line 447
.end local v7 # "extLbr":I
.local v2, "extLbr":I
move/from16 v20, v2
move/from16 v2, v32
goto :goto_5af
.end local v2 # "extLbr":I
.restart local v7 # "extLbr":I
:cond_589
const v2, 0x41a29547
if-ne v1, v2, :cond_59a
.line 448
const/4 v2, 0x1
if-ne v12, v2, :cond_593
.line 449
const/16 v19, 0x1
.line 451
:cond_593
const/4 v2, 0x1
.line 452
.end local v12 # "extXll":I
.local v2, "extXll":I
move v12, v2
move/from16 v20, v7
move/from16 v2, v32
goto :goto_5af
.end local v2 # "extXll":I
.restart local v12 # "extXll":I
:cond_59a
const v2, 0x2b09261
if-ne v1, v2, :cond_5ab
.line 453
const/4 v2, 0x1
if-ne v8, v2, :cond_5a4
.line 454
const/16 v19, 0x1
.line 456
:cond_5a4
const/4 v2, 0x1
move v8, v2
move/from16 v20, v7
move/from16 v2, v32
.end local v8 # "extCore":I
.local v2, "extCore":I
goto :goto_5af
.line 452
.end local v2 # "extCore":I
.restart local v8 # "extCore":I
:cond_5ab
move/from16 v20, v7
move/from16 v2, v32
.line 458
.end local v7 # "extLbr":I
.end local v32 # "extX96k":I
.local v2, "extX96k":I
.local v20, "extLbr":I
:goto_5af
if-nez v19, :cond_5b7
.line 459
iget v7, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->frameSize:I
add-int v7, v7, v18
iput v7, v6, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->frameSize:I
.line 461
:cond_5b7
add-int v7, v0, v18
invoke-virtual {v5, v7}, Ljava/nio/ByteBuffer;->position(I)Ljava/nio/Buffer;
.line 462
.end local v1 # "extSync":I
.end local v4 # "nuBits4Header":I
.end local v9 # "headerSizeType":I
.end local v10 # "nuBits4ExSSFsize":I
.end local v11 # "nuExtSSHeaderSize":I
.end local v18 # "nuExtSSFsize":I
.end local v23 # "brb":Lcom/googlecode/mp4parser/boxes/mp4/objectdescriptors/BitReaderBuffer;
move v0, v3
move-object v7, v5
move/from16 v5, v22
move-wide/from16 v10, v27
move/from16 v9, v30
move/from16 v3, v33
move/from16 v4, v34
move/from16 v22, v8
move/from16 v8, v21
move/from16 v21, v12
move/from16 v12, v31
goto/16 :goto_5e
.line 463
.end local v2 # "extX96k":I
.end local v3 # "extXbr":I
.end local v15 # "corePresent":I
.end local v17 # "sync":I
.end local v20 # "extLbr":I
.end local v22 # "extPresent":I
.local v1, "sync":I
.local v4, "corePresent":I
.restart local v7 # "extLbr":I
.restart local v29 # "extPresent":I
.restart local v32 # "extX96k":I
.restart local v35 # "extXbr":I
:cond_5d2
move/from16 v17, v1
.end local v1 # "sync":I
.restart local v17 # "sync":I
new-instance v1, Ljava/io/IOException;
new-instance v2, Ljava/lang/StringBuilder;
const-string v9, "No DTS_SYNCWORD_* found at "
invoke-direct {v2, v9}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v5}, Ljava/nio/ByteBuffer;->position()I
move-result v9
invoke-virtual {v2, v9}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
throw v1
.line 255
.end local v0 # "offset":I
.end local v4 # "corePresent":I
.end local v5 # "bb":Ljava/nio/ByteBuffer;
.end local v12 # "extXll":I
.end local v13 # "extAudioId":I
.end local v14 # "extAudio":I
.end local v17 # "sync":I
.end local v19 # "done":Z
.end local v21 # "testHeader1":I
.end local v27 # "dataSize":J
.end local v29 # "extPresent":I
.end local v30 # "testHeader2":I
.end local v31 # "amode":I
.end local v32 # "extX96k":I
.end local v33 # "extXch":I
.end local v34 # "extXXch":I
.end local v35 # "extXbr":I
.local v7, "bb":Ljava/nio/ByteBuffer;
.local v8, "testHeader1":I
.local v9, "testHeader2":I
:cond_5ec
move-object v5, v7
move/from16 v21, v8
move/from16 v30, v9
.end local v7 # "bb":Ljava/nio/ByteBuffer;
.end local v8 # "testHeader1":I
.end local v9 # "testHeader2":I
.restart local v5 # "bb":Ljava/nio/ByteBuffer;
.restart local v21 # "testHeader1":I
.restart local v30 # "testHeader2":I
invoke-virtual {v5}, Ljava/nio/ByteBuffer;->getLong()J
move-result-wide v0
long-to-int v4, v0
.line 256
.local v4, "size":I
move/from16 v7, v21
.end local v21 # "testHeader1":I
.local v7, "testHeader1":I
if-ne v7, v2, :cond_602
move/from16 v8, v30
.end local v30 # "testHeader2":I
.local v8, "testHeader2":I
if-ne v8, v3, :cond_604
.line 257
invoke-direct {v6, v4, v5}, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->parseDtshdhdr(ILjava/nio/ByteBuffer;)V
.line 258
goto :goto_63d
.line 256
.end local v8 # "testHeader2":I
.restart local v30 # "testHeader2":I
:cond_602
move/from16 v8, v30
.line 258
.end local v30 # "testHeader2":I
.restart local v8 # "testHeader2":I
:cond_604
const v0, 0x434f5245
if-ne v7, v0, :cond_616
const v0, 0x53534d44
if-ne v8, v0, :cond_616
.line 259
invoke-direct {v6, v4, v5}, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->parseCoressmd(ILjava/nio/ByteBuffer;)Z
move-result v0
if-nez v0, :cond_63d
.line 260
const/4 v0, 0x0
return v0
.line 262
:cond_616
const v0, 0x41555052
if-ne v7, v0, :cond_628
const v0, 0x2d484452
if-ne v8, v0, :cond_628
.line 263
invoke-direct {v6, v4, v5}, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->parseAuprhdr(ILjava/nio/ByteBuffer;)Z
move-result v0
if-nez v0, :cond_63d
.line 264
const/4 v0, 0x0
return v0
.line 266
:cond_628
const v0, 0x45585453
if-ne v7, v0, :cond_63a
const v0, 0x535f4d44
if-ne v8, v0, :cond_63a
.line 267
invoke-direct {v6, v4, v5}, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->parseExtssmd(ILjava/nio/ByteBuffer;)Z
move-result v0
if-nez v0, :cond_63d
.line 268
const/4 v0, 0x0
return v0
.line 271
:cond_63a
const/4 v0, 0x0
.local v0, "i":I
:goto_63b
if-lt v0, v4, :cond_649
.line 275
.end local v0 # "i":I
:cond_63d
:goto_63d
invoke-virtual {v5}, Ljava/nio/ByteBuffer;->getInt()I
move-result v0
.line 276
.end local v7 # "testHeader1":I
.local v0, "testHeader1":I
invoke-virtual {v5}, Ljava/nio/ByteBuffer;->getInt()I
move-result v9
move v8, v0
move-object v7, v5
.end local v8 # "testHeader2":I
.restart local v9 # "testHeader2":I
goto/16 :goto_20
.line 272
.end local v9 # "testHeader2":I
.local v0, "i":I
.restart local v7 # "testHeader1":I
.restart local v8 # "testHeader2":I
:cond_649
invoke-virtual {v5}, Ljava/nio/ByteBuffer;->get()B
.line 271
add-int/lit8 v0, v0, 0x1
goto :goto_63b
.line 250
.end local v4 # "size":I
.end local v5 # "bb":Ljava/nio/ByteBuffer;
.end local v8 # "testHeader2":I
.local v0, "testHeader1":I
.local v1, "testHeader2":I
.local v7, "bb":Ljava/nio/ByteBuffer;
:cond_64f
move-object v5, v7
.line 251
.end local v7 # "bb":Ljava/nio/ByteBuffer;
.restart local v5 # "bb":Ljava/nio/ByteBuffer;
new-instance v2, Ljava/io/IOException;
const-string v3, "data does not start with \'DTSHDHDR\' as required for a DTS-HD file"
invoke-direct {v2, v3}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
goto :goto_659
:goto_658
throw v2
:goto_659
goto :goto_658
:pswitch_data_65a
.packed-switch 0x4
:pswitch_9f
:pswitch_9f
:pswitch_9f
:pswitch_9f
:pswitch_9f
:pswitch_9f
.end packed-switch
.end method
# virtual methods
.method public close()V
.registers 2
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 80
iget-object v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->dataSource:Lcom/googlecode/mp4parser/DataSource;
invoke-interface {v0}, Lcom/googlecode/mp4parser/DataSource;->close()V
.line 81
return-void
.end method
.method public getCompositionTimeEntries()Ljava/util/List;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/List<",
"Lcom/coremedia/iso/boxes/CompositionTimeToSample$Entry;",
">;"
}
.end annotation
.line 122
const/4 v0, 0x0
return-object v0
.end method
.method public getHandler()Ljava/lang/String;
.registers 2
.line 138
const-string/jumbo v0, "soun"
return-object v0
.end method
.method public getSampleDependencies()Ljava/util/List;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/List<",
"Lcom/coremedia/iso/boxes/SampleDependencyTypeBox$Entry;",
">;"
}
.end annotation
.line 130
const/4 v0, 0x0
return-object v0
.end method
.method public getSampleDescriptionBox()Lcom/coremedia/iso/boxes/SampleDescriptionBox;
.registers 2
.line 114
iget-object v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->sampleDescriptionBox:Lcom/coremedia/iso/boxes/SampleDescriptionBox;
return-object v0
.end method
.method public getSampleDurations()[J
.registers 2
.line 118
iget-object v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->sampleDurations:[J
return-object v0
.end method
.method public getSamples()Ljava/util/List;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/List<",
"Lcom/googlecode/mp4parser/authoring/Sample;",
">;"
}
.end annotation
.line 110
iget-object v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->samples:Ljava/util/List;
return-object v0
.end method
.method public getSyncSamples()[J
.registers 2
.line 126
const/4 v0, 0x0
return-object v0
.end method
.method public getTrackMetaData()Lcom/googlecode/mp4parser/authoring/TrackMetaData;
.registers 2
.line 134
iget-object v0, p0, Lcom/googlecode/mp4parser/authoring/tracks/DTSTrackImpl;->trackMetaData:Lcom/googlecode/mp4parser/authoring/TrackMetaData;
return-object v0
.end method