Abstract: This paper introduces a software and hardware implementation scheme for an embedded network video phone based on TMS320DM643 DSP. All application software of the system is executed by a single TMS320DM643, including video and audio encoding and decoding (H.264, G.732. la), network stack, and control protocol, which significantly reduces the total cost of the system and makes it easy to upgrade and add value-added services.
Introduction
Due to factors such as cost and video communication quality, video phones have been neglected by users since their launch. Nowadays, with the advancement of technology and the popularization of broadband internet, video phones have shown new vitality. Industry experts predict that in the next few years, video phones will not only be able to connect with telecommunications fixed line, PHS, and mobile/China Unicom phones, but also with 3G phones. Video conferencing will become an independent industry with promising development prospects.
Based on TI’s single 600 MHz TMS320DM643 (referred to as DM643) digital media processor, the author has developed an embedded IP video phone with excellent performance and low cost, achieving real-time communication of peer-to-peer network audio and video.
Hardware design based on TMS320DM643
The DM643 digital media processor [1] integrates a series of peripherals to adapt to the development of video and imaging technology. This includes three configurable video ports, one 10/100 Mbps Ethernet MAC (EMAC), one serial port for audio applications (McASP), one serial port (McBSP), and some other peripherals. The C64x core has 8 parallel processing units and adopts the VLIW (Very Long Instruction Set) structure, with a processing capacity of up to 4800 MIPS. It also extends 88 instructions on the basis of the C6OOO common instruction set. These instructions enable C64x to execute algorithms in image processing more conveniently.
The composition of an embedded IP video phone based on a single DM643 is shown in Figure 1. The video signal input from the camera and the audio signal input from the microphone are converted by A/D and sent to the DSP, which compresses, encodes, and combines the audio/video signal; Then, the data is transmitted through a local area network or the Internet, while the data received from the network is split and decoded for video signal display and audio signal playback. In the system, a keyboard is also connected through the McBSP/UART port of DM643 to achieve the dialing function of the phone.
Figure 1 Composition of Embedded IP Video Phone
Figure 1 Composition of Embedded IP Video Phone
1.1 Video acquisition circuit
The video decoding chip used in this system is Philips SAA7l15. After the full TV signal input from the camera is clamped, anti aliasing filtering, A/D conversion, and YuV separation circuit inside SAA7l15, it is converted into BT.656 video data stream in the YuV to YCrCb conversion circuit. It is input into the compression core unit DM643 through the video port VPo of DM643. The row/field synchronization signal of video data is included in the EAV (End of Active Video) and SAV (Start of Active Video) time base signals of the BT.656 digital video data stream. The video port only requires the video sampling clock and sampling enable signal. The configuration of internal register parameters and status reading of SAA7l15 are carried out through the 1C bus. The principle of the video capture interface is shown in Figure 2.
Figure 2 Principle of Video Capture Interface
Figure 2 Principle of Video Capture Interface
DM643 sends the decoded video data to SAA7121 for display and output through the VP1 channel of the video port. SAA7121 is a video encoding chip from Philips, which can achieve D/A conversion of digital videos. The working mode of SAA7121 is determined by its internal control registers, which are initialized through the 1C bus. DM643 utilizes its own 1C bus module as the main controller to program and control the parameters of SAA7121.