Estoy tratando de crear una grabadora de pantalla para mí porque mi PC (Windows 10) no tiene una cámara por el motivo que sea. Sé que puede sonar extraño, pero cada vez que abro la aplicación de la cámara, aparece un error que dice que no se puede encontrar ninguna cámara. Además, cuando cualquier otra aplicación intenta usar mi cámara, todavía dice que no se puede encontrar ninguna cámara. Mi administrador de dispositivos ni siquiera enumera ningún controlador de cámara ni nada por el estilo. Honestamente, esto es desconcertante para mí en cuanto a cómo una PC moderna carecería de cámara. Sin embargo, de alguna manera, cuando juego en la aplicación Steam, todavía puedo usar la función de grabación de Steam para grabar videos de juegos. No sé si esto implica que mi PC realmente tiene una cámara. Sin embargo, estoy tratando de crear mi propia cámara para solucionar mi problema.
Aprendí sobre el elemento de lienzo html y el método captureStream() que le permite capturar una secuencia de video del contenido del lienzo. Sin embargo, he estado viendo información en línea que sugiere que esto podría requerir una cámara, pero esta información se ha dispersado por la web y se ha organizado de manera confusa.
¿Puede alguien por favor aclarar esto para mí? ¿El uso de canvas.captureStream() requiere una cámara?
¿Puedo usar HTMLCanvasElement.captureStream() si mi PC no tiene cámara web?
Sí tu puedes.
No hay relación entre esta API y la cámara web. Probablemente se confundió con navigator.mediaDevices.getUserMedia() , que también devuelve un objeto MediaStream y que, de hecho, requiere un dispositivo de captura.
HTMLCanvasElement#captureStream() producirá dicho MediaStream directamente desde su búfer y, por lo tanto, no necesita ningún dispositivo de captura.
Esto es lo mismo para las funciones de grabación de pantalla, no necesitan un dispositivo de captura dedicado, solo graban los cuadros que ellos (o el sistema) generaron.
Por cierto, para grabar su pantalla, será mejor que use la API de captura de pantalla, que tampoco necesita un dispositivo de captura.