Báo cáo hiệu suất của SDK Video Zoom

Phân tích so sánh SDK Video Zoom

Báo cáo hiệu suất của SDK Video Zoom

Tổng quan

TestDevLab — nhà cung cấp phát triển công cụ kiểm thử tùy chỉnh và đảm bảo chất lượng phần mềm — đã tiến hành phân tích SDK Video Zoom và bốn nhà cung cấp SDK Video khác: Agora, Vonage TokBox, Chime và Twilio. Mục tiêu là để hiểu khả năng hoạt động của từng nền tảng và chất lượng kết quả của mỗi SDK Video. Phân tích này được Zoom Video Communications, Inc. ủy quyền thực hiện. Những phát hiện được cung cấp trong báo cáo này phản ánh kết quả thử nghiệm TestDevLab từ ngày 12 tháng 5 năm 2022.

Trước tiên, báo cáo này mô tả những điều cần cân nhắc khi đánh giá chất lượng SDK Video. Sau đó, phân tích kết quả được trình bày, đặc biệt là xem xét chất lượng hiệu suất, tính liên tục của băng thông và duy trì mức sử dụng bộ xử lý trung tâm (CPU) và bộ nhớ truy cập ngẫu nhiên (RAM) thấp trong thời gian mất gói 25%. Chi tiết về môi trường thử nghiệm được cung cấp trong phụ lục.

Được thiết kế để sử dụng dễ dàng, dung lượng nhẹ và dễ tùy chỉnh, Zoom đã nỗ lực chú trọng rất nhiều vào chất lượng tổng thể của SDK Video. Ngay cả trong các kịch bản mạng kém, trường hợp sử dụng di động và mô phỏng địa điểm nông thôn hoặc vùng sâu vùng xa, kết quả thử nghiệm SDK Video Zoom vẫn rất tốt.

TestDevLab cũng thực hiện thử nghiệm để xem cách các SDK Video xử lý các tài nguyên giới hạn như băng thông, CPU và RAM. SDK Video Zoom tiếp tục thể hiện tốt.

TestDevLab giúp các công ty khởi nghiệp và các công ty trong danh sách Fortune 500 trên toàn thế giới đẩy nhanh chu kỳ phát hành, cải thiện chất lượng sản phẩm và nâng cao trải nghiệm người dùng. TestDevLab cung cấp dịch vụ và giải pháp đổi mới về kiểm tra chất lượng âm thanh/video và định chuẩn, kiểm thử chức năng, kiểm thử hồi quy, kiểm thử bảo mật và kiểm thử tích hợp cũng như các dịch vụ tự động hóa kiểm tra cho các SDK, tuân theo các phương pháp tốt nhất và sử dụng các công cụ kiểm tra theo tiêu chuẩn ngành và giải pháp kiểm tra tùy chỉnh.

Đánh giá chất lượng SDK video

Khi đánh giá chất lượng SDK video, có nhiều khía cạnh khác nhau cần được xem xét, bao gồm:

Thiết bị người dùng: Phạm vi của TestDevLab là kiểm tra các thiết bị giống nhau về tất cả các SDK để đảm bảo có thể so sánh.

Giới hạn mạng: Để tiến hành phân tích so sánh, các điều kiện mạng phải có thể kiểm soát được. TestDevLab tập trung vào bốn giới hạn mạng, bao gồm băng thông không giới hạn, băng thông giới hạn áp dụng cho người gửi, băng thông giới hạn cho người nhận và mất gói 25% ngẫu nhiên. Mỗi thiết bị được kết nối với một bộ định tuyến khác nhau để đảm bảo kết nối chất lượng.

Khả năng dự đoán và khả năng lặp lại: TestDevLab thực hiện tám thử nghiệm với bốn thử nghiệm mỗi đợt. Mỗi thử nghiệm được thực hiện vào những thời điểm khác nhau để giảm tác động của bất kỳ tình trạng tắc nghẽn mạng toàn cầu/dịch vụ chậm trễ ngoài dự kiến nào có thể xảy ra, v.v. Từ những thử nghiệm đó, TestDevLab lấy ra năm thử nghiệm có tình trạng ổn định nhất.

