在浏览器中自动添加WebVTT字幕

时间:2017-08-17 10:20:18

标签: php html html5 nginx mp4

情况如下:

我的服务器上有一个.mp4文件。 当我向它发出请求时(https://domain.name/file.mp4),我的浏览器会自动播放它。我在同一个文件夹中有一个file.vtt字幕,可在https://domain.name/file.vtt访问。)

这是我在请求file.mp4时获得的html代码:

<html>
    <head>
        <meta name="viewport" content="width=device-width">
    </head>
    <body style="margin: 0px;"><video controls="" autoplay="" name="media">
        <video controls="" autoplay="" name="media">
            <source src="https://domain.name/file.mp4" type="video/mp4">
        </video>
    </body>
</html>

当我在检查页面时在浏览器中添加此内容时:

<track label="English" kind="subtitles" srclang="en" src="https://domain.name/file.vtt" default>

字幕按意图工作。

是否可以自动执行此操作?如果我请求file.mp4,浏览器会查找具有相同名称的vtt文件并自动将其添加到播放器中?

我应该写一些php,它会在每个.mp4文件请求中找到那些字幕吗?还有其他办法吗?

我没有在服务器端创建任何HTML代码,nginx在请求时提供.mp4文件,我认为浏览器自己渲染播放器,我错了吗?是否可以仅使用Nginx进行此操作?

1 个答案:

答案 0 :(得分:0)

  

“是否可以自动执行?如果我请求file.mp4,浏览器会查找具有相同名称的vtt文件并自动将其添加到播放器?”

浏览器不会搜索任何未指定的文件。您必须在html代码的video标记中添加字幕文件名。

尝试:

<html>
    <head>
        <meta name="viewport" content="width=device-width">
    </head>
    <body style="margin: 0px;"><video controls="" autoplay="" name="media">
        <video controls="" autoplay="" name="media">
            <source src="https://domain.name/file.mp4" type="video/mp4">
            <track label="English" kind="subtitles" srclang="en" src="https://domain.name/file.vtt" default>
        </video>
    </body>
</html>