如何使用matlab制作音乐??

131次浏览(过去30天)
基督教Prinncess乌斯曼
基督教Prinncess乌斯曼 2014年7月8日
编辑: 图像分析 2020年6月18日
我的老师想让我们用MATLAB制作音乐。

接受的答案

图像分析
图像分析 2014年7月8日
附件是一个演示,make_wav_file。M,关于如何发出声音。
你可以这样开始:
NET.addAssembly (的系统。演讲》);
obj = System.Speech.Synthesis.SpeechSynthesizer;
obj。体积= 100;
说话(obj,现在你要听我的音乐);
祝你好运。

更多的答案(5)

阿方索Nieto-Castanon
阿方索Nieto-Castanon 2014年7月8日
或者你可以更现代一点,合成你自己的:
fs = 16384;%采样频率
T = 10;% 10秒的歌曲
时间= 0:1 / fs: T;%的时间样品
y =总和(cell2mat (arrayfun (@ (f, t) exp (-100 * (t) ^ 2)。*罪(cumsum (f * exp (- (t) ^ 2)) / fs),克隆亚麻([1 .7492],兰迪(1100)(400、4000),),repmat(1 +兰德(1100)。^ 4 * (2),1,2)+ kron([0。5)(1100)),“大学”, 0) '), 1);我疯了
soundsc (y, fs);%播放声音
3评论
图像分析
图像分析 2020年6月18日
这里是:
fs = 16384;%采样频率
T = 10;% 10秒的歌曲
timeVector = 0: 1/fs: T;%的时间样品
y =总和(cell2mat (arrayfun (@ (f, t) exp (-100 * (timeVector-t)。^ 2)。*罪(cumsum (f * exp (- (timeVector-t) ^ 2)) / fs),克隆亚麻([1 .7492],兰迪(1100)(400、4000),),repmat(1 +兰德(1100)。^ 4 * (2),1,2)+ kron([0。5)(1100)),“大学”, 0) '), 1);我疯了
%绘制波形:
情节(timeVector y“b -”);
网格
字形大小= 15;
包含(“时间”“字形大小”、字形大小);
ylabel (信号幅度的“字形大小”、字形大小);
标题(音频信号幅度的“字形大小”、字形大小);
g = gcf;
g.WindowState =“最大化”
soundsc (y, fs);%播放声音
我也附上了我的。

登录评论。


Chiemela维克多Amaechi
Chiemela维克多Amaechi 2019年11月24日
编辑:图像分析 2019年11月24日
音乐在matlab中的语法:
清晰;
a =罪(2 *π* 440 * (0:0.000125:0.5));
b =罪(2 *π* 493.88 * (0:0.000125:0.5));
c =罪(2 *π* 554.37 * (0:0.000125:0.5));
d =罪(2 *π* 587.33 * (0:0.000125:0.5));
e =罪(2 *π* 659.26 * (0:0.000125:0.5));
fs =罪(2 *π* 739.99 * (0:0.000125:0.5));
line1 = [a, a, e, e, f, f, e, e);
么= [d、d、c, c, b, b,,,);
line3 = (e, e、d、d、c、c, b, b);
歌= [line1, line2, line3, line3 line1,么);
% wavwrite(歌曲,“song.wav”);
audiowrite(歌曲,“song.wav”);
============================================
样的声音
笔记= {' C ' ' c# ' ' D ' Eb的‘E’‘F’‘f#’‘G’‘G # ' ' '“Bb”“B”
Freq =[261.6 277.2 293.7 311.1 329.6 349.2 ....
370.0 392.0 415.3 440.0 466.2 493.9]
歌= {' a ' g ' g ' a ' b ' c ' f ' g '%你的歌
一个= []
k = 1:元素个数(歌曲)
note_value = 0:0.000125:0.5%您可以修改音符的持续时间
=(一种罪恶(2 *π*频率(strcmp(笔记、歌曲{k})) * note_value)];
结束
声音(a)
============================================
游戏音乐
清晰的
抽搐
笔记= {' C ' ' c# ' ' D ' Eb的‘E’‘F’‘f#’‘G’‘G # ' ' '“Bb”“B”};
Freq =[261.6 277.2 293.7 311.1 329.6 349.2 ....
370.0 392.0 415.3 440.0 466.2 493.9];
歌= {' a ' g ' g ' a ' b ' c ' f ' g '};%你的歌
一个= [];
i = 2:70
k = 1:元素个数(歌);
note_value = 0:我* 0.0001:0.5;%您可以修改音符的持续时间
=(一种罪恶(2 *π*频率(strcmp(笔记、歌曲{k})) * note_value)];
结束
结束
声音(a);
toc
=============================================
a, b, c, d, e, f, g, h, i, j, k,
notecreate = @ (frq大调的)罪(2 *π*(1:大调的)/ 8192 * (440 * 2 ^ ((frq-1) / 12)));
notename = {' A ' ' # ' B ' C ' ' c# ' ' D ' ' D #”“E”“F”“f#”“G”“G #”};
歌= {' A ' ' A '“E”“E”的f# f#的“E”“E”' D ' ' D ' c#的c#的“B”“B”“”“”};
k1 = 1:长度(歌曲)
= strcmp(song(k1), notename);
songidx (k1) =找到(idx);
结束
大调的= 0.3 * 8192;
songnote = [];
k1 = 1:长度(songidx)
songnote = [songnote;[notecreate songidx (k1),大调的)0 (75)]");
结束
soundsc (songnote, 8192)
%音符A, B, C#, D, E, F#的频率是440hz, 493.88 Hz,
%554.37 Hz, 587.33 Hz, 659.26 Hz和739.99 Hz。
%如何写一个MATLAB文件,以产生一段音乐与笔记在
%以下顺序:A, A, E, E, F #, f#, E, E、D, D, c#, c#, B, B, A, A。
%指定每个音符的持续时间为0.3s。

Chiemela维克多Amaechi
Chiemela维克多Amaechi 2019年11月24日
a, b, c, d, e, f, g, h, i, j, k,
notecreate = @ (frq大调的)罪(2 *π*(1:大调的)/ 8192 * (440 * 2 ^ ((frq-1) / 12)));
notename = {' A ' ' # ' B ' C ' ' c# ' ' D ' ' D #”“E”“F”“f#”“G”“G #”};
歌= {' A ' ' A '“E”“E”的f# f#的“E”“E”' D ' ' D ' c#的c#的“B”“B”“”“”};
k1 = 1:长度(歌曲)
= strcmp(song(k1), notename);
songidx (k1) =找到(idx);
结束
大调的= 0.3 * 8192;
songnote = [];
k1 = 1:长度(songidx)
songnote = [songnote;[notecreate songidx (k1),大调的)0 (75)]");
结束
soundsc (songnote, 8192)
%音符A, B, C#, D, E, F#的频率是440hz, 493.88 Hz,
%554.37 Hz, 587.33 Hz, 659.26 Hz和739.99 Hz。
%如何写一个MATLAB文件,以产生一段音乐与笔记在
%以下顺序:A, A, E, E, F #, f#, E, E、D, D, c#, c#, B, B, A, A。
%指定每个音符的持续时间为0.3s。

Chiemela维克多Amaechi
Chiemela维克多Amaechi 2019年11月24日
%的音乐游戏
清晰的
抽搐
笔记= {' C ' ' c# ' ' D ' Eb的‘E’‘F’‘f#’‘G’‘G # ' ' '“Bb”“B”};
Freq =[261.6 277.2 293.7 311.1 329.6 349.2 ....
370.0 392.0 415.3 440.0 466.2 493.9];
歌= {' a ' g ' g ' a ' b ' c ' f ' g '};%你的歌
一个= [];
i = 2:70
k = 1:元素个数(歌);
note_value = 0:我* 0.0001:0.5;%您可以修改音符的持续时间
=(一种罪恶(2 *π*频率(strcmp(笔记、歌曲{k})) * note_value)];
结束
结束
声音(a);
toc

优素福Khmou
优素福Khmou 2014年7月8日
有许多文件,您可以加载和研究使用频率分析,以下是简单的例子:
data =负载(“gong.mat”);
Fs = data . Fs;
y = data.y;%向量42028 x1
声音(y, Fs)
2的评论
图像分析
图像分析 2016年6月6日
附件是一个例子。

登录评论。

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!