Patents by Inventor James Bankoski

James Bankoski 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).

  • Patent number: 8780996
    Abstract: A method for encoding and decoding a video signal having frames with blocks comprised of pixels. The method reduces the complexity of the video signal to be encoded by applying a filter scheme to the input data stream in an encoder and later reversing the filter scheme in a decoder. A number of filter schemes may be tested to determine the best filter scheme that most reduces the number of distinct color values per color plane. The best filter scheme is used to filter the data to be encoded. Filter information of the best filter scheme is included in the encoded data to enable the decoder to identify the best filter scheme in order to apply the best filter scheme in reverse to re-create the original data stream.
    Type: Grant
    Filed: April 7, 2011
    Date of Patent: July 15, 2014
    Assignee: Google, Inc.
    Inventors: James Bankoski, Paul Wilkins, Yaowu Xu
  • Patent number: 8780971
    Abstract: Disclosed herein is a method for selectively filtering and encoding a video signal having at least one frame including a matrix of pixels. The method includes selecting a set of pixels within the frame, determining an initial performance measurement for the selected set of pixels, provisionally applying each filter to the set of pixels, determining a second performance measurement for each filter provisionally applied to the selected set of pixels, and applying the at least one filter to the selected set of pixels to generate a reconstruction of the frame if the at least one filter is determined to have a second performance measurement that is better than the initial performance measurement.
    Type: Grant
    Filed: April 7, 2011
    Date of Patent: July 15, 2014
    Assignee: Google, Inc.
    Inventors: James Bankoski, Paul Wilkins, Yaowu Xu
  • Patent number: 8780992
    Abstract: Disclosed herein is a method for decoding a video signal having at least one frame with a plurality of blocks including a current block, including generating, for at least a selected pixel in the current block, a predicted value for at least one pixel located in a row i and a column j of the current block using a processor and according to the following equation: Xij=Li+Aj?C; wherein Xij is the predicted value, Li is the value of a pixel to the left of the current block, Aj is the value of a pixel in a row above the current block and C is the value of a pixel in the row above and the column to the left of the current block and decoding the current block using the predicted value.
    Type: Grant
    Filed: September 14, 2012
    Date of Patent: July 15, 2014
    Assignee: Google Inc.
    Inventors: Eric Ameres, James Bankoski, Adrian W Grange, Tim Murphy, Paul G Wilkins, Yaowu Xu
  • Patent number: 8781004
    Abstract: A system and method for encoding and decoding a video image having a plurality of frames is disclosed. The method includes a loop filter, which is used to reduce blocking artifacts in reconstructed frames. A quality value is determined for each block in the reconstructed frame and each associated predictor block. A variable incremental loop filter strength is calculated for each inter-predicted block using at least one of the quality values. The variable incremental loop filter strength is used during encoding by the loop filter to filter the reconstructed frame.
    Type: Grant
    Filed: April 7, 2011
    Date of Patent: July 15, 2014
    Assignee: Google Inc.
    Inventors: James Bankoski, Paul Wilkins, Yaowu Xu
  • Patent number: 8767817
    Abstract: Disclosed herein is a method for encoding a video signal having at least one frame with at least one block of pixels. The method includes selecting a parameterized equation corresponding to a coding mode for a current block of pixels to be encoded in the at least one frame, determining at least one parameter for use in the selected parameterized equation, generating, for at least a first pixel in the current block, a predicted value using the parameterized equation; a position value for the first pixel using a processor; and the determined at least one parameter and encoding the block using the predicted value.
    Type: Grant
    Filed: April 7, 2011
    Date of Patent: July 1, 2014
    Assignee: Google Inc.
    Inventors: Yaowu Xu, Paul Wilkins, James Bankoski
  • Patent number: 8719888
    Abstract: Techniques for delivering content, such as videos, over a network are described. A core server and an edge server are provided. The core server has local storage. The edge server has local storage. A set of video frames is partitioned into a first group and a second group. Video frames in the first group are encoded into a scalable encoded stream. The scalable encoded stream is sent to the local storage at the edge server. The second group of video frames is encoded into a set of supplemental encoded streams using the scalable encoded stream as a reference. The supplemental encoded streams are encoded such that the bit rate and/or resolution of any two supplemental encoded streams is different. The set of supplemental encoded streams is stored in the storage of the core server.
    Type: Grant
    Filed: October 16, 2012
    Date of Patent: May 6, 2014
    Assignee: Google Inc.
    Inventors: Yaowu Xu, James Bankoski, Paul Gordon Wilkins
  • Patent number: 8705625
    Abstract: Disclosed herein is a method for decoding a video signal having at least one frame with a plurality of blocks including a current block, including generating, for at least a selected pixel in the current block, a predicted value for at least one pixel located in a row i and a column j of the current block using a processor and according to the following equation: Xij=Li+Aj?C; wherein Xij is the predicted value, Li is the value of a pixel to the left of the current block, Aj is the value of a pixel in a row above the current block and C is the value of a pixel in the row above and the column to the left of the current block and decoding the current block using the predicted value.
    Type: Grant
    Filed: September 14, 2012
    Date of Patent: April 22, 2014
    Assignee: Google Inc.
    Inventors: Eric Ameres, James Bankoski, Adrian W Grange, Tim Murphy, Paul G Wilkins, Yaowu Xu
  • Patent number: 8693547
    Abstract: Disclosed herein is a method for encoding a video signal having at least one frame with a plurality of blocks having pixels. The method includes determining motion vectors for a first block in the at least one frame and at least some of the blocks that are neighbors to the first block, identifying neighboring blocks having motion vectors that are similar to the motion vector of the first block, assigning the first block and the identified neighboring blocks to a segment using a processor, applying a segment parameter to at least one block in the segment and encoding the at least one block using the segment parameter.
    Type: Grant
    Filed: April 6, 2011
    Date of Patent: April 8, 2014
    Assignee: Google Inc.
    Inventors: James Bankoski, Paul Wilkins, Yaowu Xu
  • Patent number: 8665951
    Abstract: Disclosed herein is a method for decoding a video signal having at least one frame with a plurality of blocks including a current block, including generating, for at least a selected pixel in the current block, a predicted value for at least one pixel located in a row i and a column j of the current block using a processor and according to the following equation: Xij=Li+Aj?C; wherein Xij is the predicted value, Li is the value of a pixel to the left of the current block, Aj is the value of a pixel in a row above the current block and C is the value of a pixel in the row above and the column to the left of the current block and decoding the current block using the predicted value.
    Type: Grant
    Filed: September 14, 2012
    Date of Patent: March 4, 2014
    Assignee: Google Inc.
    Inventors: Eric Ameres, James Bankoski, Adrian W Grange, Tim Murphy, Paul G Wilkins, Yaowu Xu
  • Patent number: 8638854
    Abstract: Apparatuses and methods for compressing a video signal having at least one frame with at least one block of pixel data are disclosed. A target block is selected, and an alternate reference block that is a predictor for blocks of a sequence of frames is compared to a predictor block to determine whether to create a second alternate reference block as a predictor. When a difference between the alternate reference block and the predictor block is less than a threshold, certain blocks from the sequence of frames that are more different from the first alternate reference block than other non-selected blocks are selected, and the second alternate reference block is created using the selected blocks. In this way, a predictor block that is different from a golden frame predictor is made available when an existing alternate reference block is too similar to the golden frame predictor to be useful.
    Type: Grant
    Filed: April 7, 2011
    Date of Patent: January 28, 2014
    Assignee: Google Inc.
    Inventors: James Bankoski, Adrian Grange, Paul Wilkins
  • Patent number: 8638863
    Abstract: A system, apparatus, and method for filtering a decoded video stream having a plurality of frames, each frame having a plurality of blocks. The method can include selecting a current block from a current frame of the plurality of frames and an adjacent block from the current frame of the plurality of frames, the current block being adjacent to and sharing an edge with the adjacent block and filtering the edge between the current block and the adjacent block using a processor if an output from an edge-detection function of the values of at least four pixels located about the edge and within a line of pixels extending through both the current block and the adjacent block is less than an edge threshold.
    Type: Grant
    Filed: May 18, 2011
    Date of Patent: January 28, 2014
    Assignee: Google Inc.
    Inventors: James Bankoski, Paul Wilkins, Yaowu Xu
  • Patent number: 8634464
    Abstract: Disclosed herein is a method for decoding a video signal having at least one frame with a plurality of blocks including a current block, including generating, for at least a selected pixel in the current block, a predicted value for at least one pixel located in a row i and a column j of the current block using a processor and according to the following equation: Xij=Li+Aj?C; wherein Xij is the predicted value, Li is the value of a pixel to the left of the current block, Aj is the value of a pixel in a row above the current block and C is the value of a pixel in the row above and the column to the left of the current block and decoding the current block using the predicted value.
    Type: Grant
    Filed: September 14, 2012
    Date of Patent: January 21, 2014
    Assignee: Google, Inc.
    Inventors: Eric Ameres, James Bankoski, Adrian W Grange, Tim Murphy, Paul G Wilkins, Yaowu Xu
  • Patent number: 8611415
    Abstract: Coding using improved motion estimation may include receiving motion vectors for a first block in the frame and at least some of the blocks that are neighbors to the first block, wherein the received motion vectors are determined using a first search scheme, identifying neighboring blocks having motion vectors that are similar to the motion vector of the first block, and assigning the first block and the identified neighboring blocks to a group, determining a number of blocks in the group, and if the number of blocks in the group is greater than a predetermined number, determining an updated motion vector for at least one of the blocks in the group using a second search scheme that is different from the first search scheme.
    Type: Grant
    Filed: November 15, 2010
    Date of Patent: December 17, 2013
    Assignee: Google Inc.
    Inventors: Yaowu Xu, Paul Wilkins, James Bankoski
  • Patent number: 8594189
    Abstract: An apparatus and method for encoding and decoding a video signal having a plurality of frames is disclosed. The encoding method subdivides at least one frame of the plurality of frames into a plurality of regions where each region is composed of different numbers of blocks based on their data consistency. Each region is encoded using residual having a common size. In this way, different parts of the image may be encoded at different resolutions.
    Type: Grant
    Filed: April 7, 2011
    Date of Patent: November 26, 2013
    Assignee: Google Inc.
    Inventors: James Bankoski, Paul Wilkins, Yaowu Xu
  • Publication number: 20130114679
    Abstract: Methods for reducing blocking artifacts at the boundary between adjacent blocks reconstructed from a frame of compressed video information are disclosed herein. The frame includes a prediction stage parameter and a residual error attribute with respect to at least one of the blocks. One method includes reconstructing the at least one block based on the prediction stage parameter and the residual error attribute, categorizing the at least one reconstructed block into one of a plurality of categories based on the prediction stage parameter and the residual error attribute, identifying a filter strength value for the category in which the at least one reconstructed block is categorized based on at least one of the prediction stage parameter or the residual error attribute associated with that category, and filtering the boundary adjacent to the at least one reconstructed block using the identified filter strength value.
    Type: Application
    Filed: November 29, 2012
    Publication date: May 9, 2013
    Inventors: Paul Wilkins, James Bankoski, Yaowu Xu
  • Publication number: 20130101019
    Abstract: A method for decoding compressed video information is disclosed. The video information can include a plurality of frames each having a plurality of blocks. The method reading, from the video information, a segment map associating at least some of the plurality of blocks in a first frame of the plurality of frames with at least one segment identifier, reading, from the video information, a current block to be decoded by a decoder, reading, from the segment map, a segment identifier that is associated with the current block, reading, from the video information, at least one segment parameter associated with the segment identifier that is associated with the current block and decoding the current block using the at least one segment parameter associated with the segment identifier that is associated with the current block.
    Type: Application
    Filed: November 19, 2012
    Publication date: April 25, 2013
    Inventors: Paul Wilkins, James Bankoski, Yaowu Xu
  • Patent number: 8385404
    Abstract: Disclosed herein is a method for digital video encoding prediction comprising creating a constructed reference frame using an encoder and compressing a series of source video frames using the constructed reference frame to obtain a bitstream including a compressed digital video signal for a subsequent decoding process. The constructed reference frame is omitted from the series of digital video frames during the subsequent viewing process.
    Type: Grant
    Filed: December 5, 2008
    Date of Patent: February 26, 2013
    Assignee: Google Inc.
    Inventors: James Bankoski, Yaowu Xu, Paul Wilkins
  • Publication number: 20130044817
    Abstract: Disclosed herein is a method for digital video encoding prediction comprising creating a constructed reference frame using an encoder and compressing a series of source video frames using the constructed reference frame to obtain a bitstream including a compressed digital video signal for a subsequent decoding process. The constructed reference frame is omitted from the series of digital video frames during the subsequent viewing process.
    Type: Application
    Filed: October 23, 2012
    Publication date: February 21, 2013
    Inventors: James Bankoski, Yaowu Xu, Paul Wilkins
  • Publication number: 20130016779
    Abstract: Disclosed herein is a method for decoding a video signal having at least one frame with a plurality of blocks including a current block, including generating, for at least a selected pixel in the current block, a predicted value for at least one pixel located in a row i and a column j of the current block using a processor and according to the following equation: Xij=Li+Aj?C; wherein Xij is the predicted value, Li is the value of a pixel to the left of the current block, Aj is the value of a pixel in a row above the current block and C is the value of a pixel in the row above and the column to the left of the current block and decoding the current block using the predicted value.
    Type: Application
    Filed: September 14, 2012
    Publication date: January 17, 2013
    Applicant: GOOGLE INC.
    Inventors: Eric Ameres, James Bankoski, Adrian W. Grange, Tim Murphy, Paul G. Wilkins, Yaowu Xu
  • Publication number: 20130016778
    Abstract: Disclosed herein is a method for decoding a video signal having at least one frame with a plurality of blocks including a current block, including generating, for at least a selected pixel in the current block, a predicted value for at least one pixel located in a row i and a column j of the current block using a processor and according to the following equation: Xij=Li+Aj?C; wherein Xij is the predicted value, Li is the value of a pixel to the left of the current block, Aj is the value of a pixel in a row above the current block and C is the value of a pixel in the row above and the column to the left of the current block and decoding the current block using the predicted value.
    Type: Application
    Filed: September 14, 2012
    Publication date: January 17, 2013
    Applicant: GOOGLE INC.
    Inventors: Eric Ameres, James Bankoski, Adrian W. Grange, Tim Murphy, Paul G. Wilkins, Yaowu Xu