Please use this identifier to cite or link to this item: https://www.um.edu.mt/library/oar/handle/123456789/78256
Title: Graphics processing unit optimisation of scalable video coding inter-layer prediction using CUDA
Authors: Abela, Kurt (2013)
Keywords: Graphics processing units
CUDA (Computer architecture)
Video compression
Issue Date: 2013
Citation: Abela, K. (2013). Graphics processing unit optimisation of scalable video coding inter-layer prediction using CUDA (Master's dissertation).
Abstract: The rise in video streaming applications has led to increasing bandwidth concerns for service providers. Newer encoders, such as the H.264/Advanced Video Coding (AVC) and the latest High Efficiency Video Codec (HEVC), aim to alleviate this problem. Nevertheless, several video streams still have to be encoded and transmitted separately to serve the variety of video capable devices available. To avoid encoding the same sequence several times, as well as reducing the traffic over the network, H.264/Scalable Video Coding (SVC) was introduced. This enables the encoding of a single stream, which allows temporal, spatial and quality scalability. Scalability can be achieved by simply dropping enhancement layers from the video stream. Research shows that SVC always outperforms A VC simulcasting. Apart from this, SVC supports inter-layer prediction, where it further reduces the correlation between layers to achieve a better coding efficiency. SVC leads to a more complex encoder, which often makes real-time encoding an issue. In this dissertation, a Graphics Processing Unit (GPU) based encoder is proposed. The Block Motion Estimation (BME) module was of particular interest, as research shows that it takes up to 90% of the total encoding time in standard H.264/ A VC. The prediction, transform and quantisation modules were all designed for the GPUs using the NVIDIA Compute Unified Device Architecture (CUDA). An asynchronous programming model was used to enable concurrent execution both on the CPU and GPU. The H. 264/ A VC encoder was designed first, and the optimised blocks were then used to setup the scalable encoder. Through a series of performance tests, it was determined that up to 436x speedup can be achieved, when compared to the JM reference model, with no loss in quality. On the other hand, 738x speedup was attained for a two spatial layer SVC video, when compared to the JSVM reference model. This enabled real-time encoding for resolutions up to 1080p for standard AVC, and 720p and 640x360 for the enhancement and base layer respectively in SVC. Thus, it can be concluded that the proposed system can achieve a very high speedup which allows real time encoding of High Definition (HD) resolutions, and is an ideal replacement for costly dedicated video encoding devices.
Description: M.ICT
URI: https://www.um.edu.mt/library/oar/handle/123456789/78256
Appears in Collections:Dissertations - FacICT - 2013
Dissertations - FacICTCCE - 1999-2013

Files in This Item:
File Description SizeFormat 
M.SC.ICT_Abela_Kurt_2013.pdf
  Restricted Access
20.08 MBAdobe PDFView/Open Request a copy


Items in OAR@UM are protected by copyright, with all rights reserved, unless otherwise indicated.