Mahdi Hemmati, Abbas Javadtalab, Ali A. Nazari, Shervin Shirmohammadi, Tarik Arici

minedesertΛογισμικό & κατασκευή λογ/κού

31 Οκτ 2013 (πριν από 3 χρόνια και 9 μήνες)

219 εμφανίσεις

Mahdi
Hemmati,
Abbas

Javadtalab
,


Ali
A.
Nazari
,
Shervin

Shirmohammadi
,
Tarik

Arici

Outline


Background


GaV
: Game as Video


Advantages


Challenges


Proposed Method


Evaluation


Results


Conclusion


Future Work

Background


Cloud Gaming: real
-
time game
playing via thin
clients

(Cloud Computing + Online Gaming)


Great interest and growth during recent years


Several cloud gaming services with a variety of
realizations available on the market:



Background


cont.


Cloud hosts for the game logic and streams the game
experience to the client


Game Streaming:


Streaming the 3D Objects


(Classical approach)


Streaming the Rendered Video

(
OnLive
,
GaiKai
)


Hybrid Approach



(
CiiNOW
)




Our Focus: Video Streaming




Game as Video” (
GaV
)



A natural combination:


Cloud gaming + Mobile gaming (i.e., on mobile clients)


GaV

Advantages


No need for continuous hardware upgrade


The only requirements are broadband internet connection
and a thin client (a device capable of video display)


No need to purchase new versions of the games


Pay as you play


Play anywhere anytime


Play the same game on various devices

(Smartphone, Tablet, Notebook, Desktop PC, Smart TV)


Revenue increase for developers/Publishers by

leaving out the retail chain

GaV

Challenges


Stringent requirements of network service quality


Network Bandwidth


GaV

streaming data rates are significantly higher than
conventional gaming and similar to video streaming


Latency


Network latency as well as available network bandwidth
greatly affects the player's quality of experience (
QoE
)



Energy consumption of the servers in the Cloud


Massive number of simultaneous game
sesions

Proposed Method
-

Overview


Basis: Our previous successful experience with activity
-
based object selection for 3D object streaming


Difference: rendering and video encoding done on server
side and only the encoded video streamed to the client


Objective:
adapt the game scene to achieve


Lower video bit rate


Faster encoding time at server side

(Lower energy consumption)


Key Idea: exclude less important objects from the game
scene before rendering and encoding

Proposed Method:

Activity
-
based Object Selection


Maintaining a list containing the importance of each
object for each activity, designed by game designers


Evaluating the importance of each object in each frame of
the game based on the current activity of the player


Optimizing object selection using their normalized
importance factors subject to some constraints


Rendering the scene containing only the selected objects


Encoding and streaming the video of the
gameplay

Evaluation
-

Game


Object selection algorithm implemented

in Unity 3D game engine



Two Unity 3D Demo Games







Video of the game play captured by FRAPS

Evaluation
-

Video


Capture video encoded using x
264

(H.
264
/AVC)


Profile: High


Rate control methods: ABR & CRF


Target bit rate:
1
Mbps


Encoding time recorded using Intel
VTune

Amplifier


Performance Metrics


Size of the coded videos


Streaming bit rates


Average


Peak


Encoding Time

BootCamp

Game Screenshots

Results for
the
BootCamp

Game

AngryBots

Game Screenshots

Results for
the
AngryBots

Game

Summary & Conclusion


A game scene adaptation using an object selection and
optimization method proposed for
GaV

scenario


Only the most important objects from the perspective
of the player’s activity are encoded in the scene and
irrelevant or less important objects are omitted


Significantly lower streaming bit rates achieved
(between 2.2% to 8.8% less than the original video)


Slightly less processing time on server side

(still critical due to massive number of game sessions)


A complementary approach to existing methods, such
as low
-
polygonal modeling and level of detail scaling

Future Work


Subjective evaluation of the quality of experience (
QoE
)


Our previous work for client
-
side rendering


Comparison of
QoE
: proposed scheme vs. the strategy of
higher compression of the entire scene with all objects



Rendering less
-
important objects with a lower
LoD



Encoding less
-
important regions with lower bit rates



Energy
-
aware video encoding algorithms

Q&A