Преглед изворни кода

fix(deviceSelection):prejoin-update current device

master
Hristo Terezov пре 3 година
родитељ
комит
0ef71f4368
1 измењених фајлова са 11 додато и 2 уклоњено
  1. 11
    2
      react/features/prejoin/actions.js

+ 11
- 2
react/features/prejoin/actions.js Прегледај датотеку

@@ -9,6 +9,7 @@ import { getDialOutStatusUrl, getDialOutUrl, updateConfig } from '../base/config
9 9
 import { browser } from '../base/lib-jitsi-meet';
10 10
 import { createLocalTrack } from '../base/lib-jitsi-meet/functions';
11 11
 import { isVideoMutedByUser, MEDIA_TYPE } from '../base/media';
12
+import { updateSettings } from '../base/settings';
12 13
 import {
13 14
     createLocalTracksF,
14 15
     getLocalAudioTrack,
@@ -359,7 +360,11 @@ export function replaceAudioTrackById(deviceId: string) {
359 360
             const newTrack = await createLocalTrack('audio', deviceId);
360 361
             const oldTrack = getLocalAudioTrack(tracks)?.jitsiTrack;
361 362
 
362
-            dispatch(replaceLocalTrack(oldTrack, newTrack));
363
+            dispatch(replaceLocalTrack(oldTrack, newTrack)).then(() => {
364
+                dispatch(updateSettings({
365
+                    micDeviceId: newTrack.getDeviceId()
366
+                }));
367
+            });
363 368
         } catch (err) {
364 369
             dispatch(setDeviceStatusWarning('prejoin.audioTrackError'));
365 370
             logger.log('Error replacing audio track', err);
@@ -386,7 +391,11 @@ export function replaceVideoTrackById(deviceId: Object) {
386 391
             );
387 392
             const oldTrack = getLocalVideoTrack(tracks)?.jitsiTrack;
388 393
 
389
-            dispatch(replaceLocalTrack(oldTrack, newTrack));
394
+            dispatch(replaceLocalTrack(oldTrack, newTrack)).then(() => {
395
+                dispatch(updateSettings({
396
+                    cameraDeviceId: newTrack.getDeviceId()
397
+                }));
398
+            });
390 399
             wasVideoMuted && newTrack.mute();
391 400
         } catch (err) {
392 401
             dispatch(setDeviceStatusWarning('prejoin.videoTrackError'));

Loading…
Откажи
Сачувај