Method and device for reducing latency for rendering and displaying stylus strokes
First Claim
Patent Images
1. A computer-implemented method for displaying strokes, the method comprising:
- detecting contact between a stylus and a surface of a display of a computing device, wherein the detecting occurs between a first display frame refresh and a second display frame refresh of the display consecutively following the first display frame refresh;
determining first input data corresponding to a location and time of the contact;
determining first stroke data corresponding to the first input data, the first stroke data being used to display a first stroke corresponding to the contact;
storing the first stroke data in a first buffer;
displaying the first stroke as a temporary stroke using a first hardware pipeline, wherein the first hardware pipeline includes one or more components for performing graphical post processing functions on the first stroke data, the temporary stroke being based on the first stroke data, where the temporary stroke is displayed during the second display frame refresh;
determining, by an application operating on the computing device and substantially in parallel with the determining the first stroke data, second stroke data corresponding to the first input data, the second stroke data being used to display a second stroke corresponding to the contact;
storing the second stroke data in a second buffer;
displaying the second stroke as a processed stroke using a second hardware pipeline separate from the first hardware pipeline, wherein the second hardware pipeline includes one or more components for performing graphical post processing functions on the second stroke data, wherein the processed stroke is displayed during a third display frame refresh, and the processed stroke is displayed at substantially a same location on the display as the temporary stroke; and
removing the temporary stroke from the display during the third display frame refresh.
1 Assignment
0 Petitions
Accused Products
Abstract
Devices, systems, and, methods are disclosed for processing stylus interactions with a device and drawing the results of those interactions in a manner that reduces lag. This includes the introduction of a separate overlay module layer that can be updated separately from a normal view system/process of a computing device. In this respect, the overlay module layer may be used to remove unnecessary synchronization events to allow for quick display of stylus input events in the overlay module layer while still allowing the normal rendering process of the operating system to be followed.
-
Citations
18 Claims
-
1. A computer-implemented method for displaying strokes, the method comprising:
-
detecting contact between a stylus and a surface of a display of a computing device, wherein the detecting occurs between a first display frame refresh and a second display frame refresh of the display consecutively following the first display frame refresh; determining first input data corresponding to a location and time of the contact; determining first stroke data corresponding to the first input data, the first stroke data being used to display a first stroke corresponding to the contact; storing the first stroke data in a first buffer; displaying the first stroke as a temporary stroke using a first hardware pipeline, wherein the first hardware pipeline includes one or more components for performing graphical post processing functions on the first stroke data, the temporary stroke being based on the first stroke data, where the temporary stroke is displayed during the second display frame refresh; determining, by an application operating on the computing device and substantially in parallel with the determining the first stroke data, second stroke data corresponding to the first input data, the second stroke data being used to display a second stroke corresponding to the contact; storing the second stroke data in a second buffer; displaying the second stroke as a processed stroke using a second hardware pipeline separate from the first hardware pipeline, wherein the second hardware pipeline includes one or more components for performing graphical post processing functions on the second stroke data, wherein the processed stroke is displayed during a third display frame refresh, and the processed stroke is displayed at substantially a same location on the display as the temporary stroke; and removing the temporary stroke from the display during the third display frame refresh. - View Dependent Claims (2)
-
-
3. A computer-implemented method, comprising:
-
detecting, by a computing device, contact between a stylus and a surface of a display of a computing device between a first display frame refresh and a second display frame refresh of the display consecutively following the first display frame refresh; determining, by the computing device, first data corresponding to a location and time of the contact; determining, by the computing device, first stroke data corresponding to the first data, the first stroke data being used to display a first stroke corresponding to the contact; displaying, by the computing device, the first stroke using a first hardware pipeline during the second display frame refresh; and processing, by an application of the computing device and substantially in parallel with the determining the first stroke data, the first data to determine a second stroke corresponding to the first data, the second stroke to replace the first stroke and be displayed on the display after the first stroke is displayed. - View Dependent Claims (4, 5, 6, 7, 8, 9, 10)
-
-
11. A computing device, comprising:
-
a display; at least one processor; a memory device including instructions operable to be executed by the at least one processor to perform a set of actions, configuring the at least one processor to; detect contact between a stylus and a surface of a display of a computing device between a first display frame refresh and a second display frame refresh of the display consecutively following the first display frame refresh; determine first data corresponding to a location and time of the contact; determine first stroke data corresponding to the first data, the first stroke data being used to display a first stroke corresponding to the contact; display the first stroke using a first hardware pipeline during the second display frame refresh; and process, substantially in parallel with the determining the first stroke data, the first data to determine a second stroke corresponding to the first data, the second stroke to replace the first stroke and be displayed on the display after the first stroke is displayed. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
Specification