今天给大家推荐一个音视频开源项目。
项目地址是:https://github.com/AgoraIO-Community/RTC-Hackathon
想学习音视频技术的朋友可以关注,下面是项目介绍:
这是一个不一样的春天,很多人宅在上网课、上班,还有一些选择用代码挑战自己。
3 月 10 日,RTC 2020编程挑战赛春季赛正式开启,来自 70+高校及开发团队的 300+名开发者报名参赛,组成了 100+队伍。RTC线上编程挑战赛,是声网 Agora 面向全球 RTC 开发者、编程爱好者与极客举办的一场在线黑客马拉松。今年将推出春季赛和秋季赛 2 个赛季,每个赛季主题不同。这次的大赛有两个赛道,第一赛道的主题是「基于视频通话 Demo 设计 UI」,第二赛道的主题是「开发 RTC(实时音视频)应用」。
没能参赛、看决赛直播的小伙伴们,也通过这个花絮了解一下大赛????
入围团队中,有来复旦经济系跨界开发者,也有 6.3K Star 开源项目的作者,还有搞 CV 算法的伯明翰大学在读生。当然!更重要的是,参赛作品也都是别出心裁,特色各异。
经过声网与 SegmentFault评委的现场评分,以及代码审查,评选出了最终结果。这场以 RTC 技术为主题的编程大赛,也以 RTC 技术为支撑举行了一场欢乐的☁️云端颁奖礼。
大概是这样一个赶脚????
本次大赛的入围作品也都已上传至 Github。我们先来看看那些获奖的作品。
01
第一赛道获奖作品
???? 第一赛道第三名
首先第一个赛道「为多人视频通话应用设计」中获得第三名是 Hehung 开发的「极简视频通话 UI 设计」。作者本身从事的是嵌入式开发,前端开发是他的业余爱好。
为了实现他想要的效果,他把主办方提供的 demo 的 CSS 整体重写了,然后结合 JS实现了交互简洁、色彩明亮的界面。当每个通话人进入频道之后,界面会自动改变大小,并进行自动布局,窗口的大小也实现了自适应。
????第一赛道第二名
获得第二名的作品是 1099 小分队的视频聊天应用。团队的两位成员是来自复旦大学经济系的,听到这里,直播间里的观众也直呼“跨度好大”。
他们在 Agora Demo 的原基础上,增加了同屏搜索、录屏功能,以及弹幕和互动。
???? 第一赛道第一名
获得第一名的是「半自动排版会议室」。这个作品的作者 Derek 也参加过我们在 2016 年与 SegmentFault 举办的 Hackathon。
他在日常使用视频会议时发现,一般视频窗口的布局都是固定的,所以他开发了一个可以自动排版视频窗口布局的 Web 视频会议室。当一对一通话时,视频窗口可以占满全屏;当三人通话时,会自动变为四分屏。用户也可以通过拖拽来改变每个视频窗口的位置。
在视频会议过程中,我们会遇到多人同时说话,结果听不清任何一方在说什么。在这个作品中,如果拖拽放大其中一个视频窗口,该对话人的音量也会自动增大,就可以避免这种问题。
网页端演示
02
第二赛道获奖作品
???? 第二赛道第三名
在第二赛道获得第三名的是神隆架团队。他们基于 Agora SDK 开发了一个可以“匿脸”的一对一视频社交应用。用户配对成功后进入视频聊天房间。最开始两人的视频都是马赛克,视频下方会不断更新一些可以聊的话题建议。如果你觉得跟对方聊得投机,可以双击点赞增加“好感度”,随好感度的提升,马赛克会慢慢淡去。如果有一段时间没有点赞,马赛克还会回来,直至最后结束通话。
???? 第二赛道第二名
获得第二名是启明无障碍科技团队的作品“启明盲人新世界”。视障人士是很容易被忽视的群体之一。听过启明无障碍科技创始人周江南的讲解分享,我们也了解到,其实视障人士也可以通过实时语音来进行社交,也可以在线 K 歌,只是目前这块市场是个空白。
启明无障碍团队开发了「启明直播」,通过加入无障碍交互,让视障人士可以在线 K 歌、连麦交流、视频会议,是一个有温度的创新应用。
???? 第二赛道第一名
获得第二赛道第一名的作品是「Syncit」。作者YanZhen Yu 也是开源项目 rrweb 的作者。rrweb可以利用浏览器的 API 录制、回放任意 Web 界面中的用户操作。
rrweb 也是这次参赛作品 Syncit 功能的基础。在开发 Syncit 的过程中,YanZhen Yu 对 rrweb 进行了状态机重构等优化,可实现更好的实时回放。而Syncit 使用 Agora RTM 实时消息 SDK 实现 transporter 的部分。Agora SDK 也为实际使用带来很好的稳定性和低时延。
远程共享演示
Syncit 适用于很多场景,比如远程客服,当用户遇到问题的时候,双方可以通过 Syncit 进行远程的协助。而且,即便在弱网环境下,也可以获得“画质不降级”的 Web 共享体验。
03
第二赛道特别奖项
在第二赛题「开发实时音视频应用」中,有很多高质量的硬核作品。所以,除了评出 1、2、3 名以外,最终还评选出了三个作品,分别获得最佳应用奖、最佳创意奖、最佳实践奖。
????最佳应用奖:「竹辩」
作者于卓浩与在伯明翰大学就读的王嘉维,在去年作品的基础上,完善了功能与界面,并引入了机器学习算法进行声纹、人脸识别,以防止有人冒名顶替上场辩论。同时,他们还利用了微软的情绪识别接口,来判断参赛者的情绪与表现。
????最佳创意奖: Zero 团队
他们的作品不走寻常路。恐怕每个人都会面对颈椎问题吧?恐怕学生党也难逃此劫。所以这个团队做了一个视频交互游戏「拿头玩」,这个游戏的“口号”是:每天一遍,颈椎康健。它长这样????
真的是拿头在玩儿
为了让颈椎操没那么乏味,他们设计了一个“职场甩锅”的场景,一个人甩锅,另一个人躲锅。两个玩家进入房间后,每个人的视频窗口下方会不断有要甩出去锅和对方甩过来的锅,摇摇头就能甩或躲。
???? 最佳实践奖:Femto X 团队
这支团队是来自上海科技大学的。经过这段时间的网课过程后,他们从中发现了很多问题,比如直播、答疑、课件共享等都是通过不同的软件实现的,体验割裂;还有课程主页与课程资源页面信息逻辑不清晰等。于是,他们基于 Agora SDK 开发了一套教学系统——Xeducation。
他们将文件系统、直播系统、课程平台进行了整合。你可以在上图看到,课程表、通知与作业安排集合到了一起。他们基于 Agora RTM实时消息 SDK 实现了课程直播中的弹幕功能,并用 Agora 录制 SDK 实现了录制回放。另外,Xeducation 还支持笔记、课堂签到、测试提交、课件共享等功能。
综上,本次获奖的团队为:
获奖团队除了会得到本季度大赛奖金,还可以申请进入声网应聘快速通道。另外,声网 Agora 还将推出萌新加速计划,为具有潜力的初创公司提供一系列加速孵化服务的优惠政策,帮助企业快速成长。这次包括获奖作品在内,所有入围决赛的项目,都已在 Github 开源:
https://github.com/AgoraIO-Community/RTC-Hackathon
主办方后续还将在「声网 Agora 开发者」公众号邀请参赛团队们线上分享他们的开发实践。同时,声网 Agora 联合 SegmentFault 将在 6 月、7 月开启秋季赛,届时还会有新的赛题面向,让更多开发者都有一展身手的舞台。可以扫码关注「声网 Agora 开发者」,获取秋季赛的最新消息。