Video transcoding technology and transcoding implementation

This paper briefly introduces the definition, classification and implementation of video transcoding technology, focusing on how to use transcoding technology in video engineering, including the use of transcoding technology and its advantages. It analyzes how to use transcoding technology in streaming mode and file mode. Through the analysis of two engineering examples of remote transmission of video data and program production network material in the mobile nonlinear editing system, the flexibility and versatility of the transcoding system work are discussed. It clarifies the author's view on the prospects of using transcoding technology in the professional video field, in conjunction with computer equipment and network architecture.

1 Introduction

Start with a simple question: How many video and audio coding methods do you have for a video engineering technician?

In the big category of encoding and compression, we need to face different series of compression encoding methods such as MoTIon-JPEG, MPEG, DV, H.261\H.263; each encoding method needs to face different Subclasses or subclasses, such as DVB, often involve MPEG-2 MP@ML and MP@HL; video products from different vendors also use different intra and inter coding relationships and different streams depending on their situation. GOP length, I, B, P frame, 50, 25 Mbps and other terms have now become an important part of the video product technical parameters; each manufacturer also has its own encoding method in the video data package, video server developed by different manufacturers For example, Grass Valley's Profile series server and SONY's MAV series of servers, although capable of encoding MPEG-2 video files with the same GOP length and the same code stream encoding, are generated due to differences in file packaging. Video files cannot be used directly from each other. This situation is quite common in the field of digital video, sometimes even in different series of video products developed by the same manufacturer. Data streams or files are also incapable of recognizing each other.

We don't want to discuss which encoding compression method is better and better here. This article wants to discuss how to share and exchange video and audio data with high quality and efficiency between video devices with different compression coding methods.

The common practice of exchanging video data now is to decompress the encoded video data into baseband signals, re-encode them according to the situation, and properly package them, using the same interface protocol, in a streaming manner between different video products. Transfer sharing. If an SDI connection is used between different video products, the video data is encoded into a standard SDI data stream and transmitted through the built-in SDI codec regardless of the encoding method used inside the device.

Regardless of the compression encoding method used inside device A, when transmitting video data to device B, the video data is first decoded and sent to the SDI encoder through its built-in data decoding unit, and the package is converted into an SDI data stream, and then passed through the SDI interface. It is transmitted to the SDI interface of Device B, which sends it to its own data encoding unit through the SDI decoder to re-encode or store the video data.

The premise of such data exchange is that different devices have interfaces that comply with the same protocol, such as SDI interfaces, and have corresponding codec hardware devices, and use a data stream that can be commonly recognized as an intermediary to exchange video and audio data.

From another point of view, this method can be seen as a coding mode conversion, that is, the process of transcoding. It decodes the video data encoded in device A, converts it into SDI stream through SDI codec, transmits it to device B, and then transfers it to the data encoding mode used by device B for processing and storage.

In this case, if we can use the direct transcoding method, the video data based on the device A encoding method can be converted into the data encoding format that device B can recognize and use, and processed or stored for device B, which can reduce the repetitive codec. The resulting device overhead and signal quality are degraded, and a variety of transmission channels can be utilized, and are not limited to a specified interface channel, which can greatly improve work efficiency.

This is exactly what this article wants to discuss with you, how to use the transcoding method flexibly, share video data between devices based on different coding methods, improve work efficiency, and discuss possible problems and solutions in engineering. .

2 video transcoding technology

Video transcoding technology, as its name implies, is a way of changing the encoding of existing video data by some means. The purpose of video transcoding technology is different, and the means of its implementation are also different. Generally, it can be divided into two categories:

1. Video data transcoding between different encoding formats

Data transcoding between different encoding formats refers to changing the encoding format of video data by transcoding. Typically such data transcoding changes the existing stream and resolution of the video data.

For example, we can convert video data based on MPEG-2 format into DV, MPEG-4 or other encoding formats, and specify the code stream and resolution of the video data generated by transcoding according to its transcoding purpose. We can convert MPEG-2 full I frame 50Mbps video source data into 25Mbps stream DV format data for notebook mobile editing system, and generate a 300*200 low resolution MPEG-4 file, using REAL or Microsoft The WMV format is encapsulated and transmitted over the Internet to the lead leader for review.

