US11176197B2ActiveUtilityA1

Methods of storing media files and returning file data for media files and media file systems

58
Assignee: GRASS VALLEY LTDPriority: Apr 15, 2016Filed: Oct 12, 2018Granted: Nov 16, 2021
Est. expiryApr 15, 2036(~9.8 yrs left)· nominal 20-yr term from priority
H04N 21/854H04N 21/8456H04N 5/76G11B 27/105G06F 16/71G11B 27/30H04N 9/8045H04N 21/85406G06F 16/7867H04L 67/06G06F 16/73
58
PatentIndex Score
0
Cited by
11
References
16
Claims

Abstract

A media file system, apparatus, computer program product and method for storing a media file in a media file system. An exemplary method includes obtaining a predetermined number of frames and determining a set of portions for storing the media file, each portion having an identifier that is indicative of a multiple of the predetermined number of frames. Further, for each portion of the set of portions, associating with the portion the segment of the media file containing the frame indicated by the identifier of the portion, and associating each of the remaining segments of the media file with a portion of the set of portions. Moreover, storing the media file in the media file system as the set of determined portions, each portion comprising its associated segments of the media file.

Claims

exact text as granted — not AI-modified
The invention claimed is: 
     
       1. A method of storing a media file in a media file system having a format that specifies that the media file includes a plurality of segments of file data, each segment comprising file data for a plurality of contiguous frames, the method comprising:
 obtaining a predetermined number of frames; 
 determining a set of portions for storing the media file, with each portion of the set of portions being assigned a unique identifier that is a multiple of the predetermined number of frames; 
 for each portion of the set of portions, associating the respective segment of the media file that contains a frame that corresponds to the unique identifier of the respective portion; 
 associating each remaining segment of the plurality of segments of the media file with a portion of the set of portions; and 
 storing the media file in the media file system as the set of portions, with each portion storing the segments of the media file that are associated with the respective portion of the set of portions. 
 
     
     
       2. The method according to  claim 1 , wherein each remaining segment is associated with the portion containing the segment containing the closest frames preceding the frames of the respective remaining segment. 
     
     
       3. The method according to  claim 1 , wherein each remaining segment is associated with the portion containing the segment containing the closest frames following the frames of the respective remaining segment. 
     
     
       4. The method according to  claim 1 , wherein the plurality of segments of the media file are GOPs. 
     
     
       5. The method according to  claim 1 , wherein the portions are stored as objects in an object store. 
     
     
       6. A method of returning file data for a media file stored in a media file system, wherein the media file has been stored in accordance with the method of  claim 1 , the method comprising:
 receiving a request for file data for one or more frames of the media file from the media file system; 
 determining a portion stored in the media file system from the numbers of the requested one or more frames, using the unique identifier of the portions; 
 determining if a segment or segments containing file data for the requested one or more frames are contained in the determined portion, and if so, returning file data from the segment or segments; and 
 in the case that file data for all requested frames has not been returned, determining if a segment or segments containing file data for the requested one or more frames are contained in a portion adjacent to the determined portion, and if so, returning file data from the segment or segments. 
 
     
     
       7. The method according to  claim 6 , wherein the determined portion is the portion with a closest identifier preceding the number of the requested one or more frames. 
     
     
       8. The method according to  claim 6 , wherein the determined portion is the portion with a closest identifier following the number of the requested one or more frames. 
     
     
       9. The method according to  claim 6 , wherein the portion adjacent to the determined portion is the portion with identifier preceding the identifier of the determined portion. 
     
     
       10. The method according to  claim 6 , wherein the portion adjacent to the determined portion is the portion with identifier following the identifier of the determined portion. 
     
     
       11. The method according to  claim 6 , wherein file data for each complete segment is returned. 
     
     
       12. A media file system for storing a media file having a format specifying that the media file include a plurality of segments of file data, each segment comprising file data for a plurality of contiguous frames, the media file system comprising:
 a frame number determiner configured to obtain a predetermined number of frames; 
 a media file analyzer configured to determine a set of portions for storing the media file, with each portion of the set of portions being assigned a unique identifier that is a multiple of the predetermined number of frames; 
 a file portion divider configured to:
 for each portion of the set of portions, associate the respective segment of the media file that contains a frame that corresponds to the unique identifier of the respective portion, and 
 associate each remaining segment of the plurality of segments of the media file with a portion of the set of portions; and 
 
 a database configured to store the media file in the media file system as the set of portions, with each portion storing the segments of the media file that are associated with the respective portion of the set of portions. 
 
     
     
       13. The media file system according to  claim 12 , wherein the media file analyzer is configured to:
 receive a request for file data for one or more frames of the media file;
 determine a portion stored in the media file system from the numbers of the requested one or more frames, using the unique identifier of the portions; and 
 determine if a segment or segments containing file data for the requested one or more frames are contained in the determined portion, and if so, returning file data from the segment or segments. 
 
 
     
     
       14. The media file system according to  claim 13 , wherein the media file analyzer is configured to, in the case that file data for all requested frames has not been returned, determine if a segment or segments containing file data for the requested one or more frames are contained in a portion adjacent to the determined portion, and if so, returning file data from the segment or segments. 
     
     
       15. A computer program product configured to program a computing apparatus to provide a media file system, arranged to store a media file in a media file system having a format that specifies that the media file comprises a plurality of segments of file data, each segment comprising file data for a plurality of contiguous frames, the computer program product configured to:
 obtain a predetermined number of frames; 
 determine a set of portions for storing the media file, with each portion of the set of portions being assigned a unique identifier that is a multiple of the predetermined number of frames; 
 for each portion of the set of portions, associate the respective segment of the media file that contains a frame that corresponds to the unique identifier of the respective portion; 
 associate each remaining segment of the plurality of segments of the media file with a portion of the set of portions; and 
 store the media file in the media file system as the set of portions, with each portion storing the segments of the media file that are associated with the respective portion of the set of portions. 
 
     
     
       16. The computer program product of  claim 15 , further configured to:
 receive a request for file data for one or more frames of the media file;
 determine a portion stored in the media file system from the numbers of the requested one or more frames, using the unique identifier of the portions; 
 determine if a segment or segments containing file data for the requested one or more frames are contained in the determined portion, and if so, returning file data from the segment or segments; 
 in the case that file data for all requested frames has not been returned, determine if a segment or segments containing file data for the requested one or more frames are contained in a portion adjacent to the determined portion, and if so, returning file data from the segment or segments.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.