关于云平台中OFFICE预览与视频预览的解决办法
最近,随着firefox x64的升级,出现flash插件完全被禁止的现象,html5替换是大势所趋,原来我们在云平台中有多处使用flash的地方,比如OFFICE预览,视频播放,游戏等,现对于OFFICE预览和视频预览做出如下技术方案,供大家探讨:
1、对于office,我的意见是使用pdf,即office通过c#+office api转成pdf,然后在前端使用pdf.js进行预览,此处比较清晰,请前端组自行研究解决办法,并在项目中应用。使用后swf方式将废弃。
2、HTML5
里的视频video标签
如果要覆盖主流的浏览器的话,至少要包含webm
、ogg
和mp4
三种视频格式,这是最终的调研结果,放弃原来的m3u8解决方案,在PC上播放时采用如下代码:
<head> <title>Video.js | HTML5 Video Player</title>
<link href="./js/video-js.css" rel="stylesheet">
<script src="./js/videojs-ie8.min.js"></script>
<script src="./js/video.js"></script>
</head> <body>
<video id="example_video_1" class="video-js vjs-default-skin" controls preload="none" width="" height="" poster="./js/oceans.png" data-setup="{}">
<source src="http://dsideal-yy.oss-cn-qingdao.aliyuncs.com/down/Material/5B/5B1AB0CC-8388-4D09-BC5F-EF4FF3FBDCCF.mp4" type="video/mp4">
<source src="http://dsideal-yy.oss-cn-qingdao.aliyuncs.com/down/Material/5B/5B1AB0CC-8388-4D09-BC5F-EF4FF3FBDCCF.webm" type="video/webm">
<source src="http://dsideal-yy.oss-cn-qingdao.aliyuncs.com/down/Material/5B/5B1AB0CC-8388-4D09-BC5F-EF4FF3FBDCCF.ogg" type="video/ogg">
<track kind="captions" src="../shared/example-captions.vtt" srclang="en" label="English"></track>
<!-- Tracks need an ending tag thanks to IE9 -->
<track kind="subtitles" src="../shared/example-captions.vtt" srclang="en" label="English"></track>
<!-- Tracks need an ending tag thanks to IE9 -->
<p class="vjs-no-js">To view this video please enable JavaScript, and consider upgrading to a web browser that <a href="http://videojs.com/html5-video-support/" target="_blank">supports HTML5 video</a></p>
</video>
</body>
完整源码见附件。 链接:http://pan.baidu.com/s/1jI7WIe6 密码:vi2u
代价:原来一个18,830KB的MP4文件,需要转换成 34,347KB的ogg文件和一个47,837KB的webm文件,体积增加了三倍!!意味着时间更长,磁盘占用更多。
请手机组和前端组分别测试三面的三种格式,是不是能满足手机和PC上不同浏览器的播放,重点要看视频的分辨率和是不是有声音等细节。
关于云平台中OFFICE预览与视频预览的解决办法的更多相关文章
- EasyDarwin开源流媒体云平台中boost Base64编解码后与源长度不匹配的bug
本文转自EasyDarwin团队Alex的博客:http://blog.csdn.net/cai6811376 EasyDarwin云平台中部分协议使用了Base64编码昨晚报文通信的载体.比如在对摄 ...
- 使用Microsoft Azure云平台中的Service Bus 中继 Intanet环境下的WCF服务。
之前写的一篇文章:) 看起来好亲切. http://www.cnblogs.com/developersupport/archive/2013/05/23/WCF-ON-IIS-Azure-Servi ...
- window2008 64位系统无法调用Microsoft.Office.Interop组件进行文件另存的解决办法
生成execl时遇到的问题: 检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005 ...
- 阿里云提示WordPress“/wp-includes/http.php输入IP验证不当”的解决办法
本文转自:https://www.liuzhishi.com/2931.html 标题: wordpress IP验证不当漏洞 简介: wordpress /wp-includes/http.php文 ...
- 使用sourceTree向码云提交代码时 push 错误 (或认证失败)解决办法
如果出现push不进去或者使用命令push认证失败时,很可能是你密码有误或者用户冲突,解决办法如下: 1.进入目录,找到文件后先备份一下 注意:appData可能隐藏了,若是隐藏,先让其显示 2. ...
- Discuz! X3.1云平台QQ互联的Unknown column 'conuintoken' in 'field list' 解决办法
http://www.discuz.net/thread-3482497-1-1.html 由于程序安装默认数据表的结构和QQ互联数据表结构不同,安装Discuz! X3.1和升级Discuz! X3 ...
- TP5验证码上传阿里云万网虚拟主机后,验证码不显示的解决办法
TP5不显示验证码 清除缓冲区就应该可以了,今天我刚好也遇到了,解决的办法是在vendor/topthink/think-captcha/CaptchaController.php中加上这个ob_cl ...
- 在飞儿云主机里使用酷Q时遇到相关问题的解决办法
情况1:酷Q Air版本可以使用,而Pro版本无法运行 解决方法如下: p.p1 { margin: 0; font: 13px "Helvetica Neue"; color: ...
- Windows 10 技术预览版9926 “未知源”引起系统休眠后自启的解决办法
问题的由来: 自从安装上了最新发布的Windows 10 ,使用起来有诸多的改进:无论是重绘的图标还是通知消息中心的整合还是更智能的OneDrive客户端都使得工作起来非常愉悦. 不过笔者这两天频繁遇 ...
随机推荐
- MyEclipse安装FreeMarker插件
MyEclipce8.6中安装FreeMarker插件,这绝对是最简单的方法. 步骤如下: (一)打开http://sourceforge.net/projects/freemarker- ...
- Uva-oj Palindromes 暴力
Palindromes Time Limit:3000MS Memory Limit:0KB 64bit IO Format:%lld & %llu Submit Statu ...
- noip模拟赛 helloworld
分析:对于第一个点,答案为26^n - 25^n,这个很好想.另外30%的点因为n <= 5,所以可以直接暴力搜索. 数学方法不是很好处理,考虑dp,设f[i][j]为前i位匹配到危险串第j位的 ...
- 阐述ArrayList、Vector、LinkedList的存储性能和特性?
ArrayList 和Vector他们底层的实现都是一样的,都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内 ...
- php中相关函数
1.php标准风格 <?php //这是标准风格 echo '推荐标准风格'; ?> 2.php中文乱码 .html:<meta http-equiv="Content-T ...
- Spring filter和拦截器(Interceptor)的区别和执行顺序
转载自:http://listenup.iteye.com/blog/1559553 1.Filter过滤器只过滤jsp文件不过滤action请求解决方案 解决办法:在web.xml中将filter的 ...
- Windows、Linux及Mac查看端口和杀死进程
本文介绍如何在Windows.Linux及Mac下查看端口和杀死进程. Windows下查看端口和杀死进程 查看占用端口号的进程号:netstat –ano | findstr "指定端口号 ...
- Java 必看的 Spring 知识汇总
Spring框架是由于软件开发的复杂性而创建的.Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情.然而,Spring的用途不仅仅限于服务器端的开发.从简单性.可测试性和松耦 ...
- [uva11991]map和vector的入门
给你一个长度为n的数组,进行m次询问,每次询问输入k和v,输出第k次出现v时的下标是多少. n<=1e6 用vector动态开空间,map使数值结合.map每次查找效率大约为logn. map的 ...
- 基本控件文档-UISlider属性---iOS-Apple苹果官方文档翻译
本系列所有开发文档翻译链接地址:iOS7开发-Apple苹果iPhone开发Xcode官方文档翻译PDF下载地址 //转载请注明出处--本文永久链接:http://www.cnblogs.com/C ...