Quản lý luồng nội dung nghe nhìn ảo trong Meet Media API

Luồng nội dung nghe nhìn ảo, trong bối cảnh hội nghị WebRTC, là các luồng nội dung nghe nhìn do một Đơn vị chuyển tiếp có chọn lọc (SFU) tạo ra để tổng hợp và phân phối nội dung nghe nhìn từ nhiều người tham gia. Không giống như luồng nội dung đa phương tiện ngang hàng trực tiếp sẽ tạo ra một mạng lưới kết nối phức tạp trong các hội nghị lớn, luồng nội dung đa phương tiện ảo sẽ đơn giản hoá cấu trúc liên kết. SFU nhận các luồng nội dung đa phương tiện riêng lẻ từ từng người tham gia và chuyển tiếp có chọn lọc các luồng đang hoạt động hoặc có liên quan đến các người tham gia khác, đồng thời kết hợp các luồng đó vào một nhóm luồng nội dung đa phương tiện ảo cố định, nhỏ hơn.

Phương pháp này làm giảm số lượng luồng đầu vào đồng thời mà mỗi người tham gia cần xử lý, giảm các yêu cầu về băng thông và xử lý. Mỗi luồng ảo có thể chứa nội dung đa phương tiện của một người tham gia tại một thời điểm, được SFU điều chỉnh linh động dựa trên các yếu tố như hoạt động của người nói hoặc bài tập video. Người tham gia nhận được các luồng ảo này, xem hiệu quả chế độ xem tổng hợp của hội nghị mà không cần quản lý các luồng riêng lẻ từ mọi người tham gia khác. Tính năng trừu tượng này do luồng nội dung nghe nhìn ảo cung cấp là rất quan trọng để mở rộng quy mô hội nghị WebRTC cho một số lượng lớn người tham gia.

Để nhận âm thanh, ứng dụng phải cung cấp đúng 3 nội dung mô tả nội dung nghe nhìn, tạo 3 bộ thu phát âm thanh cục bộ. Để nhận video, ứng dụng phải cung cấp từ một đến ba nội dung mô tả nội dung nghe nhìn dạng video, thiết lập số lượng bộ thu phát video đó.

Những người nhận bóng

Mỗi bộ thu phát do ứng dụng sở hữu đều có một RtpReceiver chuyên dụng và một "đường truyền nội dung đa phương tiện" chuyên dụng để nhận luồng RTP âm thanh từ máy chủ Meet.

Mỗi kênh có một mã nhận dạng duy nhất và nhận luồng gói RTP riêng từ nguồn nội dung đa phương tiện cụ thể đó. Ví dụ: Bản nhạc A có thể nhận âm thanh từ production-1 trong khi Bản nhạc B nhận âm thanh từ production-2.

SSRC

Mỗi gói RTP có một giá trị tiêu đề Nguồn đồng bộ hoá (SSRC), liên kết gói đó với một kênh cụ thể.

Các phiên âm thanh thông qua Meet Media API sử dụng 3 luồng nội dung nghe nhìn riêng biệt, mỗi luồng có một SSRC tĩnh riêng. Sau khi được thiết lập, các giá trị SSRC này sẽ không bao giờ thay đổi trong suốt phiên.

Luồng ảo

Meet Media API sử dụng Luồng nội dung nghe nhìn ảo. Các giá trị này là tĩnh trong suốt phiên, nhưng nguồn của các gói có thể thay đổi để phản ánh nguồn cấp dữ liệu liên quan nhất. Luồng nội dung nghe nhìn ảo hoạt động giống nhau đối với âm thanh và video.

Nguồn đóng góp (CSRC) trong tiêu đề gói RTP xác định nguồn thực sự của các gói RTP. Meet sẽ chỉ định cho mỗi người tham gia trong một hội nghị một CSRC riêng biệt khi họ tham gia. Giá trị này không đổi cho đến khi người dùng rời khỏi.

Vì số lượng SSRC không đổi trong suốt phiên API Meet Media, nên có 3 trường hợp có thể xảy ra:

  1. Có nhiều người tham gia hơn số SSRC có sẵn:

    Meet truyền ba người nói to nhất qua ba SSRC. Vì mỗi luồng RTP đều có SSRC riêng, nên không có sự kết hợp giữa các luồng.

    Meet truyền ba người nói to nhất qua ba SSRC.
    Hình 1. Meet truyền ba người nói to nhất qua ba SSRC.

    Nếu bất kỳ luồng gốc nào trong cuộc họp không còn là luồng to nhất, thì Meet sẽ chuyển các gói RTP tạo nên SSRC sang luồng to nhất.

    Meet sẽ chuyển các gói RTP sang người nói to nhất mới.
    Hình 2. Meet sẽ chuyển các gói RTP sang người nói to nhất mới.
  2. Số người tham gia đang hoạt động ít hơn 3 SSRC âm thanh:

    Trong trường hợp có nhiều SSRC hơn số luồng trong hội nghị, Meet sẽ liên kết mọi gói âm thanh có sẵn với SSRC riêng. Mọi SSRC không dùng đến vẫn sẵn sàng và có sẵn, nhưng không có gói RTP nào được truyền.

    Meet liên kết các gói âm thanh có sẵn với SSRC riêng biệt.
    Hình 3. Meet liên kết các gói âm thanh có sẵn với SSRC riêng biệt.
  3. Số lượng người tham gia đang hoạt động bằng 3 SSRC âm thanh:

    Đối với trường hợp có số lượng người tham gia bằng nhau và có sẵn SSRC, nội dung nghe nhìn của mỗi người tham gia sẽ được liên kết với một SSRC chuyên dụng. Các mối liên kết này sẽ tồn tại miễn là trường hợp cụ thể này vẫn tồn tại.

    Meet liên kết nội dung nghe nhìn của mỗi người tham gia với một SSRC chuyên dụng.
    Hình 4. Meet liên kết nội dung nghe nhìn của mỗi người tham gia với một SSRC chuyên dụng.