Procházet zdrojové kódy

Added ability to notify about available media device list changes

j8
Kostiantyn Tsaregradskyi před 9 roky
rodič
revize
474155ce9d

+ 8
- 5
conference.js Zobrazit soubor

@@ -371,11 +371,14 @@ export default {
371 371
                 JitsiMeetJS.isDesktopSharingEnabled();
372 372
 
373 373
             // update list of available devices
374
-            if (JitsiMeetJS.isDeviceListAvailable() &&
375
-                JitsiMeetJS.isDeviceChangeAvailable()) {
376
-                JitsiMeetJS.enumerateDevices(
377
-                    devices => APP.UI.onAvailableDevicesChanged(devices)
378
-                );
374
+            if (JitsiMeetJS.mediaDevices.isDeviceListAvailable() &&
375
+                JitsiMeetJS.mediaDevices.isDeviceChangeAvailable()) {
376
+                JitsiMeetJS.mediaDevices.enumerateDevices(
377
+                    APP.UI.onAvailableDevicesChanged);
378
+
379
+                JitsiMeetJS.mediaDevices.addEventListener(
380
+                    JitsiMeetJS.events.mediaDevices.DEVICE_LIST_CHANGED,
381
+                    APP.UI.onAvailableDevicesChanged);
379 382
             }
380 383
             if (config.iAmRecorder)
381 384
                 this.recorder = new Recorder();

+ 1
- 1
modules/UI/side_pannels/settings/SettingsMenu.js Zobrazit soubor

@@ -218,7 +218,7 @@ export default {
218 218
         );
219 219
 
220 220
         if (audioOutput.length &&
221
-            JitsiMeetJS.isDeviceChangeAvailable('output')) {
221
+            JitsiMeetJS.mediaDevices.isDeviceChangeAvailable('output')) {
222 222
             $selectAudioOutput.html(
223 223
                 generateDevicesOptions(audioOutput,
224 224
                     Settings.getAudioOutputDeviceId()));

+ 5
- 5
modules/settings/Settings.js Zobrazit soubor

@@ -45,9 +45,9 @@ if (supportsLocalStorage()) {
45 45
 
46 46
     var audioOutputDeviceId = window.localStorage.audioOutputDeviceId;
47 47
 
48
-    if (typeof audioOutputDeviceId !== 'undefined' &&
49
-        audioOutputDeviceId !== JitsiMeetJS.getAudioOutputDevice()) {
50
-        JitsiMeetJS.setAudioOutputDevice(
48
+    if (typeof audioOutputDeviceId !== 'undefined' && audioOutputDeviceId !==
49
+            JitsiMeetJS.mediaDevices.getAudioOutputDevice()) {
50
+        JitsiMeetJS.mediaDevices.setAudioOutputDevice(
51 51
             window.localStorage.audioOutputDeviceId).catch((ex) => {
52 52
                 console.error('failed to set audio output device from local ' +
53 53
                     'storage', ex);
@@ -161,7 +161,7 @@ export default {
161 161
      * @returns {String}
162 162
      */
163 163
     getAudioOutputDeviceId: function () {
164
-        return JitsiMeetJS.getAudioOutputDevice();
164
+        return JitsiMeetJS.mediaDevices.getAudioOutputDevice();
165 165
     },
166 166
     /**
167 167
      * Set device id of the audio output device which is currently in use.
@@ -170,7 +170,7 @@ export default {
170 170
      * @returns {Promise}
171 171
      */
172 172
     setAudioOutputDeviceId: function (newId = '') {
173
-        return JitsiMeetJS.setAudioOutputDevice(newId)
173
+        return JitsiMeetJS.mediaDevices.setAudioOutputDevice(newId)
174 174
             .then(() => window.localStorage.audioOutputDeviceId = newId);
175 175
     },
176 176
 

Načítá se…
Zrušit
Uložit