Patents by Inventor Nadim Y. Abdo
Nadim Y. Abdo has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20120294523Abstract: Embodiments of the invention compress an image that contains a representation of text. Embodiments take an image of graphical data and determines one or more portions of that image that have a high probability of containing text. Embodiments then take each such portion of the image and determines one or more rows of text within each portion (where text does, in fact, exist within the portion). The embodiments then traverse each vertical band of pixels of each row to determine sub-glyphs. Where a particular sub-glyph is encountered for the first time, the embodiments cache that sub-glyph, and send it (or a compressed representation thereof) to a client in a remote presentation session. Where a particular sub-glyph has been cached already, the embodiments send a reference to that cached vertical band to the client.Type: ApplicationFiled: May 19, 2011Publication date: November 22, 2012Applicant: Microsoft CorporationInventors: Nadim Y. Abdo, Voicu Anton Albu
-
Patent number: 8307103Abstract: Systems, methods and computer readable media are disclosed for reducing the tearing of display data received across a communications network. A server determines at least two logically related drawing orders in an order heap and warps those orders with a begin marker and an end marker. It sends those wrapped orders across the communications network to a client. The client receives those orders and renders them to a shadow buffer. When the client processes the end marker, it moves the drawing orders in the shadow buffer to a client display surface.Type: GrantFiled: March 9, 2009Date of Patent: November 6, 2012Assignee: Microsoft CorporationInventors: Nadim Y. Abdo, Wilhelm R. Schmieder, Elton Saul, Voicu Anton Albu
-
Publication number: 20120275697Abstract: Embodiments herein provide for a pre-processing stage or mechanism for enhancing data compression of an image by splitting or separating the color channels for pixels into planar data sources. Typically, image data is displayed as an interleaved set of channel types for a color space such that each pixel within an image (such as a bitmap) has one component for each color channel. By separating the interleaved bitmap into a planar representation, each plane can be compressed independently and often times achieve higher compression ratios. This is especially true for channels that are expected to stay fairly constant throughout the bitmap most of the time. The utilization of the above embodiment can be further enhanced through manipulation of channel data or through converting the color space from one form to another.Type: ApplicationFiled: July 12, 2012Publication date: November 1, 2012Applicant: Microsoft CorporationInventors: Brian C. McDowell, Nadim Y. Abdo, Paul Lee Coleman, IV
-
Patent number: 8244051Abstract: Embodiments provide for efficient encoding and rendering of remote graphic displays by applying one or more of the following: (1) field encoding for identifying fields of a graphics set such that commonalities of various fields across different graphics languages are identified; (2) resource caching, which treats heterogeneous resources in a homogeneous way when it comes to storing them; (3) determining the type of encoding for remoting items within a graphics set based upon the types of compression mechanisms supported by a remote device; (4) improving responsiveness by rendering with partially sent resources; (5) a mechanism for determining what portions (if any) of a graphics set should be sent to a remote device and in what order; and (6) use of dedicated resources already on a remote device in order to eliminate the transfer of a resource between a local device and the remote device when rendering such resource.Type: GrantFiled: March 15, 2006Date of Patent: August 14, 2012Assignee: Microsoft CorporationInventors: John E. Parsons, Joy Chick, Nadim Y. Abdo, Robert Wilhelm Schmieder
-
Patent number: 8243340Abstract: Embodiments herein provide for a pre-processing stage or mechanism for enhancing data compression of an image by splitting or separating the color channels for pixels into planar data sources. Typically, image data is displayed as an interleaved set of channel types for a color space such that each pixel within an image (such as a bitmap) has one component for each color channel. By separating the interleaved bitmap into a planar representation, each plane can be compressed independently and often times achieve higher compression ratios. This is especially true for channels that are expected to stay fairly constant throughout the bitmap most of the time. The utilization of the above embodiment can be further enhanced through manipulation of channel data or through converting the color space from one form to another.Type: GrantFiled: August 31, 2006Date of Patent: August 14, 2012Assignee: Microsoft CorporationInventors: Brian C. McDowell, Nadim Y. Abdo, Paul Lee Coleman, IV
-
Patent number: 8209372Abstract: A bitmap transfer-based display remoting by a server coupled to a client is described. Specifically, an application executing on the server implements operations to render a portion of a graphical user interface (GUI). The server decomposes corresponding rendering-based command(s) into simple bitmap raster operations commands. The server sends the bitmap-based commands to the client. The client, responsive to receiving the commands, respectively stores and draws bitmaps from an offscreen display surface, as directed by the server, to an onscreen display surface to present the GUI portion to a user. Logic at the client to store and present the GUI portion are independent of any client-implemented display remoting cache management logic. The client operations are also independent of determinations and processing of graphical object semantics beyond bitmap semantics. Such management and semantic determinations and processing are implemented and maintained respectively at and by the server.Type: GrantFiled: May 31, 2011Date of Patent: June 26, 2012Assignee: Microsoft CorporationInventors: Nadim Y. Abdo, Wilhelm R. Schmieder
-
Patent number: 8203566Abstract: Systems, methods and computer readable media are disclosed for sending a client graphics data across a remote session for an application, where the application makes fixed function pipeline API calls and the client and server support shader pipeline API calls for the remote session. fixed function pipeline graphics calls from sent from the application are intercepted, wrapped, converted into their fixed function pipeline equivalent graphics call or calls and then sent across the communications network to the client according to a protocol of the remote session.Type: GrantFiled: May 29, 2009Date of Patent: June 19, 2012Assignee: Microsoft CorporationInventors: Nadim Y. Abdo, Max Alan McMullen
-
Patent number: 8194977Abstract: Techniques are disclosed for compressing image data using the parallel instructions available on a vector processor. In an embodiment, a source image in RGBA format is received. A series of vector processor instructions are used to perform parallel processing steps of splitting the image into separate R, G, B, and A channels, then converting it into a YCoCg colorspace, compressing the Y, Co, and Cg channels separately, then saving an output image corresponding to a compressed version of the source image.Type: GrantFiled: December 9, 2008Date of Patent: June 5, 2012Assignee: Microsoft CorporationInventor: Nadim Y. Abdo
-
Patent number: 8189661Abstract: Systems, methods and computer readable media are disclosed for improving compression efficiency and quality in a remote session via tile image classification and variable encoding. A server determines a set of codecs that are shared by both the server and a corresponding client. Then, when it receives an image, it determines whether classification of the image is required. Where classification of the image is not required, the server sends the client the image, either uncompressed or compressed with a default codec and default fidelity. Where classification of the image is required, the server classifies the image (e.g. the image comprises either text or photograph), and based on that classification determines a codec with which to encode the image, and a fidelity to use on the encoding. The server performs that encoding with the codec and the fidelity, and then sends this encoded image to the client.Type: GrantFiled: March 9, 2009Date of Patent: May 29, 2012Assignee: Microsoft CorporationInventors: Nadim Y. Abdo, Graham Edward Fagg
-
Patent number: 8180905Abstract: Techniques are disclosed for a user-mode based remote desktop protocol (RDP) encoding architecture. A user mode desktop application and user mode virtual channel application run in user-mode session space. Virtual channel data from the virtual channel application is marshaled and sent to a RDP encoder process in user-mode system space. There it is converted to RDP protocol data units (PDU) and sent to a remote client across a communications network. Graphics data from the desktop application is sent to a display driver in kernel-mode session space and then to a graphics reflector that marshals the graphics data and sends it to the RDP encoder for a similar transformation.Type: GrantFiled: December 9, 2008Date of Patent: May 15, 2012Assignee: Microsoft CorporationInventors: Wilhelm R. Schmieder, Nelamangal Krishnaswamy Srinivas, Costin Hagiu, Nadim Y. Abdo, Vladimir K. Stoyanov, Ahmed M. Tolba, Gautam Swaminathan, Srinivasa Reddy Neerudu
-
Patent number: 8159495Abstract: Remoting sub-pixel defined text. Text is remoted at sub-pixel precision in a computing environment including a terminal server and a terminal client. At a terminal server text definitions are generated. The text definitions include character definitions defining character boundaries with colors so as to be able to define character boundaries using sub-pixel precision by defining colors at the boundaries so as to make use of sub-pixel color components of LCD pixels when the characters are rendered on an LCD screen. At the terminal server glyphs of individual characters are generated. The glyphs include the character definitions including definitions of colored character boundaries. At the terminal server, the glyphs are sent to a terminal client. At the terminal client, the glyphs are blended with background color information and rendered on an LCD screen.Type: GrantFiled: June 6, 2006Date of Patent: April 17, 2012Assignee: Microsoft CorporationInventors: Carl M. Carter-Schwendler, Joy P. L. Chik, Nadim Y. Abdo
-
Publication number: 20120082395Abstract: Example embodiments of the present disclosure provide for a fast entropy coder/decoder for use in real time image compression. A method of processing graphics data for transmission to a remote computing device may comprise receiving graphics data representative of a client screen to be rendered, receiving information indicative of available bandwidth for transmission and, based on the information, determining that the available bandwidth meets a predetermined threshold, and entropy encoding the graphics data using a fixed bit size encoding stream, wherein runs of zeroes are encoded in a variable number of units of the fixed bit size, and literal values are encoded using one of an entry in a cache of recently used literal values or a variable number of units of the fixed bit size.Type: ApplicationFiled: September 30, 2010Publication date: April 5, 2012Applicant: Microsoft CorporationInventor: Nadim Y. Abdo
-
Publication number: 20120050298Abstract: Example embodiments of the present disclosure provide mechanisms for generating an improved grid for use in caching and classification when transmitting graphics data to a client computer. Such a grid may have the property that it is aligned to captured screen content such as user interface elements and borders between images and text. In some embodiments, an algorithm may be used that analyzes a screen and generates a subdivision grid of the screen that is likely to partition the screen into areas that substantially separate image and text content. This subdivision grid can also be further sub-divided (i.e., tiled) into regions that may be better suited for caching. In further embodiments, the algorithm may produce the grid using information from a window manager regarding window hierarchies and user interface element placement.Type: ApplicationFiled: September 1, 2010Publication date: March 1, 2012Applicant: Microsoft CorporationInventor: Nadim Y. Abdo
-
Patent number: 8127036Abstract: In one embodiment of the present invention, a first computer system is capable of performing a method whereby the first computer system may provide a continuous media data flow to a second computer system. The method involves the first computer system accessing that is to be presented at a second computer system. The first computer system formulates metadata representing the location and boundaries of a media application window. The first computer system formulates windows presentation information representative of the configuration of other interface elements that are to be presented along with the media information at the second computer system. The first computing system transmits the windows presentation information to the second computer system. The first computing system transmits the metadata to the second computer system and separately transmits the media information to the second computer system.Type: GrantFiled: June 30, 2006Date of Patent: February 28, 2012Assignee: Microsoft CorporationInventors: Nadim Y. Abdo, Vladimir K. Stoyanov
-
Publication number: 20110299785Abstract: Techniques are disclosed for acceleration techniques for improved image remoting. A rolling 2D hash of a first image sent to a client is computed. When the server has a second image to send to the client, it calculates a rolling 2D hash of the new image. It also calculates “pivot points” for the images based on the rolling 2D hashes. Based on the pivot points, it determines possible matching hash windows between the two images that correspond to window moves or scrolls. Where a match is confirmed, it determines whether a “larger” a larger matching rectangle exists between the two images. It then instructs the client to display the matching rectangle that exists in the first image that the client has in the appropriate location in the second image, thereby saving the bandwidth requirements to re-transmit it to the client.Type: ApplicationFiled: June 3, 2010Publication date: December 8, 2011Applicant: Microsoft CorporationInventors: Voicu Anton Albu, Nadim Y. Abdo, Charles Lawrence Zitnick, III
-
Publication number: 20110255791Abstract: Systems, methods and computer-readable storage media are disclosed for accelerating bitmap remoting by extracting patterns from source bitmaps. A server takes a source image, and performs an edge-detection operation on it. From this edge-detected image, connected segments of the image are determined by executing multiple iterations of a small operation upon the image in parallel—for instance, by assigning each non-white pixel a unique value, then assigning each pixel the minimum value among itself and its neighbors until no pixel is assigned a new value in an iteration. Executing these operations in parallel greatly reduces the time required to identify the connected segments. When the segments are identified, they may be cached by the client so that they do not need to be re-sent to the client when re-encountered by the server.Type: ApplicationFiled: April 15, 2010Publication date: October 20, 2011Applicant: Microsoft CorporationInventors: Nadim Y. Abdo, Voicu Anton Albu, Charles Lawrence Zitnick, III, Max Alan McMullen
-
Publication number: 20110243433Abstract: In various embodiments, methods and systems are disclosed for dynamic runtime implementation and end-to-end biased tuning of a two stage image classification system based on a decision function that uses network packet sizes and multiple image characteristics to determine the selection of an encoding codec to reduce overall network bandwidth consumption.Type: ApplicationFiled: March 31, 2010Publication date: October 6, 2011Applicant: Microsoft CorporationInventors: Graham Edward Fagg, Nadim Y. Abdo
-
Publication number: 20110219122Abstract: In various embodiments, methods and systems are disclosed for the implementation of multiple transport channels between the client and server. Each of the channels may be adapted to efficiently communicate data for a particular data type and thus be particularly well suited for its data-element characteristics and the detected link characteristics between the client and server.Type: ApplicationFiled: March 8, 2010Publication date: September 8, 2011Applicant: Microsoft CorpoationInventors: Rajneesh Mahajan, Graham Edward Fagg, Nadim Y. Abdo, Guatam Swaminathan
-
Publication number: 20110219287Abstract: In various embodiments, methods and systems are disclosed for integrating a remote presentation protocol with a datagram based transport. In one embodiment, an integrated protocol is configured to support lossless or reduced loss transport based on Retransmission (ARQ) combined with Forward Error Correction (FEC). The protocol involves encoding and decoding of data packets including feedback headers and FEC packets, continuous measurement of RTT, RTO and packet delay, dynamically evaluating loss probability to determine and adjust the ratio of FEC, congestion management based on dynamically detecting increase in packet delay, and fast data transmission rate ramp-up based on detecting a decrease in packet delay.Type: ApplicationFiled: March 5, 2010Publication date: September 8, 2011Applicant: Microsoft CorporationInventors: Nelamangal Krishnaswamy Srinivas, Nadim Y. Abdo, Sanjeev Mehrotra, Tong L. Wynn
-
Publication number: 20110197151Abstract: Methods and systems are disclosed in which bitmap data transmission is improved by using some of the advantages of primitive remoting, thus allowing for the reduction of the bandwidth and processing needed to remote a virtual desktop experience. In an embodiment, rendering is performed and bitmaps are remoted, but metadata comprising shortcuts or hints are provided to assist in the rendering of the bitmap data.Type: ApplicationFiled: February 5, 2010Publication date: August 11, 2011Applicant: Microsoft CorporationInventors: Nadim Y. Abdo, Asael Dror, Wilhelm R. Schmieder