专栏首页FPGA开源工作室Matlab音频信号的基本处理与分析

Matlab音频信号的基本处理与分析

Matlab音频信号的基本处理与分析

1 音频信号的读取与时域分析

close all

clear all

clc

%读取音频文件

info =audioinfo('sample_orig.mp3');%获取音频文件的信息

[audio,Fs] = audioread('sample_orig.mp3');%读取音频文件

sound(audio,Fs);%播放音频文件

audiolength = length(audio);%获取音频文件的数据长度

t = 1:1:audiolength;

figure(1),

plot(t,audio(1:audiolength));

xlabel('Time');

ylabel('Audio Signal');

title('原始音频文件信号幅度图');

其中info为此音频的详细信息包括数据位宽,采样率等。

2 音频的频域分析

%音频的频域

y =fft(audio);

y=20*log(abs(y))/log(10); %换算成dBW单位

f=[0:(Fs/audiolength):Fs/2]; %转换横坐标以Hz为单位

y=y(1:length(f));

figure(2),

plot(f,y);

xlabel('频率(Hz)','fontsize',8,'position',[180,-34.38,0]);

ylabel('功率(dBW)');

title('原始音频文件信号频谱图');legend('Audio');

由此可见此音频的主要频率集中在低频段。

3 音频的叠加与写出

%音频信号的叠加

[audio1,Fs1] = audioread('test.wav');%读取音频文件

audio2 = audio1(1:audiolength);

audio3 = audio2+0.1*audio;

sound(audio3,Fs);%播放音频文件

audiowrite('test1.wav',audio3,Fs)%写出新的音频文件

4 音频信号的拼接

%音频信号的拼接

audio4 = [audio;audio1];

sound(audio4,Fs);%播放音频文件

audiowrite('test2.wav',audio3,Fs)%写出新的音频文件

本文分享自微信公众号 - FPGA开源工作室(leezym0317),作者:OpenSLee

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-11-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【vivado学习六】 Vivado综合

    在 Flow Navigator 中点击设置, 然后选择Synthesis,或者 selectFlow > Settings > Synthesis Sett...

    FPGA开源工作室
  • Verilog实现偶数、奇数、半整数、分数(小数)分频,画电路图用D触发器实现分频

    通常我们说对原时钟进行N分频,即分频后的时钟的一个周期是原时钟周期的N倍。N可以为偶数、奇数、半整数、分数(小数)。

    FPGA开源工作室
  • 学会使用Hdlbits网页版Verilog代码仿真验证平台

    大家推荐一款网页版的 Verilog代码编辑仿真验证平台,这个平台是国外的一家开源FPGA学习网站,通过

    FPGA开源工作室
  • 《英雄联盟》俄罗斯女子战队Vaevictis Esports惨遭吊打 三场全负排名垫底

    《英雄联盟》LCL赛区一支由全女性选手组成的战队Vaevictis Esports迎来了S9赛季的比赛,遗憾的是一直被对手吊打,三场比赛全部失利,目前在LCL排...

    Zip
  • 【音视频连载-008】基础学习篇-SDL 播放 PCM 音频文件(下)

    接上篇 SDL 播放 PCM 音频文件,已经实现了 推 的模式去播放,接下来看看 拉 的模式如何实现。

    glumes
  • 程序流程结构-选择结构

    3 种循环都可以使用 continue 语句。执行到该语句时,会跳过本次迭代的剩余部分,并开始下一轮 迭代。如果 continue 语句在嵌套循环内,则只会影响...

    mcxfate
  • 筋肉机器人构造分成三个部分

    变形金刚?那还不够炫拉,在此为您介绍「筋肉」机器人~ ? 印象中,机器人总是以电路和硬质的关节、骨架组成,透过电路讯号完成机器操作;而现在, 新一代的生物机器...

    机器人网
  • 函数式编程中的数组问题

    好久没讲技术了,先回忆一下啥是函数式编程(FP)吧,比如FP要求使用表达式,不允许出现语句,这样更接近自然语言。

    Jean
  • Git帝国之tag大臣

    报,一前方战线的情报员说,东南30里敌军攻进来了,所幸我军大部分士兵前去防守及时击退敌军.但我军损失惨重!国王愤怒地锤了一下精雕龙台面,只听到啪啦一声,...

    Qt君
  • AlphaGo再下一城,是否代表已经诞生了真正的智能?

    在刚刚结束的围棋人机第二场比赛中,AlphaGo执黑再下一城,原来对李世石抱有很大期望的围棋界人士信心受到重创,同样作为职业九段的选手,柯洁甚至在第二场比赛未结...

    机器人网

扫码关注云+社区

领取腾讯云代金券