Patents by Inventor Thomas Pun

Thomas Pun 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: 8111752
    Abstract: A method for encoding a first set of pixels in a first image in a sequence of images is described. From a set of encoding modes, the method selects a first mode for encoding the first set of pixels. The method then determines whether encoding the first set of pixels in the first mode satisfies a set of quality criteria. The method foregoes encoding the first set of pixels in a second mode from the set of encoding modes, when the first mode encoding satisfies the set of quality criteria. The method also provides a video encoding method that examines several different methods for encoding a set of pixels in a first image. From a list of possible encoding modes, the method eliminates a set of encoding modes that are not likely to provide a suitable encoding solution. The method then examines different encoding solutions based on the remaining encoding modes in the list.
    Type: Grant
    Filed: April 28, 2005
    Date of Patent: February 7, 2012
    Assignee: Apple Inc.
    Inventors: Roger Kumar, Thomas Pun, Hsi Jung Wu
  • Patent number: 8111751
    Abstract: Some embodiments of the invention provide a method for encoding a video signal that is formed by a series of successive images. Each image includes several sections, and each section has a set of image values. To encode a particular section of a particular image, the method initially partitions the particular section into several sub-sections. For each of at least two particular sub-sections, the method then computes a statistical parameter regarding the image values of the particular sub-section. The method compares the computed statistical parameters, and based on the comparison, selects an encoding technique from a set of encoding techniques to encode the particular section. In some embodiments, the set of encoding schemes includes a first scheme that encodes the selected section without reference to any other section of any other image, and a second scheme that encodes the selected section by reference to at least one other section.
    Type: Grant
    Filed: April 8, 2011
    Date of Patent: February 7, 2012
    Assignee: Apple Inc.
    Inventors: Thomas Pun, Roger Kumar, Xiaochun Nie, Hsi-Jung Wu
  • Publication number: 20120008695
    Abstract: Some embodiments of the invention encode a sequence of video images based on “visual masking” attributes of the video images and/or portions of the video images. Visual masking of an image or a portion of the image is an indication of how much coding artifacts can be tolerated in the image or image portion. To express the visual masking attribute of an image or an image portion, some embodiments compute a visual masking strength that quantifies the brightness energy of the image or the image portion. In some embodiments, the brightness energy is measured as a function of the average luma or pixel energy of the image or image portion.
    Type: Application
    Filed: July 8, 2011
    Publication date: January 12, 2012
    Inventors: Hsi Jung Wu, Thomas Pun
  • Publication number: 20110243218
    Abstract: The rate controller in a digital video encoding system is responsible for allocating a bit budget for video frames to be encoded. The rate controller considers many different factors when determining the frame bit budget. One of the factors considered is the complexity of the frames being compressed. Occasionally there will be a very complex frame that is not representative of the overall video frame sequence. Such a rare complex frame may cause a disproportionate affect on the bit budget allocation. The system of the present invention limits the amount that a very complex frame can change the bit budget allocation. The rate controller of the present invention also includes a relaxation factor. The relaxation factor allows a user to determine if the rate controller should strictly allocate its bit budget or relax its standards such that the rate controller may not be so conservative when allocating bits to frames.
    Type: Application
    Filed: April 1, 2011
    Publication date: October 6, 2011
    Inventors: Xiaochun Nie, Thomas Pun, Hsi-Jung Wu
  • Patent number: 8031777
    Abstract: An encoder includes an encoder engine, a storage device and a controller to implement an iterative coding process. The encoder engine compresses a selected portion of a data sequence. The storage device stores the compressed portion of the data sequence after each iteration. The controller selects the portion of the data sequence to compress for each iteration. The controller gathers statistics from the compressed portion of the data sequence. The gathered statistics include statistics generated by the selected frames and statistics extrapolated from the selected frames for the non-selected frames. The controller adjusts coding parameters of the encoder engine on each iteration until the gathered statistics meet a specified performance requirement.
    Type: Grant
    Filed: March 21, 2006
    Date of Patent: October 4, 2011
    Assignee: Apple Inc.
    Inventors: Barin Haskell, Adriana Dumitras, Hsi-Jung Wu, Xin Tong, Thomas Pun
  • Publication number: 20110234430
    Abstract: Techniques for encoding data based at least in part upon an awareness of the decoding complexity of the encoded data and the ability of a target decoder to decode the encoded data are disclosed. In some embodiments, a set of data is encoded based at least in part upon a state of a target decoder to which the encoded set of data is to be provided. In some embodiments, a set of data is encoded based at least in part upon the states of multiple decoders to which the encoded set of data is to be provided.
    Type: Application
    Filed: June 9, 2011
    Publication date: September 29, 2011
    Applicant: APPLE INC.
    Inventors: Jim Normile, Thomas Pun, Xiaojin Shi, Xin Tong, Hsi-Jung Wu
  • Patent number: 8005139
    Abstract: Some embodiments of the invention encode a sequence of video images based on “visual masking” attributes of the video images and/or portions of the video images. Visual masking of an image or a portion of the image is an indication of how much coding artifacts can be tolerated in the image or image portion. To express the visual masking attribute of an image or an image portion, some embodiments compute a visual masking strength that quantifies the brightness energy of the image or the image portion. In some embodiments, the brightness energy is measured as a function of the average luma or pixel energy of the image or image portion.
    Type: Grant
    Filed: April 28, 2005
    Date of Patent: August 23, 2011
    Assignee: Apple Inc.
    Inventors: Hsi Jung Wu, Thomas Pun
  • Publication number: 20110188575
    Abstract: Some embodiments of the invention provide a method for encoding a video signal that is formed by a series of successive images. Each image includes several sections, and each section has a set of image values. To encode a particular section of a particular image, the method initially partitions the particular section into several sub-sections. For each of at least two particular sub-sections, the method then computes a statistical parameter regarding the image values of the particular sub-section. The method compares the computed statistical parameters, and based on the comparison, selects an encoding technique from a set of encoding techniques to encode the particular section. In some embodiments, the set of encoding schemes includes a first scheme that encodes the selected section without reference to any other section of any other image, and a second scheme that encodes the selected section by reference to at least one other section.
    Type: Application
    Filed: April 12, 2011
    Publication date: August 4, 2011
    Inventors: Thomas Pun, Roger Kumar, Xiaochun Nie, Hsi-Jung Wu
  • Publication number: 20110182360
    Abstract: Some embodiments of the invention provide a method for encoding a video signal that is formed by a series of successive images. Each image includes several sections, and each section has a set of image values. To encode a particular section of a particular image, the method initially partitions the particular section into several sub-sections. For each of at least two particular sub-sections, the method then computes a statistical parameter regarding the image values of the particular sub-section. The method compares the computed statistical parameters, and based on the comparison, selects an encoding technique from a set of encoding techniques to encode the particular section. In some embodiments, the set of encoding schemes includes a first scheme that encodes the selected section without reference to any other section of any other image, and a second scheme that encodes the selected section by reference to at least one other section.
    Type: Application
    Filed: April 8, 2011
    Publication date: July 28, 2011
    Inventors: Thomas Pun, Roger Kumar, Xiaochun Nie, Hsi-Jung Wu
  • Patent number: 7969333
    Abstract: Techniques for encoding data based at least in part upon an awareness of the decoding complexity of the encoded data and the ability of a target decoder to decode the encoded data are disclosed. In some embodiments, a set of data is encoded based at least in part upon a state of a target decoder to which the encoded set of data is to be provided. In some embodiments, a set of data is encoded based at least in part upon the states of multiple decoders to which the encoded set of data is to be provided.
    Type: Grant
    Filed: October 22, 2008
    Date of Patent: June 28, 2011
    Assignee: Apple Inc.
    Inventors: James Normile, Thomas Pun, Xiaojin Shi, Xin Tong, Hsi-Jung Wu
  • Patent number: 7944971
    Abstract: Some embodiments of the invention provide a method for encoding a video signal that is formed by a series of successive images. Each image includes several sections, and each section has a set of image values. To encode a particular section of a particular image, the method initially partitions the particular section into several sub-sections. For each of at least two particular sub-sections, the method then computes a statistical parameter regarding the image values of the particular sub-section. The method compares the computed statistical parameters, and based on the comparison, selects an encoding technique from a set of encoding techniques to encode the particular section. In some embodiments, the set of encoding schemes includes a first scheme that encodes the selected section without reference to any other section of any other image, and a second scheme that encodes the selected section by reference to at least one other section.
    Type: Grant
    Filed: May 1, 2003
    Date of Patent: May 17, 2011
    Assignee: Apple Inc.
    Inventors: Thomas Pun, Roger Kumar, Xiaochun Nie, Hsi-Jung Wu
  • Patent number: 7940843
    Abstract: The rate controller in a digital video encoding system is responsible for allocating a bit budget for video frames to be encoded. The rate controller considers many different factors when determining the frame bit budget. One of the factors considered is the complexity of the frames being compressed. Occasionally there will be a very complex frame that is not representative of the overall video frame sequence. Such a rare complex frame may cause a disproportionate affect on the bit budget allocation. The system of the present invention limits the amount that a very complex frame can change the bit budget allocation. The rate controller of the present invention also includes a relaxation factor. The relaxation factor allows a user to determine if the rate controller should strictly allocate its bit budget or relax its standards such that the rate controller may not be so conservative when allocating bits to frames.
    Type: Grant
    Filed: November 17, 2003
    Date of Patent: May 10, 2011
    Assignee: Apple Inc.
    Inventors: Xiaochun Nie, Thomas Pun, Hsi-Jung Wu
  • Publication number: 20110019879
    Abstract: Some embodiments of the invention provide a method for adaptively performing motion estimation. In some embodiments, the method initially performs a first motion estimation operation. It then determines whether the estimated error in the result of the first motion estimation is greater than a particular threshold. If not, the method uses the results of the first motion estimation operation. Otherwise, the method selects another motion estimation operation. The method continues in this manner until it performs a motion estimation operation that results in an acceptable estimated error, or until it tries all the motion estimation operations at its disposal. When the method cannot identify a motion estimation operation that produces results with an acceptable estimated error, the method selects the result of the motion estimation operation that produced the best results.
    Type: Application
    Filed: May 3, 2010
    Publication date: January 27, 2011
    Inventors: Roger Kumar, Thomas Pun, Xiaochun Nie, Hsi-Jung Wu
  • Publication number: 20110007798
    Abstract: Method For Implementing A Quantizer In A Multimedia Compression And Encoding System is disclosed. In the Quantizer system of the present invention, several new quantization ideas are disclosed. In one embodiment, adjacent macroblocks are grouped together into macroblock groups. The macroblock groups are then assigned a common quantizer value. The common quantizer value may be selected based upon how the macroblocks are encoded, the type of macroblocks within the macroblock group (intra-blocks or inter-blocks), the history of the motion vectors associated with the macroblocks in the macroblock group, the residuals of the macroblocks in the macroblock group, and the energy of the macroblocks in the macroblock group. The quantizer value may be adjusted in a manner that is dependent on the current quantizer value. Specifically, if the quantizer value is at the low end of the quantizer scale, then only small adjustments are made.
    Type: Application
    Filed: June 21, 2010
    Publication date: January 13, 2011
    Inventors: Thomas Pun, Roger Kumar, Xiaochun Nie, Hsi-Jung Wu
  • Patent number: 7804897
    Abstract: Some embodiments limit the changes to a buffer occupancy accumulator with respect to a target number of bits of the current frame. Limiting the change of the buffer occupancy accumulator will prevent one odd significantly different frame from significantly changing the quantization. Some embodiments improve upon the quantizer adjustment by making more accurate estimates of the amount of information needed to encode each macroblock. Specifically, some embodiments estimate the bits per macroblock in a manner that varies from frame type to frame type. Specifically, for frame types with motion compensation, some embodiments exploit the correlation between the complexity of the macroblock and the number of bits needed. In the case of frame types without motion compensation, some embodiments impose a model that biases bit allocation towards smaller activity macro blocks.
    Type: Grant
    Filed: November 17, 2003
    Date of Patent: September 28, 2010
    Assignee: Apple Inc.
    Inventors: Thomas Pun, Xiaochun Nie, Hsi-Jung Wu
  • Patent number: 7769084
    Abstract: Method For Implementing A Quantizer In A Multimedia Compression And Encoding System is disclosed. In the Quantizer system of the present invention, several new quantization ideas are disclosed. In one embodiment, adjacent macroblocks are grouped together into macroblock groups. The macroblock groups are then assigned a common quantizer value. The common quantizer value may be selected based upon how the macroblocks are encoded, the type of macroblocks within the macroblock group (intra-blocks or inter-blocks), the history of the motion vectors associated with the macroblocks in the macroblock group, the residuals of the macroblocks in the macroblock group, and the energy of the macroblocks in the macroblock group. The quantizer value may be adjusted in a manner that is dependent on the current quantizer value. Specifically, if the quantizer value is at the low end of the quantizer scale, then only small adjustments are made.
    Type: Grant
    Filed: April 30, 2003
    Date of Patent: August 3, 2010
    Assignee: Apple Inc.
    Inventors: Thomas Pun, Roger Kumar, Xiaochun Nie, Hsi-Jung Wu
  • Publication number: 20100189178
    Abstract: Some embodiments provide an architecture for establishing multi-participant video conferences. This architecture has a central distributor that receives video images from two or more participants. From the received images, the central distributor generates composite images that the central distributor transmits back to the participants. Each composite image includes a set of sub images, where each sub image belongs to one participant. In some embodiments, the central distributor saves network bandwidth by removing each particular participant's image from the composite image that the central distributor sends to the particular participant. In some embodiments, images received from each participant are arranged in the composite in a non-interleaved manner. For instance, in some embodiments, the composite image includes at most one sub-image for each participant, and no two sub-images are interleaved.
    Type: Application
    Filed: February 8, 2010
    Publication date: July 29, 2010
    Inventors: Thomas Pun, Hsi Jung Wu, Hyeonkuk Jeong
  • Patent number: 7742525
    Abstract: A method for adaptively performing motion estimation. In some embodiments, the method initially performs a first motion estimation operation. It then determines whether the estimated error in the result of the first motion estimation is greater than a particular threshold. If not, the method uses the results of the first motion estimation operation. Otherwise, the method selects another motion estimation operation. The method continues in this manner until it performs a motion estimation operation that results in an acceptable estimated error, or until it tries all the motion estimation operations at its disposal. When the method cannot identify a motion estimation operation that produces results with an acceptable estimated error, the method selects the result of the motion estimation operation that produced the best results.
    Type: Grant
    Filed: April 30, 2003
    Date of Patent: June 22, 2010
    Assignee: Apple Inc.
    Inventors: Roger Kumar, Thomas Pun, Xiaochun Nie, Hsi-Jung Wu
  • Patent number: 7692682
    Abstract: Some embodiments provide an architecture for establishing multi-participant video conferences. This architecture has a central distributor that receives video images from two or more participants. From the received images, the central distributor generates composite images that the central distributor transmits back to the participants. Each composite image includes a set of sub images, where each sub image belongs to one participant. In some embodiments, the central distributor saves network bandwidth by removing each particular participant's image from the composite image that the central distributor sends to the particular participant. In some embodiments, images received from each participant are arranged in the composite in a non-interleaved manner. For instance, in some embodiments, the composite image includes at most one sub-image for each participant, and no two sub-images are interleaved.
    Type: Grant
    Filed: April 28, 2005
    Date of Patent: April 6, 2010
    Assignee: Apple Inc.
    Inventors: Thomas Pun, Hsi Jung Wu, Hyeonkuk Jeong
  • Publication number: 20090073005
    Abstract: Techniques for encoding data based at least in part upon an awareness of the decoding complexity of the encoded data and the ability of a target decoder to decode the encoded data are disclosed. In some embodiments, a set of data is encoded based at least in part upon a state of a target decoder to which the encoded set of data is to be provided. In some embodiments, a set of data is encoded based at least in part upon the states of multiple decoders to which the encoded set of data is to be provided.
    Type: Application
    Filed: October 22, 2008
    Publication date: March 19, 2009
    Applicant: APPLE COMPUTER, INC.
    Inventors: Jim NORMILE, Thomas PUN, Xiaojin SHI, Xin TONG, Hsi-Jung WU