这次换种方式吧,不过得先麻烦大家装一下tuneR这个包了。依然是受谢师兄的启发!


library(tuneR)<br />
d = 20000<br />
sil = sine(20, bit = 16, duration = 1000)<br />
so.d = sine(392, bit = 16, duration = d)<br />
si.d = sine(494, bit = 16, duration = d)<br />
do = sine(523, bit = 16, duration = d)<br />
re = sine(578, bit = 16, duration = d)<br />
mi = sine(659, bit = 16, duration = d)<br />
fa = sine(698, bit = 16, duration = d)<br />
so = sine(784, bit = 16, duration = d)<br />
music = bind(do, sil, do, sil, do, do, so.d, so.d, <br />
    mi, sil, mi, sil, mi, mi, do, do, sil, do, mi, so, so, sil, <br />
    so, so, fa, mi, re, re, re, re, sil, re, mi, fa, fa, sil, <br />
    fa, fa, mi, re, mi, mi, do, do, sil, do, mi, re, re, so.d, <br />
    so.d, si.d, re, do, do, do, do)<br />
play(music) <br />




记得打开声音!
好!



这个配上前面那个可以整个电影了。
太酷了,你应该把它发给Uwe Ligges
我运行的时候出现这个是怎么回事儿啊:

Warning messages:

1: In any(sample.data%%1) : 将种类为'double'的变元强迫转化为逻辑值

2: In system(paste(player, ..., object)) : mplay32没找到
出错时请报告sessionInfo()
[quote]引用第4楼混此一生2009-01-03 07:56发表的“”:

我运行的时候出现这个是怎么回事儿啊:

Warning messages:

1: In any(sample.data%%1) : 将种类为'double'的变元强迫转化为逻辑值

2: In system(paste(player, ..., object)) : mplay32没找到[/quote]



首先你确定是在Windows下面运行的,然后检查声卡是否驱动安装正确。
不错不错,不过音乐还是偏简单了

玩玩还可以,实用性不强啊
仿照师兄两次的灌水帖整理:
<br />
library(tuneR)<br />
d = 20000<br />
do=sine(512,bit = 16, duration = d)<br />
re=sine(576,bit = 16, duration = d)<br />
mi=sine(640,bit = 16, duration = d)<br />
fa=sine(683,bit = 16, duration = d)<br />
so=sine(768,bit = 16, duration = d)<br />
la=sine(852,bit = 16, duration = d)<br />
si=sine(960,bit = 16, duration = d)<br />
dos=sine(512,bit = 16, duration = d/2)<br />
res=sine(576,bit = 16, duration = d/2)<br />
mis=sine(640,bit = 16, duration = d/2)<br />
fas=sine(683,bit = 16, duration = d/2)<br />
sos=sine(768,bit = 16, duration = d/2)<br />
las=sine(852,bit = 16, duration = d/2)<br />
dol=sine(512,bit = 16, duration = d*2)<br />
sol=sine(768,bit = 16, duration = d*2)<br />
music = bind(do,re,mi,fa,so,so,sos,fas,mi,fa,fa,fas,mis,re,do,mi,sol,do,re,mi,fa,so,so,sos,fas,mi,fa,fa,fas,mis,re,do,mi,dol,<br />
        la,la,las,sos,fa,so,so,sos,fas,mi,fa,fa,fas,mis,re,do,mi,sol,la,la,las,sos,fa,so,so,sos,fas,mi,fa,fa,fas,mis,re,do,mi,dol)<br />
    play(music)<br />
    y = c(11, 8, 2, 11, 10, 8, 5, 3, 11, 9, 8, 5, 1, 12, <br />
            11, 8, 7, 6, 5, 4, 3, 2, 1, 11, 9, 8, 5, 11, 10, 8, 5, 3, <br />
            1, 8, 2, 11, 10, 9, 8, 7, 6, 5, 4, 3, 11, 8, 11, 8, 7, 6, <br />
            5, 4, 3, 2, 1, 12, 8, 8, 50, 8, 4, 9, 4, 12, 11, 10, 7, 6, <br />
            5, 4, 10, 7, 4, 10, 7, 4, 10, 7, 4, 10, 9, 8, 7, 6, 5, 4, <br />
            3, 2, 1, 10, 7, 4, 10, 7, 4, 10, 7, 4, 10, 7, 4, 10, 4, 50, <br />
            9, 8, 7, 50, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 9, 1, <br />
            8, 6, 2, 10, 6, 3, 10, 6, 4, 12, 11, 10, 9, 8, 7, 6, 5, 10, <br />
            6, 4, 10, 6, 3, 10, 9, 8, 7, 6, 2, 6, 1, 50, 50, 7, 2, 11, <br />
            10, 9, 8, 7, 3, 11, 7, 5, 4, 11, 7, 11, 7, 1, 11, 9, 8, 7, <br />
            6, 5, 4, 3, 2, 1, 12, 7, 12, 7, 5, 12, 7, 4, 7, 3, 2, 7, <br />
            50, 50, 50, 50, 10, 9, 8, 7, 6, 5, 4, 2, 50, 50, 50, 50)<br />
    r = c(3, 5, 5, 10, 4, 6, 2, 9, 2, 9, 2, 1, 1, 2, 2, <br />
            7, 3, 3, 3, 10, 3, 3, 3, 3, 2, 1, 3, 1, 12, 2, 3, 3, 3, 8, <br />
            3, 3, 6, 2, 1, 1, 2, 6, 4, 2, 3, 10, 2, 3, 3, 3, 1, 1, 1, <br />
            1, 1, 8, 1, 1, 1, 1)<br />
    x = rep(1:60, r)<br />
    plot(x, y,type="n",xlim = c(0, 60), ylim = c(-20, 30))<br />
    for (i in 1:10000) {<br />
        points(x, y, col=rainbow(length(x))[1:length(x)])<br />
        Sys.sleep(0.2)<br />
        points(x, y,col="white")<br />
        x = ifelse(x == 1, x * 60, x - 1)<br />
    }    <br />


祝大家新年快乐。
9 个月 后
已收入fun包的demo("HappyNewYear2009Music")。
2 年 后

回复 第13楼 的 谢益辉:不知道哪里能找到 fun包