Patents by Inventor James Oliver Normile

James Oliver Normile 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: 20100309987
    Abstract: A method and system are provided to encode a video sequence into a compressed bitstream. An encoder receives a video sequence from an image-capture device, together with metadata associated with the video sequence, and codes the video sequence into a first compressed bitstream using the metadata to select or revise a coding parameter associated with a coding operation. Optionally, the video sequence may be conditioned for coding by a preprocessor, which also may use the metadata to select or revise a preprocessing parameter associated with a preprocessing operation. The encoder may itself generate metadata associated with the first compressed bitstream, which may be used together with any metadata received by the encoder, to transcode the first compressed bitstream into a second compressed bitstream.
    Type: Application
    Filed: July 31, 2009
    Publication date: December 9, 2010
    Applicant: APPLE INC.
    Inventors: Davide CONCION, Xiaosong ZHOU, Guy COTE, Cecile FORET, Haitao (Harry) GUO, Ionut HRISTODORESCU, James Oliver NORMILE, Xiaojin SHI, Hsi-Jung WU
  • Patent number: 7827458
    Abstract: A method, apparatus, system, and signal-bearing medium that in an embodiment detect that a first packet is not received, add a place holder for the first packet in a buffer, request retransmission of the first packet, and create an estimated packet based on a combination of a second packet previous to the first packet, a third packet following the first packet, and a fourth packet from a previous frame that is spatially corresponding to the first packet. In another embodiment, a method, apparatus, system, and signal-bearing medium are provided that send a encoded packet to a receiver, save the encoded packet in a bitstream, determine whether the encoded packet is lost, and when the encoded packet is lost, decode the bitstream with the lost packet omitted and insert a reconstructed frame associated with the lost packet into a reference frame storage. In another embodiment, when the encoded packet is lost, a decoder is run on a reference frame chosen as the last uncorrupted frame.
    Type: Grant
    Filed: March 3, 2003
    Date of Patent: November 2, 2010
    Assignee: Apple Inc.
    Inventors: Ryan R. Salsbury, James Oliver Normile, Hyeonkuk Jeong, Joe S. Abuan, Barin G. Haskell
  • Patent number: 7809207
    Abstract: Methods for pre-processing video sequences prior to compression to provide data reduction of the video sequence. Also, after compression of the pre-processed video sequence, the bit rate of the pre-processed and compressed video sequence will be lower than the bit rate of the video sequence after compression but without pre-processing. Pre-processing may include spatial anisotropic diffusion filtering such as Perona-Malik filtering, Fallah-Ford filtering, or omni-directional filtering that extends Perona-Malik filtering to perform filtering in at least one diagonal direction. Pre-processing may also include performing filtering differently on a foreground region than on a background region of a video frame. This method includes identifying pixel locations having pixel values matching characteristics of human skin and determining a bounding shape for each contiguous grouping of matching pixel locations.
    Type: Grant
    Filed: August 4, 2008
    Date of Patent: October 5, 2010
    Assignee: Apple Inc.
    Inventors: Adriana Dumitras, James Oliver Normile, Ryan R. Salsbury
  • Publication number: 20100246689
    Abstract: A method and device for dithering video from a decoder. The method and device provide: selecting a segment of video frames from the video; computing a noise map for the segment of the video, the noise map computed from differences among pixels selected from spatially-distributed sampling patterns in the segment; determining contours of quantization artifacts within the video frame based on the noise map and a histogram of pixel values in the video frame; computing a gradient measurement of pixel values along the contours; identifying regions along the contours of quantization artifacts to apply dithering based on the noise map and the gradient measurement; determining a dithering strength based on the noise map and the gradient measurement; and applying dithering noise to the identified regions at the determined dithering strength.
    Type: Application
    Filed: May 11, 2009
    Publication date: September 30, 2010
    Inventors: Gianluca FILIPPINI, Hsi-Jung WU, James Oliver NORMILE, Xiaojin SHI, Xiaosong ZHOU, Ionut HRISTODORESCU
  • Publication number: 20100246688
    Abstract: Example embodiments of the present invention provide a method or device for coding source video. The method or device may provide for a segment of video frames from the source video, computing a noise map for the segment of the source video where the noise map is computed from differences among pixels selected from spatially-distributed sampling patterns in the segment, computing control parameter adjustments based on the noise map, and coding the selected segment of source video according to control parameters generated from a default coding policy and the control parameter adjustments, where the default coding policy includes default control parameters of the encoder.
    Type: Application
    Filed: May 11, 2009
    Publication date: September 30, 2010
    Applicant: Apple Inc.
    Inventors: Gianluca FILIPPINI, Xiaosong ZHOU, Hsi-Jung WU, James Oliver NORMILE, Xiaojin SHI, Ionut HRISTODORESCU
  • Publication number: 20100246691
    Abstract: Embodiments of the present invention provides a method and device for processing a source video. The method and device may provide computing an artifact estimation from differences among pixels selected from spatially-distributed sampling patterns in the source video; filtering the source video to produce a filtered version of the source video, computing a blending factor based on the artifact estimation in the source video, and computing an output video by blending the source video and the filtered version of the source video based on the blending factor.
    Type: Application
    Filed: May 11, 2009
    Publication date: September 30, 2010
    Applicant: APPLE INC.
    Inventors: Gianluca FILIPPINI, Xiaosong ZHOU, Hsi-Jung WU, James Oliver NORMILE, Xiaojin SHI, Ionut HRISTODORESCU
  • Publication number: 20100008419
    Abstract: Embodiments of the present invention provide systems, methods and apparatuses for generating forward, backward or bi-directional P frames. Prior to encoding a sequence of video frames, P frames within the video sequence can be reordered to include causal and/or non-causal references to one or more reference frames. This allows any block partition of a bi-directional P frame to include a single reference to a reference frame that is temporally displayed either before or after the bi-directional P frame. Compression and visual quality can therefore be improved. Hierarchical frame structures can be constructed using bi-directional P frames to better accommodate low complexity decoding profiles. Multilayered encoded video bitstreams can be generated based on the hierarchical frame structures and can include a first layer of anchor frames and one or more second layers that include bi-directional P frames that reference the anchor frames and/or any frame in any lower level layer.
    Type: Application
    Filed: December 19, 2008
    Publication date: January 14, 2010
    Applicant: APPLE INC.
    Inventors: Hsi-Jung WU, James Oliver NORMILE, Xiaojin SHI, Xiaosong ZHOU, Gianluca FILIPPINI, Ionut HRISTODORESCU
  • Publication number: 20100011117
    Abstract: Systems and methods for streaming video over multiple HTTP channels are provided. The client may have control over the channels, allowing the client to control the amount and source of data received. Data requested by the client may be separated into a set of layers, with each layer being assigned to a separate channel. The client may adjust the number of layers requested based on a variety of factors. Layers may be requested from multiple remote sources, providing the client with additional control over the specific bandwidth profile of received data.
    Type: Application
    Filed: March 19, 2009
    Publication date: January 14, 2010
    Applicant: APPLE INC.
    Inventors: Ionut HRISTODORESCU, Joe ABUAN, James Oliver NORMILE, Hsi-Jung WU
  • Publication number: 20090180545
    Abstract: Disclosed is a system and method of controlling a video decoder, including a reviewing channel data representing coded video data generated by an encoder to identify parameters of a hypothetical reference decoder (HRD) used by the encoder during coding operations. A parameter representing an exit data rate requirement of a coded picture buffer (CPB) of the HRD is compared against exit rate performance of the video decoder. If the exit rate performance of the video coder matches the exit rate requirement of the HRD, the coded video data is decoded, otherwise, a certain decoding degradation scheme can be applied, including disabling decoder from decoding the coded video data.
    Type: Application
    Filed: January 11, 2008
    Publication date: July 16, 2009
    Applicant: APPLE INC.
    Inventors: Hsi-Jung WU, Barin Geoffry HASKELL, Xiaojin SHI, James Oliver NORMILE
  • Publication number: 20080292006
    Abstract: Methods for pre-processing video sequences prior to compression to provide data reduction of the video sequence. In addition, after compression of the pre-processed video sequence, the bit rate of the pre-processed and compressed video sequence will be lower than the bit rate of the video sequence after compression but without pre-processing. A temporal filtering method is provided for pre-processing of video frames of a video sequence. In the method, pixel values of successive frames are filtered when the difference in the pixel values between the successive frames are within high and low threshold values. The high and low threshold values are determined adaptively depending on the illumination level of a video frame to provide variability of filtering strength depending on the illumination levels of a video frame.
    Type: Application
    Filed: June 16, 2008
    Publication date: November 27, 2008
    Inventors: Adriana Dumitras, James Oliver Normile, Ryan R. Salsbury
  • Publication number: 20080292201
    Abstract: Methods for pre-processing video sequences prior to compression to provide data reduction of the video sequence. Also, after compression of the pre-processed video sequence, the bit rate of the pre-processed and compressed video sequence will be lower than the bit rate of the video sequence after compression but without pre-processing. Pre-processing may include spatial anisotropic diffusion filtering such as Perona-Malik filtering, Fallah-Ford filtering, or omni-directional filtering that extends Perona-Malik filtering to perform filtering in at least one diagonal direction. Pre-processing may also include performing filtering differently on a foreground region than on a background region of a video frame. This method includes identifying pixel locations having pixel values matching characteristics of human skin and determining a bounding shape for each contiguous grouping of matching pixel locations.
    Type: Application
    Filed: August 4, 2008
    Publication date: November 27, 2008
    Inventors: Adriana Dumitras, James Oliver Normile, Ryan R. Salsbury
  • Publication number: 20080284904
    Abstract: Methods for pre-processing video sequences prior to compression to provide data reduction of the video sequence. Also, after compression of the pre-processed video sequence, the bit rate of the pre-processed and compressed video sequence will be lower than the bit rate of the video sequence after compression but without pre-processing. Pre-processing may include spatial anisotropic diffusion filtering such as Perona-Malik filtering, Fallah-Ford filtering, or omni-directional filtering that extends Perona-Malik filtering to perform filtering in at least one diagonal direction. Pre-processing may also include performing filtering differently on a foreground region than on a background region of a video frame. This method includes identifying pixel locations having pixel values matching characteristics of human skin and determining a bounding shape for each contiguous grouping of matching pixel locations.
    Type: Application
    Filed: April 21, 2008
    Publication date: November 20, 2008
    Inventors: Adriana Dumitras, James Oliver Normile, Ryan R. Salsbury
  • Patent number: 7430335
    Abstract: Methods for pre-processing video sequences prior to compression to provide data reduction of the video sequence. Also, after compression of the pre-processed video sequence, the bit rate of the pre-processed and compressed video sequence will be lower than the bit rate of the video sequence after compression but without pre-processing. Pre-processing may include spatial anisotropic diffusion filtering such as Perona-Malik filtering, Fallah-Ford filtering, or omni-directional filtering that extends Perona-Malik filtering to perform filtering in at least one diagonal direction. Pre-processing may also include performing filtering differently on a foreground region than on a background region of a video frame. This method includes identifying pixel locations having pixel values matching characteristics of human skin and determining a bounding shape for each contiguous grouping of matching pixel locations.
    Type: Grant
    Filed: August 13, 2003
    Date of Patent: September 30, 2008
    Assignee: Apple Inc
    Inventors: Adriana Dumitras, James Oliver Normile, Ryan R. Salsbury
  • Publication number: 20080181298
    Abstract: Systems, apparatuses and methods whereby coded bitstreams are delivered to downstream end-user devices having various performance capabilities. A head-end encoder/video store generates a primary coded bitstream and metadata for delivery to an intermediate re-encoding system. The re-encoding system recodes the primary coded bitstream to generate secondary coded bitstreams based on coding parameters in the metadata. Each secondary coded bitstream is matched to a conformance point of a downstream end-user device. Coding parameters for each conformance point can be derived from the head-end encoder encoding original source video to generate the secondary coded bitstreams and extracting information from the coding process/results. The metadata can then can be communicated as part of the primary coded bitstream (e.g., as SEI) or can be communicated separately.
    Type: Application
    Filed: January 26, 2007
    Publication date: July 31, 2008
    Applicant: APPLE COMPUTER, INC.
    Inventors: Xiaojin Shi, Hsi-Jung Wu, James Oliver Normile
  • Patent number: 7403568
    Abstract: Methods for pre-processing video sequences prior to compression to provide data reduction of the video sequence. In addition, after compression of the pre-processed video sequence, the bit rate of the pre-processed and compressed video sequence will be lower than the bit rate of the video sequence after compression but without pre-processing. A temporal filtering method is provided for pre-processing of video frames of a video sequence. In the method, pixel values of successive frames are filtered when the difference in the pixel values between the successive frames are within high and low threshold values. The high and low threshold values are determined adaptively depending on the illumination level of a video frame to provide variability of filtering strength depending on the illumination levels of a video frame.
    Type: Grant
    Filed: August 13, 2003
    Date of Patent: July 22, 2008
    Assignee: Apple Inc.
    Inventors: Adriana Dumitras, James Oliver Normile, Ryan R. Salsbury
  • Publication number: 20070217503
    Abstract: Scalable video coding and multiplexing compatible with non-scalable decoders is disclosed. In some embodiments, video data is received and encoded in a manner that renders at least a base layer to be compatible with a non-scalable video encoding standard, including by assigning for at least the base layer default values to one or more scalability parameters. In some embodiments, video data is received and encoded to produce an encoded video data that includes a base layer that conforms to a non-scalable video encoding standard and one or more subordinate non-scalable layers, which subordinate non-scalable layers do not by themselves conform to the non-scalable video encoding standard but which can be combined with the base layer to produce a result that does conform to the non-scalable video encoding standard, such that the result can be decoded by a non-scalable decoder.
    Type: Application
    Filed: February 23, 2007
    Publication date: September 20, 2007
    Inventors: Barin Geoffry Haskell, David William Singer, Thomas Pun, Hsi-Jung Wu, James Oliver Normile
  • Patent number: 7272224
    Abstract: A method, apparatus, system, and signal-bearing medium that in an embodiment determine a degree of correlation between a speaker output signal and a microphone input signal and modulate an adaptive gain of an acoustic echo canceller based on the degree of correlation.
    Type: Grant
    Filed: March 3, 2003
    Date of Patent: September 18, 2007
    Assignee: Apple Inc.
    Inventors: James Oliver Normile, Ryan R. Salsbury
  • Patent number: 6438165
    Abstract: A system for encoding data blocks and methods of operating the same result in a video encoder that provides advanced intelligent encoding. The video encoder comprises DCT (discrete cosine transformer) resources configured to DCT the data blocks. Quantizing resources is coupled to the DCT resources configured to quantize the data blocks to provide quantized data blocks. Inverse quantizing resources is coupled to the quantizing resources to inverse quantize the quantized data blocks. Frame reconstruction resources is coupled to the inverse quantizing resources configured to reconstruct previous compressed frames. Motion estimation resources is coupled to the frame reconstruction resources configured to provide predicted data blocks. Subtraction resources is coupled to the DCT resources and the motion estimation resources to subtract the data blocks and the predicted data blocks.
    Type: Grant
    Filed: March 9, 1998
    Date of Patent: August 20, 2002
    Assignees: LG Electronics
    Inventor: James Oliver Normile
  • Publication number: 20020057898
    Abstract: An apparatus for a trick play video player and methods of operating the same result in a video player that provides a compressed data stream of output image data for later playback. The trick play video player comprises a frame creator which receives output image data and creates a reference frame from the output image data. A data stream storage is coupled to the frame creator configured to store the compressed data stream which follows the reference frame. The reference frame and the compressed data stream is decoded to replay the output image data.
    Type: Application
    Filed: December 19, 1997
    Publication date: May 16, 2002
    Inventor: JAMES OLIVER NORMILE
  • Publication number: 20010012324
    Abstract: A system for encoding data blocks and methods of operating the same result in a video encoder that provides advanced intelligent encoding. The video encoder comprises DCT (discrete cosine transformer) resources configured to DCT the data blocks. Quantizing resources is coupled to the DCT resources configured to quantize the data blocks to provide quantized data blocks. Inverse quantizing resources is coupled to the quantizing resources to inverse quantize the quantized data blocks. Frame reconstruction resources is coupled to the inverse quantizing resources configured to reconstruct previous compressed frames. Motion estimation resources is coupled to the frame reconstruction resources configured to provide predicted data blocks. Subtraction resources is coupled to the DCT resources and the motion estimation resources to subtract the data blocks and the predicted data blocks.
    Type: Application
    Filed: March 9, 1998
    Publication date: August 9, 2001
    Inventor: JAMES OLIVER NORMILE