إيقاف كتم ضوضاء الأجهزة

في الإصدار 64 من Chrome، نحاول اتّباع سلوك جديد لعمليات البث الصوتي getUserMedia التي تم تفعيل القيد echoCancellation فيها. الجديد هو أنّ عمليات البث هذه ستؤدي إلى إيقاف ميزة كتم ضوضاء الأجهزة مؤقتًا طوال مدة البث. ونتوقّع أن يؤدي ذلك إلى تحسين أداء ميزة إلغاء الصدى. وبما أنّ هذه الوظيفة تجريبية، يجب تفعيلها بشكل صريح انظر أدناه.

في هذه المرحلة، لا يتوفر هذا السلوك إلا في أجهزة إدخال معيّنة وعلى نظام التشغيل macOS فقط. ويقتصر الدعم على الأجهزة التي تحتوي على ميزة "تقليل الضوضاء المحيطة" قابلة للتبديل في لوحة الصوت ضمن الإعدادات المفضّلة للنظام.

الخلفية

تحاول أداة إلغاء الصدى إزالة أي صوت يتم تشغيله على مكبرات الصوت من الإشارة الصوتية التي يلتقطها الميكروفون. بدون هذا، سيلتقط ميكروفون الأطراف الأخرى ما تقوله بصفتك أحد الطرفين للمكالمة، ثم يرسله إليك مرة أخرى. سيصدُر صدى بصوتك.

لإزالة صدى الصوت بنجاح، يجب أن تكون أداة إلغاء الصدى في WebRTC (المستخدَمة في Chrome) أفضل إشارة صوتية ممكنة من الميكروفون. إنّ المعالجة التي يتم تطبيقها قبل وصول الصوت إلى أداة إلغاء الصدى، مثل كتم ضوضاء الجهاز، عادة ما تعيق أداءه. علاوةً على ذلك، يتوفر برنامج كتم الضوضاء، ولكن فقط بعد الانتهاء من معالجة أداة إلغاء الصدى.

تفاصيل السلوك الجديد

يمكن لمطوّري البرامج على الويب تفعيل السلوك الجديد على مواقعهم الإلكترونية من خلال الاشتراك في تجربة المصدر. يمكن للمستخدمين النهائيين تفعيله على مستوى العالم من خلال تمرير علامة سطر أوامر عند بدء تشغيل Chrome. لمزيد من المعلومات، انظر أدناه.

عندما يكون هذا الخيار مفعَّلاً وتتصل صفحة ويب بـ getUserMedia للحصول على صوت من جهاز الإدخال، يحدث ما يلي:

  • في حال تفعيل القيد echoCancellation، سيتم إيقاف ميزة كتم ضوضاء الأجهزة طوال مدة البث الصوتي الذي تم إنشاؤه حديثًا.

  • بما أنّ هذه الإعدادات على مستوى النظام بالكامل، سيتم تطبيق هذه الإعدادات على كل عمليات بث الإدخال الصوتي من الجهاز نفسه (أي الميكروفون نفسه).

  • بعد إتمام البث الأخير الذي يريد إيقاف ميزة كتم ضوضاء الأجهزة، تتم إعادة تفعيل ميزة كتم ضوضاء الأجهزة.

  • إذا سبق أن تم إيقاف ميزة إلغاء الضوضاء في الأجهزة مسبقًا، لن يغير Chrome حالته.

  • إذا تم استدعاء getUserMedia بدون تفعيل echoCancellation، لن يتعرّض Chrome لميزة كتم ضوضاء الأجهزة.

نظرًا لأن هذا الإعداد يمكن للمستخدم التحكم فيه أيضًا، فهناك بعض التفاعلات المحددة مع المستخدم:

  • وإذا أوقف Chrome ميزة "كتم ضوضاء الجهاز" وأعاد المستخدم تفعيلها، لن يحاول Chrome إيقافها مرة أخرى لهذا البث.

  • إذا أوقف Chrome ميزة "كتم ضوضاء الجهاز" وأعاد المستخدم تفعيلها ثم أوقفها مرة أخرى، سيعيد Chrome تفعيلها بعد انتهاء البث.

ويتم تطبيق هذا السلوك بمجرد تفعيل التجربة. لا توجد تغييرات ضرورية في واجهة برمجة التطبيقات.

طريقة تفعيل التجربة

للاستفادة من هذا السلوك الجديد على موقعك الإلكتروني، عليك الاشتراك في الفترة التجريبية من "إيقاف ميزة إيقاف الضوضاء" على الأجهزة. إذا كنت ترغب فقط في تجربتها محليًا، فيمكنك أيضًا تمكينها من خلال سطر الأوامر:

chrome --enable-blink-features=DisableHardwareNoiseSuppression

يؤدي تمرير هذه العلامة إلى سطر الأوامر إلى تفعيل الميزة عالميًا للجلسة الحالية.

هناك جانبان نريد تقييمهما باستخدام هذه التجربة:

  • هناك اختلافات نوعية في المجال، بين تفعيل ميزة كتم ضوضاء الأجهزة مقابل إيقافها.

  • كيف يؤثر تغيير هذا الإعداد من داخل Chrome في المستخدم النهائي والبرامج الأخرى التي قد يكون قيد التشغيل؟

ويهمنا الحصول على ملاحظات بشأن كلا الجانبين. هل المكالمات أفضل أم أسوأ مع تشغيل هذه الميزة؟ هل هناك مشكلات في التنفيذ تتسبب في حدوث سلوكيات غير متوقعة؟ على أي حال، إذا كنت تحاول تجربة هذا الإجراء، يُرجى تقديم ملاحظات عن هذا الخطأ. يُرجى ذكر الميكروفون / سماعة الرأس / وما إلى ذلك الذي تم استخدامه وما إذا كانت ميزة "تقليل الضوضاء المحيطة" تدعمها، إن أمكن. إذا كنت تجري تجارب على نطاق أوسع، يتم تقدير الروابط المؤدية إلى إحصاءات مقارنة حول جودة المكالمات الصوتية.