public static unsafe Error SetupClient(SetupClientProto setup) { var buffer = setup.ToByteArray(); fixed(byte *p = buffer) { IntPtr ptr = (IntPtr)p; var protoMsgC = new ProtoMessageC { data = new SWIGTYPE_p_void(ptr, false), len = (uint)buffer.Length }; var sdkReturn = animus_client_sdk.SetupGo(protoMsgC); if (sdkReturn == null) { return(new Error { Success = false }); } var err = new Error(); err.MergeFrom(sdkReturn.GetBytes()); return(err); } }
private void Start() { loginSuccess = false; loginResultAvailable = false; loginReturn = ""; searchResultsAvailable = false; searchSuccess = false; searchReturn = ""; lastSearch = DateTime.MinValue; _robotConnectionEstablished = false; Debug.Log(AnimusClient.AnimusClient.Version()); _client = null; aparams = new AudioParams(); aparams.Channels = 1; aparams.SampleRate = 16000; if (Application.platform == RuntimePlatform.WindowsEditor || Application.platform == RuntimePlatform.WindowsPlayer) { aparams.Backends.Clear(); aparams.Backends.Add("winmm"); aparams.TransmitRate = 10; aparams.SizeInFrames = false; } else if (Application.platform == RuntimePlatform.Android) { aparams.Backends.Clear(); aparams.Backends.Add("opensl"); aparams.TransmitRate = 10; aparams.SizeInFrames = false; } else if (Application.platform == RuntimePlatform.LinuxEditor || Application.platform == RuntimePlatform.LinuxPlayer) { aparams.Backends.Clear(); aparams.Backends.Add("alsa"); aparams.TransmitRate = 10; aparams.SizeInFrames = false; } var logdir = $"com.{Application.companyName}.{Application.productName}"; var setupClient = new SetupClientProto(); setupClient.AudioParams = aparams; setupClient.LatencyLogging = true; setupClient.LogDir = logdir; Debug.Log($"Logging to {logdir}"); var setupReply = AnimusClient.AnimusClient.SetupClient(setupClient); if (!setupReply.Success) { Debug.Log(setupReply.Description); } else { Debug.Log("Client Setup completed successfully"); } #if PLATFORM_ANDROID if (!Permission.HasUserAuthorizedPermission(Permission.Microphone)) { Permission.RequestUserPermission(Permission.Microphone); } if (!Permission.HasUserAuthorizedPermission(Permission.ExternalStorageRead)) { Permission.RequestUserPermission(Permission.ExternalStorageRead); } if (!Permission.HasUserAuthorizedPermission(Permission.ExternalStorageWrite)) { Permission.RequestUserPermission(Permission.ExternalStorageWrite); } #endif }