protected override AirVRMessage ParseMessageImpl(IntPtr source, string message) { AirVRServerMessage result = JsonUtility.FromJson <AirVRServerMessage>(message); result.source = source; return(result); }
public static AirVRServerMessage Parse(IntPtr source, string message) { AirVRServerMessage result = JsonUtility.FromJson <AirVRServerMessage>(message); Assert.IsFalse(string.IsNullOrEmpty(result.Type)); result.source = source; result.postParse(); return(result); }
private void onAirVRPlayerUserDataReceived(int playerID, AirVRServerMessage message) { AirVRCameraRig cameraRig = _cameraRigList.GetBoundCameraRig(playerID); if (cameraRig != null && Delegate != null) { Delegate.AirVRCameraRigUserDataReceived(cameraRig, message.Data_Decoded); } }
private void onAirVRPlayerDeactivated(int playerID, AirVRServerMessage message) { AirVRCameraRig cameraRig = _cameraRigList.GetBoundCameraRig(playerID); if (cameraRig != null && Delegate != null) { Delegate.AirVRCameraRigDeactivated(cameraRig); } updateApplicationTargetFrameRate(); }
private void onAirVRMediaStreamStopped(AirVRServerMessage message) { onStopRender(); disableCameras(); _mediaStreamJustStopped = true; // StopCoroutine(_CallPluginEndOfFrame) executes the routine one more in the next frame after the call. // so use a flag to completely stop the routine. GL.IssuePluginEvent(onairvr_ResetStreams_RenderThread_Func(), AirVRServerPlugin.RenderEventArg((uint)playerID)); inputStream.Stop(); }
private void onAirVRMediaStreamInitialized(AirVRServerMessage message) { Assert.IsNull(mediaStream); initializeCamerasForMediaStream(); onairvr_SendCameraClipPlanes(playerID, cameras[0].nearClipPlane, cameras[0].farClipPlane); mediaStream = new AirVRServerMediaStream(playerID, _config, cameras.Length); GL.IssuePluginEvent(onairvr_InitStreams_RenderThread_Func(), AirVRServerPlugin.RenderEventArg((uint)playerID)); inputStream.Init(); }
// handle AirVRMessages private void onAirVRMessageReceived(AirVRMessage message) { AirVRServerMessage serverMessage = message as AirVRServerMessage; int playerID = serverMessage.source.ToInt32(); if (serverMessage.IsSessionEvent()) { if (serverMessage.Name.Equals(AirVRServerMessage.NameConnected)) { onAirVRSessionConnected(playerID, serverMessage); } else if (serverMessage.Name.Equals(AirVRServerMessage.NameDisconnected)) { onAirVRSessionDisconnected(playerID, serverMessage); } else if (serverMessage.Name.Equals(AirVRServerMessage.NameProfilerFrame)) { onAirVRProfilerFrameReceived(playerID, serverMessage); } else if (serverMessage.Name.Equals(AirVRServerMessage.NameProfilerReport)) { onAirVRProfilerReportReceived(playerID, serverMessage); } } else if (serverMessage.IsPlayerEvent()) { if (serverMessage.Name.Equals(AirVRServerMessage.NameCreated)) { onAirVRPlayerCreated(playerID, serverMessage); } else if (serverMessage.Name.Equals(AirVRServerMessage.NameActivated)) { onAirVRPlayerActivated(playerID, serverMessage); } else if (serverMessage.Name.Equals(AirVRServerMessage.NameDeactivated)) { onAirVRPlayerDeactivated(playerID, serverMessage); } else if (serverMessage.Name.Equals(AirVRServerMessage.NameDestroyed)) { onAirVRPlayerDestroyed(playerID, serverMessage); } else if (serverMessage.Name.Equals(AirVRServerMessage.NameShowCopyright)) { onAirVRPlayerShowCopyright(playerID, serverMessage); } } else if (message.Type.Equals(AirVRMessage.TypeUserData)) { onAirVRPlayerUserDataReceived(playerID, serverMessage); } }
private void onAirVRPlayerCreated(int playerID, AirVRServerMessage message) { AirVRCameraRig selected = notifyCameraRigWillBeBound(playerID); if (selected != null) { _cameraRigList.RetainCameraRig(selected); selected.BindPlayer(playerID); onairvr_AcceptPlayer(playerID); } else { onairvr_Disconnect(playerID); } }
private void onAirVRMediaStreamCleanedUp(AirVRServerMessage message) { Assert.IsTrue(_mediaStreamJustStopped); Assert.IsNotNull(mediaStream); inputStream.Cleanup(); GL.IssuePluginEvent(onairvr_CleanupStreams_RenderThread_Func(), AirVRServerPlugin.RenderEventArg((uint)playerID)); mediaStream.Destroy(); mediaStream = null; foreach (Camera cam in cameras) { cam.targetTexture = null; } }
private void onAirVRMessageReceived(AirVRMessage message) { AirVRServerMessage serverMessage = message as AirVRServerMessage; int srcPlayerID = serverMessage.source.ToInt32(); if (srcPlayerID != playerID) { return; } if (serverMessage.IsMediaStreamEvent()) { if (serverMessage.Name.Equals(AirVRServerMessage.NameInitialized)) { onAirVRMediaStreamInitialized(serverMessage); } else if (serverMessage.Name.Equals(AirVRServerMessage.NameStarted)) { onAirVRMediaStreamStarted(serverMessage); } else if (serverMessage.Name.Equals(AirVRServerMessage.NameEncodeVideoFrame)) { onAirVRMediaStreamEncodeVideoFrame(serverMessage); } else if (serverMessage.Name.Equals(AirVRServerMessage.NameStopped)) { onAirVRMediaStreamStopped(serverMessage); } else if (serverMessage.Name.Equals(AirVRServerMessage.NameCleanupUp)) { onAirVRMediaStreamCleanedUp(serverMessage); } } else if (serverMessage.IsInputStreamEvent()) { if (serverMessage.Name.Equals(AirVRServerMessage.NameRemoteInputDeviceRegistered)) { onAirVRInputStreamRemoteInputDeviceRegistered(serverMessage); } else if (serverMessage.Name.Equals(AirVRServerMessage.NameRemoteInputDeviceUnregistered)) { onAirVRInputStreamRemoteInputDeviceUnregistered(serverMessage); } } }
private void onAirVRPlayerDestroyed(int playerID, AirVRServerMessage message) { AirVRCameraRig unboundCameraRig = _cameraRigList.GetBoundCameraRig(playerID); if (unboundCameraRig != null) { if (unboundCameraRig.isStreaming && Delegate != null) { Delegate.AirVRCameraRigDeactivated(unboundCameraRig); } unboundCameraRig.UnbindPlayer(); _cameraRigList.ReleaseCameraRig(unboundCameraRig); if (Delegate != null) { Delegate.AirVRCameraRigHasBeenUnbound(unboundCameraRig); } } }
private void onAirVRMessageReceived(AirVRMessage message) { AirVRServerMessage serverMessage = message as AirVRServerMessage; int srcPlayerID = serverMessage.source.ToInt32(); if (srcPlayerID != playerID) { return; } if (serverMessage.IsMediaStreamEvent()) { if (serverMessage.Name.Equals(AirVRServerMessage.NameInitialized)) { onAirVRMediaStreamInitialized(serverMessage); } else if (serverMessage.Name.Equals(AirVRServerMessage.NameStarted)) { onAirVRMediaStreamStarted(serverMessage); } else if (serverMessage.Name.Equals(AirVRServerMessage.NameEncodeVideoFrame)) { onAirVRMediaStreamEncodeVideoFrame(serverMessage); } else if (serverMessage.Name.Equals(AirVRServerMessage.NameSetCameraProjection)) { onAirVRMediaStreamSetCameraProjection(serverMessage); } else if (serverMessage.Name.Equals(AirVRServerMessage.NameStopped)) { onAirVRMediaStreamStopped(serverMessage); } else if (serverMessage.Name.Equals(AirVRServerMessage.NameCleanupUp)) { onAirVRMediaStreamCleanedUp(serverMessage); } } }
private void onAirVRMediaStreamEncodeVideoFrame(AirVRServerMessage message) { _encodeVideoFrameRequested = true; }
private void onAirVRMediaStreamStarted(AirVRServerMessage message) { startToRenderCamerasForMediaStream(); inputStream.Start(); }
private void onAirVRProfilerFrameReceived(int playerID, AirVRServerMessage message) { //Debug.Log(string.Format("profiler frame: latency: overall {0:0.000} = network {1:0.000} + decode {2:0.000}", // message.OverallLatency, message.NetworkLatency, message.DecodeLatency)); }
private void onAirVRProfilerReportReceived(int playerID, AirVRServerMessage message) { Debug.Log(string.Format("profiler report: fps {0:0.0} ({1}/{2:0.000}), avg latency: overall {3:0.000} = network {4:0.000} + decode {5:0.000}", message.FrameCount / message.Duration, message.FrameCount, message.Duration, message.AvgOverallLatency, message.AvgNetworkLatency, message.AvgDecodeLatency)); }
private void onAirVRMediaStreamSetCameraProjection(AirVRServerMessage message) { updateCameraProjection(_config, message.CameraProjection); }
private void onAirVRInputStreamRemoteInputDeviceRegistered(AirVRServerMessage message) { Assert.IsTrue(string.IsNullOrEmpty(message.DeviceName) == false); inputStream.HandleRemoteInputDeviceRegistered(message.DeviceName, (byte)message.DeviceID, message.Arguments); }
private void onAirVRPlayerShowCopyright(int playerID, AirVRServerMessage message) { Debug.Log("(C) 2016-2018 onAirVR. All right reserved."); }
private void onAirVRSessionDisconnected(int playerID, AirVRServerMessage message) { AirVRServer.NotifyClientDisconnected(playerID); }
private void onAirVRInputStreamRemoteInputDeviceUnregistered(AirVRServerMessage message) { inputStream.HandleRemoteInputDeviceUnregistered((byte)message.DeviceID); }
protected override AirVRMessage ParseMessageImpl(IntPtr source, string message) { return(AirVRServerMessage.Parse(source, message)); }