На основе Konva
документации о том, как визуализировать видео на холсте, я хотел бы воспроизвести видео, получая доступ к видеосвязи непосредственно из экземпляра Konva.Image
. Ниже приведен надуманный пример для симуляции моей цели динамического воспроизведения видео вне компонента. Приведенное ниже не воспроизводит видео должным образом, даже если imageRef.current.image()
возвращает ссылку на элемент видео. Любые предложения о том, как я могу получить доступ к видео ссылки в качестве альтернативы?
import React, { useEffect, useContext, useState } from 'react'
import { Image } from "react-konva";
import Konva from 'konva'
export const MainVideo = ({ shape, dispatch }) => {
const imageRef = React.useRef(null);
const video = document.createElement('video');
video.setAttribute('src',shape.url);
useEffect(() => {
if(imageRef) {
imageRef.current.image().play();
const layer = imageRef.current.getLayer();
const anim = new Konva.Animation(() => {
}, layer);
anim.start()
}
}, [imageRef])
return (
<Image
ref={imageRef}
opacity={shape.o}
id={shape.id}
image={video}
x={shape.x}
y={shape.y}
zIndex={0}
height={360}
width={640} />
)
}