소스 검색

Update JitsiStreamPresenterEffect.js (#7362)

* Update JitsiStreamPresenterEffect.js
Create/terminate the Web Worker on effect start/stop so that we don't leak them.
master
Đặng Minh Tiến 5 년 전
부모
커밋
eb1ef0fa9c
No account linked to committer's email address
1개의 변경된 파일3개의 추가작업 그리고 2개의 파일을 삭제
  1. 3
    2
      react/features/stream-effects/presenter/JitsiStreamPresenterEffect.js

+ 3
- 2
react/features/stream-effects/presenter/JitsiStreamPresenterEffect.js 파일 보기

64
 
64
 
65
         // Bind event handler so it is only bound once for every instance.
65
         // Bind event handler so it is only bound once for every instance.
66
         this._onVideoFrameTimer = this._onVideoFrameTimer.bind(this);
66
         this._onVideoFrameTimer = this._onVideoFrameTimer.bind(this);
67
-        this._videoFrameTimerWorker = new Worker(timerWorkerScript, { name: 'Presenter effect worker' });
68
-        this._videoFrameTimerWorker.onmessage = this._onVideoFrameTimer;
69
     }
67
     }
70
 
68
 
71
     /**
69
     /**
136
         this._desktopElement.srcObject = desktopStream;
134
         this._desktopElement.srcObject = desktopStream;
137
         this._canvas.width = parseInt(width, 10);
135
         this._canvas.width = parseInt(width, 10);
138
         this._canvas.height = parseInt(height, 10);
136
         this._canvas.height = parseInt(height, 10);
137
+        this._videoFrameTimerWorker = new Worker(timerWorkerScript, { name: 'Presenter effect worker' });
138
+        this._videoFrameTimerWorker.onmessage = this._onVideoFrameTimer;
139
         this._videoFrameTimerWorker.postMessage({
139
         this._videoFrameTimerWorker.postMessage({
140
             id: SET_INTERVAL,
140
             id: SET_INTERVAL,
141
             timeMs: 1000 / this._frameRate
141
             timeMs: 1000 / this._frameRate
153
         this._videoFrameTimerWorker.postMessage({
153
         this._videoFrameTimerWorker.postMessage({
154
             id: CLEAR_INTERVAL
154
             id: CLEAR_INTERVAL
155
         });
155
         });
156
+        this._videoFrameTimerWorker.terminate();
156
     }
157
     }
157
 
158
 
158
 }
159
 }

Loading…
취소
저장