Omówienie problemów z wideo
Ustanawianie połączenia wideo obejmuje wiele składników i procesów. Kroki obejmują pozyskiwanie strumienia wideo z urządzenia aparatu, kodowanie przeglądarki, dekodowanie przeglądarki, renderowanie wideo itd. Jeśli wystąpi problem na dowolnym z tych etapów, użytkownicy mogą napotkać problemy związane z wideo. Na przykład użytkownicy mogą narzekać na brak możliwości wyświetlenia filmu wideo lub niskiej jakości filmu wideo. W związku z tym zrozumienie, w jaki sposób przepływ zawartości wideo od nadawcy do odbiorcy ma kluczowe znaczenie dla debugowania i ograniczania problemów z wideo.
Jak działa połączenie wideo z kompleksowej perspektywy
W tym miejscu użyjemy wywołania grupy usług Azure Communication Services jako przykładu.
Gdy nadawca uruchamia wideo w wywołaniu, zestaw SDK wewnętrznie pobiera strumień wideo aparatu za pośrednictwem interfejsu API przeglądarki.
Po zakończeniu uzgadniania w warstwie sygnału z serwerem zestaw SDK rozpoczyna wysyłanie strumienia wideo do serwera.
Przeglądarka wykonuje kodowanie wideo i pakietowanie w warstwie RTP (Protokół transportu w czasie rzeczywistym) na potrzeby transmisji.
Inni uczestnicy wywołania odbierają powiadomienia z serwera, wskazując dostępność strumienia wideo od nadawcy.
Aplikacja może zdecydować, czy zasubskrybować strumień wideo, czy nie.
Jeśli aplikacja subskrybuje strumień wideo z serwera (na przykład przy użyciu createView
interfejsu API), serwer przekazuje pakiety wideo nadawcy do odbiornika.
Przeglądarka odbiorcy dekoduje i renderuje przychodzące wideo.
W przypadku korzystania z zestawu ACS Web Calling SDK do wywołań wideo zestaw SDK i przeglądarka mogą dostosować jakość wideo nadawcy na podstawie dostępnej przepustowości. Dostosowanie może obejmować zmiany rozdzielczości, klatek na sekundę i docelową szybkość transmisji bitów. Ponadto przeciążenie procesora CPU po stronie nadawcy może również mieć wpływ na decyzję przeglądarki w sprawie rozpoznawania docelowego kodowania.
Typowe problemy w wywołaniach wideo
Widzimy, że cały proces obejmuje czynniki, takie jak urządzenie kamery nadawcy. Warunki sieciowe na końcu nadawcy i odbiorcy również odgrywają ważną rolę. Przepustowość i utracone pakiety mogą mieć wpływ na jakość wideo postrzeganą przez użytkowników.
W tym miejscu wymieniono kilka typowych problemów z wideo wraz z potencjalnymi przyczynami każdego problemu:
Użytkownik nie może zobaczyć wideo od uczestnika zdalnego
- Wideo nadawcy nie jest dostępne, gdy użytkownik go subskrybuje
- Zdalne wideo stanie się niedostępne podczas subskrybowania wideo
- Aplikacja usuwa program renderujący wideo podczas subskrybowania wideo
- Osiągnięto maksymalną liczbę aktywnych subskrypcji wideo
- Przeglądarka nadawcy wideo znajduje się w tle
- Nadawca wideo nieoczekiwanie porzucił połączenie
- Nadawca wideo napotyka problemy z siecią
- Odbiornik napotyka problemy z siecią
- Ramki są odbierane, ale nie dekodowane
Użytkownik widzi tylko klip wideo od uczestnika zdalnego
- Przeglądarka nadawcy wideo znajduje się w tle
Użytkownik doświadcza niskiej jakości wideo
- Nadawca wideo ma słabą sieć
- Odbiornik ma słabą sieć
- Duże obciążenie środowiska nadawcy lub odbiorcy wideo
- Odbiorca subskrybuje wiele przychodzących strumieni wideo