zoukankan      html  css  js  c++  java
  • How to insert a segment of noise to music file

    如何向音频文件中插入噪声

    为了研究噪声和音乐对EEG的的影响,实验前需要准备一段夹杂噪声的音乐。

    1. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2. % Program to insert the white Gaussian noise into muisc
    3. %y 音乐数据
    4. %Fs 采样率
    5. %bits 采样位,默认为16
    6. %wgn(m,n,p) 获取m * n、噪声强度为p的高斯白噪声
    7. % author: Andy Wu
    8. % date: 6/10/2009
    9. % modify: 9/10/2009
    10. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    11. %打开一个名为“请选择背景音乐”的对话框,显示指定路径下所有的.wav文件
    12. [file_name,file_path]=uigetfile('F:\MatlabProgram\*.wav','请选择背景音乐');
    13. sound_path=strcat(file_path,file_name);
    14. %将选中的音乐文件的数据和采样率读到sound_dataFs
    15. [sound_data,Fs,bits]=wavread(sound_path);
    16. sound_length=length(sound_data);
    17. %求出音乐的播放时间长度
    18. sound_time=sound_length/Fs;
    19. fprintf(1,'背景音乐播放长度 %6.2f(秒)\n',sound_time);
    20. %检查是否定义噪声时间, 否则输入噪声时间
    21. if ~exist('noise_time')
    22. noise_time=input('请输入噪声长度(秒):');
    23. end
    24. noise_length=noise_time*Fs;
    25. %输出一个噪声强度为1dBwnoise_length x 1的高斯白噪声矩阵数据
    26. noise_data=wgn(noise_length,1,1);
    27. %检查是否输入插入噪声的起始时间
    28. if ~exist('noise_start_time')
    29. noise_start_time=input('请输入您要设置的噪声起始时间(秒):');
    30. end
    31. %计算噪声数据插入位置
    32. noise_position=noise_start_time*Fs;
    33. %插入噪声数据
    34. sound_data(noise_position:noise_position+noise_length-1)=noise_data;
    35. %dlmwrite('F:\notify.txt',y); %将插入噪声后的音乐数据写入文本文件
    36. %soundData=csvread('F:\notify.txt'); %读出音乐数据至soundData
    37. object= analogoutput('winsound'); %建立硬件对象
    38. addchannel(object,[1 2]); %创建声音输出通道
    39. set(object,'SampleRate',Fs) %设置采样率
    40. data1 =sound_data(:,1); %双声道
    41. data2 =sound_data(:,1);
    42. putdata(object,[data1 data2]); %往声卡输送音乐数据
    43. %start(object); %开始输出音乐
    44. %stop(object) %停止输出音乐




  • 相关阅读:
    Delphi公用函数单元
    Delphi XE5 for Android (十一)
    Delphi XE5 for Android (十)
    Delphi XE5 for Android (九)
    Delphi XE5 for Android (八)
    Delphi XE5 for Android (七)
    Delphi XE5 for Android (五)
    Delphi XE5 for Android (四)
    Delphi XE5 for Android (三)
    Delphi XE5 for Android (二)
  • 原文地址:https://www.cnblogs.com/zeweiwu/p/4752719.html
Copyright © 2011-2022 走看看