The objective of this project is to
demonstrate some of the principles of a digital communication system. I
want you to implement at least two digital compression techniques from Chapter
6 using audio files as input. (Book- Modern Digital & Analog Communication
systems B.P. Lathi Zhi Ding -4th edition. 3rd edition has same concept. this
book can be easily found online for free)(Ch-6 topics in book, PCM, Digital
Multiplexing, DPCM, ADPCM, Delta Modulation etc)You should play with various
parameters to experimentally determine which compression scheme gives you the
maximum compression at acceptable quality level. Before you start please
make sure you add comments as much as possible and explain.
Read the sample PCM audio file into MATLAB.
Sample audio files in PCM can be found at:
this website use test 2 or test 3 files. when you click those test- 2 or 3 link
it will open new window and play animal sound files for 10 second
each. Test 2 is Mono file- 48000 Hz & Test 3 is Stereo file-
When you download them they will be stored as a .wav file.
Plot the histogram of the audio. Comment on the shape of the histogram. Is CLT
in play here?
Instruction for reading wave into matlab is available online on matlab website
Task 2 Apply PCM with 16 quantization levels. In
other words, change the number of levels from whatever it is in the sample
audio file to 4 bits/pixel.
Plot the histogram of the quantized signal
Calculate the SNR at the output of the quantizer.
Listen to the original audio and newly quantized audio. Can you tell any
trying other quantization levels to see if you can derive any general
Explain your results in the report.
Task 3: Apply DPCM (including both
transmitter and receiver side) to the original file from Task 1, with a 4bit quantizer for the difference signal and a
1st order linear predictor. Explain how you selected the coefficients a and b
of the predictor. Include the derivation of a and b in the report. Assuming the
transmission between transmitter and receiver is ideal (i.e. no channel noise
What is the transmitted signal? Plot the histogram of the transmitted signal
with correct label.
Calculate the SNR of the DPCM system.
Calculate the SNR improvement/degradation over PCM.
Replace the 1st order predictor with a 3rd order predictor (refer to class notes).
Repeat step 3.1 3.4 above.
Compare and then explain the results of the two predictors in the report.
Task 4. Based on the structure of the DPCM
system (using the 1st order predictor) in part 3, add a bit-encoder on the
transmitter side and bit-decoder on the receiver side. Now the transmitted
signal s(n), n = [ 0 ,1, 2, 3, …] becomes a bit pattern sequence of 1’s and
0’s. Use on off line code and raised cosine for pulses.
Plot the first 20 pulses of s(n)
As a bonus, repeat with bipolar code. (You may have to write your own Matlab
code and integrate with Matlab)
(You can do this part at the end). Now, using BFSK (Binary Frequency Shift
Keying) to modulate the pulses. Add
the BFSK modulator at the transmitter side and demodulator at the receiver
side. The modulated signal is summed with additive white Gaussian channel
noise during the transmission. For BFSK modulation, let 1MHz be the
frequency of ‘0’ in s(n) and the frequency of ‘1’ is selected according to
the minimum spacing criteria ( df = 1 /
(2 * pi * Tb ). The data rate is 1Kbps. Test for the case of
channel SNR = -20dB, -10dB, -0dB, 5dB, 10dB, 20dB and 30dB.
Plot the first 20 pulses of the BFSK signal with noise for each SNR case.
5.2 Determine the bit errors for each case. Plot the number of
bit errors vs channel SNR. Explain your result.
Reconstruct the audio on the receiver side for each SNR case. Show and explain
all of these steps for a video sequence of your choice. No more than 10 secs of
be used. You can try inter-frame compression as well.