WO2014101642A1 - Video playing apparatus and method - Google Patents

Video playing apparatus and method Download PDF

Info

Publication number
WO2014101642A1
WO2014101642A1 PCT/CN2013/088624 CN2013088624W WO2014101642A1 WO 2014101642 A1 WO2014101642 A1 WO 2014101642A1 CN 2013088624 W CN2013088624 W CN 2013088624W WO 2014101642 A1 WO2014101642 A1 WO 2014101642A1
Authority
WO
WIPO (PCT)
Prior art keywords
scaling
video data
unit
clock
read
Prior art date
Application number
PCT/CN2013/088624
Other languages
French (fr)
Chinese (zh)
Inventor
严卫健
刘俊秀
王雅君
Original Assignee
深圳艾科创新微电子有限公司
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 深圳艾科创新微电子有限公司 filed Critical 深圳艾科创新微电子有限公司
Priority to CN201380058680.6A priority Critical patent/CN104782118B/en
Publication of WO2014101642A1 publication Critical patent/WO2014101642A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • H04N7/0135Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving interpolation processes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • H04N7/0105Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level using a storage device with different write and read speed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4305Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer

Definitions

  • the present invention belongs to the field of video processing technologies, and in particular, to a video scaling apparatus and method. Background technique
  • a conventional video zooming device In the design of a conventional video zooming device, it includes a scaling of any ratio in the horizontal direction and the vertical direction.
  • the easiest way to achieve scaling is to directly scale the pixels in the horizontal direction to reduce the length of the line, or to enlarge the length of the line by copying the pixels; to discard or copy the line data in the vertical direction to achieve scaling .
  • This scaling process does not perform any filtering processing, so the video image may be severely distorted or even deformed, which is unacceptable in video processing.
  • Interpolation processing can solve the above problem of video image distortion.
  • the interpolation process performs weighting operation on consecutive pixels to obtain new pixel points.
  • only a few consecutive pixels need to be stored.
  • the interpolation process in the vertical direction performs weighting operations on corresponding pixels of consecutive rows in the vertical direction, which requires several rows of line buffers to store adjacent lines of video data.
  • only the line buffer is not enough, because after storing a few lines of video data, a weighting operation is required, and the operation of the next line can be continued after the line is output.
  • This has a problem for continuous video data streams, that is, the line buffer must wait for the operation of a line of video data to be output before accepting the video data input of the next line.
  • the input is continuous.
  • the input data will be lost or staggered, resulting in distortion of the video image. Since the input rate of the video data stream is inconsistent with the display output rate, it is necessary to store the input video data first in the design. In the case that the output display video refresh rate is consistent with the input, that is, the field frequency is consistent, it is guaranteed that the entire field data is stored without losing data. A need to store hundreds of lines of video data, so that a large SDRAM (Synchronous Dynamic Random Access Memory) is required for storage, which takes up a large amount of chip area, resulting in a large increase in cost.
  • SDRAM Synchronous Dynamic Random Access Memory
  • the object of the present invention is to solve at least one of the above technical problems to some extent.
  • a first object of the present invention is to provide a video scaling apparatus which uses at least 2n line buffer units of a storage space as a buffer and fault tolerance for video data, achieving excellent video processing effects and reducing costs.
  • a second object of the present invention is to propose a video scaling method.
  • a third object of the present invention is to propose a storage medium.
  • a video scaling apparatus includes: a line buffer control unit, configured to receive input first video data; and a line buffer unit, configured to buffer the line buffer control unit to write The first video data, wherein a storage space of the line buffer unit is a storage space of at least 2 ⁇ rows, where ⁇ is a number of pixels required for each interpolation process in the scaling process, and each row of the storage space is a size of the storage space required for the first video data of each line; a first weighting unit, configured to read the first video data in the line buffer unit, and perform the first video data a first weighting process to obtain second video data that is scaled in a vertical direction; a dot buffer unit, configured to buffer the second video data written by the first weighting unit; and a second weighting unit, configured to read Decoding the second video data in the buffer unit, and performing second weighting processing on the second video data to
  • the video scaling apparatus uses a line buffer unit of at least 2n storage spaces as a buffer and fault tolerance of video data, and provides a configurable scaling clock in a proportionally adjustable manner, at an input clock, input video data, and a scaling clock.
  • a dynamic balance is achieved between the output video data and the excellent video zoom processing effect.
  • the SDRAM does not need to occupy a large amount of chip area, and the added amount is only much smaller than the chip occupied by the entire video data.
  • the 2 ⁇ row buffer unit greatly reduces the cost of the entire chip, and at the same time enables real-time arbitrary scale video scaling.
  • the storage space of the line buffer unit is a storage space of 2n+1 rows.
  • the method further includes: a correction unit, configured to monitor a read/write state of the row buffer unit, and perform correction when the read/write state is abnormal.
  • a correction unit configured to monitor a read/write state of the row buffer unit, and perform correction when the read/write state is abnormal.
  • the method further includes: a timing unit, configured to generate a row read control signal according to the scaled clock, wherein the row read control signal has a total length of one cycle from the row a time required for reading a row of data according to the scaling ratio in the buffer unit, wherein if the low level interval/high level interval of the row read control signal is a blanking interval, the high level interval is A line of valid data is read from the line buffer unit according to the scaling ratio in the /low level interval.
  • a timing unit configured to generate a row read control signal according to the scaled clock, wherein the row read control signal has a total length of one cycle from the row a time required for reading a row of data according to the scaling ratio in the buffer unit, wherein if the low level interval/high level interval of the row read control signal is a blanking interval, the high level interval is A line of valid data is read from the line buffer unit according to the scaling ratio in the /low level interval.
  • the correcting unit is further configured to perform correction according to one or more of the following rules: adjusting the timing unit to adjust a total length of one period of the row read control signal; Or adjusting the period/frequency of the scaled clock by adjusting the clock generating unit; or adjusting the scaling.
  • the adjusting the timing unit to adjust the total length of the line read control signal for one cycle is: adjusting a length of the blanking interval of the read control signal.
  • the adjusting the scaling ratio is specifically: adjusting a scaling ratio in a vertical direction.
  • the correcting unit is specifically configured to perform correction by adjusting one or more of the following rules: if the read operation is too fast to catch up with the write operation, adjust the timing unit to The duration of the blanking interval corresponding level signal in the read control signal is increased by a first preset time period, and if the write operation is too fast to catch up with the read operation, adjusting the timing unit to read the line The duration of the blanking interval corresponding to the level signal in the control signal is decreased by a first preset time period; or if the read operation is too fast to catch up with the write operation, adjusting the clock generating unit to increase the period of the scaling clock a second preset time period / reducing the frequency of the zoom clock by a second preset value, if the write operation is too fast to catch up with the read operation, adjusting the clock generation unit to reduce the period of the zoom clock by a second Presetting a time period / increasing the frequency of the zoom clock by a second preset value; or if the read operation is too fast to
  • the method further includes: a field filtering unit, configured to filter the first video data input into the line buffer control unit.
  • the video scaling method of the second aspect of the present invention includes the following steps: S1: acquiring an input clock of the input first video data, and acquiring a scaling clock according to the input clock and the scaling ratio;
  • S2 determining whether the vertical scaling m in the vertical direction is greater than n, where n is the number of pixels required for each interpolation process in the scaling process;
  • S3 if yes, further determining whether m is a non-integer;
  • S31 No, the first video data of the n rows is written every time the data is written into the line buffer unit, and the first video data of the mn line is discarded, wherein the storage space of the line buffer unit is a storage space of at least 2 ⁇ rows, wherein a size of the storage space per row is a size of a storage space required for each row of the first video data;
  • S32 If yes, storing the first video of each row After the data, discard the first video data of the Iml-n line, and accumulate the fractional part of mn to obtain the accumulated value, and when the accumulated value reaches 1, discard the first video data of the lml-n+1 line And clearing the accumulated number, and repeating the S32 every time the n-line of the
  • the video scaling method of the embodiment of the present invention uses a line buffer unit of at least 2n storage spaces as a buffer and fault tolerance of video data, and provides a configurable scaling clock in a proportionally adjustable manner, at an input clock, input video data, and a scaling clock. A dynamic balance is achieved between the output video data and the excellent video scaling effect.
  • the step S1 includes: acquiring a first product of the input clock and a scaling ratio, and using the first product as the scaling clock; wherein, the scaling ratio is The number of vertical lines of the third video data * the number of horizontal pixels of the third video data) I (the number of vertical lines of the first video data * the number of horizontal pixels of the first video data).
  • the read data operations in steps S3 and S4 and the write data operations in S5 are performed synchronously for different row address spaces.
  • the method further includes the steps of: monitoring a read/write status of the line buffer unit, and performing correction when the read/write status is abnormal.
  • the method further includes the following steps: generating a row read control signal according to the scaled clock, wherein a total length of one period of the row read control signal is from the row buffer unit according to the scaling The time required to read a row of data in a ratio, wherein if the low-level interval/high-level interval of the row read control signal is a blanking interval, then according to the high-level interval/low-level interval The scaling reads a row of valid data from the line buffer unit.
  • the correction is performed according to one or more of the following rules: adjusting the total length of one period of the row read control signal; or adjusting the period/frequency of the scaled clock; or adjusting the The vertical scaling.
  • the adjusting the total length of the read control signal for one cycle is specifically: adjusting a length of the blanking interval of the read control signal.
  • the adjusting the scaling ratio is specifically: adjusting a scaling ratio in a vertical direction.
  • the correcting according to one or more of the following rules specifically includes: if the read operation is too fast to catch up with the write operation, then the blanking interval in the row read control signal The duration of the corresponding level signal is increased by the first preset time period, and if the write operation is too fast to catch up with the read operation, the duration of the blanking interval corresponding level signal in the line read control signal is decreased.
  • the zoom clock will be Decreasing the second preset time period by // increasing the frequency of the zoom clock by a second preset value; or if the read operation is too fast to catch up with the write operation, reducing the zoom ratio by a preset threshold to reduce the Describe the step size of the data read by the cache unit. If the write operation is too fast to catch up with the read operation, the scaling is increased by a preset threshold to increase the step size of reading data from the line buffer unit.
  • the method before step S1, further comprises: performing vertical filtering on the first video data.
  • a storage medium for storing an application for performing a video scaling method according to an embodiment of the second aspect of the present invention.
  • FIG. 1 is a schematic diagram of a prior art video zooming apparatus
  • FIG. 2 is a structural block diagram of a video scaling apparatus according to an embodiment of the present invention.
  • FIG. 3 is a schematic diagram of interpolation points in a bicubic interpolation algorithm used in an embodiment of the present invention
  • FIG. 4 is a schematic diagram of an interpolation step size in a bicubic interpolation algorithm used in an embodiment of the present invention
  • FIG. 5 is a schematic diagram of image size changes before and after scaling of a video according to an embodiment of the present invention
  • FIG. 6 is a schematic structural diagram of the first weighting unit 104 and/or the second weighting unit 107;
  • FIG. 7 is a structural block diagram of a video zooming apparatus according to another embodiment of the present invention.
  • FIG. 8 is a structural block diagram of a video zooming apparatus according to still another embodiment of the present invention.
  • FIG. 9 is a flowchart of a video zooming method according to an embodiment of the present invention. detailed description
  • the prior art video scaling apparatus includes: a two-line FIFO (First Input First Output) buffer 1-1, six line buffers (Linel to Line6) 1-2, shifting Shift register 1-3 and phase locked loop (PLL, Phase Locked Loop) l-4.
  • the buffer 1-1 and the six line buffers 1-2 of the two-line FIFO buffer the video data input in real time, and cooperate with the configurable zoom clock outputted by the phase locked loop 1-4 to complete the video scaling.
  • the input video data is input to the six line buffers 1-2 through the buffer 1-1 of the FIFO, and is input to the shift registers 1-3 through the weighting processing in the vertical direction, and is horizontally oriented.
  • the weighting process on the output outputs the final scaled video data scaler output.
  • clk_video represents the input clock
  • clk_scale represents the scaling clock
  • phase-locked loops 1-4 are used to output a configurable scaling clock clk_scale based on the input clock clk_video.
  • the above method has the following problems: Due to a total of six line buffers, the processing effect is not good enough to meet the real-time requirements. For example, if double legislative interpolation is used, four lines of video data are required for the scaling operation. After processing one line of video data output, at most two lines of buffered data are ready, so the real-time requirements of the video cannot be met.
  • embodiments of the present invention propose a video scaling apparatus and method.
  • the video scaling device uses multiple buffers to buffer real-time input video data. The details are described below with reference to the drawings.
  • FIG. 2 is a structural block diagram of a video scaling apparatus according to an embodiment of the present invention.
  • the video scaling device includes: a line buffer control unit 102, a line buffer unit 103, a first weighting unit 104, a dot buffer unit 106, a second weighting unit 107, a latch unit 108, and a clock generating unit 105.
  • the line buffer control unit 102 is configured to receive the input first video data.
  • input means lose The first video data entered.
  • the line buffer unit 103 is configured to cache the first video data written by the line buffer control unit 102, wherein the storage space of the line buffer unit 103 is a storage space of at least 2 ⁇ rows, where ⁇ is the time of each interpolation processing in the scaling process.
  • the number of pixels required, the size of each line of storage is the size of the storage space required for the first video data per line.
  • an unknown pixel point is calculated by interpolation of 4 known pixel points, as shown in FIG. 3, taking the scaling ratio of 5:4 as an example, assuming that the position of the pixel to be interpolated is at 0. Point, the pixel to be interpolated is calculated by interpolation of 4 pixels around it.
  • the position of 0 o'clock is always between ⁇ 2, ⁇ 3 o'clock, and 0 o'clock can coincide with ⁇ 2 o'clock.
  • the value of the inserted zero point is determined by the following formula (1):
  • P1 ⁇ P4 are the original pixel points
  • hi ⁇ ! 4 is the corresponding coefficient.
  • the coefficients are determined by a lookup table.
  • Each corresponding coefficient corresponds to a 256 X 8 bit table, so a total of 4 X 256 X 8 bit memory cells are needed to store the coefficients.
  • the zoom ratio is the step size of the double-cubic interpolation.
  • the unit distance between the original pixel points is 1, and the relationship between the original pixel point and the newly interpolated new pixel point is shown in Fig. 4.
  • the storage space of the line buffer unit 103 is a storage space of 2n+1 rows. In one embodiment of the present invention, if the double-pair method is used for interpolation, ⁇ is equal to 4, and the storage space of the line buffer unit 103 is at least 8 lines of storage space. Preferably, in another embodiment of the present invention, the storage space of the line buffer unit 103 is 9 lines of storage space.
  • the line buffer unit 103 of the embodiment of the present invention includes 9 line buffers, that is, a storage space (Linel to Line9) for sequentially storing input.
  • Video data while four of the nine line buffers provide data for bicubic interpolation operations in the field direction (ie, vertical direction).
  • the timing of outputting video data when video data output is required, four line buffers are inevitably used for output.
  • another five line buffers can be used to continue storing the input video data.
  • the line frequency of the input video data and the line frequency of the output video data determine the input and output timing of the 9 line buffers.
  • the time for outputting one line of video data is twice that of inputting one line of video data, so that the output of one line of video data is inevitably already stored in 2 Line video data to 2 line buffers, as the next line of video data output, you can use the next 4 line buffers to buffer the input video data, including 2 lines of buffer that have stored video data Device. It should be understood that which four line buffers are used depends on the step size of the field direction (i.e., scaling), which will be described in detail in subsequent embodiments.
  • the line buffer control unit 102 provides a read/write start signal and a read/write clock by the line buffer unit 103. (i.e., input clock)
  • the cache control of the line buffer unit 103 is implemented.
  • the storage space of the line buffer unit 103 is at least 2 ⁇ rows. It should be understood that the storage space of the line buffer unit 103 is not limited to 2 ⁇ rows. For example, it can be 2 ⁇ +1 rows, 2 ⁇ +2 rows. In one embodiment of the present invention, the size of the storage space of the row buffer unit 103 needs to comprehensively consider the occupied area and meet the requirements of any scaling. When the space is larger, the timing requirement is lower because the remaining line buffer is available. The device is used for fault-tolerant processing to ensure a certain error tolerance range, making the input and output easier to balance.
  • the line blanking area and the field blanking area do not transmit effective display data, and the mechanism of adjustable output blanking area length is added, so that the balance adjustment is more flexible, but of course, when the storage space When it is larger than 2 ⁇ , the occupied chip area is larger.
  • the first weighting unit 104 is configured to read the first video data in the line buffer unit 103, and perform a first weighting process on the first video data to obtain the second video data that is scaled in the vertical direction.
  • the dot buffer unit 106 is configured to buffer the second video data written by the first weighting unit.
  • the second weighting unit 107 is configured to read the second video data in the point buffer unit 106, and perform a second weighting process on the second video data to obtain the third video data that is scaled in the horizontal direction.
  • the latch unit 108 is configured to buffer the third video data (output) written by the second weighting unit 107.
  • the clock generating unit 105 is configured to acquire an input clock of the first video data, and send the input clock to the line buffer control unit 102 as a write clock of the line buffer control unit 102, and obtain a scaling clock according to the input clock and the scaling ratio, and The scaling clock is sent to the line buffer unit 103, the dot buffer unit 106, and the latch unit 108 as the read/write clocks of the line buffer unit 103, the dot buffer unit 106, and the latch unit 108.
  • the third video data is video data (output) output by the video scaling device.
  • the clock generating unit 105 includes two multipliers, or a three-input multiplier, for example, realizing the input clock clk_video with horizontal scaling in the horizontal direction and vertical scaling in the vertical direction. Multiplying the ratios yields the scaling clock clk_ SCa le, as shown in equation (2):
  • Hpixel represents the horizontal pixel number of the first video data (ie, the input video data)
  • Vpixel represents the vertical line number of the first video data (ie, the input video data)
  • Hpixel ' represents the third video data (ie, the output video) Data
  • the number of horizontal pixels, Vpixel ' represents the number of vertical lines of the third video data (ie, the output video data)
  • the ratio of Hpixel to Hpixel ' is the horizontal scaling in the horizontal direction
  • Vpixel and Vpixel ' The ratio is the vertical scaling in the vertical direction, and the product of the horizontal scaling and the vertical scaling is the scaling.
  • the clock generating unit further proportionally adjustable by a phase-locked loop, the output clock can be configured to achieve, the structure of the input clock clk_ V ide 0 and scaling may be configured to obtain the proper scaling clock clk_scale 105 0
  • the input video data is outputted by the video scaling apparatus according to the embodiment of the present invention.
  • FIG. 5 is only a reduced schematic diagram, and the output video data may be any ratio. Zoom in or out on video data.
  • clk_scale is larger than clk_video when the output video resolution (Hpixel' X Vpixel' ) is greater than the input video resolution (Hpixel x Vpixel), and clk_scale is smaller than clk_video when the output video resolution is less than the input video resolution.
  • the clock generating unit 105 can also implement a configurable scaling clock through a proportionally adjustable phase-locked loop.
  • the structure is fixed according to the input clock frequency and the input signal resolution.
  • the output resolution should be a known fixed value corresponding to the display requirement.
  • the frequency of the output clock can be calculated proportionally (that is, the frequency of the scaled clock). Due to the configurability of the output clock, an appropriate clock frequency value can be obtained. This allows the input and output rates to reach a certain balance to some extent.
  • FIG. 6 A schematic diagram of the structure of the first weighting unit 104 and/or the second weighting unit 107 is shown in FIG.
  • the first weighting unit 104 and/or the second weighting unit 107 includes a weighting coefficient subunit, n multipliers, and an adder, and the weighting coefficient subunit outputs n.
  • weighting coefficient subunit may be a lookup table.
  • the storage unit is not specifically limited herein.
  • the video scaling apparatus uses a line buffer unit of at least 2n storage spaces as a buffer and fault tolerance of video data, and provides a configurable scaling clock in a proportionally adjustable manner, at an input clock, input video data, and a scaling clock.
  • a dynamic balance is achieved between the output video data and the excellent video zoom processing effect.
  • the SDRAM does not need to occupy a large amount of chip area, and the added amount is only much smaller than the chip occupied by the entire video data.
  • the 2 ⁇ row buffer unit greatly reduces the cost of the entire chip, and at the same time enables real-time arbitrary scale video scaling.
  • FIG. 7 is a structural block diagram of a video scaling apparatus according to another embodiment of the present invention.
  • the video scaling apparatus includes: a line buffer control unit 102, a line buffer unit 103, a first weighting unit 104, a dot buffer unit 106, The second weighting unit 107, the latch unit 108, the clock generating unit 105, the correcting unit 109, and the timing unit 110.
  • the correcting unit 109 is configured to monitor the read/write status of the line buffer unit 103, and perform correction when the read/write status is abnormal.
  • the storage space of 2n+1 rows constitutes a storage ring
  • the row buffer unit 103 determines the number of rows of the storage space to be read at a time according to the first weighting process, and reads the storage space according to the scaling ratio and the last time.
  • the first line position determines the first line position of the next read storage space. For example, if the first weighting process is a double-legislation interpolation algorithm, the number of rows of the storage space at one time is 4 rows; for example, if the scaling ratio is 5/4 or 1.25, if the storage space is read first
  • the line position is the first line, and the video data of the first line to the fourth line is read.
  • the line buffer unit 103 determines the read/write process according to the scaling ratio, and is not intended to limit the scope of protection of the embodiments of the present invention.
  • the correction unit 109 can achieve the correct effect by adjusting Hpixel' without detecting ⁇ ⁇ , A y .
  • the correcting unit 109 monitors the read and write status of the nine line buffers in one field. When which line buffer reads and writes at the same time, it indicates that read and write confusion has occurred, and the configured Hpixel 'has to be corresponding. Adjustment. Only knowing whether reading too fast or writing too fast can make adjustments in the corresponding direction.
  • Each of the 9 line buffers in the output timing is read to obtain 1 line of output, and the data of which 4 lines of buffer is read is determined according to the accumulation of the scaling (step size). Since the starting position of each field is the same, that is, when reading the 4 line buffers of 1, 2, 3, 4, the 7th line buffer is written, and when the read and write operations occur simultaneously, it is a write operation. Catch up with the read operation or the read operation to catch up with the write operation to determine whether it is reading too fast or writing too fast.
  • the timing unit 110 is configured to generate a row read control signal according to the scaling clock, and the total length of the row read control signal for one cycle is required to read a row of data from the row buffer unit 103 according to the scaling ratio. Time, wherein, if the low-level interval/high-level interval of the row read control signal is a blanking interval, a row is validly read from the row buffer unit according to the scaling ratio in the high-level interval/low-level interval. data.
  • the correcting unit 109 is further configured to correct the read/write abnormality according to one or more of the following rules:
  • the total length of one cycle of the control signal is read by adjusting the timing unit 110 to adjust the line.
  • the adjustment of the timing unit 110 to adjust the total length of one cycle of the row read control signal is specifically: adjusting the length of the blanking interval of the read control signal.
  • the timing unit 110 is adjusted to increase the duration of the blanking interval corresponding level signal in the row read control signal by the first pre- The time period is set. If the write operation is too fast to catch up with the read operation, the adjustment timing unit 110 reduces the duration of the blanking interval corresponding level signal in the line read control signal by the first preset time period.
  • the storage space constitutes a storage ring, and the read and write operations are simultaneously present in the storage ring. If the read operation and the write operation are balanced, there is no conflict between the read and write operations. If the read operation is too fast to catch up with the write operation, a read-write conflict occurs, that is, the read of the first video data from the line buffer unit 103 for processing to output the third video data is too fast to catch up. The write operation of the incoming buffer unit 103, therefore, the read data is too fast, so that the cache unit corresponding to the read data is the same as the cache unit corresponding to the write data, or the cache unit corresponding to the read data corresponds to the cache that has not yet written data.
  • the reading speed it is necessary to adjust the factors affecting the reading speed to match the reading speed and the writing speed to maintain the balance of the read and write operations, and increase the duration of the corresponding level signal of the blanking interval in the line read control signal by the first pre- Set the time period to reduce the reading speed; similarly, if the write operation is too fast to catch up with the read operation, the read/write conflict will also occur, and the duration of the blanking interval corresponding level signal in the control signal will be read.
  • Increasing the first preset time period reduces the time required to read a line, thereby speeding up the reading speed.
  • the first preset time period may be a user setting or a default setting, and by such repeated adjustment, the output timing and the input timing may be balanced.
  • the period/frequency of the scaling clock is adjusted by adjusting the clock generating unit 105.
  • the adjustment clock generation unit 105 increases the period of the scaling clock by a second predetermined period of time / reduces the frequency of the scaling clock.
  • the second preset value if the write operation is too fast to catch up with the read operation, the adjustment clock generation unit 105 decreases the period of the zoom clock by a second preset time period / increases the frequency of the zoom clock by a second preset value.
  • the second preset time period can be set by the user or set by default. Through such repeated adjustments, the output timing and the input timing can be balanced.
  • the scaling is specifically: adjusting the scaling of the vertical direction, that is, adjusting the scaling of the field direction.
  • the scaling is decreased by the preset threshold to reduce the step size of reading data from the line buffer unit 103, if the write operation is too fast.
  • the scaling is increased by a preset threshold to increase the step size of reading data from the line buffer unit 103, thereby speeding up the read operation. More specifically, if the scaling in the vertical direction is larger than the number of pixels required for each interpolation processing in the scaling processing, the first video data of a part of the number of lines must be discarded each time data is written to the line buffer unit 103.
  • the number of rows to be discarded is the difference between the number of pixels and the scaling in the vertical direction (as described in the method embodiment below). Therefore, the balance between the output timing and the input timing can be achieved by adjusting the scaling.
  • the correcting unit 109 adjusts the read/write operation until the simultaneous read/write operation abnormality does not occur. At this point, the automatic calibration is completed.
  • the video zooming device of the embodiment of the invention has an automatic correction function, and when the input video data format (the number of lines or points) is slightly deviated from the standard format, it can still be correctly corrected automatically.
  • FIG. 8 is a structural block diagram of a video scaling apparatus according to still another embodiment of the present invention.
  • the video scaling apparatus includes: a field filtering unit 101, a line buffer control unit 102, a line buffer unit 103, a first weighting unit 104, a dot buffer unit 106, a second weighting unit 107, a latch unit 108, and a clock.
  • the generating unit 105, the correcting unit 109, and the timing unit 110 includes: a field filtering unit 101, a line buffer control unit 102, a line buffer unit 103, a first weighting unit 104, a dot buffer unit 106, a second weighting unit 107, a latch unit 108, and a clock.
  • the generating unit 105, the correcting unit 109, and the timing unit 110 includes: a field filtering unit 101, a line buffer control unit 102, a line buffer unit 103, a first weighting unit 104, a dot buffer unit 106, a second weight
  • the field filtering unit 101 is configured to filter the first video data in the input line buffer control unit 102.
  • the distortion of the video image is reduced, and a better zooming effect is obtained, in particular, the reduction ratio of the field direction (vertical direction) is greater than n. time.
  • the present invention also proposes a video scaling method.
  • FIG. 9 is a flowchart of a video zooming method according to an embodiment of the present invention.
  • the video scaling method includes the following steps:
  • S101 Acquire an input clock of the input first video data, and obtain a zoom clock according to an input clock and a scaling ratio.
  • the ratio of the number of vertical lines of the first video data to the number of vertical lines of the first video data is a vertical scaling ratio
  • the ratio of the horizontal pixel number of the third video data to the horizontal pixel number of the first video data is a horizontal scaling.
  • the calculation process can refer to the formula (2) described in the above device embodiment.
  • Vpixel S103 If yes, further determine whether m is a non-integer.
  • the storage space of the row buffer unit is 2n+1 rows of storage space.
  • S1032 If it is a non-integer, after storing the first video data of the ⁇ line, discard the first video data of the Iml-n line, and accumulate the fractional part of mn to obtain the accumulated value, and when the accumulated value reaches 1, discard the lml The first video data of the -n+1 line, and the accumulated number is cleared, and S1032 is repeatedly executed every time the first video data of n lines is stored.
  • Iml means rounding up m.
  • S104 If no, the first video data of n lines is written each time data is written to the line buffer unit.
  • S106 Perform second weighting processing on the second video data to obtain third video data that is scaled in the horizontal direction.
  • the video scaling method of the embodiment of the present invention uses a line buffer unit of at least 2n storage spaces as a buffer and fault tolerance of video data, and provides a configurable scaling clock in a proportionally adjustable manner, at an input clock, input video data, and a scaling clock. A dynamic balance is achieved between the output video data and the excellent video scaling effect.
  • the read data operations in steps S103 and S104 and the write data operations in S105 are synchronized for different row address spaces.
  • the method further includes: (not shown): monitoring the read/write status of the line buffer unit, and performing correction when the read/write status is abnormal.
  • the storage space of 2n+1 rows constitutes a storage ring
  • the row buffer unit determines the number of rows of the storage space to be read at a time according to the first weighting process, and according to the scaling ratio and the last reading of the storage space.
  • the first line position determines the first line position of the next read storage space. For example, if the first weighting process is a double-legislation interpolation algorithm, the number of rows of the storage space at one time is 4 rows; for example, if the scaling ratio is 5/4 or 1.25, if the storage space is read first
  • the line position is the first line, and the video data of the first line to the fourth line is read.
  • the line buffer unit determines the read/write process according to the scaling ratio, and is not intended to limit the scope of protection of the embodiments of the present invention.
  • the method further includes the steps of: generating a row read control signal according to the scaling clock, The total length of one cycle of the row read control signal is the time required to read one row of data from the row buffer unit according to the scaling ratio, wherein if the low level interval/high level interval of the row read control signal is the blanking interval , a line of valid data is read from the line buffer unit according to the scaling ratio in the high level interval/low level interval.
  • the read and write anomalies are corrected in accordance with one or more of the following rules:
  • the adjustment of the total length of the line read control signal for one cycle is specifically: adjusting the length of the blanking interval of the read control signal.
  • the duration of the blanking interval corresponding level signal in the row read control signal is increased by the first preset time period, if If the write operation is too fast to catch up with the read operation, the duration of the blanking interval corresponding level signal in the line read control signal is decreased by the first preset time period.
  • the storage space constitutes a storage ring, and the read and write operations are simultaneously present in the storage ring. If the read operation and the write operation are balanced, there is no conflict between the read and write operations. If the read operation is too fast to catch up with the write operation, a read-write conflict occurs, that is, the read of the first video data from the line buffer unit for processing to output the third video data is too fast, causing the write to catch up.
  • the write operation of the row buffer unit therefore, the read data is too fast, so that the cache unit corresponding to the read data is the same as the cache unit corresponding to the write data, or the cache unit corresponding to the read data corresponds to the cache unit that has not yet written the data.
  • the segment can reduce the reading speed; similarly, if the write operation is too fast to catch up with the read operation, the read/write conflict will also occur, and the duration of the corresponding level signal of the blanking interval in the line read control signal is increased.
  • a preset period of time reduces the time required to read a line, thereby speeding up the reading.
  • the first preset time period may be a user setting or a default setting, and by such repeated adjustment, the output timing and the input timing may be balanced.
  • the period of the zoom clock is increased by the second preset time period/the clock will be scaled The frequency is decreased by the second preset value, and if the write operation is too fast to catch up with the read operation, the period of the zoom clock is decreased by the second preset time period / the frequency of the zoom clock is increased by the second preset value.
  • the second preset time period can be set by the user or set by default. Through such repeated adjustments, the output timing and the input timing can be balanced.
  • the scaling is specifically: adjusting the scaling of the vertical direction, that is, adjusting the scaling of the field direction.
  • the zoom ratio is decreased by a preset threshold to reduce the step size of reading data from the line buffer unit
  • the scaling is increased by a preset threshold to increase the step size of reading data from the line buffer unit, thereby speeding up the read operation.
  • the scaling in the vertical direction is larger than the number of pixels required for each interpolation processing in the scaling process, the first video data of a part of the number of lines must be discarded each time data is written to the line buffer unit,
  • the number of rows to be discarded is the difference between the number of pixels and the vertical scaling. Therefore, the balance between the output timing and the input timing can be achieved by adjusting the scaling.
  • the read/write operation can be adjusted until the simultaneous read/write operation is abnormal, and the automatic correction function can be realized.
  • the automatic correction can still be performed automatically. Corrected it back.
  • the first video data is filtered in the vertical direction.
  • the buffering and scaling processing in the field direction after filtering will reduce the distortion of the video image and obtain a better scaling effect, especially when the reduction ratio of the field direction (vertical direction) is larger than n.
  • the present invention further provides a storage medium for storing an application, and the application is used in the video scaling method according to any of the embodiments of the present invention.
  • a "computer-readable medium” can be any apparatus that can contain, store, communicate, propagate, or transport the program for use by the instruction execution system, apparatus, or device, or in conjunction with the instruction execution system, apparatus, or device.
  • computer readable media include the following: electrical connections (electronic devices) having one or more wires, portable computer disk cartridges (magnetic devices), Random Access Memory (RAM), Read Only Memory (ROM), Erasable Editable Read Only Memory (EPROM or Flash Memory), fiber optic devices, and Portable Optical Disk Read Only Memory (CDROM).
  • electrical connections electronic devices
  • RAM Random Access Memory
  • ROM Read Only Memory
  • EPROM or Flash Memory Erasable Editable Read Only Memory
  • CDROM Portable Optical Disk Read Only Memory
  • the computer readable medium may even be a paper or other suitable medium on which the program can be printed, as it may be optically scanned, for example by paper or other medium, followed by editing, interpretation or, if appropriate, other suitable The method proceeds to obtain the program electronically and then store it in computer memory.
  • portions of the invention may be implemented in hardware, software, firmware or a combination thereof.
  • multiple steps or methods may be implemented in software or firmware stored in a memory and executed by a suitable instruction execution system.
  • a suitable instruction execution system For example, if implemented in hardware, as in another embodiment, it can be implemented with any one or combination of the following techniques well known in the art: having logic gates for implementing logic functions on data signals Discrete logic circuits, application specific integrated circuits with suitable combinational logic gates, programmable gate arrays (PGAs), field programmable gate arrays (FPGAs), etc.
  • each functional unit in each embodiment of the present invention may be integrated into one processing module, or each unit may exist physically separately, or two or more units may be integrated into one module.
  • the above integrated modules can be implemented in the form of hardware or in the form of software functional modules.
  • the integrated modules, if implemented in the form of software functional modules and sold or used as stand-alone products, may also be stored in a computer readable storage medium.
  • the above-mentioned storage medium may be a read only memory, a magnetic disk or an optical disk or the like.

