CDN Optimization for VR Streaming - Akamai...The Quality of Experience (QoE) could be managed from a...
Transcript of CDN Optimization for VR Streaming - Akamai...The Quality of Experience (QoE) could be managed from a...
AKAMAI WHITE PAPER
CDN Optimization for VR Streaming
Authors:
Vishal Changrani – Enterprise Architect, Global Consulting Services, Akamai Technologies
Eugene Zhang – Enterprise Architect Director, Global Consulting Services, Akamai Technologies
CDN Optimization for VR Streaming 1
IntroductionViewers today expect high-quality video content delivered without any interruption. Naturally, this expectation
carries over to Virtual Reality (VR) 360° content. In fact, video quality is even more important with 360° content
because low-quality video may cause motion sickness — clearly something to avoid when aiming to deliver
delightful user experiences.
The challenge faced today with VR (360°) content is that by its very nature it is extremely voluminous. The Quality
of Experience (QoE) could be managed from a bandwidth perspective on managed cable TV networks, but today’s
over-the-top networks bring new hurdles. For example, YouTube recommends uploading 360° videos with a bitrate
of 150 Mbps, which means a five-minute video would be around 5.5 GB. To stream such high-quality 360° video
uninterrupted and with minimal buffering requires a lot of network bandwidth. With high consumer demand for
OTT and other content, new approaches must be taken to deliver 360° video with an acceptable QoE.
In addition to the scale of the Akamai network, which allows content to be brought closer to the user, there are
several other features of the Akamai network leveraged to derive a better QoE for 360° video.
Emerging Techniques in Adaptive Delivery for VRAs businesses and brands look to find efficient methods to decrease
bandwidth to deliver VR content, many are focusing on the user’s field
of vision (FOV). This emerging technique delivers content in the user’s
current FOV in high quality, while delivering the rest of the video in low
quality. This decreases the bandwidth required to deliver 360° content.
How is this achieved? Each of the video frames is divided into smaller
pieces called tiles.1 Once the frames are divided, tiles can be individually
delivered based on the user’s current FOV. The software that is running
on the VR unit, supporting PC, or mobile device puts the tiles back before
delivering it to the video decoder. This emerging technique to adapt
video streams based on the current viewport has been realized by
several methods by different organizations.
One method the Akamai team has hands-on experience with is tile-based
adaptive VR streaming, demonstrated at past industry events.2 With this
method, tiles are served by using a custom packaging format of the video asset to provide random access to the tiles
of a frame. This process is supported by two of Akamai’s flagship products: Adaptive Media Delivery and NetStorage.
High-quality tiles are fetched from the origin by the Akamai edge servers using HTTP byte-range requests based on
the client-reported FOV while the URL in the manifest for the video
remains unchanged.
Taking It a Step Further: Proximity-Aware Content PrepositioningAnother recommended optimization is taking a predictive approach to prefetching content based on proximity
and movement. This approach proactively loads predicted content into the CDN cache server and populates tiles
that will be needed in the future, based on client proximity and head movement of the user. This reduces the time
it takes to switch a low-quality tile with a high-quality one in the user’s FOV by more than 50%, compared to the
case when nothing is prefetched on the CDN.2
Moreover, since tiles can be treated as any other simple binary object that needs to be delivered from the origin
server to the client via the edge over HTTP or HTTPS, Akamai can optimize tile delivery in several ways. Hence,
other tile-based approaches of VR streaming (such as the one proposed by digital innovator Fraunhofer HHI)3
can also benefit from such prefetching.
Origin Server
Video frames divided in tiles
Head Mounted Display
Tablet/Smartphone
AkamaiCDN
Edge Server
Edge Server
Edge Server
CDN Optimization for VR Streaming 2
Next-Gen ProtocolsA common approach to media delivery optimization is switching to less chatty protocol to reduce overhead. Newer
protocols that may be used for VR delivery such as QUIC and HTTP/2 are already supported by Akamai out of the
box and are ready to be experimented with. Researchgate’s framework shows how HTTP/2 server pushes increase
throughput — especially in mobile, high-RTT networks.4
Ad Insertion 360° video presents a new avenue for ad-based monetization. Dynamic ads can be inserted at different spatial
locations in the 360° video space as the video is being played. If tile-based encoding is used, then some of the tiles
can be overlaid with ads at run-time, as in Fraunhofer HHI’s research on advertisement overlay insertion.5 These tile-
based ads can be stored on Akamai’s NetStorage and be delivered to the client with minimal latency. For a much
more dynamic experience, the edge servers can pull tile-based ads from third-party ad servers at run-time, based
on ad-targeting rules.
End User Edge Server Parent Server Origin
End User Edge Server Parent Server Origin
GET Tile byte 1000-8000
GET Tile byte 0-10000
Response 206 with Bytes
GET Tile byte 0-10000
Response 206 with BytesResponse 206 with Bytes
GET Tile byte 10000-20000
GET Tile byte 10000-20000
EdgeServer requests next byte range after delivering theinitial request. This is the pre-fetch feature. Content will be in the cache before the users requests it.
VR_Application Akamai_Edge
VR_Application Akamai_Edge
Akamai_Parent
Akamai_Parent
Origin
Origin
POST/push
Process POSTbody with ESI
Generate new request for each tile
PUSH each tile
Fetch Tile
Fetch Tile
POST Body/path/tile1?byte_start=X&byte_end=Y/path/tile2?byte_start=A&byte_end=B/path/tileN?byte_start=C&byte_end=D
ESI reads the POST bodyGenerate a variable containing all tileand byte range to be pushed
EdgeServer get the query parameter from the requestAdd a new header Range: bytes=byte_start-byte_end
Each tile is pushed to the applicationApplication can be retrieve byte range of each object locally stored under/path/tile1?byte_start=X&byte_end=Y
CDN Optimization for VR Streaming 3
ConclusionEcosystem drivers and technology advances are aligning now to make delivering video in 360° far more pervasive.
Meeting several demanding user requirements across visual quality and experience can be challenging. Akamai
provides solutions to address these challenges and many other mature capabilities to lead the way in achieving high
QoE and ushering in the new era of 360° content.
Contact us at [email protected] to explore how you can achieve a high QoE and create immersive, innovative,
and differentiating experiences..
About the Authors
Eugene Zhang is a Director of Enterprise Architect at Akamai. He focuses on end-to-end media/
application performance optimization and web security, working with large customers and their
strategic initiatives. He has over 15 years of experience spread across the fields of networking,
enterprise application, and telecommunication. Prior to Akamai, Eugene held various architecture
and development positions at Apple, Oracle, and Silicon Graphics. He has authored numerous
patents in the field of digital media and application security.
Vishal Changrani is an Enterprise Architect at Akamai. He helps Akamai customers realize their
media workflows. He has over 13 years of experience in a myriad of domains including embedded
systems, biotech, and large-scale enterprise applications. Prior to Akamai, Vishal has held different
positions at Ericsson, Motorola, and Silicon Valley startups. He has authored numerous patents
in the field of digital media.
As the world’s largest and most trusted cloud delivery platform, Akamai makes it easier for its customers to provide the best and most secure digital experiences on any device, anytime, anywhere. Akamai’s massively distributed platform is unparalleled in scale with more than 200,000 servers across 130 countries, giving customers superior performance and threat protection. Akamai’s portfolio of web and mobile performance, cloud security, enterprise access, and video delivery solutions are supported by exceptional customer service and 24/7 monitoring. To learn why the top financial institutions, online retail leaders, media and entertainment providers, and government organizations trust Akamai please visit www.akamai.com, blogs.akamai.com, or @Akamai on Twitter. You can find our global contact information at www.akamai.com/locations. Published 06/18.
SOURCES
1) http://ieeexplore.ieee.org/document/6547985/
2) https://www.ibc.org/tech-advances/cdn-optimisation-for-vr-streaming-/2457.article
3) https://www.hhi.fraunhofer.de/fileadmin/PDF/VCA/MC/Fraunhofer_HHI_Tile_Based_DASH_Streaming_for_VR_with_HEVC.pdf
4) S. Petrangeli, V. Swaminathan, M. Hosseini, F. De Turck. 2017. An HTTP/2-Based Adaptive Streaming Framework for 360°
Virtual Reality Videos. In Proceedings of ACM Multimedia, Mountain View, USA, October 2017 (ACM MM ’17)
5) https://www.hhi.fraunhofer.de/en/departments/vca/research-groups/multimedia-communications/research-topics/advertisement-
overlay-insertion-for-hevc-based-services.html