Google's android as an application environment for DTV decoder system Consumer Electronics (ISCE), 2010 IEEE 14th International Symposium on, 7-10 June 2010, pp1-5 Advisor:Lian-Jou Tsai Student:Hsing-Chuan Chang PPT Production rate:100% Data:2012/05/16 OUTLINE • ABSTRACT • INTRODUCTION • ANDROID SOFTWARE STACK • SYSTEM OVERVIEW • ANDROID PORTING • MULTIMEDIA AND DTV PLAYBACK SUPPORT • ANDROID TV APPLICATION • TESTING RESULTS • CONCLUSION 2 ABSTRACT • This paper presents an approach of using Google’s Android software stack as an application environment for digital television (DTV) sets and set-top boxes. • Paper describes the process of porting complete Android software stack. • Implementation of extensions to support DTV channel search, memorizing, playback and recording. 3 INTRODUCTION • DTV (digital television) sets and set-top boxes are controlled by custom proprietary software, written generally for one specific model or for a family of similar models. • Motivation for porting and modification of Android rests in its availability and used Linux kernel hardware abstraction layer . • This paper presents an approach of using Google’s Android software stack as an application environment for embedded multimedia devices, mainly DTV decoder systems and set-top boxes. 4 ANDROID SOFTWARE STACK(1/2) Picture 1. Android System Architecture 5 ANDROID SOFTWARE STACK(2/2) • Android run-time includes a set of core libraries that provide a substantial subset of features offered by core libraries of Java programming language. • Granting the full access to the framework APIs used by the core applications, developers are free to take advantage. • Android provides an open development platform offering developers the ability to build modern and powerful applications. 6 SYSTEM OVERVIEW • For the purpose of this project Android software stack is ported to a genuine DTV decoder device (Micronas IDTV development platform). one 240Mhz MIPS 24kc Linux dedicated processor multiple A/V dedicated decoder processors graphics processing unit (GPU) graphic accelerator (GA) universal serial bus (USB) controller 7 ANDROID PORTING • Porting Android to a big-endian platform is a process divided into three stages. Linux kernel drivers used by Android software stack need to be back-ported to the platform supplied kernel. Extension of Android build environment to support big-endian MIPS platforms. Android software stack consists of audio driver integration and DirectFB video frame-buffer support. 8 A. Linux Kernel Back-porting • Few new drivers are introduced to the Linux kernel tree to support Android software stack. ASHMEM (Anonymous SHared MEMory) Binder for Android Android event logger 9 B. Android Environment Modification • Android software stack had been successfully ported to little-endian MIPS platform. • Due to the different endianes of the used platform (big-endian) modifications to Android software stack are numerous. 10 C. Android DirectFB Support • DirectFB (Direct Frame Buffer) framework is a GNU/Linux/UNIX based software library with a small memory footprint that provides graphics acceleration, input device handling, etc. on top of Linux frame-buffer device. • As DTV SoC vendors implement hardware accelerated DirectFB video drivers, support for DirectFB was implemented on various levels throughout Android software stack. 11 MULTIMEDIA AND DTV PLAYBACK SUPPORT • First step will modify Android to support hardware audio and video decoders and allow local multimedia file playback. • Second step will add support for DTV channel search and memorizing. • Third and final step will addsupport for DTV channel playback and recording. 12 A. Multimedia Playback Support • Android Java runtime libraries own a media object “android.media”, an interface used to control playback of audio/video files and streams. • To support hardware accelerated multimedia playback, media object framework will be extended with options to allow hardware to process, decode and present multimedia data and to notify Android (state changes) only through events. Picture 2. MMLib library Architecture 13 B. DTV Channel Search and Memorizing • DTV sets and set-top boxes commonly include various frontend devices to provide analog and digital channel reproduction. • To enable channel search and memorizing, in Android programming manner. ChannelService thread ChannelServiceDatabase object ChannelServiceClient interface Channel service JNI interface Picture 3. Channel Service Architecture 14 C. DTV Channel Playback and Recording • By expanding the capabilities of media object framework to support MMlib library and by defining the channel service multimedia files. • DTV device control and playback implementation becomes just an MMlib plug-in. Implementation of the DTV playback and recording Mmlib plug-in is platform dependent. 15 ANDROID TV APPLICATION Picture 4. DTV Player Application Overview 16 TESTING RESULTS • Modifications and extensions made on Android software stack, to support DTV channel search and playback, were tested with the DTV Player application. • Android powered platforms give the user ability to add options, modify the experience. 17 CONCLUSION • As an open-source platform, Android can bring nearly infinite amount of possibilities through expansions and core modifications and new application development. • By enabling DTV services for Android, on Micronas IDTV platform, together with built-in Android applications, TV set utilization experience has been changed completely. 18 REFERENCES [1] Google Android, http://www.android.com [2] Dalvik Virtual Machine, http://www.dalvikvm.com/ [3] Analysis of Dalvik Virtual Machine and Class Path Library, http://imsciences.edu.pk/serg/wp-content/uploads/2009/07/Analysis-of-Dalvik-VM.pdf [4] Micronas IDTV development platform, http://www.micronas.com/pressroom/press_releases/articles/0812/index.html?newslang=1 [5] MIPS Android, http://www.mips.com/android [6] Lalit Kumar, Rajesh Kushwaha, Rishi Prakash: "Design & Development of Small Linux Operating Systems for Browser Based Digital Set Top Box", 2009 First International Conference on Computational Intelligence, Communication Systems and Networks, pp. 277-281 [7] Qiong Li, Minqiang Guo: "Digital Recordable Integrated Television Based on Embedded Linux Operating System", 2009 World Congress on Computer Science and Information Engineering, pp. 81-84 [8] Ganesh Sivaraman, Pablo Cesar, Petri Vuorimaa: "System Software for Digital Television Applications", 2001 IEEE International Conference on Multimedia and Expo (ICME'01), pp. 154 [9] MIPS Android source code, http://www.linuxfordevices.com/c/a/News/MIPS-to-release-Android-sourcecode-by-August 19 Thank for your attention!! 20