【发布时间】:2014-06-21 22:10:16
【问题描述】:
我正在尝试使用轨道标签添加语音音频文件的文本转录。 video 标签的默认行为是显示它们(作品)。默认情况下,音频标签似乎缺少某种“画布”(即使没有视频,视频标签也会显示黑色区域)来自动显示字幕。我可以使用视频标签,但它会感觉像一个丑陋的解决方法。不过,我不想破坏代码的语义。
是否有某种 CSS 来强制显示子图块的显示区域?
<audio controls>
<source src="test.ogg" type="audio/ogg">
<source src="test.mp3" type="audio/mpeg">
<track kind="subtitles" label="English subtitles" src="/test.vtt" srclang="en" default></track>
Your browser does not support the audio tag.
</audio>
感谢您的阅读。
【问题讨论】:
-
尝试将
kind属性更改为"captions"。 AFAIK"subtitles"仅适用于<video>元素。 See here。此外,.vtt 文件是“视频文本轨道”,因此仅适用于<video>。 -
根据the spec for WebVTT。只有
<video>元素支持它。尝试使用 WebVTTsrc渲染<track>时,浏览器的第一条规则如下:“如果媒体元素是音频元素,或者是另一个没有渲染区域的播放机制,则中止这些步骤。” -
根据the HTML 5.1 specs on the track element,轨道可以用作媒体元素的子元素。音频是一种媒体元素。跟踪相关事件在 javascript 中工作得很好。所以我认为在音频中使用它们没有问题。那么音轨是否可以使用不同的文件格式?
-
尝试使用 bubbles.js 的字幕。查看此链接bubbles.childnodes.com。您可以独立设置字幕样式。
-
我在 Mozilla 文档中找到了一个示例,但它仍然对我不起作用。 developer.mozilla.org/en-US/docs/Web/HTML/Element/audio
标签: css html5-audio subtitle