Adaptive Differential Pulse Code Modulation by Jesse Russell