Đầu tiên hãy nói về vấn đề độ trễ
round trip latency (tạm dịch là Thời gain trễ trọn vòng) - một chỉ tiêu rất quan trọng đối với các ứng dụng xử lý âm thanh thời gian thực và người dùng không bao giờ muốn phải đối mặt với vấn đề độ trễ quá lớn khi ghi âm, chỉnh sửa hoặc chơi nội dung âm thanh. Điều này có liên quan tới thời gian cần để âm thanh đi vào hệ thống, đi vào phần mềm xử lý và sau đó là đưa trở ra loa hoặc jack cắm tai nghe. Con người không nhận thức được độ trễ ở dưới mức 20 mili giây, nên độ trễ của bất kỳ hệ thống thời gian thực nào cũng phải dưới mức này và ở mức 10ms được nhận thức là tức thời.
Các thử nghiệm trước đây trên thiết bị chạy Android KitKat và Lillopop cho thấy độ trễ nói trên đạt tới mức hàng trăm mili giây, tạo ra độ trễ rõ rệt và khiến cho hệ thống không thể đáp ứng được nhu cầu của các ứng dụng thời gian thực. Thậm chí những thiết bị Android được cho là cao cấp nhất vẫn gặp khó khăn khi đảm bảo độ trễ dưới mức 40 mili giây. Tuy nhiên, trên phiên bản
Android 6.0 Marshmallow thì người ta phát hiện ra rằng
Google đã khắc phục được hiện tượng này, cho phép đạt độ trễ ở dưới mức 20 mili giây. Cụ thể trong bài test mới nhất của Superpowered, xung nhịp của Nexus 6P đạt mức 18 mili giây, trong khi Nexus 9 là 15 mili giây.
Để đạt được điều đó, hãng đã nâng cấp ở 2 điểm đáng chú ý là: sử dụng buffer size (cỡ bộ đệm - trong thu âm thì cái này càng nhỏ thì độ trễ càng thấp) nhỏ hơn và các cờ (flag) xử lý âm thanh chuyên nghiệp mới nhất. Cỡ buffer được giảm xuống một nửa, chỉ còn 128 mẫu. Một bộ đệm có nhiệm vụ lưu trữ các mẫu được chọn sẵn trước khi tất cả được cùng nhau gởi vào hệ thống. Cỡ bộ đệm nhỏ hơn đồng nghĩa với việc toàn bộ hệ thống sẽ được cập nhật các mẫu mới nhanh hơn. Kỹ thuật tạo bộ đệm và xử lý hàng loạt thường sẽ hiệu quả hơn so với việc chuyển từng mẫu và xử lý.
Bấm để mở rộng...