Digital Signal Processing Fundamentals and Applications