Abstract

The present invention proposes a video playing apparatus and method. The apparatus comprises: a line buffer control unit, used to receive input first video data; a line buffer unit, used to buffer the first video data written by the line buffer control unit, where storage space of the line buffer unit is storage space of at least 2n lines; a first weighting unit, used to read the first video data in the line buffer unit, and perform first weighting processing on the first video data to acquire played second video data in the vertical direction; a point buffer unit, used to buffer the second video data written by the first weighting unit; a second weighting unit, used to read the second video data in the point buffer unit, and perform second weighting processing on the second video data to acquire played third video data in the horizontal direction; a locking unit, used to buffer the third video data written by the second weighting unit; and a clock generation unit, used to acquire an input clock of the first video data, send the input clock to the line buffer control unit for use as a write clock for the line buffer control unit, acquire a playing clock according to the input clock and a playing proportion, and send the playing clock to the line buffer unit, the point buffer unit, and the locking unit for use as a read/write clock for the line buffer unit, the point buffer unit, and the locking unit.

Description

视频缩放装置和方法  Video zooming device and method
技术领域  Technical field
本发明属于视频处理技术领域, 特别涉及一种视频縮放装置和方法。 背景技术  The present invention belongs to the field of video processing technologies, and in particular, to a video scaling apparatus and method. Background technique
在传统的视频縮放装置的设计中, 包括水平方向上和垂直方向上的任意比例的縮 放。 实现縮放最简单的方法是: 直接在水平方向上按比例丢弃像素点来縮小行的长度, 或通过像素点的复制来放大行的长度; 在垂直方向上对行数据进行丢弃或复制来实现 縮放。 这种縮放过程由于没有做任何滤波处理, 因此视频图像会出现严重失真甚至变 形, 这在视频处理中是不可接受的。  In the design of a conventional video zooming device, it includes a scaling of any ratio in the horizontal direction and the vertical direction. The easiest way to achieve scaling is to directly scale the pixels in the horizontal direction to reduce the length of the line, or to enlarge the length of the line by copying the pixels; to discard or copy the line data in the vertical direction to achieve scaling . This scaling process does not perform any filtering processing, so the video image may be severely distorted or even deformed, which is unacceptable in video processing.
采用插值处理可以解决上述视频图像失真的问题, 在水平方向上插值处理是对连 续像素点进行加权运算, 得到新的像素点, 在实现上只需要对连续几个像素点进行存 储。 在垂直方向上插值处理是对垂直方向上连续几行的对应像素点进行加权运算, 这 就需要几行行缓存器对相邻几行视频数据进行存储。 但是, 仅有行缓存器是不够的, 因为在存储若干行视频数据后还需要进行加权运算, 运算完输出一行后才能继续下一 行的运算。 这对于连续的视频数据流来说就存在一个问题, 就是行缓存器必须等待运 算完一行视频数据输出后, 才能接受下一行的视频数据输入。 但输入是连续的, 如行 缓存器输出的速率与输入不一致, 则输入数据会丢失或错行, 从而导致视频图像失真。 由于视频数据流输入速率与显示输出速率的不一致是必然的, 因此, 设计中必须对输 入的视频数据先进行存储。 在保持输出显示视频刷新率与输入一致, 即场频一致的情 况下, 保证不丢失数据就要对整场数据进行存储。 一场需要存几百行视频数据, 这样 就需要一大片 SDRAM ( Synchronous Dynamic Random Access Memory, 同步动态随机 存储器) 来存储, 这会占用大量的芯片面积, 导致成本的大量增加。 发明内容  Interpolation processing can solve the above problem of video image distortion. In the horizontal direction, the interpolation process performs weighting operation on consecutive pixels to obtain new pixel points. In the implementation, only a few consecutive pixels need to be stored. The interpolation process in the vertical direction performs weighting operations on corresponding pixels of consecutive rows in the vertical direction, which requires several rows of line buffers to store adjacent lines of video data. However, only the line buffer is not enough, because after storing a few lines of video data, a weighting operation is required, and the operation of the next line can be continued after the line is output. This has a problem for continuous video data streams, that is, the line buffer must wait for the operation of a line of video data to be output before accepting the video data input of the next line. However, the input is continuous. If the rate of the line buffer output is inconsistent with the input, the input data will be lost or staggered, resulting in distortion of the video image. Since the input rate of the video data stream is inconsistent with the display output rate, it is necessary to store the input video data first in the design. In the case that the output display video refresh rate is consistent with the input, that is, the field frequency is consistent, it is guaranteed that the entire field data is stored without losing data. A need to store hundreds of lines of video data, so that a large SDRAM (Synchronous Dynamic Random Access Memory) is required for storage, which takes up a large amount of chip area, resulting in a large increase in cost. Summary of the invention
本发明的目的旨在至少在一定程度上解决上述的技术问题之一。  The object of the present invention is to solve at least one of the above technical problems to some extent.
为此, 本发明的第一个目的在于提出一种视频縮放装置, 该装置采用至少 2η个存 储空间的行缓存单元作为视频数据的缓存及容错, 实现优异的视频处理效果, 并减低 了成本。  SUMMARY OF THE INVENTION Accordingly, a first object of the present invention is to provide a video scaling apparatus which uses at least 2n line buffer units of a storage space as a buffer and fault tolerance for video data, achieving excellent video processing effects and reducing costs.
为此, 本发明的第二个目的在于提出一种视频縮放方法。  To this end, a second object of the present invention is to propose a video scaling method.
为此, 本发明的第三个目的在于提出一种存储介质。 为了实现上述目的, 本发明第一方面实施例的视频縮放装置, 包括: 行缓存控制 单元, 用于接收输入的第一视频数据; 行缓存单元, 用于缓存所述行缓存控制单元写 入的所述第一视频数据, 其中, 所述行缓存单元的存储空间为至少 2η行的存储空间, 其中, η为縮放处理中每次插值处理时所需的像素点数, 每行所述存储空间的大小为每 行所述第一视频数据所需的存储空间的大小; 第一加权单元, 用于读取所述行缓存单 元中的所述第一视频数据, 并对所述第一视频数据进行第一加权处理以获取垂直方向 上縮放后的第二视频数据; 点缓存单元, 用于缓存所述第一加权单元写入的所述第二 视频数据; 第二加权单元, 用于读取所述点缓存单元中的所述第二视频数据, 并对所 述第二视频数据进行第二加权处理以获取水平方向上縮放后的第三视频数据; 锁存单 元, 用于缓存所述第二加权单元写入的所述第三视频数据; 以及时钟产生单元, 用于 获取所述第一视频数据的输入时钟, 并将所述输入时钟发送至所述行缓存控制单元以 作为所述行缓存控制单元的写时钟, 及根据所述输入时钟和縮放比例获取縮放时钟, 并将所述縮放时钟发送至所述行缓存单元、 点缓存单元和锁存单元以作为所述行缓存 单元、 点缓存单元和锁存单元的读写时钟。 To this end, a third object of the present invention is to propose a storage medium. In order to achieve the above object, a video scaling apparatus according to a first aspect of the present invention includes: a line buffer control unit, configured to receive input first video data; and a line buffer unit, configured to buffer the line buffer control unit to write The first video data, wherein a storage space of the line buffer unit is a storage space of at least 2 η rows, where η is a number of pixels required for each interpolation process in the scaling process, and each row of the storage space is a size of the storage space required for the first video data of each line; a first weighting unit, configured to read the first video data in the line buffer unit, and perform the first video data a first weighting process to obtain second video data that is scaled in a vertical direction; a dot buffer unit, configured to buffer the second video data written by the first weighting unit; and a second weighting unit, configured to read Decoding the second video data in the buffer unit, and performing second weighting processing on the second video data to obtain the third video number after being scaled in the horizontal direction a latch unit, configured to buffer the third video data written by the second weighting unit; and a clock generating unit, configured to acquire an input clock of the first video data, and send the input clock to The line buffer control unit acquires a scaling clock according to the write clock of the line buffer control unit, and obtains a scaling clock according to the input clock and the scaling ratio, and sends the scaling clock to the line buffer unit, the dot buffer unit, and the lock The memory unit serves as a read/write clock for the line buffer unit, the dot buffer unit, and the latch unit.
本发明实施例的视频縮放装置, 采用至少 2η个存储空间的行缓存单元作为视频数 据的缓存及容错, 并按比例可调的提供可配置的縮放时钟, 在输入时钟、 输入视频数 据、 縮放时钟和输出视频数据之间实现了一种动态平衡, 实现优异的视频縮放处理效 果; 另外, 不需要占用大量芯片面积的 SDRAM, 增加的只是与缓存整场视频数据所占 用芯片而言小得多的 2η行的行缓存单元, 大大减低了整个芯片的成本, 同时能够实现 实时任意比例的视频縮放。  The video scaling apparatus according to the embodiment of the present invention uses a line buffer unit of at least 2n storage spaces as a buffer and fault tolerance of video data, and provides a configurable scaling clock in a proportionally adjustable manner, at an input clock, input video data, and a scaling clock. A dynamic balance is achieved between the output video data and the excellent video zoom processing effect. In addition, the SDRAM does not need to occupy a large amount of chip area, and the added amount is only much smaller than the chip occupied by the entire video data. The 2 η row buffer unit greatly reduces the cost of the entire chip, and at the same time enables real-time arbitrary scale video scaling.
在本发明的一个实施例中, 所述行缓存单元的存储空间为 2η+1行的存储空间。 在本发明的一个实施例中, 所述时钟产生单元还用于获取所述第一视频数据的输 入时钟, 并获取所述输入时钟和縮放比例的第一乘积, 并将所述第一乘积作为所述縮 放时钟; 其中, 所述縮放比例 = (所述第三视频数据的垂直行数 *所述第三视频数据的 水平像素点数)/ (所述第一视频数据的垂直行数 *所述第一视频数据的水平像素点数)。  In an embodiment of the present invention, the storage space of the line buffer unit is a storage space of 2n+1 rows. In an embodiment of the present invention, the clock generating unit is further configured to acquire an input clock of the first video data, acquire a first product of the input clock and a scaling ratio, and use the first product as The scaling clock; wherein, the scaling ratio = (the number of vertical lines of the third video data * the number of horizontal pixels of the third video data) / (the number of vertical lines of the first video data * The number of horizontal pixels of the first video data).
在本发明的一个实施例中, 还包括: 校正单元, 所述校正单元用于监测所述行缓 存单元的读写状态, 并当所述读写状态异常时进行校正。  In an embodiment of the present invention, the method further includes: a correction unit, configured to monitor a read/write state of the row buffer unit, and perform correction when the read/write state is abnormal.
在本发明的一个实施例中, 还包括: 时序单元, 所述时序单元用于根据所述縮放 时钟生成行读取控制信号, 所述行读取控制信号一个周期的总长度为从所述行缓存单 元中根据所述縮放比例读取一行数据所需的时间, 其中, 如果所述行读取控制信号的 低电平区间 /高电平区间为消隐区间, 则在所述高电平区间 /低电平区间内根据所述縮放 比例从所述行缓存单元中读取一行有效数据。 在本发明的一个实施例中, 所述校正单元还用于按照以下规则中的一种或多种进 行校正: 通过调整所述时序单元以调整所述行读取控制信号一个周期的总长度; 或通 过调整所述时钟产生单元以调整所述縮放时钟的周期 /频率; 或调整所述縮放比例。 In an embodiment of the present invention, the method further includes: a timing unit, configured to generate a row read control signal according to the scaled clock, wherein the row read control signal has a total length of one cycle from the row a time required for reading a row of data according to the scaling ratio in the buffer unit, wherein if the low level interval/high level interval of the row read control signal is a blanking interval, the high level interval is A line of valid data is read from the line buffer unit according to the scaling ratio in the /low level interval. In an embodiment of the present invention, the correcting unit is further configured to perform correction according to one or more of the following rules: adjusting the timing unit to adjust a total length of one period of the row read control signal; Or adjusting the period/frequency of the scaled clock by adjusting the clock generating unit; or adjusting the scaling.
在本发明的一个实施例中, 所述通过调整所述时序单元以调整所述行读取控制信 号一个周期的总长度的具体为: 调整所述读取控制信号的消隐区间的长度。  In an embodiment of the present invention, the adjusting the timing unit to adjust the total length of the line read control signal for one cycle is: adjusting a length of the blanking interval of the read control signal.
在本发明的一个实施例中, 所述调整所述縮放比例具体为: 调整垂直方向的縮放 比例。  In an embodiment of the invention, the adjusting the scaling ratio is specifically: adjusting a scaling ratio in a vertical direction.
在本发明的一个实施例中, 所述校正单元具体用于通过调整以下规则中的一种或 多种进行校正: 如果读操作过快导致赶上写操作, 则调整所述时序单元以将所述行读 取控制信号中所述消隐区间对应电平信号的持续时间增加第一预设时间段, 如果写操 作过快导致赶上读操作, 则调整所述时序单元将所述行读取控制信号中所述消隐区间 对应电平信号的持续时间减少第一预设时间段; 或如果读操作过快导致赶上写操作, 则调整所述时钟产生单元将所述縮放时钟的周期增加第二预设时间段 /将所述縮放时钟 的频率减小第二预设值, 如果写操作过快导致赶上读操作, 则调整所述时钟产生单元 将所述縮放时钟的周期减少第二预设时间段 /将所述縮放时钟的频率增加第二预设值; 或如果读操作过快导致赶上写操作, 则将所述縮放比例减少预设阈值以减少从所述行 缓存单元读取数据的步长, 如果写操作过快导致赶上读操作, 则将所述縮放比例增加 预设阈值以增加从所述行缓存单元读取数据的步长。  In an embodiment of the present invention, the correcting unit is specifically configured to perform correction by adjusting one or more of the following rules: if the read operation is too fast to catch up with the write operation, adjust the timing unit to The duration of the blanking interval corresponding level signal in the read control signal is increased by a first preset time period, and if the write operation is too fast to catch up with the read operation, adjusting the timing unit to read the line The duration of the blanking interval corresponding to the level signal in the control signal is decreased by a first preset time period; or if the read operation is too fast to catch up with the write operation, adjusting the clock generating unit to increase the period of the scaling clock a second preset time period / reducing the frequency of the zoom clock by a second preset value, if the write operation is too fast to catch up with the read operation, adjusting the clock generation unit to reduce the period of the zoom clock by a second Presetting a time period / increasing the frequency of the zoom clock by a second preset value; or if the read operation is too fast to catch up with the write operation, reducing the zoom ratio by a preset threshold to reduce Read from the line buffer unit step size data, if the write operation is too fast leading to catch up the read operation, then the zoom ratio increases to increase the predetermined threshold step size from the line buffer unit reads the data.
在本发明的一个实施例中, 还包括: 场滤波单元, 用于对输入所述行缓存控制单 元中的所述第一视频数据进行滤波。  In an embodiment of the present invention, the method further includes: a field filtering unit, configured to filter the first video data input into the line buffer control unit.
为了实现上述目的, 本发明第二方面实施例的视频縮放方法, 包括以下步骤: S1 : 获取输入的第一视频数据的输入时钟, 并根据所述输入时钟和縮放比例获取縮放时钟; In order to achieve the above object, the video scaling method of the second aspect of the present invention includes the following steps: S1: acquiring an input clock of the input first video data, and acquiring a scaling clock according to the input clock and the scaling ratio;
S2: 判断垂直方向上的垂直縮放比例 m是否大于 n, 其中, n为縮放处理中每次插值处 理时所需的像素点数; S3 : 如果是, 则进一步判断 m 是否为非整数; S31 : 如果否, 则在每次向行缓存单元中写入数据时写入 n行的所述第一视频数据, 并舍弃 m-n行的 所述第一视频数据, 其中, 所述行缓存单元的存储空间为至少 2η行的存储空间, 其中, 每行所述存储空间的大小为每行所述第一视频数据所需的存储空间的大小; S32: 如果 是, 则每存储 η行的所述第一视频数据后, 舍弃 Iml-n行的所述第一视频数据, 并累计 m-n的小数部分以获取累计值, 当所述累计值达到 1时, 舍弃 lml-n+1行的所述第一视 频数据, 并将所述累计数清零, 并在每存储 n行的所述第一视频数据时重复执行所述 S32; S4: 如果否,则在每次向行缓存单元中写入数据时写入 n行的所述第一视频数据; S5 : 对 n行的所述第一视频数据进行第一加权处理以获取垂直方向上縮放后的第二视 频数据; S6 : 对所述第二视频数据进行第二加权处理以获取水平方向上縮放后的第三 视频数据; S7 : 输出所述第三视频数据。 S2: determining whether the vertical scaling m in the vertical direction is greater than n, where n is the number of pixels required for each interpolation process in the scaling process; S3: if yes, further determining whether m is a non-integer; S31: No, the first video data of the n rows is written every time the data is written into the line buffer unit, and the first video data of the mn line is discarded, wherein the storage space of the line buffer unit is a storage space of at least 2 η rows, wherein a size of the storage space per row is a size of a storage space required for each row of the first video data; S32: If yes, storing the first video of each row After the data, discard the first video data of the Iml-n line, and accumulate the fractional part of mn to obtain the accumulated value, and when the accumulated value reaches 1, discard the first video data of the lml-n+1 line And clearing the accumulated number, and repeating the S32 every time the n-line of the first video data is stored; S4: If not, writing each time data is written to the line buffer unit The first video data of n lines; S5: pair n The first video data of the row is subjected to a first weighting process to obtain a scaled second view in the vertical direction Frequency data; S6: performing second weighting processing on the second video data to obtain third video data that is scaled in the horizontal direction; S7: outputting the third video data.
本发明实施例的视频縮放方法, 采用至少 2η个存储空间的行缓存单元作为视频数 据的缓存及容错, 并按比例可调的提供可配置的縮放时钟, 在输入时钟、 输入视频数 据、 縮放时钟和输出视频数据之间实现了一种动态平衡, 实现优异的视频縮放处理效 果。  The video scaling method of the embodiment of the present invention uses a line buffer unit of at least 2n storage spaces as a buffer and fault tolerance of video data, and provides a configurable scaling clock in a proportionally adjustable manner, at an input clock, input video data, and a scaling clock. A dynamic balance is achieved between the output video data and the excellent video scaling effect.
在本发明的一个实施例中, 所述步骤 S1包括: 获取所述输入时钟和縮放比例的第 一乘积, 并将所述第一乘积作为所述縮放时钟; 其中, 所述縮放比例 = (所述第三视频 数据的垂直行数 *所述第三视频数据的水平像素点数) I (所述第一视频数据的垂直行数 *所述第一视频数据的水平像素点数) 。  In an embodiment of the present invention, the step S1 includes: acquiring a first product of the input clock and a scaling ratio, and using the first product as the scaling clock; wherein, the scaling ratio is The number of vertical lines of the third video data * the number of horizontal pixels of the third video data) I (the number of vertical lines of the first video data * the number of horizontal pixels of the first video data).
在本发明的一个实施例中,所述步骤 S3和 S4中的读数据操作和 S5中的写数据操 作针对不同的行地址空间同步进行。  In one embodiment of the invention, the read data operations in steps S3 and S4 and the write data operations in S5 are performed synchronously for different row address spaces.
在本发明的一个实施例中, 还包括以下步骤: 监测所述行缓存单元的读写状态, 并当所述读写状态异常时进行校正。  In an embodiment of the present invention, the method further includes the steps of: monitoring a read/write status of the line buffer unit, and performing correction when the read/write status is abnormal.
在本发明的一个实施例中, 还包括以下步骤: 根据所述縮放时钟生成行读取控制 信号, 所述行读取控制信号一个周期的总长度为从所述行缓存单元中根据所述縮放比 例读取一行数据所需的时间, 其中, 如果所述行读取控制信号的低电平区间 /高电平区 间为消隐区间, 则在所述高电平区间 /低电平区间内根据所述縮放比例从所述行缓存单 元中读取一行有效数据。  In an embodiment of the present invention, the method further includes the following steps: generating a row read control signal according to the scaled clock, wherein a total length of one period of the row read control signal is from the row buffer unit according to the scaling The time required to read a row of data in a ratio, wherein if the low-level interval/high-level interval of the row read control signal is a blanking interval, then according to the high-level interval/low-level interval The scaling reads a row of valid data from the line buffer unit.
在本发明的一个实施例中, 按照以下规则中的一种或多种进行校正: 调整所述行 读取控制信号一个周期的总长度; 或调整所述縮放时钟的周期 /频率; 或调整所述垂直 縮放比例。  In one embodiment of the invention, the correction is performed according to one or more of the following rules: adjusting the total length of one period of the row read control signal; or adjusting the period/frequency of the scaled clock; or adjusting the The vertical scaling.
在本发明的一个实施例中, 所述调整所述读取控制信号一个周期的总长度具体为: 调整所述读取控制信号的消隐区间的长度。  In an embodiment of the invention, the adjusting the total length of the read control signal for one cycle is specifically: adjusting a length of the blanking interval of the read control signal.
在本发明的一个实施例中, 所述调整所述縮放比例具体为: 调整垂直方向的縮放 比例。  In an embodiment of the invention, the adjusting the scaling ratio is specifically: adjusting a scaling ratio in a vertical direction.
在本发明的一个实施例中, 按照以下规则中的一种或多种进行校正具体包括: 如 果读操作过快导致赶上写操作, 则将所述行读取控制信号中所述消隐区间对应电平信 号的持续时间增加第一预设时间段, 如果写操作过快导致赶上读操作, 则将所述行读 取控制信号中所述消隐区间对应电平信号的持续时间减少第一预设时间段; 或如果读 操作过快导致赶上写操作, 则将所述縮放时钟的周期增加第二预设时间段 /将所述縮放 时钟的频率减小第二预设值, 如果写操作过快导致赶上读操作, 则将所述縮放时钟的 周期减少第二预设时间段 //将所述縮放时钟的频率增加第二预设值; 或如果读操作过快 导致赶上写操作, 则将所述縮放比例减少预设阈值以减少从所述行缓存单元读取数据 的步长, 如果写操作过快导致赶上读操作, 则将所述縮放比例增加预设阈值以增加从 所述行缓存单元读取数据的步长。 In an embodiment of the present invention, the correcting according to one or more of the following rules specifically includes: if the read operation is too fast to catch up with the write operation, then the blanking interval in the row read control signal The duration of the corresponding level signal is increased by the first preset time period, and if the write operation is too fast to catch up with the read operation, the duration of the blanking interval corresponding level signal in the line read control signal is decreased. a preset time period; or if the read operation is too fast to catch up with the write operation, increasing the period of the zoom clock by a second preset time period / decreasing the frequency of the zoom clock by a second preset value, if If the write operation is too fast to catch up with the read operation, then the zoom clock will be Decreasing the second preset time period by // increasing the frequency of the zoom clock by a second preset value; or if the read operation is too fast to catch up with the write operation, reducing the zoom ratio by a preset threshold to reduce the Describe the step size of the data read by the cache unit. If the write operation is too fast to catch up with the read operation, the scaling is increased by a preset threshold to increase the step size of reading data from the line buffer unit.
在本发明的一个实施例中, 在步骤 S1之前还包括: 对所述第一视频数据进行垂直 方向的滤波。  In an embodiment of the present invention, before step S1, the method further comprises: performing vertical filtering on the first video data.
为了实现上述目的, 本发明第三方面实施例的存储介质用于存储应用程序, 所述 应用程序用于执行本发明第二方面实施例所述的视频縮放方法。  In order to achieve the above object, a storage medium according to an embodiment of the third aspect of the present invention is for storing an application for performing a video scaling method according to an embodiment of the second aspect of the present invention.
本发明附加的方面和优点将在下面的描述中部分给出, 部分将从下面的描述中变 得明显, 或通过本发明的实践了解到。 附图说明  The additional aspects and advantages of the invention will be set forth in part in the description which follows. DRAWINGS
本发明上述的和 /或附加的方面和优点从下面结合附图对实施例的描述中将变得明 显和容易理解, 其中:  The above and/or additional aspects and advantages of the present invention will become apparent and readily understood from
图 1为现有技术的视频縮放装置的示意图;  1 is a schematic diagram of a prior art video zooming apparatus;
图 2为本发明一个实施例的视频縮放装置的结构框图;  2 is a structural block diagram of a video scaling apparatus according to an embodiment of the present invention;
图 3为本发明实施例所用的双立方插值算法中插值点的示意图;  3 is a schematic diagram of interpolation points in a bicubic interpolation algorithm used in an embodiment of the present invention;
图 4为本发明实施例所用的双立方插值算法中插值步长的示意图;  4 is a schematic diagram of an interpolation step size in a bicubic interpolation algorithm used in an embodiment of the present invention;
图 5为本发明实施例的视频縮放前和縮放后的图像大小变化示意图;  FIG. 5 is a schematic diagram of image size changes before and after scaling of a video according to an embodiment of the present invention; FIG.
图 6为第一加权单元 104和 /或第二加权单元 107的结构示意图;  6 is a schematic structural diagram of the first weighting unit 104 and/or the second weighting unit 107;
图 7为本发明另一个实施例的视频縮放装置的结构框图;  FIG. 7 is a structural block diagram of a video zooming apparatus according to another embodiment of the present invention; FIG.
图 8为本发明又一个实施例的视频縮放装置的结构框图;  FIG. 8 is a structural block diagram of a video zooming apparatus according to still another embodiment of the present invention; FIG.
图 9为本发明一个实施例的视频縮放方法的流程图。 具体实施方式  FIG. 9 is a flowchart of a video zooming method according to an embodiment of the present invention. detailed description
下面详细描述本发明的实施例, 所述实施例的示例在附图中示出, 其中自始至终 相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。 下面通过参 考附图描述的实施例是示例性的, 仅用于解释本发明, 而不能解释为对本发明的限制。  The embodiments of the present invention are described in detail below, and the examples of the embodiments are illustrated in the drawings, wherein the same or similar reference numerals are used to refer to the same or similar elements or elements having the same or similar functions. The embodiments described below with reference to the drawings are intended to be illustrative of the invention and are not to be construed as limiting.
在本发明的描述中, 需要理解的是, 术语 "第一" 、 "第二"等仅用于描述目的, 而不能理解为指示或暗示相对重要性。 在本发明的描述中, 需要说明的是, 除非另有 明确的规定和限定, 术语 "相连" 、 "连接 "应做广义理解, 例如, 可以是机械连接, 也可以是电连接; 可以是直接相连, 也可以通过中间媒介间接相连。 对于本领域的普 通技术人员而言, 可以具体情况理解上述术语在本发明中的具体含义。 此外, 在本发 明的描述中, 除非另有说明, "多个" 的含义是两个或两个以上。 In the description of the present invention, it is to be understood that the terms "first", "second" and the like are used for descriptive purposes only and are not to be construed as indicating or implying relative importance. In the description of the present invention, it should be noted that the terms "connected" and "connected" should be understood broadly, and may be mechanically connected or electrically connected, for example, unless otherwise specifically defined and defined. Connected, they can also be connected indirectly through an intermediary. For the field of general The specific meaning of the above terms in the present invention can be understood by a person skilled in the art. Further, in the description of the present invention, "multiple" means two or more unless otherwise stated.
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为, 表示包括 一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、 片段 或部分, 并且本发明的优选实施方式的范围包括另外的实现, 其中可以不按所示出或 讨论的顺序, 包括根据所涉及的功能按基本同时的方式或按相反的顺序, 来执行功能, 这应被本发明的实施例所属技术领域的技术人员所理解参照下面的描述和附图, 将清 楚本发明的实施例的这些和其他方面。 在这些描述和附图中, 具体公开了本发明的实 施例中的一些特定实施方式, 来表示实施本发明的实施例的原理的一些方式, 但是应 当理解, 本发明的实施例的范围不受此限制。 相反, 本发明的实施例包括落入所附加 权利要求书的精神和内涵范围内的所有变化、 修改和等同物。  Any process or method description in the flowcharts or otherwise described herein may be understood to represent a module, segment or portion of code that includes one or more executable instructions for implementing the steps of a particular logical function or process. And the scope of the preferred embodiments of the invention includes additional implementations, in which the functions may be performed in a substantially simultaneous manner or in an opposite order depending on the functions involved, in the order shown or discussed. These and other aspects of the embodiments of the present invention will be apparent from the following description and appended claims. In the description and drawings, specific embodiments of the embodiments of the invention are disclosed This limit. Rather, the invention is to cover all modifications, modifications and equivalents within the spirit and scope of the appended claims.
为了解决目前视频縮放处理时, 需要大片 SDRAM存储视频数据, 导致占用大量 的芯片面积, 从而成本大量增加的问题, 需要对视频数据的存储结构进行精简设置。  In order to solve the current video scaling process, a large SDRAM is required to store video data, which leads to a large amount of chip area, and thus the cost is greatly increased. The storage structure of the video data needs to be simplified.
图 1为现有技术的视频縮放装置的示意图。 如图 1所示, 现有技术的视频縮放装 置包括: 两行 FIFO ( First Input First Output, 先入先出队列) 的缓存器 1-1、 六条行缓 存器(Linel至 Line6 ) 1-2、移位寄存器(shift register) 1-3和锁相环(PLL, Phase Locked Loop ) l-4。采用两行 FIFO的缓存器 1-1及六条行缓存器 1-2缓存实时输入的视频数据, 并配合锁相环 1-4输出的可配置的縮放时钟来完成视频縮放。具体地,输入的视频数据 ( input) 通过 FIFO的缓存器 1-1输入至六条行缓存器 1-2, 并通过垂直方向上的加权 处理输入至移位寄存器 1-3中,并经水平方向上的加权处理输出最终縮放后的视频数据 scaler output。 其中, clk_video表示输入时钟, clk_scale表示縮放时钟, 锁相环 1-4用 于根据输入时钟 clk_video输出可配置的縮放时钟 clk_scale。  1 is a schematic diagram of a prior art video zooming device. As shown in FIG. 1, the prior art video scaling apparatus includes: a two-line FIFO (First Input First Output) buffer 1-1, six line buffers (Linel to Line6) 1-2, shifting Shift register 1-3 and phase locked loop (PLL, Phase Locked Loop) l-4. The buffer 1-1 and the six line buffers 1-2 of the two-line FIFO buffer the video data input in real time, and cooperate with the configurable zoom clock outputted by the phase locked loop 1-4 to complete the video scaling. Specifically, the input video data is input to the six line buffers 1-2 through the buffer 1-1 of the FIFO, and is input to the shift registers 1-3 through the weighting processing in the vertical direction, and is horizontally oriented. The weighting process on the output outputs the final scaled video data scaler output. Where clk_video represents the input clock, clk_scale represents the scaling clock, and phase-locked loops 1-4 are used to output a configurable scaling clock clk_scale based on the input clock clk_video.
但是, 上述方法存在以下问题: 由于总共六条行缓存器, 处理效果不佳, 无法满 足实时需求。 例如, 如果采用双立法插值, 则縮放运算时需要四行的视频数据, 在处 理完一行视频数据输出后, 最多只剩下两条行缓存的数据准备好, 因此不能满足视频 实时性的要求。  However, the above method has the following problems: Due to a total of six line buffers, the processing effect is not good enough to meet the real-time requirements. For example, if double legislative interpolation is used, four lines of video data are required for the scaling operation. After processing one line of video data output, at most two lines of buffered data are ready, so the real-time requirements of the video cannot be met.
为此, 本发明的实施例提出一种视频縮放装置和方法。 视频縮放装置采用多条缓 存器来缓存实时输入的视频数据。 下面参照附图具体描述。  To this end, embodiments of the present invention propose a video scaling apparatus and method. The video scaling device uses multiple buffers to buffer real-time input video data. The details are described below with reference to the drawings.
图 2为本发明一个实施例的视频縮放装置的结构框图。 如图 2所示, 视频縮放装 置包括: 行缓存控制单元 102、 行缓存单元 103、 第一加权单元 104、 点缓存单元 106、 第二加权单元 107、 锁存单元 108和时钟产生单元 105。  FIG. 2 is a structural block diagram of a video scaling apparatus according to an embodiment of the present invention. As shown in FIG. 2, the video scaling device includes: a line buffer control unit 102, a line buffer unit 103, a first weighting unit 104, a dot buffer unit 106, a second weighting unit 107, a latch unit 108, and a clock generating unit 105.
具体地, 行缓存控制单元 102用于接收输入的第一视频数据。 例如, input表示输 入的第一视频数据。 Specifically, the line buffer control unit 102 is configured to receive the input first video data. For example, input means lose The first video data entered.
行缓存单元 103用于缓存行缓存控制单元 102写入的第一视频数据, 其中, 行缓 存单元 103的存储空间为至少 2η行的存储空间, 其中, η为縮放处理中每次插值处理 时所需的像素点数, 每行存储空间的大小为每行第一视频数据所需的存储空间的大小。  The line buffer unit 103 is configured to cache the first video data written by the line buffer control unit 102, wherein the storage space of the line buffer unit 103 is a storage space of at least 2 η rows, where η is the time of each interpolation processing in the scaling process. The number of pixels required, the size of each line of storage is the size of the storage space required for the first video data per line.
举例来说, 如果采用双立方法插值, 由 4个已知像素点插值计算出一个未知像素 点, 如图 3所示, 以縮放比例 5:4为例, 假设待插值像素点的位置在 0点, 待插值像 素点要由其周围 4个像素点插值计算得到。 0点的位置永远位于 Ρ2, Ρ3点之间, 0点 可以与 Ρ2点重合。 插出来的 0点的值由下式 (1 ) 决定:  For example, if the binomial method is used for interpolation, an unknown pixel point is calculated by interpolation of 4 known pixel points, as shown in FIG. 3, taking the scaling ratio of 5:4 as an example, assuming that the position of the pixel to be interpolated is at 0. Point, the pixel to be interpolated is calculated by interpolation of 4 pixels around it. The position of 0 o'clock is always between Ρ2, Ρ3 o'clock, and 0 o'clock can coincide with Ρ2 o'clock. The value of the inserted zero point is determined by the following formula (1):
0 = Pl*hl + P2*h2 + P3*h3 + P4*h4 ( 1 )  0 = Pl*hl + P2*h2 + P3*h3 + P4*h4 ( 1 )
其中, P1〜P4为原始像素点, hi〜!4为对应的系数。 这里系数由查找表来决定, 每一 个对应的系数对应一个 256 X 8 bit的表,所以总共需要 4 X 256 X 8bit存储单元来存放系 数。 縮放比例即为双立方插值的步长 pace: pace =5/4 =1.25 ο 取原像素点间的单位距离 为 1, 则原像素点与插值出来的新像素点的关系如图 4所示。 Among them, P1 ~ P4 are the original pixel points, hi ~! 4 is the corresponding coefficient. Here, the coefficients are determined by a lookup table. Each corresponding coefficient corresponds to a 256 X 8 bit table, so a total of 4 X 256 X 8 bit memory cells are needed to store the coefficients. The zoom ratio is the step size of the double-cubic interpolation. pace: pace =5/4 =1.25 ο The unit distance between the original pixel points is 1, and the relationship between the original pixel point and the newly interpolated new pixel point is shown in Fig. 4.
在本发明的一个实施例中, 行缓存单元 103的存储空间为 2η+1行的存储空间。 在本发明的一个实施例中, 如果采用双立方法插值, 则 η等于 4, 行缓存单元 103 的存储空间为至少 8 行的存储空间。 优选地, 在本发明的另一个实施例中, 行缓存单 元 103的存储空间为 9行的存储空间。  In one embodiment of the present invention, the storage space of the line buffer unit 103 is a storage space of 2n+1 rows. In one embodiment of the present invention, if the double-pair method is used for interpolation, η is equal to 4, and the storage space of the line buffer unit 103 is at least 8 lines of storage space. Preferably, in another embodiment of the present invention, the storage space of the line buffer unit 103 is 9 lines of storage space.
具体地, 以 9条行缓存器为例说明本发明实施例的行缓存单元 103的工作过程, 行缓存单元 103中包括 9条行缓存器即存储空间 (Linel至 Line9) 用来顺序存储输入 的视频数据, 同时 9条中的 4条行缓存器为场方向 (即垂直方向) 的双立方插值运算 提供数据。 根据输出视频数据的时序, 需要视频数据输出时, 必然占用 4条行缓存器 来输出, 此时, 另外的 5 条行缓存器可以用来继续存储输入的视频数据。 输入视频数 据的行频与输出视频数据的行频决定了 9条行缓存器输入、 输出时序。 在本发明的一 个实施例中, 以垂直方向作 2倍的放大为例, 输出一行视频数据的时间为输入一行视 频数据的两倍, 因此输出一行视频数据完时也必然地已经存入了 2行视频数据至 2条 行缓存器中, 当作下一行视频数据输出时, 就可以用接下来的 4条行缓存器缓存输入 的视频数据, 其中, 包括已经存储了视频数据的 2条行缓存器。 应当理解的是, 具体 用哪 4条行缓存器还得由场方向的步长 (即縮放比例) 决定, 将在后续实施例中详细 叙述。  Specifically, the operation of the line buffer unit 103 of the embodiment of the present invention is illustrated by taking a 9 line buffer as an example. The line buffer unit 103 includes 9 line buffers, that is, a storage space (Linel to Line9) for sequentially storing input. Video data, while four of the nine line buffers provide data for bicubic interpolation operations in the field direction (ie, vertical direction). According to the timing of outputting video data, when video data output is required, four line buffers are inevitably used for output. At this time, another five line buffers can be used to continue storing the input video data. The line frequency of the input video data and the line frequency of the output video data determine the input and output timing of the 9 line buffers. In one embodiment of the present invention, taking the magnification in the vertical direction as an example, the time for outputting one line of video data is twice that of inputting one line of video data, so that the output of one line of video data is inevitably already stored in 2 Line video data to 2 line buffers, as the next line of video data output, you can use the next 4 line buffers to buffer the input video data, including 2 lines of buffer that have stored video data Device. It should be understood that which four line buffers are used depends on the step size of the field direction (i.e., scaling), which will be described in detail in subsequent embodiments.
还应当理解的是, 上述实施例采用双立方法插值为例进行说明, 在具体实施过程 中, 还可以采用其他的插值算法, 在此不对插值算法进行限定。  It should also be understood that the above embodiment is described by using a double-brain method interpolation example. In the specific implementation process, other interpolation algorithms may also be used, and the interpolation algorithm is not limited herein.
另外, 行缓存控制单元 102通过提供行缓存单元 103的读写起始信号、 读写时钟 (即输入时钟) 实现对行缓存单元 103的缓存控制。 In addition, the line buffer control unit 102 provides a read/write start signal and a read/write clock by the line buffer unit 103. (i.e., input clock) The cache control of the line buffer unit 103 is implemented.
为保障行缓存单元 103 能够同时进行读写处理, 以及进行任意比例的縮放处理, 行缓存单元 103的存储空间至少为 2η行, 应当理解的是, 行缓存单元 103的存储空间 不局限于 2η行, 例如可为 2η+1行、 2η+2行。 在本发明的一个实施例中, 行缓存单元 103 的存储空间大小需要综合考虑占用面积和满足任意比例縮放的要求, 当空间更大 时, 则对时序的要求较低, 因为可用剩余的行缓存器来做容错处理, 以保证一定的误 差允许范围, 使输入和输出更容易达到平衡。 同时针对视频数据格式中, 行消隐区和 场消隐区不传输有效显示数据的特点, 增加了输出消隐区长度可调的机制, 使得实现 平衡的调节更加灵活, 但当然, 当存储空间大于 2η时, 占用的芯片面积更大。  To ensure that the line buffer unit 103 can perform read and write processing at the same time, and perform scaling processing at an arbitrary scale, the storage space of the line buffer unit 103 is at least 2 η rows. It should be understood that the storage space of the line buffer unit 103 is not limited to 2 η rows. For example, it can be 2η+1 rows, 2η+2 rows. In one embodiment of the present invention, the size of the storage space of the row buffer unit 103 needs to comprehensively consider the occupied area and meet the requirements of any scaling. When the space is larger, the timing requirement is lower because the remaining line buffer is available. The device is used for fault-tolerant processing to ensure a certain error tolerance range, making the input and output easier to balance. At the same time, in the video data format, the line blanking area and the field blanking area do not transmit effective display data, and the mechanism of adjustable output blanking area length is added, so that the balance adjustment is more flexible, but of course, when the storage space When it is larger than 2η, the occupied chip area is larger.
第一加权单元 104用于读取行缓存单元 103中的第一视频数据, 并对第一视频数 据进行第一加权处理以获取垂直方向上縮放后的第二视频数据。  The first weighting unit 104 is configured to read the first video data in the line buffer unit 103, and perform a first weighting process on the first video data to obtain the second video data that is scaled in the vertical direction.
点缓存单元 106用于缓存第一加权单元写入的第二视频数据。  The dot buffer unit 106 is configured to buffer the second video data written by the first weighting unit.
第二加权单元 107用于读取点缓存单元 106中的第二视频数据, 并对第二视频数 据进行第二加权处理以获取水平方向上縮放后的第三视频数据。  The second weighting unit 107 is configured to read the second video data in the point buffer unit 106, and perform a second weighting process on the second video data to obtain the third video data that is scaled in the horizontal direction.
锁存单元 108用于缓存第二加权单元 107写入的第三视频数据 (output ) 。  The latch unit 108 is configured to buffer the third video data (output) written by the second weighting unit 107.
时钟产生单元 105用于获取第一视频数据的输入时钟, 并将输入时钟发送至行缓 存控制单元 102以作为行缓存控制单元 102的写时钟, 及根据输入时钟和縮放比例获 取縮放时钟, 并将縮放时钟发送至行缓存单元 103、 点缓存单元 106 和锁存单元 108 以作为行缓存单元 103、 点缓存单元 106和锁存单元 108的读写时钟。  The clock generating unit 105 is configured to acquire an input clock of the first video data, and send the input clock to the line buffer control unit 102 as a write clock of the line buffer control unit 102, and obtain a scaling clock according to the input clock and the scaling ratio, and The scaling clock is sent to the line buffer unit 103, the dot buffer unit 106, and the latch unit 108 as the read/write clocks of the line buffer unit 103, the dot buffer unit 106, and the latch unit 108.
在本发明的一个实施例中, 时钟产生单元 105还用于获取第一视频数据的输入时 钟, 并获取输入时钟和縮放比例的第一乘积, 并将第一乘积作为縮放时钟; 其中, 縮 放比例 = (第三视频数据的垂直行数 *第三视频数据的水平像素点数) I (第一视频数据 的垂直行数 *第一视频数据的水平像素点数) 。 其中, 第三视频数据为视频縮放装置输 出的视频数据 (output ) 。 更具体地, 在本发明的一个实施例中, 时钟产生单元 105包 括两个乘法器, 或一个三输入乘法器, 例如, 实现输入时钟 clk_video与水平方向上的 水平縮放比例和垂直方向上垂直縮放比例的相乘, 得到縮放时钟 clk_SCale, 具体计算 法方法如式 (2 ) 所示: In an embodiment of the present invention, the clock generating unit 105 is further configured to acquire an input clock of the first video data, and obtain a first product of the input clock and the scaling, and use the first product as a scaling clock; wherein, the scaling ratio = (the number of vertical lines of the third video data * the number of horizontal pixels of the third video data) I (the number of vertical lines of the first video data * the number of horizontal pixels of the first video data). The third video data is video data (output) output by the video scaling device. More specifically, in one embodiment of the present invention, the clock generating unit 105 includes two multipliers, or a three-input multiplier, for example, realizing the input clock clk_video with horizontal scaling in the horizontal direction and vertical scaling in the vertical direction. Multiplying the ratios yields the scaling clock clk_ SCa le, as shown in equation (2):
" , Hpixel' Vpixel' „ , λ " , Hpixel'Vpixel' „ , λ
elk _ scale = x x elk _ video ( 2 )  Elk _ scale = x x elk _ video ( 2 )
Hpixel Vpixel  Hpixel Vpixel
其中, Hpixel表示第一视频数据 (即输入的视频数据) 的水平像素点数, Vpixel表示 第一视频数据 (即输入的视频数据) 的垂直行数; Hpixel ' 表示第三视频数据 (即输出 的视频数据) 的水平像素点数, Vpixel ' 表示第三视频数据 (即输出的视频数据) 的垂 直行数, Hpixel和 Hpixel ' 的比值即为水平方向上的水平縮放比例, Vpixel和 Vpixel ' 的比值即为垂直方向上的垂直縮放比例, 水平縮放比例和垂直縮放比例的乘积即为縮 放比例。 Wherein, Hpixel represents the horizontal pixel number of the first video data (ie, the input video data), Vpixel represents the vertical line number of the first video data (ie, the input video data); Hpixel ' represents the third video data (ie, the output video) Data) The number of horizontal pixels, Vpixel ' represents the number of vertical lines of the third video data (ie, the output video data), and the ratio of Hpixel to Hpixel ' is the horizontal scaling in the horizontal direction, Vpixel and Vpixel ' The ratio is the vertical scaling in the vertical direction, and the product of the horizontal scaling and the vertical scaling is the scaling.
另外, 时钟产生单元 105 还可通过一个按比例可调的锁相环, 实现可配置的输出 时钟, 该结构根据输入时钟 clk_Vide0 和可配置的縮放比例, 得到恰当的縮放时钟 clk_scale 0 Further, the clock generating unit further proportionally adjustable by a phase-locked loop, the output clock can be configured to achieve, the structure of the input clock clk_ V ide 0 and scaling may be configured to obtain the proper scaling clock clk_scale 105 0
如图 5 所示的示意图, 输入的视频数据经本发明实施例所述的视频縮放装置后得 到输出的视频数据, 当然, 图 5 只是一种縮小的示意图, 输出的视频数据可为任意比 例的放大或縮小视频数据。根据公式(2)可知,当输出视频分辨率(Hpixel' X Vpixel' ) 大于输入视频分辨率 (Hpixel x Vpixel) 时, clk_scale大于 clk_video, 当输出视频分辨 率小于输入视频分辨率时, clk_scale小于 clk_video。  As shown in the schematic diagram of FIG. 5, the input video data is outputted by the video scaling apparatus according to the embodiment of the present invention. Of course, FIG. 5 is only a reduced schematic diagram, and the output video data may be any ratio. Zoom in or out on video data. According to formula (2), clk_scale is larger than clk_video when the output video resolution (Hpixel' X Vpixel' ) is greater than the input video resolution (Hpixel x Vpixel), and clk_scale is smaller than clk_video when the output video resolution is less than the input video resolution. .
另外, 在本发明的一个实施例中, 时钟产生单元 105 还可通过一个按比例可调的 锁相环, 实现可配置的縮放时钟, 该结构根据输入时钟频率与输入信号分辨率均为固 定数值, 而且输出分辨率相应于显示要求也应为已知固定数值, 可按比例算出输出时 钟的频率 (即縮放时钟的频率) , 由于输出时钟的可配置性, 故可以得到恰当的时钟 频率值, 从而使输入与输出速率在某种程度上达到一定的平衡。  In addition, in an embodiment of the present invention, the clock generating unit 105 can also implement a configurable scaling clock through a proportionally adjustable phase-locked loop. The structure is fixed according to the input clock frequency and the input signal resolution. And the output resolution should be a known fixed value corresponding to the display requirement. The frequency of the output clock can be calculated proportionally (that is, the frequency of the scaled clock). Due to the configurability of the output clock, an appropriate clock frequency value can be obtained. This allows the input and output rates to reach a certain balance to some extent.
如图 6所示为第一加权单元 104和 /或第二加权单元 107的结构示意图。 如图 6所 示, 在本发明的一个实施例中, 第一加权单元 104和 /或第二加权单元 107包括加权系 数子单元、 n个乘法器和一个加法器, 加权系数子单元输出的 n个系数 Coefl至 Coefn 和输入的 n个视频数据 P1至 Pn—一对应, 并输入至对应的 n个乘法器相乘, 得到的 n个乘积输入至加法器得到加权输出数据 Pout, 其中 n为自然数, 由縮放算法决定, 例 如采用双立方进行插值运算时, 则 n=4, 具体的加权公式如式 (3 ) :  A schematic diagram of the structure of the first weighting unit 104 and/or the second weighting unit 107 is shown in FIG. As shown in FIG. 6, in an embodiment of the present invention, the first weighting unit 104 and/or the second weighting unit 107 includes a weighting coefficient subunit, n multipliers, and an adder, and the weighting coefficient subunit outputs n. The coefficients Coefl to Coefn are corresponding to the input n video data P1 to Pn, and are input to the corresponding n multipliers, and the obtained n products are input to the adder to obtain weighted output data Pout, where n is a natural number , determined by the scaling algorithm, for example, when using double cube for interpolation, then n=4, the specific weighting formula is as in equation (3):
Pout = Pl*Coefl + P2*Coef2 + P3*Coef3 + P4*Coef4 ( 3 ) 另外, 如果 n值不同, 则根据具体需要在加权系数子单元中存储不同的系数, 加 权系数子单元可为查找表存储单元, 在此不进行具体限定。  Pout = Pl*Coefl + P2*Coef2 + P3*Coef3 + P4*Coef4 ( 3 ) In addition, if the values of n are different, different coefficients are stored in the weighting coefficient subunit according to specific needs, and the weighting coefficient subunit may be a lookup table. The storage unit is not specifically limited herein.
本发明实施例的视频縮放装置, 采用至少 2η个存储空间的行缓存单元作为视频数 据的缓存及容错, 并按比例可调的提供可配置的縮放时钟, 在输入时钟、 输入视频数 据、 縮放时钟和输出视频数据之间实现了一种动态平衡, 实现优异的视频縮放处理效 果; 另外, 不需要占用大量芯片面积的 SDRAM, 增加的只是与缓存整场视频数据所占 用芯片而言小得多的 2η行的行缓存单元, 大大减低了整个芯片的成本, 同时能够实现 实时任意比例的视频縮放。  The video scaling apparatus according to the embodiment of the present invention uses a line buffer unit of at least 2n storage spaces as a buffer and fault tolerance of video data, and provides a configurable scaling clock in a proportionally adjustable manner, at an input clock, input video data, and a scaling clock. A dynamic balance is achieved between the output video data and the excellent video zoom processing effect. In addition, the SDRAM does not need to occupy a large amount of chip area, and the added amount is only much smaller than the chip occupied by the entire video data. The 2 η row buffer unit greatly reduces the cost of the entire chip, and at the same time enables real-time arbitrary scale video scaling.
图 7为本发明另一个实施例的视频縮放装置的结构框图。 如图 7所示, 视频縮放 装置包括:行缓存控制单元 102、行缓存单元 103、第一加权单元 104、点缓存单元 106、 第二加权单元 107、 锁存单元 108、 时钟产生单元 105、 校正单元 109和时序单元 110。 具体地, 校正单元 109用于监测行缓存单元 103的读写状态, 并当读写状态异常 时进行校正。 FIG. 7 is a structural block diagram of a video scaling apparatus according to another embodiment of the present invention. As shown in FIG. 7, the video scaling apparatus includes: a line buffer control unit 102, a line buffer unit 103, a first weighting unit 104, a dot buffer unit 106, The second weighting unit 107, the latch unit 108, the clock generating unit 105, the correcting unit 109, and the timing unit 110. Specifically, the correcting unit 109 is configured to monitor the read/write status of the line buffer unit 103, and perform correction when the read/write status is abnormal.
在本发明的一个实施例中, 2n+l行的存储空间构成存储环, 行缓存单元 103根据 第一加权处理确定一次读取存储空间的行数, 并根据縮放比例和上一次读取存储空间 的第一行位置确定下一次读取存储空间的第一行位置。 例如, 如果第一加权处理为双 立法插值算法, 则一次一次读取存储空间的行数为 4 行; 又如, 如果縮放比例为 5/4 即 1.25, 如果上一次读取存储空间的第一行位置为第 1行, 并读取第 1行至第 4行的 视频数据, 此时可以确定下一次读取存储空间的第一行位置为第 2行, 应当理解, 该 示例仅为方便说明行缓存单元 103 根据縮放比例确定读写过程, 并不能作为对本发明 实施例的保护范围的限定。  In one embodiment of the present invention, the storage space of 2n+1 rows constitutes a storage ring, and the row buffer unit 103 determines the number of rows of the storage space to be read at a time according to the first weighting process, and reads the storage space according to the scaling ratio and the last time. The first line position determines the first line position of the next read storage space. For example, if the first weighting process is a double-legislation interpolation algorithm, the number of rows of the storage space at one time is 4 rows; for example, if the scaling ratio is 5/4 or 1.25, if the storage space is read first The line position is the first line, and the video data of the first line to the fourth line is read. At this time, it can be determined that the first line position of the next read storage space is the second line. It should be understood that the example is only for convenience. The line buffer unit 103 determines the read/write process according to the scaling ratio, and is not intended to limit the scope of protection of the embodiments of the present invention.
但是, 由于各种视频源的差别及误差, 会存在不大的一个偏离。 比如同样输出分 辨率为 800x600的计算机, 不同品牌的计算机之间会存在一个误差, 即每行的总点数、 每场的总行数可能会有 Δ的误差。 但由于监测出的分辨率一样, 所以设置的理论 Hpixel' 、 Vpixel' 一样, 这样就会出现图像的错乱现象, 因此导致行缓存单元 103的 读写异常。 这里设置点误差为 Δ Χ, 行误差为 A y, 水平实际总点数即为 Hpixel' + Δ χ, 垂直实际总行数即为 Vpixel' + A y。 在本发明的实施例中, 无需检测 Δ χ、 A y, 校正 单元 109通过调节 Hpixel' 就能达到正确的效果。 However, due to the differences and errors of various video sources, there will be a small deviation. For example, if the computer with the same output resolution is 800x600, there will be an error between the computers of different brands, that is, the total number of points per line and the total number of lines per field may have a delta error. However, since the detected resolution is the same, the theoretical Hpixel' and Vpixel' are set, and thus the image is disordered, so that the read/write of the line buffer unit 103 is abnormal. Here, the set point error is Δ Χ , the line error is A y , the actual total point number is Hpixel' + Δ χ, and the actual vertical total line number is Vpixel' + A y. In the embodiment of the present invention, the correction unit 109 can achieve the correct effect by adjusting Hpixel' without detecting Δ χ, A y .
例如, 校正单元 109在一场中监测 9条行缓存器的读写状态, 当哪条行缓存器同 时出现读写操作时, 说明已经出现了读写混乱, 配置的 Hpixel ' 就得做相应的调整。 只有知道是读太快了还是写太快了, 才能做相应方向的调整。在输出时序的每行读取 9 条行缓存器中的 4条计算得到 1行输出, 根据縮放比例 (步长) 的累加来决定读取哪 4 行缓存器的数据。 由于每场的起始位置都是一样的, 即读取 1、 2、 3、 4这 4行缓存器 的时候在写第 7 行缓存器, 监测后面当同时出现读写操作时, 是写操作赶上读操作还 是读操作赶上写操作即可判断出是读太快了还是写太快了。  For example, the correcting unit 109 monitors the read and write status of the nine line buffers in one field. When which line buffer reads and writes at the same time, it indicates that read and write confusion has occurred, and the configured Hpixel 'has to be corresponding. Adjustment. Only knowing whether reading too fast or writing too fast can make adjustments in the corresponding direction. Each of the 9 line buffers in the output timing is read to obtain 1 line of output, and the data of which 4 lines of buffer is read is determined according to the accumulation of the scaling (step size). Since the starting position of each field is the same, that is, when reading the 4 line buffers of 1, 2, 3, 4, the 7th line buffer is written, and when the read and write operations occur simultaneously, it is a write operation. Catch up with the read operation or the read operation to catch up with the write operation to determine whether it is reading too fast or writing too fast.
在本发明的一个实施例中, 时序单元 110用于根据縮放时钟生成行读取控制信号, 行读取控制信号一个周期的总长度为从行缓存单元 103 中根据縮放比例读取一行数据 所需的时间, 其中, 如果行读取控制信号的低电平区间 /高电平区间为消隐区间, 则在 高电平区间 /低电平区间内根据縮放比例从行缓存单元中读取一行有效数据。  In an embodiment of the present invention, the timing unit 110 is configured to generate a row read control signal according to the scaling clock, and the total length of the row read control signal for one cycle is required to read a row of data from the row buffer unit 103 according to the scaling ratio. Time, wherein, if the low-level interval/high-level interval of the row read control signal is a blanking interval, a row is validly read from the row buffer unit according to the scaling ratio in the high-level interval/low-level interval. data.
具体地, 在本发明的一个实施例中, 校正单元 109还用于按照以下规则中的一种 或多种对读写异常进行校正:  Specifically, in an embodiment of the present invention, the correcting unit 109 is further configured to correct the read/write abnormality according to one or more of the following rules:
( 1 ) 通过调整时序单元 110以调整行读取控制信号一个周期的总长度。 在本发明的一个实施例中, 通过调整时序单元 110 以调整行读取控制信号一个周 期的总长度的具体为: 调整读取控制信号的消隐区间的长度。 (1) The total length of one cycle of the control signal is read by adjusting the timing unit 110 to adjust the line. In one embodiment of the present invention, the adjustment of the timing unit 110 to adjust the total length of one cycle of the row read control signal is specifically: adjusting the length of the blanking interval of the read control signal.
具体地, 在本发明的一个实施例中, 如果读操作过快导致赶上写操作, 则调整时 序单元 110 以将行读取控制信号中消隐区间对应电平信号的持续时间增加第一预设时 间段, 如果写操作过快导致赶上读操作, 则调整时序单元 110将行读取控制信号中消 隐区间对应电平信号的持续时间减少第一预设时间段。  Specifically, in an embodiment of the present invention, if the read operation is too fast to catch up with the write operation, the timing unit 110 is adjusted to increase the duration of the blanking interval corresponding level signal in the row read control signal by the first pre- The time period is set. If the write operation is too fast to catch up with the read operation, the adjustment timing unit 110 reduces the duration of the blanking interval corresponding level signal in the line read control signal by the first preset time period.
更具体地, 存储空间构成存储环, 读写操作同时存在存储环中, 如果读操作和写 操作维持平衡, 则读写操作不会存在冲突。 如果当读操作过快导致赶上写操作时, 则 会出现读写冲突, 即从行缓存单元 103 中读取第一视频数据进行处理以输出第三视频 数据的读操作过快导致赶上写入行缓存单元 103 的写操作, 因此, 读取数据过快导致 读取数据对应的缓存单元与写入数据对应的缓存单元相同, 或读取数据对应的缓存单 元对应还未写入数据的缓存单元, 此时需要调整影响读取速度的因素以使读取速度和 写入速度匹配以保持读写操作平衡, 将行读取控制信号中消隐区间对应电平信号的持 续时间增加第一预设时间段即可降低读取速度; 同样地, 如果当写操作过快导致赶上 读操作时, 也会出现读写冲突, 将行读取控制信号中消隐区间对应电平信号的持续时 间增加第一预设时间段即可减少读取一行所需的时间, 从而加快读取速度。  More specifically, the storage space constitutes a storage ring, and the read and write operations are simultaneously present in the storage ring. If the read operation and the write operation are balanced, there is no conflict between the read and write operations. If the read operation is too fast to catch up with the write operation, a read-write conflict occurs, that is, the read of the first video data from the line buffer unit 103 for processing to output the third video data is too fast to catch up. The write operation of the incoming buffer unit 103, therefore, the read data is too fast, so that the cache unit corresponding to the read data is the same as the cache unit corresponding to the write data, or the cache unit corresponding to the read data corresponds to the cache that has not yet written data. Unit, at this time, it is necessary to adjust the factors affecting the reading speed to match the reading speed and the writing speed to maintain the balance of the read and write operations, and increase the duration of the corresponding level signal of the blanking interval in the line read control signal by the first pre- Set the time period to reduce the reading speed; similarly, if the write operation is too fast to catch up with the read operation, the read/write conflict will also occur, and the duration of the blanking interval corresponding level signal in the control signal will be read. Increasing the first preset time period reduces the time required to read a line, thereby speeding up the reading speed.
其中, 第一预设时间段可为用户设置或默认设置, 通过这样的反复调整, 最终可 以使得输出时序和输入时序达到平衡。  The first preset time period may be a user setting or a default setting, and by such repeated adjustment, the output timing and the input timing may be balanced.
( 2) 通过调整时钟产生单元 105以调整縮放时钟的周期 /频率。  (2) The period/frequency of the scaling clock is adjusted by adjusting the clock generating unit 105.
具体地, 在本发明的一个实施例中, 如果读操作过快导致赶上写操作, 则调整时 钟产生单元 105将縮放时钟的周期增加第二预设时间段 /将縮放时钟的频率减小第二预 设值, 如果写操作过快导致赶上读操作, 则调整时钟产生单元 105 将将縮放时钟的周 期减少第二预设时间段 /将縮放时钟的频率增加第二预设值。  Specifically, in an embodiment of the present invention, if the read operation is too fast to catch up with the write operation, the adjustment clock generation unit 105 increases the period of the scaling clock by a second predetermined period of time / reduces the frequency of the scaling clock. The second preset value, if the write operation is too fast to catch up with the read operation, the adjustment clock generation unit 105 decreases the period of the zoom clock by a second preset time period / increases the frequency of the zoom clock by a second preset value.
其中, 第二预设时间段可为用户设置或默认设置, 通过这样的反复调整, 最终可 以使得输出时序和输入时序达到平衡。  The second preset time period can be set by the user or set by default. Through such repeated adjustments, the output timing and the input timing can be balanced.
( 3 ) 调整縮放比例。  (3) Adjust the zoom ratio.
在本发明的一个实施例中, 调整縮放比例具体为: 调整垂直方向的縮放比例, 即 调整场方向的縮放比例。  In an embodiment of the invention, the scaling is specifically: adjusting the scaling of the vertical direction, that is, adjusting the scaling of the field direction.
具体地, 在本发明的一个实施例中, 如果读操作过快导致赶上写操作, 则将縮放 比例减少预设阈值以减少从行缓存单元 103 读取数据的步长, 如果写操作过快导致赶 上读操作, 则将縮放比例增加预设阈值以增加从行缓存单元 103读取数据的步长, 从 而加快读操作的速度。 更具体地, 如果垂直方向上的縮放比例大于縮放处理中每次插值处理时所需的像 素点数, 则在每次向行缓存单元 103 中写入数据时必须舍弃一部分行数的第一视频数 据, 具体舍弃的行数为像素点数和垂直方向上的縮放比例的差值 (具体见下述方法实 施例所述) , 因此, 可以通过调整縮放比例实现输出时序和输入时序的平衡。 Specifically, in one embodiment of the present invention, if the read operation is too fast to catch up with the write operation, the scaling is decreased by the preset threshold to reduce the step size of reading data from the line buffer unit 103, if the write operation is too fast As a result of catching up with the read operation, the scaling is increased by a preset threshold to increase the step size of reading data from the line buffer unit 103, thereby speeding up the read operation. More specifically, if the scaling in the vertical direction is larger than the number of pixels required for each interpolation processing in the scaling processing, the first video data of a part of the number of lines must be discarded each time data is written to the line buffer unit 103. The number of rows to be discarded is the difference between the number of pixels and the scaling in the vertical direction (as described in the method embodiment below). Therefore, the balance between the output timing and the input timing can be achieved by adjusting the scaling.
由此, 校正单元 109调整读写操作直至不会出现同时读写操作异常时为止。 此时, 自动校正完成操作。  Thereby, the correcting unit 109 adjusts the read/write operation until the simultaneous read/write operation abnormality does not occur. At this point, the automatic calibration is completed.
本发明实施例视频縮放装置, 带有自动校正功能, 当输入的视频数据格式 (行数 或点数) 与标准格式有稍许偏差时, 仍能正确地自动校正回来。  The video zooming device of the embodiment of the invention has an automatic correction function, and when the input video data format (the number of lines or points) is slightly deviated from the standard format, it can still be correctly corrected automatically.
图 8为本发明又一个实施例的视频縮放装置的结构框图。 如图 8所示, 视频縮放 装置包括:场滤波单元 101、行缓存控制单元 102、行缓存单元 103、第一加权单元 104、 点缓存单元 106、 第二加权单元 107、 锁存单元 108、 时钟产生单元 105、 校正单元 109 和时序单元 110。  FIG. 8 is a structural block diagram of a video scaling apparatus according to still another embodiment of the present invention. As shown in FIG. 8, the video scaling apparatus includes: a field filtering unit 101, a line buffer control unit 102, a line buffer unit 103, a first weighting unit 104, a dot buffer unit 106, a second weighting unit 107, a latch unit 108, and a clock. The generating unit 105, the correcting unit 109, and the timing unit 110.
具体地, 场滤波单元 101用于对输入行缓存控制单元 102中的第一视频数据进行 滤波。  Specifically, the field filtering unit 101 is configured to filter the first video data in the input line buffer control unit 102.
本发明实施例视频縮放装置, 经过场滤波单元后再进行场方向的缓存和縮放处理 将减少视频图像的失真, 得到更好的縮放效果, 特别是当场方向 (垂直方向) 的縮小 比例大于 n的时候。  In the video zooming apparatus of the embodiment of the present invention, after the field filtering unit performs the buffering and scaling processing of the field direction, the distortion of the video image is reduced, and a better zooming effect is obtained, in particular, the reduction ratio of the field direction (vertical direction) is greater than n. time.
为了实现上述实施例, 本发明还提出一种视频縮放方法。  In order to implement the above embodiments, the present invention also proposes a video scaling method.
图 9为本发明一个实施例的视频縮放方法的流程图。  FIG. 9 is a flowchart of a video zooming method according to an embodiment of the present invention.
如图 9所示, 视频縮放方法包括以下步骤:  As shown in Figure 9, the video scaling method includes the following steps:
S101 : 获取输入的第一视频数据的输入时钟, 并根据输入时钟和縮放比例获取縮 放时钟。  S101: Acquire an input clock of the input first video data, and obtain a zoom clock according to an input clock and a scaling ratio.
具体地, 在本发明的一个实施例中, S101具体包括: 获取输入时钟和縮放比例的 第一乘积, 并将第一乘积作为所述縮放时钟; 其中, 縮放比例= (第三视频数据的垂直 行数 *第三视频数据的水平像素点数) I (第一视频数据的垂直行数 *第一视频数据的水 平像素点数) , 其中, 第三视频数据 (即输出的视频数据, 将在后续实施例中叙述) 的垂直行数与第一视频数据的垂直行数的比值为垂直縮放比例, 第三视频数据的水平 像素点数与第一视频数据的水平像素点数的比值为水平縮放比例。 具体地计算过程可 参考上述装置实施例所述的公式 (2) 。  Specifically, in an embodiment of the present invention, S101 specifically includes: acquiring a first product of an input clock and a scaling ratio, and using the first product as the scaling clock; wherein, the scaling ratio = (the vertical of the third video data) Number of rows * horizontal pixel number of the third video data) I (the number of vertical lines of the first video data * the number of horizontal pixels of the first video data), wherein the third video data (ie, the output video data will be implemented later) The ratio of the number of vertical lines of the first video data to the number of vertical lines of the first video data is a vertical scaling ratio, and the ratio of the horizontal pixel number of the third video data to the horizontal pixel number of the first video data is a horizontal scaling. Specifically, the calculation process can refer to the formula (2) described in the above device embodiment.
S102: 判断垂直方向上的垂直縮放比例 m是否大于 n, 其中, n为縮放处理中每次 插值处理时所需的像素点数。 其中, 第一縮放比例 m的计算如下式 (3 ) ,  S102: Determine whether the vertical scaling ratio m in the vertical direction is greater than n, where n is the number of pixels required for each interpolation process in the scaling process. Wherein, the first scaling ratio m is calculated as shown in the following formula (3),
Vpixel' , 、  Vpixel' , ,
m =— (3 )  m =— (3 )
Vpixel S103 : 如果是, 则进一步判断 m是否为非整数。 Vpixel S103: If yes, further determine whether m is a non-integer.
S1031 : 如果为整数, 则在每次向行缓存单元中写入数据时写入 n行的第一视频数 据, 并舍弃 m-n行的第一视频数据, 其中, 行缓存单元的存储空间为至少 2η行的存储 空间, 其中, 每行存储空间的大小为每行第一视频数据所需的存储空间的大小。  S1031: If it is an integer, the first video data of n rows is written every time data is written into the row buffer unit, and the first video data of the mn row is discarded, wherein the storage space of the row buffer unit is at least 2η The storage space of the row, wherein the size of each row of storage space is the size of the storage space required for the first video data of each row.
在本发明的一个实施例中, 行缓存单元的存储空间为 2η+1行的存储空间。  In one embodiment of the invention, the storage space of the row buffer unit is 2n+1 rows of storage space.
S1032: 如果为非整数, 则每存储 η行的第一视频数据后, 舍弃 Iml-n行的第一视频 数据, 并累计 m-n的小数部分以获取累计值, 当累计值达到 1时, 舍弃 lml-n+1行的第 一视频数据, 并将累计数清零, 并在每存储 n行的第一视频数据时重复执行 S1032。  S1032: If it is a non-integer, after storing the first video data of the η line, discard the first video data of the Iml-n line, and accumulate the fractional part of mn to obtain the accumulated value, and when the accumulated value reaches 1, discard the lml The first video data of the -n+1 line, and the accumulated number is cleared, and S1032 is repeatedly executed every time the first video data of n lines is stored.
其中, Iml表示对 m进行取整计算。  Among them, Iml means rounding up m.
S104: 如果否, 则在每次向行缓存单元中写入数据时写入 n行的第一视频数据。 S105 : 对 n行的第一视频数据进行第一加权处理以获取垂直方向上縮放后的第二 视频数据。  S104: If no, the first video data of n lines is written each time data is written to the line buffer unit. S105: Perform first weighting processing on the first video data of the n rows to obtain the second video data that is scaled in the vertical direction.
S106: 对第二视频数据进行第二加权处理以获取水平方向上縮放后的第三视频数 据。  S106: Perform second weighting processing on the second video data to obtain third video data that is scaled in the horizontal direction.
S107 : 输出第三视频数据。  S107: Output third video data.
本发明实施例的视频縮放方法, 采用至少 2η个存储空间的行缓存单元作为视频数 据的缓存及容错, 并按比例可调的提供可配置的縮放时钟, 在输入时钟、 输入视频数 据、 縮放时钟和输出视频数据之间实现了一种动态平衡, 实现优异的视频縮放处理效 果。  The video scaling method of the embodiment of the present invention uses a line buffer unit of at least 2n storage spaces as a buffer and fault tolerance of video data, and provides a configurable scaling clock in a proportionally adjustable manner, at an input clock, input video data, and a scaling clock. A dynamic balance is achieved between the output video data and the excellent video scaling effect.
在本发明的一个实施例中,步骤 S103和 S104中的读数据操作和 S105中的写数据 操作针对不同的行地址空间同步进行。  In one embodiment of the invention, the read data operations in steps S103 and S104 and the write data operations in S105 are synchronized for different row address spaces.
在本发明的一个实施例中, 还包括 (图中未示出) : 监测行缓存单元的读写状态, 并当读写状态异常时进行校正。  In an embodiment of the present invention, the method further includes: (not shown): monitoring the read/write status of the line buffer unit, and performing correction when the read/write status is abnormal.
在本发明的一个实施例中, 2η+1行的存储空间构成存储环, 行缓存单元根据第一 加权处理确定一次读取存储空间的行数, 并根据縮放比例和上一次读取存储空间的第 一行位置确定下一次读取存储空间的第一行位置。 例如, 如果第一加权处理为双立法 插值算法,则一次一次读取存储空间的行数为 4行;又如,如果縮放比例为 5/4即 1.25, 如果上一次读取存储空间的第一行位置为第 1行, 并读取第 1行至第 4行的视频数据, 此时可以确定下一次读取存储空间的第一行位置为第 2行, 应当理解, 该示例仅为方 便说明行缓存单元根据縮放比例确定读写过程, 并不能作为对本发明实施例的保护范 围的限定。  In an embodiment of the present invention, the storage space of 2n+1 rows constitutes a storage ring, and the row buffer unit determines the number of rows of the storage space to be read at a time according to the first weighting process, and according to the scaling ratio and the last reading of the storage space. The first line position determines the first line position of the next read storage space. For example, if the first weighting process is a double-legislation interpolation algorithm, the number of rows of the storage space at one time is 4 rows; for example, if the scaling ratio is 5/4 or 1.25, if the storage space is read first The line position is the first line, and the video data of the first line to the fourth line is read. At this time, it can be determined that the first line position of the next read storage space is the second line. It should be understood that the example is only for convenience. The line buffer unit determines the read/write process according to the scaling ratio, and is not intended to limit the scope of protection of the embodiments of the present invention.
在本发明的一个实施例中, 还包括以下步骤: 根据縮放时钟生成行读取控制信号, 行读取控制信号一个周期的总长度为从行缓存单元中根据縮放比例读取一行数据所需 的时间, 其中, 如果行读取控制信号的低电平区间 /高电平区间为消隐区间, 则在高电 平区间 /低电平区间内根据縮放比例从行缓存单元中读取一行有效数据。 In an embodiment of the present invention, the method further includes the steps of: generating a row read control signal according to the scaling clock, The total length of one cycle of the row read control signal is the time required to read one row of data from the row buffer unit according to the scaling ratio, wherein if the low level interval/high level interval of the row read control signal is the blanking interval , a line of valid data is read from the line buffer unit according to the scaling ratio in the high level interval/low level interval.
具体地, 在本发明的一个实施例中, 按照以下规则中的一种或多种对读写异常进 行校正:  Specifically, in one embodiment of the invention, the read and write anomalies are corrected in accordance with one or more of the following rules:
( 1 ) 调整行读取控制信号一个周期的总长度。  (1) Adjust the total length of one cycle of the line read control signal.
在本发明的一个实施例中, 调整行读取控制信号一个周期的总长度的具体为: 调 整读取控制信号的消隐区间的长度。  In one embodiment of the invention, the adjustment of the total length of the line read control signal for one cycle is specifically: adjusting the length of the blanking interval of the read control signal.
具体地, 在本发明的一个实施例中, 如果读操作过快导致赶上写操作, 则将行读 取控制信号中消隐区间对应电平信号的持续时间增加第一预设时间段, 如果写操作过 快导致赶上读操作, 则将行读取控制信号中消隐区间对应电平信号的持续时间减少第 一预设时间段。  Specifically, in an embodiment of the present invention, if the read operation is too fast to catch up with the write operation, the duration of the blanking interval corresponding level signal in the row read control signal is increased by the first preset time period, if If the write operation is too fast to catch up with the read operation, the duration of the blanking interval corresponding level signal in the line read control signal is decreased by the first preset time period.
更具体地, 存储空间构成存储环, 读写操作同时存在存储环中, 如果读操作和写 操作维持平衡, 则读写操作不会存在冲突。 如果当读操作过快导致赶上写操作时, 则 会出现读写冲突, 即从行缓存单元中读取第一视频数据进行处理以输出第三视频数据 的读操作过快导致赶上写入行缓存单元的写操作, 因此, 读取数据过快导致读取数据 对应的缓存单元与写入数据对应的缓存单元相同, 或读取数据对应的缓存单元对应还 未写入数据的缓存单元, 此时需要调整影响读取速度的因素以使读取速度和写入速度 匹配以保持读写操作平衡, 将行读取控制信号中消隐区间对应电平信号的持续时间增 加第一预设时间段即可降低读取速度; 同样地, 如果当写操作过快导致赶上读操作时, 也会出现读写冲突, 将行读取控制信号中消隐区间对应电平信号的持续时间增加第一 预设时间段即可减少读取一行所需的时间, 从而加快读取速度。  More specifically, the storage space constitutes a storage ring, and the read and write operations are simultaneously present in the storage ring. If the read operation and the write operation are balanced, there is no conflict between the read and write operations. If the read operation is too fast to catch up with the write operation, a read-write conflict occurs, that is, the read of the first video data from the line buffer unit for processing to output the third video data is too fast, causing the write to catch up. The write operation of the row buffer unit, therefore, the read data is too fast, so that the cache unit corresponding to the read data is the same as the cache unit corresponding to the write data, or the cache unit corresponding to the read data corresponds to the cache unit that has not yet written the data. At this time, it is necessary to adjust the factors affecting the reading speed to match the reading speed and the writing speed to maintain the balance of the read and write operations, and increase the duration of the blanking interval corresponding level signal in the line read control signal by the first preset time. The segment can reduce the reading speed; similarly, if the write operation is too fast to catch up with the read operation, the read/write conflict will also occur, and the duration of the corresponding level signal of the blanking interval in the line read control signal is increased. A preset period of time reduces the time required to read a line, thereby speeding up the reading.
其中, 第一预设时间段可为用户设置或默认设置, 通过这样的反复调整, 最终可 以使得输出时序和输入时序达到平衡。  The first preset time period may be a user setting or a default setting, and by such repeated adjustment, the output timing and the input timing may be balanced.
( 2) 调整縮放时钟的周期 /频率。  ( 2) Adjust the period/frequency of the zoom clock.
具体地, 在本发明的一个实施例中, 在本发明的一个实施例中, 如果读操作过快 导致赶上写操作, 则将縮放时钟的周期增加第二预设时间段 /将縮放时钟的频率减小第 二预设值, 如果写操作过快导致赶上读操作, 则将将縮放时钟的周期减少第二预设时 间段 /将縮放时钟的频率增加第二预设值。  Specifically, in an embodiment of the present invention, in an embodiment of the present invention, if the read operation is too fast to catch up with the write operation, the period of the zoom clock is increased by the second preset time period/the clock will be scaled The frequency is decreased by the second preset value, and if the write operation is too fast to catch up with the read operation, the period of the zoom clock is decreased by the second preset time period / the frequency of the zoom clock is increased by the second preset value.
其中, 第二预设时间段可为用户设置或默认设置, 通过这样的反复调整, 最终可 以使得输出时序和输入时序达到平衡。  The second preset time period can be set by the user or set by default. Through such repeated adjustments, the output timing and the input timing can be balanced.
( 3 ) 调整縮放比例。 在本发明的一个实施例中, 调整縮放比例具体为: 调整垂直方向的縮放比例, 即 调整场方向的縮放比例。 (3) Adjust the zoom ratio. In an embodiment of the invention, the scaling is specifically: adjusting the scaling of the vertical direction, that is, adjusting the scaling of the field direction.
具体地, 在本发明的一个实施例中, 如果读操作过快导致赶上写操作, 则将縮放 比例减少预设阈值以减少从行缓存单元读取数据的步长, 如果写操作过快导致赶上读 操作, 则将縮放比例增加预设阈值以增加从行缓存单元读取数据的步长, 从而加快读 操作的速度。  Specifically, in an embodiment of the present invention, if the read operation is too fast to catch up with the write operation, the zoom ratio is decreased by a preset threshold to reduce the step size of reading data from the line buffer unit, if the write operation is too fast To catch up with the read operation, the scaling is increased by a preset threshold to increase the step size of reading data from the line buffer unit, thereby speeding up the read operation.
更具体地, 如果垂直方向上的縮放比例大于縮放处理中每次插值处理时所需的像 素点数, 则在每次向行缓存单元中写入数据时必须舍弃一部分行数的第一视频数据, 具体舍弃的行数为像素点数和垂直縮放比例的差值, 因此, 可以通过调整縮放比例实 现输出时序和输入时序的平衡。  More specifically, if the scaling in the vertical direction is larger than the number of pixels required for each interpolation processing in the scaling process, the first video data of a part of the number of lines must be discarded each time data is written to the line buffer unit, The number of rows to be discarded is the difference between the number of pixels and the vertical scaling. Therefore, the balance between the output timing and the input timing can be achieved by adjusting the scaling.
由此, 调整读写操作直至不会出现同时读写操作异常时为止, 能实现自动校正功 能, 当输入的视频数据格式 (行数或点数) 与标准格式有稍许偏差时, 仍能正确地自 动校正回来。  Therefore, the read/write operation can be adjusted until the simultaneous read/write operation is abnormal, and the automatic correction function can be realized. When the input video data format (the number of lines or the number of points) is slightly deviated from the standard format, the automatic correction can still be performed automatically. Corrected it back.
在本发明的一个实施例中, 在步骤 S1之前还包括 (图中未示出) : 对第一视频数 据进行垂直方向的滤波。  In an embodiment of the present invention, before the step S1, (not shown) is further included: the first video data is filtered in the vertical direction.
由此, 经过滤波后再进行场方向的缓存和縮放处理将减少视频图像的失真, 得到 更好的縮放效果, 特别是当场方向 (垂直方向) 的縮小比例大于 n的时候。  Therefore, the buffering and scaling processing in the field direction after filtering will reduce the distortion of the video image and obtain a better scaling effect, especially when the reduction ratio of the field direction (vertical direction) is larger than n.
为了实现上述实施例, 本发明还提出一种存储介质, 用于存储应用程序, 应用程 序用于本发明任一项实施例所述的视频縮放方法。  In order to implement the above embodiments, the present invention further provides a storage medium for storing an application, and the application is used in the video scaling method according to any of the embodiments of the present invention.
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为, 表示包括 一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、 片段 或部分, 并且本发明的优选实施方式的范围包括另外的实现, 其中可以不按所示出或 讨论的顺序, 包括根据所涉及的功能按基本同时的方式或按相反的顺序, 来执行功能, 这应被本发明的实施例所属技术领域的技术人员所理解。  Any process or method description in the flowcharts or otherwise described herein may be understood to represent a module, segment or portion of code that includes one or more executable instructions for implementing the steps of a particular logical function or process. And the scope of the preferred embodiments of the invention includes additional implementations, in which the functions may be performed in a substantially simultaneous manner or in an opposite order depending on the functions involved, in the order shown or discussed. It will be understood by those skilled in the art to which the embodiments of the present invention pertain.
在流程图中表示或在此以其他方式描述的逻辑和 /或步骤, 例如, 可以被认为是用 于实现逻辑功能的可执行指令的定序列表, 可以具体实现在任何计算机可读介质中, 以供指令执行系统、 装置或设备 (如基于计算机的系统、 包括处理器的系统或其他可 以从指令执行系统、 装置或设备取指令并执行指令的系统) 使用, 或结合这些指令执 行系统、装置或设备而使用。就本说明书而言, "计算机可读介质"可以是任何可以包含、 存储、 通信、 传播或传输程序以供指令执行系统、 装置或设备或结合这些指令执行系 统、 装置或设备而使用的装置。 计算机可读介质的更具体的示例 (非穷尽性列表) 包 括以下: 具有一个或多个布线的电连接部(电子装置), 便携式计算机盘盒(磁装置), 随机存取存储器 (RAM) , 只读存储器 (ROM) , 可擦除可编辑只读存储器 (EPROM 或闪速存储器) , 光纤装置, 以及便携式光盘只读存储器 (CDROM) 。 另外, 计算机 可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质, 因为可以例如通 过对纸或其他介质进行光学扫描, 接着进行编辑、 解译或必要时以其他合适方式进行 处理来以电子方式获得所述程序, 然后将其存储在计算机存储器中。 The logic and/or steps represented in the flowchart or otherwise described herein, for example, may be considered as an ordered list of executable instructions for implementing logical functions, and may be embodied in any computer readable medium, Used in conjunction with, or in conjunction with, an instruction execution system, apparatus, or device (eg, a computer-based system, a system including a processor, or other system that can fetch instructions and execute instructions from an instruction execution system, apparatus, or device) Or use with equipment. For the purposes of this specification, a "computer-readable medium" can be any apparatus that can contain, store, communicate, propagate, or transport the program for use by the instruction execution system, apparatus, or device, or in conjunction with the instruction execution system, apparatus, or device. More specific examples (non-exhaustive list) of computer readable media include the following: electrical connections (electronic devices) having one or more wires, portable computer disk cartridges (magnetic devices), Random Access Memory (RAM), Read Only Memory (ROM), Erasable Editable Read Only Memory (EPROM or Flash Memory), fiber optic devices, and Portable Optical Disk Read Only Memory (CDROM). Furthermore, the computer readable medium may even be a paper or other suitable medium on which the program can be printed, as it may be optically scanned, for example by paper or other medium, followed by editing, interpretation or, if appropriate, other suitable The method proceeds to obtain the program electronically and then store it in computer memory.
应当理解, 本发明的各部分可以用硬件、 软件、 固件或它们的组合来实现。 在上 述实施方式中, 多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行 的软件或固件来实现。 例如, 如果用硬件来实现, 和在另一实施方式中一样, 可用本 领域公知的下列技术中的任一项或他们的组合来实现: 具有用于对数据信号实现逻辑 功能的逻辑门电路的离散逻辑电路, 具有合适的组合逻辑门电路的专用集成电路, 可 编程门阵列 (PGA) , 现场可编程门阵列 (FPGA) 等。  It should be understood that portions of the invention may be implemented in hardware, software, firmware or a combination thereof. In the above-described embodiments, multiple steps or methods may be implemented in software or firmware stored in a memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, it can be implemented with any one or combination of the following techniques well known in the art: having logic gates for implementing logic functions on data signals Discrete logic circuits, application specific integrated circuits with suitable combinational logic gates, programmable gate arrays (PGAs), field programmable gate arrays (FPGAs), etc.
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤 是可以通过程序来指令相关的硬件完成, 所述的程序可以存储于一种计算机可读存储 介质中, 该程序在执行时, 包括方法实施例的步骤之一或其组合。  One of ordinary skill in the art can understand that all or part of the steps carried by the method of implementing the above embodiments can be completed by a program to instruct related hardware, and the program can be stored in a computer readable storage medium. When executed, one or a combination of the steps of the method embodiments is included.
此外, 在本发明各个实施例中的各功能单元可以集成在一个处理模块中, 也可以 是各个单元单独物理存在, 也可以两个或两个以上单元集成在一个模块中。 上述集成 的模块既可以采用硬件的形式实现, 也可以采用软件功能模块的形式实现。 所述集成 的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时, 也可以存储 在一个计算机可读取存储介质中。  In addition, each functional unit in each embodiment of the present invention may be integrated into one processing module, or each unit may exist physically separately, or two or more units may be integrated into one module. The above integrated modules can be implemented in the form of hardware or in the form of software functional modules. The integrated modules, if implemented in the form of software functional modules and sold or used as stand-alone products, may also be stored in a computer readable storage medium.
上述提到的存储介质可以是只读存储器, 磁盘或光盘等。  The above-mentioned storage medium may be a read only memory, a magnetic disk or an optical disk or the like.
在本说明书的描述中, 参考术语 "一个实施例" 、 "一些实施例" 、 "示例" 、 "具体示例" 、 或 "一些示例" 等的描述意指结合该实施例或示例描述的具体特征、 结构、 材料或者特点包含于本发明的至少一个实施例或示例中。 在本说明书中, 对上 述术语的示意性表述不一定指的是相同的实施例或示例。 而且, 描述的具体特征、 结 构、 材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。  In the description of the present specification, the description of the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" and the like means specific features described in connection with the embodiment or example. A structure, material or feature is included in at least one embodiment or example of the invention. In the present specification, the schematic representation of the above terms does not necessarily mean the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in a suitable manner in any one or more embodiments or examples.
尽管已经示出和描述了本发明的实施例, 对于本领域的普通技术人员而言, 可以 理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、 修改、 替换和变型, 本发明的范围由所附权利要求及其等同限定。  While the embodiments of the present invention have been shown and described, it will be understood by those skilled in the art The scope of the invention is defined by the appended claims and their equivalents.

