我正在使用 XAMP,每次我尝试上传字幕时,它都会给我这个错误“跨源文本轨道加载被跨源资源共享策略拒绝。” (谷歌浏览器)
我的代码看起来是正确的,但我不知道为什么会这样。
这是我的视频代码
<style type="text/css">.easyhtml5video span{display:none}
</style>
<video controls autoplay="autoplay"
poster="videoTryThis.files/html5video/IMG_0535.jpg" style="width:400px"
title="400px">
<source src="videoTryThis.files/html5video/IMG_0535.m4v" type="video/mp4">
<source src="videoTryThis.files/html5video/IMG_0535.webm" type="video/webm">
<track label="English Captions" kind="captions" src="video_cc_en.vtt"></track>
</video>
这是vtt文件
WEBVTT
Cue-1
00:00:5.000 --> 00:00:18.000
At the left we can see...
任何帮助都会很棒,谢谢你们!
最佳答案
WebVTT 文件受跨域限制,您不能在一个域中拥有您的视频文件,而在另一个域中拥有您的 vtt 文件。
要使跨域引用起作用,您需要在与 vtt 文件相同的位置添加一个文件 crossdomain.xml
你需要在你的xml中添加这个
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<allow-access-from domain="*" />
</cross-domain-policy>
这允许所有 (*) 域访问您的 vtt 文件。如果您希望来自特定域的视频访问您的文件
你可以改变这一行
<allow-access-from domain="www.example.com" />
关于webvtt - 网络 VTT 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19485765/