The graphical equalizer

Published: Last Edited:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.


The graphical equalizer consist of a bank of sliders for varying different frequency ranges (bass and treble), four filters are used for the demonstration of the project. Implementation of Graphical Equalizer in terms of Digital algorithms provides more reliable and cost effective solution to the problem [1]. In this particular project Texas Instruments Digital Starter Kit c6713 (figure 1) is used for the implementation, the coding was done with Visual C [2] and the graphical display has been designed using the LABVIEW.

A typical real time application like equalizer using the DSP technique requires the following basic system (figure 2). The input is some audio signal and the output is also the processed analog signals.

The project was built within the Code Composer Studio (CCS), the relevant files were included and the code was run to verify the output at the oscilloscope and the speakers, moreover by utilizing RTDX, the communication channel was established to the Labview graphical interface, which was used to control the frequency parameters of the given audio input [3].

The DSP board (figure 1) contains a digital chip called AIC23, which contains a stereo codec based on Sigma-Delta technology. It helps in achieving the high sampling ratios with lower sampling rate.

Pre Study

The Pre-study was done by Implementation of Linear Phase FIR filters, operations with the LP, BP and the HP filters, with functionality of window functions, from the examples of Chap#4 of the referenced book [1], FIR filter was observed in terms of varying real time gain and amplitude characteristics. Further to this of analyzing the Real Time Data Exchange (RTDX) was performed in detail, it was further followed by creation of input and output channels by RTDX, the I/O communication i.e. receiving external input signal, storing of the data in the buffer of DSK, and transferring the data from DSK through RTDX, examples of Chap#9 of the referred book[1] was mainly used for analyzing the results of the examples.

Matlab FDATOOL was used for designing of filter coefficients.

As a part of pre-study the RLC Network of graphical equalizer was also observed, the circuitry which was equivalently in performance of Band Pass filter was used, moreover Q-digital equalizer which operate by varying Q-factor of opposite filters could be some alternative examples, but DSK C6713 kit was finalized as it was observed to be optimal solution in terms of design and quality parameters.

Finally LabVIEW functional blocks and the tools were analyzed for designing the Graphical interface, of the analyzer.

Project Implementation

Functionality Of Equalizer

A graphical equalizer is an accurate graphical control system, the gain (volume) of different frequency bands can be controlled by sliders by moving it up and down, block diagram is shown in fig (3).

The project was implemented after thorough study of example 6.7 and 9.7 of the reference book [1]. the project was generated in CCS by adding the suitable files, code was compiled and loaded in the project. The input was given from PC and output was observed at connected oscilloscope and speakers. The Lab View interface as shown in fig 5 and 6 respectively.

As shown in source code, the project is an interrupt based routine, and the sampling frequency is used at the rate of 16 khz, to generate the interrupts. It is imperative that the interrupt is configured inside the bios options of the CCS compiler. A same buffer is used for storing the input sampled data and output data of the audio signal. When the desired number of samples is gathered in the buffer, the digital signal processor will let the Fast Fourier Transform to apply on the input buffer of audio (samples) data and the filter coefficients. The input buffer in frequency domain is multiplied with the filter coefficients also in frequency domain thereby producing the output in the frequency domain. After processing the signal in frequency domain, the inverse of Fast Fourier Transform is then applied on the output audio signal to get time domain output. The buffer is then updated and is assigned to the output sample upon sample. The buffer is used for multiple purposes as in the same buffer is used for input and output respectively. In the end all the four filters are summed up to produce the frequency domain based accumulative filter. The code cited underneath embeds the connectivity for LABVIEW by applying RTDX (Real Time Data Exchange). The four input channels are defined for modifying the gain variables. The DSK Processor inputs the four channels when the code runs. Eventually, two output channels send both the buffers carrying the Input samples and the output samples to LABVIEW to allow the evaluation of preprocessing and post processing of spectrum.

The input to the DSK is split into 4 different frequency components; this is achieved by passing it through 4 FIR filters each with the different frequency characteristics. The components are multiplied with their respective user manageable gain to increase or decrease their magnitude. They are then accumulated together to form the out equalized output signal.

