L'esempio di API desktopCapturer mostra come scrivere un flusso di cattura dello schermo su un elemento <video>
.Salvataggio di DesktopCapturer in un file video in Electron
// In the renderer process.
var desktopCapturer = require('electron').desktopCapturer;
desktopCapturer.getSources({types: ['window', 'screen']}, function(error, sources) {
if (error) throw error;
for (var i = 0; i < sources.length; ++i) {
if (sources[i].name == "Electron") {
navigator.webkitGetUserMedia({
audio: false,
video: {
mandatory: {
chromeMediaSource: 'desktop',
chromeMediaSourceId: sources[i].id,
minWidth: 1280,
maxWidth: 1280,
minHeight: 720,
maxHeight: 720
}
}
}, gotStream, getUserMediaError);
return;
}
}
});
function gotStream(stream) {
document.querySelector('video').src = URL.createObjectURL(stream);
}
function getUserMediaError(e) {
console.log('getUserMediaError');
}
ho cercato di sostituire la funzione gotStream con il seguente:
function gotStream(stream) {
var fs = require('fs');
fs.writeFileSync('vid.mp4', stream);
}
Questo crea un file di testo con [object MediaStream]
come contenuto.
Come posso registrare questo flusso e salvarlo in un file su disco?
Ho risposto a una domanda simile. [link] (http://stackoverflow.com/a/41053078/1055501) –
Correlati: http://stackoverflow.com/a/12101012/266535 – styfle
Correlati: http://stackoverflow.com/a/36523834/ 266535 – styfle