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: 8111752Abstract: 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: GrantFiled: April 28, 2005Date of Patent: February 7, 2012Assignee: Apple Inc.Inventors: Roger Kumar, Thomas Pun, Hsi Jung Wu
-
Patent number: 8111751Abstract: 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: GrantFiled: April 8, 2011Date of Patent: February 7, 2012Assignee: Apple Inc.Inventors: Thomas Pun, Roger Kumar, Xiaochun Nie, Hsi-Jung Wu
-
Publication number: 20120008695Abstract: 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: ApplicationFiled: July 8, 2011Publication date: January 12, 2012Inventors: Hsi Jung Wu, Thomas Pun
-
Publication number: 20110243218Abstract: 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: ApplicationFiled: April 1, 2011Publication date: October 6, 2011Inventors: Xiaochun Nie, Thomas Pun, Hsi-Jung Wu
-
Patent number: 8031777Abstract: 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: GrantFiled: March 21, 2006Date of Patent: October 4, 2011Assignee: Apple Inc.Inventors: Barin Haskell, Adriana Dumitras, Hsi-Jung Wu, Xin Tong, Thomas Pun
-
Publication number: 20110234430Abstract: 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: ApplicationFiled: June 9, 2011Publication date: September 29, 2011Applicant: APPLE INC.Inventors: Jim Normile, Thomas Pun, Xiaojin Shi, Xin Tong, Hsi-Jung Wu
-
Patent number: 8005139Abstract: 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: GrantFiled: April 28, 2005Date of Patent: August 23, 2011Assignee: Apple Inc.Inventors: Hsi Jung Wu, Thomas Pun
-
Publication number: 20110188575Abstract: 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: ApplicationFiled: April 12, 2011Publication date: August 4, 2011Inventors: Thomas Pun, Roger Kumar, Xiaochun Nie, Hsi-Jung Wu
-
Publication number: 20110182360Abstract: 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: ApplicationFiled: April 8, 2011Publication date: July 28, 2011Inventors: Thomas Pun, Roger Kumar, Xiaochun Nie, Hsi-Jung Wu
-
Patent number: 7969333Abstract: 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: GrantFiled: October 22, 2008Date of Patent: June 28, 2011Assignee: Apple Inc.Inventors: James Normile, Thomas Pun, Xiaojin Shi, Xin Tong, Hsi-Jung Wu
-
Patent number: 7944971Abstract: 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: GrantFiled: May 1, 2003Date of Patent: May 17, 2011Assignee: Apple Inc.Inventors: Thomas Pun, Roger Kumar, Xiaochun Nie, Hsi-Jung Wu
-
Patent number: 7940843Abstract: 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: GrantFiled: November 17, 2003Date of Patent: May 10, 2011Assignee: Apple Inc.Inventors: Xiaochun Nie, Thomas Pun, Hsi-Jung Wu
-
Publication number: 20110019879Abstract: 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: ApplicationFiled: May 3, 2010Publication date: January 27, 2011Inventors: Roger Kumar, Thomas Pun, Xiaochun Nie, Hsi-Jung Wu
-
Publication number: 20110007798Abstract: 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: ApplicationFiled: June 21, 2010Publication date: January 13, 2011Inventors: Thomas Pun, Roger Kumar, Xiaochun Nie, Hsi-Jung Wu
-
Patent number: 7804897Abstract: 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: GrantFiled: November 17, 2003Date of Patent: September 28, 2010Assignee: Apple Inc.Inventors: Thomas Pun, Xiaochun Nie, Hsi-Jung Wu
-
Patent number: 7769084Abstract: 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: GrantFiled: April 30, 2003Date of Patent: August 3, 2010Assignee: Apple Inc.Inventors: Thomas Pun, Roger Kumar, Xiaochun Nie, Hsi-Jung Wu
-
Publication number: 20100189178Abstract: 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: ApplicationFiled: February 8, 2010Publication date: July 29, 2010Inventors: Thomas Pun, Hsi Jung Wu, Hyeonkuk Jeong
-
Patent number: 7742525Abstract: 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: GrantFiled: April 30, 2003Date of Patent: June 22, 2010Assignee: Apple Inc.Inventors: Roger Kumar, Thomas Pun, Xiaochun Nie, Hsi-Jung Wu
-
Patent number: 7692682Abstract: 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: GrantFiled: April 28, 2005Date of Patent: April 6, 2010Assignee: Apple Inc.Inventors: Thomas Pun, Hsi Jung Wu, Hyeonkuk Jeong
-
Publication number: 20090073005Abstract: 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: ApplicationFiled: October 22, 2008Publication date: March 19, 2009Applicant: APPLE COMPUTER, INC.Inventors: Jim NORMILE, Thomas PUN, Xiaojin SHI, Xin TONG, Hsi-Jung WU