PEER-ASSISTED VIDEO DISTRIBUTION
First Claim
Patent Images
1. A method for distributing a video file comprising frames via a peer-assisted video delivery system, the method comprising:
- segmenting the video file into temporal segments such that any frame of the video file is present in one and only one temporal segment, wherein each temporal segment is a self-contained physical object;
generating segmentation metadata comprising at least video offsets corresponding to the video frames that need to be extracted from the video file to generate the temporal segments, continuity counter values suitable for detecting data loss, and segment start times;
converting the temporal segments into media stream segments in accordance with a media stream format, which uses continuity counters and/or timestamps, such that the continuity counters within the media stream segments and between consecutive media stream segments are properly incremented and/or the timestamps within the media stream segments and between consecutive media stream segments are valid and synchronized; and
injecting the video file and the segmentation metadata into the peer-assisted video delivery system.
4 Assignments
0 Petitions
Accused Products
Abstract
A solution for peer-assisted distribution of video content over a broadband network is disclosed. A video file is segmented into segments and segmentation metadata is generated. The segments are converted to media stream segments with counter/timestamp consistency. The video file and the segmentation metadata are injected into a peer-assisted video delivery system. The segmentation metadata are then used for initializing download of offsets of the video file that are required for generating segments of the video file at a client.
-
Citations
14 Claims
-
1. A method for distributing a video file comprising frames via a peer-assisted video delivery system, the method comprising:
-
segmenting the video file into temporal segments such that any frame of the video file is present in one and only one temporal segment, wherein each temporal segment is a self-contained physical object; generating segmentation metadata comprising at least video offsets corresponding to the video frames that need to be extracted from the video file to generate the temporal segments, continuity counter values suitable for detecting data loss, and segment start times; converting the temporal segments into media stream segments in accordance with a media stream format, which uses continuity counters and/or timestamps, such that the continuity counters within the media stream segments and between consecutive media stream segments are properly incremented and/or the timestamps within the media stream segments and between consecutive media stream segments are valid and synchronized; and injecting the video file and the segmentation metadata into the peer-assisted video delivery system. - View Dependent Claims (2, 4, 5)
-
-
3. A method for receiving a video file comprising frames from a peer-assisted video delivery system, the method comprising:
-
downloading segmentation metadata comprising at least video offsets corresponding to video frames that were extracted from the video file to generate temporal segments of the video file, continuity counter values suitable for detecting data loss, and segment start times; analyzing the segmentation metadata to determine video offsets to be downloaded and for initiating download of the determined video offsets; downloading the determined video offsets for at least a full length segment; generating video segments from the downloaded video offsets; and converting video segments into media stream segments in accordance with a media stream format, which uses continuity counters and/or timestamps, such that the continuity counters within the media stream segments and between consecutive media stream segments are properly incremented and/or the timestamps within the media stream segments and between consecutive media stream segments are valid and synchronized. - View Dependent Claims (13, 14)
-
-
6. An apparatus for distributing a video file comprising frames via a peer-assisted video delivery system, the apparatus comprising:
-
a segmenter configured to segment the video file into temporal segments such that any frame of the video file is present in one and only one temporal segment, wherein each temporal segment is a self-contained physical object, and to generate segmentation metadata comprising at least video offsets corresponding to the video frames that need to be extracted from the video file to generate the temporal segments, continuity counter values suitable for detecting data loss, and segment start times; a converter configured to convert the temporal segments into media stream segments in accordance with a media stream format, which uses continuity counters and/or timestamps, such that the continuity counters within the media stream segments and between consecutive media stream segments are properly incremented and/or the timestamps within the media stream segments and between consecutive media stream segments are valid and synchronized; and an injector configured to inject the video file and the segmentation metadata into the peer-assisted video delivery system. - View Dependent Claims (7, 9, 10)
-
-
8. An apparatus for receiving a video file comprising frames from a peer-assisted video delivery system, the apparatus comprising:
-
a network connector configured to download segmentation metadata comprising at least video offsets corresponding to video frames that were extracted from the video file to generate temporal segments of the video file, continuity counter values suitable for detecting data loss, and segment start times and to download the video offsets for at least a full length segment; an analyzer configured to analyze the segmentation metadata to determine video offsets to be downloaded and to initiate download of the determined video offsets; a segment generator configured to generate video segments from the downloaded video offsets; and a converter configured to convert the video segments into media stream segments in accordance with a media stream format, which uses continuity counters and/or timestamps, such that the continuity counters within the media stream segments and between consecutive media stream segments are properly incremented and/or the timestamps within the media stream segments and between consecutive media stream segments are valid and synchronized. - View Dependent Claims (11, 12)
-
Specification