APP下载

基于安卓系统的模拟智能机顶盒的设计与实现

2015-05-05户珊珊寇志强潘国峰

电视技术 2015年1期
关键词:机顶盒频点播放器

户珊珊,杨 帆,华 中,寇志强,潘国峰

( 1. 河北工业大学 信息工程学院,天津 300401;2. 天津铂创国茂电子科技发展有限公司,天津 300384 )

基于安卓系统的模拟智能机顶盒的设计与实现

户珊珊1,杨 帆1,华 中2,寇志强2,潘国峰1

( 1. 河北工业大学 信息工程学院,天津 300401;2. 天津铂创国茂电子科技发展有限公司,天津 300384 )

为了解决数字广播电视收费的设定,给一些酒店、旅馆等多房间大型场所带来的成本提升问题,设计并实现了智能模拟机顶盒,该机顶盒硬件层次上对HI3716C平台进行了扩展,软件层次上用安卓自带组件播放模拟信号,实现了NDK环境搭建以及上层应用(JAVA)与底层(C语言)的无缝衔接。实验结果表明,该产品效果良好,具有广阔的应用前景及商业价值,可广泛地应用在各种多房间大型场所。

智能机顶盒;安卓;模拟信号;系统移植

机顶盒(Set Top Box, STB)是广播媒介实现数字化后用于接收端的重要设备[1],它搭载了智能操作系统,相当于一台简化的电脑主机,接入电视显示器之后,电视机就可以实现网页浏览、视频电影观看、聊天办公、购物游戏等功能。

随着Android系统的迅猛发展,目前机顶盒搭载Android已成最常规的配置[2],小米、乐视、阿里等大型电商都推出了自己的Android智能机顶盒,同时,由于Android系统的巨大优势,机顶盒有了良好的用户体验。

但是,由于数字广播电视收费的设定,每个机顶盒需要特定的智能卡才能收看数字电视,这就给一些大型酒店、旅馆等多房间的场所带来巨大的成本压力。虽然机顶盒也可以通过网络收看网络电视,但由于网络速度的原因,节目会出现卡顿和清晰度不高的问题。本文设计并实现了智能模拟机顶盒,使得机顶盒不仅具备正常网页浏览、视频电影观看、聊天办公、购物游戏等功能,还可以接收传统的模拟电视,降低酒店等大型场所的成本,应用前景非常广阔。

1 系统设计

1.1 系统结构设计

智能模拟机顶盒主要由电源模块、数据接收模块、数据编码模块、指令接收模块、控制处理模块和显示模块组成[3],系统结构如图1所示。

图1 系统结构组成图

其中,数据接收模块主要完成模拟信号的接收,并分离出音频数据和视频数据;数据编码模块主要完成音频数据和视频数据的编码,编码为处理器可以处理的数字音频格式和数字视频格式;指令接收模块主要完成指令的接收和上传,控制处理器做出相应的操作;显示模块完成视频和音频播放;控制处理模块为系统的核心,完成数字音频和数字视频数据的处理和转换、指令控制、音视频数据的传输和控制显示。

1.2 功能设计

本文设计并实现了模拟播放器客户端[4],由于智能机顶盒搭载Android系统,机顶盒有了良好的用户体验,使用户可以可视化地完成传统电视不能完成的操作,这也是本产品在功能上的优势。

机顶盒可视化功能包括:1)运行状态控制功能,即实现正常运行、待机控制和关机功能。2)节目搜索功能,即实现自动搜索功能、手动搜索功能和全频段搜索功能。3)节目管理功能,包括节目的编辑以及节目属性的设定。4)参数调整功能,即对机顶盒选单的透明度、图像显示的亮度、对比度以及色度进行调整。5)节目播放功能,主要实现音视频服务的播放和停止功能。

1.3 硬件系统设计

本产品在硬件层次上对HI3716C平台[5]进行扩展,图2所示为硬件框图。

图2 产品硬件系统框图

产品核心芯片为HI3716C,可应用于机顶盒,也可应用于高清多媒体播放、可视通信和家庭娱乐。芯片采用ARM公司的Cortex A9处理器,内置丰富的外围接口功能,能够提供灵活的连接方案,满足多媒体播放的要求。提供音频和视频的输入输出接口。

