ใน Chrome 64 เรากำลังลองใช้ลักษณะการทำงานใหม่สำหรับสตรีมเสียง getUserMedia ที่เปิดใช้การจำกัด echoCancellation
มีอะไรใหม่คือสตรีมดังกล่าวจะปิดการระงับเสียงรบกวนด้วยฮาร์ดแวร์ชั่วคราวตลอดระยะเวลาของสตรีม เราคาดว่าวิธีนี้จะช่วยให้โปรแกรมตัดเสียงก้องทำงานได้ดีขึ้น เนื่องจากฟังก์ชันการทำงานนี้ยังอยู่ในขั้นทดลอง คุณจึงต้องเปิดใช้เองอย่างชัดแจ้ง ดูด้านล่าง
ในตอนนี้ การทำงานนี้ใช้ได้เฉพาะอุปกรณ์อินพุตบางประเภทและเฉพาะใน macOS เท่านั้น การรองรับจะจำกัดเฉพาะอุปกรณ์ที่มี "การลดเสียงรบกวนรอบข้าง" แบบสลับเปิด/ปิดได้ในแผงเสียงของค่ากำหนดของระบบ
ที่มา
โปรแกรมตัดเสียงก้องจะพยายามนำเสียงที่ออกทางลำโพงออกจากสัญญาณเสียงที่ไมโครโฟนตรวจจับได้ หากไม่มีข้อมูลนี้ สิ่งที่คุณพูดในฐานะส่วนหนึ่งของการโทรจะรับโดยไมโครโฟนของอีกฝ่าย แล้วส่งกลับไปให้คุณ คุณจะได้ยินเสียงก้องของตัวเอง
เพื่อให้สามารถนำเสียงก้องออกได้ โปรแกรมตัดเสียงก้องของ WebRTC (ซึ่งใช้ใน Chrome) จะต้องทำความสะอาดสัญญาณเสียงจากไมโครโฟนให้สะอาดที่สุดเท่าที่จะเป็นไปได้ การประมวลผลที่มีผลก่อนที่เสียงจะถึงตัวตัดเสียงก้อง เช่น การลดเสียงรบกวนด้วยฮาร์ดแวร์ มักส่งผลกระทบต่อประสิทธิภาพ นอกจากนี้ เรายังมีการระงับเสียงรบกวนของซอฟต์แวร์อยู่แล้ว แต่หลังจากโปรแกรมตัดเสียงก้องประมวลผลแล้วเท่านั้น
รายละเอียดของลักษณะการทำงานใหม่
นักพัฒนาเว็บเปิดใช้ลักษณะการทำงานใหม่ในเว็บไซต์ได้โดยการเลือกใช้ช่วงทดลองใช้จากต้นทาง ผู้ใช้ปลายทางจะเปิดใช้ฟีเจอร์นี้ได้ทั่วโลกโดยการส่งแฟล็กบรรทัดคำสั่งเมื่อเริ่ม Chrome ดูข้อมูลเพิ่มเติมด้านล่างสำหรับข้อมูลเพิ่มเติม
เมื่อเปิดใช้งานแล้ว และหน้าเว็บจะเรียก getUserMedia เพื่อรับเสียงจากอุปกรณ์อินพุต สิ่งต่อไปนี้จะเกิดขึ้น
หากเปิดใช้ข้อจำกัด
echoCancellation
การระงับเสียงรบกวนด้วยฮาร์ดแวร์จะปิดตลอดระยะเวลาของสตรีมเสียงที่สร้างขึ้นใหม่เนื่องจากการตั้งค่านี้ใช้ทั่วทั้งระบบ จึงจะมีผลกับสตรีมอินพุตเสียงทั้งหมดจากอุปกรณ์เดียวกัน (ไมโครโฟนเดียวกัน)
เมื่อสตรีมสุดท้ายที่ต้องการปิดการลดเสียงรบกวนของฮาร์ดแวร์แล้ว ระบบจะเปิดการลดเสียงรบกวนจากฮาร์ดแวร์อีกครั้ง
หากปิดใช้การระงับเสียงรบกวนของฮาร์ดแวร์ไว้ก่อนแล้ว Chrome จะไม่เปลี่ยนสถานะ
หากมีการเรียก getUserMedia โดยไม่เปิดใช้
echoCancellation
Chrome จะไม่แตะการระงับเสียงรบกวนของฮาร์ดแวร์
เนื่องจากการตั้งค่านี้ควบคุมโดยผู้ใช้ได้ด้วย จึงมีการโต้ตอบเฉพาะบางอย่างกับผู้ใช้ ดังนี้
หาก Chrome ปิดการระงับเสียงรบกวนด้วยฮาร์ดแวร์ไว้ และผู้ใช้เปิดอีกครั้ง Chrome จะไม่พยายามปิดใช้สำหรับสตรีมนั้นอีก
หาก Chrome ปิดการลดเสียงรบกวนของฮาร์ดแวร์ และผู้ใช้เปิดแล้วปิดอีกครั้ง Chrome จะยังคงเปิดใช้อีกครั้งเมื่อสตรีมสิ้นสุดลง
ลักษณะการทำงานจะเกิดขึ้นได้ง่ายๆ ด้วยการเปิดใช้การทดสอบ โดยไม่ต้องเปลี่ยนแปลง API อะไร
วิธีเปิดใช้การทดสอบ
หากต้องการใช้ลักษณะการทำงานใหม่นี้ในเว็บไซต์ คุณต้องลงชื่อสมัครใช้ช่วงทดลองใช้จากต้นทาง "ปิดใช้ฟีเจอร์การลดเสียงรบกวนของฮาร์ดแวร์" หากต้องการลองใช้ในเครื่อง คุณก็สามารถเปิดใช้บนบรรทัดคำสั่งได้ ดังนี้
chrome --enable-blink-features=DisableHardwareNoiseSuppression
การส่งแฟล็กนี้ในบรรทัดคำสั่งจะเปิดใช้ฟีเจอร์นี้ทั่วโลกสำหรับเซสชันปัจจุบัน
สิ่งที่เราต้องการประเมินในการทดสอบนี้มีอยู่ 2 ด้าน ได้แก่
ความแตกต่างเชิงคุณภาพระหว่าง การเปิดและปิดการลดเสียงรบกวนของฮาร์ดแวร์
การเปลี่ยนแปลงการตั้งค่านี้จากภายใน Chrome จะส่งผลต่อผู้ใช้ปลายทางและซอฟต์แวร์อื่นๆ ที่อาจทำงานอยู่อย่างไร
เราอยากทราบความคิดเห็นของคุณทั้ง 2 ด้านนี้ การโทรดีขึ้นหรือแย่กว่า เมื่อเปิดฟีเจอร์นี้ มีปัญหาในการใช้งานที่ก่อให้เกิดพฤติกรรมที่ไม่คาดคิดไหม ไม่ว่าในกรณีใด โปรดส่งความคิดเห็นเกี่ยวกับข้อบกพร่องนี้ หากเป็นไปได้ โปรดระบุว่ามีไมโครโฟน / ชุดหูฟัง / อื่นๆ ที่ใช้หรือไม่ และระบุว่าอุปกรณ์ดังกล่าวรองรับการลดเสียงรบกวนรอบข้างหรือไม่ หากคุณทำการทดสอบในวงใหญ่มากกว่านี้ เราจะขอบคุณลิงก์ที่นำ ไปยังสถิติเชิงเปรียบเทียบเกี่ยวกับคุณภาพของการโทร