当前位置:编程学习 > C#/ASP.NET >>

分享一个语音通信处理的开源框架,C#编写,支持除噪,去咋,屏回音。多种编码支持。

--------------------编程问答-------------------- 好吧,其实我是来看楼主头像的~~

--------------------编程问答-------------------- 推荐一下,谢谢楼主分享! --------------------编程问答-------------------- 楼主头像好酷 --------------------编程问答-------------------- 谢谢分享 --------------------编程问答-------------------- 谢谢分享,下来看看,我也在语音模块,只不过用的是c写的。 --------------------编程问答-------------------- UDP打洞的没有分享给大家
那你分享的是什么?是马三立的段子——逗你玩儿? --------------------编程问答-------------------- fd谢谢分享,下来看看, --------------------编程问答-------------------- 谢谢分享,学习了。 --------------------编程问答-------------------- 谢谢分享,学习了 --------------------编程问答-------------------- --------------------编程问答-------------------- 除 --------------------编程问答-------------------- 除 --------------------编程问答-------------------- --------------------编程问答-------------------- 除 --------------------编程问答-------------------- --------------------编程问答-------------------- UDP打洞可以很简单。当客户端发送消息给服务器以后,应该由服务器直接一对一的验证客户端的连通性。 --------------------编程问答-------------------- 好东西拿来分享,楼主好人 --------------------编程问答-------------------- 来意不明,打开此帖后基本就同意 一楼 wg5945 了 --------------------编程问答-------------------- VS2012? 版本太高了  --------------------编程问答-------------------- 除 --------------------编程问答--------------------
引用 19 楼 lww5351568 的回复:
VS2012? 版本太高了 
你可以把工程文件改一下哦 把那个.sln文件用记事本打开 头两行你会看到 
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012 如果改为VS2010 你就可以改为
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010 这样你就能用vs2010打开啦。 --------------------编程问答--------------------
引用 16 楼 sbwwkmyd 的回复:
UDP打洞可以很简单。当客户端发送消息给服务器以后,应该由服务器直接一对一的验证客户端的连通性。
 虽说服务器能够验证连贯性,这样不能保证客户端点对点能够连接通哦,很多情况下你是连接不通的。有很多因素。 --------------------编程问答--------------------
引用 22 楼 zhgyuhui 的回复:
Quote: 引用 16 楼 sbwwkmyd 的回复:

UDP打洞可以很简单。当客户端发送消息给服务器以后,应该由服务器直接一对一的验证客户端的连通性。
 虽说服务器能够验证连贯性,这样不能保证客户端点对点能够连接通哦,很多情况下你是连接不通的。有很多因素。
如果服务器端能单向连通客户端,那么其他客户端也能单向连通该客户端。
仅当两个客户端都是可连通的,这两个客户端才是双连通的。 --------------------编程问答--------------------
引用 21 楼 zhgyuhui 的回复:
Quote: 引用 19 楼 lww5351568 的回复:

VS2012? 版本太高了 
你可以把工程文件改一下哦 把那个.sln文件用记事本打开 头两行你会看到 
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012 如果改为VS2010 你就可以改为
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010 这样你就能用vs2010打开啦。

哦 原来这样也可以 谢谢了 还要感谢楼主的分享。 --------------------编程问答--------------------
引用 23 楼 sbwwkmyd 的回复:
Quote: 引用 22 楼 zhgyuhui 的回复:

Quote: 引用 16 楼 sbwwkmyd 的回复:

UDP打洞可以很简单。当客户端发送消息给服务器以后,应该由服务器直接一对一的验证客户端的连通性。
 虽说服务器能够验证连贯性,这样不能保证客户端点对点能够连接通哦,很多情况下你是连接不通的。有很多因素。
如果服务器端能单向连通客户端,那么其他客户端也能单向连通该客户端。
仅当两个客户端都是可连通的,这两个客户端才是双连通的。

