From 57b55bba855be3b5a936c5e930978b5c2c2029f2 Mon Sep 17 00:00:00 2001 From: pabloFuente Date: Fri, 21 Feb 2020 12:07:53 +0100 Subject: [PATCH] openvidu-testapp: initGrayVideo refactoring --- .../openvidu-instance.component.ts | 25 ++++++++++--------- 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/openvidu-testapp/src/app/components/openvidu-instance/openvidu-instance.component.ts b/openvidu-testapp/src/app/components/openvidu-instance/openvidu-instance.component.ts index 42f46bd1..eda242a8 100644 --- a/openvidu-testapp/src/app/components/openvidu-instance/openvidu-instance.component.ts +++ b/openvidu-testapp/src/app/components/openvidu-instance/openvidu-instance.component.ts @@ -503,11 +503,13 @@ export class OpenviduInstanceComponent implements OnInit, OnChanges, OnDestroy { } initGrayVideo(): void { + this.OV.getUserMedia( { + audioSource: undefined, videoSource: undefined, resolution: '1280x720', - frameRate: 30, + frameRate: 3, } ) .then((mediaStream: MediaStream) => { @@ -530,18 +532,17 @@ export class OpenviduInstanceComponent implements OnInit, OnChanges, OnDestroy { loop(); }); const grayVideoTrack: MediaStreamTrack = (canvas.captureStream(30)).getVideoTracks()[0]; - this.publisher = this.OV.initPublisher( - document.body, - { - audioSource: false, - videoSource: grayVideoTrack, - insertMode: VideoInsertMode.APPEND - }); - this.session.publish(this.publisher).catch((error: OpenViduError) => { - console.error(error); - this.session.unpublish(this.publisher); + this.OV.getUserMedia({ + audioSource: false, + videoSource: grayVideoTrack + }).then(mediastream => { + this.publisher.replaceTrack(mediastream.getVideoTracks()[0]) + .then(() => console.log('New track is being published')) + .catch(error => { + console.error('Error replacing track'); + console.error(error); + }); }); - }) .catch(error => { console.error(error);