 So, here at the Digital Home Group, you're showing off some latest solutions? Right, so I'm Mark Rogatsky, the director of the Lenovo Digital Home Group, and recently we put together a very compelling demo that is showing the latest Microsoft Porting Kit 3.0 for Play Ready integrated with Lenovo's open-source, open-portable trusted execution environment, known as Octi. So, we see here some of the diagram. So, this is Play Ready, Microsoft, and they were having a keynote here. They were talking about some stuff also. Yeah, there's a few components here. Let me just sort of take them one at a time. First of all, with this demo, we have done a lot of work with Chromium, the OpenCDM with W3C EME, and we have integrated it with the open-portable trusted execution environment. And so, in the past we've done what we call a clear key solution, and then what we've done is added a commercial DRM solution to this to show that a commercial DRM such as Microsoft Play Ready that has a Porting Kit that interfaces to a trusted execution environment does in fact work well or is compatible with our Octi. So, it's showing that their Porting Kit does a good job, and the fact that an open-source Porting Kit can now be made to work with the solution. So, what is the Octi here? We see this T and OO Octi. So, a lot of T's are proprietary. So, in Lenaro we've created this open-portable trusted execution environment, and it is an actual open-source project, so people can download the code for the Octi. So, what we're demonstrating here, that Octi is not just a research program, it actually can be used in a real deployment. Here we have the ST setup box, which has Octi embedded on it, and it has Chromium, and it is running the video. So, what I want to show here is that we have the, so it's the Chromium browser, which is then integrated with the open CDM. An open CDM then interfaces to something called the CDM interface, where the DRM is baked into the platform and is integrated with Octi, to provide a hardware security solution. So, all of the decryption in this case is happening in the trusted execution environment, where all the decryption is being done securely. And it's made by hardware? Is it hardware decrypted? At this point, the demo is using software, but the next step is to implement all of the hardware acceleration that we currently have in our open SDK, but that's the next step, and we'll have that done very soon. So, Play Ready, there's lots of different DRM solutions, right? Why are you starting with Play Ready and with Microsoft? Well, one of our members suggested that we start with that one, that they were actually integrating with. So, the fact that it was good timing in the sense that they had just come out with a new porting kit, which was designed to interface with a trusted execution environment, and we thought this would be a good one to start with. So, we've shown that it works very well, but one of the important things about the open CDM interface is that we're trying to promote DRM interoperability. So, if any DRM actually is compatible or follows the open CDM-CDMI messaging protocol, we should be able to then incorporate their DRM as well. So, if you go over here and we look. So, you're talking about this and Play Ready? Right. So, the open CDM is in the browser, but then it talks to the DRM, which is essentially baked into the platform, and then there are remote procedure calls that occur between the open CDM and the CDMI service. And so, that way, you can replace this with different DRMs that would be integrated with OT, but that interface remains standard, which is very important. So, and this is a very big deal. The TV and the studios, the movie studios, they require this kind of stuff. They want their DRM to be very... They have high requirements. Right. So, with 4K HDR premium services that are now coming, being made available, the studios have raised the requirements for protection. And again, this particular demo, it's a demo. There's still some work to be done in terms of, you know, the studios want 4K video to be executed on a trusted execution environment. What they're essentially doing is pushing the requirements closer and closer to the hardware for protection. So, the next step that we're going to also implement in OT is the secure video path, which is also a very important component as well. What does that mean? The video goes through a path? So, what that means is that as the content is decrypted, decoded and rendered, it always stays in secure space. Those buffers can never be accessed through user space. And that's a very important part of the secure video path. And the trust zone memory protection system. And then it goes out to the display, the HDCP? Right. It goes HDMI protected via HDCP 2.2 for 4K video. 2.2, that means they're satisfied with that. Nobody's going to plug in a recorder in that or something. That's right. So, the thing to do in this demo is to point out that this is an actual live demo where we have a reference javas.js player. And what you see here is that it recognizes the play-writing key system. And then what it does is that it goes to a key server and actually digs the key and then decrypts it. And this is all happening on the set-top box. So, this is an end-to-end system. Again, it's a demo and there's still some additional work to be done. But it's exercising all of the components. MPEG, it's dashed with MPEG common encryption. And so, again, the key system is recognized. The URL for the server is identified. It goes to that server. It gets the license and keys necessary to decrypt the content. So, this is the future of the set-top box. And this is a very, very big, very important market. Yes. And again, so here at Kinect, you know, SFO 15. But we demoed this 10 days ago at IBC in Amsterdam and the response was overwhelming due to the fact that it was, you know, using Opti, which is an open, portable, trusted exhesion environment, as well as using the latest Microsoft play-writing porting kit. So we were one of the first to get that combination working. And Opti itself is just gaining incredible traction because a lot of chip vendors realize, I don't have to go and invent my own TE anymore. I can use Opti and you'll get to market faster. And build on that to differentiate differently with other stuff, right? Right. So in that case, everyone can... But again, you can access the key, but it's the implementation that's key. It has to be implemented properly. And then the vendor themselves would have to go and get their solutions certified by a third party in order to satisfy the requirements of the studios. Nice. There's lots of stuff happening in the home group. And you have a bunch of demos here. Yes. So in the home group, just one of the things that we've just done here is the 96-board program. Which one is that? This is the Dragonboard. The Dragonboard? Why do you have running on that? Okay. So we've been working with the High Keyboard as well as the Dragonboard. And in the home group, we use open-embedded Yachto builds. So what we have running here is we have Chromium, the latest version of Chromium running, Chromium 47, with the Arduino graphics. So because we had done a lot of work previously on the High Keyboard to get 64-bit Chromium built with OEMetabrowser in a 64-bit environment, we were actually able to take that code and in two days... In two days? Yes. We had this running on the Dragonboard. The Dragonboard is a quad-core chip and it has the Arduino card. So this is using the GPU. How can you do that? How can you get... Is it using the free Arduino? Yes. Using the open-source GPU driver? Yes. And so they support open-embedded, the root file system, and in addition, they also support some of the other things that we use in our media framework, such as video for Linux. So again, this is just the first step. This is running with the GPU, and again, the next step for us is for the home group to get our entire OE stack running, which we call the Open SDK, which has GStreamer, Rail, and Video for Linux, and all the other good kernel goodies, such as DRM, KMS, DMA, Buff, all these accelerated, optimized media playback engines that are optimized for ARM. So here we're using Fredrino, other chips we can use, the Mali drivers, but again, showing that the power of the open-embedded meta-browser that you were then able with a very short period of time with some extremely skilled engineers, I might add, not myself, to get this running. Cool, and you have even more staff going over there? Let's go over there. Okay. So what is showing off here? Well, I'll just give it a quick intro. One of the things that we've ported or we've introduced to our media framework system is the Whalen windowing protocol. And so in this case, we're doing a demonstration with QT applications that use what we call nested Whalen compositors. And I'll introduce Vish, we've put a guy here who has been working on this as well, and he can give a few more details and maybe show some of the things that he's been doing. So what is this? So essentially, this is a, you know, we have the Whalen protocol. It's basically the way in which, you know, applications talk to each other, like especially for windowing and everything. And Vestin is the underlying implementation of the Whalen protocol. So we have Vestin working underneath. So you have Vestin working, and this is the desktop shell for the Vestin. And then we have simple applications that are acquired directly to the Vestin. Or you could actually, if you want to make a more composite application, like, you know, you want to have this same application running within your own environment, what you could do is you could implement something like a Q window compositor. This is a Q window compositor. And what this is, this is acting as a client to the underneath Vestin protocol or a Vestin server. And it's acting as a server for all these, you know, individual clients. So the part that's interesting, it's this nested compositing where you can pull these apps into that environment. And as I mentioned over there, basically Vestin server is hosting on the Vale and Zero socket. So all the messages are going to the Vale and Zero socket, whether, like for example here, the Q window compositor is sending all the messages to the, you know, the Vestin, the Vale and Zero socket. And all these applications are sending messages to the Vale and One socket, essentially. Right? So some setup box maker or service providers would like to have this for some reason? Yeah, so basically... What did they want this for? So, you know, basically this is a windowing mechanism, right? And also an input mechanism. So, you know, all the setup box manufacturers, they want to have the Vestin implementation because they have all these complex applications. They have videos that they're overlapping on background applications or they have, like, you know, play buttons and other applications that are overlapping on the video. That's where they would actually use the Vestin protocol. I wanted to mention that this is on, again, a reference hardware from ST Microelectronics, the B20 on 20, Dual Cortex A9 chip. So, again, this is very... When you use the Mali GPU, for example, it's very little processing overhead on the CPU. And in addition to the Mali GPU, they're also, like, you know, the display systems has hardware overlays. So, the Vestin actually directly talks to the libDRM. So, it knows how best to compose. So, if you give it, like, seven nodes and the hardware overlays, the display subsystem has, like, three hardware overlays, then it uses the hardware overlays as much as possible. So, that's why the CPU load is going to be, and the GPU load is as minimum as possible. All right. So, very optimized solutions. Lots of stuff happening in the home group. Definitely. Yeah. A lot more requests. You know, many parties are talking, of course, Microsoft, Netflix, others, and they're all looking, Opti's getting a lot of attention. A lot of folks are looking to start certifying solutions on Opti and implementing some of these porting kits and some of the formalism that we've been doing here. Lots of traffic at IBC. It was overwhelming. Lots of business cards and lots of companies should join the narrow, right? They definitely should. They can see now what we've been able to deliver in a fairly short period of time. You saw it today this week at Kinect where we had the Dragon board done in just a couple of days. It's the quality of engineering, but it's also the quality of the design of what we do. We always are looking for the most optimum best solutions to use on ARM. We don't take shortcuts and we always try to engineer the best systems. In cases like this, when we say we promote time to market, but we can bring solutions to Opti quite quickly and other solutions for graphics and media frameworks on ARM or say for example the Dragon board. These are things that companies want now and they can get them delivered in a very short period of time. Moving fast that's the whole business here. The home group is all about moving fast. Hopefully moving smart and having the right architecture that you're building upon which enables all those other things.