夹子音转换器matlab

操作过程点击此处观看
上段时间补习了一下傅里叶变化的知识,突发奇想可以根据此做一款声音转换器,使用工科神器Matlab进行完成,并且开发了可操作界面如下图所示:
夹子音转换器界面展示

功能实现与描述

软件中可以实现声音的录制、回放、文件的保存与打开功能,两个旋钮括约肌肛缩可以调整声音的频率与播放速度。

声音录制

matlab封装了声音的开始录制与结束录制功能函数,该软件使用appdesigner进行开发,声音录制与暂停按键的callback函数如下:

            global FlagStartOrEnd;              %控制开始或结束录制标志位
            global recObj;                      %录音对象
            global TextState;                   %状态信息提示
            global TagSoundData;                %目标音源数据
            global TagSoundFs;                  %目标音源频率
            global MinAbsValue;                 %最小绝对值 傅里叶变化数值
            
            if FlagStartOrEnd
                % 切换开始录音图片               %开始录音
                app.ButtonStartRecording.Icon = 'Start.png';
                % 重置标志位
                FlagStartOrEnd = false;
                
                % 结束录音
                stop(recObj);
                
                % 获取录音数据
                audioData = getaudiodata(recObj);
                
                % 参数传递
                TagSoundData = audioData;
                TagSoundFs = 22050;
                
                % 图像展示
                [ResFreq, ResMag, ResPhase] = FFTAnslysis(app, TagSoundData, TagSoundFs, MinAbsValue, '录制声音', 100);
                
                % 状态信息提示
                TextState = {
   '录音结束了哦(^_^)'};
                app.TextAreaState.Value = TextState;
                
                % 另存为录音文件
                [FileName, FilePath] = uiputfile('*.wav');
                
                % 状态信息提示
                TextState = {
   ['文件<', FileName, '>保存完成了呐'], TextState{
   :}};
                app.TextAreaState.Value = TextState;
                
                %将音频文件写入到wav
                audiowrite(FileName, audioData, 22050);
                
                
            else
                % 切换结束录音图片              %结束录音
                app.ButtonStartRecording.Icon = 'End.png';
                % 重置标志位
                FlagStart
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值