Trong Chrome 64, chúng tôi đang thử một hành vi mới cho các luồng âm thanh getUserMedia đã bật quy tắc ràng buộc echoCancellation
. Điểm mới là các luồng như vậy sẽ tạm thời tắt tính năng khử tiếng ồn phần cứng trong suốt thời gian truyền. Chúng tôi dự kiến điều này sẽ giúp bộ khử tiếng vọng hoạt động hiệu quả hơn. Vì chức năng này đang trong giai đoạn thử nghiệm nên bạn cần bật chức năng này một cách rõ ràng; xem bên dưới.
Hiện tại, hành vi này chỉ được hỗ trợ cho một số thiết bị đầu vào và chỉ trên macOS. Tính năng hỗ trợ chỉ dành cho những thiết bị có thể bật/tắt chế độ "giảm tiếng ồn xung quanh" trong bảng điều khiển Âm thanh của phần Lựa chọn ưu tiên hệ thống.
Thông tin khái quát
Trình huỷ tiếng vọng cố gắng loại bỏ mọi âm thanh phát ra từ loa khỏi tín hiệu âm thanh mà micrô thu được. Nếu không, nội dung bạn nói khi là một bên trong cuộc gọi sẽ được micrô của các bên khác thu vào rồi gửi lại cho bạn. Bạn sẽ nghe thấy tiếng vang của chính mình!
Để loại bỏ tiếng vọng thành công, trình huỷ tiếng vọng của WebRTC (được dùng trong Chrome) cần nhận được tín hiệu âm thanh sạch nhất có thể từ micrô. Quá trình xử lý được áp dụng trước khi âm thanh đến bộ khử tiếng vọng, chẳng hạn như tính năng giảm nhiễu phần cứng, thường sẽ cản trở hiệu suất của bộ khử tiếng vọng. Hơn nữa, tính năng giảm tiếng ồn bằng phần mềm đã được triển khai, nhưng chỉ sau khi bộ khử tiếng vọng đã xử lý xong.
Thông tin chi tiết về hành vi mới
Nhà phát triển web có thể bật hành vi mới trên trang web của mình bằng cách chọn tham gia Chương trình thử nghiệm theo nguyên gốc. Người dùng cuối có thể bật tính năng này trên toàn hệ thống bằng cách truyền cờ dòng lệnh khi khởi động Chrome. Để biết thêm thông tin, hãy xem bên dưới.
Khi bạn bật tính năng này và một trang web gọi getUserMedia để lấy âm thanh từ một thiết bị đầu vào, thì những điều sau sẽ xảy ra:
Nếu bạn bật quy tắc ràng buộc
echoCancellation
, tính năng khử tiếng ồn phần cứng sẽ tắt trong suốt thời gian của luồng âm thanh mới tạo.Vì chế độ cài đặt này áp dụng trên toàn hệ thống, nên chế độ này sẽ áp dụng cho tất cả luồng đầu vào âm thanh từ cùng một thiết bị (tức là cùng một micrô).
Sau khi luồng cuối cùng muốn tắt tính năng giảm nhiễu phần cứng đóng, tính năng giảm nhiễu phần cứng sẽ được bật lại.
Nếu tính năng giảm nhiễu phần cứng đã bị tắt trước đó, thì Chrome sẽ không thay đổi trạng thái của tính năng này.
Nếu getUserMedia được gọi mà không bật
echoCancellation
, Chrome sẽ không chạm vào tính năng giảm nhiễu phần cứng.
Vì chế độ cài đặt này cũng do người dùng kiểm soát, nên có một số hoạt động tương tác cụ thể với người dùng:
Nếu Chrome đã tắt tính năng loại bỏ tạp âm phần cứng và người dùng bật lại tính năng này, thì Chrome sẽ không cố gắng tắt lại tính năng này cho luồng đó.
Nếu Chrome đã tắt tính năng loại bỏ tạp âm phần cứng và người dùng bật lại rồi tắt lại, thì Chrome vẫn sẽ bật lại tính năng này sau khi luồng kết thúc.
Bạn chỉ cần bật thử nghiệm để hành vi này có hiệu lực. Bạn không cần thay đổi API.
Cách bật thử nghiệm
Để có được hành vi mới này trên trang web, bạn cần đăng ký Bản dùng thử theo nguyên gốc "Tắt tính năng Giảm tiếng ồn bằng phần cứng". Nếu bạn chỉ muốn thử tính năng này trên máy, bạn cũng có thể bật tính năng này trên dòng lệnh:
chrome --enable-blink-features=DisableHardwareNoiseSuppression
Việc truyền cờ này trên dòng lệnh sẽ bật tính năng này trên toàn cầu cho phiên hiện tại.
Có một số khía cạnh mà chúng tôi muốn đánh giá thông qua thử nghiệm này:
Sự khác biệt về chất lượng trong thực tế giữa việc bật và tắt tính năng loại bỏ tiếng ồn phần cứng.
Việc thay đổi chế độ cài đặt này trong Chrome ảnh hưởng như thế nào đến người dùng cuối và các phần mềm khác mà họ có thể đang chạy?
Chúng tôi muốn nhận được ý kiến phản hồi về cả hai khía cạnh này. Khi bật tính năng này, chất lượng cuộc gọi có tốt hơn hay xấu hơn không? Có vấn đề gì với việc triển khai gây ra hành vi không mong muốn không? Trong mọi trường hợp, nếu bạn đang dùng thử tính năng này, vui lòng gửi phản hồi về lỗi này. Nếu có thể, hãy cho biết bạn đã sử dụng micrô / tai nghe / v.v. nào và liệu thiết bị đó có hỗ trợ tính năng giảm tiếng ồn xung quanh hay không. Nếu bạn thực hiện nhiều thử nghiệm trên quy mô lớn hơn, hãy cung cấp đường liên kết đến số liệu thống kê so sánh về chất lượng cuộc gọi âm thanh.