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

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

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

الخلفية

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

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

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

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

عند تفعيل هذه الميزة وطلب صفحة ويب getUserMedia للحصول على صوت من جهاز إدخال، يحدث ما يلي:

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

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

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

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

  • في حال استدعاء getUserMedia بدون تفعيل echoCancellation، لن يؤثر Chrome في ميزة "تقليل الضوضاء" في الأجهزة.

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

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

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

ويبدأ السلوك بالمفعول من خلال تفعيل التجربة ببساطة. ما مِن تغييرات مطلوبة في واجهة برمجة التطبيقات.

كيفية تفعيل التجربة

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

chrome --enable-blink-features=DisableHardwareNoiseSuppression

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

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

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

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

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