音乐点歌系统的设计与实现毕业论文

音乐点歌系统的设计与实现毕业论文

ID:1436483

大小:1.90 MB

页数:42页

时间:2017-11-11

上传者:U-251
音乐点歌系统的设计与实现毕业论文_第1页
音乐点歌系统的设计与实现毕业论文_第2页
音乐点歌系统的设计与实现毕业论文_第3页
音乐点歌系统的设计与实现毕业论文_第4页
音乐点歌系统的设计与实现毕业论文_第5页
资源描述:

《音乐点歌系统的设计与实现毕业论文》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

音乐点歌系统的设计与实现毕业论文目录摘要II第1章系统研究意义11.1研究背景11.2前景意义21.3系统特征21.4论文组织结构2第2章系统相关技术概述42.1Asp.net的简介42.2.NetFreamwork简介42.3C#语言简介52.4MySQL数据库72.4.1MySQL数据库简介72.4.2MySQL数据库安装与配置72.5SQL语言简介112.6本章小结11第3章系统分析133.1可行性分析133.2需求分析143.3本章小结15第4章概要设计164.1项目规划164.2系统功能结构图164.2.1歌名点歌功能16II 4.2.2歌星点歌功能174.2.3拼音点歌功能184.2.4数字点歌功能184.3本章小结20第5章系统详细设计215.1设计目标215.2逻辑结构设计225.2.1数据库模型图225.2.2数据词典225.3系统主框架布局与实现255.4媒体库模块布局与实现265.5播放列表模块布局与实现305.6播放报告模块布局与实现325.7客户机配置模块的布局与实现335.8本章总结34第6章系统测试356.1系统测试目的356.2系统测试结果356.2.1客户机连接测试356.2.2播放列表模块366.3本章总结37第7章系统总结38参考文献39致谢40II 第1章系统研究意义1.1研究背景提到信息媒体,大多数人直接想到的就是报刊、广播、电视、或者互联网。但是今天的信息发布者已经不满足于这些群众广泛却没有针对性的传统信息渠道。信息媒体市场正在由大众行销转向分众行销。在产品与消费者不断被细分化的时代,传统媒体的局限性是无法有效地区分产品的目标受众群。在视频多媒体信息领域,信息客户和信息公司正在努力发掘更多新兴的终端网络渠道作为信息传播平台。传统的报刊、广播、电视、互联网被称之为四大媒体,而“第五媒体”是指大量分布在高档楼宇、酒店、商场、连锁店、银行、影剧院、车站、机场、地铁、公交车、出租车等公共场所,形成一种将独立的媒体播放设备分散安装,并播放出统一的专业广告及多媒体信息的新型媒体。这“第五媒体”就是指的我们现在所说的广告机,现在国内一些商业楼宇,卖场超市,航空终端,医院药店,户外大型LCD,公交出租,学校校园,列车车站等人流密集场所都可以看到广告机这一类的传播工具,但经过调查发现现在大部分的广告机都采用插存储卡或者光盘来实现媒体的播放和更换,这样媒体更新速度缓慢,时效性差,而且需要专门人员来实现,造成了不必要的劳动力浪费。在现如今的互联网时代,如果可以把这些广告机用网络连接起来,采用互联网这一平台和计算机编程技术就可以实现快速修改任意广告机的播放内容,远程控制播放器的功能,而且还减少不必要的劳动,它利用各种网络资源实现了足不出户而控制遍布世界的无数个终端的便利,极大的降低了营运的人工成本,提高了效率,顺应了网络化的潮流。-40- 随着国内商业与消费环境的日益发达,广告需求也越来越大,数字化、网络化、信息化的多媒体广告机也成了广告传媒市场的一大亮点。随着信息传递的加快与网络的普及,单机版的广告机已经难以满足信息传播的需求。单机版广告机要更换广告片必须更换广告机的CF卡或是DVD光盘,不仅造成大量人力浪费而且难以快速将多媒体信息准时、精确投放至所需的特定受众群体。网络化的多媒体广告机则由于领先的技术优势开始在在酒店、超市、楼宇等高收入领域广告投放市场中备受青睐。使用的网络设备,用户能够通过以太网来实现集中化控制、预定管理和多媒体内容的传输。在接线基础设施不满足网络连通性的场所,可以选择使用WLAN功能。媒体点播控制系统是“第五媒体”传输、发布、管理、控制的平台,正在社会各行各业逐渐推广应用,对多媒体信息的快速和有效传播起着不可估量的作用。媒体点播控制系统在“第五媒体”市场以及其他多媒体信息发布和运营领域具有很大的市场潜力。同时还可以应用于大型体育和文化娱乐活动,如奥运会、博览会等,以及重大国内外会议的信息发布。1.2前景意义多媒体点播控制系统可以改变传统广告机都采用插存储卡或者光盘来实现媒体的播放和更换,媒体更新速度缓慢,时效性差,需要专门人员来实现,造成不必要的劳动力浪费等的缺点。实现了在现如今的互联网时代,利用互联网这一平台和计算机编程技术远程控制播放器的功能,减少了不必要的劳动,它利用各种网络资源实现了足不出户而控制遍布世界的无数个终端的便利,极大的降低了营运的人工成本,提高了效率,顺应了网络化的潮流。1.3系统特征我这次设计是根据山东米亚科技公司的网络播放器来量身制作桌面级的控制和服务系统,本系统可以通过因特网或局域网等网络,集中管理所有分布于全区/全市/全省/全国的多媒体广告机播放点,使节目或广告内容的播放可以全网集中管理,实时更新最新节目内容,并可实时插播节目。系统采取全网集中管理的模式设计,配合各个播放端采用专用多媒体播放控制器,具有安装快速、维护容易的特性,可以迅速建立一个有效管理的媒体播放频道。并还可以对每一台播放器进行个性化管理,制定个性化媒体播放频道。实现每个区域、每个组、每个广告机内的节目独特性。1.4论文组织结构-40- 本论文共分七章。论文的第1章为绪论,这一章主要讲述了多媒体点播控制系统的研发背景、前景意义和系统结构。第2章则重点介绍了开发多媒体点播控制系统所用到的技术背景,主要介绍了.NetFreamwork,C#,MySQL,简介等基础知识。第3章是在前两章的基础上对多媒体点播控制系统进行的系统分析,主要从可行性及系统的需求两个方面进行的分析。可行性分析从目标方案,技术、经济、操作三个方面分析确定了系统开发的作用意义。而需求分析则确定了系统具体应该实现的功能。为以后的开发打好基础。论文从第4章开始介绍开发多媒体点播控制系统的详细过程,主要包括系统的概要设计,详细设计、系统测试。论文的最后一章是我自己对我的毕业设计的总结与展望,经过这段时间的忙碌终于做出了自己的东西,尽管它与我最初设想的有着很大的差距,但它却代表着我的辛苦付出。相信在以后的项目开发中可以做得更好。-40- 第2章系统相关技术概述2.1Asp.net的简介ASP.net是Microsoft.net的一部分,作为战略产品,不仅仅是ActiveServerPage(ASP)的下一个版本;它还提供了一个统一的Web开发模型,其中包括开发人员生成企业级Web应用程序所需的各种服务。ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。可以通过在现有ASP应用程序中逐渐添加ASP.NET功能,随时增强ASP应用程序的功能。 ASP.NET是一个已编译的、基于.NET的环境,可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScript.NET.)创作应用程序。另外,任何ASP.NET应用程序都可以使用整个.NETFramework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。 ASP.NET可以无缝地WYSIWYGHTML编辑器和其他编程工具(包括MicrosoftVisualStudio.NET)一起工作。这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI和完全集成的调试支持。 微软为ASP.net设计了这样一些策略:易于写出结构清晰的代码、代码易于重用和共享、可用编译类语言编写等等,目的是让程序员更容易开发出Web应用,满足计算向Web转移的战略需要。2.2.NetFreamwork简介.NETFramework是支持生成和运行下一代应用程序和XMLWebservices的内部Windows组件。.NETFramework旨在实现下列目标:提供一个一致的面向对象的编程环境,而无论对象代码是在本地存储和执行,还是在本地执行但在Internet-40- 上分布,或者是在远程执行的。提供一个将软件部署和版本控制冲突最小化的代码执行环境。提供一个可提高代码(包括由未知的或不完全受信任的第三方创建的代码)执行安全性的代码执行环境。提供一个可消除脚本环境或解释环境的性能问题的代码执行环境。使开发人员的经验在面对类型大不相同的应用程序(如基于Windows的应用程序和基于Web的应用程序)时保持一致。按照工业标准生成所有通信,以确保基于.NETFramework的代码可与任何其他代码集成。.NETFramework具有两个主要组件:公共语言运行库和.NETFramework类库。公共语言运行库是.NETFramework的基础。您可以将运行库看作一个在执行时管理代码的代理,它提供内存管理、线程管理和远程处理等核心服务,并且还强制实施严格的类型安全以及可提高安全性和可靠性的其他形式的代码准确性。事实上,代码管理的概念是运行库的基本原则。以运行库为目标的代码称为托管代码,而不以运行库为目标的代码称为非托管代码。.NETFramework的另一个主要组件是类库,它是一个综合性的面向对象的可重用类型集合,您可以使用它开发多种应用程序,这些应用程序包括传统的命令行或图形用户界面(GUI)应用程序,也包括基于ASP.NET所提供的最新创新的应用程序(如Web窗体和XMLWebservices)。.NETFramework可由非托管组件承载,这些组件将公共语言运行库加载到它们的进程中并启动托管代码的执行,从而创建一个可以同时利用托管和非托管功能的软件环境。.NETFramework不但提供若干个运行库宿主,而且还支持第三方运行库宿主的开发。例如,ASP.NET承载运行库以为托管代码提供可伸缩的服务器端环境。ASP.NET直接使用运行库以启用ASP.NET应用程序和XMLWebservices。InternetExplorer是承载运行库(以MIME类型扩展的形式)的非托管应用程序的一个示例。使用InternetExplorer承载运行库使您能够在HTML文档中嵌入托管组件或Windows窗体控件。以这种方式承载运行库使得托管移动代码(类似于Microsoft®ActiveX®控件)成为可能,不过它需要进行重大改进(如不完全受信任的执行和独立的文件存储),而这种改进只有托管代码才能提供。2.3C#语言简介C#是微软公司力推的一种开发语言,简单易学,功能强大,了解上述任何一种语言的开发人员通常在很短的时间内就可以开始使用C#高效地工作。C#语法简化了C++的诸多复杂性,同时提供了很多强大的功能,例如可为空的值类型、枚举、委托、匿名方法和直接内存访问,这些都是Java-40- 所不具备的。C#还支持泛型方法和类型,从而提供了更出色的类型安全和性能。C#还提供了迭代器,允许集合类的实现者定义自定义的迭代行为,简化了客户端代码对它的使用。作为一种面向对象的语言,C#支持封装、继承和多态性概念。所有的变量和方法,包括Main方法(应用程序的入口点),都封装在类定义中。类可能直接从一个父类继承,但它可以实现任意数量的接口。重写父类中的虚方法的各种方法要求override关键字作为一种避免意外重定义的方式。在C#中,结构类似于一个轻量类;它是一种堆栈分配的类型,可以实现接口,但不支持继承。在C#中,如果需要与其他Windows软件(如COM对象或本机Win32DLL)交互,可以通过一个称为“Interop”的过程来实现。互操作使C#程序能够完成本机C++应用程序可以完成的几乎任何任务。在直接内存访问必不可少的情况下,C#甚至支持指针和“不安全”代码的概念。C#的生成过程比C和C++简单,比Java更为灵活。没有单独的头文件,也不要求按照特定顺序声明方法和类型。C#源文件可以定义任意数量的类、结构、接口和事件。C#程序在.NETFramework上运行,它是Windows的一个必要组件,包括一个称为公共语言运行时(CLR)的虚拟执行系统和一组统一的类库。CLR是Microsoft的公共语言基础结构(CLI)的一个商业实现。CLI是一种国际标准,是用于创建语言和库在其中无缝协同工作的执行和开发环境的基础。用C#编写的源代码被编译为一种符合CLI规范的中间语言(IL)。IL代码与资源(如位图和字符串)一起作为一种称为程序集的可执行文件存储在磁盘上,通常具有的扩展名为.exe或.doc。程序集包含清单,它提供关于程序集的类型、版本、区域性和安全要求等信息。执行C#程序时,程序集将加载到CLR中,这可能会根据清单中的信息执行不同的操作。然后,如果符合安全要求,CLR执行实时(JIT)编译以将IL代码转换为本机机器指令。CLR还提供与自动垃圾回收、异常处理和资源管理有关的其他服务。由CLR执行的代码有时称为“托管代码”,它与编译为面向特定系统的本机机器语言的“非托管代码”相对应。语言互操作性是.NETFramework的一个关键功能。因为由C#编译器生成的IL代码符合公共类型规范(CTS),因此从C#生成的IL代码可以与从VisualBasic、VisualC++、VisualJ#的.NET版本或者其他20多种符合CTS的语言中的任何一种生成的代码进行交互。单一程序集可能包含不同.NET语言编写的多个模块,并且类型可以相互引用,就像它们是用同一种语言编写的。除了运行时服务.NET-40- Framework还包含一个由4000多个类组成的内容详尽的库,这些类被组织为命名空间,为从文件输入和输出到字符串操作、到XML分析、到Windows窗体控件的所有内容提供多种有用的功能。典型的C#应用程序使用.NETFramework类库广泛地处理常见的“日常”任务。2.4MySQL数据库2.4.1MySQL数据库简介MySQL数据库是一款非常优秀的自由软件。它是由瑞士的MySQLAB公司开发的。2008年,Sun公司耗资10亿美元收购了MySQL数据库。现在MySQL数据库已经是世界上最流行的数据库之一。全球最大的网络搜索引擎公司Google使用的数据库就是MySQL数据库。国内很多大型的网络公司也选择MySQL数据库,如网易、新浪等。这都证明了MySQL数据库强大的生命力。目前,MySQL5.1.4版本已经正式发布,而且6.0版本已经处于开发之中。2010年4月20日,Oracle公司收购了Sun公司,MySQL数据库又成为了Oracle公司的数据库产品。这给MySQL数据库带来了前所未有的机遇和挑战。2.4.2MySQL数据库安装与配置运行MySQL安装目录中的“setup.exe”,出现如图2-1所示,点击“Next”,MySQL安装向导启动,如图2-2所示:图2-1安装系统界面图2-2MySQL安装向导选择安装类型,有“Typical(默认)”、“Complete(完全)”、“Custom(用户自定义)”三个选项我们选择“Custom”。点击“Next”会出现如图2-3所示界面-40- 图2-3选择安装程序界面图2-4选择安装目录在“DeveloperComponents(开发者部分)”上左键单击,选择“Thisfeature,andallsubfeatures,willbeinstalledonlocalharddrive.”,即“此部分,及下属子部分内容,全部安装在本地硬盘上”。在上面的“MySQLServer(MySQL服务器)”、“ClientPrograms(MySQL客户端程序)”、“Documentation(文档)”也如此操作,以保证安装所有文件。点选“Change...”,手动指定安装目录。填上安装目录,我的是“F:ServerMySQLMySQLServer5.0”如图2-4所示。按“OK”继续。返回刚才的界面,按“Next”继续出项确认安装信息界面如图2-5所示界面。图2-5确认安装信息界面图2-6安装界面点击“install”将开始安装,如图2-6所示。安装过程中会出现如图2-7所示界面,询问你是否要注册一个MySQL.com的账号,或是使用已有的账号登陆MySQL.com,这里不需要输入,点选“SkipSign-Up”,按“Next”略过此步骤。直到显示如图2-8所示,软件安装完成,选中MySQL配置向导,即将“ConfiguretheMySQLServernow”前面的勾打上,点“Finish”结束软件的安装并启动MySQL配置向导。-40- 图2-7输入账号界面图2-8安装结束界面MySQL配置向导启动界面,如图2-9所示,按“Next”继续。图2-9配置向导界面图2-10选择配置信息界面选择配置方式,“DetailedConfiguration(手动精确配置)”、“StandardConfiguration(标准配置)”,选择“DetailedConfiguration”,如图2-10所示,按“Next”继续。图2-11选择服务器类型界面图2-12选择数据库用途界面出现选择服务器类型界面,“DeveloperMachine(开发测试类)”、“ServerMachine(服务器类型)”、“DedicatedMySQLServerMachine(专门的数据库服务器)”,这里选择DeveloperMachine。如图2-11所示,按“Next”继续。出现选择MySQL数据库的用途界面,“MultifunctionalDatabase(通用多功能型)”、“TransactionalDatabase-40- Only(服务器类型)”、“Non-TransactionalDatabaseOnly非事务处理型),我这里选择“TransactionalDatabaseOnly”,如图2-12所示,按“Next”继续。图2-13选择存储空间界面图2-14设置连接数界面出现选择存储空间界面,这里不需要修改,使用用默认位置,如图2-13所示,直接按“Next”继续。出现设置连接数界面,选择“ManualSetting”,输入20,如图2-14所示,按“Next”继续。图2-15网络连接参数设置界面图2-16默认编码设置界面出现网络连接参数设置,是否启用TCP/IP连接,设定端口,把前面的勾打上,PortNumber:3306,如图2-15所示,按“Next”继续出现默认编码设置界面就是对MySQL默认数据库语言编码进行设置,第一个是西文编码,第二个是utf8编码,这里选择第三个,然后在CharacterSet那里选择或填入“gb2312”,就可以正常的使用汉字(或其它文字)了,否则不能正常显示汉字,如图2-16所示,按“Next”继续。-40- 图2-17服务于环境变量设置界面图2-18用户名与密码设置界面出现服务于环境变量设置界面,选择是否将MySQL安装为windows服务,是否将MySQL的bin目录加入到WindowsPATH。这里全部打上了勾,ServiceName不变,如图2-17所示,按“Next”继续。出现用户名与密码设置界面,如图2-18所示,这里用户名不修改,使用root,设置一个密码后,按“Next”继续。在弹出的确认信息窗口中按“Execute”使设置生效。MySQL即配置完毕。2.5SQL语言简介SQL是英文StructuredQueryLanguage的缩写,意思为结构化查询语言。SQL的主要功能就是同各种数据库建立联系,进行沟通。SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。在众多的SQL命令中,SELECT语句应该算是使用最频繁的。SELECT语句主要被用来对数据库进行查询并返回符合用户查询标准的结果数据。SELECT语句中位于SELECT关键词之后的列名用来解决哪些列将作为查询结果返回。用户可以按照自己的需要选择任意列,还可以使用通配符“*”来设定返回表格中的所有列。SELECT语句中位于FROM关键词之后的表格名称用来决定将要进行查询操作的目的表格。SQL功能强大,是一种完备的数据处理语言,不仅用于数据库查询,而且用于数据库中的数据修改和更新。2.6本章小结本章主要讲述了多媒体点播控制系统设计制作过程中用到的主要技术,为了完系统的设计,我使用了微软的集成开发工具MicrosoftVisualStudio2008-40- 作为开发工具,采用C#语言作为开发语言,采用MySQL数据库作为后台数据库,系统中采用SQL语言对数据库中的数据进行增查删改等操作。-40- 第3章系统分析3.1可行性分析山东米亚科技公司是由美国硅谷的MIA公司在济南应对视频市场而独立出来的团队。团队以专业的视频产品研发应用为主。主要有:高清网络硬盘播放器,数码广告机,数码相框等产品。而MIA是2003年在硅谷的科技型企业。MIA公司的注册资金为500万美元。能为这样的公司设计开发多媒体点播控制系统是非常具有现实意义的。可以从以下三个方面进行可行性分析:(1)技术可行性。C#是微软为.NETFramework量身订做的程序语言,C#拥有C/C++的强大功能以及VisualBasic简易使用的特性,是第一个组件导向的程序语言,和C++与Java一样亦为对象导向程序语言。C#具有突出的特点:语法简洁、彻底的面向对象设计,并且C#有个System.Net的空间,提供了丰富的网络工具类。因此从技术角度来说,使用C#开发这个系统是可行的。(2)经济可行性。本系统属于远程控制网络版广告机的应用系统,可以统一管理或者定制每个区域,组或着广告机的播放列表,控制其开始播放,停止播放,发送字幕,发送RSS,声音控制,屏幕控制,文件管理等所有功能。我相信开发好这个系统会更加完善公司的管理系统,给公司带来很好的利润。(3)操作可行性。本系统采用ComponentFactory的免费界面控件库Krypton.Toolkit,使程序呈现Office2010的界面风格,简洁大方。程序中集成了多国语言,含有中文和英语,以满足不同用户。管理人员不需要具有专业计算机知识,只需简单的培训就可以实现对在线的广告机的的管理。多媒体点播控制系统可以改变传统广告机都采用插存储卡或者光盘来实现媒体的播放和更换,媒体更新速度缓慢,时效性差,需要专门人员来实现,造成不必要的劳动力浪费等的缺点。实现了在现如今的互联网时代,利用互联网这一平台和计算机编程技术远程控制播放器的功能,减少了不必要的劳动,它利用各种网络资源实现了足不出户而控制遍布世界的无数个终端的便利,极大的降低了营运的人工成本,提高了效率,顺应了网络化的潮流。-40- 3.2需求分析通过对米亚公司的网络版广告机的了解,要求系统具有以下功能:管理播放器,具体有账号管理,开始播放,停止播放,发送字幕,停止字幕,RSS发送,音量控制,屏幕控制,格式化广告机,重启广告机。配置播放器,具体有播放器的名称,密码,文件格式,IP设置,时间设置,视频输出设置,自动开始设置。媒体库管理,具体有本地资源,HTTP资源,FTP资源的添加,删除,修改。播放列表管理,具体有播放列表的生成,修改,删除,设置。计划播放列表管理,具体有计划播放列表的生成,修改,删除,设置。播放报告功能,具体有可查看特定时间段,特定广告机,特定媒体的播放报告,并可以导出播放报告。系统配置,具体有可以设置服务器的端口号,连接超时时间,语言,本地IP。根据对系统的分析,画出系统的用例图,如图3-1所示。图3-1系统用例图-40- 系统活动图,如图3-2所示。图3-1系统活动图3.3本章小结本章讲述了开发多媒体点播控制系统之前对该系统进行的可行性分析和需求分析。系统的可行性分析则主要从技术、经济、操作三个方面进行了分析。对系统的需求分析确定了系统需要的基本功能。-40- 第4章概要设计4.1项目规划多媒体点播控制系统是一个功能完善的远程管理广告机的系统,可以对各个播放器的所有功能进行控制管理和媒体库服务系统,可以快速的编辑播放列表,并下发到某播放器,使其立刻下载播放需要播放的媒体并能返回某播放器当前的状态和播放记录。主要由七大功能构成:(1)歌名点歌功能;(2)歌星点歌功能;(3)拼音点歌功能;(4)数字点歌功能;(5)选择歌曲功能;(6)播放歌曲功能;(7)退出系统功能。本系统的运行环境:(1)硬件环境CPU:P43.0G以上;内存:1GB以上;硬盘:硬盘80G;(2)软件环境数据库:MySQL5.0以上Assecc.NET运行库:.NetFreamwork2.0以上操作系统:WindowsXP4.2系统功能结构图4.2.1歌名点歌功能主要分国语,英文等语言点歌,客观可以根据自己的能力点相应的歌曲。-40- 4.2.2歌星点歌功能可以通过下页,翻找自己喜欢的歌星,双击歌星图片可以找到相应的歌曲。-40- 4.2.3拼音点歌功能输入歌曲名的每个字的首字母,即可快速找到自己想要的歌曲。要是忘了全名了,输入一个歌词的首字母也有机率找出来。4.2.4数字点歌功能编码点歌,以及字数点歌的界面比较类似。-40- 编码点歌主要适用老顾客,记住自己经常唱的歌曲,以方便下次查找。点歌播放功能。-40- 从主界面点歌功能,双击自己要唱的歌曲之后,所选的歌曲就会自动添加到已点歌曲里面,自动排列并播放,您也可以把自己已选的歌曲置顶,或者删除,以及操作最下面的功能按钮实现需要的效果。4.3本章小结本章主要对系统进行概要设计,该阶段的设计主要是寻找实现目标系统的各种不同的方案,根据需求分析阶段得到数据流图来设计系统的整体框架。为了最终实现目标,对系统进行了结构设计,得到系统的七大主要模块。-40- 第5章系统详细设计5.1设计目标本系统是根据山东米亚科技公司的网络版广告机进行设计的远程点播与控制的系统,主要实现如下功能:(1)客户机远程管理功能手动播放开始播放停止播放发送字幕停止字幕RSS发送声音控制屏幕控制格式化查看容量重启播放状态文件列表(2)媒体库功能本地资源HTTP资源FTP资源(3)播放列表功能制作播放列表配置播放列表(4)计划播放列表功能制作计划播放列表配置计划播放列表(5)播放报告功能获取播放报告筛选播放报告-40- 导出播放报告(6)服务器设置(7)客户机设置5.2逻辑结构设计5.2.1数据库模型图本系统数据库采用MySQL数据库,根据系统功能设计要求,本系统数据库设计如图5-1所图5-1数据库模型图5.2.2数据词典(1)T_authorinfo表-40- 表5-1T_authorinfo表的结构字段名数据类型名称是否主键描述author_idvarchar(50)编号是authornamevarchar(50)姓名否authorsexvarchar(50)作者性别否authordirthdaydatetime时间否authorcompanyvarchar(50)作品类型否authorzvarchar(50)作者否authorrecmavarchar(50)评价否rdatetimedatetime时间否authorgenrevarchar(50)地区否(2)T_codeinfo表表5-2T_codeinfo表的结构字段名数据类型名称是否主键描述code_idvarchar(50)编号是codnamevarchar(50)名称否codereamvarchar(50)评论否(3)T_computer表表5-3T_computer表的结构-40- 字段名数据类型名称是否主键描述cmp_ipvarchar(50)系统编号是cmp_namevarchar(50)系统名称否cmp_pawwvarchar(50)系统顺序否cmp_datatimedatetime时间否cmp_falgvarchar(50)否(4)tbmedia表表5-4tbmedia表的结构字段名数据类型名称是否主键描述Music_codevarchar(50)音乐编号是Music_namevarchar(50)音乐名称否Music_authorvarchar(50)演唱者否Music_kindvarchar(50)音乐类型否Music_chinsevarchar(50)语种否Music_filepathvarchar(50)地址否Music_pingvarchar(50)电视剧否Music_datedatetime时间否Music_falgvarchar(50)评价否-40- 5.3系统主框架布局与实现系统主框架布局如图5-2所示。图5-2系统主框架布局系统主框架是程序打开时所显示的界面,窗体上测为菜单栏;左侧上部为logo图片,此处图片可以在服务器设置中更改,左侧中部为区域,组,客户机的树形列表视图,左侧下部为模块选择按钮;中间上部为客户机管理命令的控制区域,中间显示的为主界面的模块,主要显示客户机信息,客户机当前绑定的播放列表或者计划播放列表,还有系统日志和CF卡文件列表组成。在主界面中可以使用账户管理功能对区域,组,客户机进行添加,编辑和删除。账户管理由一个向导完成,界面如图5-3所示。-40- 图5-3账户管理界面5.4媒体库模块布局与实现媒体库模块布局如图5-4所示。图5-4媒体库模块界面媒体库模块主要包括本地资源的添加,删除,修改。可以预览本地资源文件,可预览的资源包括字幕文件,图片文件和视频文件。添加资源文件时需要输入开始日期和结束日期,在系统下一次启动的时间到达资源文件的结束日期后,会自动删除媒体库中的资源文件。本地资源的添加,需要点击浏览按钮,找到需要添加的资源文件后,默认名称为资源文件名称,也可以更改名称,设置好时间后,添加即可添加完成。本地资源的添加逻辑为,点击完添加后,系统将资源文件复制到系统文件下的“medialib”文件夹中,然后添加资源信息到数据库中。单击资源列表中的本地资源可以预览,双击资源列表中的信息可以修改名称和开始日期与结束日期。资源的添加,只需要直接在路径文本框中输入以“http://”开头的完整资源路径,在名称中输入资源名称,设置好时间后添加即可。资源添加界面如图5-5所示。-40- 图5-5添加资源界面站点收藏界面,可以向数据库中添加信息,可以对数据库中的信息修改与删除。在点击左侧从数据库中加载列表后,点击链接,如链接成功,即可回到图5-8所示界面,并可以显示服务器中的目录与文件结构。在选择完成需要添加的文件后,点击添加,即可添加完成资源。资源的添加可以一次添加多个。向数据库中所添加的资源中的媒体路径包含了用户名,密码,资源路径等信息,密码,账号的登陆代码:usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.Data.SqlClient;usingKTV.KTVclass;namespaceKTV{-40- publicpartialclassfrmLogin:Form{publicfrmLogin(){InitializeComponent();}privatevoidcomboBox1_SelectedIndexChanged(objectsender,EventArgse){}privatevoidbntOK_Click(objectsender,EventArgse){stringstr="DataSource=.;InitialCatalog=Class;IntegratedSecurity=True";SqlConnectionconn=newSqlConnection(str);conn.Open();if(txtUser.Text==""){MessageBox.Show("登录名称不能为空");txtUser.Focus();return;}if(txtPwd.Text==""){MessageBox.Show("登录密码不能为空");txtPwd.Focus();return;}if(cmbLogin.Text==""){MessageBox.Show("请选择登录界面?");cmbLogin.Focus();return;}stringadmin_id=txtUser.Text;-40- stringadmin_pw=txtPwd.Text;stringsql=string.Format("selectcount(*)fromT_duinfowheredu_id='{0}'anddu_name='{1}'",admin_id,admin_pw);SqlCommandcomm=newSqlCommand(sql,conn);inti=Convert.ToInt32(comm.ExecuteScalar());if(i>0){if(cmbLogin.Text=="后台数据维护"){frmMainfrm=newfrmMain();frm.Show();this.Hide();}if(cmbLogin.Text=="系统点歌"){frmDaiGedaige=newfrmDaiGe();daige.Show();this.Hide();}}else{MessageBox.Show("登录失败");txtPwd.Text="";txtUser.Text="";cmbLogin.Text="";txtUser.Focus();}conn.Close();}privatevoidbntEsce_Click(objectsender,EventArgse){this.Close();}-40- privatevoidfrmLogin_Load(objectsender,EventArgse){}}}5.5播放列表模块布局与实现播放列表模块布局如图5-6所示。图5-6播放列表模块播放列表模块左上方为媒体库中的列表,包含媒体名称,媒体大小,开始时间和结束时间。右侧为播放列表编辑界面。下面是播放列表的列表,包含已生成的播放列表。生成播放列表的步骤为:首先选择左侧的媒体,可以多选,点击“->”-40- 按钮,媒体将添加到播放列表编辑界面中,所添加的媒体信息还可以设置每一个的媒体的开始播放时间和结束播放时间,需要设置的话直接点击列表输入即可,输入播放列表的名称,开始日期和结束日期。点击添加按钮即可完成播放列表的生成。如果还需要设置的话,可以在添加前或者双击已生成的播放列表修改时点击设置按钮,将会打开播放列表的设置窗体,在播放列表设置窗体中可以设置图片的播放时间,图片的播放效果,删除选线,是否静音播放和计划下载时间等设置。点击确定后设置完成,再点击添加或者更新即可完成对播放列表的设置点击保存可以将当前播放列表另存为播放列表文件。所生成的播放列表的文件格式为*.mpl格式,名称为数据库中的播放列表编号加playlist。内容采用写系统配置文件的方式填写。写系统配置文件采用调用系统API的方式进行读写,主要代码如下:播放器的代码:usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Windows.Forms;namespaceKTV{publicpartialclassfrmPlay:Form{publicfrmPlay(){InitializeComponent();}publicfrmPlay(stringstrPaht){InitializeComponent();strPath=strPaht;}publicstringstrPath=null;privatevoidbutton1_Click(objectsender,EventArgse){}-40- privatevoidbutton1_Click_1(objectsender,EventArgse){this.axWindowsMediaPlayer1.Ctlcontrols.stop();}privatevoidfrmPlay_Load(objectsender,EventArgse){//播放文件this.axWindowsMediaPlayer1.URL=strPath;}privatevoidbntExce_Click(objectsender,EventArgse){this.axWindowsMediaPlayer1.Ctlcontrols.stop();this.Close();}privatevoidbntZan_Click(objectsender,EventArgse){if(bntZan.Text=="暂停"){this.axWindowsMediaPlayer1.Ctlcontrols.pause();bntZan.Text="继续";}else{this.axWindowsMediaPlayer1.Ctlcontrols.play();bntZan.Text="暂停";}}}}5.6播放报告模块布局与实现播放报告模块布局如图5-7所示。-40- 图5-7播放报告模块播放报告模块将会显示客户机每天所播放媒体文件的次数。并可以对报告进行按时间段筛选,按客户机名称筛选,按照媒体名称进行筛选。筛选方式既可以是多个筛选条件叠加,也可以单独使用每一中筛选方式。5.7客户机配置模块的布局与实现客户机配置模块的布局如图5-8所示。-40- 图5-8客户机设置模块客户机设置模块可以设置客户机的各种信息。包括服务器信息;客户机的设备名,密码等基本信息;设备的IP设置信息;设备时间设置信息;设备视频设置信息;设备自动开始信息;客户机更新的逻辑为,在下拉列表中选择需要更新的客户机,点击更新客户端,系统则会根据客户机配置信息格式生成配置文件,所生成的配置文件名称为Autoconfig.mia,并通知客户机来下载Autoconfig.mia,客户机下载完成后,自动更新配置,并重启。5.8本章总结本章详细的介绍了系统各个模块的实现过程,首先确定系统共分为七大模块。其次,根据系统功能要求,进行了数据库的设计。最后,分小节详细的介绍了系统各个模块的设计布局与实现过程,主要是功能点与实现逻辑的介绍和简要的重点代码段。-40- 第6章系统测试6.1系统测试目的系统测试时为了发现错误而执行的过程,成功的测试是为了发现至今尚未发现的逻辑错误。测试的目的就是希望以最少的人力和时间发现潜在的各种错误和缺陷。应根据开发各阶段的需求、设计等文档或者程序内部结构精心设计测试用例,并利用这些事例来运行程序,以便发现错误。信息系统测试应包括软件测试、硬件测试和网络测试。硬件测试、网络测试可以根据具体的性能指标来进行,此处所说的测试更多的是指软件测试。系统测试时保证系统质量和可靠性的关键步骤,是对系统开发过程中的系统分析,系统设计和实施的最后复查。根据测试的概念和目的,在进行信息系统测试时应遵循以基本为原则。6.2系统测试结果6.2.1客户机连接测试测试目的:测试客户机能否顺利连入系统。用例1:客户机连接测试操作结果系统客户机先打开后打开可以成功连入后打开先打开系统打开后可以成功连入连接成功后重启打开系统重启后可以成功连入打开连接成功后重启可以成功连入所有测试结果都可以成功连入,结果如图6-1所示。-40- 图6-1客户机成功连入的日志6.2.2播放列表模块测试目的:系统能否正常生产播放列表,客户机能否正常解析所生成的播放列表。用例1:播放列表生成测试操作结果不输入列表名称提示请输入合理的名称结束日期比开始日期早提示请输入合理的日期输入重名播放列表提示此名称已存在请更换名称后重试输入正确的名称与日期生成播放列表(1)不输入列表名称,或者日期输入不合理,点击添加时结果如图6-2所示。图6-2不输入列表名称或日期不合理的提示(2)输入和已存在的播放列表重名的名称后,点击添加后结果如图6-3所示。图6-3重名提示-40- 用例2客户机能否正常解析所生成的播放列表操作结果本地资源的播放列表可以正常解析并下载播放HTTP资源的播放列表可以正常解析并下载播放FTP资源的播放列表可以正常解析并下载播放6.3本章总结本章所介绍的系统测试主要讲述了在系统发布前进行的一项十分重要的工作。我所做的系统测试采用了黑盒测试的方法对系统的各个功能模块进行测试,在这里着重介绍了客户机连接测试以及播放列表模块中播放列表生成与客户机解析播放列表的测试。其他功能模块的测试就不再赘述了。-40- 第7章系统总结本论文是基于C#语言开发的多媒体点播控制系统,系统的开发环境是MicrosoftVisualStudio2008+MySQL数据库。实现了一个功能完善的多媒体点播控制系统,程序由七大模块组成,客户机远程管理模块,媒体库模块,播放列表模块,计划播放列表模块,播放报告模块,服务器设置模块,客户机设置模块。各个模块经过测试符合山东米亚科技公司的要求。本系统全部控件均使用ComponentFactory的免费控件库Krypton.Toolkit.dll,使程序展现出OFFICE2010的界面风格,简洁漂亮。-40- 参考文献[1]KarliWatso.C#入门经典.第五版.北京:清华大学出版社,2010.60[2]韩阳.MYSQL实用教程.成都:电子工业出版社,2009.103[3]汤海晨.基于.NET的技术FTP文件传输的实现.浙江工贸职业技术学院,2009,10:20[4]李乃文.C#2008程序设计实践教程.北京:清华大学出版社,2009.27[5]刘楠.基于.NET的视频点播系统的设计与实现.大连海事大学计算机科学与技术学院学报,2008,11:35[6]李增民.C#程序开发全程演练.北京:清华大学出版社,2009.124[7]明日科技.C#项目开发案例全程实录.第二版.北京:清华大学出版社,2010.43[8]陈佛敏.C#程序设计简明教程.北京:人民邮电出版社,2008.25[9]杨强.基于.NET的C#网络数据传输,计算机应用,2008,23:42[10]梅晓冬.VisualC#网络编程技术.北京:清华大学出版社,2008.12[11]马骏.C#网络应用编程实验指导与开发实例.成都:电子工业出版社,2007.26[12]金华.C#网络编程技术教程.北京:人民邮电出版社,2008.65[13]郑千忠.C#编程网络大讲堂.北京:清华大学出版社,2008.63[14]马骏.C#网络应用高级编程.北京:人民邮电出版社,2006.125[15]樊娜.基于网络测控系统的视频监控的设计与实现.中国石油大学信息与控制工程学院学报,2009,06:25[16]牛学婷.利用C#异步委托实现多人在线功能的服务器设计.聊城大学东昌学院电子科学系学报,2009,11:53-40- 致谢经过两个月的忙碌和工作,本次毕业设计已经接近尾声,作为一个专科生的毕业设计,由于经验的匮乏,难免有许多考虑不周全的地方,如果没有导师的督促指导,以及一起工作的同学们的支持,想要完成这个设计是难以想象的。在这里首先要感谢我的导师郑治武老师。郑治武老师平日里工作繁多,但在我们做毕业设计的每个阶段,从代码编写到查阅资料,设计草案的确定和修改,中期检查,后期详细设计,论文编写等整个过程中都给予了我们悉心的指导。我的设计较为复杂烦琐,但是郑治武老师仍然细心地纠正论文中的错误。除了敬佩郑治武老师的专业水平外,她的治学严谨和科学研究的精神也是我们永远学习的榜样,并将积极影响我今后的学习和工作。然后还要感谢大学期间所有的老师,为我们打下计算机专业知识的基础;同时还要感谢所有的同学们,正是因为有了你们的支持和鼓励。此次毕业设计才会顺利完成。最后感谢软件工程系和我的母校湖南软件职业学院对我的大力栽培。-40-

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
大家都在看
近期热门
关闭