Video compression method, device and computer readable storage medium

CN114845113BActive Publication Date: 2026-10-16HUAWEI CLOUD COMPUTING TECHNOLOGIES CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202110131903.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-01-30
Publication Date
2026-10-16
Estimated Expiration
2041-01-30

AI Technical Summary

Technical Problem

虽然相关的视频编码技术能够在一定程度上缓解视频存储、网络带宽的压力,但是压力仍很大

Benefits of technology

[0057] This scheme is a lossless recompression method based on video bitstreams, which includes one or more of three operations. The first operation is the re-prediction of DCT coefficients in I-frames, replacing the original DCT coefficients in an I-frame with a smaller residual. This shortens the codewords used to encode the residuals in the I-frame, reducing the amount of data in the recompressed version. The second operation is the merging of syntax elements in I-frames, where redundant syntax elements in two adjacent I-frames are deleted, effectively reducing redundant data and further reducing the amount of data in the recompressed version. The third operation is the merging of syntax elements in P-frames, which also deletes redundant syntax elements in P-frames, similarly reducing the amount of data in the recompressed version. Furthermore, the residuals used to replace DCT coefficients in this scheme are the residuals between the DCT coefficients of two adjacent I-frames. This allows the original DCT coefficients to be calculated based on the residuals during the decoding of the recompressed video bitstream. For deleted syntax elements, the original syntax elements can also be recovered during decoding. Therefore, this scheme does not lose any information from the initial video bitstream, making it a lossless recompression method that guarantees video quality. In summary, this solution can further alleviate the pressure on video storage and network bandwidth by losslessly recompressing the video stream.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114845113B_ABST
    Figure CN114845113B_ABST
Patent Text Reader

Abstract

The embodiment of the application discloses a video compression method, device and computer readable storage medium, and belongs to the technical field of data compression. The method comprises one or more of three operations. The first operation is to replace the original DCT coefficient in the I frame with a residual error with a smaller amplitude, so that the code word used for encoding the residual error is shorter. The second operation is to delete the redundant syntax elements in the I frame. The third operation is to delete the redundant syntax elements in the P frame. It can be seen that the three operations can reduce the data amount after re-compression, and further relieve the pressure of video storage and network bandwidth. In addition, the residual error used for replacing the DCT coefficient in the present scheme is the residual error between the DCT coefficients of two adjacent I frames, so that the original DCT coefficient can be calculated based on the residual error when decoding the re-compressed video code stream, and the deleted syntax elements are only the redundant part of the same syntax elements. It can be seen that the re-compression process of the present scheme does not lose information, and is lossless re-compression.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of data compression technology, and in particular to a video compression method, apparatus, and computer-readable storage medium. Background Technology

[0002] Video compression can alleviate the pressure on network bandwidth occupied by video storage and transmission. For example, with the widespread use of surveillance, the amount of video stored by surveillance cameras is increasing, and the resolution of surveillance cameras is also improving, bringing further challenges to local storage of surveillance videos. Similarly, with the booming operation of live streaming platforms, anyone can upload and broadcast videos, leading to a dramatic increase in live video volume, which local storage can no longer meet the demand. Uploading videos to cloud platforms is an effective and feasible way to alleviate local storage pressure, but with the exponential growth of video, related cloud platforms still face significant storage pressure. To alleviate the storage pressure on local storage and cloud platform storage, the original video is encoded and compressed using video encoding technologies (such as H.264, H.265, High Efficiency Video Coding (HEVC), and next-generation Versatile Video Coding (VVC)) to obtain a smaller video stream. Although these video encoding technologies can alleviate the pressure on video storage and network bandwidth to some extent, the pressure remains significant. How to compress video to obtain a smaller video stream is a topic worthy of discussion and a challenging direction. Summary of the Invention

[0003] This application provides a video compression method, apparatus, and computer-readable storage medium, which can further alleviate the pressure on video storage and network bandwidth. The technical solution is as follows:

[0004] Firstly, a video compression method is provided, the method comprising:

[0005] Decode the initial video stream to obtain the data contained in multiple video frames. The initial video stream is obtained by compressing the original video using a basic compression device. Then, the data contained in these multiple video frames is further compressed to generate a recompressed video stream.

[0006] The recompression of the data comprising the multiple video frames includes one or more of the following operations:

[0007] A first intra-coded (I) frame is determined from the plurality of video frames. The first discrete cosine transform (DCT) coefficients included in the first I frame are replaced with a first residual. The first I frame after replacing the DCT coefficients is then recompressed. The first residual is the residual between the first DCT coefficients and the second DCT coefficients included in the second I frame, and the magnitude of the first residual is smaller than the magnitude of the first DCT coefficients. The second I frame is the I frame preceding the first I frame among the plurality of video frames.

[0008] The third I-frame is determined from the multiple video frames. The first syntax element included in the third I-frame is deleted, and the third I-frame after deleting the syntax element is recompressed. The first syntax element is the same as the second syntax element included in the fourth I-frame, and the fourth I-frame is the I-frame preceding the third I-frame among the multiple video frames.

[0009] A first predictive-coded (P) frame is determined from the plurality of video frames. The third syntax element included in the first P frame is removed, and the first P frame after removing the syntax element is recompressed. The third syntax element is the same as the fourth syntax element included in the second P frame, and the second P frame is a P frame that is different from the first P frame among the plurality of video frames.

[0010] As can be seen, this scheme is a lossless recompression method based on video bitstreams, which includes one or more of three operations. The first operation is the re-prediction of DCT coefficients in I-frames, replacing the original DCT coefficients in I-frames with residuals of smaller magnitudes. This results in shorter codewords used for encoding and compressing the residuals in I-frames, reducing the amount of data after recompression. The second operation is the merging of syntax elements in I-frames, removing redundant syntax elements and further reducing the amount of data after recompression. The third operation is the merging of syntax elements in P-frames, removing redundant syntax elements and again reducing the amount of data after recompression. Furthermore, the residuals used to replace DCT coefficients in this scheme are the residuals between the DCT coefficients of two adjacent I-frames. This allows the original DCT coefficients to be calculated based on the residuals during the decoding of the recompressed video bitstream. For deleted syntax elements, the original syntax elements can also be recovered during decoding. Therefore, this scheme does not lose any information from the initial video bitstream, is lossless recompression, and can guarantee video quality. In summary, this scheme can further alleviate the pressure on video storage and network bandwidth through lossless recompression of video bitstreams.

[0011] Optionally, the prediction basic unit to which the first DCT coefficient belongs is located at a first position in the first I-frame, and the prediction basic unit to which the second DCT coefficient belongs is located at the same first position in the second I-frame. That is, this scheme achieves re-prediction of the DCT coefficients included in the I-frame by comparing the DCT coefficients of prediction basic units at the same position between adjacent I-frames, thus enabling efficient video recompression.

[0012] Optionally, if comparing the DCT coefficients of prediction basic units at the same position, the recompressed first I-frame includes a first marker bit. The first marker bit is used to obtain the second DCT coefficients of prediction basic units at the same position as the first position in the second I-frame during the decoding process of the recompressed first I-frame, and to decode the recompressed first I-frame based on the obtained second DCT coefficients and the first residual. That is, this scheme introduces a first marker bit to distinguish between the original DCT coefficients of the I-frame and the recompressed DCT coefficients of the I-frame, and recovers the original DCT coefficients according to the indication of the first marker bit during the decoding process.

[0013] Optionally, the prediction basic unit to which the first DCT coefficient belongs is located at a first position in the first I-frame, and the prediction basic unit to which the second DCT coefficient belongs is located in a neighborhood of the same position in the second I-frame. That is, this scheme can also compare the DCT coefficients of prediction basic units in the neighborhood to achieve re-prediction of the DCT coefficients included in the I-frame. This can reduce the amplitude of the DCT coefficients of more prediction basic units, resulting in a smaller data volume in the compressed I-frame.

[0014] Optionally, if comparing the DCT coefficients of the prediction basic units within the neighborhood, the recompressed first I-frame includes a first coordinate, which indicates the position of the prediction basic unit to which the second DCT coefficient belongs in the second I-frame. The first coordinate is used during the decoding of the recompressed first I-frame to obtain the second DCT coefficient of the prediction basic unit at the corresponding position in the second I-frame, and then decodes the recompressed first I-frame based on the obtained second DCT coefficient and the first residual. That is, this scheme introduces a first coordinate (such as the coordinates of a first rectangular frame) to indicate that the corresponding I-frame includes the recompressed DCT coefficients, and the original DCT coefficients can be decoded and recovered based on the position indicated by the first coordinate.

[0015] Optionally, the neighborhood range is determined based on the motion vectors included in the P-frames between the first I-frame and the second I-frame. That is, in order to further improve the search speed, reduce the search time, and improve the compression efficiency, this scheme narrows the neighborhood range based on the motion vectors of the P-frames.

[0016] Optionally, the prediction basic unit to which the first syntax element belongs is located at the second position in the third I-frame, and the prediction basic unit to which the second syntax element belongs is located at the same position in the fourth I-frame. That is, this scheme achieves re-prediction (i.e., merging and removing redundant data) of the syntax elements included in the I-frame by comparing the syntax elements of the prediction basic units at the same position between adjacent I-frames, thus enabling efficient video re-compression.

