2013-07-08 24 views
18

Zastanawiam się, że istnieje narzędzie lub jakakolwiek metoda mogę zobaczyć, jakie jest podstawowe połączenie WebRTC z siecią równorzędną?Jak śledzić lub debugować sieć WebRTC połączenie peer-to-peer

Dla prostego przykładu, jeśli wdrażam czat wideo za pomocą Webrtc, wszystkie połączenia (oferta, odpowiedź, lód) są ustanowione, ale nie widzę streamingu wideo, jak mogę debugować i zobaczyć, że jest jakikolwiek pakiet lub coś wysyłania między tymi dwoma rówieśnikami, czy nie.

Odpowiedz

20

Jeśli używasz Chrome, możesz przejść do chrome://webrtc-internals. Spowoduje to wyświetlenie oferty, odpowiedzi, stanów ICE i statystyk dotyczących połączenia (po jego ustanowieniu).

Więcej debugowania dogłębnej można zobaczyć logi wszystkich pingi STUN między kandydatami zaczynając Chrome z następujących flag:

--enable-logging --v=4 

Dzienniki będzie w pliku chrome_debug.log w katalogu danych użytkownika : http://dev.chromium.org/user-experience/user-data-directory

1

Może być kilka powodów, dla których wideo nie jest przesyłane strumieniowo.

  1. Czy twój serwer ogłuszający odpowiada? Aby to sprawdzić, zapisz kandydatów na lód, które otrzymałeś w konsoli. a następnie sprawdź ich typ. jeśli twój serwer ogłuszający odpowiada, zobaczysz typ srflx, a nie tylko "host" typu ice kandydatów. Możesz także szukać ich w chrome: // webrtc-internals.

  2. Czy wstawiasz prawidłowy blok src do elementu wideo, gdy onaddstream zostanie wywołany przez obiekt RTCPeerConnection?

  3. Musisz wywołać metodę .play() na elemencie wideo jawnie ze swojego javascript, aby uruchomić zdalny strumień wideo.

1

Istnieją sposoby debugowania podstawowego stanu połączenia. Jeśli korzystasz z aplikacji internetowej, możesz przejść do statystyk przeglądarki. Dla chrome, chrome://webrtc-internals (API structure). This thread może być również pomocny (używając peerJs). W przypadku firefox, przejdź do about:webrtc.

Dla aplikacji natywnych, tj. Dla systemu Windows, dziennik został pobrany z samego kompilatora. W MS Visual Studio 2015 wypróbuj Debug> Dołącz proces> natywną aplikację PID, Debug> windows> output.