190 likes | 388 Views
Game as Video: Bit Rate Reduction through Adaptive Object Encoding. 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.
E N D
Game as Video: Bit Rate Reduction through Adaptive Object Encoding Mahdi Hemmati, AbbasJavadtalab, Ali A. Nazari, ShervinShirmohammadi, TarikArici
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 implementedin Unity 3D game engine • Two Unity 3D Demo Games • Video of the game play captured by FRAPS
Evaluation - Video • Capture video encoded using x264 (H.264/AVC) • Profile: High • Rate control methods: ABR & CRF • Target bit rate: 1Mbps • Encoding time recorded using Intel VTune Amplifier • Performance Metrics • Size of the coded videos • Streaming bit rates • Average • Peak • Encoding Time
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
Thanks Q&A