问题描述
- ios 视频边下载边播放
-
现有的思路是这样的:
1. 在本地搭建一个http服务器
2. 开始下载.mp4文件,然后把文件存放在http服务器中
3. 将video播放地址指向本地服务器,开始播放这样可以实现渐进式下载,但存在一个问题:
1. 假设文件下载进度是 10%,我把进度条拖动到 50% 的位置,它就不能播放了目前有一个解决方案:
1. 监听本地服务器的http请求,如果发现请求的数据未下载完成,就另外开启一个http请求去下载对应 range 的数据,然后再通过本地服务器返回但这个方案还有一些问题:
1. 临时请求的数据无法直接合并到正在下载的 .mp4 文件中
2. 对于这些临时请求的数据,需要另外存储,并在下载完成后合并成一个完整的 mp4 文件
3. 如果用户不断地来回拖动,会产生很多临时数据,这时候的数据管理会更麻烦可能我的想法比较片面,但找了很ios多资料都没到找更好的思路。
如果有前辈对这方面比较了解,或者有参考资料的,又或者知道去哪里找资料的,麻烦提供以下,十分感谢
解决方案
http://blog.csdn.net/mad2man/article/details/12553873
解决方案二:
http://download.csdn.net/detail/yinhanmsn/5339443
解决方案三:
看看 rtsp 实时传输协议
解决方案四:
参见网上示例大概清楚了在线缓存播放原理
1,本地实现httpserver,MPMoviePlayerController通过访问本地资源来实现视频播放如(http://127.0.0.1/test.mp4)
2,自己实现下目标视频下载,并在返回文件头时,将content-length字段取出,并存入沙盒
2,文件下载中不断写入已下载资源
原来MPMoviePlayerControlle......
答案就在这里:ios下视频边下载连播放实现
时间: 2025-01-21 19:49:59