Since we are connecting all the FIR filters of equal length in parallel, we can multiply them with their respective gain and sum them into a single filter. This way the workload of the equalizer would be reduced to a greater extent increasing the efficiency.

The equalizer designed here covers the frequency range from 60 to 16 KHz. The sampling rate is CD rate which is 16 KHz. The frequency specifications for the equalizer are shown in Table1.

Through RTDX, the C6x on the DSK scales the received sine wave input date and sends the resulting scaled output waveform to LabVIEW for plotting, the filter coefficients are of float format, to achieve good quality at the output.

B. Filter Construction.

The FIR filtering method being considered the optimal solution for our requirement is chosen for implementation of equalizer. Four- different FIR filters each with different frequency specifications (table1) were designed, to compensate the cutoff of the filter and for gain adjustment. A slider at the output of every filter provides the option to raise or drop the amplitude of the input audio signal, interfaced in Labview. By utilizing the filters in this way the noise distorted signal can be adjusted, thus increasing the quality of equalizer.

MATLAB is used to design the FIR filter parameters; it was done by using the ‘FDATOOL' command. The filter order of 61 is defined, due to flexibility in designing Kaiser Window has been is chosen, pass band and stop band has been specified at 1dB and 40dB respectively (shown in fig3). The filters h3, h3, h3 & h4, are the four low pass, band pass, band pass and high pass filters respectively (table1). After designing, the filters are saved and combined in a single .cof file containing the coefficients of the filters. The filter file filters_coef.cof was developed and later used through the source code to call the filter coefficients.

After interfacing with the Lab VIEW, the sliders were created for the gain values. The desired functional blocks were used in the Lab VIEW interface, which consist of the input channel communication, the respective filter parts, which are the control parts of the graphical equalizer as well the accumulated output taking values from the DSK

The Flowchart of the main program and the Lab VIEW interface are shown in figures 4, 5 and 6 respectively.

Gain values from the respective filters are multiplied with the filter coefficients and added together to make a single filter to reduce computational power. Input is sampled and is filtered with the calculated filter and sent to the output. The code for the program is given in the appendix.


Although the performance of the equalizer is satisfactory, for the enhanced quality some modifications might be made, so the highest quality Graphical equalizer can be implemented, by the optimal utilization of resources. In order to advance the design and graphical interface following are the recommendations.

A. Fixed Point Implementation

Fixed Point implementation could reduce the number of filter coefficients; thereby the processer can be operated in fix point reducing memory and processor usage. Though the output quality would be compromised but the filter size can be increased to compensate that.

B. Filter Calculation

Currently the combined filter is calculated every time an interrupt occurs. The filter is calculated irrespective of the sliders values change or not hence a wastage of computational power. A simple check can be implemented which can check if the slider values change, upon which filter to be calculated otherwise the old filter would be used saving up precious computational power.

C. RTDX And FFT Plot

More flexibility could have been added by embedding the FFT Plot, which show the real time FFT of the incoming audio signals, and which can be modified in real time by the controls of the equalizer.

D. Reasons For FFT Ploting

While implementing FFT in LABVIEW, the most important thing is that the speed of the power spectrum and FFT compilation actually depend on the number of points acquired. If P can be factorized into the small prime numbers, then LabVIEW uses a highly efficient Cooley-Turkey mixed radix FFT algorithm but for large prime numbers LabVIEW uses various algorithms to calculate discrete fourier transformation (DFT) and, since FFT is way too faster and it's calcuatlion takes so therefore we could not successfully apply these conditions to run FFT smoothly on LabVIEW, though we showed the basic functionality of RTDX and the graph in real time domain.


[1] Chassaing, Rulph, Digital Signal Processing and Applications with the C6713 and C6416 DSK, ISBN: 0-471-70406-7, Wiley, 2005

[2] DSP Related Issues". Texas Instrments. <>.

[3] Kaluri V. Rangarao, Ranjan K. Malik, Digital Signal Processing: A practitioner's Approch, ISBN:0470017694, Wiley, May 23 2005