Phân tích: Để phân tích kết quả, TestDevLab thực hiện xác thực trong quy trình. Họ xem qua các kết quả theo thời gian cho tất cả các thử nghiệm cũng như kiểm tra ngẫu nhiên video để xác nhận tính hợp lệ của dữ liệu so với đánh giá chủ quan.

Kết quả và phân tích hiệu suất

TestDevLab tiến hành các thử nghiệm nhiều lần cho mỗi kịch bản. Trong mỗi thử nghiệm và đối với tất cả các nhà cung cấp, TestDevLa nhận thấy kết quả ổn định cho cùng một kịch bản khi thực hiện nhiều lần. Khi phân tích kết quả, TestDevLab xem xét:

Chất lượng hiệu suất. TestDevLab phân tích chất lượng của độ trễ âm thanh và độ trễ video trong các điều kiện mạng khác nhau. Họ cũng xem xét so sánh tốc độ khung hình, số khung hình trên giây (FPS) và chỉ số Hợp nhất đánh giá video đa phương thức (VMAF).

Quản lý tài nguyên trong điều kiện mạng không lý tưởng. TestDevLab xem xét cách các nhà cung cấp quản lý tài nguyên trong tình huống mất gói.

Mức sử dụng CPU/RAM. TestDevLab xem xét cách các nhà cung cấp sử dụng tài nguyên trong khi một ứng dụng phải chịu áp lực, ví dụ: video của nhiều người tham gia được kết xuất trong một chế độ xem thư viện.

Chất lượng hiệu suất

Chất lượng hiệu suất rất quan trọng trong nhiều điều kiện mạng khác nhau. TestDevLab kiểm tra độ trễ âm thanh, độ trễ video và tốc độ khung hình với mạng không giới hạn.

Thử nghiệm độ trễ âm thanh của các nhà cung cấp cho thấy tất cả các nhà cung cấp có độ trễ tương đương, ngoại trừ Chime có độ trễ lâu hơn một chút.

Khi so sánh độ trễ video, Zoom, Agora, Twilio và Chime có độ trễ video chủ yếu dưới 250 ms. Tuy nhiên, Vonage TokBox có độ trễ video từ 250 ms cho đến hơn 1.000 ms.

Khi so sánh tốc độ khung hình, thử nghiệm cho thấy Zoom có tốc độ khung hình cao nhất trong cuộc gọi video.

Biểu đồ so sánh FPS không giới hạn

Kết quả cũng cho thấy Zoom có chất lượng video ổn định nhất trong tất cả các điều kiện mạng được thử nghiệm. Thử nghiệm bắt đầu với việc không có giới hạn băng thông, sau đó giới hạn băng thông thấp được áp dụng như nhau cho tất cả các nhà cung cấp, đầu tiên ở phía người gửi, sau đó là phía người nhận.

Phục hồi tốc độ khung hình trong trường hợp kiểm tra người nhận giới hạn

Quản lý tài nguyên trong điều kiện mạng không lý tưởng

Tiếp theo, TestDevLab xem xét tính liên tục của nguồn trong kịch bản mất gói 25%. Mất gói có thể làm chậm tốc độ mạng, gây tắc nghẽn, làm gián đoạn băng thông lưu lượng mạng và có thể tốn kém. Mất gói có thể do nhiều lý do gây ra và phần đa nằm ngoài chủ ý. Tắc nghẽn mạng, mạng không đáng tin cậy, đặc biệt là mạng di động, lỗi phần mềm và thiết bị quá tải là một vài ví dụ cho điều này.

Trong các thử nghiệm bao gồm mức mất gói 25%, Zoom thể hiện tốt khả bảo toàn băng thông và duy trì mức sử dụng CPU và bộ nhớ thấp trong trường hợp mất gói và điều kiện mạng bị hạn chế. Zoom cung cấp khả năng quản lý thông minh và thận trọng trong khi vẫn duy trì chất lượng cuộc gọi.