The algorithm designed by this transcoding method is more complicated. It is essentially a re-encoding process. The algorithm complexity and system overhead involved are the image quality requirements for transcoding and the correlation between the two encoding methods before and after transcoding. Decided.

Second, the video data transcoding between the same encoding format

Data transcoding in the same encoding format means that the compression format is not changed, and only the code stream or header information is changed by transcoding means. According to its purpose of use, it can be divided into two types: changing the code stream and not changing the code stream.

For example, we can transcode video data of MPEG-2 full I frame 50 Mbps code stream into video data of MPEG-2 IBBP frame 8 Mbps code stream, which is directly used for broadcast server for broadcast. Or we will change the header file and package format of the MPEG-2 Full I frame 50 Mbps stream video file based on the SONY video server header file, so that it can be directly edited and used on the editing system of the MATROX board.

The complexity of this transcoding method is less than the complexity of transcoding of different encoding formats, and it is more operable for video engineering.

3 video data transcoding implementation

There are many algorithms that can be implemented for the mutual conversion of different codes of video data. Many motion picture experts have also conducted in-depth research on this, and proposed quite a few feasible solutions for different coding methods. The common feature of these schemes is to make full use of the common features between the required inter-transcoding codes, to minimize the image quality loss caused by codec, and to achieve a balance of time and resource consumption.

If we convert an MPEG-2 video data into MPEG-4 video data, we can of course use the method of decompressing the MPEG-2 video into a single-frame image sequence and recompressing it into MPEG- 4 video data

However, the computational complexity of this transcoding method is not different from the computational complexity of using SDI data streams as an intermediary. We can improve the efficiency of transcoding and reduce the computational complexity through some methods. For example, MPEG-2 and MPEG-4 have many similarities in their coding algorithms. There are many aspects in DCT transform, MC motion compensation, and MV motion compensation. Where it can be shared, we do not need to fully decode it into separate image sequences, and we can use the correlation between different encoding methods to transcode work.

All header information in MPEG-2 video data is decoded and sent directly to the MPEG-4 encoder for encoding. A small amount of header information needs to be adjusted to accommodate the new encoding format. The DCT coefficients and MV information are reused, eliminating the need for motion estimation and DCT system consumption. At the same time, when MPEG-4 is used for motion compensation, the motion vector information decoded by the MPEG-2 decoder can also be directly used.

We can see that different time and system consumption complexity can be obtained by using different transcoding algorithms in the coding conversion of different requirements. Whether or not these different complexity algorithms are adopted depends on the user's requirements for the work task. For example, the work task needs to obtain the transcoding result in real time, requires high reliability, and specifies the encoding mode and code stream of the data before and after transcoding. Then we can use efficient transcoding algorithm, sacrifice some image quality if necessary, and solidify the algorithm on the hardware chip board to meet the task requirements. If the work task does not require high transcoding synchronization and does not require real-time output, but has high requirements on image quality, we can use some transcoding algorithms with lower efficiency but less loss of image quality. The algorithm can be fixed in the hardware chip, or the general computer computing system, storage system and data exchange system can be used, and the software algorithm is used for transcoding. The specific application methods of these methods are described in detail in the latter part of this paper.

Let's take a look at how these transcoding jobs are implemented.

First, the traditional stream-oriented video transcoding

Due to the characteristics of video data itself, the huge amount of data and the linear storage format, traditional video coding conversion has been operating for data streams for a long time. It works like a standard converter. The input inputs a continuous NTSC signal while outputting a real-time PAL signal at the output.

The advantage of this method is that the transcoding result can be output in real time or near real time, and the transcoding algorithm is solidified on the board chip chip. The transcoding work is basically completed by hardware and has good stability. However, its shortcomings are also obvious. The transcoding unit is basically unable to control the size and additional information of the code stream for a specific source coding mode and target coding mode, and the flexibility is poor. In order to meet the requirements of real-time processing, it is sometimes necessary to sacrifice the quality of some images. Another disadvantage is that this stream-based video transcoding, the input and output are basically synchronized, and can not be encoded at a faster than real-time speed.

