不同位深的单频信号的量化失真水平对比

用如下matlab代码生成特定频率不同位深的wav文件

clc

close all

clear all

fclose('all')

f = 22500;

BitsPerSample = 32;

DB = -30;

AMP = 10^(DB/20)*2^(BitsPerSample-1);

fs = 48000;

normalization = 2^(BitsPerSample-1);

n = 1:1:128*1000;

sample=round(sin(2*pi*f/fs*n)*AMP);

sample_normalization=sample/normalization;

audiowrite('22500.wav',sample_normalization,48000,'BitsPerSample',BitsPerSample);

其中BitsPerSample 为位深,48000为采样率

结果如下:

  1. BitsPerSample  = 16 时不同位深的单频信号的量化失真水平对比
  2. BitsPerSample  = 24 时不同位深的单频信号的量化失真水平对比
  3. BitsPerSample  = 32 时不同位深的单频信号的量化失真水平对比