Mặt khác, thử nghiệm cho thấy Agora dường như có một cách tiếp cận khác đối với việc mất gói – họ dành nhiều băng thông để cố gắng xử lý việc mất gói. Nếu tốc độ bit giới hạn là nguyên nhân gây mất gói thì việc cố gắng sử dụng nhiều băng thông hơn có thể gây ra sự cố.

Khi so sánh chất lượng âm thanh trong trường hợp mất gói 25%, Zoom và Agora đã xử lý tốt chất lượng âm thanh, với mức trên 4,00 MOS. Tuy nhiên, chất lượng âm thanh của Twilio không thể sử dụng được và chất lượng của Chime gần như không thể sử dụng được, với mức dưới 3,00 MOS.

Biểu đồ so sánh POLQA với mức mất gói 25%

Khi xem xét độ trễ âm thanh trong trường hợp mất gói 25%, Zoom đã tăng độ trễ khoảng 100 ms trong khi Agora có mức tăng đáng kể hơn là 200 – 250 ms để xử lý mất gói.

Trong quá trình so sánh Tốc độ bit mạng, thử nghiệm cho thấy cả Twilio và Chime đều không ổn định và được đặt mặc định ở tốc độ bit rất thấp. Mặt khác, tốc độ bit của Agora rất cao, chứng tỏ rằng sản phẩm có thể không tính đến chuyện mạng bị tắc nghẽn khi chỉ ra nguyên nhân mất gói.

So sánh tốc độ bit gửi với mức mất gói 25% khi gửi

So sánh tốc độ bit gửi với mức mất gói 25% khi nhận

Về mức sử dụng CPU, Zoom sử dụng ít CPU nhất so với bốn nhà cung cấp khác trong các kịch bản thử nghiệm.

So sánh CPU với mức mất gói 25%

Zoom cũng có mức sử dụng RAM thấp nhất. Như thể hiện trong biểu đồ dưới đây, Twilio và Chime đều sử dụng khoảng 500 MB RAM trong thời gian mất gói 25% và Agora sử dụng hơn 3 GB trong các cuộc gọi video.

So sánh RAM với mức mất gói 25%

Mức sử dụng CPU/RAM

Lợi ích của việc sử dụng CPU và RAM thấp hơn bao gồm:

  • Trải nghiệm người dùng tốt hơn
  • Hiệu suất ứng dụng tốt hơn với nhiều tài nguyên có sẵn hơn
  • Ít phàn nàn hơn về việc ứng dụng dùng hết nhiều pin
  • Cho phép người dùng chạy các ứng dụng khác cùng với hội nghị video

Mức sử dụng CPU và RAM thấp hơn là trường hợp sử dụng hoàn hảo cho phương tiện nghe nhìn theo thời gian thực được nhúng vào các ứng dụng sử dụng nhiều tài nguyên khác như trò chơi điện tử và các ứng dụng cộng tác đồ họa như CAD và thiết kế 3D.

TestDevLab kiểm tra mức sử dụng CPU trên mỗi số lượng người dùng, mức sử dụng CPU theo thời gian và mức sử dụng bộ nhớ theo thời gian. Trong quá trình thử nghiệm, kết quả cho thấy SDK Video Zoom sử dụng CPU thấp. Như đã đề cập ở trên, mức sử dụng CPU thấp hơn có thể chuyển thành trải nghiệm người dùng tốt, hiệu suất ứng dụng tốt hơn với nhiều tài nguyên có sẵn hơn và ít phàn nàn hơn về việc ứng dụng dùng hết nhiều pin.

Mức sử dụng CPU trên mỗi số lượng người dùng

So sánh lưới CPU hệ thống

Mức sử dụng CPU theo thời gian - Người nhận không giới hạn CPU

Mức sử dụng CPU theo thời gian - Người nhận không giới hạn CPU hệ thống

Trong các thử nghiệm tương tự, Agora không thể thực hiện chế độ xem thư viện 32 lưới. Ngoài ra, Vonage TokBox luôn sử dụng nhiều CPU hơn các nhà cung cấp khác.