With the advancement of computer technology and the increasing availability of non-linear storage methods, we can store video data in the form of files. This provides a new, more flexible and efficient transcoding method for video data.

Second, the use of computers and related equipment for file-oriented video transcoding

The use of computer equipment to change the encoding of a single image is already a very mature technology, but limited by the computer computing power and storage capacity, for a long time, there has been no coding conversion processing for professional video data that meets the broadcast level requirements. What a good solution. However, with the enhancement of computing power of computer equipment and the increasing storage capacity, and its data interface can meet the needs of video data processing, the use of computers and related equipment to process video data has become the mainstream now, and also provides video transcoding. A better platform for cost performance. We can use computer equipment to make flexible and efficient transcoding work by means of software.

Let's take a look at how to use a computer system for transcoding.

This way of transcoding with computer equipment is very flexible and can handle video data that exists in file or stream. The essence is to create a buffer zone of sufficient data in the memory of the computer device, and divide the video data file or stream to be processed into a plurality of suitable segments into which to fit. The transcoding algorithm is provided by the software, and the computer system is controlled to perform transcoding work. The concept of the data interface shown in Figure-7 is also very flexible. It can make the external interface of a computer device, such as Gigabit Ethernet, Fiber Channel channel, or its own built-in storage channel interface. Let's see how they work.

The computer device first puts the video data file to be converted into an encoding method into an external storage or a local storage device. The video file is then split into data segments suitable for processing by the computer device, placed in the cache, and the transcoding algorithm is provided by the software, and the data segments are encoded and converted by the processing capability of the computer device. After the conversion is completed, the data segment is sent to the specified area storage, and the cache area acquires a new data fragment. Loop this way until all the split data segments have been transcoded, merge the transcoded video data file fragments, and output the video data we need.

This way of splitting data is also suitable for streaming video data. For example, we can use the data interface to directly connect to the digital video data stream and store it to the specified cache of the computer transcoding device without any codec. The area, the linear data flow exists in a non-linear data storage mode, and then can be transcoded using the data splitting method shown in Figure 8. After the combination, the file mode or the data still in the streaming mode can be selected. Output.

The transcoding work in this way has great flexibility, and the digital signal interface does not need to identify the format encoding and packaging of the received data stream. Simply record the data to the buffer area, and the transcoding software decides which transcoding method to use, and encodes and converts the encoding format and encapsulation method of the data stream. For example, if we have the same interface hardware standard, we can encode and convert data stream input of DV stream, TS stream, FTP file stream, etc., without replacing the hardware interface and codec device, just change the transcoding. Software transcoding processing means and control means

Let's take a look at how the transcoding software works.

Different transcoding softwares have their own characteristics, but they are composed of the following functional modules: data interface module, hardware interface module, storage management module, transcoding algorithm module, data processing module, control management module and user interface module. .

Each module is responsible for one or several aspects of software work: the data interface module is responsible for processing the input and output of data, the hardware interface module is responsible for communicating with the computer hardware driver, the storage management module is responsible for the allocation of storage space such as Nei Village, and the transcoding algorithm The module provides the algorithm means of transcoding processing, the data processing module performs specific data processing of transcoding, the control management module performs control and information processing of the entire transcoding work, and the user interface module provides interaction between the user and the transcoding software, and provides the user with The encoding of the transcoding, the code stream and other options provided by some software are controlled.

The transcoding algorithm module can be solidified into the transcoding software, or it can exist as a plug-in. When the transcoding software handles different transcoding tasks, different transcoding algorithm plug-ins can be used as needed to flexibly extend the software functions without changing the configuration of other functional modules.

Using computer equipment with transcoding software for professional video encoding conversion work, has the following advantages:

• The hardware facilities are relatively simple

Use computer equipment and software for transcoding without the need for a dedicated codec chip or board. The processing of the data is completely controlled by the software.

• Wide range of transcoding and flexibility

Using software transcoding, the user can control the transcoding settings according to their needs. The size, level, compression mode, and encapsulation mode of the target code stream can be specified by the user. The corresponding transcoding algorithm can be directly used according to different requirements. The transcoding algorithm can be used as a plug-in in the software, which is convenient to update at any time. Or upgrade without having to make changes to the entire system.