[0017] Optionally, if comparing the syntax elements of prediction basic units at the same position, the recompressed third I-frame includes a second marker bit. The second marker bit is used during the decoding of the recompressed third I-frame to obtain the second syntax element of the prediction basic unit at the same position as the second position in the fourth I-frame, and inserts the obtained second syntax element into the recompressed third I-frame for decoding. That is, this scheme introduces a second marker bit to distinguish between the original syntax elements of the I-frame and the recompressed syntax elements of the I-frame, and recovers the original syntax elements according to the indication of the second marker bit during the decoding process.

[0018] Optionally, the prediction basic unit to which the first syntax element belongs is located at the second position in the third I-frame, and the prediction basic unit to which the second syntax element belongs is located in the neighborhood of the same position in the fourth I-frame. That is, this scheme can also compare the syntax elements of the prediction basic units in the neighborhood to achieve re-prediction of the syntax elements included in the I-frame. This can remove more redundant syntax elements in the prediction basic units, and the data volume of the compressed I-frame is smaller.

[0019] Optionally, if comparing the syntax elements of the prediction basic units within the neighborhood, the recompressed third I-frame includes a second coordinate, which indicates the position of the prediction basic unit to which the second syntax element belongs in the fourth I-frame. The second coordinate is used during the decoding of the recompressed third I-frame to obtain the second syntax element of the prediction basic unit at the corresponding position in the fourth I-frame, and inserts the obtained second syntax element into the recompressed third I-frame for decoding. That is, this scheme introduces a second coordinate (such as a second rectangular frame coordinate) to indicate that the corresponding I-frame includes the recompressed syntax element, and the original syntax element can be decoded and recovered based on the position indicated by the second coordinate.

[0020] Optionally, the neighborhood range is determined based on the motion vectors included in the P-frames between the third I-frame and the fourth I-frame. That is, in order to further improve the search speed, reduce the search time, and improve the compression efficiency, this scheme narrows the neighborhood range based on the motion vectors of the P-frames.

[0021] Optionally, the prediction basic unit to which the third syntax element belongs is located at the third position in the first P-frame, and the prediction basic unit of the fourth syntax element is located at the same position as the third position in the second P-frame. That is, this scheme achieves re-prediction (i.e., merging and removing redundant data) of the syntax elements included in the P-frame by comparing the syntax elements of the prediction basic units at the same position between P-frames, thus enabling efficient video re-compression.

[0022] Optionally, if comparing the syntax elements of prediction basic units at the same position, the recompressed first P-frame includes a third marker bit. The third marker bit is used during the decoding of the recompressed first P-frame to obtain the fourth syntax element of the prediction basic unit at the same position as the third position in the second P-frame, and inserts the obtained fourth syntax element into the recompressed first P-frame for decoding. That is, this scheme introduces a third marker bit to distinguish between the original syntax elements of the P-frame and the syntax elements of the recompressed P-frame, and recovers the original syntax elements based on the indication of the third marker bit during the decoding process.

[0023] Optionally, the first P-frame and the second P-frame belong to a first group of pictures (GOP), the second P-frame precedes the first P-frame, and multiple video frames include the first GOP. That is, since encoding and decoding are based on GOPs as the unit of access, this scheme performs syntax element re-prediction on P-frames within the same GOP.

[0024] Optionally, the basic prediction unit in this embodiment is a macroblock or a coding unit. That is, this solution is compatible with relevant video coding standard technologies and has compatibility and scalability.

[0025] Secondly, a video compression apparatus is provided, which has the function of implementing the video compression method described in the first aspect above. The video compression apparatus includes one or more modules for implementing the video compression method provided in the first aspect above.

[0026] That is, a video compression device is provided, the device comprising:

[0027] The decoding module is used to decode the initial video stream to obtain the data included in multiple video frames. The initial video stream is obtained by compressing the original video using a basic compression device.

[0028] The recompression module is used to recompress the data included in the multiple video frames to generate a recompressed video stream;

[0029] The recompression module includes one or more of the following sub-modules:

[0030] The first recompression submodule is used to determine the first I-frame from the plurality of video frames, replace the first discrete cosine transform (DCT) coefficients included in the first I-frame with the first residual, and recompress the first I-frame after replacing the DCT coefficients. The first residual is the residual between the first DCT coefficients and the second DCT coefficients included in the second I-frame. The magnitude of the first residual is smaller than the magnitude of the first DCT coefficients. The second I-frame is the I-frame preceding the first I-frame among the plurality of video frames.

[0031] The second recompression submodule is used to determine the third internally encoded I-frame from the plurality of video frames, delete the first syntax element included in the third I-frame, and recompress the third I-frame after deleting the syntax element. The first syntax element is the same as the second syntax element included in the fourth I-frame. The fourth I-frame is the I-frame preceding the third I-frame in the plurality of video frames.

[0032] The third recompression submodule is used to determine the first P-frame from the plurality of video frames, delete the third syntax element included in the first P-frame, and recompress the first P-frame after deleting the syntax element. The third syntax element is the same as the fourth syntax element included in the second P-frame. The second P-frame is a P-frame that is different from the first P-frame among the plurality of video frames.

[0033] Optionally, the prediction basic unit to which the first DCT coefficient belongs is located at a first position in the first I-frame, and the prediction basic unit to which the second DCT coefficient belongs is located at the same first position in the second I-frame.

[0034] Optionally, the recompressed first I-frame includes a first marker bit;

[0035] The first flag is used to obtain the second DCT coefficients of the prediction basic unit in the second I-frame that is at the same position as the first position during the decoding and recompression of the first I-frame, and to decode the recompressed first I-frame based on the obtained second DCT coefficients and the first residual.

[0036] Optionally, the prediction basic unit to which the first DCT coefficient belongs is located at a first position in the first I-frame, and the prediction basic unit to which the second DCT coefficient belongs is located in the neighborhood of the same position as the first position in the second I-frame.

[0037] Optionally, the recompressed first I-frame includes a first coordinate, which indicates the position of the prediction basic unit to which the second DCT coefficient belongs in the second I-frame;

[0038] The first coordinate is used to obtain the second DCT coefficient of the prediction basic unit at the corresponding position in the second I-frame according to the position indicated by the first coordinate during the decoding and recompression of the first I-frame, and to decode the recompressed first I-frame based on the obtained second DCT coefficient and the first residual.

[0039] Optionally, the range of the neighborhood is determined based on the motion vectors included in the P-frame between the first I-frame and the second I-frame.

[0040] Optionally, the prediction basic unit to which the first syntax element belongs is located at the second position in the third I-frame, and the prediction basic unit to which the second syntax element belongs is located at the same position in the fourth I-frame as the second position.

[0041] Optionally, the recompressed third I-frame includes a second marker bit;

[0042] The second flag is used to obtain the second syntax element of the prediction basic unit in the fourth I-frame that has the same position as the second position during the decoding of the recompressed third I-frame, and insert the obtained second syntax element into the recompressed third I-frame to decode the recompressed third I-frame.

[0043] Optionally, the prediction basic unit to which the first syntax element belongs is located at the second position in the third I-frame, and the prediction basic unit to which the second syntax element belongs is located in the neighborhood of the same position as the second position in the fourth I-frame.

[0044] Optionally, the recompressed third I-frame includes a second coordinate indicating the position of the prediction basic unit to which the second syntax element belongs in the fourth I-frame;

[0045] The second coordinate is used to obtain the second syntax element of the prediction basic unit at the corresponding position in the fourth I-frame according to the position indicated by the second coordinate during the decoding of the recompressed third I-frame, and insert the obtained second syntax element into the recompressed third I-frame to decode the recompressed third I-frame.

[0046] Optionally, the range of the neighborhood is determined based on the motion vectors included in the P-frame between the third I-frame and the fourth I-frame.

[0047] Optionally, the prediction basic unit of the third syntax element is located at the third position in the first P frame, and the prediction basic unit of the fourth syntax element is located at the same position as the third position in the second P frame.

[0048] Optionally, the recompressed first P-frame includes a third marker bit;

[0049] The third flag is used to obtain the fourth syntax element of the prediction basic unit in the second P frame that is at the same position as the third position during the decoding of the first P frame after recompression. The obtained fourth syntax element is then inserted into the first P frame after recompression to decode the first P frame after recompression.

[0050] Optionally, the first P-frame and the second P-frame belong to a first group of images (GOP), the second P-frame precedes the first P-frame, and multiple video frames include the first GOP.

[0051] Optionally, the basic unit of prediction is a macroblock or a coding unit.

[0052] Thirdly, a video compression apparatus is provided, comprising a processor and a memory. The memory stores a program that supports the video compression apparatus in executing the video compression method provided in the first aspect, and stores data related to implementing the video compression method provided in the first aspect. The processor is configured to execute the program stored in the memory. The operating means of the storage device may further include a communication bus for establishing a connection between the processor and the memory.

[0053] Fourthly, a computer-readable storage medium is provided, wherein instructions are stored therein, which, when executed on a computer, cause the computer to perform the video compression method described in the first aspect.

[0054] Fifthly, a computer program product containing instructions is provided, which, when run on a computer, causes the computer to perform the video compression method described in the first aspect.

[0055] The technical effects achieved by the second, third, fourth, and fifth aspects mentioned above are similar to those achieved by the corresponding technical means in the first aspect, and will not be repeated here.

