最近突然想研究一下,快播的工作原理.想自己写个使用快播地址就可以播放的软件;
我主要是要安卓手机上看到这个功能的.它是P2P的.要是直接重写只用于接收.不发送就方便了.
qvod://abcdefg|abcdefg|这样的地址如何去得到视频呢。
网上说是到服务器得到什么列表。然后去明人的机器上下载需要东东。存为流。所以可以拖动。呵呵
再讲一遍,来者有分的。是讨论也是相互学习.JAVAANDROID安卓
我主要是要安卓手机上看到这个功能的.它是P2P的.要是直接重写只用于接收.不发送就方便了.
qvod://abcdefg|abcdefg|这样的地址如何去得到视频呢。
网上说是到服务器得到什么列表。然后去明人的机器上下载需要东东。存为流。所以可以拖动。呵呵
再讲一遍,来者有分的。是讨论也是相互学习.JAVAANDROID安卓
解决方案 »
- csdn里为什么我将帖子转到别的板块后帖子在论坛里没有了?
- 面试: 手写Oracle数据库连接池
- 在java 中如何将 2007-04-25 16:55:29.0 变成 2007-04-25 16:55:29,请教大虾
- 请问各位高手,++i什么时候自增1,什么时候自增2啊?
- 请高手门指点谢谢!
- jdbc-odbc桥的使用,请高手指教 ,一定给分!!!!!!!!!!!
- 求 linux下实用的Java图形化调试器,主要作为一般的Java 程序调试
- 在一个Application中怎么样才能打开一个网页啊?请各位大虾帮忙。
- 一组数字,java分组
- 关于自定义package的问题?谢谢!
- 怎样得到值
- 发个帖问个小问题,主要是送分,来者都有的
P2P都会到服务器上得到一个peer的结点信息(如IP),然后再连接到这些结点上去下载,应该指的是这个吧。
要从服务器上得到PEER的信息.那么QVOD的服务器地址有那些呢.还是固定什么IP地址呢.这是第一步.
然后得到IP地址.和端口,怎么去下载呢.有加密吗.这是第二步.
最后存到本地流进行播放;有没有简单的实现过程.
不知道QVOD是不是也这样,当然xxxx中也可以保存的是一些token信息,不保存具体的下载地址,然后去服务器获取真实地址下载。
说到BT,只是P2P一个最成功的案例而已,所有加入P2P网络的计算机(打开thunder下载的计算机)都是一个节点,其中有Tracker服务器在其中保持信息交流,反馈其他节点信息,然后就可以与其他节点建立连接互下有无。
BT协议推荐返回好像是20,具体忘记了,迅雷会员大概是会多返回一点有效信息或者不会自己限制网速之类的。
P2P的特点就是虚拟分块。比如将1G的文件,划分为1024份,每份用SHA1编码做特征码。然后大家按这样的小块去交换,也就是互换有无。你可以先下这1G文件的最后几块,也可以从中间挑几块先下,这些由程序算法选择。这里涉及到一个种子健康度和一个优先选择的问题。http协议只能是从头开始下,不能跳跃。所以BT协议一开始下载,就会生成1G的临时文件,这1G空间先建好,然后将下载到的小块填充覆盖过去。
除了经由Tracker地址返回的节点信息,p2p网络中还可以自己发现其他节点,还有一些无需tracker的协议,像听说迅雷自己搞了一套DHT来着,还是VUZE自己搞的记不清了。
Tracker服务器除了返回节点信息,还可以进行客户端过滤,比如快车的资源不允许迅雷下什么的。一般限制采用的是USER-AGENT或者自定义的一些参数。
5点了,下班走人,说好的分啊,上面全凭记忆手打啊。
http://bbs.csdn.net/topics/390517044