MediaRecorder、字幕和副标题
MediaRecorder, captions, and subtitles
是否可以使用 MediaRecorder 将 WebVTT 轨道(或任何其他类型的字幕轨道)与音频和视频轨道一起混合到输出流中?
WebM supports a WebVTT track. There is a W3C doc from 2012 简要提到了字幕轨道的可能性。
今天 in-band 支持字幕吗?如果可以,我该如何使用它?
您对 2012 年 3 月 6 日 W3C 工作草案的 link 具有以下内容。
While not directly applicable to local media stream scenarios (caption
support is generally done out-of-band from the original capture), it
could be something worth adding in order to integrate with HTML5
videos when the source is a PeerConnection where real-time captioning
is being performed and needs to be displayed.
https://www.w3.org/TR/capture-scenarios/#caption-tracks
这确实提到了它的可能性,但这意味着它没有实现,据我所知,它一直没有实现。
很难证明是否定的。那就是说,请在接受这个作为答案之前给这个几天时间,以防我弄错了。
由于 TextTrack
被添加到 videoElement
,您最好的选择是使用 videoElement.captureStream()
方法,但它目前不包含 TextTracks。
关于 Media Capture from DOM Elements 的规格仅说明,
Both MediaStream and HTMLMediaElement expose the concept of a "track". Since there is no common type used for HTMLMediaElement, this document uses the term track to refer to either VideoTrack or AudioTrack.
所以我们可以说它没有谈到 TextTracks...
MediaStream.addTrack
只能处理 MediaStreamTracks,所以也不行。
不幸的是,这会导致 失败。
(至少目前 - 规格可能会在未来添加它,我想你可以 open an issue here 关于它)。
是否可以使用 MediaRecorder 将 WebVTT 轨道(或任何其他类型的字幕轨道)与音频和视频轨道一起混合到输出流中?
WebM supports a WebVTT track. There is a W3C doc from 2012 简要提到了字幕轨道的可能性。
今天 in-band 支持字幕吗?如果可以,我该如何使用它?
您对 2012 年 3 月 6 日 W3C 工作草案的 link 具有以下内容。
While not directly applicable to local media stream scenarios (caption support is generally done out-of-band from the original capture), it could be something worth adding in order to integrate with HTML5 videos when the source is a PeerConnection where real-time captioning is being performed and needs to be displayed.
https://www.w3.org/TR/capture-scenarios/#caption-tracks
这确实提到了它的可能性,但这意味着它没有实现,据我所知,它一直没有实现。
很难证明是否定的。那就是说,请在接受这个作为答案之前给这个几天时间,以防我弄错了。
由于 TextTrack
被添加到 videoElement
,您最好的选择是使用 videoElement.captureStream()
方法,但它目前不包含 TextTracks。
关于 Media Capture from DOM Elements 的规格仅说明,
Both MediaStream and HTMLMediaElement expose the concept of a "track". Since there is no common type used for HTMLMediaElement, this document uses the term track to refer to either VideoTrack or AudioTrack.
所以我们可以说它没有谈到 TextTracks...
MediaStream.addTrack
只能处理 MediaStreamTracks,所以也不行。
不幸的是,这会导致 失败。 (至少目前 - 规格可能会在未来添加它,我想你可以 open an issue here 关于它)。