mirror of
https://github.com/zhw2590582/ArtPlayer.git
synced 2026-10-21 04:31:20 -08:00
16 lines
643 B
TypeScript
16 lines
643 B
TypeScript
export function forwardSubtitleTrack(canvas: HTMLCanvasElement, video: HTMLVideoElement, initialTrack: HTMLTrackElement, active: () => boolean): void {
|
|
if (!active())
|
|
return
|
|
const append = canvas.appendChild
|
|
initialTrack.kind = 'metadata'
|
|
initialTrack.default = true
|
|
video.appendChild(initialTrack)
|
|
canvas.appendChild = <T extends Node>(node: T): T => {
|
|
if (active() && node.nodeType === 1 && node.nodeName === 'TRACK' && 'namespaceURI' in node && node.namespaceURI === 'http://www.w3.org/1999/xhtml') {
|
|
initialTrack.remove()
|
|
return video.appendChild(node)
|
|
}
|
|
return append.call(canvas, node) as T
|
|
}
|
|
}
|