读取和写入音频文件

将数据写入到音频文件,获取文件信息,然后将数据读回到 MATLAB® 工作区。

  • 写入音频文件

  • 获取有关音频文件的信息

  • 读取音频文件

  • 绘制音频数据图

写入音频文件

        从文件 handel.mat 加载示例数据

load handel.mat

        工作区现在包含音频数据矩阵 y 和采样率 Fs。

        使用 audiowrite 函数将数据写入当前文件夹中名为 handel.wav 的 WAVE 文件。

audiowrite("handel.wav",y,Fs)
clear y Fs

        audiowrite 函数也可以写入其他音频文件格式。

获取有关音频文件的信息

        使用 audioinfo 函数获取有关 WAVE 文件 handel.wav 的信息。

info = audioinfo("handel.wav")
info = 
             Filename: 'pwd\handel.wav'
    CompressionMethod: 'Uncompressed'
          NumChannels: 1
           SampleRate: 8192
         TotalSamples: 73113
             Duration: 8.9249
                Title: []
              Comment: []
               Artist: []
        BitsPerSample: 16

        audioinfo 返回一个 1×1 结构体数组。SampleRate 字段指示音频数据的采样率,以赫兹为单位。Duration 字段指示文件的持续时间,以秒为单位。

读取音频文件

        使用 audioread 函数读取文件 handel.wav。audioread 函数可以支持其他文件格式。

[y,Fs] = audioread("handel.wav");

        播放音频。

sound(y,Fs)

        也可以通过交互方式读取文件。选择 

 导入数据或双击当前文件夹浏览器中的文件名。

绘制音频数据图

        创建一个与 y 长度相同的向量 t,表示经过的时间。

t = 0:seconds(1/Fs):seconds(info.Duration);
t = t(1:end-1);

        将音频数据绘制为时间的函数。

plot(t,y)
xlabel('Time')
ylabel('Audio Signal')

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值