[0056] The beneficial effects of the technical solutions provided in this application include at least the following:

[0057] This scheme is a lossless recompression method based on video bitstreams, which includes one or more of three operations. The first operation is the re-prediction of DCT coefficients in I-frames, replacing the original DCT coefficients in an I-frame with a smaller residual. This shortens the codewords used to encode the residuals in the I-frame, reducing the amount of data in the recompressed version. The second operation is the merging of syntax elements in I-frames, where redundant syntax elements in two adjacent I-frames are deleted, effectively reducing redundant data and further reducing the amount of data in the recompressed version. The third operation is the merging of syntax elements in P-frames, which also deletes redundant syntax elements in P-frames, similarly reducing the amount of data in the recompressed version. Furthermore, the residuals used to replace DCT coefficients in this scheme are the residuals between the DCT coefficients of two adjacent I-frames. This allows the original DCT coefficients to be calculated based on the residuals during the decoding of the recompressed video bitstream. For deleted syntax elements, the original syntax elements can also be recovered during decoding. Therefore, this scheme does not lose any information from the initial video bitstream, making it a lossless recompression method that guarantees video quality. In summary, this solution can further alleviate the pressure on video storage and network bandwidth by losslessly recompressing the video stream. Attached Figure Description

[0058] Figure 1 This is a schematic diagram of the structure of a computer device provided in an embodiment of this application;

[0059] Figure 2 This is a flowchart of a video compression method provided in an embodiment of this application;

[0060] Figure 3 This is an overall framework diagram of a video compression method provided in an embodiment of this application;

[0061] Figure 4 This is a schematic diagram of the video compression device provided in the embodiments of this application. Detailed Implementation

[0062] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the implementation methods of this application will be further described in detail below with reference to the accompanying drawings.

[0063] To facilitate understanding of the embodiments of this application, some terms involved in the embodiments of this application will be introduced first.

[0064] Basic compression methods: Video compression methods based on international video coding standards. Examples include H.264, H.265, HEVC, VVC, and the Audio Video Coding Standard (AVS), which are international video coding standards based on a hybrid framework of intra / inter-frame prediction and transform coding.

[0065] Initial video stream: The video stream obtained by compressing the original video using basic compression methods.

[0066] GOP: Group of Pictures. The initial video stream consists of multiple GOPs. A GOP is a group of consecutive frames, composed of I-frames, P-frames, and / or B-frames, and is the basic unit accessed by video image encoders and decoders.

[0067] I-frame: An intra-coded frame, also known as a keyframe. I-frames use compression techniques based on discrete cosine transform (DCT) and are generated without referencing other frames. I-frames describe details of the image background and moving subjects, and the complete image can be reconstructed using only the data from I-frames during decoding. I-frames are usually the first frame of each Group of Pictures (GOP) and serve as reference frames for random access.

[0068] P-frame: Forward predictive-coded frame, also known as forward predictive frame (forward reference frame). A P-frame represents the difference between this frame and a previous keyframe (or P-frame). P-frames use motion compensation to transmit the prediction error and motion vectors between themselves and the preceding I or P-frames. During decoding, the differences represented by this frame are superimposed on the previously buffered images to generate a complete image.

[0069] B-frame: Bidirectionally predicted frame, also known as a bidirectional interpolation frame or bidirectional reference frame. A B-frame uses the preceding I-frame or P-frame and the following P-frame as reference frames. The B-frame transmits the prediction error and motion vectors between itself and the two reference frames. During decoding, the motion vectors and prediction error are combined with the two reference frames to obtain the complete image.

[0070] Prediction basic unit (PB): The fundamental unit of coding. Examples include macroblocks (MBs) defined in H.264, and coding units (CUs) defined in HEVC, VVC, and AVS. By dividing each frame into multiple prediction PBs, different compression strategies are applied to different locations within the image. In video coding, an image is typically divided into several prediction PBs. Within each image, these prediction PBs are arranged in a sheet-like structure, and the video coding algorithm encodes each prediction PB one by one, using these prediction PBs as the basic unit.

[0071] Figure 1 This is a schematic diagram of the structure of a computer device provided in this embodiment. See also: Figure 1 The computer device includes at least one processor 101, a communication bus 102, a memory 103, and at least one communication interface 104.

[0072] The processor 101 may be a general-purpose central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits used to control the execution of the program of the present application.

[0073] The communication bus 102 may include a path for transmitting information between the aforementioned components.

[0074] The memory 103 may be a read-only memory (ROM) or other type of static storage device capable of storing static information and instructions, random access memory (RAM) or other type of dynamic storage device capable of storing information and instructions, or electrically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, digital versatile optical discs, Blu-ray discs, etc.), magnetic disks or other magnetic storage devices, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but not limited thereto. The memory 103 may exist independently and be connected to the processor 101 via the communication bus 102. The memory 103 may also be integrated with the processor 101.

[0075] The memory 103 stores program code for executing the scheme of this application, and its execution is controlled by the processor 101. The processor 101 executes the program code stored in the memory 103. The program code may include one or more software modules, and the computer device can implement the following through the processor 101 and the program code in the memory 103. Figure 2 The embodiment provides a video compression method. Exemplarily, when... Figure 4 In the illustrated embodiment, when the decoding module 401 and the recompression module 402 are implemented in software, the program code may include a decoding module and a recompression module. The decoding module is used to decode the initial video bitstream to obtain data of multiple video frames, and the recompression module is used to recompress the data of the multiple video frames to generate a recompressed video bitstream.

[0076] Communication interface 104 uses any transceiver-like device for communicating with other devices or communication networks, such as Ethernet, radio access network (RAN), wireless local area network (WLAN), etc.

[0077] In some embodiments, a computer device may include multiple processors, for example Figure 1The processors 101 and 105 shown are illustrated. Each of these processors can be a single-core (single-CPU) processor or a multi-core (multi-CPU) processor. Here, "processor" can refer to one or more devices, circuits, and / or processing cores used to process data (e.g., computer program instructions).

[0078] In other embodiments, the computer device may further include an output device 106 and an input device 107. The output device 106 communicates with the processor 101 and can display information in various ways. For example, the output device 106 may be a liquid crystal display (LCD), a light-emitting diode (LED) display device, a cathode ray tube (CRT) display device, or a projector, etc. The input device 107 communicates with the processor 101 and can receive user input in various ways. For example, the input device 107 may be a mouse, keyboard, touchscreen device, or sensing device, etc.

[0079] The aforementioned computer device can be a general-purpose computer device or a special-purpose computer device. In specific implementations, the computer device can be a desktop computer, a portable computer, a network server, a handheld digital assistant (PDA), a mobile phone, a tablet computer, a wireless terminal device, a communication device, or an embedded device. This application does not limit the type of computer device.

[0080] Figure 2 This application provides a flowchart of a video compression method, taking the application of this method to a computer device as an example. Figure 2 The method includes:

[0081] 201: Decode the initial video stream to obtain data from multiple video frames. The initial video stream is obtained by compressing the original video using basic compression methods.

[0082] In this embodiment, the video bitstream is further compressed to reduce the amount of compressed data. A computer device decodes the initial video bitstream to obtain data from multiple video frames. The initial video bitstream is obtained by compressing the original video using a basic compression method, such as compression methods based on video coding standards like H.264, H.265, HEVC, VVC, and AVS.

[0083] The multiple video frames include I-frames and P-frames. I-frame data includes DCT coefficients, syntax elements, etc., while P-frame data includes syntax elements, etc. It should be noted that DCT coefficients refer to the residual DCT coefficients obtained by decoding the initial video stream according to the video coding standard, without inverse quantization and scaling. The syntax elements included in I-frames are intra-frame syntax elements, which are syntax elements annotated with intra-prediction obtained by decoding the initial video stream according to the video coding standard. Intra-frame syntax elements include, but are not limited to, prediction basic unit type, intra-prediction flag bits, and intra-prediction mode. The syntax elements included in P-frames are inter-frame syntax elements, which are syntax elements annotated with inter-prediction obtained by decoding the initial video stream according to the video coding standard. Inter-frame syntax elements include, but are not limited to, prediction basic unit type, quantization coefficients, luma / chroma coding mode, motion vectors, etc.

[0084] 202: Recompress the data contained in the multiple video frames to generate a recompressed video stream.

[0085] In this embodiment, after decoding the initial video stream, the data included in the multiple video frames is recompressed to generate a recompressed video stream. It should be noted that in this embodiment, the initial video stream is decoded and recompressed simultaneously to improve compression efficiency. For example, if a single video frame is decoded, that frame is recompressed; similarly, if a group of pictures (GOPs) is decoded, the video frames included in that GOP are recompressed. In other embodiments, the multiple video frames are recompressed only after all the initial video stream has been decoded.

[0086] It should be noted that the embodiments of this application implement targeted recompression schemes for different types of frames based on their respective characteristics. These schemes can be used individually or in combination, and the embodiments of this application do not limit this. For example, one or more schemes can be selected and combined from the various schemes provided in the embodiments of this application according to compression speed requirements, compression ratio requirements, etc. The three recompression schemes provided in the embodiments of this application will be described below in 2021, 2022, and 2023 respectively.

[0087] 2021: DCT coefficient re-prediction for I-frames.

