Upload
millie
View
67
Download
0
Embed Size (px)
DESCRIPTION
嵌入式視訊隨選應用程式之開發與實作 Development and Implement of an Embedded Video-on-Demand Application. 國立中興大學電機工程系 系統與網路實驗室. Outline. 系統架構與功能介紹 嵌入式系統開發 建構跨平台環境 系統應用程式開發 結論與未來工作. Video On Demand. VOD ( Video On Demand ) 隨選視訊系統,乃是將各種媒體 以數位化方式儲存於伺服資料庫中。 - PowerPoint PPT Presentation
Citation preview
Development and Implement of an Embedded Video-on-Demand Application
Outline
Video On DemandVOD ( Video On Demand )
(CD-TITLE)VCDLDCD
Video On Demand (2)
Embedded VOD System:
:
The VOD serverThe transport networkThe end user
(2)The end user:
Intel StrongARM
Embedded Linux Qt/Embedded GUI
VideoLAN Client (VLC) video streaming
PCMCIA Slot Wireless CF Card
(3)
(4)
(5)(Server):
Redhat Linux 9.0 TCP/IP client-server socket
VLC
MySQL
(6)VOD
(7)The transport network:
(8):
(Video On Demand, VOD)
TCP
(Streaming)
RTP UDP
(9)
(Multicasting)
MP3
(10)
VOD
::
:
Outline
--- (Customize)
PDA(Set-Top-Box, STB)
MPUASIC
CPU
Embedded LinuxEmbedded LinuxLinux Linux
Linux
? --- Boot image , kernel image , filesystem
Flash Memory
Powers upReset:
BootMemoryProcessorRegisters
Interrupt controllerinstallInterrupt handler
peripheral devices
(2) Loader Boot image
kernel image SDRAM
kernel start_kernel()
kernel Kernel objects services --- Task objects ,Timer services , Memory-Management services
Load
filesystem Starting initial tasks
--- Cross Complier
--- arm-linux-gcc x86ARM cross-compiler
/
---
(2)GNUARMcross-compiler
GCC C/C++ compilercross-compilerC ARM
Binutils ARMARM
GLIBC C runtime library
ftp://ftp.gnu.org/gnu/ GNU(ToolChain)
/ :
(Linked setup) (Removable storage setup)
(Linked setup)
Ethernet
---
SeriesEthernet**Bootlodar*Kernel* filesystem/
(2)
(TFTP) Kernel (NFS)
Ethernet
RS-232
(3)(Removable storage setup)
*Bootlodar* Kernel* filesystem*
Outline
Cross-development tool
cross-complier binary utilities --- toolchain
arm-linux-ld , arm-linux-as , arm-linux-gcc , glibc
arm-linux
:
Binutils Gcc Glibc
:
1. 2. 3. 4.
Binutils
Gcc
Glibc
* PATH=/usr/local/arm
Outline
:
GUI
socket/
(Concurrent server)
I/Oread()write()
GUI GUI --- Qt/Embedded
Qt
FrameworkC++
(Framebuffer) framebuffer X
(class)
TCP/IP socket , QNetworkProtocol
Qt/Embeddedqvfb
Qt/X11 & Qt/Embedded
GUIQt/Embedded GUI:
Qt Designer GUIinterface file (.ui)
Qt user interface compiler (uic) .cpp .h
Qt progen tmake .pro Makefile
Makefile
Qt
qvfb
(MySQL)
/
MySQL :
: mysql_init( ) : mysql_real_connect( )
MySQL :
:VLC
: SDL(Simple DirectMedia Layer)VLC
SDL framebuffer
MAD(MPEG Audio Decoder) MAD
SDL SDLQt/EmbeddedqtopiadriverFramebuffer
filesrc/video/qtopia/SDL_QWin.csrc/video/qtopia/SDL_sysevents.csrc/video/qtopia/SDL_sysvideo.c
Configure SDL (configure)SDLMakefile arm-linux-sdl-config (script) (SDL-lib)
Configure MADmad-0.14.2bVideoLAN Client
Configure VLC vlc-0.5.2
Makefile
802.11bSENAOWireless Compact Flash CardPCMCIAdriverLinuxStrongARM
: server client
: server multicasting client
MP3
PC
Video Video Frame Size320x240Frame Rate (fps)23.976Video CodecMPEG-1InterlacingNon-InterlacedAspect RatioVideo:[4:3], Pixel:[1:1]CBR/VBR TypeCBRVideo Bitrate(kbps)500~1152Audio Sample Rate(kHz)32.000Audio Bitrate(kbps)128ChannelsStereo