We have been at this now for 4 months. I am not a big fan of recap posts – you deserve original content. However, many of our readers are relatively new to webrtcHacks and our navigation system for finding old posts needs much improvement. It is a slow week with the US/Canada holiday so we figure this is a good time for you to catch up on some posts you may have missed. Here is a quick recap of our 21 posts and various pages so far.
In the Beginning
It all started here, with our first post – Welcome to webrtcHacks – a blog for WebRTC makers. There is no reason for you to read this unless you are nostalgic or really want to see our motivations for starting webrtcHacks.
Hard-core developers and architects and curios implementors who care about the nitty-gritty of the W3C, IETF, and 3GPP specifications should start with Victor’s A Hitchhiker’s Guide to WebRTC standardization.
Encryption Key Management Decision
One of the major decisions in the IETF was around Encryption Key management used to encrypt the WebRTC’s media streams – namely SDES which most existing VoIP networks use, if they use anything at all, verse the more secure DTLS. Victor covers the results of the decision to use DTLS and forbid SDES in his post here: WebRTC MUST implement DTLS-SRTP but… MUST NOT implement SDES?
SDP O/A Debate
MTI Video Codec Debate
Recently the Mandatory to Implement (MTI) WebRTC Video codec debate was the topic du-jour, you should see our extensive coverage on this, starting with our WebRTC mandatory video codec discussion: the final duel? Just like the debate itself, the comments are very contentious as well. We also had detailed coverage of Cisco’s and Mozilla’s OpenH264 announcement leading up to the vote – Trick or Treat? Cisco’s OpenH264.org & What it Means in the WebRTC Video Battle. For those who don’t like to read, we also put together this visual summary in this WebRTC Video Codec Debate Positions Infographic. Then the vote came – with no outcome – and we provided our thoughts here in WebRTC Video Codec Decision is… NO DECISION post. Again, we recommend looking at the comments for some great links and commentary. Expect more from us on this topic as the issue progresses with a subsequent vote in the IETF.
Networking is a critical aspect that is covered by the WebRTC standards. To help developers who have not had to deal with these layers on the OSI stack, Reid put together several posts to provide some background. Reid started out with his An Intro to WebRTC’s NAT/Firewall Problem and followed this with STUN the Network – How STUN helps WebRTC Traverse NATs.
Client-server signaling is intentionally unspecified by the WebRTC standards, yet is needed in every WebRTC application so naturally it is a hot topic. Guest author Enrico Marocco provides and detailed review of the most popular alternatives available in his Signalling Options for WebRTC Applications post.
The Why the WebRTC API has it wrong – Interview with WebRTC Object API (ORTC) co-author Iñaki Baz also touches on important signaling implications related to the SDP O/A discussion.
We also have a couple of posts that cover the peculiarities of the getUserMedia() API (gUM). Guest authors John McLaughlin, Eamonn Power and Miguel Ponce de Leon from OpenRMC provide a review of getUserMedia and dive into what happens when there is a resource error in What happens when there’s missing media sources?
I provided some of my own observations and quirkily results from experimenting with gUM requests for different camera resolutions in How to Figure Out WebRTC Camera Resolutions.
Experiments & Code
My major experiment was How to Build a Motion Detecting Baby Monitor with WebRTC that uses basic a basic WebRTC call setup and motion detection algorithm to provide an alert on motion. This is a project I plan to do some more experimentation with.
There are also code samples in:
- my How to Figure Out WebRTC Camera Resolutions post,
- Iñaki’s Why the WebRTC API has it wrong – Interview with WebRTC Object API (ORTC) co-author Iñaki Baz, and the
- OpenRMC guys’ What happens when there’s missing media sources?
One area I put a lot of work into is our Tool Vendor Directory. For background and details on the methodology for this, please see the Introducing the WebRTC Developer Tool Vendor Directory post. I also included some of my observations in WebRTC Development Tools – Where to Begin.
I have a big queue of updates to the directory I plan to make in the next few weeks. I am also mulling over open sourcing this project. This would involve putting the questions up on GitHub for public review and comment and creating some mechanisms to advertise the survey and collect responses. Thoughts on this or en(/dis)courangement from you all here would be helpful it is something you would find useful.
To help us and the industry keep track of the many WebRTC events that have been popping up, we started a WebRTC Event Directory. See our Event Directory Introduction for details on our methodology. Sadly, we have not done a great job of keeping this updated. We are considering our options for a 2014 Event Directory. Certainly let us know if you found this resource useful.
The webrtcHacks team was recently at the WebRTC Conference and Expo in Santa Clara and had our first in-person get-together since we started webrtcHacks. Reid also attended the Illinois Institute of Technology Real Time Communications (IIT-RTC) Conference and Expo and wrote a summary of that show: Strong WebRTC Signals at the IIT Real-Time Communications Conference.
Help with Pilipino Typhoon Hyian Relief
Thank you for everyone who responded to Help Typhoon Victims in the Philippines and donated! For a local view of the aftermath please look here. Shem (Cherry) and her friends also provided an update on the relief operations here. They are continuing with their relief efforts so please reach out to Shem if you would like to help.
We have a lot of posts in queue covering some big topics. Unfortunately we have limited amount of time to work on them since we are doing this in our off-work hours, otherwise we would do a lot more. We are always open to interesting, non-commercial guest posts and Q&A’s that would be beneficial to the WebRTC community. If you have an idea please let us know!