如果是视频文件,比如Mp4,avi,rmvb等可根据下面的这边文章推荐的Demo(http://code4app.com/ios/5292c381cb7e8445678b5ac2),经过测试可以进行同步缓存播放.

iOS开发笔记,简单实现视频音频的边下边播

如果是视频流MU38上面Demo,行不通.(视频流是多文件,下载单个肯定不行)

视频流缓存播放实现步骤.

以优酷为例(经测试爱奇艺,搜狐,新浪都可以)

1.解析M3U8  直接通过M3U8Kit 解析

或js解析

- (void)webViewDidFinishLoad:(UIWebView *)webView
{
NSString *lJs = @"document.documentElement.innerHTML";
NSString *lHtml = [webView stringByEvaluatingJavaScriptFromString:lJs];
// NSString *lJs2 = @"(document.getElementsByTagName(\"video\")[0]).getElementsByTagName(\"source\")[0].src"; //qiyi
NSString *lJs2 = @"(document.getElementsByTagName(\"video\")[0]).src"; // youku,tudou,ku6 ,souhu
NSString *lm3u8 = [webView stringByEvaluatingJavaScriptFromString:lJs2];
NSLog(@"video source:%@",lm3u8);
}

2.下载(待解决)

3.播放

相关资料

MPMoviePlayerController 获取视频缓冲大小

关于流媒体(m3u8)的播放与下载

在查找资料时看到

polyv-ios-client-demo 保利威视(POLYV)视频直播云服务 (收费的)

MPMoviePlayerController 只支持能在iPhone或者iPod上直接播放(不借助其他播放器)的格式

.mov, .mp4,.mpv, and .3gp

反过来就是说, rmvb  mkv 等一些比较常用的是不支持的,只能靠别的(如ffmpeg等)

为什么奇艺要把 iPad 客户端上的 MP4 流改为 TS 流呢?TS 相对于 MP4 有什么优势呢? (来自知乎)

[AS3]HLS分片和m3u8

HTTP Live Streaming直播(iOS直播)技术分析与实现

Demo:关于m3u8的解析、下载、拼接和本地播放,好像可以,不知性能如何

https://github.com/luoxubin/XB2

iOS-视屏播放AVPlayer&MPMoviePlayerController AVPlayer自带缓存

资源:

http://pl.youku.com/playlist/m3u8?vid=XMTI4NzQyMDM0MA==&type=flv&ts=1441699625&keyframe=0&ep=eyaQG0%2BEX8gC4CbYiD8bM3mzdH9dXJZ3kmaB%2F5gDScZQNejC6DPcqJuxSf8%3D&sid=944169962557012dea08b&token=6170&ctype=12&ev=1&oip=992603906

http://static.tripbe.com/videofiles/20121214/9533522808.f4v.mp4

http://v.chuanke.com/vedio/1/08/65/10865711ff6997a671e6622352385208.mp4

关于MPMoviePlayerController 缓存播放的一些技术准备的更多相关文章

  1. iOS视频边下边播--缓存播放数据流

    实现视频边下边播,这里的边下边播不是单独开一个子线程去下载,而是把视频播放的数据给保存到本地.简而言之,就是使用一遍的流量,既播放了视频,也保存了视频. 用到的框架:<AVFoundation/ ...

  2. 视频边下边播--缓存播放数据流-b

    google搜索“iOS视频变下边播”,有好几篇博客写到了实现方法,其实只有一篇,其他都是copy的,不过他们都是使用的本地代理服务器的方式. 原理很简单,但是缺点也很明显,需要自己写一个本地代理服务 ...

  3. MPMoviePlayerController 电影播放器—备用

    MPMoviePlayerController 与AVAudioPlayer有点类似,前者播放视频,后者播放音频,不过也有很大不同,MPMoviePlayerController 可以直接通过远程UR ...

  4. 关于MPMoviePlayerController类播放视频时,外放没有声音的问题(ios)

    一.导入音频资源类 #import "AVFoundation/AVAudioSession.h" 二.在播放视频的方法中加一句支持外放的代码 [[AVAudioSession s ...

  5. (ios)MPMoviePlayerController首次播放视频的时候,没有控制条

    问题: 在视频播放时,现在控制条采用磨砂的效果,会遮罩部分视频 解决思路 1 播放器直接设置不带控制条,在app在 Foreground状态,默认播放器暂停,这样需要在获得Foreground事件,进 ...

  6. docker+fastdfs+nginx 实现分布式大文件存储系统以及视频缓存播放

    废话不多说,直接开撸 首先是一些准备工作: 1.关闭防火墙 service iptables stop --- fastdfs虽然在docker部署,但是使用的是主机网络,所以关闭防火墙. 2  下载 ...

  7. HTML5视频播放练习:鼠标经过视频播放,鼠标移除停止播放,再次经过继续播放。

    随着HTML5的广泛应用,在一些网站中,经常看到有些预览的短视频预览,鼠标经过就会播放,移除就会停止播放,再次移进去就会继续播放. 自己也研究着做一个比较简单的类似的练习. 视频可以自己到包图网下载, ...

  8. 在iOS开发中如何播放视频

     技术博客http://www.cnblogs.com/ChenYilong/  新浪微博http://weibo.com/luohanchenyilong  如何播放视频 •iOS提供了叫做MPMo ...

  9. C++ 播放音频流(PCM裸流)--改善

    直接上代码,如果有需要可以直接建一个win32控制台程序然后将代码拷过去改个文件名就可以用了(注意将声道和频率与你自己的文件对应).当然我自己也用VS2008写了个例子上传了,如果有需要下载地址如下: ...

随机推荐

  1. LDAP客户端安装

    安装环境: 10.43.159.7 客户端 使用ldap客户端验证登陆: 用户为10.43.159.9服务端上面创建的ldap:zdh1234 1.安装LDAP client认证需要的pam包 yum ...

  2. netty系列之:netty对SOCKS协议的支持

    目录 简介 SocksMessage Socks4Message Socks5Message 总结 简介 SOCKS是一个优秀的网络协议,主要被用来做代理,它的两个主要版本是SOCKS4和SOCKS5 ...

  3. CSS基础-3 文字知识

    文字知识 一.浏览器文字默认大小为16px; 行高默认大小为18px; 行高 = 文字大小 + 文字上边距 + 文字下边距 或者是 行高 = 两条基线之间的距离                    ...

  4. Layui table 学习笔记

    templet:'<div>{{createrFormat(d.accounts.name)}}</div>' function createrFormat(o){ retur ...

  5. mongodb基础整理篇————常规操作[二]

    前言 简单整理一下常规操作. 正文 虽然一般说写代码看的是思想,但是呢,如果不知道mongodb 有哪些常用的操作,那么你怎么能知道mongodb是否符合你的需求,比如说如果聚合功能都没有,你得自己写 ...

  6. CVE-2020-0786(永恒之黑) GetShell

    描述 Microsoft服务器消息块3.1.1(SMBv3)协议处理某些请求的方式中存在一个远程执行代码漏洞,也称为" Windows SMBv3客户端/服务器远程执行代码漏洞". ...

  7. Python实训day07pm【Selenium操作网页、爬取数据-下载歌曲】

    练习1-爬取歌曲列表 任务:通过两个案例,练习使用Selenium操作网页.爬取数据.使用无头模式,爬取网易云的内容. ''' 任务:通过两个案例,练习使用Selenium操作网页.爬取数据. 使用无 ...

  8. C# TCP传输文件示例代码

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  9. 一些Markdown扩展语法

    相信很多人跟我一样,对Markdown是"一知半解",会打一点,知道一点,但是其实从没花哪怕一分钟了解过.其实除了标题粗体插入代码,Markdown还有很多有趣的基础语法和扩展语法 ...

  10. Java Selenide 介绍&使用

    目录 Selenide 介绍 官方快速入门 元素定位 元素操作 浏览器操作 断言 常用配置 Selenide 和 Webdriver 对比 Selenide 介绍 Selenide github Se ...