You are on page 1of 2

*Blind source separation and tuning of multi-channel audio signals*

Time estimated: August - December'17.

Team: Venkatesh, Shrikrishna + 3 Second years.

Prerequisites: None

Knowledge to attain: Basics in Machine Learning such as Gradient Descent Algorithm (vital one for
our project), MATLAB, Signal Processing, Probability, Statistics etc.

Imagine a situation where there are multiple people speaking and you would like to listen to one
person at a time to catch what hes saying properly. You can also consider this as an application
where youd like to live record the dubbing of a film thereby reducing the re-recording and post-
production time. This can also be called as a Cocktail Party Problem

So, here, we would like to propose a technique to separate the audio channels into multiple signals,
which is a linear combination of various independent signals. For this, we would use a microphone
array, which has 4 mikes arranged in a tetrahedral fashion. Initially, we would use 4 speakers instead
of a person to output the sound and get it fall on the microphone array. Then, we would sample the
signal and obtain ADC signals which would inturn be sent into a mixer where the channel of our wish
could be selected and played. Something similar to a demultiplexer. To put it in simple terms,
consider as a switching circuit, which can select the channel which you need.

This algorithm basically depends on the density of the audio signal which can be computed by
correlation, as the signals have to be normalized and correlated. This can be done by time domain
method which uses the de-correlation of originating source signals.

In addition to this, we can use a Class D Power Amplifier to vary the loudness of an audio signal. For
this, we need to sample the audio signals initially and get digitized values, then filter the signals and
convert it back to analog signals using a DAC. This can be implemented using a PSoC board, which
has gain configurable opamps, ADC, DAC etc. which is powered with ARM Cortex M3 processor,
which has significantly better clock rate (48 MHz) compared to Arduino and MSP.

This would give you a proper knowledge on Signal Processing and Speech Processing. Especially, this
project would help in separating the background track from the vocals part: p (Karoake maker)

You would also get to learn a lot on MATLAB, Audacity etc.

Flow:

We would initially use 4 channel mikes to get input of audio signals and observe the output to check
if there's any noise to be removed.

Then, we shall proceed with density computation of audio signals and perform correlation.

Then, we shall carry on the rest of the work, which must go fine if the first 2 steps are working fine.

References:

1. https://github.com/vsubhashini/ica/blob/master/ica-report.pdf

2. http://ieeexplore.ieee.org/document/782510/

You might also like