[0088] In this embodiment, the DCT coefficient re-prediction of an I-frame includes: determining a first I-frame from the plurality of video frames, replacing the first DCT coefficients included in the first I-frame with a first residual, and recompressing the first I-frame after replacing the DCT coefficients. The first residual is the residual between the first DCT coefficients and the second DCT coefficients included in the second I-frame, the magnitude of the first residual being smaller than the magnitude of the first DCT coefficients, and the second I-frame being the I-frame preceding the first I-frame among the plurality of video frames.

[0089] In other words, if two adjacent I-frames obtained from decoding have similar DCT coefficients, the DCT coefficients of the latter I-frame are replaced with the residual between these two similar DCT coefficients. This results in a shorter codeword for the residual in the compressed I-frame. For example, if two adjacent I-frames have the same DCT coefficients, the residual between these two DCT coefficients is zero, and zero can be encoded with just one bit, effectively reducing the number of bits required to encode the original DCT coefficients. Simply put, this scheme re-compresses I-frames by re-predicting DCT coefficients.

[0090] Optionally, it is assumed that the DCT coefficients are represented by a matrix, the magnitude of the DCT coefficients refers to the sum of the absolute values ​​of the elements included in the DCT coefficients, the residual of two DCT coefficients refers to the difference obtained by subtracting the two DCT coefficients, and the magnitude of the residual refers to the sum of the absolute values ​​of the elements included in the residual.

[0091] In this embodiment, the search for similar DCT coefficients between two adjacent I-frames is performed using the prediction basic unit of the video frame as the unit. It should be noted that there are multiple ways to implement the search for similar DCT coefficients in this embodiment; one such implementation will be described below.

[0092] In one implementation provided in this application, the DCT coefficients of prediction basic units at the same position in two adjacent I-frames are compared to see if they are similar. That is, the computer device obtains the DCT coefficients of prediction basic units at the same position in two adjacent I-frames, obtains two DCT coefficients, and determines whether the magnitude of the residual between these two DCT coefficients is less than the magnitude of the DCT coefficient of the prediction basic unit at that position in the subsequent I-frame. It should be noted that a video frame includes multiple prediction basic units, and the division of prediction basic units in multiple video frames is consistent. Therefore, two adjacent I-frames include multiple pairs of prediction basic units at the same position. Optionally, the computer device compares the DCT coefficients of each pair of prediction basic units at the same position. If they are similar, the corresponding residual replaces the DCT coefficient of the prediction basic unit at the corresponding position in the subsequent I-frame. Thus, for one I-frame, the DCT coefficients of one or more prediction basic units at different positions may be replaced.

[0093] The two prediction basic units belonging to the two similar DCT coefficients found by the first implementation method described above are in the same position in two adjacent I-frames. That is, if the prediction basic unit to which the first DCT coefficient belongs is in the first position in the first I-frame, then the prediction basic unit to which the second DCT coefficient belongs is in the same position as the first position in the second I-frame.

[0094] Optionally, when the prediction basic units to which similar DCT coefficients belong are located in the same position in two adjacent I-frames, the recompressed first I-frame includes a first flag bit. This first flag bit is used to obtain the second DCT coefficients of the prediction basic units in the second I-frame that are located in the same position as the first flag bit during the decoding process of the recompressed first I-frame. The recompressed first I-frame is then decoded based on the obtained second DCT coefficients and the first residual. The first residual is the recompressed DCT coefficient. That is, this scheme introduces a first flag bit to distinguish between the original DCT coefficients of the I-frame (which can be called the original intra-frame DCT coefficients) and the recompressed DCT coefficients of the I-frame (which can be called the predicted intra-frame DCT coefficients).

[0095] For example, a first flag bit with a specified value (such as '1') is inserted at the position of the first DCT coefficients included in the decoded first I-frame. When decoding to this position in the recompressed first I-frame, the computer device knows that the second DCT coefficients need to be obtained based on the first flag bit, and calculates the original first DCT coefficients in combination with the first residual to decode the recompressed first I-frame. Optionally, the first flag bit is one bit. A value of '1' indicates that the DCT coefficients (i.e., the first residual) at the corresponding position are recompressed DCT coefficients, and a value of '0' indicates that the DCT coefficients at the corresponding position are the original DCT coefficients, i.e., the DCT coefficients that have not undergone re-prediction.

[0096] As described above, for two adjacent I-frames, there may be cases where the DCT coefficients of prediction basic units at the same position are dissimilar. That is, the DCT coefficient of a prediction basic unit at a certain position in one I-frame is not similar to the DCT coefficient of a prediction basic unit at the same position in the previous I-frame. Optionally, in this case, a search is performed on the neighborhood of that position in the previous I-frame to see if there are prediction basic units with similar DCT coefficients. Thus, if the prediction basic unit to which the first DCT coefficient belongs is located at the first position in the first I-frame, then the prediction basic unit to which the second DCT coefficient belongs is located in the neighborhood of the same position as the first position in the second I-frame.

[0097] In this embodiment, it is assumed that a similar DCT coefficient search is performed on the predicted basic unit at the reference position in an I-frame, and the neighborhood range includes all predicted basic units at positions other than the reference position in the previous I-frame. Alternatively, to narrow the search range and reduce search time, the neighborhood range includes the row and / or column where the predicted basic unit at the reference position in the previous I-frame is located. That is, multiple predicted basic units to the left and right of the current predicted basic unit are scanned and searched using a raster scan method, or multiple predicted basic units above and below the current predicted basic unit are scanned and searched using a raster scan method, or multiple predicted basic units to the left, right, above, and below the current predicted basic unit are scanned and searched using a raster scan method. Here, the current predicted basic unit refers to the predicted basic unit at the reference position in the previous I-frame. Optionally, this larger-range search method is a direct prediction of the DCT coefficients.

[0098] Optionally, to further improve search speed, reduce search time, and improve compression efficiency, the neighborhood range is determined based on the motion vectors included in the P-frames between the first I-frame and the second I-frame, i.e., narrowing the search range. For example, the motion vectors included in the P-frames preceding the first I-frame are traced back within the GOP to which the first I-frame belongs. Assuming that the motion vectors included in the P-frames indicate that the motion direction of the latter I-frame relative to the former I-frame is upward to the right, the neighborhood range can include the prediction basic units above and to the right of the current prediction basic unit. In other embodiments, assuming that there are also B-frames between two adjacent I-frames, the neighborhood range is determined based on the motion vectors of the P-frames and / or B-frames between the first and second I-frames. Optionally, this smaller search range is an indirect prediction of DCT coefficients.

[0099] Optionally, when the prediction basic units to which similar DCT coefficients belong are located in different positions in two adjacent I-frames, the recompressed first I-frame includes a first coordinate indicating the position of the prediction basic unit to which the second DCT coefficients belong in the second I-frame. The first coordinate is used to obtain the second DCT coefficients of the prediction basic unit at the corresponding position in the second I-frame during the decoding of the recompressed first I-frame, based on the position indicated by the first coordinate, and to decode the recompressed first I-frame according to the obtained second DCT coefficients and the first residual.

[0100] Optionally, the first coordinates are the coordinates of a first rectangular frame, that is, the first coordinates include the coordinates of the two diagonal vertices of the rectangular frame that indicates the position of the prediction basic unit to which the second DCT coefficient belongs in the second I-frame.

[0101] It should be noted that if DCT coefficients at the same location are similar, a first marker bit is inserted. If similar DCT coefficients are found in the neighborhood, a first coordinate is inserted, or a first marker bit can also be inserted. For the DCT coefficients of a prediction basic unit at any location in an I-frame, if no similar DCT coefficients are found in the prediction basic units at the same location and in the neighborhood of the previous I-frame, it means that the DCT coefficients of this I-frame cannot be compressed further. Optionally, a first marker bit with another specified value (such as '0') is inserted in this I-frame to indicate that the DCT coefficients of the prediction basic unit at the corresponding location are the original DCT coefficients.

[0102] Optionally, when searching both the same position and its neighborhood, the search stops when the first similar DCT coefficient is found, and this first similar DCT coefficient is used as the second DCT coefficient. Alternatively, if the difference between the found DCT coefficient and the first DCT coefficient meets a condition (e.g., the difference is less than a specified threshold), the search stops, and this similar DCT coefficient is used as the second DCT coefficient. Alternatively, to find the most similar DCT coefficient, minimizing the magnitude of the first residual and reducing the codewords used for encoding and compression, the search is performed on the DCT coefficients of all prediction basic units within the same position and neighborhood, and the DCT coefficient with the smallest residual compared to the first DCT coefficient is used as the second DCT coefficient.

[0103] 2022: Syntax element merging for I-frames.

[0104] In this embodiment, merging the syntax elements of an I-frame includes: determining a third I-frame from the plurality of video frames, deleting the first syntax element included in the third I-frame, and recompressing the third I-frame after deleting the syntax element. The first syntax element is the same as the second syntax element included in the fourth I-frame, and the fourth I-frame is the I-frame preceding the third I-frame among the plurality of video frames.

[0105] In other words, if two adjacent I-frames obtained by decoding have the same syntax elements, it means that the syntax elements of the I-frames are redundant. In this way, the redundant syntax elements included in the latter I-frame are deleted, that is, the syntax elements of the I-frames are merged. This recompression of the I-frames can effectively reduce the amount of data.

