Checking in on WebRTC (webrtcHacks)

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
I'm just gonna spend a few minutes doing a quick check-in and maybe before I start I asked us every time how many of you actually have been to this meetup before the Weber C Boston meetup and how many of you are working with WebRTC or real-time communications in some capacity right and our most of you how many of you are web developers or do web development and how about how about mobile all right we have a pretty good mix a little bit of everything so which happens all this so I'm gonna spend a little bit of time here do some real brief intro stuff I've covered it's a little bit every event there's a lot of great resources definitely come ask me and some of the other oversee experts out there if you need some help getting started web RTC you want to know where to go I'm gonna touch on a few topics especially the ones they're gonna come through and some of their presentations just for a little bit about me I guess you know what why am I doing this one is I'm an independent consultant my work with you know real-time communications companies and helps and help companies implement WebRTC I mostly do you know product management product marketing type work from the relatively early days of WebRTC I started a blog with a few colleagues called Weber C hacks which I still maintain it's a good resource I get a lot of you know it's numb it's not just me writing it's actually mostly not me writing it we go out and try to find experts on different topics to explain that and really serve the Weber C developer community lately I've also been getting a lot more involved than AI and you know how the intersection of real-time communications with topics like computer vision and speech analytics and I mentioned previously the cranky geek event series again if you're interested in additional talks videos this sort of thing there's a much more there so maybe the start I usually talk about you know some specific examples or new companies or use cases or people doing things with WebRTC so what are some of the things you can do Weber C well you know one good example here is peloton you mightest and their advertising quite a bit my wife bought one of these about a year ago this actually uses WebRTC to it's basically a spin bike what they have that you get for your house in the home and they use WebRTC to livestream and instructor to basically a spin class in your house so you have the feeling of being inside a spin exercise class with a bunch of people I mean seeing the instructor in real time but you're in the comfort of your home right and they use WebRTC here for the low latency real-time streaming another great example I don't know if there's gamers out here you've probably heard of discord which is a gamer chat system that includes you have not only type chat but also audio video and screen share allow them to say their games they use WebRTC for all those functions and especially in a gaming environment and your multiplayer gaming low latency is critical and Weber C really helps their whoever sees not just about audio video cameras and and microphones either though right Weber C also can help with just low latency peer-to-peer streaming through firewalls one of my favorite projects is web torrent which is basically BitTorrent for the web leveraging WebRTC to do BitTorrent streaming and large file transfers to scenarios whoever sees actually also secure it's great for secure communications Edward Snowden one of these activities is he's involved in the freedom of the press foundation they actually recommend Weber C in this case is an example of jitsi is one weber CA open-source web to see application but they recommend Weber see because it's secure encrypted end-to-end and you're able to run and load your own server should you want to do do so for maximum security talk a little bit what can you get with Weber to see so the first thing and you know the the API here I'm referencing the Web API but just bear in mind there's similar API is available for native mobile and other environments too so you get camera and microphone capture you can even grab a video feed and the microphone feed but you know more than that especially most devices now or like I have you know multiple things plugged in so you need to be able to determine which camera or which microphone you want to grab right so whoever see also has the ability to enumerate devices basically let you know which element to pick it also lets you pick your output audio device right so if you have you know headphones speakers you know front-facing rear-facing you know cameras that sort of thing let's you you know select output audio devices another great use case application unless you grab your part or your entire desktop right with the get display media API for screen sharing use cases and applications it also lets you record right so any of those media streams that you grab you can record with the media recorder API and as I mentioned earlier whoever sees not just about you ever see you know also lets you connect those real-time communication streams from one party to another and that's done via the peerconnection API and a number of lower level api is if you want to get into that it's not just about media and you know humans talking to other humans as I mentioned earlier whoever C also has this great data channel functionality which is set up and operates a lot like a WebSocket but in a peer-to-peer fashion alright between two browsers or two two endpoints all right without having to have a server in between and whatever you see and this is actually one area that call stats is a particular expert in since they help to write some of this spec wherever C also has API to give you statistics on how well your connection is running about quality issues and and bandwidth estimation right so there's there's all these this great set of API is that are pretty comprehensive that give you a lot of power a lot of capabilities and in most cases you know these API is there's versions of them that are relatively high level that you don't need to go super deep however if you're operating a service and you want to go super deep in almost every case there's now you know lower level API is that will give you more controls allow you to do additional fine-tuning should you want to do that Weber see actually it's taking a little while but has pretty good support I don't think anyone cares about internet explorer anymore that's kind of a lost cause but Google obviously pretty good Mozilla have had it for a long time Marc's top edge is actually a pretty good support that'll be initiative use case as they transition their engine from to the blink engine you know hopefully they'll maintain parity there but that doesn't seem like there's any reason to believe they're gonna lose any Weber C capabilities and Apple took them a little while they're a little bit late to the game with things but they've been making steady and very good progress in their implementation both for desktop and for iOS now probably the sore point is actually running Chrome and Firefox on iOS largely because Apple still requires that browser vendors use its own version of WebKit and you know Google and Mozilla who have their own rendering engines don't really want to switch over that and usually the whoever C stack follows that we'll see how that plays out over time but in general you get Weber C pretty much everywhere now there's also a great support within most native environments so mobile on Android you know Weber C is initially started out as a Google initiative it's always been very strong support on Android marker soft is very much in the Weber C game there's a lot of great tools and applications for Windows ewp that Universal Windows platform that they've been adding in and there's you know cocoapods and a long list of other api's for iOS and as i mentioned now even for mac OS as safari and the WebKit act support for WebP urgency it's easier than ever to add whatever to see in real time communications to your applications and there's a lot of different ways to do it depending on your preferences and your architectural needs so I did want to talk a little bit about servers because there's a couple of these topics they're gonna come up there are servers that are needed you know Weber C is a peer-to-peer technology but you do need to have a signaling server to set up the signaling right Rob will probably talk a little bit about gateways right if you want to connect WebRTC to something like the telephone network and I'll talk about natural virtual in a moment so one of the great things about WebRTC is it has the ability to help traverse firewalls and and do network you know and deal with network address translation right to allow some of these peer-to-peer connections I'm not gonna go into a lot of time but I will say if you're a new developer one of the biggest problems and challenges you see is people don't think about the stone and turn server alright stun servers are probably pretty easy you actually get use you know the Google ones for free turn servers are actually act like a network relay there's a lot of reasons why for whatever we you know there's a lot of reasons why point a might not be able to get to point B in a peer-to-peer fashion right in those cases the turn server acts like a relay to do that usually it's like ten percent you know maybe 20 percent in a strict fire you know strict enterprise for our wall sometimes as low as a couple percentage right but if you're running a production grade service we're gonna have you know hundreds of thousands of his users you're gonna run into these scenario so don't forget to turns around all right you also might need to have a media server for different applications and use cases and you know the presenters today we're going to talk about some of these I did want to just introduce a couple concepts just so you understand when it comes up in conversation so if you have say a bunch of people in this case I'm showing six right and you want to send a real-time communication stream between those parties there's a couple different ways you can do that the easiest and probably the you know the one that doesn't require any special infrastructure is just to send a bunch of different streams from party party back and forth the challenge with that is as you can see it starts to add up pretty quick the number of streams at every individual client and bear in mind this is a web browser the client has a web browser it could be a mobile phone it's pretty easy for it to get overwhelmed pretty quickly as that conference scales up right you you end up with this exponential problem the preferred you know kind of best practice method in most cases for dealing with that is to use a media router type element called a selective forwarding unit and this is just a special type of media server again I bring this up because you're gonna see it a few times just referenced SFU but when you think you know CSF you just think of this is a media server element that sits in the cloud that helps to direct Weber C streams to you know the appropriate endpoints and just to wrap up before we get to our next speaker I didn't want to talk a little bit about you know not just what whoever C has today but also what's next and what's coming with that and the core Weber C spec 1.0 is for all intents and purposes done right so what's coming next there's a lot of exciting things in one area that I you know I'm personally very excited about is just allowing Weber C to leverage machine learning based you know applications like computer vision and like speech analytics like doing speech effects that sort of thing so the standards bodies are actually looking into some of these use cases and I love like they call this they have a funny hats use case right and we've all seen these and you know social media applications we put a mustache in somebody or or or a hat right they want to enable all these things and allow you to do them easily inside a browser right and you know just as an example but you know certainly going way beyond that the original you know Weber C vision had this idea of a peer connection right was just basically one API that took care of everything for you and your your application sat on top of that that's not going to change you know that peerconnection API is still there but there has been a lot of work to basically add more controls and more capabilities and lower level api's the two WebRTC to allow you to do more this is already exist a lot of this exists today and you know as Weber see it evolve Xand moves forward more of these api's are going to be exposed and a really interesting talk that Google gave at the last cranky geek event they talked a little bit of how they want to be able to allow some of these api's to plug into something like web assembly where this would allow you to basically have maximum code portability you can reuse the same code and your your you native iOS or Android application compile at the web assembly and allow something you know a lot Weber C to plug into that you know be that a low level you know speech analytics or noise detection algorithm they showed an example of that or it could potentially even be some kind of specialized audio or video codec there's also a lot of great new technologies in advancements of technology is coming to Weber to see you might have heard of a new you know video called you know codec called a v1 from the open media Alliance right with the idea here is like you know a bunch of major players today basically all the you know major players inside media got together and decided that there shouldn't be royalty based codecs anymore that people have to pay for likes the case with h.264 today these new codecs you know they allow much greater compression much higher bandwidth for the same you know same processing power or same bandwidth so these really help push things forward and another you know new transport protocol technology quick actually what a Googler ian sweat a couple years ago gave a great talk on this actually here at Weber State Boston this will open up some new opportunities and improve performance there as well you
Info
Channel: WebRTC Boston
Views: 5,081
Rating: undefined out of 5
Keywords: webrtc, google developers group
Id: ptnceQZ4fPg
Channel Id: undefined
Length: 14min 49sec (889 seconds)
Published: Mon Feb 25 2019
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.