未来可以使用IPFS进行流式传输
文章来源丨www.ipfs.cn【IPFS中国社区】
·
当前的Internet流媒体方案
在过去几年中,视频支持的应用程序,尤其是视频流,已经变得非常流行。许多提供商开始在其专用网站上发布他们的内容,如新闻,连续剧和电影,或者为此目的使用专门的共享服务,如YouTube,美国的Hulu等等。
在上述服务中,视频流通常基于HTTP和TCP,视频播放器嵌入在Web浏览器中。TCP是目前互联网中使用最广泛的传输协议,但通常被认为不适合多媒体流传输。HTTP和TCP是通用协议,并未针对流媒体传输进行专门设计或优化。
带宽很宝贵。当我们有很多人通过互联网请求媒体时,有很多带宽通过互联网传播。这些联系是单一的,它们流向每个人。如果有500人在观看,则每个人都必须获得该媒体的副本。在这种情况下,带宽随着人数的增加而增加。对于500人,我们需要500倍的带宽。
要解决这个问题,像YouTube这样的公司依赖于CDN。基本上,他们通过添加更多计算机以及将分发中心移近大众用户来解决此问题。
更复杂的是,每年的存储价格下降(40%)和带宽(26%)之间的差异几乎是两倍。
所有这些意味着我们将拥有更多人,在没有快速扩展的频道上传输更多数据。这会产生拥塞,只需添加更多硬件就无法解决某个时间点。
想象一下,你和100个人一起参加了一个演讲,你们都看了同样的视频。所发生的事情是,该视频必须从谷歌的最近节点获取,流式传输到每个学生的笔记本电脑并重复100次。我们不是拥有相同视频副本的学生,而是相互分享,而是多次传播大量数据,远距离传播。效率低下,但这就是HTTP的工作方式,它正在互联网骨干上造成大量拥塞问题。
今天,互联网是一个自然只有单点故障的集中式系统。可以滥用此故障点来禁用对整个国家/地区的内容的访问。此外,这些传统的流媒体服务由一个或几个大型组织管理。服务质量和审查规则由他们决定,用户需要毫无疑问地遵循这一规则。使其成为权力和权威的集中体系。
·
什么是IPFS?
IPFS或InterPlanetary文件系统是一种开源协议和网络,旨在创建在分布式文件系统中存储和共享超媒体的内容可寻址的对等方法。它旨在使网络更快,更安全,更开放。
IPFS如何帮助我们进行流式传输?
IPFS正在成为互联网的一个新的主要子系统。如果构建正确,它可以补充或替换HTTP。
在IPFS流媒体中,我们不需要将内容推送给每个用户。您所要做的就是将内容推送到IPFS网关。任何想要该内容的人都可以从那里拿起它。IPFS网关在本地缓存内容。所以更多的网关,更多的内容来源。
IPFS提供那些实时流媒体内容的持久存储,这样如果有人错过了实时流媒体,他们总是可以回来查找它的保存副本。网络会自动删除重复项并跟踪版本历史记录。通过我们的界面,我们还允许用户安排实时流媒体和广播的内容。用户可以记录媒体并自动化系统,以便在给定时间内将该媒体流传输指定的持续时间。
IPFS通过分发帮助解决拥堵和过度控制政府。IPFS地址不是位置,而是直接指向资源,并确保此数据来自最近的源。
这意味着,如果一个满是学生的教室会观看同一个视频,他们会从彼此而不是任何中心位置获取它。这将使4k视频流无缓冲。
·
IPFS流如何工作建筑
1.获取内容
WebRTC通过简单的应用程序编程接口为Web浏览器和移动应用程序提供实时通信。使用WebRTC,我们每隔5秒将网络摄像头内容作为WebM传输到节点服务器,使用VP9编解码器。
2.转换为HLS
一旦我们在服务器端收到内容块,使用FFMPEG我们将该块转换为HLS格式。它创建m3u8文件和ts文件。我们将这些文件添加到专门用于此会话直播的文件夹中。“
3.将文件添加到IPFS
在此专用文件夹中的每次更新时,我们都需要将该文件夹添加/重新添加到IPFS并重新发布IPNS。每次更新内容更改后,该文件夹的哈希值都会更改。但是我们不需要这个,我们需要一个静态哈希,它可以引用这个HLS文件的动态文件夹。为此,我们正在使用IPNS。IPNS中的名称是公钥的哈希值。它与包含有关其链接的哈希的信息的记录相关联,该哈希由相应的私钥签名。可以随时签署和发布新记录。
4.在客户端播放
HTTP直播(HLS)是当今用于流式传输视频的最流行的协议之一。在过去几年中,HLS已经成为网络视频的标准协议,并且有充分的理由。HLS设置非常简单,可以免费使用,并且可以在各种设备上得到支持。
网络上的任何人都可以借助IPNS哈希请求内容,并使用HLS播放器在浏览器上播放。HLS播放器获取'master.m3u8'文件并按定义的顺序播放块。
总而言之,在IPFS的帮助下,我们希望减少当前和传统流技术所使用的庞大带宽量,并提供持久的内容存储,更高质量的流媒体。
此外,避免通过互联网保留和传输如此多的内容副本,而是通过其内容开始寻址媒体。这个基于IPFS的流媒体系统还将允许我们减少不必要的内容审查,并在必要时自动化流媒体流程,以使每个人都更容易。
文章来源丨www.ipfs.cn【IPFS中国社区】