html5 video p2p research

2020-12-17 10:55:48

一、背景

节约带宽,减少缓冲时间,提升服务质量,处理峰值流量, 视频观看的人越多,播放越流畅。

二、p2p是什么?


通俗的解释:点对点播放,无中心服务器,依靠用户群交换信息。


三、如何实现?

1 、 Server ?

2、Client :

html5 WebRTC & Media Source Extensions

3、Supported Browsers & Plantforms


从上可知ios目前还无法实现p2p播放


4. webRTC 网络实时通信,主要是来让浏览器实时获取和交换视频,音频数据。

webRTC提供的api

getUserMedia 获取媒体数据

RTCPeerConnection 浏览器之间点对点的连接

RTCDataChanne 浏览器用于点对点的数据通信


四、解决方案?

The Serverless P2P CDN For Video Live Streaming


五、参考文章

slideshare.net/SPOTITV/

MediaSource

w3.org/TR/media-source/#

Getting Started with WebRTC - HTML5 Rocks

HTML5新特性之WebRTC - 草根程序猿 - 博客园(webrtc demo)

WebRTC现状及优缺点,音视频通信必看的开源项目 - 专家观点 - CTI论坛-中国领先的ICT行业网站(WebRTC 优缺点)

WebRTC Videos | WebRTC (chrome webrtc 视频介绍)


  • 2020-03-05 13:12:54

    Markdown的css样式

    本样式在这个样式的基础上做了一些修改, 主要是对于表格和代码块以及一些细节的修改。 主要目的是用在chrome的扩展 Markdown Preview Plus中, 替换其内置的样式。 由于 Markdown Preview Plus对css文件大大小有要求(小于8K), 所以需要使用压缩后的 css 文件。 当然也可以作为一个单独的markdown样式来使用。

  • 2020-03-06 22:28:05

    git中submodule子模块的添加、使用和删除

    执行成功后,git status会看到项目中修改了.gitmodules,并增加了一个新文件(为刚刚添加的路径) git diff --cached查看修改内容可以看到增加了子模块,并且新文件下为子模块的提交hash摘要 git commit提交即完成子模块的添加

  • 2020-03-09 21:34:48

    Android TV 包安装成功后找不到启动图标

    生成APK文件,用U盘插入到小米盒子上,然后点击安装,提示安装成功。 可是找不到启动图标,安装成功的弹窗也没有打开的选项。 而我之前测试装的一款手机应用是可以找到启动图标的。

  • 2020-03-09 21:37:10

    安卓Tv端App开发与手机端的开发的区别

    因为大部分电视机的配置一般都比手机低,但是电视机一般都是用来看视频的,所以在做视频解码的时候,因为电视机配置比较低,所以大多数手机运行流畅的播放器在电视机上面都会卡顿,或者出现一些其他的问题,经过我同事长时间的测试,认为百度播放器跟小米播放器比较适合电视机作为播放器开发使用。如果你们要选择一个播放器,要先拿一个demo去很多台不同类型的电视机去测试,因为网络上面的播放器在电视机卡的真的很多,先测试好了再使用可以节约大家的时间。