Tuner采用ZG-9885W芯片,内部包括低噪声前置放大器、混频器、振荡器、锁相环等。射频电视信号进入调谐器的高频放大器进行放大,其增益由AGC电路自动控制,再由跟踪滤波器将镜像信号去除,利用混频器和本地振荡器混出中频信号,最后经由中频滤波器滤除杂波、输出2路中频信号,完成调谐器的功能。

视频编码器采用tvp5150A,是一款超低功耗、支持NTSC/PAL/SECAM等格式的高性能视频解码器。它可以接收2路复合视频信号(CVBS)或1路S2Video信号。通过I2C总线设置内部寄存器,可以输出8位4∶2∶2的ITU2RBT.656信号(同步信号内嵌),以及8位4∶2∶2的ITU2RBT.601信号(同步信号分离,单独引脚输出)。

音频编码器采用pcm1808,是一款高性能、低成本、单芯片、立体声模数转换器,支持单端模拟电压输入。PCM1808采用delta-sigma调制器以64倍过采样,并包括一个数字抽取滤波器和高通滤波器,可以消除输入信号的直流成分。

1.4 软件系统设计

软件层次上通过分析Android的OS,运用遥控器驱动框架[6]和MediaPlayer播放器[7-9]完成模拟播放器的功能,软件主要为信号的播放、换台、搜索和参数调节等功能。如图3所示为软件总体框图,从应用层、框架层、系统运营层和驱动层进行分析。

开启机顶盒后,进入模拟播放器应用,播放器会从本地文件中读取上次退出播放器时播放的频点,调谐器会锁存该频点,从该频点读取视频和音频数据,视频和音频编码器会对数据进行编码,并将数据送入处理器,处理器会完成对Snd,Disp,VO,AVPLAY初始化,并开启两个线程,分别将数字音频和数字视频放入相应的缓冲区,然后海思自带的播放库函数完成音视频的播放。

当用户按下OK键或上下键时,可以选择播放特定的电视节目,此时,调谐器会锁存相应的频点,并将数据送入处理器,完成播放。

当用户按下F4键后,出现系统管理界面,当选择频道搜索时,调谐器会从起始频点处开始进行锁频,检测该频点有没有相应的音视频信息,如果有,将该频点写入相应的数据库,保存频点。

图3 软件系统框图

2 Android系统移植

本系统采用海思提供的Android系统开发包,将本系统代码移植到Android开发包并对相关方法进行改写,并重新编译[10]。模拟信号播放器主要用到VideoView控件的VideoView.setVideoURI、VideoView.start、VideoView.seekTo方法,其中VideoView.setVideoURI设置数据源;VideoView.start准备播放,设置播放的surface、声音等参数;VideoView.seekTo设置换台参数。以上方法主要依赖libmedia_jni.so、libmedia.so、libmediaplayerservice.so 和调谐器驱动等库函数。

2.1 源码准备

将名为APP_AnalogTunerPlay文件夹放于Android SDK源代码目录下的:Hidevicehisilicon godbox driversdksample目录下。

将名为6EPNF_1.c、6EPNF_1.h、hi_adp_mpi.c、hi_adp_mpi.h 文件放于Android SDK源代码目录下的Hidevicehisilicongodboxdriversdksamplecommon目录下。

将名为YH_AT_MediaPlayer.h、YH_AT_MediaPlayer.cpp、MediaPlayerService.cpp、Android.mk放于Android SDK源代码目录下的Hiframeworksasemedialibmediaplayerservice下。

将名为tvp5150.c文件放于Android SDK 源代码目录下的:Hidevicehisilicongodboxdriver sdkmspecsdrv vp5150下。

2.2 库文件编译

进入到Hidevicehisilicongodboxdriversdksample目录下,执行mm命令,可以编译生成APP_AnalogTunerPlay库。

进入到Hidevicehisilicongodboxdriversdksamplecommon目录中下,运行mm命令,可以编译生成libsample_common.so库文件。

进入Hiframeworksasemedialibmediaplayerservice目录下,执行mm命令,可以编译生成libmediaplayerservice.so库文件。

进入Hidevice hisilicon godbox driversdk目录下,运行make -f mpi.mk,可以生成hi_tvp5150.ko库文件。

最后将这些库文件分别放入系统相应的文件夹,运行系统应用,完成播放器的运行。

3 产品演示及性能测试

由于Android系统的优势,本产品具有良好的用户体验,可视化程度很高;相比普通模拟电视,本产品的清晰度更高。图4所示仿真图展示了节目播放画面及系统参加调解界面。