[0106] Similar to the aforementioned DCT coefficient re-prediction, in this embodiment, the same syntax elements included in two adjacent I-frames are searched using the prediction basic unit of the video frame as the unit. Similarly, the search for syntax elements also includes comparison of the same position, or, if the syntax elements at the same position are different, further searching for the same syntax elements in the neighborhood.

[0107] That is, in one scenario, the prediction basic unit to which the first syntax element belongs is at position two in the third I-frame, and the prediction basic unit to which the second syntax element belongs is at position two in the fourth I-frame. Optionally, the computer device obtains the syntax elements of prediction basic units at the same position in two adjacent I-frames, obtains two syntax elements, and determines whether these two syntax elements are the same. As mentioned above, a video frame includes multiple prediction basic units, and the division of prediction basic units in multiple video frames is consistent. Therefore, two adjacent I-frames include multiple pairs of prediction basic units at the same position. Optionally, the computer device compares the syntax elements of each pair of prediction basic units at the same position. If they are the same, the syntax element of the prediction basic unit at the corresponding position in the subsequent I-frame is deleted. Thus, for an I-frame, it is possible to delete the syntax elements of prediction basic units at one or more positions.

[0108] Optionally, in this case, the recompressed third I-frame includes a second flag bit. This second flag bit is used to obtain the second syntax element of the prediction basic unit in the fourth I-frame that has the same position as the second position during the decoding process of the recompressed third I-frame. The obtained second syntax element is then inserted into the recompressed third I-frame for decoding. That is, the second flag bit is introduced to distinguish between the original syntax elements of the I-frame (which can be called the original intra-frame syntax elements) and the syntax elements of the recompressed I-frame (which can be called the prediction intra-frame syntax elements).

[0109] For example, a second flag bit with a specified value (such as '1') is inserted at the position of the first syntax element included in the decoded third I-frame. When decoding to this position in the recompressed third I-frame, the computer device knows from the second flag bit that it needs to obtain the second syntax element included in the previous I-frame and insert it at this position to decode the recompressed third I-frame. Optionally, the second flag bit is one bit. A value of '1' indicates that the syntax element at the corresponding position is a recompressed syntax element (i.e., a merged syntax element), and a value of '0' indicates that the syntax element at the corresponding position is the original syntax element, i.e., a syntax element that has not undergone re-prediction (merging).

[0110] As described above, for two adjacent I-frames, there may be cases where the syntax elements of prediction basic units at the same position are different. That is, the syntax element of a prediction basic unit at a certain position in one I-frame is not the same as the syntax element of a prediction basic unit at the same position in the previous I-frame. Optionally, in this case, the neighborhood of that position in the previous I-frame is searched to see if there are prediction basic units with the same syntax elements. Thus, if the prediction basic unit to which the first syntax element belongs is at the second position in the third I-frame, then the prediction basic unit to which the second syntax element belongs is located in the neighborhood of the same position as the second position in the fourth I-frame. The range of the neighborhood is described in the aforementioned section on searching similar DCT coefficients. Optionally, in this embodiment, the range of the neighborhood is determined based on the motion vectors included in the P-frames between the third and fourth I-frames to improve the search speed. The specific implementation method is described in the aforementioned section and will not be repeated here.

[0111] Optionally, in this case, the recompressed third I-frame includes a second coordinate indicating the position of the prediction basic unit to which the second syntax element belongs in the fourth I-frame. The second coordinate is used to, during the decoding of the recompressed third I-frame, obtain the second syntax element of the prediction basic unit at the corresponding position in the fourth I-frame according to the position indicated by the second coordinate, and insert the obtained second syntax element into the recompressed third I-frame for decoding.

[0112] Optionally, the second coordinates are the coordinates of the second rectangular box, that is, the second coordinates include the coordinates of the two diagonal vertices of the rectangular box that indicates the position of the prediction basic unit to which the second syntax element belongs in the fourth I-frame.

[0113] It should be noted that if syntax elements at the same position are identical, a second marker bit is inserted. If the same syntax element is found in the neighborhood, a second coordinate is inserted, or a second marker bit can also be inserted. For the syntax element of a prediction basic unit at any position in an I-frame, if the same syntax element is not found in the prediction basic units at the same position and in the neighborhood in the previous I-frame, it means that the syntax element of this I-frame cannot be merged, that is, it cannot be compressed further. Optionally, a second marker bit with another specified value (such as '0') is inserted in this I-frame to indicate that the syntax element of the prediction basic unit at the corresponding position is the original syntax element and has not been deleted during compression.

[0114] Optionally, the above method of re-predicting the syntax elements of an I-frame by comparing the syntax elements between adjacent I-frames can be regarded as a way of determining whether syntax elements are the same by using a collision method.

[0115] 2023: Syntax element merging for P-frames.

[0116] In this embodiment of the application, the merging of syntax elements of a P-frame includes: determining a first P-frame from the plurality of video frames, deleting the third syntax element included in the first P-frame, and recompressing the first P-frame after deleting the syntax element. The third syntax element is the same as the fourth syntax element included in the second P-frame, and the second P-frame is a P-frame that is different from the first P-frame among the plurality of video frames.

[0117] In other words, if multiple P-frames obtained from decoding include the same syntax elements, it means that the syntax elements of the P-frames are redundant. In this way, the redundant syntax elements in the P-frames are deleted, that is, the syntax elements of the P-frames are merged. This recompression of the P-frames can effectively reduce the amount of data.

[0118] In this embodiment, the syntax elements of P-frames are merged on a per-prediction-basic-unit basis. Optionally, the prediction-basic-unit to which the third syntax element belongs is located in the third position in the first P-frame, and the prediction-basic-unit to which the fourth syntax element belongs is located in the same position as the third position in the second P-frame. That is, in this embodiment, redundant syntax elements at the same position are merged for P-frames.

[0119] Optionally, the recompressed first P-frame includes a third marker bit. This third marker bit is used during the decoding process of the recompressed first P-frame to obtain the fourth syntax element of the prediction basic unit in the second P-frame that has the same position as the third position. The obtained fourth syntax element is then inserted into the recompressed first P-frame for decoding. Optionally, the third marker bit is called a group image mask (GOP_MASK). That is, the third marker bit is introduced to distinguish between the original syntax elements of the P-frame and the syntax elements of the recompressed P-frame.

[0120] For example, a third flag bit with a specified value (such as '1') is inserted at the position of the third syntax element included in the decoded first P-frame. When decoding to this position in the recompressed first P-frame, the computer device determines, based on the third flag bit, that it needs to obtain the fourth syntax element included in the preceding P-frame and insert it at this position to decode the recompressed first P-frame. Optionally, the third flag bit is one bit. A value of '1' indicates that the syntax element at the corresponding position is a recompressed syntax element (i.e., a merged syntax element), and a value of '0' indicates that the syntax element at the corresponding position is the original syntax element, i.e., a syntax element that has not undergone re-prediction (merging).

[0121] Optionally, since the encoder and decoder encode and decode using GOPs as the access unit, this scheme merges identical syntax elements among multiple P-frames belonging to the same GOP. The first and second P-frames belong to the first GOP, and the second P-frame precedes the first P-frame; these multiple video frames include the first GOP. That is, for any syntax element of the prediction basic unit at any position in any P-frame, if a syntax element identical to that element exists in one or more preceding P-frames, then that syntax element in the P-frame is deleted. Thus, for the P-frames in a GOP with identical syntax elements, only the syntax element from the first P-frame in this group is retained.

[0122] As mentioned above, if the syntax element of a prediction basic unit at a certain position in a P-frame is different from all syntax elements included in previous P-frames, then the syntax element included in that P-frame is not recompressed, i.e., not deleted. Optionally, in this case, intra-frame syntax element re-prediction is performed on the P-frame, that is, the multiple syntax elements included in the P-frame that have not yet been deleted are re-predicted, the common syntax elements among these multiple syntax elements are identified, redundant syntax elements are deleted, and only one of the common syntax elements is included. Optionally, in this case, the recompressed P-frame also includes a third coordinate, which indicates the position in the P-frame of the prediction basic unit to which the syntax element that is the same as the deleted syntax element at the corresponding position belongs. The third coordinate is used to obtain the syntax element of the prediction basic unit at the corresponding position in the P-frame according to the position indicated by the third coordinate during the decoding of the recompressed P-frame, and insert the obtained syntax element into the recompressed P-frame to decode the recompressed P-frame.

[0123] Optionally, the third coordinate is the coordinate of the third rectangular frame, that is, the second coordinate includes the coordinates of the two diagonal vertices of the rectangular frame that indicates the position of the prediction basic unit to which the syntax element reserved in the corresponding P-frame belongs in that P-frame.

[0124] In the embodiments of this application, if DCT coefficient re-prediction and syntax element merging are performed on an I-frame, the two operations are performed synchronously for the same I-frame to improve compression efficiency. That is, during the decoding of the initial video bitstream, each time the data of an I-frame is obtained, it is compared synchronously with the DCT coefficients and syntax elements of the previous I-frame, such as synchronously comparing the DCT coefficients and syntax elements at the same position or a certain position in the neighborhood.

[0125] Optionally, the method for recompressing the I-frame after replacing the DCT coefficients, the I-frame after deleting the syntax elements, and the P-frame after deleting the syntax elements can be a context-based adaptive binary arithmetic coding (CABCA), a context-based adaptive variable length coding (CAVLC), or other coding methods. This application does not limit the specific methods used.

