webrtchacks

Subscribe to webrtchacks feed
Guides and information for WebRTC developers
Updated: 2 hours 10 min ago

and the WebRTC Open Source Popularity Contest Winner is…

Tue, 09/24/2019 - 13:49

An analysis of the most popular open-source WebRTC repos on GitHub with a review of how WebRTC itself is doing there.

Continue reading and the WebRTC Open Source Popularity Contest Winner is… at webrtcHacks.

The WhatsApp RTCP exploit – what might have happened?

Fri, 05/17/2019 - 10:15

As you may have heard, Whatsapp discovered a security issue in their client which was actively exploited in the wild. The exploit did not require the target to pick up the call which is really scary.
Since there are not many facts to go on, lets do some tea reading…

The security advisory issued by Facebook says

A buffer overflow vulnerability in WhatsApp VOIP stack allowed remote code execution via specially crafted series of SRTCP packets sent to a target phone number.

Continue reading The WhatsApp RTCP exploit – what might have happened? at webrtcHacks.

Bisecting Browser Bugs (Arne Georg Gisnås Gleditsch)

Tue, 05/14/2019 - 13:55

When running WebRTC at scale, you end up hitting issues and frequent regressions. Being able to quickly identify what exactly broke is key to either preventing a regression from landing in Chrome Stable or adapting your own code to avoid the problem. Chrome’s bisect-builds.py tool makes this process much easier than you would suspect. Arne from appear.in gives you an example of how he used this to workaround an issue that came up recently.
{“editor”, “Philipp Hancke“}

In this post I am going to provide a blow-by-blow account of how a change to Chrome triggered a bug in appear.in and how we went about determining exactly what that change was.

Continue reading Bisecting Browser Bugs (Arne Georg Gisnås Gleditsch) at webrtcHacks.

Finding the Warts in WebAssembly+WebRTC

Thu, 04/11/2019 - 14:34

A while ago we looked at how Zoom was avoiding WebRTC by using WebAssembly to ship their own audio and video codecs instead of using the ones built into the browser’s WebRTC.  I found an interesting branch in Google’s main (and sadly mostly abandoned) WebRTC sample application apprtc this past January. The branch is named wartc… a name which is going to stick as warts!

The repo contains a number of experiments related to compiling the webrtc.org library as WebAssembly and evaluating the performance.

Continue reading Finding the Warts in WebAssembly+WebRTC at webrtcHacks.

How Janus Battled libFuzzer and Won (Alessandro Toppi)

Wed, 03/06/2019 - 19:35

Thanks to work initiated by Google Project Zero, fuzzing has become a popular topic within WebRTC since late last year.  It was clear WebRTC was lacking in this area. However, the community has shown its strength by giving this topic an immense amount of focus and resolving many issues.  In a previous post, we showed how to break the Janus Server RTCP parser. The Meetecho team behind Janus did not take that lightly. They got to the bottom of what turned out to be quite a big project.

Continue reading How Janus Battled libFuzzer and Won (Alessandro Toppi) at webrtcHacks.

Lets get better at fuzzing in 2019 – here’s how

Fri, 12/14/2018 - 11:47

Tribbles Startrek GIF from Tribbles GIFs

Fuzzing is a Quality Assurance and security testing technique that provides unexpected, often random data to a program input to try to break it. Natalie Silvanovich from Google’s Project Zero team has had quite some fun fuzzing various different RTP implementations recently.

She found vulnerabilities in:

  • WebRTC — mostly issues in the RTP payload
  • Facetime – a few out-of-bounds, stack corruption, and heap corruption issues
  • Whatsapp and what didn’t work

In a nutshell, she found a bunch of vulnerabilities just by throwing unexpected input at parsers.

Continue reading Lets get better at fuzzing in 2019 – here’s how at webrtcHacks.

How Zoom’s web client avoids using WebRTC

Tue, 10/23/2018 - 10:30

Zoom has a web client that allows a participant to join meetings without downloading their app. Chris Koehncke was excited to see how this worked (watch him at the upcoming KrankyGeek event!) so we gave it a try. It worked, removing the download barrier. The quality was acceptable and we had a good chat for half an hour.

Opening chrome://webrtc-internals showed only getUserMedia being used for accessing camera and microphone but no RTCPeerConnection like a WebRTC call should have.

Continue reading How Zoom’s web client avoids using WebRTC at webrtcHacks.

Breaking Point: WebRTC SFU Load Testing (Alex Gouaillard)

Fri, 10/19/2018 - 05:47

If you plan to have multiple participants in your WebRTC calls then you will probably end up using a Selective Forwarding Unit (SFU).  Capacity planning for SFU’s can be difficult – there are estimates to be made for where they should be placed, how much bandwidth they will consume, and what kind of servers you need.

To help network architects and WebRTC engineers make some of these decisions, webrtcHacks contributor Dr. Alex Gouaillard and his team at CoSMo Software put together a load test suite to measure load vs.

