基于网络通信协议所集成的 VoIP 技术 Tucodec

基于网络通信协议所集成的 VoIP 技术 Tucodec

Apache
C/C++
跨平台
2017-12-23
图鸭科技研究员

Tucodec 详细介绍

tucodec 是图鸭科技基于网络通信协议所集成的VoIP技术, 由C/C++语言实现.

具有以下特点:  

  • 智能化调整码率.

  • 端对端延时50~100ms.

  • P2P穿透70%, 节约服务器带宽.

  • 兼容MAC OS, iOS, Android, Windows, Linux等平台.

  • 可应用于多人视频会议, 端到端视频通话, 连麦直播等场景.

  • 单台服务器并发超过nginx_rtmp, 支持集群.

Android启动代码示例

 ``` java
private VoipAndroid mVoIPClient;
private VoipVideoRender mMainRender, render1, render2, render3;
private int mUserId, render1_id, render2_id, render3_id;
/* 省略以上变量初始化代码*/
private VoipAndroid.VideoCallback mVideoCallback = new VoipAndroid.VideoCallback() {
    @override
    public void priviewImage(VoipImage voipImage) {
        mMainRender.setMirror(false);
        mMainRender.pushVideoFrame(voipImage);
    }
 
    @override
    public void decodedImage(VoipImage voipImage) {
        if (voipImage.userId != mUserId) {
            mVoIPeers.get(voipImage.userId).setMirror(false);
            mVoIPeers.get(voipImage.userId).pushVideoFrame(voipImage);
        }
    }
}
private void initGroupChat() {
    mVoIPClient = new VoipAndroid(new Handler(),getApplication(),null);
    mVoIPClient.loginRelayServer(ip, (short)port, mUserId, 0);
    mVideoCapture = new VoipVideoCapture(mVoIPClient,
        new VoipVideoCapture.CaptureParam(mVoIPClient.getConfig().videoWith,
                                          mVoIPClient.getConfig().videoHeight));
    mVideoCapture.start(true, 
                        mVoIPClient.getConfig(), 
                        (ViewGroup)mMainRender.getParent());
    mVoIPClient.registerVideoCallback(mVideoCallback);
    mVoIPClient.registerAudioCallback(mAudioCallback);
    mVoIPClient.init((mVoIPClient.benchmark() + 
                      mVoIPClient.benchmark() + 
                      mVoIPClient.benchmark()) / 3, 
                      mVideoCapture);
    mVoIPClient.startCallWithUserName("android_client", mUserId);
    mVoIPClient.startVideoPipeline(new VoipAndroid.VideoParameter(512, false));
    mVoIPClient.startAudioPipeline(new VoipAndroid.AudioParameter(1600, false));
}
```
加载中

评论(18)

图鸭科技研究员
图鸭科技研究员 软件作者
看到很多朋友在说我们的开源项目少、文档少,现在在这里统一回复一下,我们是部分开源部分免费。开源了服务器代码和客户端网络模块代码,免费提供VOIP SDK。因为SDK不开源,就没有放在码云和github上。大家可以到我们的官网(www.tucodec.com)上下载所有相关文档。对于文档太少,确实当时准备太匆忙,对于造成的不便说声抱歉,我们的工程师们已逐渐丰富相关文档。还望大家在体验我们产品时,有任何问题可以及时和我们沟通,以便我们完善开源项目。
T
Tuyaya
支持开源
L5_Railgun
L5_Railgun
VoIP基于webrtc自己开发就是了,质量相当高
d
davidzl
测试了一下,效果不错,延时做的有点牛逼!技术团队反馈也比较及时,后来发现居然是交大博士团队,校友企业做技术免费不容易,支持一下。
红领巾2018
路过,支持
流年无痕
流年无痕
抱着为老板尝鲜的态度的接入了一下贵司系统,整体来说贵司并没有全部系统开源,VoIP 是免费的,其余客户端,网络端这些开源了,也算是国内为数不多的企业能将VOIP 免费的。UDP协议处理起来难度不小,能免费对于很多公司来说确实不小的福利。
javaining
javaining
@jinly 等你用到正式环境了,人家的服务挂了,你咋办?都是做玩具的?
楼上的几位戾气不要太重,VoIP 算法没有开源,提供的是免费SDK;客户端,网络层代码是开源,各个平台居然都写了,不容易,加油!
jinly
jinly
看到楼上很多都说伪开源,就去翻了一下。图鸭之前说的是开源图鸭VoIP技术的服务器源代码及客户端网络模块代码,而对于不开源的SDK也是免费给大家使用的。我的观点是不论开源还是免费,能让我不花钱使用的,能解决问题的,就是好的!
Codeyn
Codeyn
伪开源

图鸭音视频技术 Tucodec 宣布开源,打破格局

12月23日上午,开源中国源创会在北京万豪酒店召开,会上众多团队分享了自家的技术。上午10点,图鸭科技创始人武俊敏宣布开源图鸭VoIP技术的服务器源代码及客户端网络模块代码。这套音视频开源...

2017/12/23 10:47

没有更多内容

加载失败,请刷新页面

没有更多内容

12
回答
【开源访谈】图鸭科技武俊敏:技术无国界,开源让技术向前迈进一步

2017 年 12 月 23 日,在 OSC 源创会年终盛典上,图鸭科技创始人武俊敏宣布开源图鸭 VoIP 技术的服务器源代码及客户端网络模块代码。 图鸭...

2017/12/28 08:41
16
回答
高手问答第 184 期 — 视频通信背后有着怎样的技术支撑?

OSCHINA 本期高手问答(1 月 3 日 - 1 月 9 日)我们请来了武俊敏和大家一起探讨音视频通信领域的相关问题。 武俊敏,上海交大博士,图鸭科技...

01/02 18:27

没有更多内容

加载失败,请刷新页面

没有更多内容

手把手教你搭建视频通信系统——windows版

前两天说了iOS介绍了Android,今天就和大家说一下windows端如何搭建视频通信系统。 一、准备: 1、首先在图鸭官网:http://tucodec.com 进行注册,获得SDK中所需要的APPKey、AppSecret,注册登...

01/13 10:53
69
0
从0开始,搭建一个完整的Android音视频通信系统

昨天,图鸭君给大家介绍了如何在iOS端搭建音视频通信系统,今天我就给大家介绍一下如何搭建一个完整的Android音视频通信系统。 一、准备: 首先在图鸭官网:http://tucodec.com 进行注册,获得...

01/11 16:04
59
0
手把手教你,搭建一个完整的iOS音视频通信系统

现在市面上有许多音视频通信软件,比如Facetime。你是否想过开发一款独属于自己的音视频通信软件?在iOS开发中,音视频通讯开发一直比较困难:昂贵的开发成本、较高的技术门槛让很多开发者和...

01/10 10:56
23
0

没有更多内容

加载失败,请刷新页面

没有更多内容

返回顶部
顶部