Implementation of frequency analysis modules for audio coding on GPU

Advanced Audio Coding (AAC) is the current MPEG standard for lossy compression of digital audio, which provides better sound quality than MP3. It involves several computation-intensive stages, e.g.,implementation of filter bank and psycho-acoustic algorithm. The discrete Fourier transform (DFT) is...

Full description

Saved in:
Bibliographic Details
Main Author: Meher, Subrat.
Other Authors: Ian Vince McLoughlin
Format: Final Year Project
Language:English
Published: 2011
Subjects:
Online Access:http://hdl.handle.net/10356/44844
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Nanyang Technological University
Language: English
Description
Summary:Advanced Audio Coding (AAC) is the current MPEG standard for lossy compression of digital audio, which provides better sound quality than MP3. It involves several computation-intensive stages, e.g.,implementation of filter bank and psycho-acoustic algorithm. The discrete Fourier transform (DFT) is a commonly used tool to perform frequency analysis for psycho-acoustic model while Modified discrete cosine transform (MDCT) is used for realization of filter bank. The implementation of DFT and MDCT being computation intensive, it is important to implement them efficiently to achieve higher speed performance and lower power consumption. The tremendous evolution of GPU has given rise to a new computing paradigm called general purpose GPU computing (GPGPU) or simply GPU computing. GPGPU leverages on the enormous computing resources of GPU for data-parallel scientific and engineering applications. Under the GPU computing model, the sequential component of a given application is executed by the CPU, while the computation-intensive data-parallel component is executed concurrently by the multiple cores in GPU. In order to facilitate the use of GPU as a parallel processor to run high-level programs without using graphics oriented APIs (like GLSL, HLSL and Cg), GPGPU APIs (like CUDA, OpenCL and DirectCompute) were developed. Such APIs have been used to successfully accelerate several scientific computation and engineering applications with high computational requirement.