




已阅读5页,还剩70页未读, 继续免费阅读
基于Internet的音频播放系统的设计和实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
国内图书分类号 tp311 52 学校代码 10213 国际图书分类号 621 3 密级 公开 工程硕士学位论文工程硕士学位论文 基于 internet 的音频播放系统的设计与实现 硕 士 研 究 生 王小磊 导 师 徐志明 教授 副导师 易定 高级工程师 申请学位 工程硕士 学科 软件工程 所 在 单 位 软件学院 答 辩 日 期 2010 年 10 月 授予学位单位 哈尔滨工业大学 classified index tp311 52 u d c 621 3 dissertation for the master s degree in engineering the design and implementation of audio playing system based on internet candidate wang xiaolei supervisor prof xu zhiming associate supervisor senior eng yi ding academic degree applied for master of engineering speciality software engineering affiliation school of software date of defence october 2010 degree conferring institution harbin institute of technology 哈尔滨工业大学工程硕士学位论文 i 摘 要 随着流媒体技术的不断发展 互联网上的音频资源越来越丰富 本文提出 了一种基于internet的音频播放系统 该系统的主体是用嵌入式的linux系统平 台所开发的网络音频播放系统 用户通过该系统和节目管理服务器进行连接并 获取网络音频的url 然后再利用系统的播放模块进行音频的收听 本文首先介绍了课题的来源 背景和意义 阐述了设计基于internet的音频 播放系统的必要性 从目前的国内外的流媒体技术的发展以及嵌入式系统的开 发现状简述了本课题的可行性 从用户的角度出发 进行了本课题的需求分析 在功能分析中详述了系统的总体架构以及系统中各功能模块的作用 然后对实 现本系统所需要的技术进行了介绍 同时介绍了本系统开发时所使用的软硬件 环境 本文重点阐述了基于internet的音频播放系统的设计和实现 首先介绍了系 统的硬件设计和硬件平台的选取 然后对系统进行了功能的划分 将系统分成 三个层面 并对每个层面进行功能模块的设计 根据业务流程设计了各模块的 时序关系 并描述了各功能模块的具体实现 利用嵌入式的linux系统开发 基 于套接字的进程通信 基于sax的xml解析算法以及基于流媒体的缓冲控制策 略等技术解决了系统开发中遇到的进程间的通信 系统与节目管理服务器的信 息交互等主要问题 最后 对本系统进做了详细的测试报告和系统总结 然后根据系统在测试 中的表现 验证了本系统能够满足用户的需求 同时对于系统的未来的发展趋 势进行了进一步的探讨 关键词 嵌入式系统开发 网络音频播放 流媒体 套接字 哈尔滨工业大学工程硕士学位论文 ii abstract as the development of the technology of streaming media there are more and more audio resources on the internet this essay introduces an audio playing system based on internet the main body of the system is a network audio playing system based on embeded linux platform users can get the url of network music by linking the server of program management through this system and then play the music by the playing module the essay firstly introduces the origin background and significance of this topic as well as explains the importance of designing this audio playing system based on internet and feasibility of this topic by analyzing the development of the technology of streaming media in and outside china and the current designing situation of embeded besides the demand analysis has been made according to the interest of final users in this essay and the functions of each part as well as the whole structure of the systems were described in detail furthermore the relevant technologies needed for and both the software and hardware environment of this system has been introduced the essay focused on the implementation of the network audio player based on internet firstly the hardware design of the system was introduced including the choice of hardware platform and design of the hardware structure and then the system was divided into three parts according to the functions each function module as well as the timing schedule was designed for the three parts and followed is the description of implementation of each module the main problems while facing in system developing were solved by the technology of embeded system development based on the interprocess communication technology of socketpair the xml analytical method base on the sax and the mechanism for streaming media buffering finally examination of the system and conclusion based on that were made it is finally proved that this system can be produced for use as the examination result and a discussion has also been made for the future development of this system keywords embeded system development audio playing system streaming media socket 哈尔滨工业大学工程硕士学位论文 iii 目 录 摘 要 i abstract ii 第 1 章 绪 论 1 1 1 课题来源及背景 1 1 2 国内外研究状况 1 1 2 1 国外网络音频播放系统的发展 3 1 2 2 国内网络音频播放系统的发展 5 1 2 3 网络音频播放系统的发展趋势 7 1 3 本论文的主要工作内容 8 第 2 章 系统需求分析和关键技术 10 2 1 系统的需求分析 11 2 1 1 系统的功能分析 11 2 1 2 系统的接口分析 14 2 1 3 系统的性能分析 15 2 2 系统关键技术 15 2 2 1 基于 linux 的嵌入式软件开发技术 15 2 2 2 基于 sax 的 xml 解析算法 16 2 2 3 基于流媒体的缓冲控制策略 18 2 2 4 基于套接字的进程间通信技术 20 2 2 5 linux 的线程控制技术 21 2 3 系统的运行环境 22 2 3 1 硬件设备 22 2 3 2 软件环境 23 2 4 本章小结 23 第 3 章 基于 internet 的音频播放系统的设计 24 3 1 系统的总体设计 24 3 1 1 系统的总体网络设计 24 3 1 2 系统的软硬件结构设计 25 3 2 系统的硬件设计 25 哈尔滨工业大学工程硕士学位论文 iv 3 2 1 硬件平台的选取 25 3 2 2 硬件总体方案 26 3 3 系统的软件设计 27 3 3 1 应用程序的总体设计 27 3 3 2 用户界面层的设计 28 3 3 3 系统管理层的设计 32 3 3 4 音频播放层的设计 33 3 3 5 模块间主要的时序关系设计 34 3 4 本章小结 37 第 4 章 基于 internet 的音频播放系统的实现 38 4 1 用户界面层的实现 38 4 1 1 命令控制接口的实现 38 4 1 2 屏幕显示接口的实现 40 4 1 3 图标接口的实现 43 4 2 系统管理层的实现 43 4 2 1 模式选择模块 43 4 2 2 系统设置模块 45 4 2 3 ethernet 网络设置模块 45 4 2 4 wifi 网络设置模块 48 4 3 音频播放层的实现 49 4 3 1 节目地址搜索模块 49 4 3 2 网络音频播放模块 51 4 3 3 本地音频播放模块 53 4 4 本章小结 55 第 5 章 基于 internet 的音频播放系统的测试和应用 56 5 1 系统测试报告 56 5 1 1 系统测试环境 56 5 1 2 测试步骤 57 5 1 3 功能测试 57 5 1 4 性能测试 60 5 1 5 测试结论 61 5 2 系统运行展示 62 5 3 系统评价 63 5 4 本章小结 64 哈尔滨工业大学工程硕士学位论文 v 结 论 65 参考文献 66 哈尔滨工业大学硕士学位论文原创性声明 68 哈尔滨工业大学硕士学位论文使用授权书 68 致 谢 69 个人简历 70 哈尔滨工业大学工程硕士学位论文 1 第 1 章 绪 论 1 1 课题来源及背景 本课题是深圳市科技局赞助的科技计划项目 互联网的出现创新了信息传播的方式 也变革了信息存储的方式 个人的 信息可以集中存储在网络上 如个人通信录的网络存储 个人邮件的网络存储 个人喜爱的歌曲的网络存储等 随着时代发展 音频系统也从模拟信号发展到 数字信号 音频信号的数字化发展和压缩传送发展为音频系统的网络化奠定了 基础 现如今 数字娱乐技术的日趋成熟标志着数字家庭进入到了实质性的商业 化阶段 目前以数字娱乐为主导的数字家庭pc产品力争将自由自主的数字家庭 应用理念发挥得淋漓尽致 因此功能 高大全 价格动辄上万元 本项目本着 创新 精神 研究与pc无关的网络音频播放系统 它是数字家庭中的音频中 心 本项目提出一套低成本的解决方案 不追求数字家庭概念的全部实现 但 要满足现代数字家庭娱乐的一类特定需求 即以低成本为消费者带来新的使用 模式和更加丰富的全球无边界的数字音频体验 用户的需求 产业的关注注定数字化娱乐会蓬勃发展 产业大环境的完善 和数字化技术的成熟是其飞速发展的两大根源 首先产业大环境形成了数字化 娱乐走向成熟的土壤 根据cnnic的最新统计结果 目前中国上网人数已经突 破了1个亿 宽带用户也超过了4000万 在用户基数激增的同时 网络内容得到 了极大的丰富 网上已有17000多个广播电台 音乐网站更不计其数 1 其次数 字化技术的进步 也使数字化娱乐具备了基本的条件 互联网技术 流媒体技 术 短距离无线关联技术的发展使得数字家庭设备间的数字娱乐应用更加完美 1 2 国内外研究状况 互联网技术和音视频技术的结合产生了流媒体技术 流媒体 streaming media 指在internet上按时间的先后次序传输和播放的连续音 视 频媒体 2 流式媒体数据流具有三个特点 连续性 实时性和时序性 即其数据流具有严 格的前后时序关系 流式媒体在播放前并不下载整个文件 只将开始部分内容 存入内存 数据流随时传送随时播放 只是在开始播放时有几秒或十几秒的启 动延时 流媒体实现的关键技术就是流式传输 3 哈尔滨工业大学工程硕士学位论文 2 当前所说的流式传输主要是指通过网络传送媒体的技术总称 实现流式传 输有两种方法 顺序流式传输 progressive streaming 和实时流式传输 real time streaming 4 1 顺序流式传输 顺序流式传输采用顺序下载方式 用户可以观看在线 媒体节目 但是在给定时刻 用户只能观看已下载的那部分 而不能跳到还未 下载的前序部分 它不能根据用户连接速度做调整 由于标准的http服务器可 发送这种形式的文件 而不需要其他特殊协议 它经常被称作http流式传输 顺序流式传输方式适合高质量的短片段 如片头 片尾和广告 媒体文件在播 放前观看的部分是无损下载的 顺序流式文件放在标准http或ftp服务器上 易于管理 基本上与防火墙无关 顺序流式传输不适合长片段和有随机访问要 求的视频 讲座 演说与演示 它也不支持现场广播 严格说来 它是一种点 播技术 4 2 实时流式传输 实时流式传输保证媒体信号带宽与网络连接相匹配 使媒体可被实时观看到 实时流与http流式传输不同 需要专用的流媒体服务 器与传输协议 实时流式传输特别适合现场事件 也支持随机访问 用户可快 进或后退以观看前面或后面的内容 理论上 实时流一经播放就可不停地收看 但实际上 可能会发生周期暂停 4 近年来 流媒体技术在世界范围内己有应用 特别是1995年推出第一个 internet流媒体播放器以来 流媒体应用有了爆炸性增长 互联网技术的迅猛发 展为流媒体市场的广阔的市场前景 流媒体技术广泛用于多媒体新闻发布 在 线直播 网络广告 电子商务 视频点播 远程教育 远程医疗 网络电台 实 时视频会议等互联网信息服务的方方面面 由此也引发了对网络音频播放系统 的开发 5 流媒体技术在音频传输的应用则是出现了越来越多的网络音频服务器 网 络音频服务器多以网络电台的形式出现 它是运用多媒体技术采编 制作数字 化节目内容并以计算机网络为传播载体的广播电台 6 它是指通过编码器 将 电脑里面正在播放的音频或视频数据转换成为可以在internet上直接传送的格 式 用户登录到电台的网站时 可以下载到经过编码的音频信息 再通过相关 软件将音频信息转换成声音播放出来 7 网络电台的技术实现过程为 首先通 过专门软件将音频内容进行数字化录制或压缩转换 数字化后的音频内容以电 子文件形式或数据流形式在网络电台网站上进行发布 用户通过相应的软件在 线收听或下载收听 8 哈尔滨工业大学工程硕士学位论文 3 1 2 1 国外网络音频播放系统的发展 1 2 1 1 国外基于pc的网络音频播放系统的发展 目前基于pc的主流的流媒体播放器主要有realplayer windows media player和quicktime realnetworks公司出品的realplayer在流媒体市场占有非常 重要的地位 它进入这个市场的历史比较长 拥有了数量众多的用户 realplayer 的播放界面如图1 1所示 这个工具原先是用来播放小巧玲珑的rm音乐文件的 到现在已经发展成为最重要的网上音乐和影像的播放工具 rm音乐文件 在 同等音质下可以比mp3音乐更小巧 大约只有mp3的三分之二到三分之一大小 rm音乐文件 原来都是用realplayer播放的 现在有很多媒体播放器都支持 现在的rm音乐文件 由于压缩率高 可以通过因特网以数据流的形式用 realplayer实时播放 因此rm音乐在因特网上越来越流行 许多mp3网站 也 提供相应的rm格式音乐供实时播放和下载 9 图 1 1 realplayer 的播放界面图 windows media player是微软在windows操作系统中整合的媒体播放器 这 使得media player更方便为人们所接受和使用 图1 2是该播放器的播放界面 图 1 2 windows media player 的播放界面图 哈尔滨工业大学工程硕士学位论文 4 相比realplayer而言 windows media player支持的视频流媒体格式主要是 微软自己开发的asf与wmv 这两者的编码技术还是相当先进的 尤其是asf wmv一般是采用windows media video 7的编码 而asf采用的一般是microsoft mpeg4 音频部分则是windows media audio 2 2004年新推出了media player v9 0简体中文版和media player 10 现在最新版本为12 0 该版本是在windows 7系统内正式推出 9 quicktime是由苹果公司推出的一款媒体播放器 如图1 3所示 苹果机上 所有的音频 视频播放都是由它来完成的 quicktime是一个跨平台的多媒体架 构 可以运行在mac os和windows系统上 它的构成元素包括一系列多媒体操 作系统扩展 在windows系统上实现为dll 一套易于理解的api 一种文件 格式 以及一套诸如quicktime播放器 quicktime activex控件 以及quicktime 浏览器插件这样的应用程序 9 图 1 3 quicktime 的播放界面图 1 2 1 2 国外与pc无关的网络音频播放系统的发展 图1 4所示的是世界上第一部wifi网络收音机 图 1 4 第一台 wifi 的网络收音机的外观图 哈尔滨工业大学工程硕士学位论文 5 它是由英国著名音箱厂商ae acoustic energy 推出的 这台wifi收音机 没有采用数字音频广播 dab 而是接入现有的无线宽带连接来提供广播节 目 通过互联网广播网关获取频道列表 接收到来自全球范围内的广播节目 并且电台数目还在不断增加中 并支持802 11b g标准和wep加密 该机内建 15w功率放大器及ae特别开发的二路全音域单元 支持高频率的音频流 能够 为听众带来高质量的音质 同时它还能作为一台媒体适配器使用 可以连接电 脑音乐库并根据艺术家 专辑 播放列表来播放音乐 该机的售价为300美元 roku公司推出的soundbridge播放器如图1 5所示 它是一个拥有大显示器 的管状设备 该播放器有两种规格 一种是10英寸的m1000 其售价为200美元 而具有连接wi fi无线网络功能定该款播放器售价为250美元 另一种为17英寸 支持wi fi标准的m2000 售价为500美元 10 soundbridge的特点包括 通过以 太网网络连到用户的立体声音响和有源音箱 在家里的任何地方播放用户的电 脑或苹果机中的数字音乐文档 使用苹果公司的daap 数字音频接入协议 直接和itunes通讯 并通过使用较少的网络带宽在播放器上解码aac文档 支 持所有流行的格式包括 wma aac wav mp3以及aif 图 1 5 soundbridge 网络音乐播放器的外观图 英国revo公司生产的revo pico radiostation 可以收听120个国家14000个 数字网络电台 进行fm调频收听 拥有三种模式的电子闹钟 同时该设备可以 作为外接音箱 通过3 5mm线缆 附送 连接电脑或其他mp3 cd等音乐播放器 该设备的售价为300美元 1 2 2 国内网络音频播放系统的发展 1 2 2 1 国内基于pc的网络音频播放系统的发展 目前来讲 国内基于pc的网络音频播放系统开发的比较成熟 拥有用户群 最多的应该是龙卷风网络收音机 如图1 6所示 它是一个免费软件 该软件内 建有100多个中文电台 包括国语 粤语 及一些国际著名电台 11 程序已经 哈尔滨工业大学工程硕士学位论文 6 内置了在线更新电台信息及在线升级程序功能 收录全世界3千多个电台 可以 听财经 娱乐 社会新闻 听外语电台 听流行曲 享受摇滚 爵士 民乐 交响乐等 还可以播放本地媒体文件 支持在线更新 内置录音 皮肤切换 多国语言 热键操作 断线自动重连 定时录音 定时播放 定时关机 语音 报时等功能 并且提供了换肤功能 程序除了默认的皮肤外还有两个皮肤可供 选用 另外 还可以在线下载更多好看的皮肤满足个性化需求 图 1 6 龙卷风网络收音机播放界面图 魅影流声全球网络收音机也是一款功能强大的在线收听网络电台的优秀软 件 如图1 7所示 通过魅影流声全球网络收音机 能够收听来自世界各个国家 的多个网络电台 包括20 000个音乐电台 10 000个英语电台 其中包涵了 bbc voa 977 1 club 1 fm 181 fm等著名广播 魅影流声全球网络收 音机收录的电台涵盖了音乐 新闻 体育 经济 交通 娱乐 talk show等各 个领域70多种音乐风格 11 图 1 7 魅影流声全球网络收音机播放界面图 1 2 2 2 国内与pc无关的网络音频播放系统的发展 华硕的网络收音机取名为air见图1 8所示 虽然是取自asus internet radio的第一个字母缩写 但是观其名称 就可知道它是可以利用网络来免费聆 听广播节目的收音机 除了音乐和新闻等消息外 它还可以透过802 11b g及有 哈尔滨工业大学工程硕士学位论文 7 线网络 将内建的1万个网络电台在不接计算机的状态下 直接收音聆听 它内 建8种语言显示 还可以让用户储存250个 我的最爱 频道 而木质构造的复 古造型 更增添这款数字收音机的质感 图 1 8 华硕的 air 外观图 睿想2009年末推出的全球第一台wifi袖珍式无线网络收音机如下图1 9所 示 小而轻巧的机身 所有开关全部在收音机的左半部 操作者只用右手完全 可以操作 选台操作只要旋转 转盘 就可以实现 值得一提的是 这个小 转 盘 是现今国内唯一一款使用寿命最长的创新设计 也因此获得设计大奖 它 同时还有预设电台和收藏最喜爱电台的细化功能 图 1 9 睿想的 wifi 袖珍式无线网络收音机外观图 1 2 3 网络音频播放系统的发展趋势 在pc上运行的各种网络音频播放程序已经有许多了 然而随着各种芯片制 造技术的不断成熟 网络音频播放系统更多的向着和pc无关的模式发展 与传 统的基于pc的网络音频播放系统相比 与pc无关的网络音频系统多数是以嵌入 式的系统为基础的硬件网络音频播放系统 它具有体积小 携带方便 功能专 业化高 成本较低 稳定性高 实时性好等特点 12 因此 面向广大的网络音 哈尔滨工业大学工程硕士学位论文 8 频爱好者 与pc无关的网络音频系统将成为数字家庭娱乐系统的一个亮点 硬件的网络音频播放系统是能够完全脱离开pc机独立访问网络电台的多 媒体硬件设备 到目前为止 全球的网络音频播放系统开发主要集中在欧美 涉足的厂家有近10多家 但主要流派却只有5个 在美国有roku公司和 slimdevice公司 在英国有reciva公司 在德国有terratec公司 在澳大利亚有 torian公司 这几家都有相应的成熟产品上市 尤其是美国的roku公司和英国 的reciva公司都有其技术授权许可的公司推出的贴牌产品 相比之下 reciva 公司的授权公司要多一些 但是也可以看到 国外的产品的售价都非常的高 价格一般都在300美元左右 我国在基于嵌入式的网络音频播放系统的开发和设计上 都要远远的落后 于国外 在2008年以前 只有在期刊上能够看到方案设计却没有具体的实现 随后的一段时间 陆续有公司开始着力于这个领域的产品设计和实现 其售价 也和国外类似 由于互联网上的音频源繁多 节目的类别混乱 虽然国外有厂商进行了节 目的整理 并且建立了自己的服务器 但是服务器也只是针对于自身产品的用 户才能够享受 而且节目的管理功能也不够完善 综上所述 网络音频系统的发展趋势可以归结与以下几点 1 系统要独立于pc 摆脱pc的束缚 拥有自身的软硬件体系 从而更 好的服务于用户 2 系统要有良好的音频格式兼容性 能够缓冲和解码当前所有的主流的 流媒体音频格式 3 系统需要强大的节目管理后台服务 能够提供灵活多变的节目管理机 制给用户使用 4 系统需要稳定的无线网络功能 增加系统的可移动性 5 系统要有更低的成本 能够满足绝大多数用户的需求 1 3 本论文的主要工作内容 本论文的主要工作是设计一个低成本的基于嵌入式的网络音频播放系统 该系统拥有良好的用户接口 通过用户接口进行系统的操作 同时本系统拥有 强大的音频处理功能 能够缓冲和解码目前互联网上的主流的音频流媒体格式 此外 和节目管理服务器间的基于xml的通信是本系统又的一个特色 当系统 的模式转换成网络工作模式时 系统自动和节目管理服务器进行连接 并解析 所获得的xml文件 从而进行节目列表信息的实时更新和传递 保证系统拥有 哈尔滨工业大学工程硕士学位论文 9 强大的后台节目管理服务 此外 本系统还加入了wifi功能的设计 使得系统 到联网方式更加的灵活 不受网线长度的限制 本课题的研究内容主要包括以下几个方面 1 对系统进行了详细的需求分析 功能分析和性能分析 根据分析的结 果 考察了大量的设计方案 随后进行了本系统的方案设计 包括硬件平台的 选取 嵌入式系统的选取 硬件框架的设计 软件的设计以及具体的代码实现 2 对流媒体技术进行了深入的学习 掌握了实时流媒体的特征 并设计 了一个基于嵌入式流媒体的缓冲控制策略 3 系统的学习了基于嵌入式的linux系统下的开发技术 并成功的运用 该技术实现了项目的开发 4 对互联网上的主流的流媒体音频格式进行了学习 并选取了功能强大 的音频解码接口 解决了系统的音频播放的兼容性问题 5 学习了各种linux下的进程间的通信技术 根据系统的实时控制的需 求 利用了套接字作为本系统的进程通信方式 并加以实现 使系统能够快速 准确的接收用户的控制指令 本文共分为五个章节 各个章节的内容主要如下 第1章 绪论 说明论文的来源 背景和意义 叙述国内 外发展现状 分 析了系统的发展趋势 并介绍论文的主要内容和章节安排 第2章 系统的需求分析和关键技术的介绍 主要从用户的需求出发 进行 系统的需求分析 然后对系统性能需求进行了详细的分析 接着详细描述了在 本系统开发过程中遇到的技术难点并说明了相关的解决方案 第3章 系统的设计 主要讲述了系统的总体设计 硬件设计 软件设计和 各功能模块间的时序关系的设计 第4章 系统的实现 从各功能模块的设计出发 详细介绍了各功能模块的 具体实现 然后分别介绍了lcd的显示原理 基于套接字的linux进程间通信在 本设计中的应用以及linux的线程控制的使用 并将功能模块间的主要时序关系 进行了具体的实现说明 第5章 系统的测试与运行展示 哈尔滨工业大学工程硕士学位论文 10 第 2 章 系统需求分析和关键技术 基于internet的音频播放系统是通过现有的流媒体技术 充分的利用互联网 中成千上万的网络音频资源 在嵌入式的开发平台下设计的一个嵌入式的网络 音频播放系统 用户利用系统的播放终端 通过连接系统的节目管理服务器 然后在节目管理服务器的索引下获取网络音频的url 并利用播放终端访问 url从而播放所喜爱的音频 系统在建立后要求实现以下的目标 1 良好的节目列表管理机制 在互联网中 网络音频资源种类繁多 音 频的来源标识命名各种各样 用户无法具体识别相关的音频内容 通过节目列 表管理机制 可以良好的管理相关的节目 并对音频的内容进行相应的标识 使用户可以迅速的收听到所喜欢和需要的音频资源 2 安全的信息传输 节目管理需要投入大量的人力和物力进行经营 从 而确保节目列表的合理性和实时性 但是这样的资源必须要确保其安全性和稳 定性 因此要对节目列表服务器进行保护 网络音频播放系统和节目列表管理 器之间的交互 必须要有自身的加密机制 从而确保信息在两者间传输的安全 性 3 全面的格式兼容性 要求能够播放当前的主流的流媒体音频格式 当 前的流媒体格式主要由realnetworks 微软以及苹果等三家公司所开发的音频 为主 因此本系统需要对这些主流的格式都能进行解码和播放 4 良好的交互 网络音频播放要有良好的交互界面 并且要有合理的业 务流程设计 使得用户在进行系统操作的时候 能够简单 有效 快速的学习 到播放设备的使用技巧 5 灵活性 为了更好的达到用户的需求 因此要加入本地播放的功能 用户可以利用u盘等工具 将所需的音频加载到播放终端 播放所喜爱的音频 同时网络的播放也是多样的 可以利用有线的网络或者wifi使得播放的终端更 加灵活 使用的范围更加的广泛 6 稳定性 由于网络音频的播放是通过嵌入式技术设计出来的终端 而 且所需的资源也是特定的流媒体资源 因此在实现后 所能达到的效果充满未 知性和不稳定因素 必须保证系统良好的运行 稳定的接收和播放网络音频资 源 但也正是用户播放终端脱离了复杂的运行环境 在良好的系统设计下可以 更容易确保系统的稳定 哈尔滨工业大学工程硕士学位论文 11 2 1 系统的需求分析 网络音频播放系统的主要功能是 通过访问节目管理服务器来获取网络音 频的地址 从而通过流媒体传输从网络音频服务器端获取音频资源 用户可以 通过按键的控制 实现对网络音频播系统的系统设置 网络设置 音频播放控 制和信息查看等 用例分析如图2 1所示 用户 系统设置 播放控制 节目选择信息查看 图 2 1 网络音频系统的用例图 现对该用例图中的主要功能的描述如下 1 系统设置 用户可以对网络音频播放系统进行系统的设置 包括系统 当前的工作模式的设置 连接的节目管理服务器的ip地址的设置 系统的网络 模式的设置等 此外系统的设置还应该在系统的flash中得到保存 以防止当系 统关机或重启后 下次还要用户重新的输入对应的参数 2 节目选择 用户通过网络音频播放系统的网络功能和节目管理服务器 进行连接 然后下载节目的列表 根据需要进行节目的选择 当节目选定后 系统就会发送指令 尝试节目的播放 3 信息查看 该功能主要是用以和用户进行交互 每当用户进行相应的 操作以后 系统就会将当前的工作状态通过lcd屏幕进行显示 同时监听用户 的最新控制指令 而用户的指令也需要系统良好的解读 并且得到快速的指令 响应 4 播放控制 该功能首先对用户所选的音频源进行连接 当连接成功以 后 就会下载音频源并进行播放 当用户对系统输入新的播放指令以后 则响 应用户控制指令 包括播放的暂停 继续 快进 快退 停止和返回主目录等 2 1 1 系统的功能分析 基于internet的音频播放系统是面向用户的进行网络音频播放的系统 为了 哈尔滨工业大学工程硕士学位论文 12 使其成为脱离pc支持的系统平台 该系统需要利用嵌入式系统做为应用层软件 的运行平台 因为linux是开放源代码的 不存在黑箱技术 遍布全球的众多 linux爱好者又是linux开发者的强大技术支持 其次 linux的内核小 效率高 内核的更新嵌入式linux速度很快 而且linux是可以定制的 其系统内核最小只 有约134kb 再者 linux是免费的os 在价格上极具竞争力 最后linux还有 着嵌入式操作系统所需要的很多特色 突出的就是linux适应于多种cpu和多种 硬件平台 所以本系统采用以linux为核心的嵌入式开发平台 2 1 1 1 系统设置功能 系统设置功能是系统其他功能实现的基础 在正常的系统设置下 系统才 能够正常的工作 系统设置功能的业务流程如图2 2所示 图 2 2 系统设置的业务流程图 用户首先通过主菜单 在按键的选取下进入系统设置菜单 然后在菜单中 选取相应的功能 如果选择服务器设置 则可对本系统所要连接的节目管理服 务器进行ip地址的设置 只有正确的ip地址设置才可以使本系统拥有网络音频 播放的功能 系统的背光设置是表示系统在背光设置时间内如果没有用户新的 指令 则将关闭屏幕背光 2 1 1 2 信息查看功能 信息查看功能是系统将当前的运行状态通过lcd的驱动程序的解析 向 lcd设备发送显示图像的指令 lcd设备在接收到指令以后 访问图标的资源 库 然后将相应的图标显示到lcd屏上 供用户查看 其业务流程如图2 3所示 哈尔滨工业大学工程硕士学位论文 13 返回点阵 请求图标 数据传输 图 2 3 信息查看功能的业务流程图 2 1 1 3 节目选择功能 节目选择功能可以实现用户对音频播放方式的选择 业务流程见图2 4所 示 列表返回 数据请求 列表传送 图 2 4 节目选择功能的业务流程图 通过该功能用户可以选择收取网络的音频源也可以选择收听本地的音频 源 对于选择了网络方式 又可以分为以太网和wifi网络两种方式的连接 在 选择了相应的网络后 首先系统将向节目管理服务器进行连接尝试 然后从服 务器上获取节目列表 在用户选择了节目以后 就可以进入音频的播放控制功 能 若选择了本地方式的 将进行usb设备的搜寻和加载 然后读取设备的文 件列表并返回给用户 2 1 1 4 播放控制功能 用户利用播放控制功能实现对播放系统的播放控制 当用户选择了相应的 节目后 便可使用播放控制功能 播放系统首先将获得的url传送给系统的音 频播放进程 然后就行网络连接 当系统和网络音频服务器建立对话后 就可 哈尔滨工业大学工程硕士学位论文 14 以不断的接收由网络音频服务器所传送的流媒体音频数据 同时 用户可以根 据自己的控制需要 对播放系统进行快进 暂停等操作 该功能的业务流程如 下图2 5所示 音频地址 图 2 5 播放控制功能的业务流程图 2 1 2 系统的接口分析 根据用户的需求 系统的用户接口应具有以下功能 具体见图2 6 图 2 6 系统的外围接口分析图 1 电源接口 该接口连接220v的交流电 并进行电压的转换 供给到系 统 保证系统的正常运行 2 usb接口 支持usb设备的使用 可以利用usb接口进行u盘的连接同 时可以利用该接口进行wifi网卡的添加 扩展系统的互联网接入方式 3 以太网接口 通过该接口连接网线 实现系统的互联网连接 4 按键接口 通过该接口 连接按键 实现用户利用面板上的控制按键 进行系统的控制操作 5 红外接口 该接口提供红外遥控的连接 用户通过使用遥控 能更加 哈尔滨工业大学工程硕士学位论文 15 方便的进行系统操控 同时可以简化系统面板按键的设计 6 音频接口 当系统将获得的音频并进行解码后 将音频进行输出 该 接口用以和音频输出设备连接 如耳机或者功放 实现音频的对外播放 8 显示接口 用户需要时刻了解系统的当前运行状态 通过该接口所连 接的lcd屏幕 用户可以得到实时的信息 并利用信息进行系统的操控 2 1 3 系统的性能分析 系统要具有网络连接功能 并且能够对主流的流媒体音频进行解码和播放 同时要能够和用户进行交互 因此系统的性能需求分析如表2 1所示 表 2 1 系统的性能需求表 项目 指标 网络连接方式 以太网络 wifi 网络 wifi 加密方式支援 64 128bit wep wpa wpa2 资料传输速率 以太网 10m 100mbits wifi 最高 54mbits 音频源传输协议 mms rtsp http 支持的音频格式 mp3 wma rm mov 输入电压 110v 220v 屏幕最高分辨率 128 64 屏幕显示语言 英语 码流 16kbps 320kbps 频率响应 20hz 20khz 采样率 22khz 32khz 44khz 信噪比 90db 2 2 系统关键技术 2 2 1 基于 linux 的嵌入式软件开发技术 在嵌入式系统的开发中 嵌入式软件是实现各种系统功能的关键 而嵌入 式操作系统则是嵌入式系统的灵魂 它的出现大大提高了嵌入式系统开发的效 率 并且有利于软件的可移植性 目前 流行的商用嵌入式操作系统主要有 windows ce vxworks psos qnx pa1mox os 9 lynxos等 这些专用 操作系统均属于商业化产品 价格昂贵 而且由于它们各自的源代码不公开 哈尔滨工业大学工程硕士学位论文 16 使得每个系统的应用软件与其它系统的交互存在很大的问题 使得对它们的软 件移植变得很困难 linux的出现打破了这一局面 它具有 免费获取与自由发 布 稳定性和安全性 良好的硬件支持特性 资源丰富 标准兼容性以及强大 的网络同能等优点 因此本系统的开发所利用的就是基于linux的嵌入式软件开发技术 嵌入式 系统的开发一般采用的办法是先在通用计算机上编写程序 然后 通过交叉编 译 生成目标平台上可运行的二进制代码格式 最后下载到目标平台上的特定 位置上运行 本系统的具体开发步骤如下 1 建立嵌入式linux交叉开发环境 交叉开发环境是指编译 链接和调试 嵌入式应用软件的环境 本系统所使用的是gnu工具链 采用开发主机 目标板 的开发模式 其中的主机就是常用的pc 嵌入式实时开发环境就运行在主机上 主机的操作系统是window系统 并且使用虚拟机进行linux系统环境的安装 目标板就是嵌入式应用系统 它运行嵌入式实时操作系统 和开发主机通过串 行口的方式通信 并下载运行在主机中编译好的代码 2 交叉编译和链接 在完成嵌入式软件的编码之后 就进行编译和链接 以生成可执行代码 本系统采用的编译器是gcc3 4 2 开发者将代码经过gcc编 译后 就会生成两种类型的可执行文件 用于调试的可执行文件和用于固化的 可执行文件 3 交叉调试 本系统采用的是远程调试方法 在系统的开发主机上进行 代码的调试 然后将生成的可执行文件拷贝至目标板上 进行交叉调试 4 系统测试 将所调试好的程序固化到开发板上 然后进行各项测试 2 2 2 基于 sax 的 xml 解析算法 当进行网络播放的时候 本系统需要节目管理服务器的实时的节目列表支 持 因此系统与服务器之间必须建立稳定的信息传输机制 本项目中所设计的 是基于xml的信息传输机制 对于本系统来讲 关键问题之一是对xml文件的 解析 本系统采用的是基于sax的xml解析算法 sax是一个用于处理xml事件 驱动的 推 模型 虽然它不是w3c标准 但它却是一个得到了广泛认可的api sax是基于事件驱动的 它很类似于标签库的处理机制 在标签开始 标签结 束以及错误发生等地方调用相应的接口实现方法 它是一种轻量型的方法 对 于一个普通的xml文档如下所示 哈尔滨工业大学工程硕士学位论文 17 designing xml databases 49 可以将其的读入分解为如下图2 7所示的过程 图 2 7 基于 sax 的 xml 解析过程图 sax的核心基于2个接口 xmlreader接口是标签的分析器 contenthander 接口则从分析器接收数据 xmlreader读取文档时 调用contenthander中的方 法 包括 startelement endelement 和characters的读取函数 当xmlreader 首先进行startdocument 然后当读到标签时 就会调用contenthandler 的startelement 方法 并把标签名books作为参数传递过去 并实现的 startelement 方法中需要做相应的动作 从而处理当出现时应该做 的事情 随着文档的顺序读入 各个事件也随着解析的过程一个个顺序的被抛 出 相应的方法也会被顺序的调用 最后 当解析完成 方法都被调用后 对 文档的处理也就完成了 哈尔滨工业大学工程硕士学位论文 18 2 2 3 基于流媒体的缓冲控制策略 2 2 3 1 参数测算 1 平均速率 流媒体传输和播放时 速率并不是恒定的而是会随节目源 的变化而变化 另外 网络的不稳定性也一定程度导致速率的波动 因此对流 媒体的接收端合理地估计接收数据包的速率可以对缓冲控制起到重要作用 通 过记录一定时间t内接收到的数据包的个数n及其大小b 就可以计算出媒体流的 平均速率 具体的算法间公式2 1 tbx n 1i inew 2 1 为了平滑网络传输过程中的抖动 采用滑动加权平均法来平滑媒体流的平 均速率 见公式2 2 式中 是加权系数 xlast是上次的平均速率 xnew是当 前采样的平均速率 newlastmean xx 1 x 0 1 2 2 2 时延抖动 延时抖动是指数据包从发送方到接收方之间延时的变化量 用时间测量结果表示 延时抖动有多种定义 这里采用的定义是 在一次采样周 期之内 最大延时采样值与最小延时采样值之差 即公式2 3那样计算 发送端 和接收端的时钟是很难严格同步的 假定它们走时准确 那么两个时钟的差值 永远是相同的 记为 t 当接收端收到数据包时 记录当前时钟tcurr 并读取 数据包中时间戳的时间ts 则该数据包的传输时延为公式2 4那样计算 虽然 t是未知的 但是计算延时抖动时 由公式2 5计算 显然在计算过程中 t将被 抵消 minmax tttjitter 2 3 tsttt currdelay 2 4 1 ntntt delaydelayjitter 2 5 3 丢包率的估算 由于互联网目前不可避免地会出现拥塞和丢包的情况 合理地对丢包率进行估算是必不可少的 一个合理的丢包率估算值不但可以反 馈给多媒体服务器作为流控和拥塞控制的重要参数 而且还可以对缓冲区的控 制起到重要的作用 本项目使用平均丢失间隔来估算丢包率 丢失间隔是指两 次丢包事件之间的数据包个数 设平均丢失间隔为nmean 则丢包率的计算方式 见公式2 6 哈尔滨工业大学工程硕士学位论文 19 1 1ploss mean n 2 6 对于平均丢失间隔nmean的计算 不同时段的丢失间隔值对计算平均丢失间 隔的作用是不一样的 为了避免计算出的丢包率有较大的波动 可以采用公式 2 7的方法来平滑平均丢失间隔 其中最近n次的丢失间隔为ni 对应的权值为 i n i ii n i11 imean nn 2 7
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025华夏银行社会招聘考前自测高频考点模拟试题附答案详解
- 2025江苏张家港市万通建设工程有限公司招聘2人考前自测高频考点模拟试题完整参考答案详解
- 2025年东营市垦利区融媒体中心公开招聘工作人员模拟试卷完整答案详解
- 2025年中国挤出复合底漆行业市场分析及投资价值评估前景预测报告
- 2025贵州警察学院第十三届贵州人才博览会引才4人考前自测高频考点模拟试题及参考答案详解1套
- 2025年中国环氧修复墨盒行业市场分析及投资价值评估前景预测报告
- 2025河北邯郸市丛台区选聘农村党务(村务)工作者42人考前自测高频考点模拟试题及一套参考答案详解
- 2025年甘肃省陇南市人才引进392人高校宣介活动(第一批)考前自测高频考点模拟试题及答案详解(全优)
- 2025湖南湘潭市雨湖区招聘教师80人模拟试卷附答案详解
- 2025年河北唐山市消防救援支队政府专职消防队员招聘113人考前自测高频考点模拟试题及答案详解(新)
- 脑卒中溶栓治疗的注意事项
- 2024年高等教育文学类自考-00504艺术概论考试近5年真题附答案
- 课件:《中华民族共同体概论》第十五讲:新时代与中华民族共同体建设
- 物业进场方案
- 物理原理在土木工程中的教学设计方案
- 网络安全意识培训
- 中医内科学:疾病辨证与中药治疗
- 滇西三部曲:松山战役笔记
- 保险学(第五版)课件 附章:社会保险
- GB 5009.12-2023食品安全国家标准食品中铅的测定
- 年度人才盘点报告1
评论
0/150
提交评论