Third, the complexity of transcoding and resource consumption vary with demand. Different software transcoding systems can be used to treat different transcoding requirements separately. Sometimes we just want to change the way the video file is packaged without changing the way it is compressed. This is a good fit. For example, we have the need to transcode the MPEG-2 I frame 50M stream encoded video file from SONY's MAV series server into a video file format supported by the Matrox DigiSuite DTV board for program production network editing. . Since the DTV board supports the video data of the MPEG-2 I frame 50M code stream, we can only change the package form of the video file during the transcoding work without changing the compression coding involved in the video data content. This can greatly reduce the complexity of the transcoding work and system consumption, and at the same time ensure that the quality of the video data is not damaged by re-coding and decoding.

4 application of transcoding system in practical engineering

In television technology engineering, there have been many practical examples of application transcoding systems. We will further analyze the working principle and application prospects of computer-based transcoding systems through two engineering examples.

First, the application of transcoding system in remote transmission of mobile nonlinear editing system

With the increasing performance of notebook computers, merchants have been keenly aware of the application prospects of mobile-based non-linear editing systems based on laptops for remote editing and transmission. Software-based editing means that the price of the editing system is greatly reduced, and the portability of the device makes on-site editing possible. But these are not all of the advantages of mobile non-editing, and there is a very important feature that attracts users: using mobile nonlinear editing systems, with the corresponding network access equipment, you can use existing public communication networks for video data. transmission. It makes it possible to use inexpensive public internet, telecommunication networks or mobile communication networks instead of dedicated expensive, point-to-point communication lines for video data transmission.

The mobile editing system can replace the expensive data link paths such as microwave, Fibre Channel, and satellite to transmit video data by using a common interconnection communication network composed of inexpensive broadband, ADSL lines, and GPRS wireless communication throughout the town.

However, the use of public network to transmit video material, inevitably encounter bottlenecks in the public network bandwidth, such as broadband Internet access to the Ethernet LAN, the maximum transmission rate is generally not more than 4Mbps, and depending on the route and trunk bandwidth The limit of the actual transmission will be lower. For MPEG2 full I frame coding of 50M code streams or DV coding of 25M code streams, the data transmission rate of the public network is unbearable. Let's take the encoding method of DV 25M code stream as an example. Under the Windows operating system, the DV file of one minute is about 220MB, and it is transmitted at 200KBps on the Internet. It takes about 4100 seconds, that is, about 68 minutes. That is, the ratio of the length of video data to the length of time required for transmission is 1:68. Although this kind of efficient transmission method is theoretically feasible, in practical applications, speeds are different due to different network conditions, and any interruption in transmission may make the entire video file unusable, thus Causes retransmission from the beginning. Therefore, this way of working is not operational in practical work.

So how to use the public interconnection communication network to efficiently and conveniently transfer the program video data back to the editing location or directly for broadcast? The video data transmission system based on software transcoding can be used to solve this problem.

According to the specific needs, we can convert the program video data into a specified format through the software transcoding system, specify the code stream coding mode, and divide the file into several suitable data packets in the form of file segmentation, and use FTP to make these through the public internet. The data packet is sent to the receiving end of the remote location and provides data verification means. After receiving each data packet, the receiving end encodes and encodes the data packet into a data encoding mode specified by the receiving end. In the process, if the data packet is lost, the receiving end requests the transmitting side to resend the data packet. There is no need to retransmit the video data from the beginning.

For example, in the actual work, there is such a problem: the work task requires timely transmission of the unexpected news materials taken from different places to the distant TV station. There is no special video signal transmission line or dedicated line rent between the two places is too expensive, and the public internet access is very convenient. The original material captured is the compression encoding format of DV, and the editing and broadcasting system of the TV station uses the compression encoding format of MPEG-2. In order to quickly, efficiently and inexpensively transfer the program material back to the TV station, the following working methods can be used.

