嵌入式智能音乐播放系统的设计与实现

2017-09-18 08:54苗静杨帆潘国峰
声学技术 2017年4期
关键词:机顶盒内存远程

苗静,杨帆,潘国峰



嵌入式智能音乐播放系统的设计与实现

苗静,杨帆,潘国峰

(河北工业大学电子信息工程学院,天津300401)

针对目前音乐播放系统的空间和时间受限问题,设计并实现了一种基于移动端的智能音乐播放系统。该系统由移动端软件APP和服务端两部分构成,服务端包括路由器、智能网络机顶盒和音响设备,具备定时播放和移动端实时控制播放的功能。该系统是采用基于STUN(Simple Traversal of User Datagram Protocol over NATs)的网络地址转换(Network Address Translation,NAT)穿透方式的远程控制以及家庭电视网络机顶盒来实现的。它不仅可以实现家庭音响的定时播放,还能通过移动端来远程控制音乐的播放。此外,可以实现歌曲的远程更新和歌曲播放时间的随意控制及更改。实验结果表明,该系统效果良好,具有广阔的应用前景及商业价值,可应用于家庭、商场、学校等有特定需求的环境。文章以家庭音乐播放系统为例进行设计说明。

智能家居;音乐播放系统;网络机顶盒;协议

0 引言

21世纪随着智能化的发展和普及,智能家居[1]已成为当今互联网研究的热点,也是未来互联网发展的趋势。智能家居包括多个方面:智能照明、数字家电、智能装修和智能音乐。随着人们生活水平的不断提高,人们不仅仅满足于在公共场所聆听美妙的音乐,而且将音乐从日常生活的点缀变成了生活的必须。

目前厂商着重追求音质,但并未对整体的家庭音乐播放系统给出优越的设计方案,忽略了对音响设备网络功能的开发,使用户只能面对面地操作控制音响设备,体验受到极大限制。

因此利用互联网实现家庭音乐播放系统的智能化和便捷化管理及应用,是当前智能家庭音乐播放系统[2-4]发展的重点。

针对上述问题,设计了一种基于Android移动端的智能音乐播放系统。本文是在家庭网络机顶盒[5-6]的基础上,利用网络和移动设备构建个性化的家庭音乐播放系统。用户可根据自身需求设计音乐播放系统,实现歌曲的定时播放、远程更新、实时控制等功能。该系统结构简单、操作方便、性能优越。

1 系统设计

嵌入式智能音乐播放系统的设计思想是利用家庭网络机顶盒和音响设备构建家庭音乐播放系统,通过移动端软件APP来实现系统的管理和歌曲的远程更新,家电连接示意图如图1所示。该系统分为两部分,第一部分包括路由器、网络机顶盒和音响设备;第二部分包括移动端软件APP。移动端软件APP和服务器通过网络进行通信。

本系统采用NAT(Network Address Translation)穿透技术及STUN(Simple Traversal of UDP over NATs)协议[7]进行传输控制协议(Transmission Control Protocol,TCP)打洞技术[8-9],实现移动端和服务器的远程连接。对华为海思Hi 3716MV400 Android机顶盒进行二次开发并作为服务端来构建智能音乐播放系统。移动端采用基于TCP协议的FTP协议实现歌曲库的远程更新,确保了文件传输的安全性和可靠性。

本文采用SQ Lite数据库,它是一个开源免费、轻型、跨平台的数据库,是一个遵守ACID (AtomicityConsistencyIsolationDurability)的关系型数据库管理系统。SQ Lite数据库因其独立性、速度快、零配置、元处理、开放性、占用资源少等优点而普遍应用于小型服务器中。SQ Lite数据库支持多种主流的操作系统,同时支持多种语言的编程接口,可以灵活地为用户提供服务。

音乐播放系统的功能包括:(1) 网络连接——实现移动端和服务器的远程连接;(2) 播放——实现歌曲的播放、停止、暂停、切换等功能;(3) 更新——实现服务器数据的库更新;(4) 控制——实现歌曲播放时长、次数等设置。功能模块如图2所示。

2 硬件系统设计