Claims

权利要求书 claims
1、 一种视频縮放装置, 其特征在于, 包括: 1. A video zoom device, characterized in that it includes:
行缓存控制单元, 用于接收输入的第一视频数据; A line cache control unit, configured to receive the input first video data;
行缓存单元, 用于缓存所述行缓存控制单元写入的所述第一视频数据, 其中, 所 述行缓存单元的存储空间为至少 2η行的存储空间, 其中, η为縮放处理中每次插值处 理时所需的像素点数, 每行所述存储空间的大小为每行所述第一视频数据所需的存储 空间的大小; A line cache unit, used to cache the first video data written by the line cache control unit, wherein the storage space of the line cache unit is at least 2n lines of storage space, where n is each time in the scaling process The number of pixels required for interpolation processing, and the size of the storage space in each row is the size of the storage space required for the first video data in each row;
第一加权单元, 用于读取所述行缓存单元中的所述第一视频数据, 并对所述第一 视频数据进行第一加权处理以获取垂直方向上縮放后的第二视频数据; A first weighting unit configured to read the first video data in the line cache unit and perform a first weighting process on the first video data to obtain the second video data scaled in the vertical direction;
点缓存单元, 用于缓存所述第一加权单元写入的所述第二视频数据; A point cache unit configured to cache the second video data written by the first weighting unit;
第二加权单元, 用于读取所述点缓存单元中的所述第二视频数据, 并对所述第二 视频数据进行第二加权处理以获取水平方向上縮放后的第三视频数据; A second weighting unit, configured to read the second video data in the point buffer unit and perform a second weighting process on the second video data to obtain the third video data after scaling in the horizontal direction;
锁存单元, 用于缓存所述第二加权单元写入的所述第三视频数据; 以及 时钟产生单元, 用于获取所述第一视频数据的输入时钟, 并将所述输入时钟发送 至所述行缓存控制单元以作为所述行缓存控制单元的写时钟, 及根据所述输入时钟和 縮放比例获取縮放时钟, 并将所述縮放时钟发送至所述行缓存单元、 点缓存单元和锁 存单元以作为所述行缓存单元、 点缓存单元和锁存单元的读写时钟。 a latch unit for buffering the third video data written by the second weighting unit; and a clock generation unit for obtaining the input clock of the first video data and sending the input clock to the The line cache control unit uses the write clock as the line cache control unit, obtains the scaling clock according to the input clock and scaling ratio, and sends the scaling clock to the line cache unit, point cache unit and latch The unit serves as the read and write clock for the line cache unit, point cache unit and latch unit.
2、 根据权利要求 1所述的视频縮放装置, 其特征在于, 所述行缓存单元的存储空 间为 2η+1行的存储空间。 2. The video scaling device according to claim 1, wherein the storage space of the line cache unit is a storage space of 2n+1 lines.
3、 根据权利要求 2所述的视频縮放装置, 其特征在于, 所述时钟产生单元还用于 获取所述第一视频数据的输入时钟, 并获取所述输入时钟和縮放比例的第一乘积, 并 将所述第一乘积作为所述縮放时钟; 3. The video scaling device according to claim 2, wherein the clock generation unit is further configured to obtain the input clock of the first video data, and obtain the first product of the input clock and the scaling ratio, and use the first product as the scaling clock;
其中, 所述縮放比例 = (所述第三视频数据的垂直行数 *所述第三视频数据的水平 像素点数) / (所述第一视频数据的垂直行数 *所述第一视频数据的水平像素点数) 。 Wherein, the scaling ratio = (number of vertical lines of the third video data * number of horizontal pixels of the third video data) / (number of vertical lines of the first video data * number of horizontal pixels of the first video data) number of horizontal pixels).
4、 根据权利要求 3所述的视频縮放装置, 其特征在于, 还包括: 4. The video scaling device according to claim 3, further comprising:
校正单元, 所述校正单元用于监测所述行缓存单元的读写状态, 并当所述读写状 态异常时进行校正。 A correction unit, the correction unit is used to monitor the read and write status of the line cache unit, and perform correction when the read and write status is abnormal.
5、 根据权利要求 4所述的视频縮放装置, 其特征在于, 还包括: 5. The video scaling device according to claim 4, further comprising:
时序单元, 所述时序单元用于根据所述縮放时钟生成行读取控制信号, 所述行读 取控制信号一个周期的总长度为从所述行缓存单元中根据所述縮放比例读取一行数据 所需的时间, 其中, 如果所述行读取控制信号的低电平区间 /高电平区间为消隐区间, 则在所述高电平区间 /低电平区间内根据所述縮放比例从所述行缓存单元中读取一行有 效数据。 a timing unit, the timing unit is used to generate a row read control signal according to the scaling clock, the total length of one cycle of the row reading control signal is to read one row of data from the row buffer unit according to the scaling ratio The required time, wherein, if the low level interval/high level interval of the row read control signal is the blanking interval, Then, within the high-level interval/low-level interval, one line of valid data is read from the line cache unit according to the scaling ratio.
6、 根据权利要求 5所述的视频縮放装置, 其特征在于, 所述校正单元还用于按照 以下规则中的一种或多种进行校正: 6. The video scaling device according to claim 5, wherein the correction unit is further configured to perform correction according to one or more of the following rules:
通过调整所述时序单元以调整所述行读取控制信号一个周期的总长度; 或 通过调整所述时钟产生单元以调整所述縮放时钟的周期 /频率; 或 By adjusting the timing unit to adjust the total length of one cycle of the row read control signal; or by adjusting the clock generation unit to adjust the cycle/frequency of the scaling clock; or
调整所述縮放比例。 Adjust the scaling.
7、 根据权利要求 6所述的视频縮放装置, 其特征在于, 所述通过调整所述时序单 元以调整所述读取控制信号一个周期的总长度具体为: 调整所述读取控制信号的消隐 区间的长度。 7. The video scaling device according to claim 6, wherein the adjustment of the timing unit to adjust the total length of one cycle of the read control signal is specifically: adjusting the amplitude of the read control signal. The length of the hidden interval.
8、 根据权利要求 6所述的视频縮放装置, 其特征在于, 所述调整所述縮放比例具 体为: 调整垂直方向的縮放比例。 8. The video scaling device according to claim 6, wherein the adjusting the scaling ratio specifically includes: adjusting the scaling ratio in the vertical direction.
9、 根据权利要求 7或 8所述的视频縮放装置, 其特征在于, 所述校正单元具体用 于通过调整以下规则中的一种或多种进行校正: 9. The video scaling device according to claim 7 or 8, characterized in that the correction unit is specifically configured to perform correction by adjusting one or more of the following rules:
如果读操作过快导致赶上写操作, 则调整所述时序单元以将所述行读取控制信号 中所述消隐区间对应电平信号的持续时间增加第一预设时间段, 如果写操作过快导致 赶上读操作, 则调整所述时序单元将所述行读取控制信号中所述消隐区间对应电平信 号的持续时间减少第一预设时间段; 或 If the read operation is too fast and causes the write operation to be caught up, the timing unit is adjusted to increase the duration of the level signal corresponding to the blanking interval in the row read control signal by a first preset time period. If the write operation If the read operation is caught up too quickly, the timing unit is adjusted to reduce the duration of the level signal corresponding to the blanking interval in the row read control signal by a first preset time period; or
如果读操作过快导致赶上写操作, 则调整所述时钟产生单元将所述縮放时钟的周 期增加第二预设时间段 /将所述縮放时钟的频率减小第二预设值, 如果写操作过快导致 赶上读操作, 则调整所述时钟产生单元将所述縮放时钟的周期减少第二预设时间段 // 将所述縮放时钟的频率增加第二预设值; 或 If the read operation is too fast and causes the write operation to be caught up, the clock generation unit is adjusted to increase the period of the scaled clock by a second preset time period/reduce the frequency of the scaled clock by a second preset value. If the write operation is If the operation is too fast and the read operation is caught up, the clock generation unit is adjusted to reduce the period of the scaled clock by a second preset time period // and increase the frequency of the scaled clock by a second preset value; or
如果读操作过快导致赶上写操作, 则将所述縮放比例减少预设阈值以减少从所述 行缓存单元读取数据的步长, 如果写操作过快导致赶上读操作, 则将所述縮放比例增 加预设阈值以增加从所述行缓存单元读取数据的步长。 If the read operation is too fast and causes the write operation to be caught up, then the scaling ratio is reduced by a preset threshold to reduce the step size of reading data from the row cache unit. If the write operation is too fast and the read operation is caught up, all the steps are reduced. The scaling ratio is increased by a preset threshold to increase the step size of reading data from the line cache unit.
10、 根据权利要求 1至 6中任一项所述的视频縮放装置, 其特征在于, 还包括: 场滤波单元, 用于对输入所述行缓存控制单元中的所述第一视频数据进行滤波。 10. The video scaling device according to any one of claims 1 to 6, further comprising: a field filtering unit configured to filter the first video data input into the line buffer control unit. .
11、 一种视频縮放方法, 其特征在于, 包括以下步骤: 11. A video scaling method, characterized by including the following steps:
S1 : 获取输入的第一视频数据的输入时钟, 并根据所述输入时钟和縮放比例获取 縮放时钟; S1: Obtain the input clock of the input first video data, and obtain the scaling clock according to the input clock and scaling ratio;
S2: 判断垂直方向上的垂直縮放比例 m是否大于 n, 其中, n为縮放处理中每次插 值处理时所需的像素点数; S3: 如果是, 则进一步判断 m是否为非整数; S2: Determine whether the vertical scaling ratio m in the vertical direction is greater than n, where n is the number of pixels required for each interpolation process in the scaling process; S3: If yes, then further determine whether m is a non-integer;
S31 : 如果否, 则在每次向行缓存单元中写入数据时写入 n行的所述第一视频 数据, 并舍弃 m-n行的所述第一视频数据, 其中, 所述行缓存单元的存储空间为 至少 2η行的存储空间, 其中, 每行所述存储空间的大小为每行所述第一视频数据 所需的存储空间的大小; S31: If not, write n rows of the first video data each time data is written to the line cache unit, and discard m-n rows of the first video data, where the line cache unit The storage space is at least 2n rows of storage space, wherein the size of the storage space for each row is the size of the storage space required for each row of the first video data;
S32: 如果是, 则每存储 η行的所述第一视频数据后, 舍弃 Iml-n行的所述第一 视频数据, 并累计 m-n的小数部分以获取累计值, 当所述累计值达到 1时, 舍弃 lml-n+1行的所述第一视频数据, 并将所述累计数清零, 并在每存储 n行的所述第 一视频数据时重复执行所述 S32; S32: If yes, then after each n rows of the first video data are stored, discard the 1ml-n rows of the first video data, and accumulate the decimal part of m-n to obtain a cumulative value. When the cumulative value reaches 1 When , discard the first video data of 1ml-n+1 lines, clear the accumulated number to zero, and repeat S32 every time n lines of first video data are stored;
S4: 如果否, 则在每次向行缓存单元中写入数据时写入 n行的所述第一视频数据; S5: 对 n行的所述第一视频数据进行第一加权处理以获取垂直方向上縮放后的第 二视频数据; S4: If not, write the first video data of n rows each time data is written to the row cache unit; S5: Perform a first weighting process on the first video data of n rows to obtain vertical The second video data after scaling in the direction;
S6: 对所述第二视频数据进行第二加权处理以获取水平方向上縮放后的第三视频 数据; S6: Perform a second weighting process on the second video data to obtain the third video data scaled in the horizontal direction;
S7: 输出所述第三视频数据。 S7: Output the third video data.
12、 根据权利要求 11所述的视频縮放方法, 其特征在于, 所述步骤 S1包括: 获取所述输入时钟和縮放比例的第一乘积, 并将所述第一乘积作为所述縮放时钟; 其中, 所述縮放比例 = (所述第三视频数据的垂直行数 *所述第三视频数据的水平 像素点数) / (所述第一视频数据的垂直行数 *所述第一视频数据的水平像素点数) 。 12. The video scaling method according to claim 11, wherein the step S1 includes: obtaining the first product of the input clock and the scaling ratio, and using the first product as the scaling clock; wherein , the scaling ratio = (the number of vertical lines of the third video data * the number of horizontal pixels of the third video data) / (the number of vertical lines of the first video data * the number of horizontal pixels of the first video data) number of pixels).
13、 根据权利要求 11所述的视频縮放方法, 其特征在于, 所述步骤 S3和 S4中的 读数据操作和 S5中的写数据操作针对不同的行地址空间同步进行。 13. The video scaling method according to claim 11, wherein the data reading operations in steps S3 and S4 and the data writing operations in S5 are performed synchronously for different row address spaces.
14、 根据权利要求 13所述的视频縮放方法, 其特征在于, 还包括以下步骤: 监测所述行缓存单元的读写状态, 并当所述读写状态异常时进行校正。 14. The video scaling method according to claim 13, further comprising the following steps: monitoring the read and write status of the line cache unit, and making corrections when the read and write status is abnormal.
15、 根据权利要求 14所述的视频縮放方法, 其特征在于, 还包括以下步骤: 根据所述縮放时钟生成行读取控制信号, 所述行读取控制信号一个周期的总长度 为从所述行缓存单元中根据所述縮放比例读取一行数据所需的时间, 其中, 如果所述 行读取控制信号的低电平区间 /高电平区间为消隐区间, 则在所述高电平区间 /低电平区 间内根据所述縮放比例从所述行缓存单元中读取一行有效数据。 15. The video scaling method according to claim 14, further comprising the following steps: generating a line read control signal according to the scaling clock, the total length of one cycle of the line read control signal being from the The time required to read one row of data in the row cache unit according to the scaling ratio, where, if the low level interval/high level interval of the row read control signal is a blanking interval, then in the high level In the interval/low-level interval, one line of valid data is read from the line cache unit according to the scaling ratio.
16、 根据权利要求 15所述的视频縮放方法, 其特征在于, 按照以下规则中的一种 或多种进行校正: 16. The video scaling method according to claim 15, characterized in that the correction is performed according to one or more of the following rules:
调整所述行读取控制信号一个周期的总长度; 或 adjust the total length of one cycle of the row read control signal; or
调整所述縮放时钟的周期 /频率; 或 调整所述垂直縮放比例。 adjust the period/frequency of said scaling clock; or Adjust the vertical scaling.
17、 根据权利要求 16所述的视频縮放方法, 其特征在于, 所述调整所述读取控制 信号一个周期的总长度具体为: 调整所述读取控制信号的消隐区间的长度。 17. The video scaling method according to claim 16, wherein the adjusting the total length of one cycle of the read control signal specifically means: adjusting the length of the blanking interval of the read control signal.
18、 根据权利要求 16所述的视频縮放方法, 其特征在于, 所述调整所述縮放比例 具体为: 调整垂直方向的縮放比例。 18. The video scaling method according to claim 16, wherein the adjusting the scaling ratio specifically includes: adjusting the scaling ratio in the vertical direction.
19、 根据权利要求 17或 18所述的视频縮放方法, 其特征在于, 按照以下规则中 的一种或多种进行校正具体包括: 19. The video scaling method according to claim 17 or 18, wherein the correction according to one or more of the following rules specifically includes:
如果读操作过快导致赶上写操作, 则将所述行读取控制信号中所述消隐区间对应 电平信号的持续时间增加第一预设时间段, 如果写操作过快导致赶上读操作, 则将所 述行读取控制信号中所述消隐区间对应电平信号的持续时间减少第一预设时间段; 或 如果读操作过快导致赶上写操作, 则将所述縮放时钟的周期增加第二预设时间段 / 将所述縮放时钟的频率减小第二预设值, 如果写操作过快导致赶上读操作, 则将所述 縮放时钟的周期减少第二预设时间段 /将所述縮放时钟的频率增加第二预设值; 或 If the read operation is too fast and the write operation is caught up, the duration of the level signal corresponding to the blanking interval in the row read control signal is increased by a first preset time period. If the write operation is too fast and the read operation is caught up. operation, then reduce the duration of the level signal corresponding to the blanking interval in the row read control signal by a first preset time period; or if the read operation is too fast and causes the write operation to catch up, then the scaling clock The cycle of is increased by a second preset time period/the frequency of the scaling clock is reduced by a second preset value. If the write operation is too fast and causes the read operation to be caught up, the cycle of the scaling clock is reduced by a second preset time. segment/increase the frequency of the scaling clock by a second preset value; or
如果读操作过快导致赶上写操作, 则将所述縮放比例减少预设阈值以减少从所述 行缓存单元读取数据的步长, 如果写操作过快导致赶上读操作, 则将所述縮放比例增 加预设阈值以增加从所述行缓存单元读取数据的步长。 If the read operation is too fast and causes the write operation to be caught up, then the scaling ratio is reduced by a preset threshold to reduce the step size of reading data from the row cache unit. If the write operation is too fast and the read operation is caught up, all the steps are reduced. The scaling ratio is increased by a preset threshold to increase the step size of reading data from the line cache unit.
20、 根据权利要求 11至 19中任一项所述的视频縮放方法, 其特征在于, 在步骤 S1之前还包括: 20. The video scaling method according to any one of claims 11 to 19, characterized in that, before step S1, it further includes:
对所述第一视频数据进行垂直方向的滤波。 Perform vertical filtering on the first video data.
21、 一种存储介质, 其特征在于, 用于存储应用程序, 所述应用程序用于执行权 利要求 11至 19中任一项所述的视频縮放方法。 21. A storage medium, characterized in that it is used to store an application program, and the application program is used to execute the video scaling method according to any one of claims 11 to 19.
PCT/CN2013/088624 2012-12-28 2013-12-05 Video playing apparatus and method WO2014101642A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201380058680.6A CN104782118B (en) 2012-12-28 2013-12-05 Video scaling apparatus and method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201210594358.2 2012-12-28
CN201210594358.2A CN103916612A (en) 2012-12-28 2012-12-28 Random proportion zoom system and method

