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: 20100309987Abstract: 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: ApplicationFiled: July 31, 2009Publication date: December 9, 2010Applicant: 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: 7827458Abstract: 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: GrantFiled: March 3, 2003Date of Patent: November 2, 2010Assignee: Apple Inc.Inventors: Ryan R. Salsbury, James Oliver Normile, Hyeonkuk Jeong, Joe S. Abuan, Barin G. Haskell
-
Patent number: 7809207Abstract: 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: GrantFiled: August 4, 2008Date of Patent: October 5, 2010Assignee: Apple Inc.Inventors: Adriana Dumitras, James Oliver Normile, Ryan R. Salsbury
-
Publication number: 20100246689Abstract: 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: ApplicationFiled: May 11, 2009Publication date: September 30, 2010Inventors: Gianluca FILIPPINI, Hsi-Jung WU, James Oliver NORMILE, Xiaojin SHI, Xiaosong ZHOU, Ionut HRISTODORESCU
-
Publication number: 20100246688Abstract: 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: ApplicationFiled: May 11, 2009Publication date: September 30, 2010Applicant: Apple Inc.Inventors: Gianluca FILIPPINI, Xiaosong ZHOU, Hsi-Jung WU, James Oliver NORMILE, Xiaojin SHI, Ionut HRISTODORESCU
-
Publication number: 20100246691Abstract: 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: ApplicationFiled: May 11, 2009Publication date: September 30, 2010Applicant: APPLE INC.Inventors: Gianluca FILIPPINI, Xiaosong ZHOU, Hsi-Jung WU, James Oliver NORMILE, Xiaojin SHI, Ionut HRISTODORESCU
-
Publication number: 20100008419Abstract: 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: ApplicationFiled: December 19, 2008Publication date: January 14, 2010Applicant: APPLE INC.Inventors: Hsi-Jung WU, James Oliver NORMILE, Xiaojin SHI, Xiaosong ZHOU, Gianluca FILIPPINI, Ionut HRISTODORESCU
-
Publication number: 20100011117Abstract: 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: ApplicationFiled: March 19, 2009Publication date: January 14, 2010Applicant: APPLE INC.Inventors: Ionut HRISTODORESCU, Joe ABUAN, James Oliver NORMILE, Hsi-Jung WU
-
Publication number: 20090180545Abstract: 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: ApplicationFiled: January 11, 2008Publication date: July 16, 2009Applicant: APPLE INC.Inventors: Hsi-Jung WU, Barin Geoffry HASKELL, Xiaojin SHI, James Oliver NORMILE
-
Publication number: 20080292006Abstract: 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: ApplicationFiled: June 16, 2008Publication date: November 27, 2008Inventors: Adriana Dumitras, James Oliver Normile, Ryan R. Salsbury
-
Publication number: 20080292201Abstract: 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: ApplicationFiled: August 4, 2008Publication date: November 27, 2008Inventors: Adriana Dumitras, James Oliver Normile, Ryan R. Salsbury
-
Publication number: 20080284904Abstract: 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: ApplicationFiled: April 21, 2008Publication date: November 20, 2008Inventors: Adriana Dumitras, James Oliver Normile, Ryan R. Salsbury
-
Patent number: 7430335Abstract: 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: GrantFiled: August 13, 2003Date of Patent: September 30, 2008Assignee: Apple IncInventors: Adriana Dumitras, James Oliver Normile, Ryan R. Salsbury
-
Publication number: 20080181298Abstract: 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: ApplicationFiled: January 26, 2007Publication date: July 31, 2008Applicant: APPLE COMPUTER, INC.Inventors: Xiaojin Shi, Hsi-Jung Wu, James Oliver Normile
-
Patent number: 7403568Abstract: 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: GrantFiled: August 13, 2003Date of Patent: July 22, 2008Assignee: Apple Inc.Inventors: Adriana Dumitras, James Oliver Normile, Ryan R. Salsbury
-
Publication number: 20070217503Abstract: 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: ApplicationFiled: February 23, 2007Publication date: September 20, 2007Inventors: Barin Geoffry Haskell, David William Singer, Thomas Pun, Hsi-Jung Wu, James Oliver Normile
-
Patent number: 7272224Abstract: 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: GrantFiled: March 3, 2003Date of Patent: September 18, 2007Assignee: Apple Inc.Inventors: James Oliver Normile, Ryan R. Salsbury
-
Patent number: 6438165Abstract: 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: GrantFiled: March 9, 1998Date of Patent: August 20, 2002Assignees: LG ElectronicsInventor: James Oliver Normile
-
Publication number: 20020057898Abstract: 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: ApplicationFiled: December 19, 1997Publication date: May 16, 2002Inventor: JAMES OLIVER NORMILE
-
Publication number: 20010012324Abstract: 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: ApplicationFiled: March 9, 1998Publication date: August 9, 2001Inventor: JAMES OLIVER NORMILE