[0126] The above describes several recompression schemes provided in the embodiments of this application, including inter-frame DCT coefficient re-prediction of adjacent I-frames, inter-frame syntax element merging of adjacent I-frames, inter-frame syntax element merging of multiple P-frames, and intra-frame syntax element merging of P-frames. Optionally, in the embodiments of this application, if the multiple video frames also include B-frames, the B-frames can also be recompressed. The recompression scheme for B-frames is similar to that for P-frames, and will not be described again here. Optionally, in some other embodiments, inter-frame DCT coefficient re-prediction can also be performed on P-frames.

[0127] In the above-described scheme, marker bits and coordinates are introduced to indicate whether data at corresponding positions has been recompressed. During the decoding of the recompressed video stream, the initial video stream can be reconstructed according to the information indicated by the marker bits. Then, the initial video stream is decoded using standard decoding methods to obtain the original video. In summary, this scheme is a lossless recompression method based on video streams, effectively improving the compression ratio while ensuring no degradation in video quality.

[0128] Figure 3 This is a flowchart of another video compression method provided in an embodiment of this application. See also... Figure 3 Taking the implementation of this method by a computer device through multiple modules as an example, the video compression method provided in this application embodiment will be explained again. The encoder in the computer device includes a decoding buffer module (including two sub-modules for processing I-frames and processing P-frames), a syntax element merging module (processing P-frames), a DCT coefficient re-prediction module (processing I-frames), and a syntax element re-prediction module (processing I-frames). The names of these modules are only for the convenience of explaining the embodiments of this application and are not intended to limit the embodiments of this application.

[0129] The decoding buffer module is used to decode the video frames included in the initial video stream, including decoding I-frames and P-frames. It also buffers the data of the decoded video frames, including DCT coefficients and syntax elements of I-frames, and syntax elements of P-frames. Optionally, the decoding process follows international video coding standards such as H.264 / H.265 / VVC / AVS.

[0130] The DCT coefficient re-prediction module is used to re-predict the DCT coefficients of the I-frame, resulting in smaller amplitudes of the re-predicted DCT coefficients. Specifically, the computer searches for similar DCT coefficients between the current I-frame and the previous I-frame. After finding similar DCT coefficients, it calculates a smaller residual, replaces the DCT coefficients of the current I-frame with the calculated residual, and inserts a first marker bit and / or a first coordinate into the current I-frame to obtain the I-frame with the replaced DCT coefficients.

[0131] The syntax element re-prediction module is used to re-predict the syntax elements of I-frames, that is, to merge the syntax elements of I-frames. In other words, it searches for the same syntax elements between the current I-frame and the previous I-frame. After finding the same syntax elements, it deletes the redundant syntax elements in the current I-frame and inserts a second flag bit and / or a second coordinate into the current I-frame to obtain the I-frame after deleting the syntax elements.

[0132] The syntax element merging module is used to re-predict the syntax elements of P-frames, that is, to merge the syntax elements of P-frames. In other words, it searches for identical syntax elements among multiple P-frames within the same GOP, removes redundant syntax elements from the P-frames, inserts a third flag bit into the P-frames, and obtains the P-frames after removing the syntax elements.

[0133] The decoding buffer module is also used to recompress and replace the I-frames after DCT coefficients, the I-frames after deleting syntax elements, and the P-frames after deleting syntax elements with shorter codewords to obtain recompressed I-frames and P-frames.

[0134] based on Figure 3 An example of the video compression method shown is that the computer device inputs the video frames included in the initial video bitstream into the decoding buffer module of the encoder in sequence for decoding, determines whether the current frame is the first I-frame of a GOP, that is, determines whether the current frame is an instantaneous decoding refresh (IDR) frame. If the current frame is an IDR frame, the data of the current I-frame is directly cached, including cached DCT coefficients and syntax elements, and the next video frame is input.

[0135] If the current frame is not an IDR frame but an I frame, the DCT coefficients of the current I frame obtained by decoding, as well as the DCT coefficients of the previous I frame in the buffer, are input into the DCT coefficient re-prediction module. The DCT coefficient re-prediction module re-predicts the DCT coefficients of the current I frame, that is, it replaces the DCT coefficients of the current I frame with a residual with a smaller amplitude. The I frame after replacing the DCT coefficients is input into the decoding buffer module for re-compression to obtain the recompressed I frame bitstream (i.e., the recompressed I frame).

[0136] If the current frame is a P-frame instead of an I-frame, determine if it is the last P-frame in its GOP. If it is not the last P-frame, buffer its syntax elements. If it is the last P-frame, input the syntax elements of all buffered P-frames into the syntax element merging module. This module determines which syntax elements need to be deleted and removes them. The syntax element merging module then inputs the P-frame with deleted syntax elements into the decoding buffer module for recompression, resulting in a recompressed P-frame bitstream (i.e., the recompressed P-frame).

[0137] Repeat the above process until all the video frames of the initial video stream have been processed. The recompressed I-frames and P-frames are then used to generate a recompressed video stream in the order of the video frames included in the initial video stream. The encoder outputs the recompressed video stream.

[0138] Optionally, the above Figure 3 The various modules are embedded in the original basic video codec framework, offering greater flexibility and scalability compared to redesigning the encoding method; it is plug-and-play. By utilizing matching prediction or collision prediction to reduce the amplitude values ​​of the DCT coefficients of the prediction basic unit, redundant syntax elements of the prediction basic unit are reduced, thereby achieving further lossless compression.

[0139] As described above, this scheme is for further lossless compression of video streams. In a video recompression experiment, without changing any video content, in 41 surveillance video segments (3072*1728 resolution), each surveillance video segment has 1001 frames, and each surveillance video segment contains 20 GOPs and one additional I-frame. Each GOP consists of a sequence parameter set (SPS), a picture parameter set (PPS), one I-frame, and 49 P-frames. Table 1 shows the compression gain after CABAC encoding following the DCT coefficient re-prediction module in the experiment. As shown in Table 1, the average compression gain obtained by recompressing the DCT coefficients of the I-frame is 23.70%. If the DCT coefficients and syntax elements of the I-frame, as well as the syntax elements of the P-frame, are all recompressed, the average compression gain obtained by video recompression is 10.85%. A gain of about 10% can alleviate the pressure on large video storage and network bandwidth.

[0140] Table 1

[0141]

[0142] This solution is a lossless recompression method based on video bitstreams. While ensuring decoding buffer efficiency, it improves compression gain, reduces space overhead from storage parameters, and guarantees computational simplicity and efficiency. Furthermore, this solution provides an easy-to-implement digital method based on video coding standards. By introducing marker bits and other methods to define the bitstream format, it is compatible with international video coding standards such as H.264, HEVC, VVC, and AVS, which are based on a hybrid framework of intra / inter-frame prediction and transform coding. This enhances the flexibility and scalability of the entire structure, making it applicable to various fields, and offering irreplaceable advantages for applications such as surveillance and live video with smooth backgrounds.

[0143] In summary, this scheme is a lossless recompression method based on video bitstreams, comprising one or more of three operations. The first operation is the re-prediction of DCT coefficients in I-frames, replacing the original DCT coefficients in an I-frame with a smaller residual. This results in shorter codewords used for encoding the residuals in the I-frame, reducing the amount of data after recompression. The second operation is the merging of syntax elements in I-frames, where redundant syntax elements in adjacent I-frames are deleted, effectively reducing redundant data and further reducing the amount of data after recompression. The third operation is the merging of syntax elements in P-frames, deleting redundant syntax elements in P-frames, also reducing the amount of data after recompression. Furthermore, the residuals used to replace DCT coefficients in this scheme are the residuals between the DCT coefficients of adjacent I-frames. This allows the original DCT coefficients to be calculated based on the residuals during the decoding of the recompressed video bitstream. For deleted syntax elements, the original syntax elements can also be recovered during decoding. Therefore, this scheme does not lose any information from the initial video bitstream, making it a lossless recompression method that guarantees video quality. In summary, this solution can further alleviate the pressure on video storage and network bandwidth by losslessly recompressing the video stream.

[0144] Figure 4 This is a schematic diagram of the structure of a video compression device 400 provided in an embodiment of this application. The video compression device 400 can be implemented as part or all of a computer device by software, hardware, or a combination of both. This computer device can be... Figure 1 The computer device shown. Optionally, this computer device is any of the computer devices in the foregoing embodiments. See also Figure 4 The device 400 includes:

[0145] Decoding module 401 is used to decode the initial video stream to obtain data from multiple video frames. The initial video stream is obtained by compressing the original video using a basic compression device; the specific implementation method is described above. Figure 2 The detailed description of step 201 in the embodiments will not be repeated here.

[0146] The recompression module 402 is used to recompress the data included in the multiple video frames to generate a recompressed video stream;

[0147] The recompression module 402 includes one or more of the following sub-modules:

[0148] The first recompression submodule 4021 is used to determine a first I-frame from the plurality of video frames, replace the first discrete cosine transform (DCT) coefficients included in the first I-frame with a first residual, and recompress the first I-frame after replacing the DCT coefficients. The first residual is the residual between the first DCT coefficients and the second DCT coefficients included in the second I-frame, and the magnitude of the first residual is smaller than the magnitude of the first DCT coefficients. The second I-frame is the I-frame preceding the first I-frame among the plurality of video frames. The specific implementation method is as described above. Figure 2 The detailed description of step 2021 in the embodiment will not be repeated here.

