Firefox 36.0 / Linux不从我自己的本地服务器播放WebVTT

时间:2015-05-27 22:54:18

标签: android html5 html5-video subtitle webvtt

首先,我的firefox可以为我测试的所有在线html5视频示例播放webvtt字幕。

我有一个媒体服务器:127.0.0.1:20001,媒体路径是, http://127.0.0.1:20001/file/abc.mp4

webvtt路径是: http://127.0.0.1/20001/file/abc.vtt

我的测试html就像,

<video controls width="480" height="270" crossorigin="anonymous">
   <source src='http://127.0.0.1:20001/file/132416.mp4' />
   <track label="English" kind="subtitles" srclang="en" src='http://127.0.0.1:20001/file/132416.vtt' />
   This video format is not supported.
</video>

我的firefox确实在视频中请求了vtt文件。从控制台日志,它就像,

Request URL:    http://127.0.0.1:20001/file/132416.vtt
Request Method:     GET
Status Code:    HTTP/1.0 200 OK

Request Headers 06:41:56.000
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:36.0) Gecko/20100101 Firefox/36.0
Host:   127.0.0.1:20001
Connection: keep-alive
Cache-Control:  max-age=0
Accept-Language:    en-US,en;q=0.5
Accept-Encoding:    gzip, deflate
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

Response Headers Δ0ms
Content-Type:   text/vtt
Content-Range:  bytes 0-120/121
Content-Length: 121
Access-Control-Allow-Origin:    *

Response Body Δ0ms
WEBVTT 1 00:00:00.000 --> 00:00:00.903 abc 2 00:00:00.903 --> 00:00:05.553 def

请注意,上面的响应主体没有换行符(文件确实有,可能是firefox控制台显示忽略换行符。)

Linux中的Chrome可以成功播放视频和副标题。

firefox只播放没有字幕的视频。并且控制台没有显示任何警告或错误。

我可以知道我该怎么做才能知道为什么我的Firefox在我的情况下没有显示任何内容?检查任何调试日志等的任何提示或程序都非常有用。

感谢。

1 个答案:

答案 0 :(得分:1)

我在同一条船上。对我有用的是使用default属性并从track元素中删除尾部斜杠的组合(注意到Mozilla在他们的WebVTT博客中省略了它):

<video controls width="480" height="270" crossorigin="anonymous">        
    <source src='http://127.0.0.1:20001/file/132416.mp4' /> 
    <track label="English" kind="subtitles" srclang="en" src='http://127.0.0.1:20001/file/132416.vtt' default> 
    This video format is not supported. 
</video>