服务器连接客户端通了,其他客户端连接该客户端未必通。不知道你咋实现的哦,有的能通,有的是不能通的,然后两个客户端彼此发一下消息就能通了,一个客户端发,有的不能接收到。这就是所谓的端口周期,大概3秒左右吧,歇3秒端口就歇了,彼此不发消息就收不到了。 --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答--------------------
引用 25 楼 zhgyuhui 的回复:
服务器连接客户端通了,其他客户端连接该客户端未必通。不知道你咋实现的哦,有的能通,有的是不能通的,然后两个客户端彼此发一下消息就能通了,一个客户端发,有的不能接收到。这就是所谓的端口周期,大概3秒左右吧,歇3秒端口就歇了,彼此不发消息就收不到了。
你说的3秒应该是ReceiveTimeout吧。 --------------------编程问答--------------------
引用 28 楼 sbwwkmyd 的回复:
Quote: 引用 25 楼 zhgyuhui 的回复:
服务器连接客户端通了,其他客户端连接该客户端未必通。不知道你咋实现的哦,有的能通,有的是不能通的,然后两个客户端彼此发一下消息就能通了,一个客户端发,有的不能接收到。这就是所谓的端口周期,大概3秒左右吧,歇3秒端口就歇了,彼此不发消息就收不到了。
你说的3秒应该是ReceiveTimeout吧。
如果说是NAT回话的生命周期,没有默认3秒这么夸张的吧。 --------------------编程问答--------------------
引用 25 楼 zhgyuhui 的回复:
服务器连接客户端通了,其他客户端连接该客户端未必通。不知道你咋实现的哦,有的能通,有的是不能通的,然后两个客户端彼此发一下消息就能通了,一个客户端发,有的不能接收到。这就是所谓的端口周期,大概3秒左右吧,歇3秒端口就歇了,彼此不发消息就收不到了。
彼此发消息就是所谓的打洞啊。
如果只有一方发消息,那么就只能单向连通。 --------------------编程问答-------------------- --------------------编程问答-------------------- 1、UDP端口有周期的,如果你等一会不发送消息到对方的端口,对方的端口就会自动关闭了。

问一下这个周期是多久?不会就只有几秒钟吧?那客户端跟服务器之间是不是也得客户端周期性的发送验证包给服务器,以保持连接不会断? --------------------编程问答-------------------- 除 --------------------编程问答-------------------- 软件还是很不错的 --------------------编程问答--------------------
引用 32 楼 xiaozhu39505 的回复:
1、UDP端口有周期的,如果你等一会不发送消息到对方的端口,对方的端口就会自动关闭了。

问一下这个周期是多久?不会就只有几秒钟吧?那客户端跟服务器之间是不是也得客户端周期性的发送验证包给服务器,以保持连接不会断?
一般的设备默认情况,UDP会话周期至少是按分钟算的。某些时候3秒可能连网络延时都不够。 --------------------编程问答-------------------- 关键是你要做好消息验证 --------------------编程问答--------------------
引用 32 楼 xiaozhu39505 的回复:
1、UDP端口有周期的,如果你等一会不发送消息到对方的端口,对方的端口就会自动关闭了。

问一下这个周期是多久?不会就只有几秒钟吧?那客户端跟服务器之间是不是也得客户端周期性的发送验证包给服务器,以保持连接不会断?
服务器端口是配置的,公开的任何时候都能连通的,客户端端口是随机的,具体的周期我测试的没有超过10秒,等会就发出去接不到了,两个再继续彼此的发送一下就又能通了。 --------------------编程问答--------------------
引用 35 楼 sbwwkmyd 的回复:
Quote: 引用 32 楼 xiaozhu39505 的回复:

1、UDP端口有周期的,如果你等一会不发送消息到对方的端口,对方的端口就会自动关闭了。

问一下这个周期是多久?不会就只有几秒钟吧?那客户端跟服务器之间是不是也得客户端周期性的发送验证包给服务器,以保持连接不会断?
一般的设备默认情况,UDP会话周期至少是按分钟算的。某些时候3秒可能连网络延时都不够。
是的 最短的测试一次就是很短 当然三五秒有点夸张哦,具体的周期我测试的没有超过10秒,等会就发出去接不到了,两个再继续彼此的发送一下就又能通了。 --------------------编程问答--------------------
引用 32 楼 xiaozhu39505 的回复:
1、UDP端口有周期的,如果你等一会不发送消息到对方的端口,对方的端口就会自动关闭了。

