CN115460414B - Video compression method and system of baseboard management control chip and related components - Google Patents

Video compression method and system of baseboard management control chip and related components Download PDF

Info

Publication number
CN115460414B
CN115460414B CN202211412341.0A CN202211412341A CN115460414B CN 115460414 B CN115460414 B CN 115460414B CN 202211412341 A CN202211412341 A CN 202211412341A CN 115460414 B CN115460414 B CN 115460414B
Authority
CN
China
Prior art keywords
data
data block
interval
block
bit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202211412341.0A
Other languages
Chinese (zh)
Other versions
CN115460414A (en
Inventor
张贞雷
李拓
满宏涛
邹晓峰
刘刚
刘凯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202211412341.0A priority Critical patent/CN115460414B/en
Publication of CN115460414A publication Critical patent/CN115460414A/en
Application granted granted Critical
Publication of CN115460414B publication Critical patent/CN115460414B/en
Priority to PCT/CN2023/095596 priority patent/WO2024098715A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

The application discloses a video compression method, a system and related components of a baseboard management control chip, relating to the field of servers, wherein the method comprises the following steps: acquiring an original video data stream at a host end; converting an original video data stream into a data block in a YUV format; judging whether the data of each data block is in a corresponding reference data interval or not for all data blocks of the current frame; if yes, outputting a compressed reference data block corresponding to the reference data interval to a post-stage framing unit as a compressed data block of the current frame; if not, the data block is compressed to obtain a compressed data block of the current frame and output to the post-stage framing unit. According to the method and the device, the data block is compressed only when the data block is not in the reference data interval, a large number of unnecessary repeated compression actions are saved through judgment on whether the data block is in the reference data interval, system resources are saved, the compression efficiency is improved, and the overall performance of the substrate management control chip is ensured.

Description

Video compression method and system of baseboard management control chip and related components
Technical Field
The invention relates to the field of servers, in particular to a video compression method and system of a baseboard management control chip and related components.
Background
Currently, a Baseboard Management Controller (BMC) in a server not only monitors the status of each component in the server, but also has an important function of transmitting a local video to a remote end through a network for the remote end to display and monitor.
Generally, before network transmission of a local video, a baseboard management control chip needs to perform JPEG compression on the video, and the compression process includes operations of converting a data format of an original video, converting a data format, encoding data, framing and the like.
In the scheme, the original videos of all frames need to be compressed, and the situation that any frame is missed does not exist. But the display interface of the server is different from that of the ordinary personal host, and a large amount of data operation processes are not usually displayed on the host interface, so the picture change of the original video is very small, at this time, in the compression process of the baseboard management control chip, a video image with many repeated frames is actually compressed, which wastes server resources to some extent and easily causes negative effects on the performance of the baseboard management control chip.
Therefore, how to provide a solution to the above technical problems is a problem to be solved by those skilled in the art.
Disclosure of Invention
In view of the above, the present invention provides a video compression method, system and related components of a bmc chip that can save compression cost. The specific scheme is as follows:
a video compression method of a baseboard management control chip comprises the following steps:
acquiring an original video data stream at a host end;
converting the original video data stream into a data block in a YUV format;
judging whether the data of each data block is in a corresponding reference data interval or not for all data blocks of the current frame;
if yes, outputting a compressed reference data block corresponding to the reference data interval to a post-stage framing unit as a compressed data block of the current frame;
if not, the data block is compressed to obtain a compressed data block of the current frame and the compressed data block is output to the post-stage framing unit.
Preferably, the determining of the reference data interval includes:
and taking all data in the reference data block as a reference value, adding a first preset quantity to each bit of data in the reference value to obtain an upper limit of an interval corresponding to each bit of data, subtracting a second preset quantity from each bit of data in the reference value to obtain a lower limit of the interval corresponding to each bit of data, and determining the reference data interval corresponding to each bit of data according to the upper limit of the interval and the lower limit of the interval.
Preferably, the determining whether the data of each data block is in the corresponding reference data interval for all data blocks of the current frame includes:
for all data blocks of the current frame, judging whether each bit of data of each data block is in a corresponding reference data interval;
counting data which are not in the corresponding reference data interval in each data block to obtain a first data digit;
judging whether the first data digit is greater than a preset data digit or not;
if yes, judging that the data of the data block is not in the corresponding reference data interval;
and if not, judging that the data of the data block is in the corresponding reference data interval.
Preferably, the reference data block is a same-bit data block having the same position as the data block to be determined in a previous frame of the current frame.
Preferably, when the data of the data block is not in the corresponding reference data interval, the video compression method further includes:
judging whether each bit of data of the data block is in a corresponding reference data interval;
counting data which are not in the corresponding reference data interval in the data block to obtain a second data bit;
judging whether the second data bit is larger than the preset data bit;
if so, judging that the data of the data block is not in the corresponding reference data interval, performing compression operation on the data block to obtain a compressed data block of the current frame, and outputting the compressed data block to the post-stage framing unit;
if not, judging that the data of the data block is in the corresponding reference data interval, and outputting the compressed reference data block corresponding to the reference data interval to a post-stage framing unit as a compressed data block of the current frame.
Preferably, the determining process of the reference data interval includes:
and taking all data in a reference data block different from the reference data block as a reference value, adding a first preset quantity to each bit of data in the reference value to obtain an interval upper limit corresponding to each bit of data, subtracting a second preset quantity from each bit of data in the reference value to obtain an interval lower limit corresponding to each bit of data, and determining the reference data interval corresponding to each bit of data according to the interval upper limit and the interval lower limit.
Preferably, the reference data block specifically includes:
and the adjacent position data block which is adjacent to the data block position to be judged in the previous frame relative to the current frame.
Preferably, the reference data block is specifically a standard identical-bit data block with the same position as the data block to be determined in a preset standard frame.
Preferably, the reference data block is specifically a standard identical-bit data block with the same position as the data block to be determined in a preset standard frame.
Preferably, the determining of the reference data interval includes:
and taking the average value of all data in the data block of the previous frame as a reference value, adding a first preset amount to the reference value to obtain an upper interval limit, subtracting a second preset amount from the reference value to obtain a lower interval limit, and determining the reference data interval according to the upper interval limit and the lower interval limit.
Preferably, the determining whether the data of each data block is in the corresponding reference data interval for all data blocks of the current frame includes:
calculating the average value of all data of each data block for all data blocks of the current frame;
judging whether the average value is in the corresponding reference data interval;
if yes, judging that the data of the data block is not in the corresponding reference data interval;
and if not, judging that the data of the data block is in the corresponding reference data interval.
Preferably, the determining whether the data of each data block is in the corresponding reference data interval for all data blocks of the current frame includes:
reading a plurality of data blocks of the current frame to a buffer area in parallel through a plurality of FIFO channels, and executing the step of judging whether the data of each data block is in the corresponding reference data interval or not for each data block which is read in the buffer area.
Correspondingly, this application still discloses a video compression system of base plate management control chip, includes:
the interface module is used for acquiring an original video data stream at a host end;
the conversion module is used for converting the original video data stream into a data block in a YUV format;
the judging module is used for judging whether the data of each data block is in a corresponding reference data interval or not for all data blocks of the current frame;
and the compression selection module is used for outputting the compressed reference data block corresponding to the reference data interval to a post-stage framing unit as a compressed data block of the current frame when the judgment result of the judgment module is positive, and is also used for performing compression operation on the data block to obtain a compressed data block of the current frame and outputting the compressed data block to the post-stage framing unit when the judgment result of the judgment module is negative.
Correspondingly, the application also discloses an electronic device, including:
a memory for storing a computer program;
a processor for implementing the steps of the video compression system of the bmc chip as described in any one of the above when executing the computer program.
Accordingly, the present application also discloses a readable storage medium, on which a computer program is stored, which, when being executed by a processor, implements the steps of the video compression system of the bmc chip as described in any one of the above.
The application discloses a video compression method of a baseboard management control chip, which comprises the following steps: acquiring an original video data stream at a host end; converting the original video data stream into a data block in a YUV format; judging whether the data of each data block is in a corresponding reference data interval or not for all data blocks of the current frame; if yes, outputting a compressed reference data block corresponding to the reference data interval to a post-stage framing unit as a compressed data block of the current frame; if not, the data block is compressed to obtain a compressed data block of the current frame and the compressed data block is output to the post-stage framing unit. According to the method and the device, the data block is compressed only when the data block is not in the reference data interval, a large number of unnecessary repeated compression actions are saved through judgment on whether the data block is in the reference data interval, system resources are saved, the compression efficiency is improved, and the overall performance of the substrate management control chip is ensured.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the provided drawings without creative efforts.
FIG. 1 is a flowchart illustrating a video compression method for a baseboard management controller chip according to an embodiment of the present invention;
FIG. 2 is a logic diagram of an internal operation of a baseboard management controller chip according to an embodiment of the present invention;
FIG. 3 is a logic diagram of a local operation of a baseboard management controller chip according to an embodiment of the present invention;
FIG. 4 is a block diagram of Y data according to an embodiment of the present invention;
FIG. 5 is a diagram illustrating a structure of a video compression system of a baseboard management controller chip according to an embodiment of the present invention;
fig. 6 is a structural distribution diagram of an electronic device according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
In the traditional compression scheme, the original videos of all frames need to be compressed, and the situation that any frame is missed does not exist. However, the display interface of the server is different from that of a common personal host, and a large amount of data operation processes are not usually displayed on the host interface, so that the picture change of an original video is very small, and at the moment, a plurality of repeated frames of video pictures are actually compressed in the compression process of the baseboard management control chip, so that server resources are wasted to some extent, and the performance of the baseboard management control chip is easily negatively affected.
According to the method and the device, the data block is compressed only when the data block is not in the reference data interval, a large number of unnecessary repeated compression actions are saved through judgment on whether the data block is in the reference data interval, system resources are saved, compression efficiency is improved, and the overall performance of the substrate management control chip is guaranteed.
The embodiment of the application discloses a video compression method for a baseboard management control chip, which is shown in fig. 1 and comprises the following steps:
s1: acquiring an original video data stream at a host end;
s2: converting an original video data stream into a data block in a YUV format;
s3: judging whether the data of each data block is in a corresponding reference data interval or not for all data blocks of the current frame;
s4: if yes, outputting a compressed reference data block corresponding to the reference data interval to a post-stage framing unit as a compressed data block of the current frame;
s5: if not, the data block is compressed to obtain a compressed data block of the current frame and output to the post-stage framing unit.
It can be understood that the video compression method in this embodiment is applied to a server, and is implemented by using a baseboard management control chip of the server as an execution main body, and the action logic inside the baseboard management control chip is as shown in fig. 2. The original video data stream of HOST is transmitted to the baseboard management control chip through PCIe (Peripheral Component Interconnect Express, latest bus and interface standard) bus, and is transmitted by taking each frame of video image as unit, and the original video data stream is video data in RGB format; in the step S2, an RGB2YUV module converts an original video data stream in an RGB format into a data BLOCK in a YUV format, and the data BLOCK is cached in an on-chip storage resource of a substrate management control chip through a YUV2BLOCK module, wherein an FIFO array and a read-write control logic are stored in the YUV2BLOCK module; in step S3, the BLOCK _ STORE _ COMPARE module analyzes and determines the current data BLOCK according to the internally stored reference data interval, and sends a related enable signal to the JPEG COMPARE module, thereby triggering the JPEG COMPARE module to execute step S4 or S5;
it can be understood that the YUV format in step S2 specifically includes compression formats such as YUV444, YUV422, YUV420, and the like, and the data block in the YUV format corresponding to each frame of video data includes a Y data block, a U data block, and a V data block, and all YUV formats are applicable to the video compression method in this embodiment; in step S3, when all data blocks of the current frame are determined, each data block, such as a Y data block, a U data block, or a V data block, is used as an object, and each data block and its corresponding reference data interval are determined respectively. The reference data interval may be determined by a YUV format data block of the previous frame of video data, or may be determined by a YUV format data block of a frame of picture with the largest occurrence number, and it is understood that two data blocks corresponding to the comparison reference data interval should be data blocks of the same type and the same image position. During comparison, the average value of the whole data block can be used as a judgment parameter, each bit of data in the data block can be analyzed, and whether the whole data block needs to be compressed or not is judged according to the analysis result of all the bit of data. The specific data block for determining the reference data interval and the method for determining the reference data interval may be set according to actual requirements, and are not limited herein.
The internal action logic of the JPEG compact module is as shown in fig. 3, the check unit analyzes the judgment result of the current DATA block in S3, if yes, step S4 is executed, the compressed reference DATA block in the compact _ DATA _ compact unit is read and output to the subsequent framing unit, if no, step S5 is executed, the compression operation of step S5 mainly includes performing Discrete Cosine Transform (DCT), quantization processing and entropy coding operation on the DATA block in sequence, and the compressed DATA block of the current frame is obtained and output to the subsequent framing unit; the latter framing unit mainly adds information such as a frame head and a frame tail.
After step S5, the following steps are also included: and writing the compressed Data block into a DDR (Double Data Rate), reading the compressed Data which is compressed in the DDR by an EMAC network card, transmitting the Data to a remote end, and performing remote display so as to achieve the purposes of monitoring and management.
The application discloses a video compression method of a baseboard management control chip, which comprises the following steps: acquiring an original video data stream at a host end; converting the original video data stream into a data block in a YUV format; for all data blocks of the current frame, judging whether the data of each data block is in a corresponding reference data interval; if yes, outputting a compressed reference data block corresponding to the reference data interval to a post-stage framing unit as a compressed data block of the current frame; if not, the data block is compressed to obtain a compressed data block of the current frame and the compressed data block is output to the post-stage framing unit. According to the method and the device, the data block is compressed only when the data block is not in the reference data interval, a large number of unnecessary repeated compression actions are saved through judgment on whether the data block is in the reference data interval, system resources are saved, compression efficiency is improved, and the overall performance of the substrate management control chip is guaranteed.
The embodiment of the invention discloses a specific video compression method for a baseboard management control chip, and compared with the previous embodiment, the embodiment further explains and optimizes the technical scheme.
Specifically, the YUV format specifically includes compression formats such as YUV444, YUV422, YUV420, and the like, and the data block in the YUV format corresponding to the video data of each frame includes a Y data block, a U data block, and a V data block, specifically:
in the YUV420 format, the size of one Y data block is 16 × 16 pixel points, the size of one U data block is 8 × 8 pixel points, and the size of one V data block is 8 × 8 pixel points, so that only U data blocks and V data blocks in even rows and even columns, only U data blocks and V data blocks in odd rows and odd columns, only U data blocks and V data blocks in even rows and odd columns, or only U data blocks and V data blocks in odd rows and even columns are reserved, and the principle is that 4Y components share one UV component;
similarly, in the YUV422 format, the size of one Y data block is 16 × 16 pixel points, the size of one U data block is 16 × 8 pixel points, and the size of one V data block is 16 × 8 pixel points, so that only U data blocks and V data blocks in even rows, only U data blocks and V data blocks in odd rows, only U data blocks and V data blocks in even columns, or only U data blocks and V data blocks in odd columns are reserved, and the principle is that 2Y components share one UV component;
similarly, in the YUV444 format, the size of one Y data block is 8 × 8 pixels, the size of one U data block is 8 × 8 pixels, and the size of one V data block is 8 × 8 pixels, and it is necessary to retain all rows and all columns of YUV components.
Further, the write logic during YUV format caching specifically includes:
in the YUV420 format, taking the case of reserving all Y data blocks and reserving U/V data blocks in even rows and even columns as an example:
writing the Y data of line 0/16/32/48 … into Y _ FIFO _0;
writing the Y data of line 1/17/33/49 … into Y _ FIFO _1;
writing Y data for line 2/18/34/50 … into Y _ FIFO _2;
……
writing Y data for line 15/31/47/63 … into Y _ FIFO _15;
writing the even column U data of row 0/16/32/48 … into U _ FIFO _0;
writing the even column U data of the 2/18/34/50 … row into U _ FIFO _1;
……
writing the even column U data of row 14/30/46/62 … into U _ FIFO _7;
writing the even column V data of row 0/16/32/48 … into V _ FIFO _0;
writing the even column V data of the 2/18/34/50 … row into V _ FIFO _1;
……
the even column V data for row 14/30/46/62 … is written into V _ FIFO _7.
In YUV422 format, take the example of retaining all Y data blocks, and retaining U/V data blocks in even columns:
writing the Y data of line 0/16/32/48 … into Y _ FIFO _0;
writing the Y data of line 1/17/33/49 … into Y _ FIFO _1;
writing Y data for line 2/18/34/50 … into Y _ FIFO _2;
……
writing the Y data of line 15/31/47/63 … into Y _ FIFO _15;
writing the even column U data of row 0/16/32/48 … into U _ FIFO _0;
writing the U data of the even columns of the 1/17/33/49 … row into the U _ FIFO _1;
writing the even column U data of row 2/18/34/50 … into U _ FIFO _2;
……
writing the U data of the even columns of the 15/31/47/63 … row into the U _ FIFO _15;
writing the even column V data of row 0/16/32/48 … into V _ FIFO _0;
writing the even column V data of the 1/17/33/49 … row into V _ FIFO _1;
writing the even column V data of row 2/18/34/50 … into V _ FIFO _2;
……
writing the V data of the even columns of the 15/31/47/63 … row into the V _ FIFO _15;
in YUV444 format, retaining all rows and columns of Y/U/V data, specifically:
writing Y data for line 0/8/16/24 … into Y _ FIFO _0;
writing the Y data of line 1/9/17/25 … into Y _ FIFO _1;
writing the Y data of line 2/10/18/26 … into Y _ FIFO _2;
……
writing the Y data of line 7/15/23/31 … into Y _ FIFO _7;
writing the U data of line 0/8/16/24 … into U _ FIFO _0;
writing the U data of the 1/9/17/25 … line into U _ FIFO _1;
writing the U data of line 2/10/18/26 … into U _ FIFO _2;
……
writing the U data of line 7/15/23/31 … into U _ FIFO _7;
writing the V data of line 0/8/16/24 … into V _ FIFO _0;
writing the V data of the 1/9/17/25 … line into V _ FIFO _1;
writing the V data of line 2/10/18/26 … into V _ FIFO _2;
……
the V data for line 7/15/23/31 … is written into V _ FIFO _7.
Further, the determination and subsequent processing of the data block in steps S3-S5 are all based on the re-reading of the data block written in the cache in the YUV format, and the specific read operation of the data block does not care about the read address, and only needs to obtain the read enable sent before the determination in step S3, specifically:
in YUV420 format, the read operation logic is: sequentially reading 16 times of Y _ FIFO _0, 16 times of Y _ FIFO _1, … and 16 times of Y _ FIFO _15; u _ FIFO _0,8 times U _ FIFO _1, …,8 times U _ FIFO _7; v _ FIFO _0,8V _ FIFO _1, …, 8V _ FIFO _7, and then cycle through.
In YUV422 format, the read operation logic is: sequentially reading 16 times of Y _ FIFO _0, 16 times of Y _ FIFO _1, … and 16 times of Y _ FIFO _15; u _ FIFO _0,8 times U _ FIFO _1, …,8 times U _ FIFO _15; v _ FIFO _0,8 times V _ FIFO _1, …, and 8 times V _ FIFO _15.
In YUV444 format, the read operation logic is: sequentially reading 8 times of Y _ FIFO _0,8 times of Y _ FIFO _1, … and 8 times of Y _ FIFO _7; u _ FIFO _0,8 times U _ FIFO _1, …,8 times U _ FIFO _7; v _ FIFO _0,8 times V _ FIFO _1, …, and 8 times V _ FIFO _7.
Furthermore, in the embodiment of the present application, the read operation logic may be adjusted, and data block reading is performed through a plurality of FIFO channels, so as to improve the read efficiency, specifically: a process of judging whether the data of each data block is in the corresponding reference data interval or not for all the data blocks of the current frame, including; and reading a plurality of data blocks of the current frame to a buffer area in parallel through a plurality of FIFO channels, and executing the step of judging whether the data of each data block is in the corresponding reference data interval or not for each data block which is read in the buffer area.
Specifically, taking YUV420 as an example, a data BLOCK of Y data is shown in fig. 4, where fig. 4 is a plurality of data BLOCKs corresponding to one frame, each data BLOCK is represented in a BLOCK _ x form, where each row includes N data BLOCKs, N is a positive integer, when the conventional read operation logic reads fig. 4, first read Y _ FIFO _0 16 times, then read Y _ FIFO _1 … … and read Y _ FIFO _15 16 times, so as to obtain 16 × 16 BLOCK _0; then read 16 times Y _ FIFO _0, and then read 16 times Y _ FIFO _1 … … read 16 times Y _ FIFO _15, resulting in 16 × 16 BLOCK _1.
In this embodiment, a read-side logic in YUV2BLOCK is modified, and when a plurality of data BLOCKs of a current frame are read in parallel to a buffer area through a plurality of FIFO channels, taking 2 FIFO channels as an example, and taking fig. 4 as an example, when the 1 st row of data of BLOCK _0 is obtained, that is, when Y _ FIFO _1 is read, Y _ FIFO _0 can be synchronously read, and then the 1 st row of BLOCK _0 and the 0 th row of BLOCK _1 can be synchronously obtained. Since Y _ FIFO _1 and Y _ FIFO _0 are two FIFO channels, synchronous reading at the same clock can be achieved.
By analogy, when row 2 data of BLOCK _0 is obtained, i.e., when Y _ FIFO _2 is read, another FIFO channel synchronously reads Y _ FIFO _1, thereby synchronously obtaining row 2 of BLOCK _0 and row 1 of BLOCK _1.
Therefore, the obtaining time of BLOCK _1 is only one line of data slower than BLOCK _0, namely 16 clocks slower, while BLOCK _0 and BLOCK _1 are generated sequentially in the conventional scheme, BLOCK_1 is 16 × 16=256 clocks slower than BLOCK _0, the read operation logic of the embodiment greatly speeds up the speed of the YUV BLOCK data read-out side, and the speed of video compression is accelerated.
Similarly, the reading of other BLOCK data can refer to BLOCK _0 and BLOCK _1, and the adjacent BLOCK data can be read synchronously by the read operation logic of this embodiment.
YUV422 and YUV444, likewise, just the size of the BLOCK is different, and the processing logic is the same as YUV420 described above.
The embodiment of the invention discloses a specific video compression method for a baseboard management control chip, and compared with the previous embodiment, the embodiment further explains and optimizes the technical scheme.
Specifically, in this embodiment, a corresponding reference data interval is set for each bit of data, and the determining process of the reference data interval includes:
and taking all data in the reference data block as a reference value, adding a first preset quantity to each bit of data in the reference value to obtain an upper limit of an interval corresponding to each bit of data, subtracting a second preset quantity from each bit of data in the reference value to obtain a lower limit of the interval corresponding to each bit of data, and determining a reference data interval corresponding to each bit of data according to the upper limit of the interval and the lower limit of the interval.
For example, if a bit of data in the reference data block is a, and a is used as the reference value of the data bit, the reference data interval of the data bit is [ a-a2, a + a1], where a1 is a first predetermined amount and a2 is a second predetermined amount, and the reference data interval of the data bit can be used to determine whether data at the same position in the same type data block of the current frame exceeds the reference data interval.
The reference data block can select a data block of a video image with a standard basis and a very high occurrence frequency, namely a standard same-bit data block with the same position as the data block to be judged in a preset standard frame, or can select a data block relative to a previous frame of a current frame, namely a same-bit data block with the same position as the data block to be judged in the previous frame of the current frame, and along with the frame-by-frame processing and compression of an original video data stream, the reference data block is replaced by the same-bit data block of a frame which is just compressed, so that a criterion whether the data to be compressed of a next frame needs to be compressed is provided.
Further, the process of determining whether the data of each data block is in the corresponding reference data interval for all data blocks of the current frame includes:
judging whether each bit of data of each data block is in a corresponding reference data interval or not for all data blocks of the current frame;
counting data which are not in the corresponding reference data interval in each data block to obtain a first data digit;
judging whether the first data digit is greater than a preset data digit or not;
if yes, judging that the data of the data block is not in the corresponding reference data interval;
if not, judging that the data of the data block is in the corresponding reference data interval.
It can be understood that when the number of data bits exceeding the reference data interval is greater than the preset number of data bits, it is determined that the data of the entire data block is not in the corresponding reference data interval, and the reference data block cannot be directly used as the compressed data block of the current frame, and the data block of the current frame needs to be compressed to obtain an accurate compressed data block.
Further, on the basis of the reference data interval, another reference data interval may be added, and on the basis of not satisfying the reference data interval, it is determined again whether compression of the current data block can be avoided, specifically:
when the data of the data block is not in the corresponding reference data interval, the video compression method further comprises:
judging whether each bit of data of the data block is in a corresponding reference data interval;
counting data which are not in the corresponding reference data interval in the data block to obtain a second data bit;
judging whether the second data bit is larger than a preset data bit or not;
if so, judging that the data of the data block is not in the corresponding reference data interval, performing compression operation on the data block to obtain a compressed data block of the current frame and outputting the compressed data block to a post-stage framing unit;
if not, judging that the data of the data block is in the corresponding reference data interval, and outputting the compressed reference data block corresponding to the reference data interval to a post-stage framing unit as the compressed data block of the current frame.
Similarly, the determination process of the reference data interval includes:
and taking all data in a reference data block different from the reference data block as a reference value, adding a first preset quantity to each bit of data in the reference value to obtain an interval upper limit corresponding to each bit of data, subtracting a second preset quantity from each bit of data in the reference value to obtain an interval lower limit corresponding to each bit of data, and determining a reference data interval corresponding to each bit of data according to the interval upper limit and the interval lower limit.
Further, the reference data block may specifically be an adjacent data block adjacent to the data block to be determined in the previous frame of the current frame, or the reference data block may specifically be a standard identical data block with the same data block to be determined in the preset standard frame, and the selection of the reference data block may be set according to an actual situation.
Furthermore, the comparison result obtained according to the comparison and the corresponding measures can be configured in a register, for example, when the data of the data BLOCK is determined to be in the corresponding reference data interval, a BLOCK _ SAME [2:0] =1 signal is set to the JPEG compare module; when the data of the data BLOCK is judged to be in the corresponding reference data interval, setting a BLOCK _ SAME [2:0] =2 signal to a JPEG COMPRESS module; when the data of the data BLOCK is judged not to be in the corresponding reference data interval, a BLOCK _ SAME [2:0] =0 signal is set to a JPEG COMPRESS module, and the JPEG COMPRESS module determines the current positive compressed data BLOCK according to the value of the BLOCK _ SAME [2:0] in the register and outputs the current positive compressed data BLOCK to a subsequent framing unit.
The embodiment of the invention discloses a specific video compression method for a baseboard management control chip, and compared with the previous embodiment, the embodiment further explains and optimizes the technical scheme.
Specifically, in this embodiment, an average value of the whole data block is used as a determination reference, and the determining process of the reference data interval includes:
and taking the average value of all data in the data block of the previous frame as a reference value, adding a first preset quantity to the reference value to obtain an upper interval limit, subtracting a second preset quantity from the reference value to obtain a lower interval limit, and determining a reference data interval according to the upper interval limit and the lower interval limit.
It is understood that, in addition to selecting the previous frame, the data block for determining the reference value may also be directly selected from the data blocks of the video image with the standard basis and the extremely high frequency of occurrence, and the data block of the previous frame needs to be updated in time, and the data block of the standard basis will not change after determining a specific reference data interval.
Further, the process of determining whether the data of each data block is in the corresponding reference data interval for all data blocks of the current frame includes:
calculating the average value of all data of each data block for all data blocks of the current frame;
judging whether the average value is in the corresponding reference data interval;
if yes, judging that the data of the data block is not in the corresponding reference data interval;
if not, judging that the data of the data block is in the corresponding reference data interval.
It can be understood that, in this embodiment, it is determined whether the compressed reference data block corresponding to the reference data interval can be directly used by using the data representation of the entire data block, and in order to further improve the determination accuracy, when determining the reference data interval, the first preset amount and the second preset amount may be determined according to the standard deviation of all data in the entire data block, and the specific details may be set according to actual requirements.
Correspondingly, an embodiment of the present application further discloses a video compression system of a baseboard management control chip, as shown in fig. 5, including:
the interface module 1 is used for acquiring an original video data stream at a host end;
the conversion module 2 is used for converting the original video data stream into a data block in a YUV format;
the judging module 3 is configured to judge whether data of each data block is within a corresponding reference data interval for all data blocks of a current frame;
and a compression selection module 4, configured to, when the result of the determination module 3 is yes, output the compressed reference data block corresponding to the reference data interval to a subsequent-stage framing unit as a compressed data block of the current frame, and further, when the determination result of the determination module 3 is no, perform a compression operation on the data block to obtain a compressed data block of the current frame and output the compressed data block to the subsequent-stage framing unit.
According to the method and the device, the data block is compressed only when the data block is not in the reference data interval, a large number of unnecessary repeated compression actions are saved through judgment on whether the data block is in the reference data interval, system resources are saved, compression efficiency is improved, and the overall performance of the substrate management control chip is guaranteed.
In some specific embodiments, the determining of the reference data interval includes:
and taking all data in the reference data block as a reference value, adding a first preset quantity to each bit of data in the reference value to obtain an upper limit of an interval corresponding to each bit of data, subtracting a second preset quantity from each bit of data in the reference value to obtain a lower limit of the interval corresponding to each bit of data, and determining the reference data interval corresponding to each bit of data according to the upper limit of the interval and the lower limit of the interval.
In some specific embodiments, the determining module 3 determines, for all data blocks of the current frame, whether data of each data block is within a corresponding reference data interval, including:
for all data blocks of the current frame, judging whether each bit of data of each data block is in a corresponding reference data interval;
counting data which are not in the corresponding reference data interval in each data block to obtain a first data digit;
judging whether the first data digit is greater than a preset data digit or not;
if yes, judging that the data of the data block is not in the corresponding reference data interval;
and if not, judging that the data of the data block is in the corresponding reference data interval.
In some specific embodiments, the reference data block is a same-bit data block in a previous frame relative to the current frame, and the position of the same-bit data block is the same as that of the data block to be determined.
In some specific embodiments, when the data of the data block is not in the corresponding reference data interval, the determining module 3 is further configured to:
judging whether each bit of data of the data block is in a corresponding reference data interval;
counting data which are not in the corresponding reference data interval in the data block to obtain a second data bit;
judging whether the second data bit is larger than the preset data bit;
if so, judging that the data of the data block is not in the corresponding reference data interval, performing compression operation on the data block to obtain a compressed data block of the current frame, and outputting the compressed data block to the post-stage framing unit;
if not, judging that the data of the data block is in the corresponding reference data interval, and outputting the compressed reference data block corresponding to the reference data interval to a post-stage framing unit as a compressed data block of the current frame.
In some specific embodiments, the determining of the reference data interval includes:
and taking all data in a reference data block different from the reference data block as a reference value, adding a first preset amount to each bit of data in the reference value to obtain an interval upper limit corresponding to each bit of data, subtracting a second preset amount from each bit of data in the reference value to obtain an interval lower limit corresponding to each bit of data, and determining the reference data interval corresponding to each bit of data according to the interval upper limit and the interval lower limit.
In some specific embodiments, the reference data block is specifically:
and the adjacent position data block which is adjacent to the data block position to be judged in the previous frame relative to the current frame.
In some specific embodiments, the reference data block is specifically a standard identical data block with the same position of the data block to be determined in a preset standard frame.
In some specific embodiments, the reference data block is specifically a standard identical-bit data block with the same position as the data block to be determined in a preset standard frame.
In some specific embodiments, the reference data block is a data block of a previous frame relative to the current frame.
In some specific embodiments, the determining of the reference data interval includes:
and taking the average value of all data in the data block of the previous frame as a reference value, adding a first preset amount to the reference value to obtain an upper interval limit, subtracting a second preset amount from the reference value to obtain a lower interval limit, and determining the reference data interval according to the upper interval limit and the lower interval limit.
In some specific embodiments, the determining module 3 determines, for all data blocks of the current frame, whether data of each data block is within a corresponding reference data interval, including:
calculating the average value of all data of each data block for all data blocks of the current frame;
judging whether the average value is in the corresponding reference data interval;
if yes, judging that the data of the data block is not in the corresponding reference data interval;
and if not, judging that the data of the data block is in the corresponding reference data interval.
In some specific embodiments, the determining, for all data blocks of the current frame, whether data of each data block is within a corresponding reference data interval includes:
reading a plurality of data blocks of the current frame to a buffer area in parallel through a plurality of FIFO channels, and executing the step of judging whether the data of each data block is in the corresponding reference data interval or not for each data block which is read in the buffer area.
The embodiment of the present application also discloses an electronic device, which is shown in fig. 6 and includes a processor 11 and a memory 12; wherein, the processor 11 implements the following steps when executing the computer program stored in the memory 12:
acquiring an original video data stream at a host end;
converting the original video data stream into a data block in a YUV format;
judging whether the data of each data block is in a corresponding reference data interval or not for all data blocks of the current frame;
if yes, outputting a compressed reference data block corresponding to the reference data interval to a post-stage framing unit as a compressed data block of the current frame;
if not, the data block is compressed to obtain a compressed data block of the current frame and the compressed data block is output to the post-stage framing unit.
According to the embodiment of the application, the data block is compressed only when the data block is not in the reference data interval, and whether the data block is in the reference data interval or not is judged, so that a large number of unnecessary repeated compression actions are saved, system resources are saved, the compression efficiency is improved, and the overall performance of the substrate management control chip is ensured.
In some specific embodiments, when the processor 11 executes the computer subprogram stored in the memory 12, the following steps may be specifically implemented:
and taking all data in the reference data block as a reference value, adding a first preset quantity to each bit of data in the reference value to obtain an upper limit of an interval corresponding to each bit of data, subtracting a second preset quantity from each bit of data in the reference value to obtain a lower limit of the interval corresponding to each bit of data, and determining the reference data interval corresponding to each bit of data according to the upper limit of the interval and the lower limit of the interval.
In some specific embodiments, when the processor 11 executes the computer subprogram stored in the memory 12, the following steps may be specifically implemented:
for all data blocks of the current frame, judging whether each bit of data of each data block is in the corresponding reference data interval;
counting data which are not in the corresponding reference data interval in each data block to obtain a first data digit;
judging whether the first data digit is greater than a preset data digit or not;
if yes, judging that the data of the data block is not in the corresponding reference data interval;
and if not, judging that the data of the data block is in the corresponding reference data interval.
In some specific embodiments, the reference data block is a data block of a previous frame relative to the current frame.
In some specific embodiments, when the processor 11 executes the computer subprogram stored in the memory 12, the following steps may be specifically implemented:
and taking the average value of all data in the data block of the previous frame as a reference value, adding a first preset amount to the reference value to obtain an upper interval limit, subtracting a second preset amount from the reference value to obtain a lower interval limit, and determining the reference data interval according to the upper interval limit and the lower interval limit.
In some specific embodiments, when the processor 11 executes the computer subprogram stored in the memory 12, the following steps may be specifically implemented:
calculating the average value of all data of each data block for all data blocks of the current frame;
judging whether the average value is in the corresponding reference data interval;
if yes, judging that the data of the data block is not in the corresponding reference data interval;
and if not, judging that the data of the data block is in the corresponding reference data interval.
In some specific embodiments, when the processor 11 executes the computer subprogram stored in the memory 12, the following steps may be specifically implemented:
and sequentially performing discrete cosine transform, quantization processing and entropy coding operation on the data block to obtain a compressed data block of the current frame.
Further, the electronic device in this embodiment may further include:
the input interface 13 is configured to obtain a computer program imported from the outside, store the obtained computer program in the memory 12, and also be configured to obtain various instructions and parameters transmitted by an external terminal device, and transmit the instructions and parameters to the processor 11, so that the processor 11 performs corresponding processing by using the instructions and parameters. In this embodiment, the input interface 13 may specifically include, but is not limited to, a USB interface, a serial interface, a voice input interface, a fingerprint input interface, a hard disk reading interface, and the like.
And an output interface 14, configured to output various data generated by the processor 11 to a terminal device connected thereto, so that other terminal devices connected to the output interface 14 can acquire various data generated by the processor 11. In this embodiment, the output interface 14 may specifically include, but is not limited to, a USB interface, a serial interface, and the like.
A communication unit 15 for establishing a telecommunication connection between the electronic device and an external server so that the electronic device can mount the image file to the external server. In this embodiment, the communication unit 15 may specifically include, but is not limited to, a remote communication unit based on a wireless communication technology or a wired communication technology.
And the keyboard 16 is used for acquiring various parameter data or instructions input by a user through real-time key cap knocking.
And the display 17 is used for displaying relevant information of the video compression process in real time so that a user can know the current video compression situation in time.
The mouse 18 may be used to assist the user in entering data and to simplify the user's operation.
Further, embodiments of the present application also disclose a readable storage medium, where the readable storage medium includes Random Access Memory (RAM), memory, read Only Memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable hard disk, CD-ROM, or any other form of storage medium known in the art. The readable storage medium has stored therein a computer program which, when executed by a processor, performs the steps of:
acquiring an original video data stream at a host end;
converting the original video data stream into a data block in a YUV format;
judging whether the data of each data block is in a corresponding reference data interval or not for all data blocks of the current frame;
if yes, outputting a compressed reference data block corresponding to the reference data interval to a post-stage framing unit as a compressed data block of the current frame;
if not, the data block is compressed to obtain a compressed data block of the current frame and the compressed data block is output to the post-stage framing unit.
According to the embodiment of the application, the data block is compressed only when the data block is not in the reference data interval, and whether the data block is in the reference data interval or not is judged, so that a large number of unnecessary repeated compression actions are saved, system resources are saved, the compression efficiency is improved, and the overall performance of the substrate management control chip is ensured.
In some specific embodiments, the computer sub-program stored in the readable storage medium, when executed by the processor, may specifically implement the steps of:
and taking all data in a reference data block as a reference value, adding a first preset amount to each bit of data in the reference value to obtain an upper interval limit corresponding to each bit of data, subtracting a second preset amount from each bit of data in the reference value to obtain a lower interval limit corresponding to each bit of data, and determining the reference data interval corresponding to each bit of data according to the upper interval limit and the lower interval limit.
In some specific embodiments, when executed by a processor, the computer sub-program stored in the readable storage medium may specifically implement the following steps:
for all data blocks of the current frame, judging whether each bit of data of each data block is in the corresponding reference data interval;
counting data which are not in the corresponding reference data interval in each data block to obtain a first data digit;
judging whether the first data digit is greater than a preset data digit or not;
if yes, judging that the data of the data block is not in the corresponding reference data interval;
and if not, judging that the data of the data block is in the corresponding reference data interval.
In some specific embodiments, the reference data block is a data block of a previous frame relative to the current frame.
In some specific embodiments, when executed by a processor, the computer sub-program stored in the readable storage medium may specifically implement the following steps:
and taking the average value of all data in the data block of the previous frame as a reference value, adding a first preset amount to the reference value to obtain an upper interval limit, subtracting a second preset amount from the reference value to obtain a lower interval limit, and determining the reference data interval according to the upper interval limit and the lower interval limit.
In some specific embodiments, when executed by a processor, the computer sub-program stored in the readable storage medium may specifically implement the following steps:
calculating the average value of all data of each data block for all data blocks of the current frame;
judging whether the average value is in the corresponding reference data interval;
if yes, judging that the data of the data block is not in the corresponding reference data interval;
and if not, judging that the data of the data block is in the corresponding reference data interval.
In some specific embodiments, when executed by a processor, the computer sub-program stored in the readable storage medium may specifically implement the following steps:
and sequentially performing discrete cosine transform, quantization processing and entropy coding operation on the data block to obtain a compressed data block of the current frame.
Finally, it should also be noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising a … …" does not exclude the presence of another identical element in a process, method, article, or apparatus that comprises the element.
The video compression method, system and related components of a bmc chip provided by the present invention are described in detail above, and a specific example is applied in the present disclosure to explain the principle and the implementation of the present invention, and the description of the above embodiment is only used to help understanding the method and the core idea of the present invention; meanwhile, for a person skilled in the art, according to the idea of the present invention, there may be variations in the specific embodiments and the application scope, and in summary, the content of the present specification should not be construed as a limitation to the present invention.

Claims (14)

1. A video compression method of a baseboard management control chip is characterized by comprising the following steps:
acquiring an original video data stream at a host end;
converting the original video data stream into a data block in a YUV format;
judging whether the data of each data block is in a corresponding reference data interval or not for all data blocks of the current frame;
if yes, outputting a compressed reference data block corresponding to the reference data interval to a post-stage framing unit as a compressed data block of the current frame;
if not, performing compression operation on the data block to obtain a compressed data block of the current frame and outputting the compressed data block to the post-stage framing unit;
the process of determining whether the data of each data block is in the corresponding reference data interval for all data blocks of the current frame includes:
reading a plurality of data blocks of a current frame to a cache region in parallel through two FIFO channels, and executing the step of judging whether the data of each data block is in a corresponding reference data interval or not for each data block which is read in the cache region;
wherein the first FIFO channel reads a complete data block one line slower than the second FIFO channel.
2. The video compression method of claim 1, wherein the determining of the reference data interval comprises:
and taking all data in the reference data block as a reference value, adding a first preset quantity to each bit of data in the reference value to obtain an upper limit of an interval corresponding to each bit of data, subtracting a second preset quantity from each bit of data in the reference value to obtain a lower limit of the interval corresponding to each bit of data, and determining the reference data interval corresponding to each bit of data according to the upper limit of the interval and the lower limit of the interval.
3. The video compression method according to claim 2, wherein the step of determining whether the data of each of the data blocks is within the corresponding reference data interval for all the data blocks of the current frame comprises:
judging whether each bit of data of each data block is in a corresponding reference data interval or not for all data blocks of the current frame;
counting data which are not in the corresponding reference data interval in each data block to obtain a first data digit;
judging whether the first data digit is greater than a preset data digit or not;
if yes, judging that the data of the data block is not in the corresponding reference data interval;
and if not, judging that the data of the data block is in the corresponding reference data interval.
4. The video compression method according to claim 3, wherein the reference data block is a same-bit data block in a previous frame relative to a current frame, the same-bit data block having a same position as the data block to be determined.
5. The video compression method of claim 4, wherein when the data of the data block is not in the corresponding reference data interval, the video compression method further comprises:
judging whether each bit of data of the data block is in a corresponding reference data interval;
counting data which are not in the corresponding reference data interval in the data block to obtain a second data bit;
judging whether the second data bit is larger than the preset data bit;
if so, judging that the data of the data block is not in the corresponding reference data interval, performing compression operation on the data block to obtain a compressed data block of the current frame, and outputting the compressed data block to the post-stage framing unit;
if not, judging that the data of the data block is in the corresponding reference data interval, and outputting the compressed reference data block corresponding to the reference data interval to a post-stage framing unit as a compressed data block of the current frame.
6. The video compression method of claim 5, wherein the determining of the reference data interval comprises:
and taking all data in a reference data block different from the reference data block as a reference value, adding a first preset quantity to each bit of data in the reference value to obtain an interval upper limit corresponding to each bit of data, subtracting a second preset quantity from each bit of data in the reference value to obtain an interval lower limit corresponding to each bit of data, and determining the reference data interval corresponding to each bit of data according to the interval upper limit and the interval lower limit.
7. The video compression method of claim 6, wherein the reference data block is specifically:
and the adjacent position data block is adjacent to the position of the data block to be judged in the previous frame of the current frame.
8. The video compression method as claimed in claim 6, wherein the reference data block is a standard identical-bit data block with the same position as the data block to be determined in a preset standard frame.
9. The video compression method as claimed in claim 3, wherein the reference data block is a standard identical-bit data block with the same position as the data block to be determined in a preset standard frame.
10. The video compression method according to claim 1, wherein the determining of the reference data interval comprises:
and taking the average value of all data in the data block of the previous frame as a reference value, adding a first preset amount to the reference value to obtain an upper interval limit, subtracting a second preset amount from the reference value to obtain a lower interval limit, and determining the reference data interval according to the upper interval limit and the lower interval limit.
11. The video compression method according to claim 10, wherein the step of determining whether the data of each of the data blocks is within the corresponding reference data interval for all data blocks of the current frame comprises:
calculating the average value of all data of each data block for all data blocks of the current frame;
judging whether the average value is in the corresponding reference data interval;
if yes, judging that the data of the data block is not in the corresponding reference data interval;
and if not, judging that the data of the data block is in the corresponding reference data interval.
12. A video compression system of a baseboard management control chip, comprising:
the interface module is used for acquiring an original video data stream at a host end;
the conversion module is used for converting the original video data stream into a data block in a YUV format;
the judging module is used for judging whether the data of each data block is in a corresponding reference data interval or not for all data blocks of the current frame;
a compression selection module, configured to output, as a compressed data block of a current frame, a compressed reference data block corresponding to the reference data interval to a subsequent-stage framing unit when the result of the determination module is yes, and further configured to perform a compression operation on the data block to obtain a compressed data block of the current frame and output the compressed data block to the subsequent-stage framing unit when the determination result of the determination module is no;
the judgment module is specifically configured to:
reading a plurality of data blocks of a current frame to a cache region in parallel through two FIFO channels, and executing the step of judging whether the data of each data block is in a corresponding reference data interval or not for each data block which is read in the cache region;
wherein the first FIFO channel reads a complete data block one line slower than the second FIFO channel.
13. An electronic device, comprising:
a memory for storing a computer program;
a processor for implementing the steps of the video compression method of the bmc chip of any one of claims 1 to 11 when executing the computer program.
14. A readable storage medium, wherein the readable storage medium has stored thereon a computer program, which when executed by a processor, implements the steps of the video compression method of the bmc chip according to any one of claims 1 to 11.
CN202211412341.0A 2022-11-11 2022-11-11 Video compression method and system of baseboard management control chip and related components Active CN115460414B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202211412341.0A CN115460414B (en) 2022-11-11 2022-11-11 Video compression method and system of baseboard management control chip and related components
PCT/CN2023/095596 WO2024098715A1 (en) 2022-11-11 2023-05-22 Video compression method and system for baseboard management control chip, and related components

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211412341.0A CN115460414B (en) 2022-11-11 2022-11-11 Video compression method and system of baseboard management control chip and related components

Publications (2)

Publication Number Publication Date
CN115460414A CN115460414A (en) 2022-12-09
CN115460414B true CN115460414B (en) 2023-03-07

Family

ID=84295748

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211412341.0A Active CN115460414B (en) 2022-11-11 2022-11-11 Video compression method and system of baseboard management control chip and related components

Country Status (2)

Country Link
CN (1) CN115460414B (en)
WO (1) WO2024098715A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115460414B (en) * 2022-11-11 2023-03-07 苏州浪潮智能科技有限公司 Video compression method and system of baseboard management control chip and related components
CN117319716B (en) * 2023-11-28 2024-02-27 苏州元脑智能科技有限公司 Resource scheduling method of baseboard management control chip and baseboard management control chip
CN117319675B (en) * 2023-11-28 2024-02-27 苏州元脑智能科技有限公司 Video compression system of server management control chip
CN117319676B (en) * 2023-11-28 2024-02-23 苏州元脑智能科技有限公司 Video compression device, chip, system and method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107659815A (en) * 2017-09-13 2018-02-02 中国科学院半导体研究所 Image decompression method and the device for performing it
CN113079379A (en) * 2021-03-26 2021-07-06 山东英信计算机技术有限公司 Video compression method, device, equipment and computer readable storage medium
CN115209145A (en) * 2022-09-15 2022-10-18 苏州浪潮智能科技有限公司 Video compression method, system, device and readable storage medium

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016017953A1 (en) * 2014-07-30 2016-02-04 엔트릭스 주식회사 System for cloud streaming service, method for still image-based cloud streaming service and apparatus therefor
CN109640089B (en) * 2018-11-02 2023-03-24 西安万像电子科技有限公司 Image coding and decoding method and device
CN113905240A (en) * 2020-06-22 2022-01-07 中兴通讯股份有限公司 Video encoding method and device, server and storage medium
CN115086668B (en) * 2022-07-21 2023-01-10 苏州浪潮智能科技有限公司 Video compression method, system, equipment and computer readable storage medium
CN115460414B (en) * 2022-11-11 2023-03-07 苏州浪潮智能科技有限公司 Video compression method and system of baseboard management control chip and related components

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107659815A (en) * 2017-09-13 2018-02-02 中国科学院半导体研究所 Image decompression method and the device for performing it
CN113079379A (en) * 2021-03-26 2021-07-06 山东英信计算机技术有限公司 Video compression method, device, equipment and computer readable storage medium
CN115209145A (en) * 2022-09-15 2022-10-18 苏州浪潮智能科技有限公司 Video compression method, system, device and readable storage medium

Also Published As

Publication number Publication date
WO2024098715A1 (en) 2024-05-16
CN115460414A (en) 2022-12-09

Similar Documents

Publication Publication Date Title
CN115460414B (en) Video compression method and system of baseboard management control chip and related components
CN111247801B (en) System and method for event camera data processing
CN108900843B (en) Monochrome image compression method, apparatus, medium, and electronic device
WO2021082667A1 (en) Video data encoding method and device, apparatus, and storage medium
CN107155093B (en) Video preview method, device and equipment
CN114051145B (en) Video compression processing method, device and medium
CN112135140B (en) Video definition identification method, electronic device and storage medium
WO2022161227A1 (en) Image processing method and apparatus, and image processing chip and electronic device
CN115086668B (en) Video compression method, system, equipment and computer readable storage medium
CN111683251A (en) Video data storage method and device and computer readable storage medium
CN112839231A (en) Video compression transmission method and system
US9179155B1 (en) Skipped macroblock video encoding enhancements
CN115209145A (en) Video compression method, system, device and readable storage medium
CN113068042A (en) Video compression method, system and device
CN112948151A (en) Program interface image transmission method, substrate management controller and remote control equipment
CN113573072B (en) Image processing method and device and related components
CN113381898B (en) Display module interference removing method and device, computer equipment and storage medium
CN113286174A (en) Video frame extraction method and device, electronic equipment and computer readable storage medium
CN112637602B (en) JPEG interface and digital image processing system
CN115866331A (en) Video frame extraction analysis method, device, equipment and storage medium
CN108876703B (en) Data storage method
CN115499667B (en) Video processing method, device, equipment and readable storage medium
CN111147954A (en) Thumbnail extraction method and device
WO2024001970A1 (en) Event data processing method and related device
CN112073726B (en) Compression method and device, computer readable storage medium and electronic device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant