PCDN实现flash无延时直播的技术原理与优点

简介: PCDN是以P2P技术为基础,通过挖掘利用边缘网络海量碎片化闲置资源而构建的内容分发网络,它具有低成本、高品质的特点,十分适用于视频直播这一业务场景。针对直播中延时的情况,PCDN也进行了一系列优化,近期上线了flash无延时直播方案,下面我们将来介绍下无延时直播方案的技术原理和实现。

随着直播业务的大众化,直播过程中的技术也面临着越来越多的挑战。而延时影响用户体验的一个十分重要的因素。

直播过程中的延时是指从主播端采集,到观众端播放之间的时间差,主要来源于网络传输中的延时、网络抖动、网络丢包等等情况,短则1s-2s, 长则15以上,严重时可导致用户无法观看,所以解决直播延时问题一直是技术亟待解决的痛点。

我们知道PCDN是以P2P技术为基础,通过挖掘利用边缘网络海量碎片化闲置资源而构建的内容分发网络,它具有低成本、高品质的特点,十分适用于视频直播这一业务场景。针对直播中延时的情况,PCDN也进行了一系列优化,近期上线了flash无延时直播方案,下面我们将来介绍下无延时直播方案的技术原理和实现。

首先,我们来看看无延时传输策略是怎样的?

第一,切片大小是影响延时的直接因素,无延时直播的切片小,避免了因为切片过大的原因出现播放延时,同时P2P传输不会分包,提高传输效率。
第二,无延时直播采用订阅/推送模式,订阅子流,推送模式进行分享调度,满足直播的实时要求。
第三,当订阅/推送模式在peer退出时出现切片空洞,则使用快速补片的方式保证数据连续性和播放流畅度。

PCDN flash无延时直播整体服务架构

pcdn_

1、主播通过rtmp协议将直播流推送到阿里CDN
2、切片服务通过rtmp协议从阿里CDN拉取直播流并进行切片
3、阿里CDN再通过http协议拉取切片流,最终通过websocket协议分发到PCDN网络

那么无延时直播和有延时直播的区别是什么?

第一,切片类型不同
有延时直播切片按照时间切片,切片时长可配置,基本是在1s或500ms;
无延时直播切片按照大小切片,默认是1KB。
第二,分发类型
有延时直播,按照点播文件分发,每个切片都是单独的文件;
无延时直播,按照流式分发,与CDN L2节点维持长连接,通过http协议流式传输。
第三,CDN L1节点与终端传输协议不同
有延时直播是http协议,不支持持久连接
无延时直播是websocket协议,支持持久连接

我们可以看出,无延时直播方案是从直播流实时处理和传输分发等层面分别进行了优化,从而实现了流畅的直播用户体验。

PCDN flash无延时直播具有几大优势:

第一,可以支持大直播场景(重要赛事、大型活动、在线教育),服务端可以支撑上百万的同时在线量。
第二,P2P智能调度,可以从上百万的peer中选择与当前peer连通性最好的一批peer,确保更精准、更快速的数据传输。
第三, 支持热点自发现,仅为热点直播提供P2P服务,最大程度提升P2P效率,帮助用户节省成本。
第四,指标表现优异:平均延时小于 1s , 和CDN相比无延时,直播流畅率> 99%,同时P2P分享率可达30%-60%。

感兴趣的用户,可以在官网申请书使用,通过播放器加载SDK,SDK提供出LiveStream类,该类继承自flash.net.NetStream,播放器可使用NetStream类调用play函数播放对应的直播流,实现flash无延时直播。

目录
相关文章
|
前端开发 UED 容器
CSS基础-背景属性:颜色、图片、重复
【6月更文挑战第9天】本文介绍了CSS背景属性,包括背景颜色、图片、重复的使用和常见问题。通过实例展示了如何设置背景颜色(如使用rgba()注意透明度影响)、背景图片(使用background-size控制缩放)、背景重复(避免默认平铺导致混乱)以及综合使用背景属性创建复杂效果。理解并熟练运用这些属性能提升网页设计的视觉层次和用户体验。建议通过实践不断探索和提升CSS技能。
377 4
|
Linux 网络安全 数据安全/隐私保护
FileZilla 将本地文件上传到linux目录
FileZilla 将本地文件上传到linux目录
523 0
|
运维 监控 调度
普通人如何用PCDN来赚钱
私有内容分发网络(PCDN)利用分散的终端设备和带宽资源,构建去中心化的内容分发系统。普通人可通过搭建PCDN,利用闲置设备实现低成本、高灵活性的赚钱机会。主要步骤包括硬件准备、选择稳定软件平台、设计网络架构、内容管理和运维监控。盈利模式涵盖提供PCDN服务、广告合作、流量变现及增值服务。通过优化网络配置和设备选择,可最大化收益。尽管存在法律风险和收益波动,但合理搭建和维护能带来可观回报。
17515 0
|
监控 安全 Linux
深入探讨Samba服务器的配置与使用
深入探讨Samba服务器的配置与使用
1478 0
|
2月前
|
人工智能 小程序 机器人
2026年阿里云无影云电脑一键部署 Moltbot(原 Clawdbot)指南 | 无影云电脑个人版
Moltbot(原Clawdbot)作为一款可理解自然语言并执行各类任务的AI助理,在日常办公与个人事务处理中实用性显著。对于追求便捷部署的用户而言,阿里云无影云电脑推出的专属部署方案,凭借预装镜像、简化配置等特性,规避了本地部署的诸多麻烦。以下为无影云电脑个人版一键部署Moltbot的详细流程,同时涵盖多消息通道配置及相关优化设置,助力不同需求的用户快速启用该AI助理。
486 5
智启芯篇·共赴北京|“开放·连接 ”2025玄铁 RISC-V 生态大会议程公布!
2025年2月28日“开放·连接 ”2025玄铁 RISC-V 生态大会议程公布。诚邀您参加“开放·连接”2025玄铁RISC-V生态大会。汇聚全球行业专家、技术领袖及资深工程师于北京,共同探讨RISC-V技术趋势与产业未来,共筑“芯”篇章。席位有限,欢迎扫码锁定参会席位!
661 1
|
7月前
|
人工智能 JSON 供应链
5C提示词工程框架:让AI成为你的贴心助手
通过清晰度、上下文、命令、链式、持续优化五个维度,教你如何与AI进行高效对话。从小白到专家,一篇文章搞定所有提示词技巧!
676 1
|
7月前
|
Oracle Java Linux
JDK
JDK
2860 0
|
Java API Maven
SpringBoot+SeetaFace6搭建人脸识别平台
【10月更文挑战第8天】以下是使用Spring Boot和SeetaFace6搭建人脸识别平台的步骤:首先安装Java和Maven,下载SeetaFace6库并添加依赖;接着创建Spring Boot项目并在`pom.xml`中添加必要依赖;然后配置SeetaFace6参数;实现人脸识别服务类与控制器类;最后使用工具如Postman测试API接口及识别结果。示例代码展示了如何接收图像数据并进行人脸检测。可根据具体需求扩展更多功能,如用户管理和历史记录等。
1226 1
go语言时间类型、字符串转换为时间、时间转换为字符串
go语言时间类型、字符串转换为时间、时间转换为字符串

热门文章

最新文章