First, the source video data (DV) is transcoded into a video data file of the user-specified encoding mode and code stream using the software transcoding system on the mobile nonlinear editing system. The encoding method and the code stream are specified according to the specific needs of the user, such as the breaking news focusing on content and some video data that do not need to be complicatedly edited again, the user can select the appropriate image quality of the video data in exchange for higher compression. The files are used for transmission over the public internet, such as transcoding DMB files of around 220MB per minute into high-compression MPEG-4 files of 60MB per minute. In the case of the same network conditions, the transmission time can be reduced to a quarter of the time it takes to directly transfer DV files at the expense of image quality, but the loss of image quality is almost indistinguishable to the naked eye. The MPEG-4 file is then split into several packets. These packets are sent to the remote TV station's receiving end via FTP. The MPEG-4 file obtained by combining the files by the receiving end is transcoded into the MPEG-2 file of the specified encapsulation format by the transcoding system according to the code stream and encoding mode specified by the user, and is directly used for editing or broadcasting. .

The transmission mode has the following characteristics: the user can control the size of the required transmission file, and flexibly adjust according to his own needs and network conditions; the user can control the image quality of the video data, and can change the resolution of the image while transmitting data. And coding method; splitting the video data file into several data packets for transmission, can fully utilize the resources of the public interconnection communication network, and has the function of resume transmission of the breakpoint; the user can join the self when splitting and merging the data packets. The defined encryption and decryption method can make the transmission of data on the Internet more secure; the work of splitting files, encoding transmission, and merging files can be performed simultaneously, for example, the part that has been encoded can be split into data packets during the encoding process. , directly sent to the receiving end, the receiving end can be combined while receiving, and the encoded data is encoded, which can greatly improve the work efficiency.

It is worth mentioning that the size of the image quality loss is determined when the user specifies the encoding mode of the transmission and the size of the code stream. When the received video data is transcoded into a high-stream encoding mode when transmitting to the destination, only redundant information is added to the video data, and the image quality cannot be changed. Therefore, the user can control the balance between image quality and transmission time by adjusting the size of the transmission stream according to his own needs.

In this project, the transcoding system is mainly used to change the encoding mode and stream size of video data, so as to be suitable for transmission using a low-speed network, and to control the quality of the transmitted image by controlling the encoding mode and the size of the code stream during transmission. control. In the following engineering example, we explored another aspect of the application of transcoding systems by analyzing the collection of efficient video material data using the transcoding system, namely, the encapsulation and redundancy of video data encoding. Transcoding of the remaining information, and less touching the encoding mode and stream size of the video data content itself, improving the versatility of the video data generated by different digital video devices, and reducing the influence of the codec link in the transmission on the video data quality. .

Second, the application of transcoding system in centralized collection system

We designed a centralized uploading system in the Ma trox DigiSuite DTV board-based programming network to change the traditional way of uploading the editing board itself, using the multi-channel video server, high stability and flexible coding. Sexually uploading video data. The video file format generated by the server is converted into a video data format that can be used by the editing system through the transcoding system, and the video source acquired by the satellite, the existing video and audio files, and other channels are introduced into the editing network through the transcoding system. Thereby, the efficiency and flexibility of video data uploading are improved, the non-editing time spent on the uploading work of the editing site is reduced, and the video data of different compression encoding formats is conveniently introduced into the editing system.

The working principle of the scheme is to use a multi-channel video server with a storage unit as the first link of centralized uploading, and the video input channels are respectively connected with traditional pre-programs such as video recorders, cameras, and switchers. The recording control workstation controls the video server's input channel to upload the program material through the 422 control matrix, and stores it in the server's local storage unit in the video file format provided by the video server. The video server uses the Gigabit asynchronous interface to connect to the Gigabit Ethernet switch through the gateway, and uses the standard FTP protocol to transmit the video files in the server to the hard disk storage array of the program production network through the transcoding system, and provide the editing environment for editing and production. jobs.

This way of working is very flexible. Devices that traditionally use SDI, analog composite component interfaces can upload using a video server connection, and devices that provide Gigabit Ethernet interfaces, such as hard disk recorders, SONY's recorder devices with standard Ethernet interfaces, and file system-based Blu-ray disc recording devices. , P2 card devices, etc., can be connected through a standard Gigabit Ethernet interface and a Gigabit switch in a centralized upload system, through 422 control or Ethernet and control links. It is easy to use FTP to perform high-speed file uploading, and when adding these devices, there is no need to make major adjustments or changes to the system configuration and control operations for centralized upload. The transcoding system is at the core of the centralized collection system.

