public void VoipFrameReceived(VoicePacketWrapper frame) { lastVoipMessage = Time.time; if (!talking) { startTalking(); } }
protected override void OnAudioDataEncoded(VoicePacketWrapper encodedFrame) { byte[] headers = encodedFrame.ObtainHeaders(); GetComponent <PhotonView>().RPC("vc", PhotonTargets.Others, headers, encodedFrame.RawData); encodedFrame.ReleaseHeaders(); lastTalking = DateTime.Now; }
protected override void OnAudioDataEncoded(VoicePacketWrapper encodedFrame) { VoipMessage message = new VoipMessage(); message.data = encodedFrame.RawData; message.headers = encodedFrame.ObtainHeaders(); tranceiver.SendVoipFrame(encodedFrame); }
void HandleVoice(byte[] headers, byte[] rawData) { if (!GetComponent <AudioSource>().enabled) { return; } VoicePacketWrapper packet = new VoicePacketWrapper(headers, rawData); ReceiveAudioData(packet); }
void CmdSendFrame(VoicePacketWrapper encodedFrame) { VoipMessage message = new VoipMessage(); message.originID = this.netId.Value; message.data = encodedFrame.RawData; message.headers = encodedFrame.ObtainHeaders(); NetworkServer.SendToAll(MessageNetworkManager.MSG_VOIP, message); encodedFrame.ReleaseHeaders(); }
public void OnVoipMessage(VoipMessage message) { // Check if I am indeed the origin (end-to-end communication only) if (message.originID == this.netId.Value) { var encodedFrame = new VoicePacketWrapper(message.headers, message.data); //Debug.Log(encodedFrame.Index); foreach (Listener listener in listeners) { listener(encodedFrame); } } }
public void OnEventRaised(byte eventCode, object content, int senderID) { if (eventCode == EVENT_VOICE) { if (!GetComponent <AudioSource>().enabled) { return; } byte[][] data = (byte[][])content; VoicePacketWrapper packet = new VoicePacketWrapper(data[0], data[1]); ReceiveAudioData(packet); } }
protected override void OnAudioDataEncoded(VoicePacketWrapper encodedFrame) { byte[] headers = encodedFrame.ObtainHeaders(); // Option #1: using RPC //photonView.RPC("HandleVoice", PhotonTargets.Others, headers, encodedFrame.RawData); // Option #2: using events byte[][] data = new byte[2][]; data[0] = headers; data[1] = encodedFrame.RawData; PhotonNetwork.RaiseEvent(EVENT_VOICE, data, false, eventOptions); encodedFrame.ReleaseHeaders(); lastTalking = DateTime.Now; }
public void FrameReceived(VoicePacketWrapper frame) { ReceiveAudioData(frame); }
public void SendVoipFrame(VoicePacketWrapper encodedFrame) { CmdSendFrame(encodedFrame); }