本系统硬件部分采用江苏银河电子股份有限公司的HDC6910 51型号机顶盒。该机顶盒采用的是Android系统,内置Hi3716M主芯片。该芯片采用ARM公司的CortexA9架构的处理器,内置NEON,强大的多通道高保真音频处理,增强了用户的体验,集成高性能的加速引擎使得用户在使用时能体验到更加流畅的运行界面,内置丰富的外围接口功能,能够提供灵活的连接方案,为了满足多媒体播放的要求,提供音频输入输出接口。

音频编码器采用 PCM 1808,是一款高性能、低成本、单芯片、立体声模数转换器,支持单端模拟电压输入。PCM 1808采用 delta-sigma调制器以64倍过采样,并包括一个数字抽取滤波器和高通滤波器,可以消除输入信号的直流成分。智能音量控制可实现不同频道间音量自动均衡,实现操作的智能化和人工化。主芯片与外围功能的联接示意图如图3所示。图4所示为机顶盒内底板上主芯片及外围硬件示意图。

3 软件系统设计

软件系统由三部分组成:(1) 远程连接;(2) 服务端;(3) 移动端。

3.1 远程连接

服务器和移动端分别向阿里云服务器发送连接请求,获取阿里云服务器服务端和移动端的外网IP地址。

移动端为A,家庭网络机顶盒为B,A向STUN服务器表明要与B连接的意图,STUN服务器把A的连接意图告诉B,并且将A的地址告诉B。B向A发起TCP连接,这个连接被A的NAT丢弃,此时B处路由器记录了A的外网IP地址,以后A发过来的数据就能很好地通过B的NAT,同时B对本地地址端口进行监听,完成第一次打洞操作。

STUN服务器把B的地址告诉A,通知A向B发起TCP连接,完成第二次打洞。由于B的NAT已经记录了A的外网IP地址,所以A可以穿过防火墙与B建立TCP连接。TCP穿透NAT流程图如图5所示。

3.2 服务端

服务端由数据库操作模块、用户数据包协议(User Datagram Protocol,UDP)指令接受模块、命令解析模块三部分组成。

(1) 数据库操作模块:获取数据库时间和当前时间并进行比较,根据判断获取歌曲路径并进行歌曲播放。

(2) UDP指令接受模块:建立UDP Socket,设置服务端的IP地址及Port,对端口进行复用并绑定自身的IP地址及Port,开启监听模式。

(3) 命令解析模块:把接受到的命令数据分为两个部分,第一部分为命令标志位,第二部分用于存命令参数。判断第一部分内容是否为switch,若“是”则根据指令进行相应的操作,若“不是”则返回到监听模式,等待接受指令。程序整体流程如图6所示。

3.3 移动端

移动端软件APP默认显示当前歌曲播放列表,屏幕左划出现菜单栏如图7所示,包括网络连接、歌曲更新、定时配置三部分。

3.3.1 菜单

(1) 网络连接的功能是利用基于STUN协议的TCP穿透技术,实现外网访问内网,从而实现移动端与家庭网络机顶盒的互联互通。

(2) 歌曲更新采用的是文件传输协议(File Transfer Protocol,FTP)[10]实现歌曲文件上传,FTP是使用最为普遍的网络协议之一,由最早的简单文件传输协议(Trivial File Transfer Protocol,TFTP)发展而来。经过不断的修正与完善,已成为网络间文件传输的重要协议。

FTP是基于TCP协议的服务器和客户端间的文件传输协议,包括控制连接和数据连接。控制连接用于传输控制,数据连接用于数据传输。服务器启动后,会监听端口21,当监听到客户端连接请求时,客户端与服务器在默认的端口21建立一个控制连接,用来传送客户端的命令和服务器的应答,该连接一直保持到客户端与服务器的通信结束为止。当客户端发出数据传输命令时,服务器会主动与客户端建立数据连接,并进行数据交换。

(3) 定时配置是用来设置歌曲定时播放的时间以及需要播放的歌曲。通过更新服务器数据库表list的内容实现歌曲定时播放的设置。

3.3.2 歌曲播放

歌曲播放activity如图8所示,屏幕底部显示当前播放歌曲,可以实现歌曲的暂停、播放及下一曲功能。屏幕中间显示歌曲列表,通过访问数据库的music_list表获取歌曲目录,并通过activity组件来显示歌曲列表,可通过手动划动选择要播放的歌曲,实现歌曲切换。当用户选中要播放歌曲时,activity发送指令“switch play×××. mp3”给网络机顶盒,网络机顶盒接受到指令后播放选定歌曲。

