public final class com.sun.media.sound.Toolkit
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.sun.media.sound.Toolkit
super_class: java.lang.Object
{
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/media/sound/Toolkit;
static void getUnsigned8(byte[], int, int);
descriptor: ([BII)V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iload 1
istore 3
start local 3 1: goto 4
2: StackMap locals: int
StackMap stack:
aload 0
iload 3
dup2
baload
sipush 128
iadd
i2b
bastore
3: iinc 3 1
StackMap locals:
StackMap stack:
4: iload 3
iload 1
iload 2
iadd
if_icmplt 2
end local 3 5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 b [B
0 6 1 off I
0 6 2 len I
1 5 3 i I
MethodParameters:
Name Flags
b
off
len
static void getByteSwapped(byte[], int, int);
descriptor: ([BII)V
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: iload 1
istore 4
start local 4 1: goto 6
2: StackMap locals: byte[] int int top int
StackMap stack:
aload 0
iload 4
baload
istore 3
start local 3 3: aload 0
iload 4
aload 0
iload 4
iconst_1
iadd
baload
bastore
4: aload 0
iload 4
iconst_1
iadd
iload 3
bastore
5: iinc 4 2
end local 3 StackMap locals:
StackMap stack:
6: iload 4
iload 1
iload 2
iadd
if_icmplt 2
end local 4 7: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 b [B
0 8 1 off I
0 8 2 len I
3 6 3 tempByte B
1 7 4 i I
MethodParameters:
Name Flags
b
off
len
static float linearToDB(float);
descriptor: (F)F
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: fload 0
f2d
dconst_0
dcmpl
ifne 1
ldc 1.0E-4
goto 2
StackMap locals:
StackMap stack:
1: fload 0
f2d
StackMap locals:
StackMap stack: double
2: invokestatic java.lang.Math.log:(D)D
ldc 10.0
invokestatic java.lang.Math.log:(D)D
ddiv
ldc 20.0
dmul
d2f
fstore 1
start local 1 3: fload 1
freturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 linear F
3 4 1 dB F
MethodParameters:
Name Flags
linear
static float dBToLinear(float);
descriptor: (F)F
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=2, args_size=1
start local 0 0: ldc 10.0
fload 0
f2d
ldc 20.0
ddiv
invokestatic java.lang.Math.pow:(DD)D
d2f
fstore 1
start local 1 1: fload 1
freturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 dB F
1 2 1 linear F
MethodParameters:
Name Flags
dB
static long align(long, int);
descriptor: (JI)J
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 2 0: iload 2
iconst_1
if_icmpgt 2
1: lload 0
lreturn
2: StackMap locals:
StackMap stack:
lload 0
lload 0
iload 2
i2l
lrem
lsub
lreturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 bytes J
0 3 2 blockSize I
MethodParameters:
Name Flags
bytes
blockSize
static int align(int, int);
descriptor: (II)I
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: iload 1
iconst_1
if_icmpgt 2
1: iload 0
ireturn
2: StackMap locals:
StackMap stack:
iload 0
iload 0
iload 1
irem
isub
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 bytes I
0 3 1 blockSize I
MethodParameters:
Name Flags
bytes
blockSize
static long millis2bytes(javax.sound.sampled.AudioFormat, long);
descriptor: (Ljavax/sound/sampled/AudioFormat;J)J
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: lload 1
l2f
aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameRate:()F
fmul
ldc 1000.0
fdiv
aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameSize:()I
i2f
fmul
f2l
lstore 3
start local 3 1: lload 3
aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameSize:()I
invokestatic com.sun.media.sound.Toolkit.align:(JI)J
lreturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 format Ljavax/sound/sampled/AudioFormat;
0 2 1 millis J
1 2 3 result J
MethodParameters:
Name Flags
format
millis
static long bytes2millis(javax.sound.sampled.AudioFormat, long);
descriptor: (Ljavax/sound/sampled/AudioFormat;J)J
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: lload 1
l2f
aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameRate:()F
fdiv
ldc 1000.0
fmul
aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameSize:()I
i2f
fdiv
f2l
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 format Ljavax/sound/sampled/AudioFormat;
0 1 1 bytes J
MethodParameters:
Name Flags
format
bytes
static long micros2bytes(javax.sound.sampled.AudioFormat, long);
descriptor: (Ljavax/sound/sampled/AudioFormat;J)J
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: lload 1
l2f
aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameRate:()F
fmul
ldc 1000000.0
fdiv
aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameSize:()I
i2f
fmul
f2l
lstore 3
start local 3 1: lload 3
aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameSize:()I
invokestatic com.sun.media.sound.Toolkit.align:(JI)J
lreturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 format Ljavax/sound/sampled/AudioFormat;
0 2 1 micros J
1 2 3 result J
MethodParameters:
Name Flags
format
micros
static long bytes2micros(javax.sound.sampled.AudioFormat, long);
descriptor: (Ljavax/sound/sampled/AudioFormat;J)J
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: lload 1
l2f
aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameRate:()F
fdiv
ldc 1000000.0
fmul
aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameSize:()I
i2f
fdiv
f2l
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 format Ljavax/sound/sampled/AudioFormat;
0 1 1 bytes J
MethodParameters:
Name Flags
format
bytes
static long micros2frames(javax.sound.sampled.AudioFormat, long);
descriptor: (Ljavax/sound/sampled/AudioFormat;J)J
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: lload 1
l2f
aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameRate:()F
fmul
ldc 1000000.0
fdiv
f2l
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 format Ljavax/sound/sampled/AudioFormat;
0 1 1 micros J
MethodParameters:
Name Flags
format
micros
static long frames2micros(javax.sound.sampled.AudioFormat, long);
descriptor: (Ljavax/sound/sampled/AudioFormat;J)J
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: lload 1
l2d
aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameRate:()F
f2d
ddiv
ldc 1000000.0
dmul
d2l
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 format Ljavax/sound/sampled/AudioFormat;
0 1 1 frames J
MethodParameters:
Name Flags
format
frames
static void isFullySpecifiedAudioFormat(javax.sound.sampled.AudioFormat);
descriptor: (Ljavax/sound/sampled/AudioFormat;)V
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameSize:()I
ifgt 7
1: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "invalid frame size: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
2: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameSize:()I
iconst_m1
if_icmpne 4
3: ldc "NOT_SPECIFIED"
goto 5
StackMap locals: javax.sound.sampled.AudioFormat
StackMap stack: new 1 new 1 java.lang.StringBuilder
4: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameSize:()I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
5: StackMap locals: javax.sound.sampled.AudioFormat
StackMap stack: new 1 new 1 java.lang.StringBuilder java.lang.String
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
6: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
aload 0
invokevirtual javax.sound.sampled.AudioFormat.getEncoding:()Ljavax/sound/sampled/AudioFormat$Encoding;
getstatic javax.sound.sampled.AudioFormat$Encoding.PCM_SIGNED:Ljavax/sound/sampled/AudioFormat$Encoding;
invokevirtual javax.sound.sampled.AudioFormat$Encoding.equals:(Ljava/lang/Object;)Z
ifne 12
8: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getEncoding:()Ljavax/sound/sampled/AudioFormat$Encoding;
getstatic javax.sound.sampled.AudioFormat$Encoding.PCM_UNSIGNED:Ljavax/sound/sampled/AudioFormat$Encoding;
invokevirtual javax.sound.sampled.AudioFormat$Encoding.equals:(Ljava/lang/Object;)Z
ifne 12
9: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getEncoding:()Ljavax/sound/sampled/AudioFormat$Encoding;
getstatic javax.sound.sampled.AudioFormat$Encoding.ULAW:Ljavax/sound/sampled/AudioFormat$Encoding;
invokevirtual javax.sound.sampled.AudioFormat$Encoding.equals:(Ljava/lang/Object;)Z
ifne 12
10: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getEncoding:()Ljavax/sound/sampled/AudioFormat$Encoding;
getstatic javax.sound.sampled.AudioFormat$Encoding.ALAW:Ljavax/sound/sampled/AudioFormat$Encoding;
invokevirtual javax.sound.sampled.AudioFormat$Encoding.equals:(Ljava/lang/Object;)Z
ifne 12
11: return
12: StackMap locals:
StackMap stack:
aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameRate:()F
fconst_0
fcmpg
ifgt 19
13: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "invalid frame rate: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
14: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameRate:()F
ldc -1.0
fcmpl
ifne 16
15: ldc "NOT_SPECIFIED"
goto 17
StackMap locals: javax.sound.sampled.AudioFormat
StackMap stack: new 13 new 13 java.lang.StringBuilder
16: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameRate:()F
invokestatic java.lang.String.valueOf:(F)Ljava/lang/String;
17: StackMap locals: javax.sound.sampled.AudioFormat
StackMap stack: new 13 new 13 java.lang.StringBuilder java.lang.String
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
18: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
19: StackMap locals:
StackMap stack:
aload 0
invokevirtual javax.sound.sampled.AudioFormat.getSampleRate:()F
fconst_0
fcmpg
ifgt 26
20: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "invalid sample rate: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
21: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getSampleRate:()F
ldc -1.0
fcmpl
ifne 23
22: ldc "NOT_SPECIFIED"
goto 24
StackMap locals: javax.sound.sampled.AudioFormat
StackMap stack: new 20 new 20 java.lang.StringBuilder
23: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getSampleRate:()F
invokestatic java.lang.String.valueOf:(F)Ljava/lang/String;
24: StackMap locals: javax.sound.sampled.AudioFormat
StackMap stack: new 20 new 20 java.lang.StringBuilder java.lang.String
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
25: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
26: StackMap locals:
StackMap stack:
aload 0
invokevirtual javax.sound.sampled.AudioFormat.getSampleSizeInBits:()I
ifgt 33
27: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "invalid sample size in bits: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
28: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getSampleSizeInBits:()I
iconst_m1
if_icmpne 30
29: ldc "NOT_SPECIFIED"
goto 31
StackMap locals: javax.sound.sampled.AudioFormat
StackMap stack: new 27 new 27 java.lang.StringBuilder
30: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getSampleSizeInBits:()I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
31: StackMap locals: javax.sound.sampled.AudioFormat
StackMap stack: new 27 new 27 java.lang.StringBuilder java.lang.String
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
32: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
33: StackMap locals:
StackMap stack:
aload 0
invokevirtual javax.sound.sampled.AudioFormat.getChannels:()I
ifgt 40
34: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "invalid number of channels: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
35: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getChannels:()I
iconst_m1
if_icmpne 37
36: ldc "NOT_SPECIFIED"
goto 38
StackMap locals: javax.sound.sampled.AudioFormat
StackMap stack: new 34 new 34 java.lang.StringBuilder
37: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getChannels:()I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
38: StackMap locals: javax.sound.sampled.AudioFormat
StackMap stack: new 34 new 34 java.lang.StringBuilder java.lang.String
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
39: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
40: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 41 0 format Ljavax/sound/sampled/AudioFormat;
MethodParameters:
Name Flags
format
static boolean isFullySpecifiedPCMFormat(javax.sound.sampled.AudioFormat);
descriptor: (Ljavax/sound/sampled/AudioFormat;)Z
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getEncoding:()Ljavax/sound/sampled/AudioFormat$Encoding;
getstatic javax.sound.sampled.AudioFormat$Encoding.PCM_SIGNED:Ljavax/sound/sampled/AudioFormat$Encoding;
invokevirtual javax.sound.sampled.AudioFormat$Encoding.equals:(Ljava/lang/Object;)Z
ifne 3
1: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getEncoding:()Ljavax/sound/sampled/AudioFormat$Encoding;
getstatic javax.sound.sampled.AudioFormat$Encoding.PCM_UNSIGNED:Ljavax/sound/sampled/AudioFormat$Encoding;
invokevirtual javax.sound.sampled.AudioFormat$Encoding.equals:(Ljava/lang/Object;)Z
ifne 3
2: iconst_0
ireturn
3: StackMap locals:
StackMap stack:
aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameRate:()F
fconst_0
fcmpg
ifle 8
4: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getSampleRate:()F
fconst_0
fcmpg
ifle 8
5: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getSampleSizeInBits:()I
ifle 8
6: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getFrameSize:()I
ifle 8
7: aload 0
invokevirtual javax.sound.sampled.AudioFormat.getChannels:()I
ifgt 9
8: StackMap locals:
StackMap stack:
iconst_0
ireturn
9: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 format Ljavax/sound/sampled/AudioFormat;
MethodParameters:
Name Flags
format
public static javax.sound.sampled.AudioInputStream getPCMConvertedAudioInputStream(javax.sound.sampled.AudioInputStream);
descriptor: (Ljavax/sound/sampled/AudioInputStream;)Ljavax/sound/sampled/AudioInputStream;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=9, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual javax.sound.sampled.AudioInputStream.getFormat:()Ljavax/sound/sampled/AudioFormat;
astore 1
start local 1 1: aload 1
invokevirtual javax.sound.sampled.AudioFormat.getEncoding:()Ljavax/sound/sampled/AudioFormat$Encoding;
getstatic javax.sound.sampled.AudioFormat$Encoding.PCM_SIGNED:Ljavax/sound/sampled/AudioFormat$Encoding;
invokevirtual javax.sound.sampled.AudioFormat$Encoding.equals:(Ljava/lang/Object;)Z
ifne 16
2: aload 1
invokevirtual javax.sound.sampled.AudioFormat.getEncoding:()Ljavax/sound/sampled/AudioFormat$Encoding;
getstatic javax.sound.sampled.AudioFormat$Encoding.PCM_UNSIGNED:Ljavax/sound/sampled/AudioFormat$Encoding;
invokevirtual javax.sound.sampled.AudioFormat$Encoding.equals:(Ljava/lang/Object;)Z
ifne 16
3: new javax.sound.sampled.AudioFormat
dup
getstatic javax.sound.sampled.AudioFormat$Encoding.PCM_SIGNED:Ljavax/sound/sampled/AudioFormat$Encoding;
4: aload 1
invokevirtual javax.sound.sampled.AudioFormat.getSampleRate:()F
5: bipush 16
6: aload 1
invokevirtual javax.sound.sampled.AudioFormat.getChannels:()I
7: aload 1
invokevirtual javax.sound.sampled.AudioFormat.getChannels:()I
iconst_2
imul
8: aload 1
invokevirtual javax.sound.sampled.AudioFormat.getSampleRate:()F
9: invokestatic com.sun.media.sound.Platform.isBigEndian:()Z
10: invokespecial javax.sound.sampled.AudioFormat.<init>:(Ljavax/sound/sampled/AudioFormat$Encoding;FIIIFZ)V
11: astore 2
start local 2 12: aload 2
aload 0
invokestatic javax.sound.sampled.AudioSystem.getAudioInputStream:(Ljavax/sound/sampled/AudioFormat;Ljavax/sound/sampled/AudioInputStream;)Ljavax/sound/sampled/AudioInputStream;
astore 0
end local 2 13: goto 16
StackMap locals: javax.sound.sampled.AudioInputStream javax.sound.sampled.AudioFormat
StackMap stack: java.lang.Exception
14: astore 2
start local 2 15: aconst_null
astore 0
end local 2 16: StackMap locals:
StackMap stack:
aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 ais Ljavax/sound/sampled/AudioInputStream;
1 17 1 af Ljavax/sound/sampled/AudioFormat;
12 13 2 newFormat Ljavax/sound/sampled/AudioFormat;
15 16 2 e Ljava/lang/Exception;
Exception table:
from to target type
3 13 14 Class java.lang.Exception
MethodParameters:
Name Flags
ais
}
SourceFile: "Toolkit.java"
InnerClasses:
public Encoding = javax.sound.sampled.AudioFormat$Encoding of javax.sound.sampled.AudioFormat