LocalSpatialAudioImpl.smali
.class public Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;
.super Lio/agora/spatialaudio/ILocalSpatialAudioEngine;
# static fields
.field private static final TAG:Ljava/lang/String; = "LocalSpatialAudioImpl"
# instance fields
.field private mNativeHandle:J
# direct methods
.method static constructor <clinit>()V
.registers 0
return-void
.end method
.method public constructor <init>()V
.registers 3
invoke-direct {p0}, Lio/agora/spatialaudio/ILocalSpatialAudioEngine;-><init>()V
const-wide/16 v0, 0x0
iput-wide v0, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
return-void
.end method
.method static getChannelId(Lio/agora/rtc2/RtcConnection;)Ljava/lang/String;
.registers 1
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"connection"
}
.end annotation
if-eqz p0, :cond_5
iget-object p0, p0, Lio/agora/rtc2/RtcConnection;->channelId:Ljava/lang/String;
goto :goto_6
:cond_5
const/4 p0, 0x0
:goto_6
return-object p0
.end method
.method static getUserId(Lio/agora/rtc2/RtcConnection;)I
.registers 1
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"connection"
}
.end annotation
if-eqz p0, :cond_5
iget p0, p0, Lio/agora/rtc2/RtcConnection;->localUid:I
goto :goto_6
:cond_5
const/4 p0, 0x0
:goto_6
return p0
.end method
.method private native nativeClearRemotePositions(J)I
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"nativeLocalSpatialAudioAndroid"
}
.end annotation
.end method
.method private native nativeClearRemotePositionsEx(JLjava/lang/String;I)I
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0,
0x0
}
names = {
"nativeLocalSpatialAudioAndroid",
"channelId",
"localUid"
}
.end annotation
.end method
.method private static native nativeDestroy(J)I
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"handle"
}
.end annotation
.end method
.method private native nativeMuteRemoteAudioStream(JIZ)I
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0,
0x0
}
names = {
"nativeLocalSpatialAudioAndroid",
"uid",
"mute"
}
.end annotation
.end method
.method private native nativeObjectInit(Lio/agora/spatialaudio/LocalSpatialAudioConfig;J)J
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0
}
names = {
"config",
"rtcEngine"
}
.end annotation
.end method
.method private native nativeRemoveRemotePosition(JI)I
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0
}
names = {
"nativeLocalSpatialAudioAndroid",
"uid"
}
.end annotation
.end method
.method private native nativeRemoveRemotePositionEx(JILjava/lang/String;I)I
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0,
0x0,
0x0
}
names = {
"nativeLocalSpatialAudioAndroid",
"uid",
"channelId",
"localUid"
}
.end annotation
.end method
.method private native nativeSetParameters(JLjava/lang/String;)I
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0
}
names = {
"nativeLocalSpatialAudioAndroid",
"param"
}
.end annotation
.end method
.method private native nativeSetPlayerAttenuation(JIDZ)I
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0,
0x0,
0x0
}
names = {
"nativeLocalSpatialAudioAndroid",
"playerId",
"attenuation",
"forceSet"
}
.end annotation
.end method
.method private native nativeSetRemoteAudioAttenuation(JIDZ)I
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0,
0x0,
0x0
}
names = {
"nativeLocalSpatialAudioAndroid",
"uid",
"attenuation",
"forceSet"
}
.end annotation
.end method
.method private native nativeSetZones(J[Lio/agora/spatialaudio/SpatialAudioZone;)I
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0
}
names = {
"nativeLocalSpatialAudioAndroid",
"zones"
}
.end annotation
.end method
.method private native nativeUpdatePlayerPositionInfo(JILio/agora/spatialaudio/RemoteVoicePositionInfo;)I
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0,
0x0
}
names = {
"nativeLocalSpatialAudioAndroid",
"playerId",
"posInfo"
}
.end annotation
.end method
.method private native nativeUpdateRemotePosition(JI[F[F)I
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0,
0x0,
0x0
}
names = {
"nativeLocalSpatialAudioAndroid",
"uid",
"position",
"forward"
}
.end annotation
.end method
.method private native nativeUpdateRemotePositionEx(JI[F[FLjava/lang/String;I)I
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0,
0x0,
0x0,
0x0,
0x0
}
names = {
"nativeLocalSpatialAudioAndroid",
"uid",
"position",
"forward",
"channelId",
"localUid"
}
.end annotation
.end method
.method private native nativeUpdateSelfPosition(J[F[F[F[F)I
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0,
0x0,
0x0,
0x0
}
names = {
"nativeLocalSpatialAudioAndroid",
"position",
"axisForward",
"axisRight",
"axisUp"
}
.end annotation
.end method
.method private native nativeUpdateSelfPositionEx(J[F[F[F[FLjava/lang/String;I)I
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0
}
names = {
"nativeLocalSpatialAudioAndroid",
"position",
"axisForward",
"axisRight",
"axisUp",
"channelID",
"uid"
}
.end annotation
.end method
# virtual methods
.method public clearRemotePositions()I
.registers 5
iget-wide v0, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v2, 0x0
cmp-long v2, v0, v2
if-nez v2, :cond_a
const/4 v0, -0x7
return v0
:cond_a
invoke-direct {p0, v0, v1}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeClearRemotePositions(J)I
move-result v0
return v0
.end method
.method public clearRemotePositionsEx(Lio/agora/rtc2/RtcConnection;)I
.registers 6
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"connection"
}
.end annotation
iget-wide v0, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v2, 0x0
cmp-long v2, v0, v2
if-nez v2, :cond_a
const/4 p1, -0x7
return p1
:cond_a
invoke-static {p1}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->getChannelId(Lio/agora/rtc2/RtcConnection;)Ljava/lang/String;
move-result-object v2
invoke-static {p1}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->getUserId(Lio/agora/rtc2/RtcConnection;)I
move-result p1
invoke-direct {p0, v0, v1, v2, p1}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeClearRemotePositionsEx(JLjava/lang/String;I)I
move-result p1
return p1
.end method
.method public initialize(Lio/agora/spatialaudio/LocalSpatialAudioConfig;)I
.registers 6
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"config"
}
.end annotation
iget-object v0, p1, Lio/agora/spatialaudio/LocalSpatialAudioConfig;->mRtcEngine:Lio/agora/rtc2/RtcEngine;
if-nez v0, :cond_6
const/4 p1, -0x2
return p1
:cond_6
iget-object v0, p1, Lio/agora/spatialaudio/LocalSpatialAudioConfig;->mRtcEngine:Lio/agora/rtc2/RtcEngine;
invoke-virtual {v0}, Lio/agora/rtc2/RtcEngine;->getNativeHandle()J
move-result-wide v0
invoke-direct {p0, p1, v0, v1}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeObjectInit(Lio/agora/spatialaudio/LocalSpatialAudioConfig;J)J
move-result-wide v0
iput-wide v0, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v2, 0x0
cmp-long p1, v0, v2
if-nez p1, :cond_1a
const/4 p1, -0x7
return p1
:cond_1a
const/4 p1, 0x0
return p1
.end method
.method public muteAllRemoteAudioStreams(Z)I
.registers 7
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"mute"
}
.end annotation
iget-wide v0, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v2, 0x0
cmp-long v2, v0, v2
if-nez v2, :cond_a
const/4 p1, -0x7
return p1
:cond_a
sget-object v2, Ljava/util/Locale;->US:Ljava/util/Locale;
const/4 v3, 0x1
new-array v3, v3, [Ljava/lang/Object;
const/4 v4, 0x0
if-eqz p1, :cond_15
const-string p1, "true"
goto :goto_17
:cond_15
const-string p1, "false"
:goto_17
aput-object p1, v3, v4
const-string p1, "{\"rtc.local_spatial_audio.mute_all_remote_audio_streams\":%s}"
invoke-static {v2, p1, v3}, Ljava/lang/String;->format(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p1
invoke-direct {p0, v0, v1, p1}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeSetParameters(JLjava/lang/String;)I
move-result p1
return p1
.end method
.method public muteLocalAudioStream(Z)I
.registers 7
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"mute"
}
.end annotation
iget-wide v0, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v2, 0x0
cmp-long v2, v0, v2
if-nez v2, :cond_a
const/4 p1, -0x7
return p1
:cond_a
sget-object v2, Ljava/util/Locale;->US:Ljava/util/Locale;
const/4 v3, 0x1
new-array v3, v3, [Ljava/lang/Object;
const/4 v4, 0x0
if-eqz p1, :cond_15
const-string p1, "true"
goto :goto_17
:cond_15
const-string p1, "false"
:goto_17
aput-object p1, v3, v4
const-string p1, "{\"rtc.local_spatial_audio.mute_local_stream\":%s}"
invoke-static {v2, p1, v3}, Ljava/lang/String;->format(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p1
invoke-direct {p0, v0, v1, p1}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeSetParameters(JLjava/lang/String;)I
move-result p1
return p1
.end method
.method public muteRemoteAudioStream(IZ)I
.registers 7
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0
}
names = {
"uid",
"mute"
}
.end annotation
iget-wide v0, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v2, 0x0
cmp-long v2, v0, v2
if-nez v2, :cond_a
const/4 p1, -0x7
return p1
:cond_a
invoke-direct {p0, v0, v1, p1, p2}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeMuteRemoteAudioStream(JIZ)I
move-result p1
return p1
.end method
.method protected release()I
.registers 6
iget-wide v0, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v2, 0x0
cmp-long v4, v0, v2
if-eqz v4, :cond_d
invoke-static {v0, v1}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeDestroy(J)I
iput-wide v2, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
:cond_d
const/4 v0, 0x0
return v0
.end method
.method public removeRemotePosition(I)I
.registers 6
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"uid"
}
.end annotation
iget-wide v0, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v2, 0x0
cmp-long v2, v0, v2
if-nez v2, :cond_a
const/4 p1, -0x7
return p1
:cond_a
invoke-direct {p0, v0, v1, p1}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeRemoveRemotePosition(JI)I
move-result p1
return p1
.end method
.method public removeRemotePositionEx(ILio/agora/rtc2/RtcConnection;)I
.registers 9
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0
}
names = {
"uid",
"connection"
}
.end annotation
iget-wide v1, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v3, 0x0
cmp-long v0, v1, v3
if-nez v0, :cond_a
const/4 p1, -0x7
return p1
:cond_a
invoke-static {p2}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->getChannelId(Lio/agora/rtc2/RtcConnection;)Ljava/lang/String;
move-result-object v4
invoke-static {p2}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->getUserId(Lio/agora/rtc2/RtcConnection;)I
move-result v5
move-object v0, p0
move v3, p1
invoke-direct/range {v0 .. v5}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeRemoveRemotePositionEx(JILjava/lang/String;I)I
move-result p1
return p1
.end method
.method public setAudioRecvRange(F)I
.registers 7
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"range"
}
.end annotation
iget-wide v0, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v2, 0x0
cmp-long v2, v0, v2
if-nez v2, :cond_a
const/4 p1, -0x7
return p1
:cond_a
sget-object v2, Ljava/util/Locale;->US:Ljava/util/Locale;
const/4 v3, 0x1
new-array v3, v3, [Ljava/lang/Object;
const/4 v4, 0x0
invoke-static {p1}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float;
move-result-object p1
aput-object p1, v3, v4
const-string p1, "{\"rtc.local_spatial_audio.hear_range\":%f}"
invoke-static {v2, p1, v3}, Ljava/lang/String;->format(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p1
invoke-direct {p0, v0, v1, p1}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeSetParameters(JLjava/lang/String;)I
move-result p1
return p1
.end method
.method public setDistanceUnit(F)I
.registers 7
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"unit"
}
.end annotation
iget-wide v0, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v2, 0x0
cmp-long v2, v0, v2
if-nez v2, :cond_a
const/4 p1, -0x7
return p1
:cond_a
sget-object v2, Ljava/util/Locale;->US:Ljava/util/Locale;
const/4 v3, 0x1
new-array v3, v3, [Ljava/lang/Object;
const/4 v4, 0x0
invoke-static {p1}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float;
move-result-object p1
aput-object p1, v3, v4
const-string p1, "{\"rtc.local_spatial_audio.distance_unit\":%f}"
invoke-static {v2, p1, v3}, Ljava/lang/String;->format(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p1
invoke-direct {p0, v0, v1, p1}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeSetParameters(JLjava/lang/String;)I
move-result p1
return p1
.end method
.method public setMaxAudioRecvCount(I)I
.registers 7
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"maxCount"
}
.end annotation
iget-wide v0, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v2, 0x0
cmp-long v2, v0, v2
if-nez v2, :cond_a
const/4 p1, -0x7
return p1
:cond_a
sget-object v2, Ljava/util/Locale;->US:Ljava/util/Locale;
const/4 v3, 0x1
new-array v3, v3, [Ljava/lang/Object;
const/4 v4, 0x0
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
aput-object p1, v3, v4
const-string p1, "{\"rtc.local_spatial_audio.max_hear_count\":%d}"
invoke-static {v2, p1, v3}, Ljava/lang/String;->format(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p1
invoke-direct {p0, v0, v1, p1}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeSetParameters(JLjava/lang/String;)I
move-result p1
return p1
.end method
.method public setPlayerAttenuation(IDZ)I
.registers 12
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0,
0x0
}
names = {
"playerId",
"attenuation",
"forceSet"
}
.end annotation
iget-wide v1, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v3, 0x0
cmp-long v0, v1, v3
if-nez v0, :cond_a
const/4 p1, -0x7
return p1
:cond_a
move-object v0, p0
move v3, p1
move-wide v4, p2
move v6, p4
invoke-direct/range {v0 .. v6}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeSetPlayerAttenuation(JIDZ)I
move-result p1
return p1
.end method
.method public setRemoteAudioAttenuation(IDZ)I
.registers 12
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0,
0x0
}
names = {
"uid",
"attenuation",
"forceSet"
}
.end annotation
iget-wide v1, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v3, 0x0
cmp-long v0, v1, v3
if-nez v0, :cond_a
const/4 p1, -0x7
return p1
:cond_a
move-object v0, p0
move v3, p1
move-wide v4, p2
move v6, p4
invoke-direct/range {v0 .. v6}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeSetRemoteAudioAttenuation(JIDZ)I
move-result p1
return p1
.end method
.method public setZones([Lio/agora/spatialaudio/SpatialAudioZone;)I
.registers 6
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0
}
names = {
"zones"
}
.end annotation
iget-wide v0, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v2, 0x0
cmp-long v0, v0, v2
if-nez v0, :cond_a
const/4 p1, -0x7
return p1
:cond_a
const/4 v0, -0x2
if-eqz p1, :cond_5e
array-length v1, p1
if-gtz v1, :cond_11
goto :goto_5e
:cond_11
const/4 v1, 0x0
:goto_12
array-length v2, p1
if-ge v1, v2, :cond_57
aget-object v2, p1, v1
if-nez v2, :cond_1a
return v0
:cond_1a
aget-object v2, p1, v1
iget-object v2, v2, Lio/agora/spatialaudio/SpatialAudioZone;->position:[F
if-eqz v2, :cond_56
aget-object v2, p1, v1
iget-object v2, v2, Lio/agora/spatialaudio/SpatialAudioZone;->position:[F
array-length v2, v2
const/4 v3, 0x3
if-eq v2, v3, :cond_29
goto :goto_56
:cond_29
aget-object v2, p1, v1
iget-object v2, v2, Lio/agora/spatialaudio/SpatialAudioZone;->forward:[F
if-eqz v2, :cond_56
aget-object v2, p1, v1
iget-object v2, v2, Lio/agora/spatialaudio/SpatialAudioZone;->forward:[F
array-length v2, v2
if-eq v2, v3, :cond_37
goto :goto_56
:cond_37
aget-object v2, p1, v1
iget-object v2, v2, Lio/agora/spatialaudio/SpatialAudioZone;->right:[F
if-eqz v2, :cond_56
aget-object v2, p1, v1
iget-object v2, v2, Lio/agora/spatialaudio/SpatialAudioZone;->right:[F
array-length v2, v2
if-eq v2, v3, :cond_45
goto :goto_56
:cond_45
aget-object v2, p1, v1
iget-object v2, v2, Lio/agora/spatialaudio/SpatialAudioZone;->up:[F
if-eqz v2, :cond_56
aget-object v2, p1, v1
iget-object v2, v2, Lio/agora/spatialaudio/SpatialAudioZone;->up:[F
array-length v2, v2
if-eq v2, v3, :cond_53
goto :goto_56
:cond_53
add-int/lit8 v1, v1, 0x1
goto :goto_12
:cond_56
:goto_56
return v0
:cond_57
iget-wide v0, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
invoke-direct {p0, v0, v1, p1}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeSetZones(J[Lio/agora/spatialaudio/SpatialAudioZone;)I
move-result p1
return p1
:cond_5e
:goto_5e
return v0
.end method
.method public updatePlayerPositionInfo(ILio/agora/spatialaudio/RemoteVoicePositionInfo;)I
.registers 7
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0
}
names = {
"playerId",
"positionInfo"
}
.end annotation
iget-wide v0, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v2, 0x0
cmp-long v0, v0, v2
if-nez v0, :cond_a
const/4 p1, -0x7
return p1
:cond_a
if-eqz p2, :cond_27
iget-object v0, p2, Lio/agora/spatialaudio/RemoteVoicePositionInfo;->position:[F
if-eqz v0, :cond_27
iget-object v0, p2, Lio/agora/spatialaudio/RemoteVoicePositionInfo;->position:[F
array-length v0, v0
const/4 v1, 0x3
if-ne v0, v1, :cond_27
iget-object v0, p2, Lio/agora/spatialaudio/RemoteVoicePositionInfo;->forward:[F
if-eqz v0, :cond_20
iget-object v0, p2, Lio/agora/spatialaudio/RemoteVoicePositionInfo;->forward:[F
array-length v0, v0
if-eq v0, v1, :cond_20
goto :goto_27
:cond_20
iget-wide v0, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
invoke-direct {p0, v0, v1, p1, p2}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeUpdatePlayerPositionInfo(JILio/agora/spatialaudio/RemoteVoicePositionInfo;)I
move-result p1
return p1
:cond_27
:goto_27
const/4 p1, -0x2
return p1
.end method
.method public updateRemotePosition(ILio/agora/spatialaudio/RemoteVoicePositionInfo;)I
.registers 10
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0
}
names = {
"uid",
"posInfo"
}
.end annotation
iget-wide v0, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v2, 0x0
cmp-long v0, v0, v2
if-nez v0, :cond_a
const/4 p1, -0x7
return p1
:cond_a
if-eqz p2, :cond_2f
iget-object v0, p2, Lio/agora/spatialaudio/RemoteVoicePositionInfo;->position:[F
if-eqz v0, :cond_2f
iget-object v0, p2, Lio/agora/spatialaudio/RemoteVoicePositionInfo;->position:[F
array-length v0, v0
const/4 v1, 0x3
if-eq v0, v1, :cond_17
goto :goto_2f
:cond_17
iget-object v0, p2, Lio/agora/spatialaudio/RemoteVoicePositionInfo;->forward:[F
if-nez v0, :cond_22
new-array v0, v1, [F
fill-array-data v0, :array_32
iput-object v0, p2, Lio/agora/spatialaudio/RemoteVoicePositionInfo;->forward:[F
:cond_22
iget-wide v2, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
iget-object v5, p2, Lio/agora/spatialaudio/RemoteVoicePositionInfo;->position:[F
iget-object v6, p2, Lio/agora/spatialaudio/RemoteVoicePositionInfo;->forward:[F
move-object v1, p0
move v4, p1
invoke-direct/range {v1 .. v6}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeUpdateRemotePosition(JI[F[F)I
move-result p1
return p1
:cond_2f
:goto_2f
const/4 p1, -0x2
return p1
nop
:array_32
.array-data 4
0x0
0x0
0x0
.end array-data
.end method
.method public updateRemotePositionEx(ILio/agora/spatialaudio/RemoteVoicePositionInfo;Lio/agora/rtc2/RtcConnection;)I
.registers 13
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0,
0x0
}
names = {
"uid",
"posInfo",
"connection"
}
.end annotation
iget-wide v0, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v2, 0x0
cmp-long v0, v0, v2
if-nez v0, :cond_a
const/4 p1, -0x7
return p1
:cond_a
if-eqz p2, :cond_37
iget-object v0, p2, Lio/agora/spatialaudio/RemoteVoicePositionInfo;->position:[F
if-eqz v0, :cond_37
iget-object v0, p2, Lio/agora/spatialaudio/RemoteVoicePositionInfo;->position:[F
array-length v0, v0
const/4 v1, 0x3
if-eq v0, v1, :cond_17
goto :goto_37
:cond_17
iget-object v0, p2, Lio/agora/spatialaudio/RemoteVoicePositionInfo;->forward:[F
if-nez v0, :cond_22
new-array v0, v1, [F
fill-array-data v0, :array_3a
iput-object v0, p2, Lio/agora/spatialaudio/RemoteVoicePositionInfo;->forward:[F
:cond_22
iget-wide v2, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
iget-object v5, p2, Lio/agora/spatialaudio/RemoteVoicePositionInfo;->position:[F
iget-object v6, p2, Lio/agora/spatialaudio/RemoteVoicePositionInfo;->forward:[F
invoke-static {p3}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->getChannelId(Lio/agora/rtc2/RtcConnection;)Ljava/lang/String;
move-result-object v7
invoke-static {p3}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->getUserId(Lio/agora/rtc2/RtcConnection;)I
move-result v8
move-object v1, p0
move v4, p1
invoke-direct/range {v1 .. v8}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeUpdateRemotePositionEx(JI[F[FLjava/lang/String;I)I
move-result p1
return p1
:cond_37
:goto_37
const/4 p1, -0x2
return p1
nop
:array_3a
.array-data 4
0x0
0x0
0x0
.end array-data
.end method
.method public updateSelfPosition([F[F[F[F)I
.registers 12
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0,
0x0,
0x0
}
names = {
"position",
"axisForward",
"axisRight",
"axisUp"
}
.end annotation
iget-wide v1, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v3, 0x0
cmp-long v0, v1, v3
if-nez v0, :cond_a
const/4 p1, -0x7
return p1
:cond_a
array-length v0, p1
const/4 v3, 0x3
if-ne v0, v3, :cond_22
array-length v0, p2
if-ne v0, v3, :cond_22
array-length v0, p3
if-ne v0, v3, :cond_22
array-length v0, p4
if-eq v0, v3, :cond_18
goto :goto_22
:cond_18
move-object v0, p0
move-object v3, p1
move-object v4, p2
move-object v5, p3
move-object v6, p4
invoke-direct/range {v0 .. v6}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeUpdateSelfPosition(J[F[F[F[F)I
move-result p1
return p1
:cond_22
:goto_22
const/4 p1, -0x2
return p1
.end method
.method public updateSelfPositionEx([F[F[F[FLio/agora/rtc2/RtcConnection;)I
.registers 15
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
0x0,
0x0,
0x0,
0x0
}
names = {
"position",
"axisForward",
"axisRight",
"axisUp",
"connection"
}
.end annotation
iget-wide v1, p0, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->mNativeHandle:J
const-wide/16 v3, 0x0
cmp-long v0, v1, v3
if-nez v0, :cond_a
const/4 p1, -0x7
return p1
:cond_a
array-length v0, p1
const/4 v3, 0x3
if-ne v0, v3, :cond_2a
array-length v0, p2
if-ne v0, v3, :cond_2a
array-length v0, p3
if-ne v0, v3, :cond_2a
array-length v0, p4
if-eq v0, v3, :cond_18
goto :goto_2a
:cond_18
invoke-static {p5}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->getChannelId(Lio/agora/rtc2/RtcConnection;)Ljava/lang/String;
move-result-object v7
invoke-static {p5}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->getUserId(Lio/agora/rtc2/RtcConnection;)I
move-result v8
move-object v0, p0
move-object v3, p1
move-object v4, p2
move-object v5, p3
move-object v6, p4
invoke-direct/range {v0 .. v8}, Lio/agora/spatialaudio/internal/LocalSpatialAudioImpl;->nativeUpdateSelfPositionEx(J[F[F[F[FLjava/lang/String;I)I
move-result p1
return p1
:cond_2a
:goto_2a
const/4 p1, -0x2
return p1
.end method