繁体   English   中英

如何使用外部IP C#进行语音聊天

[英]how to make voice chat using external ip c#

我想用外部IP网络上使用任何协议,但使用的外部IP和本地IP使用C#我没有问题,在话音刚我的问题如何进行语音聊天发送和接收缓冲区

private Socket r;
private Thread t;
r = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
t = new Thread(new ThreadStart(Voice_In));
#region Voice_In()
        private void Voice_In()
        {
            byte[] br;
            r.Bind(new IPEndPoint(IPAddress.Any, int.Parse(this.textBox2.Text)));
            while (true)
            {
                br = new byte[16384];
                r.Receive(br);
                m_Fifo.Write(br, 0, br.Length);
            }
        }
        #endregion
        #region Voice_Out()

        private void Voice_Out(IntPtr data, int size)
        {
            //for Recorder
            if (m_RecBuffer == null || m_RecBuffer.Length < size)
                m_RecBuffer = new byte[size];
            System.Runtime.InteropServices.Marshal.Copy(data, m_RecBuffer, 0, size);
            //Microphone ==> data ==> m_RecBuffer ==> m_Fifo
            r.SendTo(m_RecBuffer, new IPEndPoint(IPAddress.Parse(this.textBox1.Text), int.Parse(this.textBox3.Text)));
        }  

        #endregion

好吧,如果您唯一的问题是在两个IP地址之间建立网络数据,则应该只关注网络部分。 您要直接使用WCF还是TCP? 在第二种情况下,System.Net.Sockets命名空间具有TcpClient,TcpListener,UdpClient等类。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM