Design and Implementation of a Scalable System

advertisement
Design and Implementation of a Scalable System
Architecture for Embedded Multimedia Terminal
Electrical and Control Engineering (ICECE), 2011
International Conference on 16-18 Sept. 2011 618- 621
Advisor : Lian-Jou Tsai
Student : Bing-Fen Huang
PPT Production : 100%
Data : 2012/5/16
Outline
Abstract
Introduction
Hardware platform build
Scalable software system architecture
Test of embedded multimedia system
Conclusion
References
Abstract
System architecture designed with distinct structures and
reasonable modules.
A simplified multimedia framework is designed for embedded
application :
A scheduler
A multimedia processing engine
On Real6410 platform, an embedded multimedia system is
built.
Introduction(1/2)
Currently GStreamer and Android OpenCORE are two open
source multimedia architectures which are widely applied with
LINUX kernel in embedded application.
GStreamer adopts “core + element” design.
Android multimedia framework is stable and powerful but only
for Android operating system and hard to be ported to other
system.
Introduction(2/2)
We design a scheduler and a media processing engine to build
up the multimedia framework:
Provides scheduling functions
A simplified media processing engine based on FFMPEG
The design focuses on functionality expanding easily and
following the principle of "strong cohesion, loose coupling” to
design modules:
Unified interface
Sub-functions.
Hardware platform build(1/2)
Processor Selection
DSP processor cooperates with ucLinux
Dual-core design
ARM processor integrated with multimedia coprocessor
S3C6410 Speciality
ARM1176JZF-S core
Multiple multimedia co-processors
Scalable software system architecture(1/6)
Distinct Overall Hierarchy
System layer
Engine layer
Display layer
Reasonable division for software functional modules:
Mode scheduling module
File input module
Video output module
Audio output module
Multimedia processing engine module
Scalable software system architecture(3/6)
A simplified multimedia framework
Scalable software system architecture(4/6)
Scheduling_Server Module
A. Mode Scheduling Strategy
The following modes have already been defined :
MODE_PLAYER
MODE_MONIT
Mode Control Block (MCB)
B. Mode Register Algorithm
First, in accordance with mode ID, Scheduler reads mode configuration from a
XML file called Scheduler_Config.
Then enable mode registration function to read configuration of modules which
belong to this mode
Call module registration function to finish module loading and write module
information into MCB
Finally, insert MCB into the mode list to start mode operation.
Scalable software system architecture(6/6)
Multimedia Processing Engine Module
A. Compatibility Design for Engine Interfaces


FFMPEG
This module can be divided into six smaller modules:
File_Input,
Demux_Parser
Synchronization,
Playback Control
Event_Loop
Audio Output Interface
Video Output Interface
Test of embedded multimedia system(1/3)
Porting Real6410
LINUX 2.6.28 kernel
Libc.so version > 2.7
ARMV6 toolschain
Audio and Video Synchronization
Decoding Time Stamp(DTS)
Present Time Stamp(PTS)
Test of embedded multimedia system(2/3)
Audio and video synchronization
Test of embedded multimedia system(3/3)
Analysis of the result
It is functionality expands easily by modules scheduling and
combination.
The media processing engine nicely cooperates with various codec
libraries and hardware accelerator program to support video and audio
stream processing smoothly.
Conclusion
Embedded multimedia system architecture with enhanced scalability is
designed and implemented, following the principle of "strong cohesion, low
coupling”.
The experiment on Real6410 board proves that the simplified multimedia
framework design is efficient and fits for embedded application.
References
[1] gstreamer.freedesktop.org
[2] Luo Rui , “Research and Implementation of Multimedia Player based on embedded
Blackfin platform : [Master thesis] ,” Chengdu: University of Electronic Science and
Technology, 2009.
[3] Samsung Electronics Co. Ltd, “S3C6410X USER'S MANUAL,” February 2008,
pp.50-58.
[4] Guangzhou Huatianzheng Technology, “Real6410 Hardware Manual v1.2,” June
2010, pp.3-6.
[5] Haibin Zhang,Hui Li,Dan Wu,Husheng Yuan,Tao Sun,Peng Yi, Hongchao Hu,
Bingqiang Wang,“The design and implementation of an embedded high definition
player,” Computer and Automation Engineering (ICCAE), 2010 The 2nd International
Conference, 26-28 Feb 2010,vol.4,pp.301 – 304.
[6] Michele Sliger,Stacia Broderick, “The Software Project Manager's Bridge to Agility,”
Addison Wesley,2008.
[7] www.ffmpeg.org
Thank for your attention !
Download