Houseparty是一个多人聊天的App,近期在美国迅速火了起来。国内有一个类似的应用刚刚发布——SAY。下图是SAY在appstore的截图。
SAYSnapchat是一个具有变脸功能的视频通用应用,3月3日在纽交所上市了。国内也同样有一个类似应用,Faceu激萌。下图是Faceu激萌在appstore的截图。
Faceu激萌做为一个开发者,使用声网的SDK就可以自己动手做一个Houseparty和Snapchat的合体,同时具有多人视频通话和变脸功能。Say和Faceu激萌就使用的声网的SDK开发的。文末提供了开源demo的下载地址。
第一步,实现多人视频通话。多人交流,延时必须是毫秒级的,如果延时达到几秒,交流会受到严重影响。
声网SDK后台延时分布上图是使用声网SDK后台的延时分布。横坐标时间戳,纵坐标是传输延时。79.9%的通话延时在150ms以内。
声网SDK后台丢包率分布
上图是使用声网SDK后台的丢包率分布。声网通过抗丢包技术、服务器就近接入、服务器骨干网优化、骨干网动态路由等技术进行了多种改进。经过这些改进,我们可以看到上图的效果,丢包在1%以内的时间点有94.2%,超过20%丢包不到2%。
7人视频上图是使用声网SDK实现的多人通话demo。7个人在视频聊天。在这里会提供一个视频的大小流的接口。下排小窗口,画面非常小,可以通过接口单独请求小窗口的5个人的数据,请求低分辨率的小流,大图美女请求高分辨率的大流。由于接收到的6组数据是独立的,APP端可以自定义窗口布局。同时,也支持双击窗口大小切换。
第二步,要在视频聊天中集成变脸、脸部特效、美颜。美颜相机,是对照片进行人脸识别,在此基础上进行修改。视频中实现美颜功能是一样的处理。如果不想自己做这件事,声网也有实时滤镜SDK。最简单的滤镜是对颜色做偏移,高级的滤镜是在人脸识别固定特征位置做贴纸素材。美颜包括磨皮、瘦脸、大眼,集成在Demo里可以得到下图这样的效果。
人脸识别固定特征加贴纸素材至此,我们就用声网SDK和声网实时滤镜SDK完成了Demo。如果你感兴趣,可以下载这个开源demo来自己动手实践一下。每个月有1万分钟免费,足够自己开发一个通话应用在朋友之间玩耍,说不定就火了呢。要知道,Facetime当时就是一个为了班级同学交流而开发的一个社交网站。
最重要的来了,文中提到的开源demo,下载地址:https://github.com/AgoraLab/OpenLive_iOS
ps:运行demo前,需要访问声网的官网(www.agora.io)注册账号获取自己的app id才能成功运行demo。
网友评论