Patent application number | Description | Published |
20110320287 | METHOD AND APPARATUS FOR PROVIDING STREAMING MEDIA PROGRAMS AND TARGETED ADVERTISEMENTS COMPATIBLY WITH HTTP LIVE STREAMING - A method, apparatus, article of manufacture, and a memory structure for providing advertisements with a media program transmitted to a user device are described. Different versions of a media program and advertisements are generated and segmented, and transmitted to a media player individually, allowing different advertisements to be selected for presentation to users according to user demographics and other factors. | 12-29-2011 |
20120059951 | METHOD AND APPARATUS FOR ADAPTIVE BIT RATE SWITCHING - A method and apparatus for adaptively receiving media streams of different bit rates is disclosed. Data describing the variability of the bit rate of different versions of a media program is transmitted to the media player, and used by the media player to select the appropriate version for reception over the communication channel. | 03-08-2012 |
20130223510 | Encoding Optimization Using Quality Level of Encoded Segments - In one embodiment, a method includes encoding a media file using a variable bitrate encoding algorithm based on a plurality of bitrate ranges to generate a set of encoded segments. For each bitrate range, an encoded segment for each segment of the media file is determined from the set of encoded segments based on a quality level of the encoded segment and each bitrate range. The method then identifies a playlist for each bitrate range including the encoded segment for each segment of the media file that was determined for each bitrate range. At least one playlist includes an encoded segment that was generated based on another bitrate range using the variable bitrate encoding algorithm. | 08-29-2013 |
20130322854 | Picture Overlay of Captions on Video Via Out of Band Communication - In one embodiment, a method includes storing a caption file including a set of visual representations of captions for a media program and a video file including video information for the media program. A server receives a request for the media program where the request is associated with a user device. The method determines the caption file and the video file for the media program based on the request. The server then sends visual representations of the captions from the caption file out of band with video information from the video file over a network to the user device. The user device is configured to overlay a visual representation of a caption over a portion of the video information. | 12-05-2013 |
20140044198 | Splicing of Video for Parallel Encoding - In one embodiment, a method receives a video at a partial encoder. The partial encoder determines characteristics of the video by performing a portion of an encoding process of the video. The method analyzes the characteristics of the video to determine splice points in the video to splice the video into multiple parts. The video is spliced into a plurality of parts based on the splice points and the plurality of parts are sent to a plurality of encoders. The plurality of encoders encode the plurality of parts substantially in parallel, the encoded plurality of parts are combined to form an encoded version of the video, and the partial encoder does not encode any of the encoded plurality of parts in the encoded version of the video. | 02-13-2014 |
20140046974 | Job Dispatcher of Transcoding Jobs for Media Programs - In one embodiment, a method determines a job to dispatch for transcoding a source file. The source file is stored on a node in a distributed file system in which a plurality of nodes are storing a plurality of source files. The method then determines location information for the source file in the distributed file system where the location information identifies the node in which the source file is stored. Also, a node in the plurality of nodes is determined in which to dispatch the source file based on the location information for the source file. Then, the job is dispatched to the determined node such that transcoding of the source file is performed on the determined node. | 02-13-2014 |
20140075045 | Adaptive Bit Rate Switching - In one embodiment, a method determines data describing a temporal variability of a bit rate of a first bitstream and receives the first bitstream through a communication channel. A throughput for the communication channel is determined. The method then compares the throughput of the communication channel with the data describing the temporal variability of the bit rate of the first bitstream to determine a variance of the first bitstream from the throughput for the communication channel for a portion of the media program not already received. An amount of data currently buffered in a buffer for the media program is determined and then the method compares the amount of data currently buffered to the variance for the portion to determine whether to switch to receiving a second bitstream. The second bitstream has a different bit rate from the first bitstream. | 03-13-2014 |
20140123193 | Overlay of Visual Representations of Captions on Video - In one embodiment, a method receiving a request for a media program from a user device. The method then determines a set of visual representations of captions for the media program and determines video information for the media program. Visual representations from the set of visual representations of captions are sent with the video information over a network to the user device where text for the captions has been pre-rendered in the sent visual representations before sending of the visual representations to the user device. Also, the user device is configured to directly render and overlay a visual representation of a caption from the visual representations over a portion of the video information without rendering of the text for caption on the portion of the video information at the user device. | 05-01-2014 |
20140169761 | Scene Detection Using Weighting Function - In one embodiment, a method includes analyzing characteristics of a media program to label parts of the media program with a plurality of labels where parts of the media program that are determined to be substantially similar are labeled with a same label. The method then analyzes different partitionings of a sequence of the labels to determine partitions for the media program based on a weighting function that is configured to weight the different partitionings based on portions created from the partitions in the different partitionings. Then, a partitioning for the media program is outputted based on comparing the different partitionings of the sequence of labels using the weighting function. The outputted partitioning partitions the media program into a set of portions and provides points for insertion of information for a service in the media program. | 06-19-2014 |
20140177733 | Keyframe Alignment for Encoding Video at Multiple Bitrates - In one embodiment, a method receives a frame type storage medium including frame type decisions made by a first encoding process to encode a video at a first bitrate to generate a first encoded video. While performing a second encoding process to encode the video at a second bitrate to generate a second encoded video, the method performs: retrieving information from the storage medium regarding a frame type decision made during the first encoding process; inserting a keyframe in the second encoded video based on the retrieved information from the storage medium, wherein the inserted keyframe in the second encoded video is aligned with a corresponding keyframe in the first encoded video; and continuing to retrieve information from the storage medium and inserting keyframes in the second encoded video. Keyframes in the first encoded video are aligned with keyframes in the second encoded video. | 06-26-2014 |
20150088931 | Job Dispatcher of Transcoding Jobs for Media Programs - In one embodiment, a method determines a job to dispatch for transcoding a source file. The source file is stored on a node in a distributed file system in which a plurality of nodes are storing a plurality of source files. The method then determines location information for the source file in the distributed file system where the location information identifies the node in which the source file is stored. Also, a node in the plurality of nodes is determined in which to dispatch the job based on the location information for the source file. Then, the job is dispatched to the determined node such that transcoding of the source file is performed on the determined node. The determined node that performs the transcoding of the source file is also storing at least a portion of the plurality of source files. | 03-26-2015 |