如何使用在线链接在视频播放器中添加字幕
How to add subtitle in video player using online link?
如何使用在线链接在视频播放器中添加字幕?即使我们使用本地字幕文件(。VTT文件)字幕正在工作,但当我们将字幕源从本地文件更改为在线链接时,则没有显示字幕,我们使用html5和javascript添加字幕。
player.html
<video id="vid1" height="720" width="1280">
<track id="text1" label="English" kind="subtitles" src="" srclang="en">
</video>
player.js
var text = document.getElementById("text1");
var video = document.getElementById("vid1");
video.setAttribute("src","online video URL link here...");// video is playing fine.
video.play();
text.setAttribute("src", "../../assets/static/creed.vtt"); // this is a local file and this one is working fine.
text.setAttribute("src", "http://54.247.191.224:8080/virgin-static/creed.vtt"); // This file is stored in server, and we are using link to fetch the file but it is not working.
// one more online link is not working
text.setAttribute("src", " http://devcache.ff.msf.ioko.com/Test/Movies/2016/6/28/SDFEATUREMOVIE/Creed%20ENG.VTT"); // This file is also not working
video.textTracks[0].mode = 'showing'; // only local stored file is working others are not working.
这是因为CORS的限制。主要浏览器会阻止来自其他域的请求,以防止攻击。除非请求的服务器允许跨域共享。
所以首先尝试将crossorigin="anonymous"
添加到视频标签
<video id="vid1" height="720" width="1280" crossorigin="anonymous">
<track id="text1" label="English" kind="subtitles" src="" srclang="en">
</video>
如果上面的代码不起作用,没有办法从服务器加载字幕,除非你是所有者,在这种情况下,你需要通过发送Access-Control-Allow-Origin
头来允许其他人访问。
如果不可能,你必须将字幕本地上传到你的服务器。
相关文章:
- 如何将我的附加按钮添加到这个jQuery mp3播放器中
- 如何添加额外的后退30秒按钮到这个jQuery mp3播放器
- 如何在使用flash音乐播放器的母版页中自动播放音乐之前添加延迟
- 如何使用mediaelement,js脚本在html播放器中添加自定义按钮
- 如何添加id和额外的参数到一个放大弹出iframe与youtube视频,所以我可以控制与API youtube播放器
- 如何使用javascript动态添加videojs播放器
- 如何使用BEML或JS在全屏Brightcove智能播放器中添加图像叠加
- 多个 YouTube 播放器,位于选项卡式角度 UI 控件中.想要添加折叠
- 使用javascript和jquery将“下一个”和“上一个”按钮添加到来自JSON的HTML5音频播放器
- 如果添加了播放列表,JWPLAYER 播放器不起作用
- 如何在 JW 播放器中添加自定义提示点
- 如何在嵌入式SoundCloud播放器上添加搜索
- 如何将侦听器添加到视频播放中
- 为什么视频js endcard插件会在播放器中添加本机控件
- 如何在页面加载后将文件添加到yahooweb播放器
- 如何将函数添加到带有参数的Vimeo播放器的api_addEventListener
- 使用Youtube播放器IFrame API添加视频到播放列表
- 我可以在单个播放器中添加多个VAST标签吗?这意味着,如果一个巨大的广告无法加载,那么就采用另一个
- 为同一页面上的多个video.js播放器添加事件监听器
- 为SWF播放器添加播放/暂停