Font Size: a A A

Design And Implementation Of3D Game Videos Real-time Encoding Module Based On "Swiich" Software

Posted on:2015-07-07Degree:MasterType:Thesis
Country:ChinaCandidate:X Y ZhangFull Text:PDF
GTID:2298330434950271Subject:Software engineering
Abstract/Summary:PDF Full Text Request
This thesis is based on the project which the author has done at Eureva Company, Paris during the internship of six months. The project is named as "Swiich", it is a software to deal with video frames real-time encoding, decoding and streaming. For now, it is mainly used on3D video games, the goal of this project is to solve the problems of some game players who are lacking of high-configuration computers but want to play high-performance games. The development of this project is to install the games on a server, after reciving the command from the client when the players click the games which they want to play, on the server side, it will run related games and do video encoding, then streaming the encoded frams to a streaming server. At the same time, client will try to read the encoded frames which are located on the streaming server, and do video decoding and stream to player window. This project includes many function modules, such as the management of games and users, game video frames encoding and decoding, frames real-time streaming, user input devices handling and managing, system authority and log management and so on. During this internship, the tasks which the author has done are:(1) In the project requirement analysis phase, participating actively and make conclusions on function analysis and non-function requirements of the project, understanding the most popular video encoding standard H.264and game development interfaces, analyzing how to combine the Detours technology and dynamic libraries in this project.(2) In the project design and implementation phase, designing and dividing different modules according to the result of project requirement analysis, which are:1) Design and implementation of3D video frames compression. Improving the method which uses Libav library and exploring how to use different AMD APIs to do video encoding.2) Design and implementation of video compression frames real-time transmission. Using the Real Time Streaming Protocol RTSP to deal with it.3) Design and implementation the commands of user input devices. Dealing with the commands which are sent by user mouse, keyboard or gamepad, simulating and filling messages in server, in order to cause the game images changing and control games.(3) In the project testing phase, testing the functionality and performance of the core modules that is video encoding module, using different tests cases and writing test reports.This project has been successfully passed the comprehensive functional and performance testing, successfully resolved the "missing frames" on some complicated games and images, increasing the number of frames transmitted per second, improving the quality of video compression and greatly reducing the CPU usage. This project has a very good future on3D games, films and other related multimedia industries.
Keywords/Search Tags:Windows, H.264, video encoding and decoding, DirectX, AMD APIs, Detours, RTSP
PDF Full Text Request
Related items