video.js播放mp4文件
HTML5的标签 video 支持的mp4编码为视频编码 H.264 音频AAC
参考网址
http://www.w3school.com.cn/html5/html_5_video.asp
视频格式
当前,video 元素支持三种视频格式:
| 格式 | IE | Firefox | Opera | Chrome | Safari |
|---|---|---|---|---|---|
| Ogg | No | 3.5+ | 10.5+ | 5.0+ | No |
| MPEG 4 | 9.0+ | No | No | 5.0+ | 3.0+ |
| WebM | No | 4.0+ | 10.6+ | 6.0+ | No |
Ogg = 带有 Theora 视频编码和 Vorbis 音频编码的 Ogg 文件
MPEG4 = 带有 H.264 视频编码和 AAC 音频编码的 MPEG 4 文件
WebM = 带有 VP8 视频编码和 Vorbis 音频编码的 WebM 文件
使用video.js播放mp4
不是h.264编码格式先使用格式工厂转换一下。
HTML头部引用
<link href="http://vjs.zencdn.net/5.6.0/video-js.css" rel="stylesheet">
<script src="http://vjs.zencdn.net/5.6.0/video.js"></script>
<!-- If you'd like to support IE8 -->
<script src="http://vjs.zencdn.net/ie8/1.1.2/videojs-ie8.min.js"></script>
这里是绑定a播放标签. 禁止A标签冒泡 href= 'javascript:void(0) '.
<a href="javascript:void(0)" id="play1">播放</a>
点击播放显示遮罩层 以下是遮罩层HTML代码 不要忘记引用jquery
遮罩层HTML代码
<div class="theme-popover">
<div class="theme-poptit">
<a href="javascript:;" title="关闭" class="close">×</a>
</div>
<div class="mv"> <video id="my-video" class="video-js" controls preload="auto" width="1296" height="728"
poster="video/cover.png" data-setup="{}"> <source src="video/xiangcloud3.mp4" type="video/mp4" />
<p class="vjs-no-js">
To view this video please enable JavaScript, and consider upgrading to a web browser that
supports HTML5 video
</p>
</video> </div>
</div>
<div class="theme-popover-mask"></div>
点击HTML 参考
<a href="javascript:void(0)" id="play">查看视频<i></i></a>
JS代码
<script type="text/javascript">
$(document).ready(function () {
$('#play').on("click" , function(){
$('.theme-popover-mask').show();
$('.theme-popover').show();
/*autoplay video*/
var my_video=videojs('my-video');
videojs('my-video').ready(function(){
var myvideo= this;
myvideo.play();
});
});
/*close button*/
$('.close').on("click" , function (){
$('.theme-popover-mask').fadeOut(100);
$('.theme-popover').slideUp();
$('#viedo').remove();
/*close video*/
var my_video=videojs('my-video');
videojs('my-video').ready(function(){
var myvideo= this;
/* myvideo.ended();*/
myvideo.currentTime(0);
myvideo.pause();
/* myvideo.paused();*/
});
});
})
</script>
CSS代码
<style type="text/css">
/*video*/
.theme-popover{
z-index:9999;
position:fixed;
top:0%;
left:50%;
width:1296px;
height: 728px;
margin:20px 0 0 -648px;
border:solid 2px #666;
display:none;
box-shadow: 0 0 10px #666;
}
.theme-poptit a{
position: absolute;
right: -8px;
top: -10px;
color: rgb(0, 0, 0);
font-size: 20px;
background: rgb(255, 255, 255);
border-radius: 15px;
width: 20px;
height: 20px;
text-align: center;
line-height: 20px;
text-decoration:none;
z-index: 1000;
}
.theme-popover-mask{
z-index: 9998;
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:#000;
opacity:0.4;
filter:alpha(opacity=40);
display:none;
}
</style>
以下都为零散记录
点击播放mp4 显示遮罩层
$('#play1').on("click" , function(){ $('.theme-popover-mask').show();
$('.theme-popover').show();
/*下面自动播放mp4文件*/
var my_video=videojs('my-video');
videojs('my-video').ready(function(){
var myvideo= this;
myvideo.play();
});
});
关闭遮罩层
/*close button*/
$('.close').on("click" , function (){
$('.theme-popover-mask').fadeOut(100);
$('.theme-popover').slideUp();
$('#viedo').remove();
/*这里还需要关闭video.js播放 这里只关闭了遮罩层 停止播放mp4 不刷新的情况下 从刚才播放的时间继续播放 并不是从新开始播放*/ var my_video=videojs('my-video');
videojs('my-video').ready(function(){
var myvideo= this;
myvideo.pause();
});
});
CSS代码 遮罩
<style type="text/css">
/*video*/
.theme-popover{
z-index:9999;
position:fixed;
top:0%;
left:50%;
width:1296px;
height: 728px;
margin:20px 0 0 -648px;
border:solid 2px #666;
display:none;
box-shadow: 0 0 10px #666;
}
.theme-poptit a{
position: absolute;
right: -8px;
top: -10px;
color: rgb(0, 0, 0);
font-size: 20px;
background: rgb(255, 255, 255);
border-radius: 15px;
width: 20px;
height: 20px;
text-align: center;
line-height: 20px;
text-decoration:none;
z-index: 1000;
}
.theme-popover-mask{
z-index: 9998;
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:#000;
opacity:0.4;
filter:alpha(opacity=40);
display:none;
}
添加代码
poster为封面图片代码
source为多个链接地址 并且默认开始使用第一个可以用的
<video id="my-video" class="video-js" controls preload="auto" width="1296" height="728"
poster="video/cover.png" data-setup="{}"> <source src="video/xiangcloud3.mp4" type="video/mp4" />
<p class="vjs-no-js">
To view this video please enable JavaScript, and consider upgrading to a web browser that
supports HTML5 video
</p>
</video>
自动播放视频 JS代码 videojs里的使用的是标签video的ID值,
var my_video=videojs('my-video');
videojs('my-video').ready(function(){
var myvideo= this;
myvideo.play();
});
video.js播放mp4文件的更多相关文章
- 视频播放效果--video.js播放mp4文件
HTML5的标签 video 支持的mp4编码为视频编码 H.264 音频AAC 参考网址 http://www.w3school.com.cn/html5/html_5_video.asp 视频格式 ...
- 使用opencv在Qt控件上播放mp4文件
文章目录 简介 核心代码 运行结果 简介 opencv是一个开源计算机视觉库,功能非常多,这里简单介绍一下OpenCV解码播放Mp4文件,并将图像显示到Qt的QLabel上面. 核心代码 头文件 #i ...
- 流媒体测试笔记记录之————解决问题video.js 播放m3u8格式的文件,根据官方的文档添加videojs-contrib-hls也不行的原因解决了
详细代码Github:https://github.com/Tinywan/PHPSharedLibrary/tree/master/Tpl/Html5/VideoJS 想播放hls协议的就是m3u8 ...
- 流媒体技术学习笔记之(四)解决问题video.js 播放m3u8格式的文件,根据官方的文档添加videojs-contrib-hls也不行的原因解决了
源码地址:https://github.com/Tinywan/PHP_Experience 总结: 说明: 测试环境:本测试全部来自阿里云直播和OSS存储点播以及本地服务器直播和点播 播放器:Vid ...
- ios video标签部分mp4文件无法播放的问题
问题描述: 部分MP4文件在ios的微信浏览器中无法播放,点击播放后缓冲一下之后显示叉,而另外一些mp4文件正常,同时在安卓全部下正常. 分析: h264编码的压缩级别问题导致. 苹果官方文档中对 i ...
- HTML5 Video/Audio播放本地文件
这段时间经常看到开发者在反复询问同一个问题,为什么通过设置src属性,不能播放本地的媒体文件?例如video.src=”D:\test.mp4”. 这是因为浏览器中的JavaScript不能直接直接访 ...
- 微信 vue中使用video.js播放m3u8视频,解决安卓自动全屏的问题。
最近一个项目中需要在微信中播放m3u8格式的视频,刚开始用了 vue-video-player 这个插件,在IOS手机体验良好,本以为完事了, 结果安卓手机一点播放就自动全屏,心态略崩.查了资料说是安 ...
- video.js播放rtmp
项目中要用到rtmp直播和点播.要求:点播能够调整播放进度 开始用腾讯提供的播放器,老卡,画质差,很多时候播不出来,rtmp点播还不能快进. 后来用Wowza自带的flash rtmp播放器,有源码 ...
- 【vue】使用 Video.js 播放视频
目录 安装 引入 使用 参考文档 环境: vue 2.0+ element ui (这里的代码用了elmentui的按钮样式,可以不用elment ui的样式) 安装 在项目中安装 video.js. ...
随机推荐
- JuCheap V2.0响应式后台管理系统模板正式发布beta版本
JuCheap V1.* 查看地址: http://blog.csdn.net/allenwdj/article/details/49155339 经过半年的努力,JuCheap后台通用响应式管理后台 ...
- DBCC CHECKDB 遭遇Operating system error 112(failed to retrieve text for this error. Reason: 15105) encountered
我们一个SQL Server服务器在执行YourSQLDBa的作业YourSQLDba_FullBackups_And_Maintenance时遇到了错误: Exec YourSQLDba.Maint ...
- webform(八)——LinQ简单增、删、改、查
一.简单介绍 1.LinQ to Sql类(NET Language Integrated Query (LINQ) ) LINQ定义了大约40个查询操作符,如select.from.in.where ...
- Yii2 脚本手动执行可以,计划任务执行不成功
用Yii2的console写了个脚本,在命令行执行都OK. 放到cron里面也按时去执行了,但就是执行的效果不对,console脚本执行结果不对. 查看之后的是由于yii脚本的php路径问题(跟目录下 ...
- k近邻算法(knn)的c语言实现
最近在看knn算法,顺便敲敲代码. knn属于数据挖掘的分类算法.基本思想是在距离空间里,如果一个样本的最接近的k个邻居里,绝大多数属于某个类别,则该样本也属于这个类别.俗话叫,"随大流&q ...
- Server Tomcat v7.0 Server at localhost was unable to start within 45 seconds
错误:Server Tomcat v7.0 Server at localhost was unable to start within 45 seconds 错误提示就是我们限定了部署的时间导致的错 ...
- eclipse 启动到loading workbench... 自动关闭
是由于项目没有正常关闭运行而导致"workbench.xmi"中的"persistedState"标签还保持在运行时的配置造成的. 解决方法: 找到<wo ...
- [LeetCode] Reverse Bits 翻转位
Reverse bits of a given 32 bits unsigned integer. For example, given input 43261596 (represented in ...
- 2-SAT
n个布尔变量,满足m个如 A为x或B为y的限制 建一个点拆成两个,分别表示选TRUE或FALSE 建立A的!x B的y 的连边 与 A的x B的!y 的连边 每次dfs. 若一个点在之前条件下无论 ...
- HTTPf服务器(3)
功能完整的HTTP服务器 导语 这个一个功能完备的HTTP服务器.它可以提供一个完整的文档输,包括图像,applet,HTML文件,文本文件.它与SingleFileHttpServer非常相似,只不 ...