Kết luận

SDK Video Zoom là lựa chọn tốt cho tất cả các kịch bản mạng, bao gồm cả những kịch bản có tài nguyên giới hạn như băng thông, CPU và RAM.

Các thử nghiệm của TestDevLab được tiến hành nhiều lần cho từng kịch bản và thu kết quả nhất quán mỗi lần. SDK Video Zoom nổi trội về:

  • Chất lượng hiệu suất
  • Độ tin cậy của băng thông
  • Mức sử dụng CPU/RAM

Tìm hiểu cách đẩy nhanh quá trình phát triển của bạn và xây dựng các ứng dụng dựa trên video hoàn toàn tùy chỉnh bằng cách truy cập trang web này.

Phụ lục

Môi trường thử nghiệm

SDK Video, bao gồm SDK Video Zoom và các SDK từ Agora, Vonage TokBox, Chime và Twilio, đã được thử nghiệm trong một tập hợp các kịch bản định trước.

TestDevLab thử nghiệm cả năm nhà cung cấp, với ba loại thử nghiệm, hai số lượng người tham gia khác nhau và bốn giới hạn mạng khác nhau bao gồm băng thông không giới hạn, áp dụng băng thông hạn chế đối với người gửi, áp dụng băng thông hạn chế đối với người nhận và mất gói 25%. TestDevLab chạy tám thử nghiệm với bốn thử nghiệm mỗi đợt, được thực hiện vào các thời điểm khác nhau. Từ đó, TestDevLab lấy ra năm thử nghiệm với hoạt động ổn định nhất để tiến hành phân tích và đưa ra kết quả.

Để thử nghiệm mức sử dụng CPU và RAM ở các mức tải khác nhau, TestDevLab đã tạo thử nghiệm chịu tải bắt đầu với tổng số 48 người dùng trong cuộc gọi. Trong khi video đang phát trực tiếp, TestDevLab chuyển đổi số lượng người dùng trên lưới sau mỗi 60 giây, để thử nghiệm các kịch bản 32, 16, 8 *, 4 và 2 người dùng.

Để thử nghiệm hiệu suất, nền tảng TestDevLab đã được định cấu hình theo cách sau:

  • Thiết bị người gửi: MSI Katana GF66 11UD i7-11800H, 8GB, 512GB SSD, GeForce RTX 3050 Ti 4GB
  • Thiết bị người nhận: Lenovo ThinkPad E495|R5 3500U|16GB|512SSD|Vega 8 (20NE-001GMH)
  • Độ phân giải cuộc gọi video: 1080×720
  • Độ phân giải chia sẻ màn hình: 1920×1080 (Độ phân giải màn hình)
  • Tốc độ khung hình video: 30 FPS
  • Tốc độ bit của video: 3.000 kbps

TestDevLab đã tiến hành các kịch bản thử nghiệm cuộc gọi video, chia sẻ màn hình động và chia sẻ màn hình tĩnh để phân tích hiệu suất. Mỗi kịch bản được thử nghiệm năm lần với số lượng người tham gia khác nhau. Áp dụng quy trình sau đây:

  • Áp dụng giới hạn mạng
  • Tạo cuộc gọi bằng thiết bị người gửi
  • Tham gia cuộc gọi với thiết bị người nhận và người tham gia bổ sung
  • Bắt đầu phát trực tiếp video hoặc chia sẻ màn hình
  • Song song – thu thập dữ liệu thử nghiệm thô
  • Khi video kết thúc, rời cuộc gọi theo thứ tự ngược lại với khi tham gia
  • Xử lý dữ liệu thô
  • Xác thực dữ liệu đã xử lý

* Thiết kế thử nghiệm TestDevLab cũng bao gồm một thử nghiệm thư viện với 8 người tham gia, tuy nhiên, việc thực hiện thử nghiệm này sử dụng độ phân giải không chính xác và những kết quả đó không được đưa vào phân tích và báo cáo.