用lilypond实现模进
基本练习通常是一个两个简单动作在不同位置上反复操练,所以打谱的时候用模进必不可少。
所谓模进,就是把一个片段平行地转移到其他音高上进行。比如
do re mi fa
可以把从do开始改成从so开始,那么就变成了
so la si do
lilypond的模进命令很管用,能节省大量时间。它的命令是:
%先声明片段
pianduan = \relative c'{
c d e f
} \score{
%把片段从c模进到d
\transpose c d { \pianduan}
}
下面给出我做的例子
%声明好片段basicOne
basicOne = \relative c''{
d8-2~ c-1~ <d c>4
e8-3~ c-1~ <e c>4
f8-4~ c-1~ <f c>4
g8-5~ c,-1~ <g' c,>4
} %正式打谱
\score {
\relative c''{
\clef treble
\basicOne
\break
%模进到d
\transpose c d { \basicOne }
\break
%模进到e,下面类似
\transpose c e { \basicOne }
\break
\transpose c f { \basicOne }
\break
\transpose c g { \basicOne }
\break
\transpose c a { \basicOne }
\break
打完谱子基本上就长下面这样

\transpose是严格模进,也就是说,模进后的每个音符之间的音程关系和之前相同。
所以像这样
do re mi
从c模进到d之后,就会变成
re mi #fa
因为re mi是全音,所以这两个音模进后也必须保持全音,也就是mi #fa,而不会是mi fa
如果要让模进始终在原来的调性音阶上进行,这种模进一般被称作首调模进。
命令是\modalTranspose,与其配套的还要再声明一个模进用的音阶,示例如下:
%声明要模进的片段
pianduan = \relative c''{
c d e f
} %声明模进的音阶,就是片段只会在这些音上模进
scaleC = \relative c'{ c d e f g a b } \score{
\relative c'{
%将片段在指定音阶上从c模进到d
\modalTranspose c d \scaleC \pianduan
}
}
上面的练习就改成这样
scaleC = \relative c''{ c d e f g a b }
basicone = \relative c''{
d8-2~ c-1~ <d c>4
e8-3~ c-1~ <e c>4
f8-4~ c-1~ <f c>4
g8-5~ c,-1~ <g' c,>4
}
\score {
\relative c''{
\clef treble
\basicone
\break
\modalTranspose c d \scaleC \basicone
\break
\modalTranspose c e \scaleC \basicone
\break
\modalTranspose c f \scaleC \basicone
\break
\modalTranspose c g \scaleC \basicone
\break
\modalTranspose c a \scaleC \basicone
\break
\modalTranspose c b \scaleC \basicone
\break
\modalTranspose c c' \scaleC \basicone
}
}
效果如下

用lilypond实现模进的更多相关文章
- Open Yale course:Listening to Music
一.Introductionhttps://app.yinxiang.com /Home.action?offer=www_menu#n=4b034a29-986d-4914-8220-eb99c2e ...
- AIR lame参数配置
-Duser.name=Z.yu 固定码率的例子:=======================================================================固定码率 ...
- [转]linux下lame的使用
找到這篇好文章,不得不说開源的Lame功能很強大 linux下lame的使用 % lame [参数] <输入文件名> [<输出文件名>] 如需查询更多参数,可输入下列命令: % ...
- 机器学习第7周-炼数成金-支持向量机SVM
支持向量机SVM 原创性(非组合)的具有明显直观几何意义的分类算法,具有较高的准确率源于Vapnik和Chervonenkis关于统计学习的早期工作(1971年),第一篇有关论文由Boser.Guyo ...
- zt 李鸿章听过《彩云追月》?
ZT 李鸿章听过<彩云追月>? 2013-05-11 09:35:52 编辑 删除 归档在 观世上之音 | 浏览 1041 次 | 评论 1 条 尝试在网上找一点有关<彩云追月> ...
- PHP hex文件及bin文件读取
背景:做物联网时经常会有软件上传这种操作,上传的软件包文件常见的是hex和bin这两种. 一 hex文件读取 1 首先我们需要了解hex文件内容格式 (图及下面说明来自网络,侵权必删) :(冒号)每个 ...
- poj2305-Basic remains(进制转换 + 大整数取模)
进制转换 + 大整数取模一,题意: 在b进制下,求p%m,再装换成b进制输出. 其中p为b进制大数1000位以内,m为b进制数9位以内二,思路: 1,以字符串的形式输入p,m; 2,转换:字符串-&g ...
- poj2635(千进制取模+同余模定理)
题目链接:https://www.cnblogs.com/kuangbin/archive/2012/04/01/2429463.html 题意:给出大数s (s<=10100) ,L (< ...
- poj 2305(指定进制,大数取模)
题意:输入一个进制b,在输入两个基于b进制的大整数 x,y ,求x%y的b进制结果. http://162.105.81.212/JudgeOnline/problem?id=2305 函数: Str ...
随机推荐
- POJ 1986:Distance Queries(倍增求LCA)
http://poj.org/problem?id=1986 题意:给出一棵n个点m条边的树,还有q个询问,求树上两点的距离. 思路:这次学了一下倍增算法求LCA.模板. dp[i][j]代表第i个点 ...
- flask高级编程 LocalStack 线程隔离
转:https://www.cnblogs.com/wangmingtao/p/9372611.html 30.LocalStack作为线程隔离对象的意义 30.1 数据结构 限制了某些能力 30 ...
- map的实现--红黑树
一.什么是红黑树??? 红黑树首先是一棵搜索二叉树,树中的每一个结点的颜色不是黑色就是红色.它的特性如下: 1.根节点是黑色 2.每一个结点不是黑色就是红色 3.不能有连续的两个红色结 ...
- .Net Core 学习使用Session、和Cookie验证身份
一.使用Session 1.1 Status.cs 中配置 public void ConfigureServices(IServiceCollection services) { services. ...
- kuangbin专题专题四 Frogger POJ - 2253
题目链接:https://vjudge.net/problem/POJ-2253 思路: 从一号到二号石头的所有路线中,每条路线中都个子选出该路线中两点通路的最长距离,并在这些选出的最长距离选出最短路 ...
- C语言指针使用不当带来的内存不可读
前几天遇到一个C语言初学者提到的一个问题,代码我做了一些修改,如下: #include <stdio.h> #include <string.h> int main(void) ...
- 提升布局性能____Making ListView Scrolling Smooth
listview是一个比较重要的UI组件,一切影响UI的操作,比如适配器从磁盘.网络或者数据库中加载数据的操作,最好都放在子线程中完成.子线程可以使用thread,不过那样比较老土,官方推荐使用Asy ...
- SpringBoot Jpa入门案例
版权声明:署名,允许他人基于本文进行创作,且必须基于与原先许可协议相同的许可协议分发本文 (Creative Commons) 我们先来了解一下是什么是springboot jpa,springboo ...
- 创建 gif
1.动态创建 <Container name="layLoading"/> if (m_pLoadingGif == NULL) { m_pLoadingGif ...
- 【CYH-01】小奔的国庆练习赛:赛后标程
前排鸣谢@找寻 大佬 emm-由于头一次举办公开赛所以--准备不是很充分,所以说题解也没有备好,在这里表示歉意. 欢迎大家来发布题解,在此我们可以提供AC代码,供大家参考. T1 解析:这一题可能栈溢 ...