Flowplayer-Subtitle
SOURCE URL: https://flowplayer.org/docs/subtitles.html
Setting up
Subtitles are loaded with a <track> element as follows
<div class="flowplayer">
<video>
<source type="video/webm" src="http://mydomain.com/my-video.webm">
<source type="video/mp4" src="http://mydomain.com/my-video.mp4">
<source type="video/ogg" src="http://mydomain.com/my-video.ogv">
<!-- the track element -->
<track src="/path/to/my-subtitles-en.vtt">
</video>
</div>
The WEBVTT file of the track element has the following structure:
WEBVTT FILE
1
00:00:01.000 --> 00:00:04.000
The first subtitle from 1 seconds to 4 seconds
This is a second line
And a third one
2
00:00:05.000 --> 00:00:06.000
<b>Bold</b>, <i>italic</i> and <u>underlines</u> are supported
...
A sample file. Understanding the VTT file format.
Note: Subtitles must be loaded from a local path - unless they are served with a loose cross-origin policy with an appropriate Access-Control-Allow-Origin header. For instance, in an Apache configuration:
Header set Access-Control-Allow-Origin "*"
For more details look up cross-orgin resource sharing.
Custom looks
The first subtitle above would be rendered on the player as follows
<div class='fp-subtitle'>
<p>The first subtitle from 1 seconds to 4 seconds</p><br>
<p>This is a second line</p><br>
<p>And a third one</p><br>
</div>
Flowplayer comes with a default look for the subtitles but here is how you can alter the looks with CSS
/ override default looks /
.flowplayer .fp-subtitle {
font-size: 18px;
}
/ visible subtitle looks (.fp-active class) /
.flowplayer .fp-subtitle.fp-active {
opacity: 0.8;
}
/ custom looks for 7:th subtitle /
.flowplayer.cue6 .fp-subtitle p {
font-size: 40px;
}
Native subtitles
Currently the <track> element is supported natively in following browsers
- IE 10 (since November 2011)
- Google Chrome 18 (since November 2011)
- Safari 6 (July 2012)
- Opera 12.5 (August 2012)
You can enable native support with nativesubtitles configuration variable and by adding default attribute to your track element. For example
<div class="flowplayer" data-nativesubtitles="true">
<video>
<source type="video/webm" src="http://mydomain.com/my-video.webm">
<source type="video/mp4" src="http://mydomain.com/my-video.mp4">
<track src="/path/to/my-subtitles-en.vtt" default>
</video>
</div>
After this subtitle looks are browser dependent and you lose the CSS customization possibilities. Native support is present when flowplayer.support.subtitles is true. For example
if (flowplayer.support.subtitles) {
// do your thing
}
JavaScript API
Internally flowplayer uses cuepoints to notify when subtitle starts and ends. Here is an example of how to capture subtitle events
player.bind("cuepoint", function(e, api, cuepoint) {
var subtitle = cue.subtitle;
// start a subtitle
if (subtitle) {
}
// end the subtitle
if (cuepoint.subtitleEnd) {
}
});
The subtitle object has following properties title, startTime, endTime and text. An API property subtitles is an array of all subtitles. For example
console.info(flowplayer().subtitles);
Known issues and limitations
Flowplayer does not add any UI element for controlling subtitles. If the <track> element is provided subtitles are enabled and cannot be removed by the user. You also need to control the language of the subtitles on your web application. User cannot switch the language from the player.
Flowplayer does not support VTT extra definitions such as text alignment and line position. Style is completely controlled with CSS for full cross browser support.
When using the default attribute on the track element some browsers may show their native controlbar for a short glimpse of time.
Currently subtitles are not supported in playlists and are omitted when the player is embedded.
Flowplayer-Subtitle的更多相关文章
- HTML5播放器FlowPlayer的极简风格效果
在线演示 本地下载 使用Flowplayer生成的极简风格的播放器效果.
- [开发笔记]-flowplayer视频播放插件
最近项目中需要添加播放视频的功能,视频文件是flv格式的.在网上找了一些jQuery视频播放插件,还是觉得“flowplayer”要好一些.特将使用方法记录一下. flowplayer也有html5版 ...
- 根据body的内容 查找h2标签的@class="subtitle"的值
<pre name="code" class="html"><body class="api jquery listing" ...
- flowplayer+flashhls使用过程中发现的一些小问题
flashls里边有好几套代码,主要看生成路径,其中flowplayer用了flashls.swc,flashls.swc使用的代码在这里:/src/org/mangui/hls,所以要注意,当搜索代 ...
- FlowPlayer 参数说明
<html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> & ...
- 兼容各个浏览器的H.264播放: H.264+HTML5+FLOWPLAYER+WOWZA+RMTP
一.方案确定 计划做视频播放,要求可以播放H264编码的mp4文件,各个浏览器,各种终端都能播放. 首先查找可行性方案, http://www.cnblogs.com/sink_cup/archive ...
- flowplayer视频播放插件
flowplayer视频播放插件 最近项目中需要添加播放视频的功能,视频文件是flv格式的.在网上找了一些jQuery视频播放插件,还是觉得“flowplayer”要好一些.特将使用方法记录一下. f ...
- E/MediaPlayer: Should have subtitle controller already set
原文链接:http://stackoverflow.com/questions/20087804/should-have-subtitle-controller-already-set-mediapl ...
- FFmpeg中subtitle demuxer实现
[时间:2019-01] [状态:Open] [关键词:字幕,ffmpeg,subtitle,demuxer,源码] 0 引言 本文重心在于FFmpeg中subtitle demuxer的实现逻辑. ...
- 谷歌机翻英文字幕输出(Subtitle Edit)
Subtitle Edit 下载地址(https://github.com/SubtitleEdit/subtitleedit/releases/tag/3.5.0) 添加字幕文件后,点下图的Auto ...
随机推荐
- rman恢复误删除的一张表(不完全恢复)
恢复误删除的一张表可以使用很多方法,如日志挖掘.闪回等,rman恢复(不完全恢复)肯定不是最好的,也不建议用, 现在我们只是演示一下这种恢复. 1 RMAN备份数据库 2创建测试表 3查看此时的SCN ...
- jquery_选择器
jquery选择器:对javascript的操作进行封装. jquery选择器的优点 1,简洁的写法 2,支持css1到css3选择器(拥有跨浏览器的兼容性) ...
- Devexpress TreeList控件绑定显示父子节点对像
今天一位同事咨询Devexpress TreeList控件绑定自动显示父子节点对像,但结果是不会显示带父子节点关系,而是将所有的节点作为父节点显示出来了,对像类的代码如下 public class I ...
- AppStore审核
应用被拒分为两种:Binary Rejected 和 Metadata Rejected.前者需要重新上传应用并且重新排队,后者只需要修改信息,不需要重新上传应用. 1.应用内包含检查更新功能 iOS ...
- DOM模型有三种
<!-- DOM模型有三种: DOM level 1:将HTML文档封装成对象. DOM level 2:在level 1基础加入新功能,比如解析名称空间. //<html xmlns=& ...
- Empire C:Basic 3
首先我们定义一个表示年龄的指针: int* page: 这就是定义了一个指针,和定义普通变量就多了一个*符号而已. 为什么变量名用了p开头,这里引用了英文pointer(指向),表示它是一个指针,而非 ...
- 【iCore3 双核心板】例程十六:USB_HID实验——双向数据传输
实验指导书及代码包下载: http://pan.baidu.com/s/1bojcVoV iCore3 购买链接: https://item.taobao.com/item.htm?id=524229 ...
- C++和C代码互相调用是不可避免的
C++ 编译器能够兼容C语言发编译方式 C++编译器会优先使用C++ 编译的方式 extern 关键字能强制让C++编译器进行C方式的编译 external “C” { //do C-style co ...
- javaWeb中servlet开发(5)——WEB开发模式:Mode I与Mode II
1.servlet开发 2.model I模式 客户端通过访问JSP,调用里面的javabean,而通过javabean调用处理数据库的操作,javabean中有专门处理数据库的操作,数据库主要以DA ...
- 【转】Unity中添加组件的几种方法
http://blog.csdn.net/monzart7an/article/details/23199647 一.在编辑器上面添加一个组件.这个不用多说. 二.在脚本中利用AddComponent ...