[0149] The second recompression submodule 4022 is used to determine the third internally encoded I-frame from the plurality of video frames, delete the first syntax element included in the third I-frame, and recompress the third I-frame after deleting the syntax element. The first syntax element is the same as the second syntax element included in the fourth I-frame, and the fourth I-frame is the I-frame preceding the third I-frame in the plurality of video frames. The specific implementation method is as described above. Figure 2 The detailed description of step 2022 in the embodiment will not be repeated here.

[0150] The third recompression submodule 4023 is used to determine the first P-frame from the plurality of video frames, delete the third syntax element included in the first P-frame, and recompress the first P-frame after deleting the syntax element. The third syntax element is the same as the fourth syntax element included in the second P-frame. The second P-frame is a P-frame that is different from the first P-frame among the plurality of video frames. The specific implementation method is as described above. Figure 2 The detailed description of step 2023 in the embodiment will not be repeated here.

[0151] Optionally, the prediction basic unit to which the first DCT coefficient belongs is located at a first position in the first I-frame, and the prediction basic unit to which the second DCT coefficient belongs is located at the same first position in the second I-frame.

[0152] Optionally, the recompressed first I-frame includes a first marker bit;

[0153] The first flag bit is used to obtain the second DCT coefficients of the prediction basic unit in the second I-frame that has the same position as the first position during the decoding and recompressing of the first I-frame. The first I-frame is then decoded based on the obtained second DCT coefficients and the first residual. The specific implementation method is described above. Figure 2 The detailed description of step 2021 in the embodiment will not be repeated here.

[0154] Optionally, the prediction basic unit to which the first DCT coefficient belongs is located at a first position in the first I-frame, and the prediction basic unit to which the second DCT coefficient belongs is located in the neighborhood of the same position as the first position in the second I-frame.

[0155] Optionally, the recompressed first I-frame includes a first coordinate, which indicates the position of the prediction basic unit to which the second DCT coefficient belongs in the second I-frame;

[0156] The first coordinate is used to obtain the second DCT coefficients of the prediction basic unit at the corresponding position in the second I-frame during the decoding and recompression of the first I-frame. The obtained second DCT coefficients and the first residual are then used to decode the recompressed first I-frame. The specific implementation method is described above. Figure 2 The detailed description of step 2021 in the embodiment will not be repeated here.

[0157] Optionally, the range of the neighborhood is determined based on the motion vectors included in the P-frames between the first I-frame and the second I-frame. The specific implementation method is described above. Figure 2 The detailed description of step 2021 in the embodiment will not be repeated here.

[0158] Optionally, the prediction basic unit to which the first syntax element belongs is located at the second position in the third I-frame, and the prediction basic unit to which the second syntax element belongs is located at the same position in the fourth I-frame as the second position.

[0159] Optionally, the recompressed third I-frame includes a second marker bit;

[0160] The second flag bit is used to obtain the second syntax element of the prediction basic unit in the fourth I-frame that has the same position as the second position during the decoding of the recompressed third I-frame. The obtained second syntax element is then inserted into the recompressed third I-frame for decoding. The specific implementation method is described above. Figure 2 The detailed description of step 2022 in the embodiment will not be repeated here.

[0161] Optionally, the prediction basic unit to which the first syntax element belongs is located at the second position in the third I-frame, and the prediction basic unit to which the second syntax element belongs is located in the neighborhood of the same position as the second position in the fourth I-frame.

[0162] Optionally, the recompressed third I-frame includes a second coordinate indicating the position of the prediction basic unit to which the second syntax element belongs in the fourth I-frame;

[0163] The second coordinate is used during the decoding of the recompressed third I-frame to obtain the second syntax element of the prediction basic unit at the corresponding position in the fourth I-frame according to the position indicated by the second coordinate. The obtained second syntax element is then inserted into the recompressed third I-frame for decoding. The specific implementation method is described above. Figure 2 The detailed description of step 2022 in the embodiment will not be repeated here.

[0164] Optionally, the range of the neighborhood is determined based on the motion vectors included in the P-frames between the third I-frame and the fourth I-frame. The specific implementation method is described above. Figure 2 The detailed description of step 2022 in the embodiment will not be repeated here.

[0165] Optionally, the prediction basic unit of the third syntax element is located at the third position in the first P frame, and the prediction basic unit of the fourth syntax element is located at the same position as the third position in the second P frame.

[0166] Optionally, the recompressed first P-frame includes a third marker bit;

[0167] The third flag bit is used to obtain the fourth syntax element of the prediction basic unit in the second P-frame that has the same position as the third position during the decoding of the recompressed first P-frame. The obtained fourth syntax element is then inserted into the recompressed first P-frame for decoding. The specific implementation method is described above. Figure 2 The detailed description of step 2023 in the embodiment will not be repeated here.

[0168] Optionally, the first P-frame and the second P-frame belong to a first group of images (GOP), the second P-frame precedes the first P-frame, and multiple video frames include the first GOP.

[0169] Optionally, the basic unit of prediction is a macroblock or a coding unit.

[0170] This scheme is a lossless recompression method based on video bitstreams, comprising one or more of three operations. The first operation is DCT coefficient re-prediction of I-frames, replacing the original DCT coefficients in an I-frame with a smaller residual. This shortens the codewords used to encode the residuals in the compressed I-frame, reducing the amount of data in the recompressed file. The second operation is syntax element merging of I-frames, where redundant syntax elements in adjacent I-frames are deleted, effectively reducing redundant data and further reducing the amount of data in the recompressed file. The third operation is syntax element merging of P-frames, deleting redundant syntax elements in P-frames, again reducing the amount of data in the recompressed file. Furthermore, the residuals used to replace DCT coefficients in this scheme are the residuals between adjacent I-frames. This allows the original DCT coefficients to be calculated based on the residuals during the decoding of the recompressed video bitstream. For deleted syntax elements, the original syntax elements can also be recovered during decoding. Therefore, this scheme does not lose any information from the initial video bitstream, making it a lossless recompression method that guarantees video quality. In summary, this solution can further alleviate the pressure on video storage and network bandwidth by losslessly recompressing the video stream.

[0171] It should be noted that the video compression device provided in the above embodiments is only illustrated by the division of the above functional modules when compressing video. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. In addition, the video compression device and the video compression method embodiments provided in the above embodiments belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.

[0172] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented, in whole or in part, as a computer program product. The computer program product includes one or more computer instructions. When the computer instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium accessible to a computer or a data storage device such as a server or data center that integrates one or more available media. The available media can be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., digital versatile discs (DVDs)), or semiconductor media (e.g., solid-state disks (SSDs)).

[0173] Those skilled in the art will understand that all or part of the steps of the above embodiments can be implemented by hardware or by a program instructing related hardware. The program can be stored in a computer-readable storage medium, such as a read-only memory, a disk, or an optical disk.

[0174] It should be understood that "at least one" as mentioned herein refers to one or more, and "multiple" refers to two or more. In the description of the embodiments of this application, unless otherwise stated, " / " means "or," for example, A / B can mean A or B; "and / or" in this document is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. In addition, in order to clearly describe the technical solutions of the embodiments of this application, the terms "first," "second," etc., are used in the embodiments of this application to distinguish identical or similar items with substantially the same function and effect. Those skilled in the art will understand that the terms "first," "second," etc., do not limit the quantity or execution order, and the terms "first," "second," etc., are not necessarily different.

[0175] The above descriptions are embodiments provided in this application and are not intended to limit the embodiments of this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the embodiments of this application should be included within the protection scope of the embodiments of this application.

Claims

1. A video compression method, characterized in that, The method includes: Decode the initial video stream to obtain data from multiple video frames. The initial video stream is obtained by compressing the original video using a basic compression method. The data included in the plurality of video frames are recompressed to generate a recompressed video stream; The recompression of the data comprising the plurality of video frames includes one or more of the following operations: A first internally encoded I-frame is determined from the plurality of video frames. The first discrete cosine transform (DCT) coefficients included in the first I-frame are replaced with a first residual. The first I-frame after replacing the DCT coefficients is then recompressed. The first residual is the residual between the first DCT coefficients and the second DCT coefficients included in the second I-frame. The magnitude of the first residual is smaller than the magnitude of the first DCT coefficients. The second I-frame is the I-frame preceding the first I-frame among the plurality of video frames. A third internally encoded I-frame is determined from the plurality of video frames. The first syntax element included in the third I-frame is deleted. The third I-frame after deleting the syntax element is recompressed. The first syntax element is the same as the second syntax element included in the fourth I-frame. The fourth I-frame is the I-frame preceding the third I-frame in the plurality of video frames. A first forward predictive coded P-frame is determined from the plurality of video frames. The third syntax element included in the first P-frame is deleted. The first P-frame after deleting the syntax element is recompressed. The third syntax element is the same as the fourth syntax element included in the second P-frame. The second P-frame is a P-frame that is different from the first P-frame among the plurality of video frames.

