private void Connect(string serverUrl) { var joinRequest = new JoinRequest { Sources = new[] { "audio:mic", "video:cam" }, DisplayName = null, AppData = null, }; var result = MediasoupClient.Connect(serverUrl, joinRequest.ToJson()); }
private void Pull(PullRequest pullRequest) { // Example: /* * pullRequest = new PullRequest * { * ProducerPeerId = 0, * Sources = new[] { "audio:mic", "video:cam" }, * }; */ MediasoupClient.Pull(pullRequest.ToJson()); }
public void Initialize() { if (callbacks.OnLogging == null) { callbacks = new Callbacks { OnLogging = OnLoggingHandle, OnNotification = OnNotificationHandle, OnConnectionStateChanged = OnConnectionStateChangedHandle, OnNewVideoTrack = OnNewVideoTrackHandle, }; } //MediasoupClient.Initialize("warn", ref callbacks); IntPtr ptr = Marshal.AllocHGlobal(Marshal.SizeOf(callbacks)); // TODO: Marshal.FreeHGlobal(ptr); Marshal.StructureToPtr(callbacks, ptr, true); var result = MediasoupClient.Initialize("debug", "warn", "all", ptr); var versionPtr = MediasoupClient.Version(); var version = Marshal.PtrToStringAnsi(versionPtr); //Marshal.FreeHGlobal(versionPtr); Debug.WriteLine($"MediasoupClient version: {version}"); }
private void Disconnect() { MediasoupClient.Disconnect(); }
private void StopPreviewLocalVideo() { MediasoupClient.StopPreviewLocalVideo(); }
private void StartPreviewLocalVideo() { MediasoupClient.StartPreviewLocalVideo(localVideoPanel.Handle); }
private void Cleanup() { MediasoupClient.Cleanup(); }
private void LeaveRoom() { MediasoupClient.LeaveRoom(); }
private void JoinRoom(string roomId) { MediasoupClient.Join(roomId); }