Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Tear-Free Updates of Video and Graphics

IP.com Disclosure Number: IPCOM000105798D
Original Publication Date: 1993-Sep-01
Included in the Prior Art Database: 2005-Mar-20
Document File: 2 page(s) / 92K

Publishing Venue

IBM

Related People

MacInnis, AG: AUTHOR

Abstract

Disclosed is a method of performing updates of video and graphics windows in display adapters and video output processing adapters without any "tearing" which consists of the juxtaposition of old and new data in the same window. This is necessary for high quality multimedia video display and output. Tearing occurs in any situation in which the update and display are not inherently synchronized; normally they are not. The method applies to both local operations within a graphics adapter or in the CPU, and to multiple video features that may be connected to the graphics system via a real-time video bus. Tear-free update speeds may be much slower than has commonly been assumed, and double buffering is not needed.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Tear-Free Updates of Video and Graphics

      Disclosed is a method of performing updates of video and
graphics windows in display adapters and video output processing
adapters without any "tearing" which consists of the juxtaposition of
old and new data in the same window.  This is necessary for high
quality multimedia video display and output.  Tearing occurs in any
situation in which the update and display are not inherently
synchronized; normally they are not.  The method applies to both
local operations within a graphics adapter or in the CPU, and to
multiple video features that may be connected to the graphics system
via a real-time video bus.  Tear-free update speeds may be much
slower than has commonly been assumed, and double buffering is not
needed.

           In a typical graphics or video display system which uses a
display refresh buffer, there are, in effect, read (display refresh)
and write (memory update) pointers which are usually operated
independently.  The read pointer is the location of the source of
current display refresh data, which is sent to the DACs and then to
the monitor.  The write pointer is the location where new update
information is written to display memory.

           If digitized motion video, for example, is written to the
memory (using the write pointer) in raster scan order at the timing
at which the data naturally occurs, then, in general, the read and
write pointers progress through memory with different periodicities
and they will sometimes cross within the display buffer.  The result
is that the displayed image has newly updated information above the
point at which the pointers cross over and data which is one frame
older below that point.  If there is any significant difference
between the newer and older images, there appears a visible boundary
between them which is disturbing.  This boundary is referred to as a
"tear".

SOLUTION - In the disclosed solution, the write pointer starts at the
top of the memory region which holds the visible screen or window at
the same time as, or just after, the read pointer has passed this
same point.  The read pointer progresses faster than the write
pointer, so the pointers cannot crossover during the first pass of
the read pointer through the memory.  The write pointer is required
only to get to the bottom of the display region of the memory before
the second time the read pointer gets to the bottom, no crossover
occurs at all.

     The solution involves three requirements:

     1.   Make the write pointer wait unt...