Chrome 109 में स्क्रीन शेयर करने की सुविधा के सुधार

फ्रांकोइस ब्यूफ़ोर्ट
फ्रांकोइस ब्यूफ़ोर्ट
एलाद एलोन
एलाद अलोन

वेब ऐप्लिकेशन, getDisplayMedia() का इस्तेमाल टैब, विंडो या स्क्रीन को MediaStream के तौर पर पहले से ही कैप्चर करने के लिए कर सकते हैं. Chrome 109 से, इन सुधारों का फ़ायदा लिया जा सकता है:

  • जब स्क्रीन शेयर करने की सुविधा शुरू होती है, तब शर्त के साथ फ़ोकस करने पर, कैप्चर करने वाला वेब ऐप्लिकेशन यह कंट्रोल करता है कि ब्राउज़र कैप्चर किए गए टैब या विंडो पर फ़ोकस करेगा या नहीं. इसके अलावा, कैप्चर करने वाला टैब चालू रहेगा या नहीं.
  • suppressLocalAudioPlayback के विकल्प से यह कंट्रोल किया जाता है कि टैब में चल रहे ऑडियो को उपयोगकर्ता के लोकल स्पीकर से चलाया जाएगा या नहीं.

कंडीशनल फ़ोकस

'शर्त के साथ फ़ोकस' सुविधा का इस्तेमाल करके, वेब ऐप्लिकेशन अब यह कंट्रोल कर सकते हैं कि कैप्चर करने की प्रक्रिया शुरू होने पर, कैप्चर किए गए टैब या विंडो पर फ़ोकस किया जाएगा या कैप्चर करने वाले पेज पर फ़ोकस किया जाएगा.

const controller = new CaptureController();
// Prompt the user to share a tab, a window or a screen.
const stream =
    await navigator.mediaDevices.getDisplayMedia({ controller });

const [track] = stream.getVideoTracks();
const displaySurface = track.getSettings().displaySurface;
if (displaySurface === "browser") {
  // Focus the captured tab.
  controller.setFocusBehavior("focus-captured-surface");
} else if (displaySurface === "window") {
  // Do not move focus to the captured window.
  // Keep the capturing page focused.
  controller.setFocusBehavior("no-focus-change");
}

ज़्यादा जानकारी के लिए, शर्त के साथ फ़ोकस करने की सुविधा के साथ स्क्रीन को बेहतर तरीके से शेयर करने की सुविधा लेख पढ़ें.

डिवाइस पर चल रहे ऑडियो को रोकें

आम तौर पर, सहकर्मी एक कमरे में इकट्ठा होते हैं, ताकि उनमें से कोई भी अपने लैपटॉप से मीटिंग रूम में मौजूद कॉन्फ़्रेंसिंग समाधान को, खास मॉनिटर और स्पीकर के साथ प्रज़ेंट करे. आम तौर पर, प्रज़ेंटर अपना लैपटॉप म्यूट करता है. वह अक्सर आवाज़ वाले बाहरी स्पीकर का इस्तेमाल करता है. इससे यह भी पक्का होता है कि ऑडियो, वीडियो के साथ सिंक हो. यहां suppressLocalAudioPlayback ऑडियो कंस्ट्रेंट समय की बचत करता है. इस नीति को true पर सेट करने से यह पता चलता है कि कैप्चर शुरू होने पर ब्राउज़र को लोकल स्पीकर पर ऑडियो भेजना बंद कर देना चाहिए. इस कंस्ट्रेंट के लिए डिफ़ॉल्ट वैल्यू false है.

// Prompt the user to share a tab, a window or a screen with audio.
// If successful, stop the captured audio from being played out over
// the local device’s speakers.
const stream = await navigator.mediaDevices.getDisplayMedia({
  audio: { suppressLocalAudioPlayback: true },
});
const [audioTrack] = stream.getAudioTracks();
const settings = audioTrack.getSettings();
console.log(settings.suppressLocalAudioPlayback); // true

फ़िलहाल, suppressLocalAudioPlayback applyConstraints() के साथ काम नहीं करता. बग 1381959 देखें.

स्वीकार हैं

ब्रैट जॉर्डन की हीरो इमेज.

इस लेख को पढ़ने के लिए, रेचल एंड्रू का धन्यवाद.