The transcoding system is composed of a transcoding server, a transcoding scheduling server, a user control interface, and a corresponding Ethernet network and a Fiber Channel network connection switching device. The transcoding server that is specifically responsible for transcoding work is one or several high-performance computer devices with Gigabit Ethernet and FC interfaces. The video data enters the transcoding server through the Gigabit Ethernet interface, and is transcoded and output to the hard disk storage array or other storage mechanism of the programming network through the FC port. The user adjusts the configuration of the transcoding scheduling server through the user control interface, and specifies the encoding mode and code stream of the transcoding. The transcoding scheduling server performs transcoding work by controlling the transcoding server through the Ethernet connection. The transcoding server can change the encoding mode of the video data or the format of the file encapsulation during the data migration process from the input of the Gigabit Ethernet interface to the data output from the Fiber Channel interface, and convert the video data file to the file format supported by the video server. The video file format that is recognized and available for the editing environment. Similarly, for video devices that can provide Gigabit asynchronous interfaces, the video data can be transcoded during data migration through a gateway and a Gigabit Ethernet connection.

In this mode of operation, the transcoding system can reduce the encoding mode and stream size of the video data itself as much as possible. For example, for MPEG-2 files in the server, you can change the way it is packaged and the header files are used directly for editing workstations. Similarly, all editing sites can handle the encoding used. For example, DTV boards support the encoding of MPEG-2, DV25 and DV50. Video data based on these encoding methods can be efficiently and conveniently introduced into the editing system without It is necessary to perform repeated codec work on the content data of the video data, thereby avoiding image quality loss caused by the transmission link.

Since pure transcoding operation is not the bottleneck of transcoding speed in this task, the size of transcoding time depends on the speed of the data interface, such as Gigabit Ethernet and FC interface which can theoretically provide Gigabit transmission speed. In the case of only changing the file packaging method, the file of the MPEG-2 full I frame 50M code stream can be introduced into the work at a time of 1/5~1/10 in the file duration, thereby greatly reducing the uploading of the material. Time consuming

to sum up

The above two engineering examples represent the application of the transcoding system in two directions. The transcoding system reduces the size of the code stream by changing the code stream when moving the nonlinear editing and transmitting video data, thereby improving the transmission speed. And through the file splitting method, the large block of the whole data is transformed into small pieces of scattered data, thereby reducing the transmission risk caused by the instability of the channel. In the centralized recording system application transcoding system, the high-speed and stable transmission channel is used, and the method of changing files or stream encapsulation is used to improve the versatility of the video data. And you can use high-speed FTP transmission to bring video material into the editing environment in ultra-real time.

Through the analysis of the application in these two specific projects, we can see that the application prospect of the transcoding system in the video field is very broad. Video data encoding and decoding, code stream conversion, etc., which had to be performed using expensive professional hardware devices, can now be completed by using increasingly powerful computer technology using transcoding software. At the same time, transcoding technology can also provide a good solution for the transmission, storage and versatility of video data.

The transcoding technology in the professional video field is developed from the general technology, which in turn can greatly reduce the cost of professional video equipment investment, enhance its versatility and flexibility. This successful example of using the mountain stone to specialize in general product technology has many successful examples in the industry, such as Gigabit Ethernet interface and optical disc technology in DVR and Blu-ray disc devices, such as semiconductor storage devices. Apps on P2 cards and more. We believe that the working model of this software-based transcoding system will be the next example of the results in the professional video field, and will bring another revolution in the video field.

SDKELI has been manufacturing safety light curtains for more than 20 years. Its brand [SHANGSHOU" and [SDKELI" owns largest market share in China because of reliable quality and proper price. All the safety light curtains are type 4 with CE certificate.

Safety Light Curtain

Safety Light Curtain,Safety Curtain,Laser Safety Light Curtain,Safety Optic Light Curtain,Security Light Curtain,Press Brake Safety Light Curtains

Jining KeLi Photoelectronic Industrial Co.,Ltd , http://www.sdkelien.com

Posted on