• Janus - WebRTC

    Debugging Janus sessions with rtcStats

    We all know how important it is to monitor your WebRTC infrastructure, especially in terms of checking what happens with PeerConnections as they come and go. Everything always works great in a lab, but things can go horribly wrong the moment you’re in the wild, and having access to data that can help you check, for instance, why a PeerConnection failed, or what caused it to perform poorly, can be truly invaluable. In Janus itself, there are historically two different ways of getting this data: Both these approaches work under the assumption we’re only interested in data collected from the…

  • IETF - Janus - Meetecho - MoQ - QUIC - RoQ - WebRTC

    Introducing imquic!

    These past few months I’ve shared a lot of info on my experiments with QUIC as a new transport for real-time media. I detailed my efforts on writing a basic QUIC stack, followed by deeper dives in RTP Over QUIC (RoQ) and, most importantly, Media Over QUIC (MoQT), where I tried to sketch and prototype a potential interoperability between QUIC and WebRTC as well. I eventually ended up making a presentation on all this and more at RTC.On. In all of those blog posts (and in the presentation) I mentioned a library I was working on to prototype these new…

  • IETF - Meetecho - QUIC - RoQ - WebRTC

    RoQ ‘n’ roll! (Playing with RTP Over QUIC)

    A few weeks ago I shared my experience studying and implementing QUIC from scratch: in shortly less than a month, I went from not knowing anything about QUIC, to have a basic stack (with WebTransport support) I could use for interacting with other implemenentations on simple scenarios. Getting to that point was bumpy (QUIC is not an easy protocol to implement!) but exciting as well, and I really couldn’t wait to start looking into some of the media related protocols that people are using QUIC for. In this blog post I’ll share some details on the work I did on…

  • Events - Janus - Meetecho - SIP - WebRTC

    The return of JanusCon!

    After five long years from the first edition, our Janus conference was finally back, once again in our beautiful Naples! More precisely, we met RTC developers and aficionados from all over the world on the 29th and 30th of April 2024, for two days of fun and interesting presentations. Great food was eaten, amazing weather was enjoyed, and I think we all had a lot of fun! If you want to check the recordings or the slides of the talks, you can find them in the schedule section of the JanusCon website. This is something I was really looking forward…

  • IETF - Janus - Meetecho - WebRTC

    Bandwidth Estimation (BWE) and Janus

    A few weeks ago I attended the first edition of what turned out to be a great event, RTC.On, and I took that opportunity to submit a talk on something I wanted to work on for quite some time: bandwidth estimation in WebRTC and, more specifically, Janus. The main objective of that presentation was not only to “force” myself to work on this topic and share the results, but also to try and provide everyone with some more insight on what is ostensibly one of WebRTC’s best kept “secrets”: not out of malice (at least I don’t think so), but…

  • Janus - Meetecho - WebRTC

    Improving the AudioBridge plugin

    As an audio mixer and MCU, the AudioBridge plugin is quite a popular plugin among Janus users and developers. It’s definitely a foundational component in our own Virtual Event Platform, for instance, where while we use an SFU approach for video streams, audio is always mixed instead. I mentioned efforts around this plugin a few times already, like when I discussed how to use it to build social audio applications like Clubhouse or Twitter Spaces, or how it could be bridged (pun unintended!) to the SIP world. I also stressed out the importance of audio in the WebRTC world when…

  • Janus - Meetecho - WebRTC

    Playing with VP9/AV1 simulcast (and AV1/SVC!)

    I only recently found out that Chrome has started shipping experimental support for VP9 and AV1 simulcast. If you’ve visited this blog before, you know what simulcast is already (if you don’t, make sure you read this post first!) and you may recall we’ve talked, on separate occasions, about both codecs, but typically with respect to their SVC capabilities, namely in the post on VP9/SVC support in Janus, and the one on our AV1/SVC experiments. Of course, I was very much interested in checking out how I could extend the simulcast support we have in Janus to VP9 and AV1…

  • Janus - Meetecho - WebRTC

    Playing with Lyra

    I’m always interested in testing new codecs, especially when it comes to WebRTC. Some time ago, for instance, I talked about my experiments with AV1 and H.265, AV1-SVC or multiopus. As such, when a new codec called Lyra was announced that promised to give great audio in very low bitrates, I was definitely curious. In this blog post I’ll describe the steps I went through to get it to work in browsers and, most importantly, Janus. What’s Lyra? If you’re a fan of music as I am, the world “lyra” actually doesn’t bring a codec to mind at all, but…

  • Janus - Meetecho - WebRTC

    Social audio applications with Janus

    Audio conversations that span to hundreds, if not thousands, of people have been quite the rage in the past few years. Podcasts are a good example of this success: there have never been so many as these days, and there’s a certain appeal to just listening to a conversation without the actual need for any visual aid or medium. It becomes even more interesting when you envision the possibility of more interactive conversations, where anyone from the audience can chime in at any time and share their thoughts. This has been at the basis of the success of platforms like…

  • Janus - Meetecho - WebRTC - WHEP - WHIP

    WHIP, WHEP, WHAP!

    If you’re confused about all these acronyms, you’re not alone! Those interested in WebRTC and broadcasting have probably heard about WHIP already: WHEP and WHAP maybe not as much And if you’re even more confused about why I chose a picture of Huey, Dewey and Louie as the featured image, that’s because in Italian they’re called “Qui, Quo e Qua”, which is the first thing that came to mind when I came up with the title. I know, it’s incredibly stupid, but please bear with me: I’ve just come back from my summer break! We’ve talked about WHIP, a new…