文件名称:语音聊天 源代码
文件大小:95KB
文件格式:RAR
更新时间:2015-07-03 03:31:51
可运行的 语音聊天 源代码
真正转移数据的事件,其实就是把数据传送到网络上去。 private void RecordCapturedData(Socket Client,EndPoint epServer ) { byte[] capturedata = null; int readpos = 0, capturepos = 0, locksize = 0; capturebuffer.GetCurrentPosition(out capturepos, out readpos); locksize = readpos - iBufferOffset;//这个大小就是我们可以安全读取的大小 if (locksize == 0) { return; } if (locksize < 0) {//因为我们是循环的使用缓冲区,所以有一种情况下为负:当文以载读指针回到第一个通知点,而Ibuffeoffset还在最后一个通知处 locksize += iBufferSize; } capturedata = (byte[])capturebuffer.Read(iBufferOffset, typeof(byte), LockFlag.FromWriteCursor, locksize); //capturedata = g729.Encode(capturedata);//语音编码 try { Client.SendTo(capturedata, epServer);//传送语音 } catch { throw new Exception(); } iBufferOffset += capturedata.Length; iBufferOffset %= iBufferSize;//取模是因为缓冲区是循环的。 }
【文件预览】:
MatureVoice
----ClassDiagram2.cd(1B)
----Form1.Designer.cs(16KB)
----Form2.resx(28KB)
----NetChat.cs(6KB)
----Program.cs(470B)
----MatureVoice.suo(15KB)
----Media Player.ico(66KB)
----MatureVoice.csproj(4KB)
----Form2.cs(4KB)
----Form1.cs(6KB)
----VoiceCapture.cs(14KB)
----Form2.Designer.cs(5KB)
----Form1.resx(105KB)
----MatureVoice.sln(910B)
----ClassDiagram1.cd(1B)
----ListUsers.cs(3KB)
----Properties()
--------Resources.resx(5KB)
--------Settings.settings(249B)
--------AssemblyInfo.cs(1KB)
--------Settings.Designer.cs(1KB)
--------Resources.Designer.cs(3KB)