4 实验结果及分析

4.1 实验结果

该嵌入式智能音乐播放系统经试用具有良好的用户体验和稳定的性能。以下是对歌曲播放和远程更新的测试结果:

(1) 歌曲播放,获取表music_list表和表list,如图9所示。

(2) 远程更新,添加歌曲功能,如图10所示。

4.2 实验分析

本系统分别从内存占用、传输可靠性、传输实时性这三个方面对智能音乐播放系统的性能进行测试。

4.2.1 内存占用

该测试结果基于5.0 in分辨率为1 280×720,像素密度为294 PPI的手机设备。本系统运行一段时间,就对内存占用状况进行分析并与常见的音乐播放器的内存占用状况进行对比,实验测试结果如表1所示(数据单位为MB)。

表1中的第二列表示在音乐播放过程中占用的内存最大值,第三列表示播放过程中占用的内存最小值,第四列表示播放过程中出现频率最高的稳定占用量,第五列表示播放过程中占用内存的总和。

通过表1数据可以看出,在内存占用指标上,本文提出的音乐播放器内存稳定占用量最小,意味着运行速度最快,系统最稳定。经过实验验证,利用本文提出的嵌入式智能音乐播放系统更加稳定、便捷、高效。

表1 内存占用(MB)

4.2.2 传输可靠性

FTP建立在传输层TCP协议之上,TCP是面向连接的协议,负责保证数据的传输。TCP采用校验、确认接收和超时重传等一系列措施提供可靠的传输。

本实验通过移动端向服务器上传不同大小的数据包,分析网络丢包率[11]。表2记录了在传输过程中截取10次的丢包情况。通过表2的数据可知采用FTP协议进行文件传输安全可靠。

4.2.3 传输实时性

传输实时性是指数据的发送端与接收端的同步性。本实验是通过对本系统的远程无线网络和4G移动网络下的网络时延来测试数据传输实时性。

表2 丢包率

本实验记录了40次抓包的情况,如图11所示,蓝线为本系统远程无线网络下的相对时延差值,红线为4G移动网络下的相对时延差值。远程无线网络下的相对时延差值最大值为2.159 ms,最小值为-1.825 ms,平均值为0.234 ms,而4G移动网络下相对时延差值最大值为24.375 ms,最小值为-10.289 ms,平均值为5.392 ms。

时延差值的增大导致声音的质量大幅度降低,由图可见远程无线网络比4G网络延时小,数据传输的实时性更高一些,为歌曲播放提供了良好的用户体验。

5 结论

本文针对智能生活中的智能音乐系统提出一种设计方案。通过移动端来实现对家庭、商场、学校等特定场所的音乐播放系统的管理和维护,以解决传统方式上的时间和空间限制等问题,并给出了完整的解决方案。

本文设计了嵌入式智能音乐播放系统,包括网络连接、歌曲播放、远程更新三部分。该系统在现有一般家庭的多媒体资源的基础上,借助手机、平板、手提电脑等移动设备普及的优势,实现了音乐播放系统的移动端管理及维护。因此,嵌入式智能音乐播放系统具有很好的发展前景。

[1] 朱敏玲. 智能家居发展现状及未来浅析[J]. 电视技术, 2015, 39(4): 82-85.ZHU Minling. State of art and trend of smart home in china[J]. Video Engineering, 2015, 39(4): 82-85.

[2] 莫太平, 胡俊波, 赵佩斯. 基于Android的智能家居系统的设计与实现[J]. 自动化与仪表, 2015, 30(1): 33-36.MO Taiping, HU Junbo, ZHAO Peisi. Remote control system based on Android intelligent terminal[J]. Automation & Instrumentation, 2015, 30(1): 33-36.

[3] 江燕良. 基于Android智能终端的远程控制系统[J]. 电子技术应用, 2012, 38(8): 129-132.JIANG Yanliang. Remote control system based on Android intelligent terminal[J]. Application of Electronic Technique, 2012, 38(8): 129-132.

[4] Song M, Sun J, Fu X, et al. Design and implementation of media player based on android[C]//International Conference on Wireless Communications NETWORKING and Mobile Computing. IEEE, 2010: 1-4.

