PCM vs ADPCM
Most of the natural signals such as voice are analog signals. However, since computers and almost all the equipment we use today are digital, converting those analog signals to digital signals are essential. For example, to record a voice into a computer, the signal should be represented as a series of bits. Usually, microphone first converts sound into an analog electrical signal. Then that analog electrical signal is converted into digital signal that can be represented as a bit sequence. There can be different techniques in deriving this digital signal. PCM (Pulse Code Modulation) and ADPCM (Adaptive Differential Pulse Code Modulation) are two such techniques of digitalization.
PCM (Pulse Code Modulation)
PCM is a technique of representing an analog signal as a bit sequence. In PCM, first, the amplitude of the signal is measured (more correctly, signal is sampled) at equal intervals. Then these samples are stored as digital numbers. For example, a triangular signal may be quantized as the sequence, 0, 1, 2, 3, 2, 1, 0, -1, -2, -3, -2, -1, 0, 1,2, 3, …… . When those numbers are represented in binary, it will be something like the sequence, 0000, 0001, 0010, 0011, 0010, 0001…. . This is how that triangular analog signal is converted in to a bit sequence in PCM.
PCM has been used in digital telephony as the method of encoding voice. PCM is also a standard for digital audio in computers. However, by doing some modifications, PCM can be optimized in the areas of memory and information rate. ADPCM is one such method.
ADPCM (Adaptive Differential Pulse Code Modulation)
ADPCM is a type of DPCM (Differential Pulse Code Modulation), which sends (or store) the difference between consecutive samples instead of sending the entire magnitude of the sample. That reduces the amount of bits to be sent. For example, in the case of triangular signal, the difference between two consecutive samples are always plus or minus one. When the first sample is sent, the receiver can derive the value of the second sample when the difference between the second and first samples is provided. Hence, DPCM reduces the amount of bits to be needed to represent the signal digitally.
ADPCM does another modification to DPCM. It varies the size of the sampling intervals (or quantization steps) in order to further reduce the amount of bits needed to represent the signal. ADPCM is widely used in many encoding applications.
What is the difference between PCM and ADPCM?
1. In ADPCM, difference between two consecutive samples is used to represent the signal, whereas sample values are directly used in PCM.
2. In PCM, the size of the interval between two samples is fixed, whereas it can be varied in ADPCM.
3. ADPCM needs a less amount of bits to represent a signal compared to PCM.
4. Decoding a PCM signal is easier than an ADPCM signal.