Patents by Inventor Ioannis Katsavounidis

Ioannis Katsavounidis 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: 10425683
    Abstract: A method includes receiving, with a computing system, data representing a video item into a buffer. The method further includes outputting the video item from the buffer to a display system. The method further includes determining that utilization of the buffer falls below a predetermined threshold. The method further includes, in response to determining that the utilization of the buffer falls below the predetermined threshold, determining that there is a specified rebuffering point within a predetermined time frame. The method further includes pausing with the computing system, the video item at the specified rebuffering point in response to determining that there is the specified rebuffering point within the predetermined time frame.
    Type: Grant
    Filed: May 31, 2017
    Date of Patent: September 24, 2019
    Assignee: Netflix, Inc.
    Inventors: Ioannis Katsavounidis, Mark Watson, Aaron Hipple, Will Wolcott
  • Patent number: 10404986
    Abstract: In one embodiment of the present invention, an encoding bitrate ladder selector tailors bitrate ladders to the complexity of source data. Upon receiving source data, a complexity analyzer configures an encoder to repeatedly encode the source data-setting a constant quantization parameter to a different value for each encode. The complexity analyzer processes the encoding results to determine an equation that relates a visual quality metric to an encoding bitrate. The bucketing unit solves this equation to estimate a bucketing bitrate at a predetermined value of the visual quality metric. Based on the bucketing bitrate, the bucketing unit assigns the source data to a complexity bucket having an associated, predetermined bitrate ladder. Advantageously, sagaciously selecting the bitrate ladder enables encoding that optimally reflects tradeoffs between quality and resources (e.g., storage and bandwidth) across a variety of source data types instead of a single, “typical” source data type.
    Type: Grant
    Filed: March 30, 2015
    Date of Patent: September 3, 2019
    Assignee: NETFLIX, INC.
    Inventors: Anne Aaron, David Ronca, Ioannis Katsavounidis, Andy Schuler
  • Patent number: 10397592
    Abstract: A method and an apparatus for performing multi-threaded video decoding are disclosed. The method takes use of a multi-threaded scheme to process an encoded picture stream on a picture by picture basis. In the method, multiple threads are used for performing video decoding at the same time, such as one thread for the operation of parsing input bits into syntax elements of one picture implemented by the first thread, another thread for the operation of decoding the parsed syntax elements of another picture into pixel values implemented by the second thread, and the other threads for the operations of the non-reference picture, such as bidirectional predictive picture, including parsing input bits into syntax elements and the subsequent operation of decoding the parsed syntax elements into pixel values. Therefore, the decoding speed is substantially increased, and the decoding efficiency is enhanced.
    Type: Grant
    Filed: December 4, 2017
    Date of Patent: August 27, 2019
    Assignee: COREL SOFTWARE LLC
    Inventors: Ioannis Katsavounidis, Yu-Nien Chien, Chun-Huan Chuang, Chung-Tao Chu, Te-Chien Chen
  • Publication number: 20190028745
    Abstract: An encoding engine encodes a video sequence to provide optimal quality for a given bitrate. The encoding engine cuts the video sequence into a collection of shot sequences. Each shot sequence includes video frames captured from a particular capture point. The encoding engine resamples each shot sequence across a range of different resolutions, encodes each resampled sequence with a range of quality parameters, and then upsamples each encoded sequence to the original resolution of the video sequence. For each upsampled sequence, the encoding engine computes a quality metric and generates a data point that includes the quality metric and the resample resolution. The encoding engine collects all such data points and then computes the convex hull of the resultant data set.
    Type: Application
    Filed: July 12, 2018
    Publication date: January 24, 2019
    Inventor: Ioannis KATSAVOUNIDIS
  • Publication number: 20190028529
    Abstract: A shot analyzer varies the resolution when generating encoded video sequences for streaming. The shot analyzer generates a first encoded video sequence based on a first resolution and a source video sequence that is associated with a video title. The shot analyzer then determines a first encoded shot sequence from multiple encoded shot sequences included in the first encoded video sequence based on quality metric(s). The first encoded shot sequence is associated with a first shot sequence included in the source video sequence. Subsequently, the shot analyzer generates a second encoded shot sequence based on a second resolution and the first shot sequence. The shot analyzer generates a second encoded video sequence based on the first encoded video sequence and the second encoded shot sequence. At least a first portion of the second encoded video sequence is subsequently streamed to an endpoint device during playback of the video title.
    Type: Application
    Filed: August 2, 2018
    Publication date: January 24, 2019
    Inventor: Ioannis KATSAVOUNIDIS
  • Publication number: 20180359499
    Abstract: One embodiment of the invention sets forth a mechanism for encoding video streams associated with the same digital content such that switch points staggered across two video streams occur at every offset temporal distance. The offset temporal distance is less than the distance between two consecutive key frames in a given video stream. This enables a content player to switch to a video stream having a playback quality up or down one level from a current video stream at the offset temporal distance from the most recently played key frame. In effect, the content player does not wait the entire key frame temporal distance before switching.
    Type: Application
    Filed: June 12, 2017
    Publication date: December 13, 2018
    Inventors: Aditya MAVLANKAR, Ioannis KATSAVOUNIDIS, Mark WATSON
  • Publication number: 20180352292
    Abstract: A method includes receiving, with a computing system, data representing a video item into a buffer. The method further includes outputting the video item from the buffer to a display system. The method further includes determining that utilization of the buffer falls below a predetermined threshold. The method further includes, in response to determining that the utilization of the buffer falls below the predetermined threshold, determining that there is a specified rebuffering point within a predetermined time frame. The method further includes pausing with the computing system, the video item at the specified rebuffering point in response to determining that there is the specified rebuffering point within the predetermined time frame.
    Type: Application
    Filed: May 31, 2017
    Publication date: December 6, 2018
    Inventors: Ioannis Katsavounidis, Mark Watson, Aaron Hipple, Will Wolcott
  • Publication number: 20180343458
    Abstract: In various embodiments, a sequence-based encoding application partitions a set of shot sequences associated with a media title into multiple clusters based on at least one feature that characterizes media content and/or encoded media content associated with the media title. The clusters include at least a first cluster and a second cluster. The sequence-based encoding application encodes a first shot sequence using a first operating point to generate a first encoded shot sequence. The first shot sequence and the first operating point are associated with the first cluster. By contrast, the sequence-based encoding application encodes a second shot sequence using a second operating point to generate a second encoded shot sequence. The second shot sequence and the second operating point are associated with the second cluster. Subsequently, the sequence-based encoding application generates an encoded media sequence based on the first encoded shot sequence and the second encoded shot sequence.
    Type: Application
    Filed: August 3, 2018
    Publication date: November 29, 2018
    Inventors: Ioannis KATSAVOUNIDIS, Anne AARON, Jan DE COCK
  • Patent number: 10140520
    Abstract: In one embodiment of the present invention, a native resolution analyzer generates a log-magnitude spectrum that elucidates sampling operations that have been performed on a scene. In operation, the native resolution analyzer performs a transform operation of a color component associated with a frame included in the scene to generate a frame spectrum. The native resolution analyzer then normalizes the magnitudes associated with the frame spectrum and logarithmically scales the normalized magnitudes to create a log-magnitude frame spectrum. This two dimensional log-magnitude frame spectrum serves as a frequency signature for the frame. More specifically, patterns in the log-magnitude spectrum reflect re-sampling operations, such as a down-sampling and subsequent up-sampling, that may have been performed on the frame.
    Type: Grant
    Filed: August 14, 2017
    Date of Patent: November 27, 2018
    Assignee: NETFLIX, INC.
    Inventor: Ioannis Katsavounidis
  • Publication number: 20180302456
    Abstract: In various embodiments, an iterative encoding application generates shot encode points based on a first set of encoding points and a first shot sequence associated with a media title. The iterative encoding application performs convex hull operations across the shot encode points to generate a first convex hull. Subsequently, the iterative encoding application generates encoded media sequences based on the first convex hull and a second convex hull that is associated with both a second shot sequence associated with the media title and a second set of encoding points. The iterative encoding application determines a first optimized encoded media and a second optimized encoded media sequence from the encoded media sequences based on, respectively, a first target metric value and a second target metric value for a media metric. Portions of the optimized encoded media sequences are subsequently streamed to endpoint devices during playback of the media title.
    Type: Application
    Filed: June 22, 2018
    Publication date: October 18, 2018
    Inventors: Ioannis KATSAVOUNIDIS, Anne AARON, Jan DE COCK
  • Publication number: 20180240502
    Abstract: In various embodiments, an encoding optimization application positions key frames within encoded video sequences based on shot changes. The encoding optimization application determines key frame location(s) based on shot change(s) included in a source video sequence associated with a media title. Each key frame location is associated with a different frame included in the source video sequence. For each of the key frame location(s), the encoding optimization application configures an encoding application to encode a frame of video content located at the key frame location as a key frame when performing encoding operations. Subsequently, the encoding optimization application causes the encoding application to perform encoding operation(s) on the source video sequence to generate a first encoded video sequence. During playback, the media title is switchable between a decoded version of the first encoded video sequence and a decoded version of a second encoded video sequence at the key frame location(s).
    Type: Application
    Filed: February 22, 2018
    Publication date: August 23, 2018
    Inventor: Ioannis KATSAVOUNIDIS
  • Publication number: 20180241795
    Abstract: In various embodiments, an encoding optimization application encodes a source video sequence. The encoding optimization application partitions a source video sequence associated with a media title into multiple subsequences that include a first subsequence and a second subsequence. Subsequently, the encoding optimization application generates a first encoded subsequence based on the first subsequence and a first value of an encoding parameter. The encoding optimization application generates a second encoded subsequence based on the second subsequence and a second value for the encoding parameter. Notably, the second value of the encoding parameter is not equal to the first value of the encoding parameter. The encoding optimization application then aggregates the first encoded subsequence and the second encoded subsequence to generate an encoded video sequence. At least a portion of the encoded video sequence is subsequently streamed to an endpoint device during a playback of the media title.
    Type: Application
    Filed: February 22, 2018
    Publication date: August 23, 2018
    Inventor: Ioannis KATSAVOUNIDIS
  • Publication number: 20180242015
    Abstract: In various embodiments, an encoding optimization application encodes a source video sequence. The encoding optimization application partitions a source video sequence associated with a media title into multiple subsequences that include a first subsequence and a second subsequence. The encoding optimization application then generates a first encoded subsequence based on the first subsequence and a first resolution. The encoding optimization application generates a second encoded subsequence based on the second subsequence and a second resolution. Notably, the second resolution is higher than the first resolution. The encoding optimization application then aggregates the first encoded subsequence and the second encoded subsequence to generate an encoded video sequence. At least a portion of the encoded video sequence is subsequently streamed to an endpoint device during a playback of the media title.
    Type: Application
    Filed: February 22, 2018
    Publication date: August 23, 2018
    Inventor: Ioannis KATSAVOUNIDIS
  • Publication number: 20180242002
    Abstract: In various embodiments, an iterative encoding application encodes a source video sequence. The encoding optimization application generates a set of shot encode points based on a set of encoding points and a first shot sequence included in the source video sequence. Each shot encode point is associated with a different encoded shot sequence. The encoding optimization application performs convex hull operation(s) across the set of shot encode points to generate a first convex hull associated with the first shot sequence. Subsequently, the encoding optimization application generates encoded video sequences based on the first convex hull and a second convex hull associated with a second shot sequence included in the source video sequence. The encoding optimization application computes a new encoding point based on the encoded video sequences and a target value for a first video metric and then generates an optimized encoded video sequence based on the new encoding point.
    Type: Application
    Filed: February 22, 2018
    Publication date: August 23, 2018
    Inventor: Ioannis KATSAVOUNIDIS
  • Publication number: 20180098080
    Abstract: A method and an apparatus for performing multi-threaded video decoding are disclosed. The method takes use of a multi-threaded scheme to process an encoded picture stream on a picture by picture basis. In the method, multiple threads are used for performing video decoding at the same time, such as one thread for the operation of parsing input bits into syntax elements of one picture implemented by the first thread, another thread for the operation of decoding the parsed syntax elements of another picture into pixel values implemented by the second thread, and the other threads for the operations of the non-reference picture, such as bidirectional predictive picture, including parsing input bits into syntax elements and the subsequent operation of decoding the parsed syntax elements into pixel values. Therefore, the decoding speed is substantially increased, and the decoding efficiency is enhanced.
    Type: Application
    Filed: December 4, 2017
    Publication date: April 5, 2018
    Applicant: Corel Software, LLC
    Inventors: Ioannis KATSAVOUNIDIS, Yu-Nien Chien, Chun-Huan Chuang, Chung-Tao Chu, Te-Chien Chen
  • Publication number: 20180012076
    Abstract: In one embodiment of the present invention, a native resolution analyzer generates a log-magnitude spectrum that elucidates sampling operations that have been performed on a scene. In operation, the native resolution analyzer performs a transform operation of a color component associated with a frame included in the scene to generate a frame spectrum. The native resolution analyzer then normalizes the magnitudes associated with the frame spectrum and logarithmically scales the normalized magnitudes to create a log-magnitude frame spectrum. This two dimensional log-magnitude frame spectrum serves as a frequency signature for the frame. More specifically, patterns in the log-magnitude spectrum reflect re-sampling operations, such as a down-sampling and subsequent up-sampling, that may have been performed on the frame.
    Type: Application
    Filed: August 14, 2017
    Publication date: January 11, 2018
    Inventor: Ioannis KATSAVOUNIDIS
  • Patent number: 9838703
    Abstract: A method and an apparatus for performing multi-threaded video decoding are disclosed. The method takes use of a multi-threaded scheme to process an encoded picture stream on a picture by picture basis. In the method, multiple threads are used for performing video decoding at the same time, such as one thread for the operation of parsing input bits into syntax elements of one picture implemented by the first thread, another thread for the operation of decoding the parsed syntax elements of another picture into pixel values implemented by the second thread, and the other threads for the operations of the non-reference picture, such as bidirectional predictive picture, including parsing input bits into syntax elements and the subsequent operation of decoding the parsed syntax elements into pixel values. Therefore, the decoding speed is substantially increased, and the decoding efficiency is enhanced.
    Type: Grant
    Filed: April 20, 2015
    Date of Patent: December 5, 2017
    Assignee: COREL SOFTWARE LLC
    Inventors: Ioannis Katsavounidis, Yu-Nien Chien, Chun-Huan Chuang, Chung-Tao Chu, Te-Chien Chen
  • Patent number: 9824278
    Abstract: In one embodiment of the present invention, a native resolution analyzer generates a log-magnitude spectrum that elucidates sampling operations that have been performed on a scene. In operation, the native resolution analyzer performs a transform operation of a color component associated with a frame included in the scene to generate a frame spectrum. The native resolution analyzer then normalizes the magnitudes associated with the frame spectrum and logarithmically scales the normalized magnitudes to create a log-magnitude frame spectrum. This two dimensional log-magnitude frame spectrum serves as a frequency signature for the frame. More specifically, patterns in the log-magnitude spectrum reflect re-sampling operations, such as a down-sampling and subsequent up-sampling, that may have been performed on the frame.
    Type: Grant
    Filed: October 8, 2015
    Date of Patent: November 21, 2017
    Assignee: NETFLIX, INC.
    Inventor: Ioannis Katsavounidis
  • Patent number: 9734409
    Abstract: In one embodiment of the present invention, a native resolution analyzer generates a log-magnitude spectrum that elucidates sampling operations that have been performed on a scene. In operation, the native resolution analyzer performs a transform operation of a color component associated with a frame included in the scene to generate a frame spectrum. The native resolution analyzer then normalizes the magnitudes associated with the frame spectrum and logarithmically scales the normalized magnitudes to create a log-magnitude frame spectrum. This two dimensional log-magnitude frame spectrum serves as a frequency signature for the frame. More specifically, patterns in the log-magnitude spectrum reflect re-sampling operations, such as a down-sampling and subsequent up-sampling, that may have been performed on the frame.
    Type: Grant
    Filed: October 8, 2015
    Date of Patent: August 15, 2017
    Assignee: NETFLIX, INC.
    Inventor: Ioannis Katsavounidis
  • Publication number: 20160381401
    Abstract: In one embodiment of the present invention, a native resolution analyzer generates a log-magnitude spectrum that elucidates sampling operations that have been performed on a scene. In operation, the native resolution analyzer performs a transform operation of a color component associated with a frame included in the scene to generate a frame spectrum. The native resolution analyzer then normalizes the magnitudes associated with the frame spectrum and logarithmically scales the normalized magnitudes to create a log-magnitude frame spectrum. This two dimensional log-magnitude frame spectrum serves as a frequency signature for the frame. More specifically, patterns in the log-magnitude spectrum reflect re-sampling operations, such as a down-sampling and subsequent up-sampling, that may have been performed on the frame.
    Type: Application
    Filed: October 8, 2015
    Publication date: December 29, 2016
    Inventor: Ioannis KATSAVOUNIDIS