Abstract: This article discusses the design and implementation of a real-time encoder that complies with the AVS-M standard. The purpose is to verify the performance of the AVS-M standard in a real-time application environment. In order to obtain the verification results as soon as possible, this project makes full use of the resource advantages of the network open source project-using x264 as the basis for the design of the AVS-M encoding library and VLC as the basis for the design of the encoder framework. Finally, a comparative test was conducted on AVS-M and H.264, mainly to compare the clarity and consistency of the audio and video generated after encoding and decoding, and achieved "AVS-M at low bit rate (32-512Kbps), low resolution Rate (SQCIF-CIF) conditions are close to the performance of H.264 "results.
1 Introduction
AVS-M is part 7 of the AVS standard-a video codec standard specifically designed for mobile communication environments. The purpose of this project is to verify the performance of AVS-M in the application environment, thereby proving the practical value of the standard and contributing to its domestic industrialization process. Mobile communication terminals have the characteristics of low bandwidth, high bit error rate and weak computing power. Currently, MPEG-4 SP is mainly used as the video encoding and decoding standard. H.264 and VC-1 are likely to be upgraded in the future. This project proves the practical value of the AVS-M standard by comparing the actual performance of the AVS-M and H.264 standards under the same test environment. In order to be close to the real use environment, the encoder implemented in this project needs to realize the functions of real-time audio and video acquisition, real-time encoding, and real-time output of code stream in the form of MPEG2 TS stream through Ethernet.
VLC and x264 are two open source software released in compliance with the GPL standard. Among them, VLC is a streaming media platform that supports plug-in functions; x264 is an H.264 encoding library and is optimized for the x86 platform. In order to obtain the verification results as soon as possible, this project uses the VLC and x264 projects as the starting point of the design. VLC implements real-time audio and video capture, H.264 encoding, MPEG2 TS stream multiplexing and Ethernet output in the form of plug-ins, which exactly fits the overall needs of this project; AVS-M standard originated from H.264 standard, two The structure is similar and the functions are the same. The development of the AVS-M standard based on H.264 can speed up the development process, and the same code tree can also better compare the actual performance difference between AVS-M and H.264 standard. In order to be more in line with the actual use environment, this project uses AAC + as the audio coding standard. VLC itself does not support the encoding function of AAC +, but only supports its decoding function. Here, 26410-700 of the 3GPP project is used as the implementation of the AAC + standard, and the AAC + audio encoding function is implemented by means of a plug-in.
VLC not only supports audio and video data collection, encoding, multiplexing and Ethernet transmission functions, but also supports Ethernet stream receiving, demultiplexing, decoding and playback functions of the code stream. In order to verify the actual encoding effect of the encoder, this project also uses VLC as the receiving end of the code stream, and judges the performance of the encoder by viewing the playback effect in real time. The VLC that supports the AVS-M decoding function is the development result of another project and will not be described in detail in this article.
2. Encoder
Audio and video encoding are both computationally intensive operations. If you want real-time encoding, you need a powerful computing platform. Here, a Dell PowerEdge 2950 server is used as the hardware foundation for the encoder. The PowerEdge 2950 is equipped with an Intel Xeon 5160 (Woodcrest) 3.0GHz dual-core CPU, 1GB DDR2 memory, SATA II hard drive, built-in dual Broadcom BCM5708C NetXtreme II GigE Gigabit Ethernet controller, and has two PCI-X expansion slots for expansion Peripheral interface function. The operating system uses Red Hat Enterprise Linux 4 (32bit) operating system.
The PowerEdge 2950 itself does not have an audio and video capture interface, and needs to be expanded by a corresponding capture card. Here, an Osprey 230 capture card is used as the real-time audio and video acquisition interface. It uses the PCI-X interface format and supports the PAL / NTSC / SECAM video standard. It can collect one channel of SD video and two-channel audio in real time. The Ethernet output uses the built-in Gigabit Ethernet interface of the PowerEdge 2950. The overall block diagram of the encoder is shown below:
The entire encoding process is: PAL / NTSC / SECAM video signal through Composite or S-Video interface, audio through the two-channel audio interface into the Osprey 230 capture card; Osprey 230 is driven by Video4Linux2 and OSS driver, VLC through these two An interface controls the acquisition card, reads audio and video data in real time, and sends the audio and video data to the AVS-M encoder and AAC + encoder for encoding; the coded stream generated after encoding is sent to the MPEG2 TS multiplexer for multiplexing; The multiplexed TS stream is sent out through the Ethernet interface as UDP unicast or multicast.
<p>
<strong>We are engaged in offering a wide range of Vacuum Circuit Breaker Interrupter Housings. These housings are widely used for circuit breaking applications in various industries and commercial establishments. Manufactured using high quality raw material, this range is tested and inspected for all the quality parameters by our experts.</strong>
</p>
t-shirts,shirts,jackets,coats,,blazers
2222Bossgoo(China)Tecgnology.
(Bossgoo(China)Tecgnology)8866 , https://www.tlqcjs.com