Large scale video analytics architecture
US-2016342688-A1 · Nov 24, 2016 · US
US10877798B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10877798-B2 |
| Application number | US-201816116842-A |
| Country | US |
| Kind code | B2 |
| Filing date | Aug 29, 2018 |
| Priority date | Aug 31, 2017 |
| Publication date | Dec 29, 2020 |
| Grant date | Dec 29, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
In various embodiments, a workflow engine executes a custom algorithm on a media item. In operation, the workflow engine generates split specifications based on a split function included in a container image. Each split specification is associated with a different portion of the media item. Subsequently, the workflow engine generates map output files based on the split specifications and a map function included in the container image. The workflow engine then generates one or more final output file(s) based on the map output files and a collect function included in the container image. The final output file(s) are subsequently used to perform at least one of an evaluation operation on, a modification operation on, and a representation operation with respect to the media item.
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method, comprising: generating a plurality of split specifications based on a split function included in a container image, wherein the split function partitions a media item based on playback time to generate the plurality of split specifications, and each split specification is associated with a different portion of the media item; generating a plurality of map output files based on the plurality of split specifications and a map function included in the container image; and generating one or more final output files based on the plurality of map output files and a collect function included in the container image, wherein the one or more final output files are subsequently used to perform at least one of an evaluation operation on, a modification operation on, and a representation operation with respect to the media item. 2. The computer-implemented method of claim 1 , wherein the container image includes a scalable media application and one or more operating system (OS) dependencies of the scalable media application. 3. The computer-implemented method of claim 1 , further comprising performing one or more operations to determine that the plurality of map output files have been successfully generated. 4. The computer-implemented method of claim 1 , wherein generating the plurality of split specifications comprises: acquiring a first container associated with the container image; causing the first container to securely acquire the media item from a media content library; and causing the first container to execute the split function on the media item. 5. The computer-implemented method of claim 1 , further comprising executing the container image on a compute instance included in a cloud or other distributed computing system to generate a first container included in a plurality of containers associated with the container image. 6. The computer-implemented method of claim 1 , wherein generating the plurality of map output files comprises, for each split specification included in the plurality of split specifications, causing a different container included in a plurality of containers associated with the container image to generate a different map output file included in the plurality of map output files based on the map function. 7. The computer-implemented method of claim 1 , wherein generating the one or more final output files comprises acquiring a first container associated with the container image and causing the first container to execute the collect function on the plurality of map output files. 8. The computer-implemented method of claim 1 , wherein the split function partitions a plurality of frames included in the media item. 9. The computer-implemented method of claim 1 , wherein the map function incorporates a custom algorithm that operates on at least one of media content or encoded media content. 10. The computer-implemented method of claim 1 , wherein the collect function performs at least one of an encryption operation, a compression operation, and a byte concatenation operation on the plurality of map output files to generate the one or more final output files. 11. One or more non-transitory computer readable media including instructions that, when executed by one or more processors, cause the one or more processors to perform the steps of: generating a plurality of split specifications based on a split function included in a container image, wherein the split function partitions a media item based on playback time to generate the plurality of split specifications, and each split specification is associated with a different portion of the media item; for each split specification included in the plurality of split specifications, generating one or more different map output files included in a plurality of map output files based on the split specification and a map function included in the container image; and generating one or more final output files based on the plurality of map output files and a collect function included in the container image, wherein the one or more final output files are subsequently used to perform at least one of an evaluation operation on, a modification operation on, and a representation operation with respect to the media item. 12. The one or more non-transitory computer readable media of claim 11 , wherein the container image includes a scalable media application and one or more operating system (OS) dependencies of the scalable media application. 13. The one or more non-transitory computer readable media of claim 11 , wherein the map function operates on a media-related object as a first class object. 14. The one or more non-transitory computer readable media of claim 11 , wherein generating the plurality of split specifications comprises transmitting a task request to a task engine that, in response, acquires a first container associated with the container image, and causes the first container to execute the split function on an uncompressed and decoded version of the media item. 15. The one or more non-transitory computer readable media of claim 11 , further comprising executing the container image on a compute instance included in a cloud or other distributed computing system to generate a first container included in a plurality of containers associated with the container image. 16. The one or more non-transitory computer readable media of claim 11 , wherein generating the plurality of map output files comprises: causing a first container associated with the container image to determine a first plurality of frames included in the media item based on a first split specification included in the plurality of split specifications; causing the first container to execute the map function on the first plurality of frames to generate a first map output file included in the plurality of map output files; causing a second container associated with the container image to determine a second plurality of frames included in the media item based on a second split specification included in the plurality of split specifications; and causing the second container to execute the map function on the second plurality of frames to generate a second map output file included in the plurality of map output files. 17. The one or more non-transitory computer readable media of claim 11 , wherein generating the one or more final output files comprises acquiring a first container associated with the container image and causing the first container to execute the collect function on the plurality of map output files. 18. The one or more non-transitory computer readable media of claim 11 , wherein each split specification is associated with a different shot sequence included in the media item. 19. The one or more non-transitory computer readable media of claim 11 , wherein the media item comprises at least one of video content, encoded video content, audio content, encoded audio content, and text content. 20. A system, comprising: one or more memories storing instructions; and one or more processors that are coupled to the one or more memories and, when executing the instructions, are configured to: generate a plurality of split specifications based on a split function included in a container image, wherein the split function partitions media content based on playback time to generate the plurality of split specifications, and each split specification is associated with a different portion of the media content; generate a plurality of map output files
Hypervisors; Virtual machine monitors · CPC title
Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues · CPC title
Execution paradigms, e.g. implementations of programming paradigms · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.