Publications (1)

Publication Number Publication Date
WO2014101642A1 true WO2014101642A1 (en) 2014-07-03

Family

ID=51019866

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2013/088624 WO2014101642A1 (en) 2012-12-28 2013-12-05 Video playing apparatus and method

Country Status (2)

Country Link
CN (2) CN103916612A (en)
WO (1) WO2014101642A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114205486A (en) * 2022-01-27 2022-03-18 卡莱特云科技股份有限公司 Scaler-based video file real-time scaling method and video processor

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104333711B (en) * 2014-07-31 2017-07-07 吉林省福斯匹克科技有限责任公司 A kind of fixed output timing image interpolator arithmetic and its system
CN109934762A (en) * 2019-02-27 2019-06-25 珠海亿智电子科技有限公司 A kind of scalable line buffer circuit implementation
CN112017112B (en) * 2019-05-30 2024-03-15 西安诺瓦星云科技股份有限公司 Image processing method, device and system and computer readable storage medium
CN111385492A (en) * 2020-03-15 2020-07-07 深圳市飓风智云科技有限公司 Video partition display method and device
CN116456144B (en) * 2023-06-14 2023-09-26 合肥六角形半导体有限公司 Frame-free cache video stream processing output device and method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030164897A1 (en) * 2002-03-04 2003-09-04 Chang-Lun Chen Methods and apparatus for bridging different video formats
CN1960461A (en) * 2005-10-31 2007-05-09 三星电子株式会社 Video signal receiver including display synchronizing signal generation device and control method thereof
CN101662598A (en) * 2008-08-26 2010-03-03 深圳艾科创新微电子有限公司 Scaling system for continuous video data stream

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4424097B2 (en) * 2004-07-01 2010-03-03 ソニー株式会社 Electronic zoom device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030164897A1 (en) * 2002-03-04 2003-09-04 Chang-Lun Chen Methods and apparatus for bridging different video formats
CN1960461A (en) * 2005-10-31 2007-05-09 三星电子株式会社 Video signal receiver including display synchronizing signal generation device and control method thereof
CN101662598A (en) * 2008-08-26 2010-03-03 深圳艾科创新微电子有限公司 Scaling system for continuous video data stream

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114205486A (en) * 2022-01-27 2022-03-18 卡莱特云科技股份有限公司 Scaler-based video file real-time scaling method and video processor

