The Missing chrome://webrtc-internals Documentation

There’s a wealth of information tucked into the chrome://webrtc-internals tab, but there was up until recently very little documentation about it. So we set out to solve that, and with the assistance of Philipp Hancke wrote a series of articles on what you can find in webrtc-internals and how to make use of it.

The result? The most up to date (and complete) webrtc-internals documentation.

To make sure it doesn’t get lost, here are the links to the various articles:

  1. webrtc-internals and getstats parameters – a detailed view of webrtc-internals and the getstats() parameters it collects
  2. active connections in webrtc-internals – an explanation of how to find the active connection in webrtc-internals – and how to wrap back from there to find the ICE candidates of the active connection
  3. webrtc-internals API trace – a guide on what to expect in the API trace for a successful WebRTC session, along with some typical failure cases


How to Get Started Learning WebRTC Development •

[…] and monitoring tools: to include, at a minimum, how to read webrtc-internals dump files and understand ICE […]

WebRTC Externals - the cross-browser WebRTC debug extension - webrtcHacks

[…] a lot easier. I even wrote a lengthy series of blog post together with Tsahi Levent-Levi describing how to use it to debug issues […]

Stewart Moon

Hi, thank you for putting together all of this great documentation on WebRTC. You truly have helped me do a better job at work.

I do have one question, I’m having trouble using the code Fippo contributed

After I download the github repository. I open the .html files with chrome and upload the “data dump”, I’m unable to get the pretty graph that was presented on the documentation, but I’m unable to get the graph.

I would really appreciate any response that can help me get to the point of using the graph that is on the documentation.


    Philipp Hancke

    Hi Stewart,

    is it just the graph not showing up? is including the highcharts library in a way which will not work when you open the file from the local file system. The javascript console will show something along the lines of “Failed to load resource: net::ERR_FILE_NOT_FOUND”.
    I’m tempted to just change this to always use a https url…

    If that is not the problem, does the javascript console give any hints?


      Hi Philipp,

      It sounds like my problem is that I am running in from the local file system.

      When I load the the index.html file into a webpage.
      The website prompts me for the Data Dump

      When I load the rtcstats.html file it is blank. The website prompts me for the Data Dump, but never loads anything or throws an error after I select the Data Dump file.

      I have tried this both in IE and Chrome.
      It sounds like I am opening it in the local file system. Where and how do I open it not from the local file system?


webrtcH4cKS: ~ WebRTC Externals – the cross-browser WebRTC debug extension | AllThingsRTC

[…] I am a big fan of Chrome’s webrtc-internals tool. It is one of the most useful debugging tools for WebRTC and when it was added to Chrome back in 2012 it made my life a lot easier. I even wrote a lengthy series of blog post together with Tsahi Levent-Levi describing how to use it to debug issues recently. […]

You Better Ignore the Default Protocol Ports You Implement •

[…] how a couple of services I checked almost on random do this properly (I’ve used chrome://webrtc-internals to get […]

How WebRTC Statistics and Performance Monitoring Changed VoIP Monitoring •

[…] With WebRTC, there are only a handful of browsers (4 to be exact), and they all adhere to the same API (that would be WebRTC). And they all have that thing called getstats() implemented in them. These get the same information you find in chrome://webrtc-internals. […]

YouTube Does WebRTC - Here's How - webrtcHacks

[…] After getUserMedia  we can dive into the RTCPeerConnection  API calls. If you want to learn more about this see either the previous post on how Hangouts uses WebRTC or the more complete webrtc-internals documentation on the TestRTC blog. […]

Comments are closed