public class android.media.AudioRecord$Builder
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: android.media.AudioRecord$Builder
super_class: java.lang.Object
{
private android.media.AudioAttributes mAttributes;
descriptor: Landroid/media/AudioAttributes;
flags: (0x0002) ACC_PRIVATE
private android.media.AudioFormat mFormat;
descriptor: Landroid/media/AudioFormat;
flags: (0x0002) ACC_PRIVATE
private int mBufferSizeInBytes;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mSessionId;
descriptor: I
flags: (0x0002) ACC_PRIVATE
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_0
putfield android.media.AudioRecord$Builder.mSessionId:I
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/media/AudioRecord$Builder;
public android.media.AudioRecord$Builder setAudioSource(int);
descriptor: (I)Landroid/media/AudioRecord$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: iload 1
iflt 2
1: iload 1
invokestatic android.media.MediaRecorder.getAudioSourceMax:()I
if_icmple 3
2: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Invalid audio source "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 0
new android.media.AudioAttributes$Builder
dup
invokespecial android.media.AudioAttributes$Builder.<init>:()V
4: iload 1
invokevirtual android.media.AudioAttributes$Builder.setInternalCapturePreset:(I)Landroid/media/AudioAttributes$Builder;
5: invokevirtual android.media.AudioAttributes$Builder.build:()Landroid/media/AudioAttributes;
6: putfield android.media.AudioRecord$Builder.mAttributes:Landroid/media/AudioAttributes;
7: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Landroid/media/AudioRecord$Builder;
0 8 1 source I
Exceptions:
throws java.lang.IllegalArgumentException
MethodParameters:
Name Flags
source
public android.media.AudioRecord$Builder setAudioAttributes(android.media.AudioAttributes);
descriptor: (Landroid/media/AudioAttributes;)Landroid/media/AudioRecord$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "Illegal null AudioAttributes argument"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual android.media.AudioAttributes.getCapturePreset:()I
iconst_m1
if_icmpne 6
3: new java.lang.IllegalArgumentException
dup
4: ldc "No valid capture preset in AudioAttributes argument"
5: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield android.media.AudioRecord$Builder.mAttributes:Landroid/media/AudioAttributes;
7: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Landroid/media/AudioRecord$Builder;
0 8 1 attributes Landroid/media/AudioAttributes;
Exceptions:
throws java.lang.IllegalArgumentException
RuntimeVisibleAnnotations:
android.annotation.SystemApi()
MethodParameters:
Name Flags
attributes
public android.media.AudioRecord$Builder setAudioFormat(android.media.AudioFormat);
descriptor: (Landroid/media/AudioFormat;)Landroid/media/AudioRecord$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "Illegal null AudioFormat argument"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield android.media.AudioRecord$Builder.mFormat:Landroid/media/AudioFormat;
3: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/media/AudioRecord$Builder;
0 4 1 format Landroid/media/AudioFormat;
Exceptions:
throws java.lang.IllegalArgumentException
MethodParameters:
Name Flags
format
public android.media.AudioRecord$Builder setBufferSizeInBytes(int);
descriptor: (I)Landroid/media/AudioRecord$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ifgt 2
1: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Invalid buffer size "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield android.media.AudioRecord$Builder.mBufferSizeInBytes:I
3: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/media/AudioRecord$Builder;
0 4 1 bufferSizeInBytes I
Exceptions:
throws java.lang.IllegalArgumentException
MethodParameters:
Name Flags
bufferSizeInBytes
public android.media.AudioRecord$Builder setSessionId(int);
descriptor: (I)Landroid/media/AudioRecord$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ifge 2
1: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Invalid session ID "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield android.media.AudioRecord$Builder.mSessionId:I
3: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/media/AudioRecord$Builder;
0 4 1 sessionId I
Exceptions:
throws java.lang.IllegalArgumentException
RuntimeVisibleAnnotations:
android.annotation.SystemApi()
MethodParameters:
Name Flags
sessionId
public android.media.AudioRecord build();
descriptor: ()Landroid/media/AudioRecord;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=1
start local 0 0: aload 0
getfield android.media.AudioRecord$Builder.mFormat:Landroid/media/AudioFormat;
ifnonnull 7
1: aload 0
new android.media.AudioFormat$Builder
dup
invokespecial android.media.AudioFormat$Builder.<init>:()V
2: iconst_2
invokevirtual android.media.AudioFormat$Builder.setEncoding:(I)Landroid/media/AudioFormat$Builder;
3: bipush 16
invokevirtual android.media.AudioFormat$Builder.setChannelMask:(I)Landroid/media/AudioFormat$Builder;
4: invokevirtual android.media.AudioFormat$Builder.build:()Landroid/media/AudioFormat;
5: putfield android.media.AudioRecord$Builder.mFormat:Landroid/media/AudioFormat;
6: goto 18
7: StackMap locals:
StackMap stack:
aload 0
getfield android.media.AudioRecord$Builder.mFormat:Landroid/media/AudioFormat;
invokevirtual android.media.AudioFormat.getEncoding:()I
ifne 12
8: aload 0
new android.media.AudioFormat$Builder
dup
aload 0
getfield android.media.AudioRecord$Builder.mFormat:Landroid/media/AudioFormat;
invokespecial android.media.AudioFormat$Builder.<init>:(Landroid/media/AudioFormat;)V
9: iconst_2
invokevirtual android.media.AudioFormat$Builder.setEncoding:(I)Landroid/media/AudioFormat$Builder;
10: invokevirtual android.media.AudioFormat$Builder.build:()Landroid/media/AudioFormat;
11: putfield android.media.AudioRecord$Builder.mFormat:Landroid/media/AudioFormat;
12: StackMap locals:
StackMap stack:
aload 0
getfield android.media.AudioRecord$Builder.mFormat:Landroid/media/AudioFormat;
invokevirtual android.media.AudioFormat.getChannelMask:()I
ifne 18
13: aload 0
getfield android.media.AudioRecord$Builder.mFormat:Landroid/media/AudioFormat;
invokevirtual android.media.AudioFormat.getChannelIndexMask:()I
ifne 18
14: aload 0
new android.media.AudioFormat$Builder
dup
aload 0
getfield android.media.AudioRecord$Builder.mFormat:Landroid/media/AudioFormat;
invokespecial android.media.AudioFormat$Builder.<init>:(Landroid/media/AudioFormat;)V
15: bipush 16
invokevirtual android.media.AudioFormat$Builder.setChannelMask:(I)Landroid/media/AudioFormat$Builder;
16: invokevirtual android.media.AudioFormat$Builder.build:()Landroid/media/AudioFormat;
17: putfield android.media.AudioRecord$Builder.mFormat:Landroid/media/AudioFormat;
18: StackMap locals:
StackMap stack:
aload 0
getfield android.media.AudioRecord$Builder.mAttributes:Landroid/media/AudioAttributes;
ifnonnull 23
19: aload 0
new android.media.AudioAttributes$Builder
dup
invokespecial android.media.AudioAttributes$Builder.<init>:()V
20: iconst_0
invokevirtual android.media.AudioAttributes$Builder.setInternalCapturePreset:(I)Landroid/media/AudioAttributes$Builder;
21: invokevirtual android.media.AudioAttributes$Builder.build:()Landroid/media/AudioAttributes;
22: putfield android.media.AudioRecord$Builder.mAttributes:Landroid/media/AudioAttributes;
23: StackMap locals:
StackMap stack:
aload 0
getfield android.media.AudioRecord$Builder.mBufferSizeInBytes:I
ifne 27
24: aload 0
aload 0
getfield android.media.AudioRecord$Builder.mFormat:Landroid/media/AudioFormat;
invokevirtual android.media.AudioFormat.getChannelCount:()I
25: aload 0
getfield android.media.AudioRecord$Builder.mFormat:Landroid/media/AudioFormat;
invokevirtual android.media.AudioFormat.getEncoding:()I
invokestatic android.media.AudioFormat.getBytesPerSample:(I)I
imul
26: putfield android.media.AudioRecord$Builder.mBufferSizeInBytes:I
27: StackMap locals:
StackMap stack:
new android.media.AudioRecord
dup
28: aload 0
getfield android.media.AudioRecord$Builder.mAttributes:Landroid/media/AudioAttributes;
aload 0
getfield android.media.AudioRecord$Builder.mFormat:Landroid/media/AudioFormat;
aload 0
getfield android.media.AudioRecord$Builder.mBufferSizeInBytes:I
aload 0
getfield android.media.AudioRecord$Builder.mSessionId:I
29: invokespecial android.media.AudioRecord.<init>:(Landroid/media/AudioAttributes;Landroid/media/AudioFormat;II)V
astore 1
start local 1 30: aload 1
invokevirtual android.media.AudioRecord.getState:()I
ifne 32
31: new java.lang.UnsupportedOperationException
dup
ldc "Cannot create AudioRecord"
invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
32: StackMap locals: android.media.AudioRecord
StackMap stack:
aload 1
33: areturn
end local 1 34: StackMap locals: android.media.AudioRecord$Builder
StackMap stack: java.lang.IllegalArgumentException
astore 1
start local 1 35: new java.lang.UnsupportedOperationException
dup
aload 1
invokevirtual java.lang.IllegalArgumentException.getMessage:()Ljava/lang/String;
invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 36 0 this Landroid/media/AudioRecord$Builder;
30 34 1 record Landroid/media/AudioRecord;
35 36 1 e Ljava/lang/IllegalArgumentException;
Exception table:
from to target type
23 33 34 Class java.lang.IllegalArgumentException
Exceptions:
throws java.lang.UnsupportedOperationException
}
SourceFile: "AudioRecord.java"
NestHost: android.media.AudioRecord
InnerClasses:
public Builder = android.media.AudioAttributes$Builder of android.media.AudioAttributes
public Builder = android.media.AudioFormat$Builder of android.media.AudioFormat
public Builder = android.media.AudioRecord$Builder of android.media.AudioRecord