feat(virtual-background): Desktop share as virtual background wip
This commit is contained in:
parent
be0632783d
commit
04a464dfee
|
@ -16,7 +16,7 @@ import {
|
||||||
export default class JitsiStreamBackgroundEffect {
|
export default class JitsiStreamBackgroundEffect {
|
||||||
_model: Object;
|
_model: Object;
|
||||||
_options: Object;
|
_options: Object;
|
||||||
_stream: Object;
|
_screenSharing: Object;
|
||||||
_segmentationPixelCount: number;
|
_segmentationPixelCount: number;
|
||||||
_inputVideoElement: HTMLVideoElement;
|
_inputVideoElement: HTMLVideoElement;
|
||||||
_onMaskFrameTimer: Function;
|
_onMaskFrameTimer: Function;
|
||||||
|
@ -43,17 +43,17 @@ export default class JitsiStreamBackgroundEffect {
|
||||||
*/
|
*/
|
||||||
constructor(model: Object, options: Object, screenSharing: Object) {
|
constructor(model: Object, options: Object, screenSharing: Object) {
|
||||||
this._options = options;
|
this._options = options;
|
||||||
this._stream = screenSharing;
|
this._screenSharing = screenSharing;
|
||||||
|
|
||||||
if (this._options.virtualBackground.backgroundType === 'image') {
|
if (this._options.virtualBackground.backgroundType === 'image') {
|
||||||
this._virtualImage = document.createElement('img');
|
this._virtualImage = document.createElement('img');
|
||||||
this._virtualImage.crossOrigin = 'anonymous';
|
this._virtualImage.crossOrigin = 'anonymous';
|
||||||
this._virtualImage.src = this._options.virtualBackground.virtualSource;
|
this._virtualImage.src = this._options.virtualBackground.virtualSource;
|
||||||
}
|
}
|
||||||
if (this._options.virtualBackground.backgroundType === 'desktop-share' && this._stream) {
|
if (this._options.virtualBackground.backgroundType === 'desktop-share' && this._screenSharing) {
|
||||||
this._virtualVideo = document.createElement('video');
|
this._virtualVideo = document.createElement('video');
|
||||||
this._virtualVideo.autoplay = true;
|
this._virtualVideo.autoplay = true;
|
||||||
this._virtualVideo.srcObject = this._stream.stream;
|
this._virtualVideo.srcObject = this._screenSharing.stream;
|
||||||
}
|
}
|
||||||
this._model = model;
|
this._model = model;
|
||||||
this._options = options;
|
this._options = options;
|
||||||
|
@ -252,7 +252,7 @@ export default class JitsiStreamBackgroundEffect {
|
||||||
this._inputVideoElement.height = parseInt(height, 10);
|
this._inputVideoElement.height = parseInt(height, 10);
|
||||||
this._inputVideoElement.autoplay = true;
|
this._inputVideoElement.autoplay = true;
|
||||||
this._inputVideoElement.srcObject = stream;
|
this._inputVideoElement.srcObject = stream;
|
||||||
this._stream && this._stream.on(
|
this._screenSharing && this._screenSharing.on(
|
||||||
JitsiTrackEvents.LOCAL_TRACK_STOPPED,
|
JitsiTrackEvents.LOCAL_TRACK_STOPPED,
|
||||||
() => {
|
() => {
|
||||||
this._options.virtualBackground.enabled = false;
|
this._options.virtualBackground.enabled = false;
|
||||||
|
|
Loading…
Reference in New Issue