It isn’t about money or resources.
Last week I decided to weigh in on WebRTC in WebKit and why it makes no sense. Some didn’t like what I had to say. Others thought I was insulting them personally. I weren’t.
Before I dig in to the reasons why Apple doesn’t have WebRTC implemented yet, I want to make things a bit clearer on that previous post of mine:
- WebRTC in X, be it WebKit or anything else has value
- That said, I fail to see the value in WebRTC in WebKit to those currently putting the effort into it
- And I don’t think WebRTC in WebKit is a game changer in any way
If you wish to discuss the above, head to that previous post – plenty of room there for debates.
Now onward to Apple.
The day Apple decides to add WebRTC it will probably get it done through WebKit as the technical vehicle. The reason for that is obvious – that’s the web renderer it has inside Safari, its browser on Mac, iOS and iPad. It might take the route Microsoft did with Spartan, but that’s far fetched – I don’t think Apple see WebKit as broken, so they won’t fix it.
The day Apple decides to add WebRTC they will put the manpower to do so. And they will invest good money in it. Probably more than what all those putting the effort now on WebRTC in WebKit are investing combined.
The day Apple decides to add WebRTC they will not tell anyone.
And that day might have been yesterday or last year for all we know.
The players around the table here are 4: Google, Mozilla, Microsoft and Apple.
- Google probably the most upfront with their roadmap and intentions for the technology inside Chrome. Probably less so as to how it uses it internally and to what endgame
- Mozilla are using it wherever it makes sense for them. I can’t say I understand Mozilla’s thinking or motives well enough to say. But they are invested in WebRTC and are part of the vibrant ecosystem
- Microsoft has made it clear that it will add WebRTC. This year. To a browser. These things take time for a large ship to steer
Which brings us to Apple. Another large ship. The one with the highest revenue and probably the most to lose.
Apple Knows Real Time
For those saying real time is hard to nail, I’d like to remind you that Apple have invested in it already. They have FaceTime.
While we know little about its popularity or the amount of calls made on top of it, it is considered of high quality. You may say that this is easier to achieve, especially when Apple controls almost all the experience – hardware, software, protocols. It does not control the network though.
It would be safe to say then that when Apple would like to implement WebRTC, they should be able to do a decent job at getting the codecs and media processing in place and make them work well.
They don’t really need the external help that many are trying to give.
Apple Has 700 Millions Devices to Think About
From a count done last month (March 2015), Apple sold 700 million iPhones. This doesn’t include Mac or iPad devices.
Up until half a year ago, that meant hundreds of millions of devices used by consumers, many of them fans, with no hardware support of VP8. This means that if Apple adds WebRTC, it will need to write it all in pure software. This translates to poor battery life, poor media quality and high CPU load. While others have been happy with the results of WebRTC ported to iOS, would Apple be?
If I were the decision maker in Apple, I’d delay the launch of WebRTC as much as I could. I’d get things ready for it, but not introduce it to market. The idea behind it? Get as many old devices off the streets as possible, so that those that need software coding will do it on a better performing chipset. It will also give me to to add VP8 to the DSP of the newer iPhone devices.
To date, do we know if VP8 is or isn’t supported on the iOS devices in hardware encoding? Can it be something they decide to switch on at some future point in an iOS update for iPhone 5 or later? Maybe only from the iPhone 6? Or maybe not at all.
Now, that H.264 is making its way into WebRTC, should Apple release WebRTC with H.264 support only? Should they wait for Chrome to add H.264 as well and then launch? Should they include VP8 with the understanding that some of the calls won’t be as crisp?
Tough decisions to make.
Waiting beats any other decision here – it isn’t as if their customer base will buy less iPhones. Many of the people going to WebRTC events have iPhones. It hasn’t made them switch to Android. It won’t next year either, so why rush it?
This isn’t about Technology
The fact that Apple hasn’t released WebRTC is not related to their capabilities or their feelings about this technology.
It probably isn’t to protect FaceTime either.
I doubt that it is about the patents they own as part of MPEG-LA on H.264.
It just has to do with timing. Timing of the current hardware they have in the hands of their customers. And how long it would be until the older devices wear off and replaced by newer ones, more capable of bringing experience that Apple sees as good enough for them to work with.
And any volunteer work done today by others? Might end up being used or not used. But it will not move the needle of this decision either way.