This week we have a new feature in mod_callcenter adding a ring-progressively strategy, extended the XML configuration for avmd, and changes to the pastebin API for the website! Also, ClueCon 2016 is just around the corner, register today to ensure your spot! And if you would like to attend the training day on August the 12th you will need to sign-up this week! The spaces for that are very limited and we are quickly running out. Visit https://cluecon.com/ for all the information.
Join us Wednesdays at 12:00 CT for some more FreeSWITCH fun! And, head over to freeswitch.com to learn more about FreeSWITCH support.
New features that were added:
Improvements in build system, cross platform support, and packaging:
The following bugs were squashed:
Both.
VP8 and VP9 are video codecs developed and pushed by Google. Up until recently, we had only VP8 in Chrome’s WebRTC implementation and now, we have both VP8 and VP9. This lead me to several interesting conversations with customers around if and when to adopt VP9 – or should they use H.264 instead (but that’s a story for another post).
This whole VP8 vs VP9 topic is usually misunderstood, so let me try to put some order in things.
First things first:
With that in mind, the following can be deduced:
You can use the migration to VP9 for one of two things (or both):
Let’s check these two alternatives then.
1. Improve the quality of your video experienceIf you are happy with the amount of bandwidth required by your service, then you can use the same amount of bandwidth but now that you are using VP9 and not VP8 – the quality of the video will be better.
When is this useful?
The other option is to switch to VP9 and strive to stay with the same quality you had with VP8. Since VP9 is more efficient, it will be able to maintain the same quality using less bitrate.
When is this useful?
There is some thing that is often missed. I used to know it about a decade ago and then forgot until recently, when I did the comparison between VP8 and VP9 in WebRTC on the network.
The standard practice in enterprise video conferencing is to never use more than you need. If you are trying to send a VGA resolution video, any reputable video conferencing system will not take more than 1 Mbps of bitrate – and I am being rather generous. The reason for that stems from the target market and timing.
Enterprise video conferencing has been with us for around two decades. When it started, a 1 mbps connection was but a dream for most. Companies who purchased video conferencing equipment needed (as they do today) to support multiple video conferencing sessions happening in parallel between their facilities AND maintain reasonable internet connection service for everyone in the office at the same time. It was common practice to reduce the internet connection for everyone in the company every quarter at the quarterly analyst call for example – to make sure bandwidth is properly allocated for that one video call.
Even today, most enterprise video conferencing services with legacy in their veins will limit the bitrate that WebRTC takes up in the browser – just because.
WebRTC was developed with internet thinking. And there, you take what you are given. This is why WebRTC deals less with maximum bandwidth and more with available bandwidth. You’ll see it using VP8 with Chrome – it will take up 1.77 Mbps (!) when the camera source is VGA.
This difference means that without any interference on your part, WebRTC will lean towards improving the quality of your video experience when you switch to VP9.
One thing to note here – this all changes with backend media processing, where more often than not, you’ll be more sensitive to bandwidth and might work towards limiting its amount on a per session basis anyway.
All Magic Comes with a PriceWe haven’t even discussed SVC here and it all looks like pure magic. You switch from VP8 and VP9 and life is beautiful.
Well… like all magic, VP9 also comes with a price. For start, VP9 isn’t as stable as VP8 is yet. And while this is definitely about to improve in the coming months, you should also consider the following challenges:
This is a price I am willing to pay at times – it all depends on the use case in question.
Planning on introducing WebRTC to your existing service? Schedule your free strategy session with me now.
The post VP8 vs VP9 – Is this about Quality or Bitrate? appeared first on BlogGeek.me.
http://ortc.org/wp-content/uploads/2016/05/ortc.html#change-log*
B.1 Changes since 01 March 2016tcpkali is a lightweight and easy-to-use tool that allows you to generate a traffic load with multiple TCP sessions. You push the load in one or both directions at the same time. Also the tool works easily over a NAT’ed connection. This tool is great if you need to test QoS for VoIP applications.
Here’s an example of a bidirectional load test:
# listening machine: listen on tcp port 8000, send traffic, and use 4 threads. # the program will exit in 1 hour. tcpkali -l 8000 --listen-mode=active -m X -T 1h -w 4 # connecting machine: send traffic using 4 threads and 10 simultaneous sessions # for 1 minute tcpkali 192.168.1.109:8000 -m Y -c 10 -T1m -w 4The above test between directly connected PC Engines APU2 boards has shown 1Gbps of traffic, and the average CPU load was about 50%.
The FreeSWITCH 1.6.8 release is here!
With the release of FreeSWITCH 1.6.8 we see some major improvements in the .deb based packaging. Included in this release is a fix for the freeswitch-all package. Prior to this fix, if certain FreeSWITCH Extensions were not included in the -all package, and a user attempted to install that extension via its stand-alone freeswitch-mod-extension-name package, it was possible to leave the system in a broken state. This fix does make a substantial change to the freeswitch-all package and the number of dependencies included via this package. Due to this change, a bare “apt-get upgrade” will not upgrade the package automatically and you will need to either call ‘apt-get dist-upgrade’ or call ‘apt-get upgrade freeswitch-all’ explicitly. This also brings the freeswitch-all package in line with the freeswitch-meta-all package.
Additionally with these packaging changes, Packages are now available for Ubuntu 14.04. Please see https://freeswitch.org/confluence/display/FREESWITCH/Ubuntu+14.04+Trusty for Ubuntu installation instructions.
This is also a routine maintenance release. Change Log and source tarball information below.
Release files are located here:
New features that were added:
Improvements in build system, cross platform support, and packaging:
The following bugs were squashed:
Session Description Protocol (SDP) is a fundamental, but very unintuitive concept behind how WebRTC works today. Its no wonder that the Anatomy of a WebRTC SDP post and the interactive SDP guide by Quobis CTO, Antón Román has been so popular here on webrtcHacks. With all things WebRTC, things have changed and we were due for an […]
The post Update: Anatomy of a WebRTC SDP (Antón Román) appeared first on webrtcHacks.
How will we be able to live in a world without… SDP?
The one thing I love best about the WebRTC Standards website is that it looks at a place I neglect most of the time – the IETF and W3C. While I had my share of dealings with standardizaton organizations when I was young and pretty, it isn’t something I like doing much these days.
Last month, it seems a decision was made/in the process of being made – to prohibit SDP munging. As these things go, if this happens at all it will take VERY long to happen. That said, such a change will have huge impact on a lot of services that make use of this practice.
What’s WebRTC SDP munging?SDP munging is a process of a WebRTC application taking its future in its own hands and deciding to change the SDP. With WebRTC, once the application sets the user media and connects it with a peer connection (=setting up to start a session), it receives the SDP blob that needs to be sent to the other participant in the session. This blob holds all of its capabilities and intents for the session.
If you want to learn more about the contents of the SDP, then this article on webrtcHacks will get you started.
Here’s a quick flow of what happens:
Where SDP munging takes place in WebRTCNow that the application holds the SDP blob, the question that must be asked is what can the application should/can do with this SDP blob?
The problem is in that second part.
What’s the problem with WebRTC SDP munging?SDP embodies everything that is wrong about SIP. Or at least some of what’s wrong about SIP
There are several aspects to it:
When SDP munging gets banned, existing applications that rely on it will break.
They might break completely, but mostly, they’ll break in ways that are less predictable – codecs won’t be configured in the exact way the developer intended, bitrates won’t be controlled properly, etc.
The whole idea behind SDP munging is to get more control over what the browser decides to do by default, so disabling it means losing that control you had.
When is this change expected?Not soon, if at all.
That said, I wouldn’t recommend ignoring it.
What I’ve understood is that there’s little chatter about this on the standards mailing lists, so this just might die out.
The reason I think it is important is because at the end of the day, munging the SDP leaves you prone to whims of browser vendors as well as leaves you open to this future option of banning SDP munging.
What should you do about it?First of all – don’t worry. This one will take time. That said, better plan ahead of time and not be surprised in the future. Here’s what I’d do:
Planning on introducing WebRTC to your existing service? Schedule your free strategy session with me now.
The post What if WebRTC SDP Munging was Prohibited? appeared first on BlogGeek.me.
This week there were improvements to mod_conference and libvpx and the addition of a xml configuration file to avmd to allow for easily configurable parameters.
Join us Wednesdays at 12:00 CT for some more FreeSWITCH fun! And, head over to freeswitch.com to learn more about FreeSWITCH support.
New features that were added:
Improvements in build system, cross platform support, and packaging:
The following bugs were squashed:
If the only thing you have is IP calling, then why are you investing in a Slack integration this late in the game?
Looking for gold in Slack by adding WebRTC calls to it?Slack is a rising star. It has a small and growing set of users, some of which are happy to pay for the service. When it works, it is great. When it doesn’t, well… it then just feels like any other UC or enterprise communication service. I find myself using Slack more and more. Not necessarily because I need to, but rather because I am drawn to it by the teams I collaborate with. I like the experience.
In the last few months it seems that everyone is rushing to Slack, trying to build their own WebRTC integration with it. The latest casualty? LyteSpark.
Browsing Slack’s App Directory, I found the following WebRTC based services under the Communications category:
There are others, not in the marketplace, and probably a few others in other categories or ones that I just missed.
The problem with many of them is that Slack is actively adding VoIP now – using WebRTC of course.
As I always stated, WebRTC downgrades real time communications from a service to a feature. And now, Slack is adding this feature themselves.
The problem now becomes that these WebRTC services are competing with the built-in feature of Slack – something that will be infinitely easier and simpler to use – especially on mobile, where it is just there. What would be the incentive then to use a Hangouts bot when I can just start the same functionality from Slack without any integration? This is doubly so for free accounts, which are limited to 10 integrations.
The only WebRTC services that can make sense in such a case, are those that have some distinct added value that isn’t available (or easily available through roadmap of Slack). It boils down to two capabilities:
This Slack-rush of WebRTC services seems a bit unchecked. Basking under the light of WebRTC doesn’t work anymore, so time to move to some other hype-rich territory, and what better place than Slack? Problem is, without a real business problem to solve (conducting a video call over the web isn’t a business problem), Slack won’t be the solution.
Planning on introducing WebRTC to your existing service? Schedule your free strategy session with me now.
The post The WebRTC Slack-Rush appeared first on BlogGeek.me.
GPUs is most probably where we’re headed.
A couple of months ago, I was approached by SURF. An Israeli vendor specializing in server media processing. As many of its peers, SURF has been migrating from hardware based DSP systems to software systems in their architecture. As they’ve entered the WebRTC space, they wanted to have a whitepaper on the topic, and I accepted the challenge.
The end result? WebRTC Server Side Media Processing: Simplified
Download the whitepaperTwo things that I wanted to share here:
#1 – WebRTC Server Side Media Processing is realWhat made writing this whitepaper so interesting for me was the fact that there really is a transition happening – not to using WebRTC – that already happened as far as I can tell. It is something different. A transition from simple WebRTC services that require a bit of signaling to services that process the media in the backend. This processing can be anything from recording to gatewaying, streaming, interoperating or modifying media in transit. And it seems like many commercial use cases that start simple end up requiring some kind of server side media processing.
In the span of the last two months, I’ve seen quite a few services that ended up building some WebRTC server side media processing for their use case. Maybe it is just related to the research I did around this are for the whitepaper, but I think it is more than that.
#2 – The Future Lies in GPUsAs I was working on the whitepaper, this one got published by Jeff Atwood – it is about AI winning a game of Go. Or more accurately, how GPUs are a part of it:
GPUs are still doubling in performance every few years
The whole piece is really interesting and a great read. It also fits well with my own understanding and knowledge of video compression (=not that much).
Two decades ago, video compression was a game of ASIC – the ugliest piece of technology possible. Hard to design and develop. You wanted to implement a new video codec? Great. Carve a few years for the task and a couple of millions to get there. They are hard to design and hard to program for.
Later it was all DSP. Still hard and ugly, but somewhat cheaper and with some flexibility as to what can get done with them. DSPs is what powers most of our phones when it comes to recording and playing back videos. It works pretty well and made it seem as if the device in our pocket is really powerful – until you try using its CPU like a real PC.
GPUs were always there, but mostly for gaming. They do well with polygons and things related to 2D and 3G graphics, but were never really utilized for video compression. Or at least that’s what I thought. I heard of CUDA in passing. Heard it was hard to program for. That was something like 5 years ago I believe.
Then I read about GPUs being used to break hashes, which was an indication of their use elsewhere. The Jeff Atwood piece indicated that there are other workloads that can benefit from GPUs. Especially ones that can be parallelized, and to some extent, video compression is such a task. It is also where SURF is focusing with its own server media processing, which places them in the future of that field.
GPUs are no longer used only for gaming or in our PCs and laptops – they are also being deployed in the cloud. They assist companies running Audocad in the cloud (heard such a story in the recent WebRTC Global Summit event), so why not use them for video compression when possible?
–
If you are interested in WebRTC and how media processing is finding its way to the server, and how that fits in with words like cloud and GPU, then take a look at this new whitepaper. I hope you’ll enjoy reading it as much as I’ve enjoyed writing it.
Download and read this new WebRTC whitepaper.
The post WebRTC and Server GPUs? A whitepaper appeared first on BlogGeek.me.
Progressing nicely – of course.
Checking the pulse of WebRTCIt’s been 5 years since WebRTC came to our lives. Different people count it from different times. I heard in the last month or two the years 2009, 2010 and 2011 stated as the year of birth of WebRTC. While no one should really care, for me, WebRTC started with Google’s announcement of WebRTC in May 2011. It was the first time Google publicly stated its plans for its GIPS acquisition, and it came out as an open source package that was planned to get integrated into browsers and be called WebRTC. I was a CTO at a business unit licensing VoIP products to developers. The moment I saw it, I knew everything was going to change. It was one of the main reasons I left that job, and got to where I am today, so it certainly changed everything for me.
As we head towards Mat of 2016, it is time to look a bit at the 5 years that passed – or more accurately the 5th year of WebRTC.
One one hand, it seems that nothing changed. A year ago, Chrome and Firefox supported WebRTC. That’s on Windows, Mac OS X, Linux and Android. Today, we’re pretty much in the same position.
On the other hand, adoption of WebRTC is huge and its impact on markets is profound; oh – and both Microsoft and Apple seem to be warming up to the idea of WebRTC – each in his own way.
If you are interested in a good visual, then my WebRTC infographic from December 2015 is what you’re looking for. If it is numbers and trends today, then read on.
951 Vendors and Project – and growingI’ve been tracking the vendors and projects of WebRTC since 2013, actively looking for them and handpicking relevant projects that are more than 10 lines of code and any vendor I saw. It turned into one of the services I have on offer – access to this actively growing (and changing) dataset of WebRTC vendors.
Earlier this month, the WebRTC dataset had the following interesting numbers:
What is interesting is that these vendors and projects are always evolving. They aren’t only limited to startups or large enterprises. They aren’t specific to a certain vertical. They cut through whole industries. Just this week a new use cases popped – movers who can give a price quote without being on site. Will it fly? Who knows.
We’ve been witnessing a surge in communication services. We are not limited today by concepts of Telephony or Unified Communications. These became use cases within a larger market.
What is different now is that the new projects and vendors don’t come with VoIP pedigree. They are no longer VoIP people who decided to do something with WebRTC. Most of them are experts in communications – not digital communications, but communications within their own market niche. Check out the interview from last week with Lori Van Deloo of BancSpace – she knows her way in banking.
API Platforms are MaturingCommunication API platforms using WebRTC are maturing. Many of them have the basics covered and are moving further – either vertically or horizontally. Vertically by deepening their support of a specific capability or horizontally by adding more communication means. You can read my WebRTC API report on it. I am in the process of updaing it.
What is interesting is how this space is being threatened from two different domains:
This is affecting the decision making process of those who need to roll out their own services, making the technology more accessible, but at the same time more complex and confusing when the time comes to pick a vendor to lean on.
Verticals are Fragmenting FurtherWhat does a communication solution in healthcare looks like?
If you ask a Unified Communications vendor, it will be able having a room system everywhere and enabling doctors/nurses/patients communicate.
I had conversations with these types of health related vendors:
Each of these is a world unto its own, and to think we’ve looked at them all through the prism of Unified Communications or even the “healthcare vertical”.
WebRTC brought with it the ability to hone in on specific market needs.
–
WebRTC is already ubiquitous. As with any technology, its has its rough edges and challenges.
I’ve dealt with developing VoIP products for the better part of the last two decades – I can tell you hands down that never before did we have the alternatives to do what we can today. If you have VoIP on your mind, then WebRTC should be the first thing to try out as a component in your solution.
The post Where are we with WebRTC? appeared first on BlogGeek.me.
Lorenzo will be talking about the SIPCAPTURE stack HOMER. “A robust, carrier-grade and modular VoIP and RTC Capture Framework for Analysis and Monitoring with native support for all major OSS Voice platforms and vendor-agnostic Capture agents. HOMER counts thousands of deployments worldwide including notorious industry vendors, voice network operators and fortune 500 enterprises, providing advanced search, end-to-end analysis and packet drill-down capabilities for ITSPs, VoIP Providers and Trunk Suppliers using and relying on VoIP services and RTC technologies – All 100% Open-Source.”
This week we added support for hepv2 and hepv3 in sofia! Also, mod_spy now works with verto channels.
Join us Wednesdays at 12:00 CT for some more FreeSWITCH fun! And, head over to freeswitch.com to learn more about FreeSWITCH support.
New features that were added:
Improvements in build system, cross platform support, and packaging:
The following bugs were squashed:
Well… Almost.
For those who haven’t been following the path Skype is taking, here’s a quick recap of the last year or so:
That last bit near the end? Of Skype not needing plugins when executed on Edge? That was rather expected.
Microsoft is hard at work on adding RTC to Edge – be it ORTC or WebRTC – or both.
The main UC and consumer messaging service of Microsoft are based on Skype, so it is only reasonable to assume that Skype would be utilizing Edge capabilities in this are AND that Edge would be accommodating for Skype’s needs.
This accommodation comes by way of the first video codec that Edge supports – H.264UC – Skype’s own proprietary video codec. Edge doesn’t interoperate with any other browser when it comes to video calling due to this decision. In a way, The Edge team sacrificed interoperability for Skype support.
Browser vendors tend to care for themselves first. And then for the rest of the industry:
Hangouts today is in the same predicament as Skype in a lot of ways.
Where do they diverge?
No Plugin+SDK=InterestingSkype has added the SDK bit before Hangouts.
Skype now offers its large user base and infrastructure to 3rd party developers to build their own services. The documentation is quite extensive (too much to go through to get things done if you ask me – especially compared to the WebRTC API platforms) and the intent is clear.
Skype doesn’t have a glorious record with developers. Maybe this time around it will be different.
And it added bots.
They did that ahead of the rumored bot support by Google.
Where’s Hangouts?Meanwhile, Hangouts is just the same as it were two or three years ago.
The backend probably changed. It now sometimes do P2P calling. And it has a new UI. And the old one. And you can never know which one will pop up for you. Or where to write (or read) that text message.
Something needs to change and improve with Hangouts.
Skype seems to be moving forward at a nice pace. Cisco Spark has its own forward motion.
But Hangouts has stalled – especially considering we’re talking about Google – a company that can move at breakneck speeds when needed.
I wonder what’s ahead of us from both these services.
The post Skype will go the Hangouts Route with WebRTC (or vice versa?) appeared first on BlogGeek.me.
Since July, 2013, the W3C Object Real-Time Communications (ORTC) Community Group has been actively working on a next generation WebRTC API, called ORTC. Robin will discuss the latest updates of the ORTC API, the remaining challenge areas, and the implementation status of ORTC-lib. And he will show the detailed event capabilities for ORTC-lib.
Two weeks ago Microsoft’s Bernard Aboba (and former webrtcHack’s interviewee) gave an update on Edge’s ORTC and WebRTC at the Microsoft Build conference. He covered some big topics including VP8 and WebRTC 1.0 support. You can see the update video here or read the follow-up post for details. Then last week Microsoft announced plug-in free Skype […]
The post Sharpening the Edge – extended Q&A with Microsoft for RTC devs appeared first on webrtcHacks.
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.
Wow, this most certainly is a great a theme.
Donec sed odio dui. Nulla vitae elit libero, a pharetra augue. Nullam id dolor id nibh ultricies vehicula ut id elit. Integer posuere erat a ante venenatis dapibus posuere velit aliquet.
Donec sed odio dui. Nulla vitae elit libero, a pharetra augue. Nullam id dolor id nibh ultricies vehicula ut id elit. Integer posuere erat a ante venenatis dapibus posuere velit aliquet.