Merge pull request #3782 from virtuacoplenny/lenny/camera-as-ss
feat(screenshare): use camera as a screenshare source
This commit is contained in:
commit
998db80db1
|
@ -1488,6 +1488,8 @@ export default {
|
||||||
const wasVideoMuted = this.isLocalVideoMuted();
|
const wasVideoMuted = this.isLocalVideoMuted();
|
||||||
|
|
||||||
return createLocalTracksF({
|
return createLocalTracksF({
|
||||||
|
desktopSharingSourceDevice: options.desktopSharingSources
|
||||||
|
? null : config._desktopSharingSourceDevice,
|
||||||
desktopSharingSources: options.desktopSharingSources,
|
desktopSharingSources: options.desktopSharingSources,
|
||||||
devices: [ 'desktop' ],
|
devices: [ 'desktop' ],
|
||||||
desktopSharingExtensionExternalInstallation: {
|
desktopSharingExtensionExternalInstallation: {
|
||||||
|
@ -1645,6 +1647,7 @@ export default {
|
||||||
// Handling:
|
// Handling:
|
||||||
// JitsiTrackErrors.PERMISSION_DENIED
|
// JitsiTrackErrors.PERMISSION_DENIED
|
||||||
// JitsiTrackErrors.CHROME_EXTENSION_INSTALLATION_ERROR
|
// JitsiTrackErrors.CHROME_EXTENSION_INSTALLATION_ERROR
|
||||||
|
// JitsiTrackErrors.CONSTRAINT_FAILED
|
||||||
// JitsiTrackErrors.GENERAL
|
// JitsiTrackErrors.GENERAL
|
||||||
// and any other
|
// and any other
|
||||||
let descriptionKey;
|
let descriptionKey;
|
||||||
|
@ -1668,6 +1671,9 @@ export default {
|
||||||
descriptionKey = 'dialog.screenSharingPermissionDeniedError';
|
descriptionKey = 'dialog.screenSharingPermissionDeniedError';
|
||||||
titleKey = 'dialog.screenSharingFailedToInstallTitle';
|
titleKey = 'dialog.screenSharingFailedToInstallTitle';
|
||||||
}
|
}
|
||||||
|
} else if (error.name === JitsiTrackErrors.CONSTRAINT_FAILED) {
|
||||||
|
descriptionKey = 'dialog.cameraConstraintFailedError';
|
||||||
|
titleKey = 'deviceError.cameraError';
|
||||||
} else {
|
} else {
|
||||||
descriptionKey = 'dialog.screenSharingFailedToInstall';
|
descriptionKey = 'dialog.screenSharingFailedToInstall';
|
||||||
titleKey = 'dialog.screenSharingFailedToInstallTitle';
|
titleKey = 'dialog.screenSharingFailedToInstallTitle';
|
||||||
|
|
|
@ -386,6 +386,13 @@ var config = {
|
||||||
// analyticsInterval: 60000,
|
// analyticsInterval: 60000,
|
||||||
// }
|
// }
|
||||||
|
|
||||||
|
// If set, will attempt to use the provided video input device label when
|
||||||
|
// triggering a screenshare, instead of proceeding through the normal flow
|
||||||
|
// for obtaining a desktop stream.
|
||||||
|
// NOTE: This option is experimental and is currently intended for internal
|
||||||
|
// use only.
|
||||||
|
// _desktopSharingSourceDevice: 'sample-id-or-label'
|
||||||
|
|
||||||
// List of undocumented settings used in jitsi-meet
|
// List of undocumented settings used in jitsi-meet
|
||||||
/**
|
/**
|
||||||
_immediateReloadThreshold
|
_immediateReloadThreshold
|
||||||
|
|
|
@ -17,6 +17,7 @@ declare var $: Object;
|
||||||
* @type Array
|
* @type Array
|
||||||
*/
|
*/
|
||||||
const WHITELISTED_KEYS = [
|
const WHITELISTED_KEYS = [
|
||||||
|
'_desktopSharingSourceDevice',
|
||||||
'_peerConnStatusOutOfLastNTimeout',
|
'_peerConnStatusOutOfLastNTimeout',
|
||||||
'_peerConnStatusRtcMuteTimeout',
|
'_peerConnStatusRtcMuteTimeout',
|
||||||
'abTesting',
|
'abTesting',
|
||||||
|
|
|
@ -62,6 +62,8 @@ export function createLocalTracksF(
|
||||||
desktopSharingExtensionExternalInstallation:
|
desktopSharingExtensionExternalInstallation:
|
||||||
options.desktopSharingExtensionExternalInstallation,
|
options.desktopSharingExtensionExternalInstallation,
|
||||||
desktopSharingFrameRate,
|
desktopSharingFrameRate,
|
||||||
|
desktopSharingSourceDevice:
|
||||||
|
options.desktopSharingSourceDevice,
|
||||||
desktopSharingSources: options.desktopSharingSources,
|
desktopSharingSources: options.desktopSharingSources,
|
||||||
|
|
||||||
// Copy array to avoid mutations inside library.
|
// Copy array to avoid mutations inside library.
|
||||||
|
|
Loading…
Reference in New Issue