Font Size: a A A

Design And Implementation Of Embedded IPv6 VOD Terminal Based On XScale And Linux

Posted on:2007-10-06Degree:MasterType:Thesis
Country:ChinaCandidate:Z D YiFull Text:PDF
GTID:2178360182996287Subject:Communication and Information System
Abstract/Summary:PDF Full Text Request
In recent years, with the rapid development of the machine, network andmultimedia technology, more and more products related with network video areapplied such as video on demand (VOD) system, videoconferencing system, videosurveillance system, tele-education and telemedicine system. VOD system iscomposed of media server and terminal. The media server provides VOD service tothe terminal through IP networks. Traditional VOD terminals are designed based onPC. Applications are developed based on the operating system of PC in order toimplement network communication, decoding and broadcast of audio and video.An embedded system consists of an embedded processor and an embeddedoperating system. Embedded operating system runs on embedded processor, it candispatch all tasks and manage the processor and other hardware devices of bottomlayer. Embedded operating system shields the bottom details, affording unifiedprogramming interfaces for users. In this way, user can carry out development inthe application layer, which greatly simplifies the process of application design anddevelopment and enhances the development efficiency.Powerful embedded processor (such as Intel XScale PXA255) and excellentembedded operating system (such as Linux) have been developed successively,which makes the application of embedded system more and more widespread,especially in the area of consumer electronic products. More convenient networktransmission, more media formats, smaller size, greater storage capacity and richerexpanding functions are the pursuits of consumer electronic products. According tothese requirements, embedded VOD terminal is studied in the paper. An IPv6 VODterminal based on XScale and Linux is designed and implemented finally.The terminal is designed based on Intel XScale PXA255 and Linux 2.6.14. Tobetter meet the real-time requirements of streaming media transmitting, theterminal adopts IPv6 protocol stack, which can additionally provide expandedspace for the development of mobile terminals. Adopting RTSP and RTP asnetwork transmission protocol, the terminal supports ASF format with MPEG-4video coding and MPEG audio coding.After allocating suitable IPv6 address for the terminal, user can input the URLaddress of the streaming media file he wants. The streaming media player of theterminal parses the URL address, and later connects to the streaming media serverto archive VOD. The terminal also supports local broadcast and documentmanagement. When a local broadcast mode adopted, the terminal supports mediafile using video coding such as MPEG-1, MPEG-2, MPEG-4, H.263 and etc, andalso supports some common audio file format such as MP3, WAV and etc.The process of the terminal design and realization can be divided into thefollowing steps.(1) Using Intel XScale PXA255 processor, CS8900A, CS4297A, ADS7843,FLASH, SDRAM, LCD, touch screen, expanded IDE interface to designhardware circuit and ultimately the hardware platform of the terminal isimplemented. Intel XScale PXA255 is a high-performance ARM processorintroduced by Intel Corporation, it supports virtual memory management withMMU. The highest working frequency can be up to 400MHz。CS8900A is a10Mbps Ethernet controller used for network communication. CS4297A is anaudio codec and used for audio recording and playing. ADS7843 is used toconvert the current signal coming from touch screen for positioning. LCDcarries out display of the terminal. IDE interface realizes high-capacity datastorage. Terminal uses Flash memory (E28F128J3A) of 32M bytes andSDRAM (K4S281632C) of 64M bytes to storage data, and also affords spacefor running programs.(2) U-boot 1.1.2 is ported as boot loader of the terminal. Linux 2.6.14 is also portedto the hardware platform. According to hardware interface and time sequencing,drivers of every external reference are modified and finally finished based onactual hardware circuit. By planning flow of the system booting,cross-compiling corresponding dynamic libraries and writing the booting script,a file system with JFFS2 format is realized ultimately. Tiny-X iscross-compiled as GUI of the terminal. Dual protocol stacks including IPv4 andIPv6 are supported by Linux kernel. IPv6 protocol is used to transmit streamingmedia as a protocol in transmission layer. API functions and data structuresindependent to IP version are used to design programs.(3) Applications related with transmission of streaming media are designed.According to than standard about session of RTSP, the class named RTSPClientis implemented to send streaming media server commands such as OPTION,DESCRIBES, SETUP, PLAY, TEAR DOWN and etc. When a VOD session isactivated, the RTSPClient object is required to establish connections withstreaming media server, and then starts two RTP sessions with four differentports. One RTP receives real time video stream and resolves the data packetsreceived, the other takes charge real time audio stream. RTP sessions aredeveloped based on standard JRTPLIB library.(4) Applications related with decoding and broadcast of streaming media aredesigned. Four threads and three buffers are used in the programs. Each threadtakes charge the following task: receiving RTP video stream, receiving RTPaudio stream, synchronizing the video and audio packets, decoding andbroadcast the video and audio data. The three buffers are used to storage RTPdata of video, RTP data of audio and synchronized data of audio and video.Two memory blocks are allocated by the thread charging for decoding andbroadcast. One block is used to storage the audio and video data waiting fordecoding, the other block is used to storage the decoded data of audio and video.Design of the terminal is mainly aimed at Streaming media file format of ASF,which uses MPEG-4 video coding and MPEG audio coding. FFMPEG librariesare used to parse file format of ASF and decode audio and video data. SDLlibraries are used to drive the frame buffer and audio device. A timer with cycleof 40ms is used in the main routine. A frame of video data and synchronizedaudio data are decoded and broadcasted when each event of the timer arrives.Function testing is carried out with a standard streaming media server in IPv6network. Result indicates that the terminal can receive, decode and play ASF filepersistently. Video streaming is played smoothly and the audio streaming issynchronized favourably. The terminal can be expanded both on software andhardware in order to be applied in videoconference, video surveillance and etc.
Keywords/Search Tags:embedded terminal, VOD, XScale, Linux, IPv6
PDF Full Text Request
Related items