图4 产品演示图(截图)

4 结束语

随着Android系统推广普及,Android系统将彻底改变传统收视习惯,Android机顶盒将会进一步发展,但由于模拟信号具备免费这一优势,短期内也不会消亡,因此搭载Android系统的智能模拟机顶盒也将有广阔的应用空间。本文设计的Android智能机顶盒,使得机顶盒不仅具备正常网页浏览、视频电影观看、聊天办公、购物游戏等功能,还可以接收传统的模拟电视,降低酒店等大型场所的成本,应用前景非常广阔。

[1]魏冲,李智浩,于华. 浅淡Android系统机顶盒的前景[J].有线电视技术,2012(3):97-99.

[2]双模智能机顶盒的关键技术研究[J].电视技术,2012,36(22):39-41.

[3]高峰,毕经平,郭景峰,等.汽车状态感知系统的Android 客户端[J].清华大学学报:自然科学版,2011(S1):1393-1396.

[4]陈颖琪,冯亚林,余松煜.数字电视机顶盒设计及其向交互式方向的发展[J].上海交通大学学报,2000(2):286-290.

[5]LIU L ,ZHANG Y, SHEN H, et al. Improved method of computer keyboard driver based on embedded linux[C]//Proc. 2012 9th International Conference on Fuzzy Systems and Knowledge Discovery(FSKD). Chengdu:IEEE Press,2012:2482-2486.

[6]ZHAO Xueliang,TIAN Dan. The architecture design of streaming media app lications for Android OS[C] //Proc. 2012 IEEE 3rd International Conference on Software Engineering and Service Science. Beijing:IEEE Press,2012:280-283.

[7]SONG Maoqiang,XIONG Wenkuo,FU Xiangling. Research on architecture of multimedia and its design based on Android[C]//Proc. 2010 International Conference on Internet Technology and Applications. Wuhan:IEEE Press,2010:1-4.

[8]SONG Maoqiang,SUN Jie,FU Xiangling. Design and implementaion of media player based on Android[C]//Proc. 2010 6th International Conference on Wireless Communications Networking and Mobile Computing. Chengdu:IEEE Press,2010:1-4.

[9]郭利全,谢维波. i.MX51平台的Android系统移植[J].华侨大学学报:自然科学版,2013(3):286-291.

[10]胡安,任平安,李文莉. 基于Android系统的FFmpeg 多媒体同步传输算法研究[J].计算机技术与发展,2011,21(10):85-87.

Design and Implementation of Intelligent Simulation of STB Based on Android System

HU Shanshan1,YANG Fan1,HUA Zhong2,KOU Zhiqiang2,PAN Guofeng1

(1.CollegeofInformationEngineering,HebeiUniversityofTechnology,Tianjin300401,China; 2.TianjinBotroElectronicalTech.Co.,Ltd.,Tianjin300384,China)

In order to solve the problem that the digital broadcasting television installations always charge too much for the multi-room venues such as hotels and inns, an intelligent simulation of STB is designed and implemented. From the hardware level, the HI3716C platform is expanded, and from the software level, analog signal with Android built-in components is utilized. The construction of the NDK environment of the Android system and the seamless connection between the top layer application(JAVA) and the bottom layer(C programming language) are also realized. The experiment results indicate that the product performance is quite satisfying. The broad application prospects and commercial value can be predicted in big multi-room sites.

intelligent set-top boxes;Android;Analog signal;system migration

国家科技重大专项课题项目(2009ZX02308-004)

TN27

A

10.16280/j.videoe.2015.01.008

2014-05-08

【本文献信息】户珊珊,杨帆,华中,等.基于安卓系统的模拟智能机顶盒的设计与实现[J].电视技术,2015,39(1).

户珊珊,硕士生,主要研究方向为信号与信息处理;

杨 帆,教授,博士生导师,主要从事电子电路、机器视觉及系统设计等方面的研究。

责任编辑:许 盈

猜你喜欢

机顶盒频点播放器
基于变邻域粒子群的短波频率选择算法
Walkman诞生40周年 索尼适时发布NW-ZX500和NW-A100系列播放器
机顶盒上别盖布
安全使用机顶盒注意五点
基于STM32的MP3播放器设计
Moon ACE播放器/放大器一体机
有线电视高清数字电视机顶盒测试系统的构建
基于测量报告数据优化CSFB频点配置的方法
播放器背板注塑模具设计
What is Apple Watch All About?