Переглянути джерело

fix(screenshare): audio screen share muted state (#8785)

* AudioMixerEffect muted state

* update lib-jitsi-meet
j8
Andrei Gavrilescu 4 роки тому
джерело
коміт
bad1bc91cf
Аккаунт користувача з таким Email не знайдено

+ 2
- 2
package-lock.json Переглянути файл

@@ -10265,8 +10265,8 @@
10265 10265
       }
10266 10266
     },
10267 10267
     "lib-jitsi-meet": {
10268
-      "version": "github:jitsi/lib-jitsi-meet#0ec072378c84206b90f0e001e34cf4d746384cc5",
10269
-      "from": "github:jitsi/lib-jitsi-meet#0ec072378c84206b90f0e001e34cf4d746384cc5",
10268
+      "version": "github:jitsi/lib-jitsi-meet#676c7a910505833810314a665ad1e825a158850c",
10269
+      "from": "github:jitsi/lib-jitsi-meet#676c7a910505833810314a665ad1e825a158850c",
10270 10270
       "requires": {
10271 10271
         "@jitsi/js-utils": "1.0.2",
10272 10272
         "@jitsi/sdp-interop": "1.0.3",

+ 1
- 1
package.json Переглянути файл

@@ -55,7 +55,7 @@
55 55
     "jquery-i18next": "1.2.1",
56 56
     "js-md5": "0.6.1",
57 57
     "jwt-decode": "2.2.0",
58
-    "lib-jitsi-meet": "github:jitsi/lib-jitsi-meet#0ec072378c84206b90f0e001e34cf4d746384cc5",
58
+    "lib-jitsi-meet": "github:jitsi/lib-jitsi-meet#676c7a910505833810314a665ad1e825a158850c",
59 59
     "libflacjs": "github:mmig/libflac.js#93d37e7f811f01cf7d8b6a603e38bd3c3810907d",
60 60
     "lodash": "4.17.21",
61 61
     "moment": "2.29.1",

+ 32
- 1
react/features/stream-effects/audio-mixer/AudioMixerEffect.js Переглянути файл

@@ -14,6 +14,16 @@ export class AudioMixerEffect {
14 14
      */
15 15
     _mixAudio: Object;
16 16
 
17
+    /**
18
+     * Original MediaStream from the JitsiLocalTrack that uses this effect.
19
+     */
20
+    _originalStream: Object;
21
+
22
+    /**
23
+     * MediaStreamTrack obtained from the original MediaStream.
24
+     */
25
+    _originalTrack: Object;
26
+
17 27
     /**
18 28
      * lib-jitsi-meet AudioMixer.
19 29
      */
@@ -51,9 +61,12 @@ export class AudioMixerEffect {
51 61
      * @returns {MediaStream} - MediaStream containing both audio tracks mixed together.
52 62
      */
53 63
     startEffect(audioStream: MediaStream) {
64
+        this._originalStream = audioStream;
65
+        this._originalTrack = audioStream.getTracks()[0];
66
+
54 67
         this._audioMixer = JitsiMeetJS.createAudioMixer();
55 68
         this._audioMixer.addMediaStream(this._mixAudio.getOriginalStream());
56
-        this._audioMixer.addMediaStream(audioStream);
69
+        this._audioMixer.addMediaStream(this._originalStream);
57 70
 
58 71
         return this._audioMixer.start();
59 72
     }
@@ -67,4 +80,22 @@ export class AudioMixerEffect {
67 80
         this._audioMixer.reset();
68 81
     }
69 82
 
83
+    /**
84
+     * Change the muted state of the effect.
85
+     *
86
+     * @param {boolean} muted - Should effect be muted or not.
87
+     * @returns {void}
88
+     */
89
+    setMuted(muted: boolean) {
90
+        this._originalTrack.enabled = !muted;
91
+    }
92
+
93
+    /**
94
+     * Check wether or not this effect is muted.
95
+     *
96
+     * @returns {boolean}
97
+     */
98
+    isMuted() {
99
+        return !this._originalTrack.enabled;
100
+    }
70 101
 }

Завантаження…
Відмінити
Зберегти