[5] 高志寅, 高志平. 双模智能机顶盒的关键技术研究[J]. 电视技术, 2012, 36(22): 27-28.GAO Zhiyin, GAO Zhiping. Key technologies of dual mode Android STB development[J]. Video Engineering, 2012, 36(22): 27-28.

[6] 毛泽杰, 吴蔚华. Android智能机顶盒的安全分析与研究[J]. 电视技术, 2016, 40(3): 79-82.MAO Zejie, WU Weihua. Security analysis and research of Android smart set-top box[J]. Video Engineering, 2016, 40(3): 79-82.

[7] 康争光, 龙昭华. SIP UA与STUN CLIENT互通的新方案[J]. 计算机工程与设计, 2011, 32(5): 1535-1538.KANG Zhengguang, LONG Zhaohua. Scheme to mutual- communication between SIP UA and STUN CLIENT[J]. Computer Engineering & Design, 2011, 32(5): 1535-1538.

[8] 缪一心, 吕智慧, 杨明, 等. 基于TCP的P2P 点播系统NAT穿越设计[J]. 计算机应用与软件, 2010, 27(12): 61-63.MIAO Yixin, LV Zhihui, YANG Ming, et al. Designing nat traversal for tcp-based p2p video-on-demanding system[J]. Computer Applications & Software, 2010, 27(12): 61-63.

[9] 贾学锋, 荆一楠, 王雪平, 等. 基于TCP协议的NAT穿透技术在P2P中的研究与实现[J]. 计算机应用与软件, 2008, 25(6): 186-187.JIA Xuefeng, JING Yi’nan, WANG Xueping, et al. Study and realization of tcp-based nat traversal technology in p2p[J].Computer Applications & Software, 2008, 25(6): 186-187.

[10] 赵艳, 张玮, 邓卫华. 利用FTP实现文件网络传输[J]. 电脑编程技巧与维护, 2009, 39(10): 105-106.ZHAO Yan, ZHANG Wei, DENG Weihua. Implementation of transfer files in network based on FTP[J]. Computer Programming Skills & Maintenance, 2009, 39(10): 105-106.

[11] 徐伟, 许胤龙, 林晓斌, 等. TCP在数据包随机延迟网络中的性能分析[J]. 中国科学技术大学学报, 2012, 42(2): 133-139.XU Wei, XU Yinlong, LIN Xiaobin, et al. Analysis of TCP performance in packet random delay networks[J]. Journal of University of Science & Technology of China, 2012, 42(2): 133-139.

Design and implementation of embedded intelligent music player system

MIAO Jing,YANG Fan, PAN Guo-feng

(Hebei University of Technology School of Electronics and Information Engineering, Tianjin 300401, China)

A mobile terminal based intelligent music player system is designed to solve the space and time limited problem. The system consists of two parts: the mobile terminal software APP and the server that includes a router, an intelligent network set-top box and audio equipment with timed playback and mobile real-time control playback function. The system is implemented by using STUN based NAT traversal way remote control and home TV network set-top box. This can not onlyachieve timed play of home audio, but also can control the music play through remote mobile terminal. In addition, the song’s remote update can be realized and the playback time can be controlled and changed freely. Experimental results show that the system works well, and has broad application prospects and commercial value. This paper takes the family music player system as an example to illustrate the design.

intelligent home; music player system; Internet Protocol Television (IPTV) set-top box; STUN

TP915.09

A

1000-3630(2017)-04-0357-06

10.16300/j.cnki.1000-3630.2017.04.011

2016-10-02;

2016-12-13

国家科技重大专项资助项目(2009ZX02308-004)

苗静(1990-), 女, 河北沧州人, 硕士研究生。研究方向为智能信息处理。

杨帆, E-mail: yangfan@hebut.edu.cn

猜你喜欢
机顶盒内存远程
让人胆寒的“远程杀手”:弹道导弹
远程工作狂综合征
机顶盒上别盖布
安全使用机顶盒注意五点
“春夏秋冬”的内存
远程诈骗
有线电视高清数字电视机顶盒测试系统的构建
内存搭配DDR4、DDR3L还是DDR3?
What is Apple Watch All About?
基于内存的地理信息访问技术