WebRTC开源项目一览之二
、Kurento视频直播系统
4.1 应用实例
搞视频会议就会涉及一对多、多对多、广播、转码、混音、合屏、录制,这就需要用到流媒体服务器,而kurento就具有这些功能。
他主要用来作为webrtc的流媒体服务器,因为BUG多,目前不适于商用,不过前景可期,
图1:
说明:
1、看到这里您可不要讲他的功能和ICE服务器的功能给搞混了哦,后者主要用来做NAT穿透和转发的。
4.1.1 、kurento架构
图2:
说明:
1、客户端对音视频数据的采集和播放等是通过webrtc来处理的,传输模块就是kurento的。
2、流媒体服务是他的核心服务,可以进行编解码,混音,录制,计算机视觉,视觉增强等等。
4.1.2 、特色功能---计算机视觉
图3:
说明:
1、服务端可以对收到的视频流进行处理,如人脸识别,这些扩展下去应用前景就很广泛了,期待!
2、因为他对图像进行了处理,所以延迟会比较大,识别率还存在些问题,而且会造成图像闪动(可能也是跟延迟有关)。
3、其他功能如一对一,广播就不重复了,很多其他流媒体服务都具有这些功能。
最后:虽然kurento目前问题很多,但我看好他,后面会继续分享相关内容,也会和他们一起去完善这个东西。
4.2 Kureto官网
链接:http://www.kurento.org/whats-kurento
What's Kurento?
Kurento is a WebRTC media server and a set of client APIs making simple the development
of advanced video applications for WWW and smartphone platforms.
Kurento Media Server features include group communications, transcoding,
recording, mixing, broadcasting and routing of audiovisual flows.
Kurento 是一个 WebRTC 流媒体服务器以及一些客户端API,有了它,
开发WWW及智能手机平台的高级视频应用就变得更加容易。
可以利用Kurento开发的应用类型包括,视频会议,音视频广播,音视频录制、转码等。
As a differential feature, Kurento Media Server also provides advanced media
processing capabilities involving computer vision, video indexing,
augmented reality and speech analysis. Kurento modular architecture
makes simple the integration of third party media processing algorithms
(i.e. speech recognition, sentiment analysis, face recognition, etc.),
which can be transparently used by application developers as the rest of Kurento built-in features.
.
Kurento Media Server adds advanced media processing to the capabilities of common media servers.
五、一个WebRTC的视频直播试验项目
链接:
https://github.com/muaz-khan/WebRTC-Experiment/tree/master/broadcast
WebRTC One-to-Many video sharing/broadcasting / Demo
1. This WebRTC experiment is for one-to-many transmission of audio/video streams.
2. It sets up multiple peer connections to support the multi-user connectivity feature.
Rememebr, WebRTC doesn't supports 3-way handshake!
3. Multi-peers establishment opens many RTP-ports according to the
number of media streamas referenced to each peer connection.
4. Multi-ports establishment causes huge CPU and bandwidth usage!
六、一个基于WebRTC的混合CDN/P2P直播开源项目
大家好,
最近在GitHub看到一个基于WebRTC的混合CDN/P2P直播开源项目,觉得很有前景。
相比传统P2P直播软件而言,该项目的优势是不需要安装任何插件,而且主流浏览器都支持。
出于好奇,我也在服务器上创建了一个实例,看看效果如何。
如果你稍微有那么一点的感兴趣,我邀请你一起参与测试。这里是一些注意事项:
1. 测试地址 http://www.zoptv.com/player/p2p/
2. 支持的浏览器 Chrome, Firefox, Opera
3. 测试页面和视频,之后可能被删掉
4. 期待你的建议,我会不定期的在此帖回复
P.S 感谢原作者 http://github.com/bemtv (貌似github被墙了?)
官方链接:
https://github.com/bemtv
http://bem.tv/
BemTV is an attempt to scale live video streaming using peer-to-peer
without the need of an external plug-in. It uses the powers of WebRTC to
build swarms, enabling the possibility to flow chunks between users.
from:http://blog.csdn.net/fireroll/article/details/47109757
WebRTC开源项目一览之二的更多相关文章
- 学习Coding-iOS开源项目日志(二)
继续前篇:<学习Coding-iOS开源项目日志(一)>,接着本第二篇<学习Coding-iOS开源项目日志(二)>讲解Coding-iOS开源项目. 前言:作为初级程序员,想 ...
- webrtc开源项目音频重采样“不友好接口”的几点总结
WebRTC(Web Real Time Communication)并不是Google原来自己的技术,在2010年,Google以大约6820万美元收购了VoIP软件 开发商Global IP So ...
- android 开源项目一览
直接拿来用!最火的Android开源项目(一) http://www.csdn.net/article/2013-05-03/2815127-Android-open-source-projects ...
- [最新].NET Core ORM 开源项目一览,持续更新
截至2019-05-08共收集27个 .NET Core ORM 开源项目,38个 .NET ORM 开源项目. .NET Core ORM 开源项目收集地址:https://github.com/o ...
- Halo 开源项目学习(二):实体类与数据表
基本介绍 Halo 项目中定义了一些实体类,用于存储博客中的关键数据,如用户信息.文章信息等.在深入学习 Halo 的设计理念与实现过程之前,不妨先学习一下一个完整的博客系统都由哪些元素组成. 实体类 ...
- .NET开源项目一览
- 学习Coding-iOS开源项目日志(一)
前言:作为初级程序员,想要提高自己的水平,其中一个有效的学习方法就是学习别人好的项目.本篇开始会陆续更新本人对github上开源的一个很不错的项目的一点点学习积累.也就是,探究着别人写的源码,我学到了 ...
- (转)直接拿来用!最火的iOS开源项目(一)
1. AFNetworking 在众多iOS开源项目中,AFNetworking可以称得上是最受开发者欢迎的库项目.AFNetworking是一个轻量级的iOS.Mac OS X网络通信类库,现在是G ...
- GitHub上最火的40个iOS开源项目
1. AFNetworking 在众多iOS开源项目中,AFNetworking可以称得上是最受开发者欢迎的库项目.AFNetworking是一个轻量级的iOS. Mac OS X网络通信类库,现在是 ...
随机推荐
- C#泛型类的用途和说明
class Program { public class Test<T, S> { //泛型类的类型参数可用于类成员 ...
- 打开word2010每次都要配置进度的解决办法
作者:朱金灿 来源:http://blog.csdn.net/clever101 不小心把ms office2010搞坏了,于是重装ms office2010,结果一打开word文档时总是出现下面的对 ...
- 基于Intent实现Activity与Activity之间的数据传递,实现二个Activity的跳转功能
在讲参数传递之前,先讲下intent的定义: Intent intent = new Intent(MainActivity.this,SecondActivity.class); //这是显式定义 ...
- LCA 离线的Tarjan算法 poj1330 hdu2586
LCA问题有好几种做法,用到(tarjan)图拉算法的就有3种.具体可以看邝斌的博客.http://www.cnblogs.com/kuangbin/category/415390.html 几天的学 ...
- [Intermediate Algorithm] - Sum All Primes
题目 求小于等于给定数值的质数之和. 只有 1 和它本身两个约数的数叫质数.例如,2 是质数,因为它只能被 1 和 2 整除.1 不是质数,因为它只能被自身整除. 给定的数不一定是质数. 提示 For ...
- C# model代码生成器
using System.Collections.Generic; using System.Text; public class Class1 { //传递 1.表名 2.列名 3.类型 publi ...
- 简明git教程(单人版本)
最近开始写一个比较大的东西,所以需要用到git,之前一直在用金山快盘和乌龟搭建的SVN,最近想尝试一下git 1.安装 Ubuntu: sudo apt-get install git 老版本的Ubu ...
- matlab学习创建变量定义函数
定义变量a,b,c,计算输出d >> a=-3;b=2;c=5;>> d=(a^2+b)/c;>> d=(a^2+b)/c d = 2.2000 系统默认变量 a ...
- 记一次vip视频破解过程(爱奇艺 芒果 腾讯 优酷 )
1. 在爱奇艺或者优酷中拿到视频的url地址.此时拿到的是加密地址(也可以直接在牛巴巴里面搜名字然后开f12跟踪路由) 2.进入牛巴巴vip视频解析网站.粘贴拿到的url.点击解析 3.f12在net ...
- jmeter实现逻辑控制器