public final class sun.audio.AudioDevice
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: sun.audio.AudioDevice
super_class: java.lang.Object
{
private boolean DEBUG;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.util.Hashtable clipStreams;
descriptor: Ljava/util/Hashtable;
flags: (0x0002) ACC_PRIVATE
private java.util.Vector infos;
descriptor: Ljava/util/Vector;
flags: (0x0002) ACC_PRIVATE
private boolean playing;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private javax.sound.sampled.Mixer mixer;
descriptor: Ljavax/sound/sampled/Mixer;
flags: (0x0002) ACC_PRIVATE
public static final sun.audio.AudioDevice device;
descriptor: Lsun/audio/AudioDevice;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new sun.audio.AudioDevice
dup
invokespecial sun.audio.AudioDevice.<init>:()V
putstatic sun.audio.AudioDevice.device:Lsun/audio/AudioDevice;
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_0
putfield sun.audio.AudioDevice.DEBUG:Z
2: aload 0
iconst_0
putfield sun.audio.AudioDevice.playing:Z
3: aload 0
aconst_null
putfield sun.audio.AudioDevice.mixer:Ljavax/sound/sampled/Mixer;
4: aload 0
new java.util.Hashtable
dup
invokespecial java.util.Hashtable.<init>:()V
putfield sun.audio.AudioDevice.clipStreams:Ljava/util/Hashtable;
5: aload 0
new java.util.Vector
dup
invokespecial java.util.Vector.<init>:()V
putfield sun.audio.AudioDevice.infos:Ljava/util/Vector;
6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/audio/AudioDevice;
private synchronized void startSampled(javax.sound.sampled.AudioInputStream, java.io.InputStream);
descriptor: (Ljavax/sound/sampled/AudioInputStream;Ljava/io/InputStream;)V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=6, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
start local 3 1: aconst_null
astore 4
start local 4 2: aconst_null
astore 5
start local 5 3: aconst_null
astore 6
start local 6 4: aload 1
invokestatic com.sun.media.sound.Toolkit.getPCMConvertedAudioInputStream:(Ljavax/sound/sampled/AudioInputStream;)Ljavax/sound/sampled/AudioInputStream;
astore 1
5: aload 1
ifnonnull 7
6: return
7: StackMap locals: sun.audio.AudioDevice javax.sound.sampled.AudioInputStream java.io.InputStream sun.audio.AudioDevice$Info com.sun.media.sound.DataPusher javax.sound.sampled.DataLine$Info javax.sound.sampled.SourceDataLine
StackMap stack:
new javax.sound.sampled.DataLine$Info
dup
ldc Ljavax/sound/sampled/SourceDataLine;
8: aload 1
invokevirtual javax.sound.sampled.AudioInputStream.getFormat:()Ljavax/sound/sampled/AudioFormat;
9: invokespecial javax.sound.sampled.DataLine$Info.<init>:(Ljava/lang/Class;Ljavax/sound/sampled/AudioFormat;)V
astore 5
10: aload 5
invokestatic javax.sound.sampled.AudioSystem.isLineSupported:(Ljavax/sound/sampled/Line$Info;)Z
ifne 12
11: return
12: StackMap locals:
StackMap stack:
aload 5
invokestatic javax.sound.sampled.AudioSystem.getLine:(Ljavax/sound/sampled/Line$Info;)Ljavax/sound/sampled/Line;
checkcast javax.sound.sampled.SourceDataLine
astore 6
13: new com.sun.media.sound.DataPusher
dup
aload 6
aload 1
invokespecial com.sun.media.sound.DataPusher.<init>:(Ljavax/sound/sampled/SourceDataLine;Ljavax/sound/sampled/AudioInputStream;)V
astore 4
14: new sun.audio.AudioDevice$Info
dup
aload 0
aconst_null
aload 2
aload 4
invokespecial sun.audio.AudioDevice$Info.<init>:(Lsun/audio/AudioDevice;Ljavax/sound/midi/Sequencer;Ljava/io/InputStream;Lcom/sun/media/sound/DataPusher;)V
astore 3
15: aload 0
getfield sun.audio.AudioDevice.infos:Ljava/util/Vector;
aload 3
invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
16: aload 4
invokevirtual com.sun.media.sound.DataPusher.start:()V
17: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lsun/audio/AudioDevice;
0 18 1 as Ljavax/sound/sampled/AudioInputStream;
0 18 2 in Ljava/io/InputStream;
1 18 3 info Lsun/audio/AudioDevice$Info;
2 18 4 datapusher Lcom/sun/media/sound/DataPusher;
3 18 5 lineinfo Ljavax/sound/sampled/DataLine$Info;
4 18 6 sourcedataline Ljavax/sound/sampled/SourceDataLine;
Exceptions:
throws javax.sound.sampled.UnsupportedAudioFileException, javax.sound.sampled.LineUnavailableException
MethodParameters:
Name Flags
as
in
private synchronized void startMidi(java.io.InputStream, java.io.InputStream);
descriptor: (Ljava/io/InputStream;Ljava/io/InputStream;)V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=6, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
start local 3 1: aconst_null
astore 4
start local 4 2: invokestatic javax.sound.midi.MidiSystem.getSequencer:()Ljavax/sound/midi/Sequencer;
astore 3
3: aload 3
invokeinterface javax.sound.midi.Sequencer.open:()V
4: aload 3
aload 1
invokeinterface javax.sound.midi.Sequencer.setSequence:(Ljava/io/InputStream;)V
5: goto 8
StackMap locals: sun.audio.AudioDevice java.io.InputStream java.io.InputStream javax.sound.midi.Sequencer sun.audio.AudioDevice$Info
StackMap stack: java.io.IOException
6: astore 5
start local 5 7: new javax.sound.midi.InvalidMidiDataException
dup
aload 5
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
invokespecial javax.sound.midi.InvalidMidiDataException.<init>:(Ljava/lang/String;)V
athrow
end local 5 8: StackMap locals:
StackMap stack:
new sun.audio.AudioDevice$Info
dup
aload 0
aload 3
aload 2
aconst_null
invokespecial sun.audio.AudioDevice$Info.<init>:(Lsun/audio/AudioDevice;Ljavax/sound/midi/Sequencer;Ljava/io/InputStream;Lcom/sun/media/sound/DataPusher;)V
astore 4
9: aload 0
getfield sun.audio.AudioDevice.infos:Ljava/util/Vector;
aload 4
invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
10: aload 3
aload 4
invokeinterface javax.sound.midi.Sequencer.addMetaEventListener:(Ljavax/sound/midi/MetaEventListener;)Z
pop
11: aload 3
invokeinterface javax.sound.midi.Sequencer.start:()V
12: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/audio/AudioDevice;
0 13 1 bis Ljava/io/InputStream;
0 13 2 in Ljava/io/InputStream;
1 13 3 sequencer Ljavax/sound/midi/Sequencer;
2 13 4 info Lsun/audio/AudioDevice$Info;
7 8 5 e Ljava/io/IOException;
Exception table:
from to target type
4 5 6 Class java.io.IOException
Exceptions:
throws javax.sound.midi.InvalidMidiDataException, javax.sound.midi.MidiUnavailableException
MethodParameters:
Name Flags
bis
in
public synchronized void openChannel(java.io.InputStream);
descriptor: (Ljava/io/InputStream;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=9, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.audio.AudioDevice.DEBUG:Z
ifeq 3
1: getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc "AudioDevice: openChannel"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
2: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "input stream ="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
3: StackMap locals:
StackMap stack:
aconst_null
astore 2
start local 2 4: iconst_0
istore 3
start local 3 5: goto 10
6: StackMap locals: sun.audio.AudioDevice$Info int
StackMap stack:
aload 0
getfield sun.audio.AudioDevice.infos:Ljava/util/Vector;
iload 3
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast sun.audio.AudioDevice$Info
astore 2
7: aload 2
getfield sun.audio.AudioDevice$Info.in:Ljava/io/InputStream;
aload 1
if_acmpne 9
8: return
9: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
10: iload 3
aload 0
getfield sun.audio.AudioDevice.infos:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
if_icmplt 6
end local 3 11: aconst_null
astore 3
start local 3 12: aload 1
instanceof sun.audio.AudioStream
ifeq 23
13: aload 1
checkcast sun.audio.AudioStream
getfield sun.audio.AudioStream.midiformat:Ljavax/sound/midi/MidiFileFormat;
ifnull 18
14: aload 0
aload 1
checkcast sun.audio.AudioStream
getfield sun.audio.AudioStream.stream:Ljava/io/InputStream;
aload 1
invokevirtual sun.audio.AudioDevice.startMidi:(Ljava/io/InputStream;Ljava/io/InputStream;)V
15: goto 72
StackMap locals: sun.audio.AudioDevice java.io.InputStream sun.audio.AudioDevice$Info javax.sound.sampled.AudioInputStream
StackMap stack: java.lang.Exception
16: pop
17: return
18: StackMap locals:
StackMap stack:
aload 1
checkcast sun.audio.AudioStream
getfield sun.audio.AudioStream.ais:Ljavax/sound/sampled/AudioInputStream;
ifnull 72
19: aload 0
aload 1
checkcast sun.audio.AudioStream
getfield sun.audio.AudioStream.ais:Ljavax/sound/sampled/AudioInputStream;
aload 1
invokevirtual sun.audio.AudioDevice.startSampled:(Ljavax/sound/sampled/AudioInputStream;Ljava/io/InputStream;)V
20: goto 72
StackMap locals:
StackMap stack: java.lang.Exception
21: pop
22: return
23: StackMap locals:
StackMap stack:
aload 1
instanceof sun.audio.AudioDataStream
ifeq 41
24: aload 1
instanceof sun.audio.ContinuousAudioDataStream
ifeq 33
25: new javax.sound.sampled.AudioInputStream
dup
aload 1
26: aload 1
checkcast sun.audio.AudioDataStream
invokevirtual sun.audio.AudioDataStream.getAudioData:()Lsun/audio/AudioData;
getfield sun.audio.AudioData.format:Ljavax/sound/sampled/AudioFormat;
27: ldc -1
28: invokespecial javax.sound.sampled.AudioInputStream.<init>:(Ljava/io/InputStream;Ljavax/sound/sampled/AudioFormat;J)V
astore 4
start local 4 29: aload 0
aload 4
aload 1
invokevirtual sun.audio.AudioDevice.startSampled:(Ljavax/sound/sampled/AudioInputStream;Ljava/io/InputStream;)V
end local 4 30: goto 72
StackMap locals:
StackMap stack: java.lang.Exception
31: pop
32: return
33: StackMap locals:
StackMap stack:
new javax.sound.sampled.AudioInputStream
dup
aload 1
34: aload 1
checkcast sun.audio.AudioDataStream
invokevirtual sun.audio.AudioDataStream.getAudioData:()Lsun/audio/AudioData;
getfield sun.audio.AudioData.format:Ljavax/sound/sampled/AudioFormat;
35: aload 1
checkcast sun.audio.AudioDataStream
invokevirtual sun.audio.AudioDataStream.getAudioData:()Lsun/audio/AudioData;
getfield sun.audio.AudioData.buffer:[B
arraylength
i2l
36: invokespecial javax.sound.sampled.AudioInputStream.<init>:(Ljava/io/InputStream;Ljavax/sound/sampled/AudioFormat;J)V
astore 4
start local 4 37: aload 0
aload 4
aload 1
invokevirtual sun.audio.AudioDevice.startSampled:(Ljavax/sound/sampled/AudioInputStream;Ljava/io/InputStream;)V
end local 4 38: goto 72
StackMap locals:
StackMap stack: java.lang.Exception
39: pop
40: return
41: StackMap locals:
StackMap stack:
new java.io.BufferedInputStream
dup
aload 1
sipush 1024
invokespecial java.io.BufferedInputStream.<init>:(Ljava/io/InputStream;I)V
astore 4
start local 4 42: aload 4
invokestatic javax.sound.sampled.AudioSystem.getAudioInputStream:(Ljava/io/InputStream;)Ljavax/sound/sampled/AudioInputStream;
astore 3
43: goto 46
StackMap locals: sun.audio.AudioDevice java.io.InputStream sun.audio.AudioDevice$Info javax.sound.sampled.AudioInputStream java.io.BufferedInputStream
StackMap stack: java.io.IOException
44: pop
45: return
46: StackMap locals:
StackMap stack:
aload 0
aload 3
aload 1
invokevirtual sun.audio.AudioDevice.startSampled:(Ljavax/sound/sampled/AudioInputStream;Ljava/io/InputStream;)V
47: goto 72
StackMap locals:
StackMap stack: javax.sound.sampled.UnsupportedAudioFileException
48: pop
49: aload 4
invokestatic javax.sound.midi.MidiSystem.getMidiFileFormat:(Ljava/io/InputStream;)Ljavax/sound/midi/MidiFileFormat;
pop
50: goto 53
StackMap locals:
StackMap stack: java.io.IOException
51: pop
52: return
53: StackMap locals:
StackMap stack:
aload 0
aload 4
aload 1
invokevirtual sun.audio.AudioDevice.startMidi:(Ljava/io/InputStream;Ljava/io/InputStream;)V
54: goto 72
StackMap locals:
StackMap stack: javax.sound.midi.InvalidMidiDataException
55: pop
56: new javax.sound.sampled.AudioFormat
dup
getstatic javax.sound.sampled.AudioFormat$Encoding.ULAW:Ljavax/sound/sampled/AudioFormat$Encoding;
57: ldc 8000.0
bipush 8
iconst_1
iconst_1
ldc 8000.0
iconst_1
58: invokespecial javax.sound.sampled.AudioFormat.<init>:(Ljavax/sound/sampled/AudioFormat$Encoding;FIIIFZ)V
astore 5
start local 5 59: new javax.sound.sampled.AudioInputStream
dup
aload 4
60: aload 5
ldc -1
61: invokespecial javax.sound.sampled.AudioInputStream.<init>:(Ljava/io/InputStream;Ljavax/sound/sampled/AudioFormat;J)V
astore 6
start local 6 62: aload 0
aload 6
aload 1
invokevirtual sun.audio.AudioDevice.startSampled:(Ljavax/sound/sampled/AudioInputStream;Ljava/io/InputStream;)V
end local 6 63: goto 72
StackMap locals: sun.audio.AudioDevice java.io.InputStream sun.audio.AudioDevice$Info javax.sound.sampled.AudioInputStream java.io.BufferedInputStream javax.sound.sampled.AudioFormat
StackMap stack: javax.sound.sampled.UnsupportedAudioFileException
64: pop
65: return
66: StackMap locals:
StackMap stack: javax.sound.sampled.LineUnavailableException
pop
67: return
end local 5 68: StackMap locals: sun.audio.AudioDevice java.io.InputStream sun.audio.AudioDevice$Info javax.sound.sampled.AudioInputStream java.io.BufferedInputStream
StackMap stack: javax.sound.midi.MidiUnavailableException
pop
69: return
70: StackMap locals:
StackMap stack: javax.sound.sampled.LineUnavailableException
pop
71: return
end local 4 72: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Object.notify:()V
73: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 74 0 this Lsun/audio/AudioDevice;
0 74 1 in Ljava/io/InputStream;
4 74 2 info Lsun/audio/AudioDevice$Info;
5 11 3 i I
12 74 3 as Ljavax/sound/sampled/AudioInputStream;
29 30 4 ais Ljavax/sound/sampled/AudioInputStream;
37 38 4 ais Ljavax/sound/sampled/AudioInputStream;
42 72 4 bis Ljava/io/BufferedInputStream;
59 68 5 defformat Ljavax/sound/sampled/AudioFormat;
62 63 6 defaif Ljavax/sound/sampled/AudioInputStream;
Exception table:
from to target type
14 15 16 Class java.lang.Exception
19 20 21 Class java.lang.Exception
25 30 31 Class java.lang.Exception
33 38 39 Class java.lang.Exception
42 43 44 Class java.io.IOException
42 45 48 Class javax.sound.sampled.UnsupportedAudioFileException
46 47 48 Class javax.sound.sampled.UnsupportedAudioFileException
49 50 51 Class java.io.IOException
49 52 55 Class javax.sound.midi.InvalidMidiDataException
53 54 55 Class javax.sound.midi.InvalidMidiDataException
59 63 64 Class javax.sound.sampled.UnsupportedAudioFileException
59 63 66 Class javax.sound.sampled.LineUnavailableException
49 52 68 Class javax.sound.midi.MidiUnavailableException
53 54 68 Class javax.sound.midi.MidiUnavailableException
42 45 70 Class javax.sound.sampled.LineUnavailableException
46 47 70 Class javax.sound.sampled.LineUnavailableException
MethodParameters:
Name Flags
in
public synchronized void closeChannel(java.io.InputStream);
descriptor: (Ljava/io/InputStream;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.audio.AudioDevice.DEBUG:Z
ifeq 2
1: getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc "AudioDevice.closeChannel"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
aload 1
ifnonnull 3
return
3: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 4: goto 15
5: StackMap locals: sun.audio.AudioDevice java.io.InputStream top int
StackMap stack:
aload 0
getfield sun.audio.AudioDevice.infos:Ljava/util/Vector;
iload 3
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast sun.audio.AudioDevice$Info
astore 2
start local 2 6: aload 2
getfield sun.audio.AudioDevice$Info.in:Ljava/io/InputStream;
aload 1
if_acmpne 14
7: aload 2
getfield sun.audio.AudioDevice$Info.sequencer:Ljavax/sound/midi/Sequencer;
ifnull 11
8: aload 2
getfield sun.audio.AudioDevice$Info.sequencer:Ljavax/sound/midi/Sequencer;
invokeinterface javax.sound.midi.Sequencer.stop:()V
9: aload 0
getfield sun.audio.AudioDevice.infos:Ljava/util/Vector;
aload 2
invokevirtual java.util.Vector.removeElement:(Ljava/lang/Object;)Z
pop
10: goto 14
StackMap locals: sun.audio.AudioDevice java.io.InputStream sun.audio.AudioDevice$Info int
StackMap stack:
11: aload 2
getfield sun.audio.AudioDevice$Info.datapusher:Lcom/sun/media/sound/DataPusher;
ifnull 14
12: aload 2
getfield sun.audio.AudioDevice$Info.datapusher:Lcom/sun/media/sound/DataPusher;
invokevirtual com.sun.media.sound.DataPusher.stop:()V
13: aload 0
getfield sun.audio.AudioDevice.infos:Ljava/util/Vector;
aload 2
invokevirtual java.util.Vector.removeElement:(Ljava/lang/Object;)Z
pop
14: StackMap locals:
StackMap stack:
iinc 3 1
end local 2 StackMap locals: sun.audio.AudioDevice java.io.InputStream top int
StackMap stack:
15: iload 3
aload 0
getfield sun.audio.AudioDevice.infos:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
if_icmplt 5
end local 3 16: aload 0
invokevirtual java.lang.Object.notify:()V
17: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lsun/audio/AudioDevice;
0 18 1 in Ljava/io/InputStream;
6 15 2 info Lsun/audio/AudioDevice$Info;
4 16 3 i I
MethodParameters:
Name Flags
in
public synchronized void open();
descriptor: ()V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/audio/AudioDevice;
public synchronized void close();
descriptor: ()V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/audio/AudioDevice;
public void play();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.audio.AudioDevice.DEBUG:Z
ifeq 2
1: getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc "exiting play()"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/audio/AudioDevice;
public synchronized void closeStreams();
descriptor: ()V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=3, args_size=1
start local 0 0: iconst_0
istore 2
start local 2 1: goto 12
2: StackMap locals: sun.audio.AudioDevice top int
StackMap stack:
aload 0
getfield sun.audio.AudioDevice.infos:Ljava/util/Vector;
iload 2
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast sun.audio.AudioDevice$Info
astore 1
start local 1 3: aload 1
getfield sun.audio.AudioDevice$Info.sequencer:Ljavax/sound/midi/Sequencer;
ifnull 8
4: aload 1
getfield sun.audio.AudioDevice$Info.sequencer:Ljavax/sound/midi/Sequencer;
invokeinterface javax.sound.midi.Sequencer.stop:()V
5: aload 1
getfield sun.audio.AudioDevice$Info.sequencer:Ljavax/sound/midi/Sequencer;
invokeinterface javax.sound.midi.Sequencer.close:()V
6: aload 0
getfield sun.audio.AudioDevice.infos:Ljava/util/Vector;
aload 1
invokevirtual java.util.Vector.removeElement:(Ljava/lang/Object;)Z
pop
7: goto 11
StackMap locals: sun.audio.AudioDevice sun.audio.AudioDevice$Info int
StackMap stack:
8: aload 1
getfield sun.audio.AudioDevice$Info.datapusher:Lcom/sun/media/sound/DataPusher;
ifnull 11
9: aload 1
getfield sun.audio.AudioDevice$Info.datapusher:Lcom/sun/media/sound/DataPusher;
invokevirtual com.sun.media.sound.DataPusher.stop:()V
10: aload 0
getfield sun.audio.AudioDevice.infos:Ljava/util/Vector;
aload 1
invokevirtual java.util.Vector.removeElement:(Ljava/lang/Object;)Z
pop
11: StackMap locals:
StackMap stack:
iinc 2 1
end local 1 StackMap locals: sun.audio.AudioDevice top int
StackMap stack:
12: iload 2
aload 0
getfield sun.audio.AudioDevice.infos:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
if_icmplt 2
end local 2 13: aload 0
getfield sun.audio.AudioDevice.DEBUG:Z
ifeq 15
14: getstatic java.lang.System.err:Ljava/io/PrintStream;
ldc "Audio Device: Streams all closed."
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
15: StackMap locals: sun.audio.AudioDevice
StackMap stack:
aload 0
new java.util.Hashtable
dup
invokespecial java.util.Hashtable.<init>:()V
putfield sun.audio.AudioDevice.clipStreams:Ljava/util/Hashtable;
16: aload 0
new java.util.Vector
dup
invokespecial java.util.Vector.<init>:()V
putfield sun.audio.AudioDevice.infos:Ljava/util/Vector;
17: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lsun/audio/AudioDevice;
3 12 1 info Lsun/audio/AudioDevice$Info;
1 13 2 i I
public int openChannels();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.audio.AudioDevice.infos:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/audio/AudioDevice;
void setVerbose(boolean);
descriptor: (Z)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield sun.audio.AudioDevice.DEBUG:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/audio/AudioDevice;
0 2 1 v Z
MethodParameters:
Name Flags
v
}
SourceFile: "AudioDevice.java"
NestMembers:
sun.audio.AudioDevice$Info
InnerClasses:
public Encoding = javax.sound.sampled.AudioFormat$Encoding of javax.sound.sampled.AudioFormat
public Info = javax.sound.sampled.DataLine$Info of javax.sound.sampled.DataLine
public Info = javax.sound.sampled.Line$Info of javax.sound.sampled.Line
final Info = sun.audio.AudioDevice$Info of sun.audio.AudioDevice