vlog跟普通视频区别 什么是vlog相机拍摄

七牛云于6月底发布了一个针对视频直播的实时流网络LiveNet和完整的直播云解决方案,很多开发者对这个网络和解决方案的细节和使用场景非常感兴趣 。
结合该实时流网络LiveNet和直播云解决方案的实践,我们将用七篇文章,更系统化地介绍当下大热的视频直播各环节的关键技术,帮助视频直播创业者们更全面、深入地了解视频直播技术,更好地技术选型 。
本系列文章大纲如下:
(一)采集
(二)处理
(四)推流和传输
(五)现代播放器原理
(六)延迟优化
(七)SDK性能测试模型
在上一期的处理篇中,我们介绍了讲解编码和封装 。本篇是《解密视频直播技术》系列之四:推流和传输 。推流是直播的第一公里,直播的推流对这个直播链路影响非常大,如果推流的网络不稳定,无论我们如何做优化,观众的体验都会很糟糕 。所以也是我们排查问题的第一步,如何系统地解决这类问题需要我们对相关理论有基础的认识 。
推送协议
下面就先介绍一下都有哪些推送协议,他们在直播领域的现状和优缺点 。

  • RTMP
  • WebRTC
  • 基于UDP的私有协议
1RTMP
RTMP是Real Time Messaging Protocol(实时消息传输协议)的首字母缩写 。该协议基于TCP,是一个协议族,包括RTMP基本协议及RTMPT/RTMPS/RTMPE等多种变种 。RTMP是一种设计用来进行实时数据通信的网络协议,主要用来在Flash/AIR平台和支持RTMP协议的流媒体/交互服务器之间进行音视频和数据通信 。支持该协议的软件包括Adobe Media Server/Ultrant Media Server/red5等 。
RTMP是目前主流的流媒体传输协议,广泛用于直播领域,可以说市面上绝大多数的直播产品都采用了这个协议:
优点
  • CDN支持良好,主流的CDN厂商都支持
  • 协议简单,在各平台上实现容易
缺点
  • 基于TCP,传输成本高,在弱网环境丢包率高的情况下问题显著
  • 不支持浏览器推送
  • Adobe私有协议,Adobe已经不再更新
2WebRTC
WebRTC,名称源自网页即时通信(英语:Web Real-Time Communication)的缩写,是一个支持网页浏览器进行实时语音对话或视频对话的API 。它于2011年6月1日开源并在Google、Mozilla、Opera支持下被纳入万维网联盟的W3C推荐标准 。
目前主要应用于视频会议和连麦中,协议分层如下:
vlog跟普通视频区别 什么是vlog相机拍摄

文章插图
vlog跟普通视频区别 什么是vlog相机拍摄

文章插图
vlog跟普通视频区别 什么是vlog相机拍摄

文章插图
vlog跟普通视频区别 什么是vlog相机拍摄

文章插图
vlog跟普通视频区别 什么是vlog相机拍摄

文章插图
vlog跟普通视频区别 什么是vlog相机拍摄

文章插图
回归本质:LiveNet
我们知道最早的互联网就是网状拓扑结构,后来才慢慢加入了骨干网来解决各种各样的问题,我们是时候该回归本质,拥抱下一代Live分发网络:LiveNet 。总结前面的讨论,我们发现Live时代我们需要的内容分发网络是:
  • 对Cache的要求没有以前那么高
  • 对实时性的要求非常高
  • 对节点运维的要求高,要更智能,尽量减少人工干预
  • 对扩容这种运维事件响应度要求非常高
要做到如上几点,我们需要:
  • 去中心化,网状拓扑
  • 全球全网调度
  • 节点无状态,节点对等
  • 智能运维
以上这些就是LiveNet设计时候的斟酌,让运维更自动化,系统运行高度自治,依赖机器计算而不是人工判断,下面分别介绍一下 。
去中心,网状拓扑
网状拓扑结构是设计的根本和基础,只有看清了我们对Cache需求的降低,网状拓扑结构才更有优势 。
全球全网调度
基于全球一张网,不在受限于区域网络调度,将调度的范围从区域网络扩展到全球,全网内的节点都可以响应用户的请求,参与链路路由,不再先由人工假设选定一部分节点进行路由,去掉人工干预,让整个系统更智能 。
节点无状态,节点对等
LiveNet节点无状态和节点对等都方便了运维,去掉了区域概念后的全球一张网让整个拓扑结构变的异常复杂,如果各个节点间有先后依赖关系,势必让运维成为噩梦,需要专有的服务编排系统,同时也给扩容带来困难,需要运维人员设计复杂的扩容方案,需要预演多次才敢在复杂的网络拓扑中扩容 。当时如果节点本身对等且无状态,则运维和扩容都变的容易很多 。
但整个系统在运行过程中还是会一些状态和数据需要保持,比如某些Live内容需要落地回放的需求,这些通过久经考验的七牛云存储来存储 。
智能运维
智能运维建立在以上的「网状拓扑结构的对等网络」的基础上会变的容易的多 。可以方便的下线有问题的节点而不影响整个LiveNet网络,可以方便快速的上线新节点,提升系统容量 。通过节点的数据分析可以更好的了解整个网络的整体状态 。
下面列举部分LiveNet采用的智能运维方案,让内容分发网络再次升级,以符合Live时代的要求 。
  • 监控节点健康状况,实时下线有问题的节点
  • Failover机制,保证服务一直可用
  • 快速扩容
LiveNet VS P2P
最后我们和P2P网络做一个对比:
LiveNetP2PCDN网状结构网状结构树状结构对等网络对等网络异构网络自有节点混合节点,部分自有自有节点链路多,稳定链路特别多,不稳定链路少,稳定扩容周期短扩容周期短扩容周期长节点可管理性强节点可管理性弱节点可管理性强节点质量好节点质量参差不齐节点质量好【vlog跟普通视频区别 什么是vlog相机拍摄】我们发现P2P方案,节点的可控性和链路的稳定性上还有很大提升空间,比较适合在实时性要求不高的场景使用、适合长尾需求,在Live的场景下面多是对实时性要求比较高的重度用户,无法忍受频繁的FailOver和节点质量参差不齐带来的网络抖动,但是如果是文件分发就比较适合用这种混合方案,可以有效降低CDN厂商成本,利用共享经济提高资源利用率 。

    推荐阅读