Firefox 22 mozGetUserMedia utilisant «écran» comme source de périphérique

Il y a eu quelques buzz dans l'air pour le support WebRTC dans Firefox 22. C'est pour quelqu'un qui connait le développement de Firefox: Y a-t-il un support dans Firefox pour la capture d'écran de bureau?

La technologie existe pour Chrome 26+, qui fournit un support expérimental pour la capture d'écran (en utilisant 'l'écran' en tant que source de périphérique); Le code (extrait) pour ce faire est:

// select any supported getUserMedia function navigator.getMedia = (navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia); // if getUserMedia is not supported, do nothing if( !navigator.getMedia ) return; // request for user media navigator.getMedia( { video : { mandatory : { // request 'screen' as a source media chromeMediaSource : 'screen' } } }, // success function( localMediaStream ) { // process local media stream... }, // failure function( error ) { // error handling }); 

En regardant les documents du W3C, les objets MediaSourceConstraints, MediaTrackConstraints, MediaTrackConstraintsSet n'ont pas encore été standardisés. Il se peut simplement que l'API soit trop brumeuse pour que cette fonctionnalité apparaisse dans la production de Firefox. Il serait juste de savoir l'état actuel de l'assistance.

Ceci est maintenant possible dans Firefox, mais en raison de problèmes de sécurité, le support est caché derrière certaines préférences. Plus précisément, les préférences media.getusermedia.* Sous about:config .

Ce commentaire sur un rapport de bug de Mozilla illustre certaines de ces préoccupations:

Maintenant que nous avons redessiné <input type="file"> pour ne pas dessiner le chemin complet sur l'écran, les choses sont meilleures. Nous avons encore des problèmes avec des images comme cross-origin et <iframe> s.

Même avec l'utilisateur opt-in, je me préoccuperais de situations comme "l'utilisateur charge la page d'application A dans un onglet et la page d'application B dans un autre onglet, la page B demande l'autorisation de partager la page A qui semble bien, l'utilisateur accepte, puis L'application échangé un <iframe> de FB ou gmail ou n'importe quoi dans la page A et saisit le contenu.

Bien que media.getusermedia.screensharing.enabled soit actuellement true par défaut dans la chaîne de diffusion, seuls les domaines media.getusermedia.screensharing.allowed_domains dans les media.getusermedia.screensharing.allowed_domains sous media.getusermedia.screensharing.allowed_domains sont effectivement autorisés à l'utiliser.

Si votre domaine est sur la liste autorisée, vous pouvez l'utiliser en utilisant les clés suivantes dans la propriété video .

 video: { mozMediaSource: "screen", mediaSource: "screen" } 

Mozilla héberge une page de test GetUserMedia , sur un domaine classé en blanc par Firefox Nightly et Firefox Developer Edition. Si vous utilisez l'une ou l'autre de ces versions de Firefox, vous pouvez l'afficher en action. Alternativement, vous pouvez ajouter le domaine à la liste blanche sous about:config et l'utiliser dans la version et les chaînes bêta.

Non, Firefox n'a pas encore ajouté de partage d'écrans comme Chrome: https://bugzilla.mozilla.org/show_bug.cgi?id=742832