Also Published As

Publication number Publication date
CN104782118A (en) 2015-07-15
CN104782118B (en) 2018-05-15
CN103916612A (en) 2014-07-09

Similar Documents

Publication Publication Date Title
WO2014101642A1 (en) Video playing apparatus and method
TWI536255B (en) Adjustment of clock signals regenerated from a data stream
JP5241638B2 (en) Display control device
JP2004234379A (en) Image processing method, image processor, and imaging device and display device to which image processing method is applied
TW201428675A (en) Video generating system and related method thereof
JP2014179818A (en) Image processing device and image processing method
TWI459357B (en) Resolution scaler
JP2011061323A (en) Synchronization signal control circuit and display device
CN102376289B (en) Display time sequence control circuit and method thereof
JP4141208B2 (en) Video signal processing apparatus and integrated circuit
TWI386002B (en) Method and apparatus for regenerating sampling frequency and then quickly locking signals accordingly
US10057524B2 (en) Image capturing apparatus
JP2007048264A (en) Data processor having a synchronizing function of multiple chips
JP2006191389A (en) Video camera
TWI253601B (en) Apparatus adaptive for a display wall, image adjustment method, and a display wall therewith
JP2008165485A (en) Semiconductor device and buffer control circuit
JP6136170B2 (en) Image processing apparatus, image processing method, and imaging apparatus
JP5423071B2 (en) Data transfer device and imaging device
JP2004165827A (en) Image magnification apparatus
JP2012168322A (en) Frame memory controller
JP2012151628A (en) Phase adjustment device
JP4624211B2 (en) Filter circuit for video signal
JP2820222B2 (en) Image signal processing device
JP5446427B2 (en) Image processing device
JP3953488B2 (en) Video signal processing device

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13868225

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13868225

Country of ref document: EP

Kind code of ref document: A1