C#模拟钢琴及音频播放器设计+源代码(2)
时间:2019-01-12 19:23 来源:毕业论文 作者:毕业论文 点击:次
3.1 开发平台 5 3.1.1 Microsoft Visual Studio 2012 5 3.2 应用技术 5 3.2.1 C#简介 5 3.2.2 MIDI设备 5 3.3 本章小结 6 第4章 系统功能实现 7 4.1 主程序启动模块 7 4.2钢琴演奏及音频播放部分界面和实现代码 7 4.2.1界面部分 7 4.2.2 界面设计 8 4.3 演奏播放 11 4.4音频播放 18 4.4 本章小结 19 第5章 系统测试与分析 20 5.1 系统测试 20 5.1.1 系统测试的意义与常见方法 20 5.1.2 本系统采用的测试手段 20 5.2系统运行环境 20 5.2.1 硬件环境 20 5.2.2 软件环境 20 5.3系统测试 20 5.3.1 部分测试举例 20 5.3.2 系统缺陷 23 5.5 本章小结 23 第6章 总结与展望 24 6.1 总结 24 6.2 展望 24 毕业设计体会 25 致谢 26 参考文献 27 英文翻译资料 28 第1章 绪论 1.1开发背景 很多钢琴爱好者都希望能过电脑键盘来模拟钢琴弹奏,发出与之相对应的声音。只要想到,就有可以尝试的途径。在很多教学的参考书和网络上已经有类似的想法和成型的设计。本设计就是基于模拟钢琴演奏的想法上提出来的,同时附加音频播放功能,使该设计的功能更加广泛。本设计是用C#语言在VS2012平台上开发的,能够实现电脑键盘对应钢琴键的演奏,或是直接用鼠标点击弹奏。是一个集钢琴演奏和音频播放为一体的娱乐软件。为了更好的完善设计,积累使用C#的经验,我在设计其中的工具包时尽可能的先规划好框架,考虑到各种可能性,多加尝试[3]。 1.1.1 设计背景 音频播放器的实现较为简单,模拟钢琴演奏的功能需要学习MIDI设备的相关知识。该设计的框架是一种流式的,数据流经元件组成的网络,信息在每个组件传递到下一个组件传递之前,会像管道一样经过滤筛。消息流首先进入输入装置,输入装置接收来自外部的MIDI消息,然后将消息流经下面的一个用户组件。接着该消息经过频道并停顿,此组件仅跟踪所有当前发声的音符。当消息流停止,频道阻塞可以关闭所有发声的音符,使他们没有继续停留在播放列表。最后,这条讯息到达输出设备。在这里,他们被传输到外部MIDI设备[12]。 1.1.2 设计意义 钢琴是闻名于世界的三大乐器之父,在成千上万种乐器里,钢琴当之无愧的被众多音乐才子称为乐器之王。早在很久以前的14世纪,钢琴就已经可以同时表现不同音和曲调,多功能使得钢琴的音色显得立体而悠扬。人们的音乐思路在与钢琴的不断接触中如野马般奔腾开阔,渐渐有了灵感和创造力。作为键盘乐器,钢琴曾近以复调音乐为特色流行于欧洲恰。演进至今,音乐文化随之不断精进发展,钢琴更加能细腻地表现出人们丰富的情感世界和大自然的瑰丽。但是钢琴的购买价格较高,学习成本也不是普通家庭能承担。模拟钢琴及音频播放这样一个小小的软件却是家家户户可以随意下载的。不仅可以用电脑键盘或者鼠标熟悉钢琴的指法,对以后钢琴的学习有个启蒙作用。也可以偶尔感受弹奏的乐趣,陶冶情操,丰富课余生活。其附带的音频播放功能,也让该设计功能更加完善。 (责任编辑:qin) |