基于钩子技术的键盘乐谱输入播放系统 ——按键奏鸣曲软件-毕业论文_第1页
基于钩子技术的键盘乐谱输入播放系统 ——按键奏鸣曲软件-毕业论文_第2页
基于钩子技术的键盘乐谱输入播放系统 ——按键奏鸣曲软件-毕业论文_第3页
基于钩子技术的键盘乐谱输入播放系统 ——按键奏鸣曲软件-毕业论文_第4页
基于钩子技术的键盘乐谱输入播放系统 ——按键奏鸣曲软件-毕业论文_第5页
免费预览已结束,剩余49页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 本科毕业论文本科毕业论文 (科研训练、毕业设计) 题题 目:目:基于钩子技术的键盘乐谱输入播放系统基于钩子技术的键盘乐谱输入播放系统 按键奏鸣曲软件按键奏鸣曲软件 姓 名: 学 院:软件学院 系:软件工程 专 业:软件工程 年 级: 学 号: 指导教师: 职称: 年 月 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 基于钩子技术的键盘乐谱输入播放系统基于钩子技术的键盘乐谱输入播放系统 按键奏鸣曲软件按键奏鸣曲软件 摘 要 多媒体编辑软件是一种高级的软件程序或命令的集合,这些命令可以支持各式 各样的硬件装置与文件格式,将图形、文字、音频、影片等视听对象组合在一起,进一步提 供各种对象显示的顺序及一个导向结构。音乐乐谱输入系统则是其中的一种。根据总体系统 结构分析,目前音乐乐谱输入播放系统软件的功能设计主要可以通过显示模块、编辑模块、 音频文件操作模块和播放四大模块构成,其具体又可划分若干细节功能模块。 按键奏鸣曲是基于键盘输入的微型乐音播放系统软件,也可作为音乐创作的支持辅助工 具。从键盘数字按键输入,直接对应简谱中央音区音阶,进行乐音的播放,据有简捷明了的 用户界面和提示说明。在响应用户键盘输入部分,为了保证软件对于焦点无论在不在本软件, 都可以正常播放的特性,采用了 “钩子技术”监控键盘信息交换来加以实现,而不是普通 的响应按键信息的方法。播放模块则使用播放函数 sndPlaySound 来进行对应的音频文件调 度播放。界面部分利用 MFC AppWizard 创建应用程序框架来进行实现。 本文不只是单纯的软件产品分析,而是综合的对于产品所涉及领域、行业基础、成熟同 类、发展前景等全方面的探讨论述,更是基于现实问题、分析探讨问题以至最终从独特的角 度解决问题的一个连贯的思维过程,也希望以此启发其他更多的软件从业人员,创造出更多 新颖、独特、符合人性化需求的软件产品。 关键词 多媒体编辑软件 键盘乐谱输入的音乐播放软件 键盘监控 钩子技术 音频 文件播放 MFC App Wizard 应用程序框架 思维过程 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 Abstract The multimedia editing software is a set of senior software programs and commands. It supports kinds of hardware and file formats to combine the images, texts, audios, movies into one unit, which provides a sequence or a directed construction for all objects displaying. One instance is just the musical player based on notes input. As the general analyse of system functions, this kind of software always can be constructed as four function modules: appearance, editing, processing and playing, which are divided into more specific parts. KeyboardSound is a micro musical player based on keyboard input, which also can be treated as an assistant tool for music creation. Users input musical notes directly from the number buttons to play sound effect as numbered musical notation with the instruction on the interface. In order to make the product affective without being focused, as users can always play sound from keyboard even doing other things from other windows, this software use a technique named “Hooks” to monitor the information exchange between pc memory and the keyboard rather than the simple common methods of keyboard message listening.The software uses fuction “sndPlaySound” to play audio files and build whole system with MFC AppWizard framework. This paper is not just a simple product introduction but rather a complex study about the background, aspect and development of the whole industry of musical notes playing software. Whatmore, it is a journey of thought from discover the practical problem, to research it , then to resolve it on a unique point. The author wish more software engineers could get inspiration from this software to creat more brilliant products as the comman need. Key words Multimedia editing software Musical player based on notes input Monitor of the keyboard Hooks Audio play MFC AppWizard framework Journey of thought 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 目目 录录 引言引言1 第一章第一章 概述概述.2 1.1计算机多媒体概述.2 1.1.1媒体的概念.2 1.1.2多媒体与多媒体技术的涵义.2 1.1.3多媒体计算机系统层次结构.3 1.2多媒体编辑软件领域相关简介.5 1.2.1多媒体编辑软件5 1.2.2多媒体编辑软件的分类6 1.3本论文特色和要点.7 第二章第二章 项目相关背景研究项目相关背景研究.8 2.1相关乐理基础知识.8 2.1.1简谱相关理论基础.8 2.1.2五线谱相关理论基础9 2.2计算机音频相关11 2.2.1计算机音频简介.11 2.2.2声音文件的格式.12 2.3音乐乐谱输入播放器的实现分析13 2.3.1音乐乐谱输入播放系统的总体结构.13 2.3.2音乐乐谱输入播放系统的相关软件设计14 2.4相关成熟产品的横向比较、分析和研究15 2.4.1基于五线谱输入的经典打谱软件:Overture .15 2.4.2小巧精致的简谱快速输入播放器系统:MidiInput 17 第三章第三章 按键奏鸣曲按键奏鸣曲软软件的需求分析件的需求分析19 3.1基本需求分析19 3.2其他相关分析20 3.2.1软件定位综述20 3.2.2项目时间进度安排.20 3.3系统和相关资源需求21 第四章第四章 按键奏鸣曲软件的相关设计按键奏鸣曲软件的相关设计22 4.1总体设计22 4.1.1功能分析与核心技术问题概述22 4.1.2模块分工设计23 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 4.1.3软件开发工具的选型23 4.2MFC 相关功能.24 4.3C+编程中相关声音文件播放方法的概述24 4.3.1PlaySound 25 4.3.2多媒体控制接口MCI.26 4.3.3MCIWnd 窗口类 .26 4.3.4Cwave 类 .27 4.4详细设计28 4.4.1设计 DLL 模块 .28 4.4.2创建链接DLL 文件的钩子可执行程序.32 4.5键盘响应监控输入关键技术:“钩子技术”介绍.33 4.5.1钩子概念 .34 4.5.2钩子的分类 34 4.5.3编写钩子函数简述.35 第五章第五章 总结总结.36 5.1本乐谱播放器的特点总结.36 5.2领域未来的相关发展方向和扩展前景.36 5.3结束语.37 致致 谢谢38 参考文献参考文献.39 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 Contents PREFACE1 CHAPTER 1 INTRODUCTION.2 1. 1Computer Multimedia 2 1.1.1Introduction to the media 2 1.1.2Multimedia and Multimedia Computing Technology .2 1.1.3Construction of the multimedia computer system3 1. 2About the multimedia editing software.5 1.2.1Multimedia editing software 5 1.2.2Sorts of the multimedia editing software .6 1. 3Features and characters of this paper.7 CHAPTER 2 BACKGROUND RESEARCH8 2. 1Basic musical theory.8 2.1.1The numbered musical notation 8 2.1.2The staff9 2. 2About computer audio.11 2.2.1The computer audio.11 2.2.2Format of audio files.12 2. 3Analyse of the media player based on notes input13 2.3.1General construction .13 2.3.2Main design of the media player based on note input 14 2. 4Study on mature products15 2.4.1Classical staff editor and player: Overture .15 2.4.2Rapid numbered musical notation input software: MidiInput 17 CHAPTER 3 REQUIREMENTS19 3. 1Basic software requirement.19 3. 2Other analyse.20 3.2.1Orientation of the software 20 3.2.2Time schedule 20 3. 3System and resources requirement.21 CHAPTER 4 SOFTWARE DESIGNMENT.22 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 4. 1Overall designs22 4.1.1Function analyse and core techniques22 4.1.2Modules division 23 4.1.3Choose of the develop enviroment 23 4. 2About Microsoft Windows MFC.24 4. 3Methods of audio play in c+ programming24 4.3.1PlaySound fuction.25 4.3.2Windows MCI.26 4.3.3MCIWnd class 26 4.3.4Cwave class .27 4. 4Detail design.28 4.4.1Creating DLL modules.28 4.4.2Linking to the .exe file 32 4. 5Core technique of the keyboard monitoring: “The Hook”.33 4.5.1Introduction to the hook 34 4.5.2Sorts of the hook 34 4.5.3General hook fuction creating 35 CHAPTER 5 SUMMARY.36 5. 1Character summary of the software36 5. 2Development and future aspect36 5. 3The ending37 ACKNOWLEDGEMENT.38 BIBLIOGRAPHY39 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 引引 言言 计算机作为当今科技的产物存在于现今的文化之中,已经不能单纯地认定它只是一种技 术工具,它也是联系人与信息世界的中介,是这种文化的一个界面。人们通过与计算机的交 流来学习和把握这个世界,计算机不仅在于沟通了科学与艺术,更重要的是它联系起艺术设 计的传统与未来,它融入了传统的艺术形式又包含了电子世界的独特语言,在现实中发展又 改变着现实。 如果说十几年前人们对计算机还停留在深不可测的认识阶段,今天,计算机则已渗入到 社会生活的每一个角落。随着计算机软硬件技术的不断提高,计算机图形用户及人机交互方 法的出现,加之专业艺术设计人员的参与,计算机已成为当今艺术创作和艺术设计的重要组 成部分。平面广告设计、建筑三维图形、三维动画、出版印刷、音效制作、动画视频等无一 不见计算机的踪迹。同时,计算机这一新的设计工具,对当今艺术创作设计的观念和方法也 带来巨大而深远的影响。人,在用自己智慧的结晶冲击着自己精神的领域,不断拨开意识中 微妙的云雾,而又勤恳地开拓着广阔的崭新思维疆界,去一览潜藏在内心的奇异创作视野。 伴随着无数专业娴熟技艺超群的艺术家,亦或顶礼膜拜心存向往的艺术朝圣者对各种多 媒体应用软件的数量和质量提出更多、更好、更高的要求,计算机多媒体应用领域形成了多 方向、全面化、专业化的发展需求。既需要可以满足精深全面的职业需求,能将艺术奇思妙 想的火种熊熊点燃的专业化软件,又需要可以满足艺术爱好者降低艺术入门门槛渴望的,喜 闻乐见、信手拈来又实用方便的娱乐小品。本文就是基于这样一背景,从对艺术、多媒体、 计算机的关注入手,带着或多或少人文学科的风格气息探讨软件系统在音乐创作领域的发展、 态势和前景,引出对于一款应用概念独特、技术层面值得研究、辅助于多媒体创作的微型软 件产品的思索和探讨。算是抛砖引玉,作为多媒体应用软件领域创新的一点尝试和研究,希 望激发更多计算机从业人员以及相关爱好者的探索兴趣,为丰富艺术创作软件园地做一些小 小的贡献。 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 第一章第一章 概述概述 1.1 计算机多媒体概述 1.1.1 媒体的概念 媒体(Media)即媒介、媒质,它是信息的载体。媒体在计算机领域有两层含义:一是 以存储信息的实体,如磁带、光盘和半导体存储器等,中文译为媒质;另一类是指传递信息 的载体(即计算中的数据) ,如数字、文字、声音、图形和图像等,中文译为媒介。计算机 多媒体技术中所说的是指后者。 根据国际电信联盟(ITU)和国际标准化组织制定的媒体分类标准,媒体可分为六类: (1) 感觉媒体(Perception Medium):直接作用于人们的感觉器官,从而产生直接感觉 的媒体,如语言、音乐、自然界中的各种声音、各种图像和动画、文字等。 (2) 表示媒体(Representation Medium):为了传送感觉媒体而人为研究出来的媒体。借 助于此种媒体,便能更加有效地存储感觉媒体或将感觉媒体在不同地域之间传送。如语言编 码、电报码和条形码等。 (3) 显示媒体(Presentation Medium):用于通信中时电信号和感觉媒体之间产生转换用 的媒体,如输入输出设备,鼠标器、键盘、显示器和打印机等。 (4) 存储媒体(Storage Medium):用于存放某种媒体的媒体,如纸张、磁带、磁盘和光 盘等。 (5) 传输媒体(Transmission Medium):用于传输某些媒体的媒体。常用的如电话线、 电缆和广纤等。 (6) 交换媒体(Exchange Medium):在系统之间交换数据的手段与类型,他们可以是存 储媒体、传输媒体或者是两者的结合。 1.1.2 多媒体与多媒体技术的涵义 多媒体译自英文 Multimedia,该词是由 Multia 和 Media 构成的复合词,与之对应的是 单媒体(Monomedia) 。从字面上看来多媒体是两种或两种以上媒体的有机集合体,或说由 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 单媒体复合而成的有机集成体。因此人们将文本、音频、图形、图像、动画和视频的综合体 笼统成为“多媒体” 。事实上,由于计算机技术和数字信息处理技术的实质性发展, 才使 我们拥有了处理多媒体信息的能力,使得“多媒体”成为一种现实。所以现在我们说的多媒 体已不再是单纯的字面含义,更多的是指处理它的一套技术和方法,即“多媒体技术”一词 的同义语。 多媒体技术(Multimedia Computing Technology)是指使用计算机综合处理文本、声音、 图形、图像、动画和视频等多种不同类型媒体信息的技术,其实质是通过进行数字化采集、 获取、压缩解压缩、编辑、播放等加工处理,再以单独或合成形式表现出来的一体化处理 技术。这种综合处理多媒体信息的突出特点除了信息载体的多样化外,还有两个关键特性, 既集成性和交互性。 信息载体多样化是对计算机而言的,也被称为信息媒体的多维化。这一特性不仅使计算 机所能处理的信息时空范围扩大,而且使人与计算机的交互具有更广阔的、更加自由的空间。 人类对信息接受的 5 个感觉(视、听、触、嗅、味)空间中,前三个占了 95%以上的信息量, 因此信息多样化及其与空间、时间的相关性使计算机更加人性化。 集成性一方面指把单一的、零散的媒体有效的集成在一起,即信息载体的集成,它使计 算机信息空间得到相对的完善,并能充分得到利用。另一方面,集成性还充分表现在存储信 息的实体集成。多媒体信息由计算机统一存储和组织,使得 1+12 的系统特性得到体现,应 该说集成性是系统的一次飞跃。 交互性将为用户提供更加有效的控制和使用信息手段,也为了多媒体技术的应用开辟了 广泛的领域。交互性不仅增加用户对信息的注意力和理解,延长了信息的保留时间,而且交 互活动本身也作为一种媒体加入了信息传递和转换的过程,从而能使用户获得更多信息。另 外,借助交互活动,用户可参与信息的组织过程,甚至可控制信息的传播过程,从而使用户 研究、学习所感兴趣的方面,并获得新的感受,这是许多使用户只能被动接受信息的单媒体 (如书报、电影等)所无法比拟的。 1.1.3 多媒体计算机系统层次结构 当我们研究计算机上基于多媒体特性的相关软件产品时,多媒体计算机系统体系结构是 我们必须加以认识和考虑的。多媒体计算机系统与一般计算机系统结构原则上是相同的,即 由底层硬件系统和其上层软件系统组成。软、硬件功能分配及界面的确定也是多媒体计算机 体系结构包含的内容之一。硬件具有原子性质,软件具有信息性质;软、硬件在逻辑功能上 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 具有等效性,在发展上具有同步性。多媒体计算机系统只是考虑多媒体特性在系统结构各层 次的内容比一般计算机系统更丰富。图 1.1 所示为层次结构的内容。 图 1.1 多媒体系统的层次结构 第一层为多媒体外围设备,包括各种媒体、视听输入/输出设备及网络。 第二层为多媒体计算机硬件,主要配置与各种外部设备的控制接口卡,包括多媒体实时 压缩和解压缩专用的电路卡。 第三层为多媒体驱动程序、操作系统。该层软件为系统软件的核心,除与硬件设备打交 道(驱动、控制这些设备)外,还要提供输入/输出控制界面程序,即 I/O 接口程序,而操 作系统则提供对多媒体计算机的硬件、软件控制与管理。 第四层是媒体制作平台和媒体制作工具软件,支持应用开发人员创作多媒体应用软件。 设计者利用该层提供的接口和工具采集、制作媒体数据。常用的有图像设计与编辑系统,二 维和三维动画制作系统、声音采集与编辑系统、视频采集与编辑系统以及多媒体公用程序与 数字剪辑艺术系统等。 第五层为多媒体编辑与创作系统。该层是多媒体应用系统编辑制作的环境,根据所用工 具的类型,有的是脚本语言及解释系统,有的是基于图标导向的编辑系统,还有的是基于时 间导向的编辑系统。通常除编辑功能外,还具有控制外设播放多媒体的功能。设计者可以利 用这层的开发工具和编辑系统来创作各种教育、娱乐、商业等应用的多媒体节目。 第六层为多媒体应用系统的运行平台,即多媒体播放系统。该层可以在计算机上播放硬 盘上的节目,也可以单独播放多媒体产品,如消费型电子产品中的 CD-I 等。多媒体应用系 统放到存储介质中,如光盘,就可以成为多媒体产品,并作为商品销售。 以上六层中,一、二层构成多媒体硬件系统,其余四层是软件系统。软件系统又包括系 统软件(如操作系统)和应用系统。 应用系统运行平台 创作编辑软件 多媒体制作平台与工具 多媒体计算机硬件系统 多媒体外围设备 多媒体核心系统软件 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 1.2 多媒体编辑软件领域相关简介 1.2.1 多媒体编辑软件 多媒体编辑软件是一种高级的软件程序或命令的集合,这些命令可以支持各式各样的硬 件装置与文件格式,将图形、文字、音频、影片等视听对象组合在一起,进一步提供各种对 象显示的顺序及一个导向结构。这种导向结构通常是用某种特殊的电脑语言来构成以简化程 序设计的过程。编辑软件的目的便是提供给设计者一个自动产生电脑码的综合环境,使设计 者可以将不同的内容与各种功能结合在一起,形成一个结构完整的节目,因此多媒体编辑软 件通常应包括建立,编辑,输入和输出各种形式的数据,以及将各种数据组合成为一个连续 性系列的基本工作环境。 一套多媒体编辑软件,所涉及的对象种类繁多,且其格式与显示的方法多不相同。要将 这些对象组合在一起实非易事,故此多媒体编辑环境通常都很复杂,为了使原本复杂的多媒 体工作环境变得易学,易懂,且易于操作,多媒体编辑软件应提供以下六种工具来建立一个 多功能的工作 (1) 图标或标示的视觉程序。这类工具可以让设计者用鼠标按下某一个图画或声音的图 标拉到制作流程上的某一位置,以便播出。例如可以让设计者按下某一图标并拉到工作台上, 形成制作节目的一部分。 (2) 可以象写剧本一样的程序语言。这种语言可让设计者写出控制各种对象显示的流程, 分支,及导向路径等。 (3) 与传统语言合并的程序编辑软件系统可让设计者用传统语言如 Basic Assembly 或 C 来写程序的某些部份,来弥补该多媒体编辑软件程序上的不足。通过相关技术命令的调用融 入其他语言程序及媒体的共同界面程序。 (4) 文件开发流通的工具。这个功能十分重要,它关系着对象的流通或交换。如扫描图 或文本文件的输入输出。文件格式的规格,以及不同软件甚至于不同机器间便利的数据交流 方法。其中尤以能拥有各种不同形式的文件规格最为重要,这些文件格式如 PICS,PICT,BMP 等图形文件,WAV,MID 等声音文件及 AVI 图像文件等等。 (5) 用户层次的切换。用户可能是一套节目的阅读者,也可能是节目的作者。在读者与 作者之间可能还有只要填入文本数据的用户,也有必须改变图形或声音等数据的用户,故多 媒体编辑软件应让用户决定其层次或身份。 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 (6) 交互式的教学程序多媒体的节目大多是交互的,制作多媒体的编辑软件也是交互的, 其相关的工具与各类弹出式菜单很多,窗口可以多重显示,故须引导用户明白这些命令菜单 与多重窗口之间使用的顺序与操作方法。 1.2.2 多媒体编辑软件的分类 编辑软件的种类多媒体编辑软件依照组织或安排数据的系列可以分为下列五类: (1) 以卡或页为基础的多媒体编辑软件大多数以卡或页为基础的编辑系统,都是提供一 种可以将对象连接于卡或页上面的工作环境,一页或一张卡便是数据结构中的一个节点。这 类编辑系统是以面向对象的方式来处理多媒体元素,这些元素用属性来定义,用剧本来规范, 而事件则以消息来贯通各层次之间的对象。 (2) 以图标为基础,基于事件的多媒体编辑软件以图标为基础的编辑软件提供以视觉为 主的程序环境。在设计之初必须先用其他软件来制作各种元素,然后在此系统中建立一个流 程图,在流程图中可以包括起始事件、分支、处理及结束等各种图标。设计者可依流程图将 适当的对象从所谓的图标库中按下拉至到工作区内。这些图标可以包括菜单条的选项,图形 图像,声音及运算等。这个流程图,也是事件安排的次序,同时也表示整个节目的逻辑蓝图。 (3) 以时间为基础的多媒体编辑软件以时间为基础的多媒体软件是最常见的多媒体编辑 系统,所制作的节目最象电影片及卡通电影,它们大多数是以看得见的时间行列来决定事件 的顺序与对象的演示段。在这类编辑系统中都会有一个控制播出的控制面板,与录音机、录 像机相似,含有倒带, (Rewind) 、倒退一步(Basestep) 、停止(Stop)播放(Play) 、前进 一步(Forward)等按钮。 (4) 以程序语言为基础的多媒体编辑软件。例如 Microsoft 公司推出的 VisualBasic 和 Visual C+等在 PCWindows 环境下开发多媒体产品应用软件或产生、编辑各种新旧资源。 综合了 Windows 的用户图形环境和高级程序语言简单、好用的特点,是一种面向对象的软 件开发工具,运动建立在对象的基础之上。 (5) 其他各种面向专业功能的多媒体编辑软件。 具体的成熟的实例分析我们将在下一大章进行。 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 1.3 本论文特色和要点 本文源于本科论文毕业设计命题项目:“基于乐谱输入的播放器”扩展创作而成。作者 受到相关技术实现的启发,寻求以不同于当前市场上已有成熟软件产品的独特角度来理解阐 述该问题。本文不是单纯的软件产品分析,而是综合的对于涉及领域、行业基础、产品、前 景等的全面探讨论述,更是基于现实问题、分析探讨问题以至最终从另类的角度解决问题的 一个连贯的思维过程。本文既有乐理方面的简单介绍,也有相关多媒体音频文件的播放阐述; 宏观上是对于多媒体理论的实践运用、同行业成熟软件的剖析理解、对软件产品的架构设计, 微观上也有针对关键技术理论的探讨和研究,启发从另一个角度思考软件工业的产品构思和 实现方法。 文章总体框架为两部分,第一、二章作为项目的背景架构研究。包括对于领域、行业、 学科层次关于本软件产品的一些背景知识,作者在此抱着对文章全局性整体性的负责态度浸 入了大量的笔墨对它们进行论述,尤其是其中在第二章对几款现有产品的功能叙述分析是作 者投入心血写作,希望读者可以有所借鉴和领悟的。当然如果是以考察软件成品为目的的考 察者大可将这一部分直接跳过,然而如果是作为将软件产品融入整个框架体系进行认真对待, 思考其实现流程背景的探索者,那么强烈建议您加以浏览,以增加对相关背景知识的了解以 及对行业成熟软件状况的涉猎,便于更好的理解后叙的技术理论。其中,第一章是对计算机 多媒体和多媒体编辑软件相关背景的简单介绍,第二章是具体到基于乐谱输入的播放软件的 各种基础背景知识和对于该行业成熟软件的横向比较研究。第三,四章则引出作者想要展示 的基于“钩子技术”的键盘输入乐谱音符播放系统的相关软件流程介绍及其具体编码问题。 同时在第五章对于本软件特点以及本专业同类软件发展前景作出分析。 由于作者少年曾学习乐器演奏多年,长期具有对于艺术的执著喜爱,在这样一篇艺术和 科学交错的文章中,行文难免或多或少带有烂漫的人文主义风格。然而,对于一篇理应严谨 肃穆的工学论文,这并不是对于其精确性的挑战,更多的是作者渴望表达的产品设计,特别 是软件产品设计,能够以人为本,从关怀人类最基础最根本需求出发的理念,希望在人类与 人类智慧结晶的交流中,改造生活,体现出人文精神的价值。 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 第二章第二章 项目相关背景研究项目相关背景研究 相关乐理基础知识 2.1.1 简谱相关理论基础 简谱,属“文字记谱法”,在世界各地广泛流行,它来源于欧洲。16 世纪就出现的用数字 代表音符的记谱法。音符用阿拉伯数字 1、2、3、4、5、6、7 代表唱名 do、re、mi、fa、sol、la、si 来记示音高,以上下加点记示音区。 图 2.1 简谱音符与钢琴键盘对照图 如图 2.1 所示,图中黑色虚线框里面的音符上下都不带圆点的一般叫中音区音符。该区 中的数字 1 被称为中央 1(标准 C 音) 。黄线右面的音符上边出现有圆点的,则表示要将该 音升高一个音组,行话说“高 8 度”。如出现加两个圆点就表示将该音升高两个音组,余类推。 在音符下边出现有圆点的,则表示要将该音降低一个音组,即“低 8 度”。如出现加两个圆点 就表示将该音降低两个音组,余类推。 表示音乐的长短需要有一个相对固定的时间概念。简谱里将音符分为全音符、二分音符、 四分音符、十六分音符、三十二分音符等。在这几个音符里面最重要的是四分音符,它是一 个基本参照度量长度,即四分音符为一拍。这里一拍的概念是一个相对时间度量单位。一拍 的长度没有限制,可以是 1 秒 也可以市 2 秒或半秒。假如一拍是一秒的长度,那么二拍就 是两秒;一拍定为半秒的话,两拍就是一秒的长度。一旦这个基础的一拍定下来,那么比一 拍长或短的符号就相对容易了。用一条横线“”在四分音符的右面或下面来标注,以此来定 义该音符的长短。表 2.1 列出了常用音符和它们的长度标记: 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 表 2.1 简谱音符时值写法对照说明表 音符名称音符名称 写写 法法 时时 值值 全音符 5 5 四拍 二分音符 5 5 二拍 四分音符 5 5 一拍 分音符 半拍 十六分音符 5 5 = = 四分之一拍 三十二分音符 八分之一拍 上表可以看出:横线有标注在音符后面的,也有记在音符下面的,横线标记的位置不同, 被标记的音符的时值也不同。从表中可以发现一个规律,就是:要使音符时值延长,在四分 音符右边加横线“”,这时的横线叫延时线、延时线越多,音持续的时间(时值)越长。相 反,音符下面的横线越多,则该音符时间越短。 音乐中除了有音的高低,长短之外,也有音的休止。表示声音休止的符号叫休止符,用 “0”标记。通俗点说就是没有声音,不出声的符号。休止符与音符基本相同,也有六种。但 一般直接用 0 代替增加的横线,每增加一个 0,就增加一个四分休止符时的时值。 2.1.2 五线谱相关理论基础 五线谱目前世界上通用的记谱法。在 5 根等距离的平行横线上,标以不同时值的音符 及其他记号来记载音乐的一种方法。如图 2.2 所示,五线谱的每根线以及线与线之间的空间, 自下而上分别称为第 1 线、第 2 线、第 3 线、第 4 线、第 5 线和第 1 间、第 2 间、第 3 间、 第 4 间。线和间如不够使用,可在五线谱上方或下方增加线和间。加线及加间各分别称为上 加第 1 线、上加第 1 间;下加第 1 线、下加第 1 间等,各代表 1 个音级。这些音级的固定高 度根据所用的谱号来决定。 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 图 2.2 五线谱概念图 往往乐谱中会带上如图 2.3 所示符号,称为谱号。其中左边的是高音谱号,右边是低音 谱号。二者的联系如图 2.4。其中以高音谱表下加第一线(即低音谱表上加第一线)所在音 符记,即正中间连线音符为标准 C 音,在高音谱表和低音谱表中均可表示。 图 2.3 五线谱谱号图 图 2.4 五线谱谱号联系图 乐谱以小节线作为划分,复纵线作为反复标志,以终止线结束。如图 2.5 所示。 图 2.5 五线谱小节线等相关符号 五线谱中音由音符表示,图 2.6 为音符关系的简单对照表。其中最上排的五个灰色音符 分别为全音符、二分音符、四分音符、八分音符和十六分音符(人声部分比较常见前四种) 。 它们发声长短依次对半递减,这个发声的长短表示为时值,单位为拍。例如,全音符是四拍, 四分音符是一拍等。 图 2.6 五线谱音符关系图 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 图 2.7 是完整的五线谱例图。值得注意其中有与简谱的对照部分,读者可仔细参考理解。 本章仅仅作为软件涉及领域基础概念的说明,更深入的领域研究,请参考相关专业资料。 图 2.7 完整五线谱参考图 2.2 计算机音频相关 2.2.1 计算机音频简介 多媒体音频处理包括声音的制作、声音的编辑以及将声音融入多媒体应用软件等操作。 音频信号是一种频率范围为 20HZ 至 20kHZ 的波形信号。音乐、歌曲和语音均属于音频信 号的范畴。在多媒体音频处理中主要是包括对音乐、音响效果和语音 3 种音频信号进行处理。 声音是一种连续的模拟信号,即声波,它拥有两个基本的参数:频率和幅度。频率位于 20HZ 到 20kHZ 范围内的声音称为可听声,即音频,相应的波形可称为音频信号。 印象声音质量的要素有 3 个,即音调、音强和音色。 音调也称为音高,表示人耳对声调高低的主观感受。客观上音高大小主要取决于声波频 率的高低,频率越高则音调就越高,反之则低。 音强又称响度,表示声音能量的强弱程度,主要取决于声波振幅的大小。声音响度一般 用声压或声强计算,单位是分贝(dB) 。响度是听觉的基础,正常人听觉的强度范围为 0dB 至 140dB。 音色是一种声音区分另一种声音的特有属性。例如,用各种不同的乐器演奏同样的一个 乐音,虽然音调与响度都一样,但听起来,各自的音色却不同,这是由于物体振动所形成的 声波波形不同的缘故。这种独特的波形决定了某种乐器(或某人的声音)的特色,叫做音色 或音频。 音频作为连续变化的模拟信号,而计算机只能处理数字信号,要使计算机能够处理音频 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 信号,必须把模拟音频信号转换成用“0” 、 “1”表示的数字信号,这个过程叫做音频的数字 化。音频数字化涉及采样、量化及编码等多种技术,形成最终的数字音频信号,并以具有不 同特色背景的文件格式进行存储。 2.2.2 声音文件的格式 本节将主要讨论.WAV 与.MID 两种本文讨论分析和产品构建中所涉及的声音文件格式, 更多的该方面资料请查阅其他相关详细文档。 (1) WAV 文件 WAV 文件也叫做波形文件,是 Microsoft 公司开发的一种声音文件格式。WAV 格式文 件的数据是直接来源于对声音模拟波形的采样。用不同的采样频率对声音的模拟波形进行采 样可以得到一系列离散的采样点,以不同的量化位数(8 至 64bit)把这些采样点的值转化成 二进制数,然后存入磁盘,这就产生了声音的 WAV 文件。WAV 文件所需的存储容量很大, 如果对声音质量要求不高的话,可以通过降低采样频率、采用较低的量化位数或利用单声道 来录制 WAV 文件,此时的 WAV 大小可以大大减小。 WAV 文件数据没有经过压缩,虽然数据量大,但是音质是各种声音文件格式中相对比 较优秀的。大多数压缩各式的声音都是在它的基础上经过数据的重新编码来实现的,这些压 缩各式的声音信号在压缩前和回放时都要使用 WAV 格式。 WAV 支持各种取样频率和样本精度的声音数据,并支持声音数据的压缩。WAV 文件 由许多同类型的文件构造块组成,其中最重要的是两个文件构造块是格式块(Format Chunk)和声音数据块(Sound Chunk) ,前者包含描述波形的重要参数,例如采样频率和采 样精度等;后者则包含实际的波形声音数据。 WAV 文件的数据量可以用如下公式推算: WAV 文件数据量(b/s)=采样频率(Hz)x 量化位数(位)x 声道数/8 (2) MIDI 文件 MIDI(Musical Instrument Digital Interface)是乐器数字接口的英文缩写。它是数字音乐 合成乐器的统一国际标准,它规定了计算机音乐程序、电子合成器和其他电子设备之间交换 信息与控制信号的方法。作为世界上主要电子乐器制造厂商联合建立起来的通信标准, MIDI 采用字节指令格式,这些指令可在任何兼容的 MIDI 合成器上指定声道、音名标识符、 控制器和声道音量。MIDI 文件中包含音符、定时等多达 16 个通道的乐器定义,每个音符包 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 括键、通道号、持续时间、音量和力度等信息,可以模拟大提琴、小提琴和钢琴等常见乐器。 MIDI 文件本身其实并不含有任何的数字音频信号,因此,它的回放过程实际上就是一个由 MIDI 文件中的指令控制 MIDI 合成器发生的过程,将各种预先设计好的声音元素按乐谱合 成为一首音乐。 与 WAV 文件相比,MIDI 的数据容量很小。这是因为它记录的是音乐事件,而不是记 录音乐信息,所以他的占用的内存空间等比 WAV 文件小得多,而且可以通过简单地 MIDI 数据来实现演奏的乐器、演奏节拍、速度、音符的改变,适合作为音乐背景音响效果,用来 播放长时间、高质量的音乐。 2.3音乐乐谱输入播放器的实现分析 音乐乐谱输入播放器,也被称为电子乐谱,已经成为多媒体计算机应用领域的一个成熟 的开发方向。它基本都满足了乐谱输入、音谱对照、乐音播放、多媒体声音文件的编辑和存 储等功能。在多媒体计算机体系结构下涉及多媒体制作平台工具、多媒体创作软件以及应用 程序平台等层次,综合的包括了文本文件输入,多媒体模块调用、音频文件编码转换、多媒 体文件播放存储等具体技术理论。它一方面以现代的科技光芒将音乐制作、艺术创作带入了 一个新的发展高度,满足了广大专业人员对于方便其创作、顺利的实现艺术构思的迫切需求; 另一方面使得普通人与遥不可及的艺术殿堂之间的距离被迅速拉近,即使不太熟悉音乐创作 相关理论,也可以通过简单易懂的软件产品操作,进行多媒体编辑和艺术创作,符合当代雅 俗共赏、专业成熟而又方便实用的时代潮流。 本节将就乐谱输入播放器的一些总体结构要点进行阐述,从总体规划、细节实现两方面 简要分析其包含的普适原理和特征。 2.3.1 音乐乐谱输入播放系统的总体结构 整个乐谱输入播放系统中,基于多媒体计算机系统为核心的操作处理模块是整个系统的 主体平台,一方面借助人机界面设计,完成乐谱的显示功能,另一方面处理完成信息调度, 同时与对应功能模块进行连接。而音频文件处理模块,包括声卡及接口等部分,主要完成音 乐的采样、处理以及格式转化等功能,同时有的系统还包括了对于各种格式文件的记录存储 功能。播放模块同样是该软件系统的基本构成模块之一,相信每一个音乐制作者都希望能直 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 观地接受到各种素材的音效以及自己完成作品的直接效果,因此基于不同格式的多媒体音频 文件播放功能实现也是该系统的重要组成部分。 目前市场上各种类型的乐谱输入播放系统不胜枚举,侧重方向和技术重点也各有不同。 但综述其他点,无论侧重乐谱编辑抑或音频处理,其总体结构框架均可以参照包含图 2.8 所 示例模块。 图 2.8 乐谱输入播放系统总体结构图 2.3.2 音乐乐谱输入播放系统的相关软件设计 根据系统总体结构分析,目前音乐乐谱输入的播放系统软件功能设计主要可以通过显示 模块、编辑模块、音频文件操作模块和播放四大模块构成,其具体又可划分若干细节功能模 块。具体参照图 2.9 所示。 图 2.9 乐谱输入播放系统功能层次图 显示模块的设计包括用户界面和乐谱显示两个字模块设计。乐谱显示模块主要完成按一 功能调 度操作 处理模 块 音频文件 编辑处理 音频文 件播放 接口 文件特征显 示数据传输 音频文件编 码、解码、 转换等 音频文 件播放 乐谱输入播 放系统 显示模块编辑模块 音频处理 模块 播放模块 用 户 界 面 乐 谱 显 示 乐 谱 调 度 乐 谱 修 改 乐 谱 打 印 音 频 编 制 音 频 变 码 音 频 素 材 音 频 播 放 基于钩子技术的按键乐谱输入播放系统按键奏鸣曲软件 定乐理规范格式将音乐文件显示出乐谱图形,而用户界面子模块用来提供用户与系统良好的 人机交互界面。 编辑模块又乐谱调度、乐谱修改、乐谱打印等模块。乐谱调度负责音乐文件对应乐谱文 件的读取、存储等功能。乐谱修改实现了对显示出的乐谱可以依据需要,遵循乐理规范的符 号、格式对其进行修改,并使之产生对应的不同播放效果。乐谱打印模块则完成对于乐谱的 输出打印功能,需要相关硬件支持。 音频处理模块是侧重音乐制作功能的乐谱输入软件所重点发展的模块。包括音频编制是 指对于音频素材所进行一些多媒体特性或乐理特性上的相关编辑,制作出满足人们所希望的 音乐元素。而音频变码满足了音乐文件不同格式的转化转换需求。 播放模块一方面囊括了系统基础的音频素材库 ,以供对应乐谱乐音文件的使用调用, 另一方面则是针对基于用户不同的输入产生即时的不同音效的音乐播放,以及整个音乐乐谱 文件的连续播放。 2.4 相关成熟产品的横向比较、分析和研究 人们曾这样说过“历史和经验是最好的老师。 ”经历了之前文段从领域、学科、行业等 方面的背景阐述,我们不妨综合运用,在本章对于目前已经面世的成熟的乐谱输入播放软件 略作分析和评价,以期对于现实的软件产品设计产生指导借鉴作用,使其功能真正满足人的 需求。限于篇幅,作者仅选择了两款囊括简谱、五线谱输入,功能结构迥异但又十分具有代 表特色的软件产品以作分析,也期待读者举一反三,思索该类软件的共通与特色,指导于实 践。 2.4.1 基于五线谱输入的经典打谱软件:Overture Overture 是 GenieSoft 公司出品,国内流行音乐网汉化的以五线谱背景为基础的专业打 谱作曲软件,也是乐谱编辑播放软件扩充发展完善后的一类高级形态。它能提供各种五线谱 上的记号,整理谱面及输出打印。在写谱的时候可以边听边修

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论