2016-10-01 72 views
0

我在检查peerflix,它真的很棒,它支持在视频中查找功能。 我试图理解它是如何工作的,我认为它会在HTTP文件服务器上创建一个流管道,并在下载所需的一段文件时将视频数据写入它,并且视频播放器从管道的另一端读取数据。 我试图在java中使用Pipedinputstream和pipedoutputstream使用nanohttpd服务器执行此操作,但无法使其工作。 有什么我失踪?如何在peerflix中寻找工作?

peerflix:它是一个流式传输视频的lib,你可以观看具有seek功能的视频。您不必等待下载完成。

回答

0

Peerflix选择torrent中最大的文件,或者您可以自行选择一个文件。然后它开始从第一部分开始顺序下载文件。该文件在标准HTTP静态文件服务器上提供。
当您在视频播放器中寻找时,它会检查视频容器,以查找视频文件中与给定时间戳相对应的哪些字节。视频播放器然后发送一个HTTP范围请求,用于对应于视频时间的字节加上一些缓冲区。然后,Peerflix的HTTP服务器读取该范围请求,并检查.torrent文件以找出哪个片段对应于所请求的字节。它从请求的片段开始顺序开始下载,并在请求的字节可用时响应HTTP请求。