2. The method as described in claim 1, characterized in that, The prediction basic unit to which the first DCT coefficient belongs is located at the first position in the first I-frame, and the prediction basic unit to which the second DCT coefficient belongs is located at the same position as the first position in the second I-frame.

3. The method as described in claim 2, characterized in that, The first I-frame after recompression includes the first marker bit; The first flag bit is used to obtain the second DCT coefficients of the prediction basic unit in the second I-frame that is at the same position as the first position during the decoding of the recompressed first I-frame, and to decode the recompressed first I-frame according to the obtained second DCT coefficients and the first residual.

4. The method as described in claim 1, characterized in that, The prediction basic unit to which the first DCT coefficient belongs is located at the first position in the first I-frame, and the prediction basic unit to which the second DCT coefficient belongs is located in the neighborhood of the same position as the first position in the second I-frame.

5. The method as described in claim 4, characterized in that, The recompressed first I-frame includes a first coordinate, which indicates the position of the prediction basic unit to which the second DCT coefficient belongs in the second I-frame; The first coordinate is used to obtain the second DCT coefficient of the prediction basic unit at the corresponding position in the second I-frame according to the position indicated by the first coordinate during the decoding of the recompressed first I-frame, and to decode the recompressed first I-frame according to the obtained second DCT coefficient and the first residual.

6. The method as described in claim 4 or 5, characterized in that, The range of the neighborhood is determined based on the motion vectors included in the P-frames between the first I-frame and the second I-frame.

7. The method according to any one of claims 1-6, characterized in that, The prediction basic unit to which the first syntax element belongs is located at the second position in the third I-frame, and the prediction basic unit to which the second syntax element belongs is located at the same position as the second position in the fourth I-frame.

8. The method as described in claim 7, characterized in that, The recompressed third I-frame includes the second marker bit; The second flag bit is used to obtain the second syntax element of the prediction basic unit in the fourth I-frame that is at the same position as the second position during the decoding of the recompressed third I-frame, and insert the obtained second syntax element into the recompressed third I-frame to decode the recompressed third I-frame.

9. The method according to any one of claims 1-6, characterized in that, The prediction basic unit to which the first syntax element belongs is located at the second position in the third I-frame, and the prediction basic unit to which the second syntax element belongs is located in the neighborhood of the same position as the second position in the fourth I-frame.

10. The method as described in claim 9, characterized in that, The recompressed third I-frame includes a second coordinate, which indicates the position of the prediction basic unit to which the second syntax element belongs in the fourth I-frame; The second coordinate is used to obtain the second syntax element of the prediction basic unit at the corresponding position in the fourth I-frame according to the position indicated by the second coordinate during the decoding of the recompressed third I-frame, and insert the obtained second syntax element into the recompressed third I-frame to decode the recompressed third I-frame.

11. The method as described in claim 9 or 10, characterized in that, The range of the neighborhood is determined based on the motion vectors included in the P-frames between the third I-frame and the fourth I-frame.

12. The method according to any one of claims 1-11, characterized in that, The prediction basic unit to which the third syntax element belongs is located in the third position in the first P-frame, and the prediction basic unit to which the fourth syntax element belongs is located in the same position as the third position in the second P-frame.

13. The method as described in claim 12, characterized in that, The first P-frame after recompression includes the third marker bit; The third marker bit is used to obtain the fourth syntax element of the prediction basic unit in the second P frame that is at the same position as the third position during the decoding of the recompressed first P frame, and to insert the obtained fourth syntax element into the recompressed first P frame to decode the recompressed first P frame.

14. The method according to any one of claims 1-13, characterized in that, The first P-frame and the second P-frame belong to a first group of images (GOP), the second P-frame precedes the first P-frame, and the plurality of video frames include the first GOP.

15. The method according to any one of claims 2-13, characterized in that, The basic unit of prediction is a macroblock or a coding unit.

16. A video compression device, characterized in that, The device includes: The decoding module is used to decode the initial video stream to obtain data from multiple video frames. The initial video stream is obtained by compressing the original video using a basic compression device. The recompression module is used to recompress the data included in the plurality of video frames to generate a recompressed video stream; The recompression module includes one or more of the following sub-modules: The first recompression submodule is used to determine a first I-frame from the plurality of video frames, replace the first discrete cosine transform (DCT) coefficients included in the first I-frame with a first residual, and recompress the first I-frame after replacing the DCT coefficients. The first residual is the residual between the first DCT coefficients and the second DCT coefficients included in the second I-frame. The magnitude of the first residual is smaller than the magnitude of the first DCT coefficients. The second I-frame is the I-frame preceding the first I-frame among the plurality of video frames. The second recompression submodule is used to determine a third internally encoded I-frame from the plurality of video frames, delete the first syntax element included in the third I-frame, and recompress the third I-frame after deleting the syntax element. The first syntax element is the same as the second syntax element included in the fourth I-frame. The fourth I-frame is the I-frame preceding the third I-frame in the plurality of video frames. The third recompression submodule is used to determine a first P-frame from the plurality of video frames, delete the third syntax element included in the first P-frame, and recompress the first P-frame after deleting the syntax element. The third syntax element is the same as the fourth syntax element included in the second P-frame. The second P-frame is a P-frame that is different from the first P-frame among the plurality of video frames.

17. The apparatus as claimed in claim 16, characterized in that, The prediction basic unit to which the first DCT coefficient belongs is located at the first position in the first I-frame, and the prediction basic unit to which the second DCT coefficient belongs is located at the same position as the first position in the second I-frame.

18. The apparatus as claimed in claim 17, characterized in that, The first I-frame after recompression includes the first marker bit; The first flag bit is used to obtain the second DCT coefficients of the prediction basic unit in the second I-frame that is at the same position as the first position during the decoding of the recompressed first I-frame, and to decode the recompressed first I-frame according to the obtained second DCT coefficients and the first residual.

19. The apparatus as claimed in claim 16, characterized in that, The prediction basic unit to which the first DCT coefficient belongs is located at the first position in the first I-frame, and the prediction basic unit to which the second DCT coefficient belongs is located in the neighborhood of the same position as the first position in the second I-frame.

20. The apparatus as claimed in claim 19, characterized in that, The recompressed first I-frame includes a first coordinate, which indicates the position of the prediction basic unit to which the second DCT coefficient belongs in the second I-frame; The first coordinate is used to obtain the second DCT coefficient of the prediction basic unit at the corresponding position in the second I-frame according to the position indicated by the first coordinate during the decoding of the recompressed first I-frame, and to decode the recompressed first I-frame according to the obtained second DCT coefficient and the first residual.

21. The apparatus as claimed in claim 19 or 20, characterized in that, The range of the neighborhood is determined based on the motion vectors included in the P-frames between the first I-frame and the second I-frame.

22. The apparatus according to any one of claims 16-21, characterized in that, The prediction basic unit to which the first syntax element belongs is located at the second position in the third I-frame, and the prediction basic unit to which the second syntax element belongs is located at the same position as the second position in the fourth I-frame.

23. The apparatus as claimed in claim 22, characterized in that, The recompressed third I-frame includes the second marker bit; The second flag bit is used to obtain the second syntax element of the prediction basic unit in the fourth I-frame that is at the same position as the second position during the decoding of the recompressed third I-frame, and insert the obtained second syntax element into the recompressed third I-frame to decode the recompressed third I-frame.

24. The apparatus according to any one of claims 16-21, characterized in that, The prediction basic unit to which the first syntax element belongs is located at the second position in the third I-frame, and the prediction basic unit to which the second syntax element belongs is located in the neighborhood of the same position as the second position in the fourth I-frame.

25. The apparatus as claimed in claim 24, characterized in that, The recompressed third I-frame includes a second coordinate, which indicates the position of the prediction basic unit to which the second syntax element belongs in the fourth I-frame; The second coordinate is used to obtain the second syntax element of the prediction basic unit at the corresponding position in the fourth I-frame according to the position indicated by the second coordinate during the decoding of the recompressed third I-frame, and insert the obtained second syntax element into the recompressed third I-frame to decode the recompressed third I-frame.

26. The apparatus as claimed in claim 24 or 25, characterized in that, The range of the neighborhood is determined based on the motion vectors included in the P-frames between the third I-frame and the fourth I-frame.

27. The apparatus according to any one of claims 16-26, characterized in that, The prediction basic unit to which the third syntax element belongs is located in the third position in the first P-frame, and the prediction basic unit to which the fourth syntax element belongs is located in the same position as the third position in the second P-frame.

28. The apparatus as claimed in claim 27, characterized in that, The first P-frame after recompression includes the third marker bit; The third marker bit is used to obtain the fourth syntax element of the prediction basic unit in the second P frame that is at the same position as the third position during the decoding of the recompressed first P frame, and to insert the obtained fourth syntax element into the recompressed first P frame to decode the recompressed first P frame.

29. A video compression device, characterized in that, The device includes a memory and a processor; The memory is used to store a program that supports the device in performing the method according to any one of claims 1-15, and to store data related to implementing the method according to any one of claims 1-15; The processor is configured to execute programs stored in the memory.

30. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores instructions that, when executed on a computer, cause the computer to perform the method according to any one of claims 1-15.

Citation Information

Patent Citations

  • Transcoding method for moving picture coding data and transcoding device

    JP2001359104A

  • Image Compression System for Digital VideoSurveillance and Method for controlling the Same

    KR1020040066397A