问一下这个周期是多久?不会就只有几秒钟吧?那客户端跟服务器之间是不是也得客户端周期性的发送验证包给服务器,以保持连接不会断?
服务器端口是配置好的哦,不用发送验证包,随时都可以连通。 --------------------编程问答--------------------
引用 37 楼 zhgyuhui 的回复:
服务器端口是配置的,公开的任何时候都能连通的,客户端端口是随机的,具体的周期我测试的没有超过10秒,等会就发出去接不到了,两个再继续彼此的发送一下就又能通了。
你说的周期是网络地址转换(NAT,Network Address Translation)设备对于会话的生命周期管理。如果客户端不经过NAT设备,那么和服务器是没有区别的。 --------------------编程问答--------------------
引用 39 楼 zhgyuhui 的回复:
Quote: 引用 32 楼 xiaozhu39505 的回复:

1、UDP端口有周期的,如果你等一会不发送消息到对方的端口,对方的端口就会自动关闭了。

问一下这个周期是多久?不会就只有几秒钟吧?那客户端跟服务器之间是不是也得客户端周期性的发送验证包给服务器,以保持连接不会断?
服务器端口是配置好的哦,不用发送验证包,随时都可以连通。


额,看来你理解错我的意思了,我是说当服务器要随时通知某个A客户端,让A跟B通信时,服务器怎么通知A呢?难道A客户端跟服务器有TCP长连接吗? --------------------编程问答--------------------
引用 39 楼 zhgyuhui 的回复:
Quote: 引用 32 楼 xiaozhu39505 的回复:

1、UDP端口有周期的,如果你等一会不发送消息到对方的端口,对方的端口就会自动关闭了。

问一下这个周期是多久?不会就只有几秒钟吧?那客户端跟服务器之间是不是也得客户端周期性的发送验证包给服务器,以保持连接不会断?
服务器端口是配置好的哦,不用发送验证包,随时都可以连通。


客户端连服务器随时都可以连通的,可是服务器主动连客户端呢?你是通过TCP长连接吗?如果是通过UDP的话,还得互发验证包维持NAT映射吧 --------------------编程问答--------------------
引用 42 楼 xiaozhu39505 的回复:
Quote: 引用 39 楼 zhgyuhui 的回复:

Quote: 引用 32 楼 xiaozhu39505 的回复:

1、UDP端口有周期的,如果你等一会不发送消息到对方的端口,对方的端口就会自动关闭了。

问一下这个周期是多久?不会就只有几秒钟吧?那客户端跟服务器之间是不是也得客户端周期性的发送验证包给服务器,以保持连接不会断?
服务器端口是配置好的哦,不用发送验证包,随时都可以连通。


客户端连服务器随时都可以连通的,可是服务器主动连客户端呢?你是通过TCP长连接吗?如果是通过UDP的话,还得互发验证包维持NAT映射吧
 目前我用的是TCP长连接。如果保持住连接客户端应该定时往服务器发送验证消息,我做的UDP服务端和客户端,也是出现周期问题。 --------------------编程问答--------------------
引用 40 楼 sbwwkmyd 的回复:
Quote: 引用 37 楼 zhgyuhui 的回复:
服务器端口是配置的,公开的任何时候都能连通的,客户端端口是随机的,具体的周期我测试的没有超过10秒,等会就发出去接不到了,两个再继续彼此的发送一下就又能通了。
你说的周期是网络地址转换(NAT,Network Address Translation)设备对于会话的生命周期管理。如果客户端不经过NAT设备,那么和服务器是没有区别的。
没错。 --------------------编程问答-------------------- mark下

LZ是头像很给力。。。 --------------------编程问答-------------------- 除 --------------------编程问答-------------------- 不错,值得学习一下 --------------------编程问答-------------------- 不错,很好值得值得 --------------------编程问答-------------------- 支持下支持下支持下支持下 --------------------编程问答-------------------- --------------------编程问答-------------------- 可以简单的赞一个么 --------------------编程问答-------------------- 这个是做什么用的,不理解。惊喜的事安装了2012,直接编译通过,楼主好淫啊!看我回复这么多,楼主给我这个菜鸟简单介绍一下,这个程序是做什么用的?要通俗易懂。难道是视频会议? --------------------编程问答-------------------- 好东西、、、、、、、、、、、 --------------------编程问答-------------------- 楼主头像好酷 --------------------编程问答-------------------- 想潜水啊 继续顶起来 --------------------编程问答-------------------- 谢谢分享,学习了 --------------------编程问答-------------------- 赞一个,
补充:.NET技术 ,  .NET技术前瞻
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,