Remote Android Rendering Joel Isaacson Ascender Technologies Ltd

  • Slides: 19
Download presentation
Remote Android Rendering Joel Isaacson Ascender Technologies Ltd. Copyright 2014 Joel Isaacson

Remote Android Rendering Joel Isaacson Ascender Technologies Ltd. Copyright 2014 Joel Isaacson

The Problem There are just too many pixels to simply transmit over a long-haul

The Problem There are just too many pixels to simply transmit over a long-haul network. There a number of techniques that have been attempted. They all entail some compromises: Resolution Accuracy Frame Rate Latency Ascender Technologies Ltd Remote Rendering

The Problem: Pixel Count 2008 -2011 Copyright Romain Guy, Chet Haas, Google I/O 2011

The Problem: Pixel Count 2008 -2011 Copyright Romain Guy, Chet Haas, Google I/O 2011 Ascender Technologies Ltd Remote Rendering

The Problem: Pixel Count 2008 -2012 Ascender Technologies Ltd Remote Rendering

The Problem: Pixel Count 2008 -2012 Ascender Technologies Ltd Remote Rendering

The Problem: Pixel Count 2008 -2014 Ascender Technologies Ltd Remote Rendering

The Problem: Pixel Count 2008 -2014 Ascender Technologies Ltd Remote Rendering

Pixel Count 2008 -2014 Display Commercial Availability Rows Columns Pixels DVD 1997 720 480

Pixel Count 2008 -2014 Display Commercial Availability Rows Columns Pixels DVD 1997 720 480 345, 600 720 p 1998 1289 720 921, 600 1080 p 2006 1920 1080 2, 073, 600 Nexus 10 2012 2560 1600 4, 096, 000 4 K Ultra HD Tablet 2014 3840 2160 8, 294, 400 Ascender Technologies Ltd Remote Rendering

Android Graphics Stack Ascender Technologies Ltd Remote Rendering

Android Graphics Stack Ascender Technologies Ltd Remote Rendering

Choosing How To Export Graphics can be exported from any of the four levels

Choosing How To Export Graphics can be exported from any of the four levels of the graphics stack Application level Toolkit level Rendering level Pixel level We choose to export the rendering level. Ascender Technologies Ltd Remote Rendering

Exporting The Toolkit and App It is technically very complex. Android, to date, has

Exporting The Toolkit and App It is technically very complex. Android, to date, has 17 different toolkit API variants. Every application can extend the toolkit with custom widgets (subclasses of android. view. View). Clearly impossible. Ascender Technologies Ltd Remote Rendering

Exporting The Toolkit and App It is technically very complex. Android, to date, has

Exporting The Toolkit and App It is technically very complex. Android, to date, has 17 different toolkit API variants. Every application can extend the toolkit with custom widgets (subclasses of android. view. View). Clearly impossible. Effectively exporting graphics at the toolkit level and even the application level is in fact possible via the rendering API. Ascender Technologies Ltd Remote Rendering

The GUI Rendering Layer Expanded Ascender Technologies Ltd Remote Rendering

The GUI Rendering Layer Expanded Ascender Technologies Ltd Remote Rendering

NDK App With Open. GL Ascender Technologies Ltd Remote Rendering

NDK App With Open. GL Ascender Technologies Ltd Remote Rendering

NDK App With Skia Rendering Ascender Technologies Ltd Remote Rendering

NDK App With Skia Rendering Ascender Technologies Ltd Remote Rendering

Android Remote Rendering Ascender Technologies Ltd Remote Rendering

Android Remote Rendering Ascender Technologies Ltd Remote Rendering

Android Remote Rendering No GPU on Server Needed Ascender Technologies Ltd Remote Rendering

Android Remote Rendering No GPU on Server Needed Ascender Technologies Ltd Remote Rendering

ICS Rendering Results Even with simple techniques the compression ratio is over four orders

ICS Rendering Results Even with simple techniques the compression ratio is over four orders of magnitude (x 10, 000 reduction). The number of bytes per frame, for the GUI rendering, is typically 300 bytes, as opposed to 4 -16 Mbytes for uncompressed frames. The compression encodes 2 -4 rendering operations per byte (2 -4 bits per rendering operation). Ascender Technologies Ltd Remote Rendering

The Google Play Universe API Coverage Ascender Technologies Ltd Remote Rendering

The Google Play Universe API Coverage Ascender Technologies Ltd Remote Rendering

Cloud Gaming Currently cloud gaming is done with pixel rendering performed on the remote

Cloud Gaming Currently cloud gaming is done with pixel rendering performed on the remote server. The frames are H 264 encoded and sent over the network to the remote client. Our remote rendering technology does not need special hardware on the server side. The computational load on the server and network are minimized. Playing latency (lag) is minimal. Ascender Technologies Ltd Remote Rendering

A Perfect Storm It seems that a technological cosmic alignment has happened: Fast, low-power

A Perfect Storm It seems that a technological cosmic alignment has happened: Fast, low-power 64 bit ARM multi-processors (Cortex A 50) with virtualization extensions. Adoption of Android apps in a broad gamut of use cases, including the enterprise. Ever increasing adoption of cloud based solutions. Possibility of efficiently transporting Android graphics via a long haul network. Ascender Technologies Ltd Remote Rendering