Continue reading Breaking Point: WebRTC SFU Load Testing (Alex Gouaillard) at webrtcHacks.

Messenger was not forced to wiretap but…

Mon, 10/01/2018 - 22:26

By david drexler – Flickr, CC BY 2.0, Link

 

Back in August, Reuters reported on a “secret legal fight” between the FBI and Facebook about wiretapping Messenger calls. The Verge as they found our old post about reverse-engineering Messenger from 2015 and had a number of follow-up questions on it for a Messenger wiretapping article they ran. Technical details on the case are quite hard to find so I was not able to dig deeper into the specifics around wiretapping.

Continue reading Messenger was not forced to wiretap but… at webrtcHacks.

Guide to WebRTC with Safari in the Wild (Chad Phillips)

Fri, 09/07/2018 - 13:55

I has been more than a year since Apple first added WebRTC support to Safari. My original post reviewing the implementation continues to be popular here, but it does not reflect some of the updates since the first limited release. More importantly, given its differences and limitations, many questions still remained on how to best develop WebRTC applications for Safari.

I ran into Chad Phillips at Cluecon (again) this year and we ended up talking about his arduous experience making WebRTC work on Safari.

Continue reading Guide to WebRTC with Safari in the Wild (Chad Phillips) at webrtcHacks.

VR Video Calling with WebRTC and WebVR (Dan Jenkins)

Tue, 08/28/2018 - 03:31

WebRTC isn’t the only cool media API on the Web Platform. The Web Virtual Reality (WebVR) spec was introduced a few years ago to bring support for virtual reality devices in a web browser. It has since been migrated to the newer WebXR Device API Specification.

I was at ClueCon earlier this summer where Dan Jenkins gave a talk showing that it is relatively easy to add a WebRTC video conference streams into a virtual reality environment using WebVR using FreeSWITCH.

Continue reading VR Video Calling with WebRTC and WebVR (Dan Jenkins) at webrtcHacks.

Suspending Simulcast Streams for Savvy Streamlining (Brian Baldino)

Mon, 08/06/2018 - 09:27

If you’re new to WebRTC, Jitsi was the first open source Selective Forwarding Unit (SFU) and continues to be one of the most popular WebRTC platforms. They were in the news last week because their parent group inside Atlassian was sold off to Slack but the team clarified this does not have any impact on the Jitsi […]

The post Suspending Simulcast Streams for Savvy Streamlining (Brian Baldino) appeared first on webrtcHacks.

A playground for Simulcast without an SFU

Tue, 07/31/2018 - 16:47

Simulcast is one of the more interesting aspects of WebRTC for multiparty conferencing. In a nutshell, it means sending three different resolution (spatial scalability) and different frame rates (temporal scalability) at the same time. Oscar Divorra’s post contains the full details. Usually, one needs a SFU to take advantage of simulcast. But there is a […]

The post A playground for Simulcast without an SFU appeared first on webrtcHacks.

Chrome Screensharing Blues – preparing for getDisplayMedia

Thu, 06/14/2018 - 15:33

The Chrome Webstore has decided to stop allowing inline installation for Chrome extensions. This has quite an impact on WebRTC applications since screensharing in Chrome currently requires an extension. Will the [crayon-5b2272a8d9b0f447286991-i/] API come to the rescue? Screensharing in Chrome When screensharing was introduced in Chrome 33, it required implementation via an extension as a way to […]

The post Chrome Screensharing Blues – preparing for getDisplayMedia appeared first on webrtcHacks.

Smile, You’re on WebRTC – Using ML Kit for Smile Detection

Tue, 06/12/2018 - 03:39

Now that it is getting relatively easy to setup video calls (most of the time), we can move on to doing fun things with the video stream. With new advancements in Machine Learning (ML) and a growing number of API’s and libraries out there, computer vision is also getting  easier to do. Google’s ML Kit is […]

The post Smile, You’re on WebRTC – Using ML Kit for Smile Detection appeared first on webrtcHacks.

Autoplay restrictions and WebRTC (Dag-Inge Aas)

Mon, 05/07/2018 - 16:20

One of the great things about WebRTC is that it is built right into the web platform. The web platform is generally great for WebRTC, but occasionally it can cause huge headaches when specific WebRTC needs do not exactly align with more general browser usage requirements. The latest example of this is has to do […]

The post Autoplay restrictions and WebRTC (Dag-Inge Aas) appeared first on webrtcHacks.

Pages

Using the greatness of Parallax

Phosfluorescently utilize future-proof scenarios whereas timely leadership skills. Seamlessly administrate maintainable quality vectors whereas proactive mindshare.

Dramatically plagiarize visionary internal or "organic" sources via process-centric. Compellingly exploit worldwide communities for high standards in growth strategies.

Get free trial

Wow, this most certainly is a great a theme.

John Smith
Company name

Startup Growth Lite is a free theme, contributed to the Drupal Community by More than Themes.