声音信号处理实验报告

0. 实验目的

  • 掌握使用 MATLAB /安卓/ python / C++ 等编程语言生成、发送以及采样特定的声音信号
  • 理解信号的频率、振幅、相位等基本特征

1. 实现一个可以生成符合条件的声波信号的函数

略,同3.b,将在3中详细介绍

2. 实现一个可读取音频文件的函数并绘制信号波形图

  • 实验结果

裁剪结果如下:

图2.1 单声道波形图
图2.1 双声道波形图
  • 实验环境

    • Python 3.8
  • 运行方式

    /src 中运行:

    pip3 install -r requirements.txt
    python3 DrawWav.py *.wav



3. 使用 Android Studio 实现声波发送应用和声波接收应用

  • 实验结果及使用说明

    图3.1 应用界面

    a) 录制音频
    • 输入采样率
    • 点击 START RECORD 按钮开始录制
    • 点击 STOP RECORD 按钮结束录制
    图3.a.1 开始录制
    图3.a.2 停止录制
    图3.a.3 录制结果

    b) 播放本地音频
    • 选择本地音频文件
    • 点击 PLAY 按钮开始播放
    • 点击 PAUSE 按钮暂停
    • 拖动进度条以改变播放进度
    图3.b.1 选择本地音频文件
    图3.b.2 播放
    图3.b.3 暂停

    c) 程序根据用户输入,生成并播放指定频率的音频

    • 输入频率、初始相位、音频时长、采样率
    • 点击 GENERATE 按钮 开始生成
    图3.c.1 开始生成
    图3.b.3 生成完成

  • 实验环境

    • Android Studio 4.1
    • Java 8
    • 安卓模拟器 Pixel 2 XL API 24
  • 运行方式

    • /src/AudioProcessor 在 Android Studio 中打开