A computer-implemented method, non-transiential computer-readable media, and a system for executing custom algorithms on media items

BR112020004043B1Active Publication Date: 2026-09-01NETFLIX INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
BR112020004043
Authority / Receiving Office
BR · BR
Patent Type
Patents
Current Assignee / Owner
Publication Date
2026-09-01

Smart Images

  • Figure 00000054_0000
    Figure 00000054_0000
  • Figure 00000055_0000
    Figure 00000055_0000
  • Figure 00000056_0000
    Figure 00000056_0000
Patent Text Reader

Abstract

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 part 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 generates one or more final output files based on the map output files and a collection function included in the container image. The final output file(s) are subsequently used to perform at least one activated evaluation operation, one modification operation, and one representation operation on the media item.
Need to check novelty before this filing date? Find Prior Art

Description

1 / 47 A COMPUTER-IMPLEMENTED METHOD, NON-TRANSIENTIAL COMPUTER-READABLE MEDIA, AND A SYSTEM FOR EXECUTING CUSTOM ALGORITHMS ON MEDIA ITEMS CROSS-REFERENCE TO RELATED REQUESTS Field of Various Modalities

[0001] This application claims the priority benefit of title of the U.S. Provisional Patent Application, “Media Innovation Platform,” filed August 31, 2017, and serial number 62 / 553024, and claims the priority benefit of title of the U.S. Patent Application, “Scalable Techniques for Executing Custom Algorithms on Media Items,” filed August 29, 2018, and serial number 16 / 116842. The subject matter of these related applications is incorporated herein by reference. BACKGROUND Various Modalities Field

[0002] Embodiments of the present invention generally relate to media processing platforms and, more specifically, to scalable techniques for executing customized algorithms on media items. Description of the Related Technique

[0003] Often, custom algorithms are incorporated into scalable applications that enable the custom algorithms to run with high throughput. In these implementations, an embedded custom algorithm consists of a series of steps, while the associated scalable application consists of a set of instructions that configures multiple instances of Petition 870250109370, dated 11 / 28 / 2025, page 14 / 73 2 / 47 computation to perform the series of steps that make up the embedded custom algorithm. In a more particular implementation, a scalable media application includes additional instructions that allow the scalable media application to effectively run the custom algorithm on media items with high throughput to achieve one or more objectives. For example, a custom computer vision algorithm could be embedded in a marketing application that analyzes the different films included in a media content library to identify the most compelling action scenes involving popular actors or actresses. In another example, a custom subtitle synchronization algorithm could be embedded in a quality assurance application that automatically detects subtitle synchronization errors in the different films included in the media content library.

[0004] Building a scalable media application that can reliably and efficiently execute a custom algorithm with high throughput is typically a complex and difficult process. A software engineer must usually ensure that the scalable media application meets the scope, efficiency, and security requirements associated with large-scale distributed processing of potentially proprietary media items. To do this, the software engineer needs to design the scalable media application to securely and efficiently acquire media items in a wide variety of media formats, and securely generate and distribute tasks across multiple worker computing instances for concurrent processing. Petition 870250109370, dated 11 / 28 / 2025, page 15 / 73 3 / 47 through the custom algorithm, and securely store the final output of the scalable media application. Therefore, developing a scalable media application requires significant manual effort, as well as technical knowledge related to the embedded custom algorithm(s), dynamic workflows, media processing techniques such as encoding and decoding, secure communication techniques, and resource allocation and load balancing techniques. A lack of knowledge in one or more of these areas can prevent a software developer from properly incorporating a custom algorithm into a scalable media application.While a software developer might be able to generate a prototype application that meets more limited processing requirements involving a specific custom algorithm, that prototype application would likely not be able to meet the more demanding processing requirements related to the distributed processing of proprietary media items.

[0005] There are certain conventional processing platforms that can be used to reduce the manual effort and amount of technical knowledge required to successfully incorporate custom algorithms into scalable media applications. For example, some streaming video service providers implement internal media processing platforms that provide a secure interface to a media content library, media processing tools, a load balancing subsystem, and a storage subsystem. Petition 870250109370, dated 11 / 28 / 2025, page 16 / 73 4 / 47 secure. One disadvantage of these types of media processing platforms, however, is that the media processing platform and associated applications constitute a distributed monolith. In a distributed monolith, changes to one application or service generally require changes to other applications and services. Consequently, modifying a scalable media application that uses such a platform is only possible when the entire media processing platform is rebuilt.

[0006] To enable more flexible updates for scalable media applications, a software developer can implement the scalable media application using a generalized distributed computing framework. Each scalable media application that uses a generalized distributed computing framework is built independently and exists separately and independently of other scalable media applications that use the generalized distributed computing framework. Therefore, a scalable media application that uses the generalized distributed computing framework does not need to be rebuilt when another application that uses the generalized distributed computing framework is modified.One drawback of this approach, however, is that ensuring that each worker computing instance managed through the distributed computing framework provides the appropriate runtime environment for a given scalable media application is quite difficult, if not impossible. For example, if two different scalable media applications require conflicting operating system (OS) dependencies, then... Petition 870250109370, dated 11 / 28 / 2025, page 17 / 73 5 / 47 A given instance of worker computing managed through the distributed computing framework will not be able to properly run at least one of the scalable media applications. Another disadvantage is that developing scalable media applications using a generalized distributed computing framework also requires in-depth technical knowledge of media processing techniques, which, as discussed above, can create a substantial technical obstacle for many software developers.

[0007] As illustrated above, what is needed in the technique are more effective techniques for executing customized algorithms on media items with high productivity. SUMMARY

[0008] One embodiment of the present invention establishes a computer-implemented method for executing customized algorithms on media items. The method includes generating multiple split specifications based on a split function included in a container image, where each split specification is associated with a different portion of a media item; generating multiple 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 map output files and a collection function included in the container image, where the one or more final output files are subsequently used to perform at least one evaluation operation on, one modification operation on, and one representation operation on the media item.

[0009] At least one technical advantage of the techniques Petition 870250109370, dated 11 / 28 / 2025, page 18 / 73 One of the disclosed advantages over prior art solutions is that, with the disclosed techniques, custom algorithms can be executed more easily and reliably on media items through distributed computing resources. In particular, the disclosed techniques provide a split-map-collect workflow that is capable of executing custom algorithms on media items with high throughput using containers that include the appropriate operating system (OS) dependencies. Furthermore, the disclosed techniques automatically perform media and security operations, reducing the amount of manual design effort and technical knowledge required to securely and successfully execute the custom algorithm on a wide variety of potentially proprietary media items. These technical advantages provide one or more technological advancements over prior art. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] In order to understand in detail the manner in which the aforementioned characteristics of the various embodiments may be understood, a more particular description of the inventive concepts, briefly summarized above, may be obtained by reference to various embodiments, some of which are illustrated in the accompanying drawings. It should be noted, however, that the accompanying drawings illustrate only typical embodiments of the inventive concepts and, therefore, should not be considered limiting in any way, and that other equally effective embodiments exist.

[0011] Figure 1 is a conceptual illustration of a system configured to implement one or more aspects of the present invention; Petition 870250109370, dated 11 / 28 / 2025, page 19 / 73 7 / 47 Figure 2 illustrates a workflow established by the workflow mechanism of Figure 1, according to various embodiments of the present invention; Figure 3 illustrates how one of the containers in Figure 2 executes a customized algorithm in a given division, according to various embodiments of the present invention; and Figure 4 is a flow diagram of the steps of the method for executing customized algorithms on media items, according to various embodiments of the present invention. DETAILED DESCRIPTION

[0012] In the following description, numerous specific details are set forth to provide a fuller understanding of the various embodiments. However, it will be evident to a person skilled in the art that the inventive concepts can be practiced without one or more of these specific details.

[0013] Many media providers have media content libraries that include numerous media items. Each media item includes any quantity and type of content associated with any media format in any technically feasible way. Examples of media items include, without limitation, an MPEG-4 video file that includes a source video sequence and an H.264 encoded video file that includes an encoded video sequence. A streaming video service provider might have a media content library that, for each of thousands of video titles, includes an MPEG-4 video file and multiple H.264 encoded video files.

[0014] Often, to achieve one or more objectives Petition 870250109370, dated 11 / 28 / 2025, page 20 / 73 With high throughput, the media provider develops a custom algorithm, incorporates the custom algorithm into a scalable media application, and then runs the scalable media application on the media items included in the media content library. The embedded custom algorithm consists of a series of steps, while the associated scalable media application includes additional instructions that configure numerous computing instances to perform the series of steps on the media items. Some examples of objectives include, but are not limited to, A / B testing, catalog-wide recoding, watermark frames included in video sequences, selection of attractive images or frame sequences for advertising purposes, and detection of caption synchronization errors.

[0015] In a conventional system, creating a scalable media application that can reliably and efficiently execute a custom algorithm with high throughput is typically a complex process. For example, in some conventional systems, a software engineer needs to design the scalable media application to securely and efficiently acquire media items in a wide variety of media formats, securely generate and distribute tasks across multiple worker computing instances for concurrent processing via a custom algorithm, and securely store the final output of the scalable media application. Consequently, developing a scalable media application requires significant manual effort, as well as technical knowledge related to the embedded custom algorithm, dynamic workflows, and processing techniques. Petition 870250109370, dated 11 / 28 / 2025, page 21 / 73 9 / 47 media (e.g., encoding, decoding, etc.), secure communication techniques, and resource allocation and load balancing techniques. A lack of knowledge in one or more of these areas can prevent a software developer from being able to properly incorporate a custom algorithm into a scalable media application that can run efficiently on a relatively large media content library.

[0016] There are certain conventional media processing platforms that can be used to reduce the manual effort and amount of technical knowledge required to successfully incorporate custom algorithms into scalable media applications. A disadvantage of these types of conventional media processing platforms, however, is that the conventional media processing platform and associated applications typically constitute a distributed monolith. In a distributed monolith, changes to one application or service generally require changes to other applications and services. Consequently, modifying a scalable media application that uses such a platform is only possible when the entire platform is rebuilt. As a result, changes to a given custom algorithm may take days or weeks to become available through the associated scalable media application.

[0017] To enable more flexible updates for scalable media applications, a software developer can implement the scalable media application using a generalized distributed computing framework. Petition 870250109370, dated 11 / 28 / 2025, page 22 / 73 10 / 47 Generalized distributed computing frameworks allow applications using the framework to be modified and built independently of the framework and other applications using the framework. A drawback of this approach, however, is that ensuring that each worker computing instance managed through a distributed computing framework provides the appropriate runtime environment for a given scalable media application is quite difficult, if not impossible. Another drawback is that developing scalable media applications using a generalized distributed computing framework also requires in-depth technical knowledge of media processing techniques, which, as discussed above, can create a substantial technical hurdle for many software developers.

[0018] With the techniques disclosed, however, an incumbency management subsystem and an associated platform agent reduce the amount of technical knowledge required to execute a custom algorithm with high productivity, ensuring the appropriate execution environment for the custom algorithm. In general, the incumbency management subsystem and the platform agent implement any number of conventional techniques to securely and efficiently acquire media items from the media content library, correctly interpret a wide variety of media formats, securely generate and distribute tasks across multiple worker computing instances, and securely store the results produced by the scalable media applications. Unlike a conventional processing platform Petition 870250109370, dated 11 / 28 / 2025, page 23 / 73 In a typical 11 / 47 configuration, however, the incumbency management subsystem directs an optimized workflow for media items that uses independent executable code instances known as containers.

[0019] A custom algorithm is incorporated into a scalable media application that includes, without limitation, three functions: a split function, a map function, and a collection function. The split function partitions one or more media titles into smaller units or divides them. The map function applies the custom algorithm to a given split. The collection function combines the results of applying the custom algorithm to all splits. The scalable media application, the platform agent, and any operating system dependencies are combined to create a container image. A container image is a static file including independent executable code that provides a self-contained software package, including, without limitation, any number of applications and their associated dependencies. When run on a compute instance, the container image generates a container that provides the dependencies and can run any included applications.For explanatory purposes, a container generated from a container image that includes a specific scalable media application is associated with that scalable media application.

[0020] Upon receiving an assignment request specifying a container image and a list of one or more media items, a workflow mechanism included in the assignment management subsystem generates a split task specifying the one or more items of Petition 870250109370, dated 11 / 28 / 2025, page 24 / 73 12 / 47 media. In response to the split task, a platform agent included in an associated container acquires the media items from the media content library. The platform agent then executes the split function on the media items to determine the splits. Subsequently, the workflow engine generates a different map task for each split. Each map task is processed by a platform agent included in a potentially different associated container. Consequently, any number of associated containers can process the map tasks simultaneously, sequentially, or in any combination thereof. In response to a given map task, the platform agent executes the map function on the portion(s) of the media item(s) associated with the split.It is important to emphasize that the platform agent ensures that the appropriate portion(s) of the media item(s) are available for processing via the map function for a variety of different media formats. The platform agent then stores the results of the map function in secure storage. After the completion of all map tasks associated with the assignment, the workflow engine generates a collection task. In response to the collection task, a platform agent included in an associated container executes the collection function on the results of the different map functions and then stores the results of the collection function in secure storage.

[0021] Advantageously, the incumbency processing platform and the associated platform agent address several disadvantages of running custom algorithms in Petition 870250109370, dated 11 / 28 / 2025, page 25 / 73 13 / 47 media items through conventional scalable media applications and conventional processing platforms. Embedding custom algorithms in containers that include the appropriate OS dependencies enables reliable execution of the custom algorithms and isolates the custom algorithms associated with one container from changes to other custom algorithms associated with other containers. The predefined split-map-collect workflow automatically provides opportunities for simultaneous execution of the custom algorithm on different portions of the source media items. Furthermore, the incumbent processing platform and associated platform agent provide functionality that reduces the amount of manual design effort and technical knowledge required to safely and successfully execute the custom algorithm on a wide variety of potentially proprietary media items.These technical advantages provide one or more technological advances compared to the previous technique. System Overview

[0022] Figure 1 is a conceptual illustration of a system 100 configured to implement one or more aspects of the present invention. As shown, the system 100 includes, without limitation, a media content library 198, a secure storage 120, any number of computing instances 110, an image registry 130, any number of containers 180, and an incumbent request 190. For explanatory purposes, multiple instances of similar objects are denoted with reference numbers that identify the object and numbers in parentheses that Petition 870250109370, dated 11 / 28 / 2025, page 26 / 73 14 / 47 identify the instance where necessary.

[0023] In various embodiments, any number of the system components 100 may be distributed across multiple geographic locations or implemented in one or more cloud computing environments (i.e., encapsulated shared resources, software, data, etc.) in any combination. In alternative embodiments, the system 100 may include any number of media content libraries 190, any amount and type of secure storage 120, any number of image records 130, and any number of incumbency requests 190.

[0024] The 198 media content library includes, without limitation, any number of 196 media items. Each 196 media item includes any quantity and type of video content, encoded video content, audio content, encoded audio content, and text content in any combination and using any media format. Some examples of 196 media items include, without limitation, an MPEG-4 video file that includes a source video sequence, an H.264 encoded video file that includes an encoded video sequence, a Windows Media Audio file that includes a source audio sequence, and a text file that includes text content.

[0025] Secure storage 120 includes any quantity and type of memory resources capable of securely storing data. For example, in some embodiments, secure storage 120 is managed by a secure storage subsystem and stores data in an encrypted form. In several embodiments, secure storage 120 can be replaced by any type of Petition 870250109370, dated 11 / 28 / 2025, page 27 / 73 15 / 47 storage that is implemented in any technically feasible way. For example, secure storage 120 can be replaced by any quantity and type of cloud-based memory resources that store any quantity and type of data in any form.

[0026] As shown for compute instance 110 (1), each compute instance 110 includes, without limitation, a processor 112 and a memory 116. The processor 112 may be any instruction execution system, apparatus, or device capable of executing instructions. For example, the processor 112 may comprise a central processing unit (CPU), a graphics processing unit (GPU), a controller, a microcontroller, a state machine, or any combination thereof. The memory 116 stores content, such as software applications and data, for use by the processor 112 of compute instance 110.

[0027] Memory 116 may be one or more readily available memory, such as random access memory (RAM), read-only memory (ROM), floppy disk, hard disk, or any other form of digital storage, local or remote. In some embodiments, a storage device (not shown) may supplement or replace memory 116. The storage may include any number and type of external memories that are accessible to the processor 112. For example, and without limitation, the storage may include a Secure Digital Card, an external Flash memory, a portable compact read-only memory disk (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. Petition 870250109370, dated 11 / 28 / 2025, page 28 / 73 16 / 47 mentioned above.

[0028] Each compute instance 110 is configured to implement one or more applications or application subsystems. Furthermore, as described in detail below, each compute instance 110 can implement one or more containers 180, each executing any number of applications. For explanatory purposes only, each application is represented as residing in memory 116 of a single compute instance 110 and running on a processor 112 of the single compute instance 110. However, as those skilled in the art will recognize, the functionality of each application can be distributed among any number of other applications residing in memory 116 of any number of compute instances 110 and running on processors 112 of any number of compute instances 110 in any combination. Furthermore, the functionality of any number of applications or subsystems can be consolidated into a single application or subsystem.

[0029] In particular, compute instance 110 (1) enables system 100 to execute custom algorithms (not shown in Figure 1) on media items 196 with high throughput. In general, the efficient and reliable execution of a custom algorithm on media items with high throughput is a complex process involving the incorporation of the custom algorithm into a scalable media application. As referred to in this document, an embedded custom algorithm is composed of a series of steps, while the associated scalable application is composed of a set of instructions that configures multiple instances of Petition 870250109370, dated 11 / 28 / 2025, page 29 / 73 17 / 47 computation to perform the series of steps that make up the embedded custom algorithm.

[0030] In many conventional systems, developing a conventional scalable media application requires significant manual effort, as well as technical knowledge related to the embedded custom algorithm(s), dynamic workflows, media processing techniques such as encoding and decoding, secure communication techniques, and resource allocation and load balancing techniques. A lack of knowledge in one or more of these areas can prevent a software developer from properly incorporating a custom algorithm into a conventional scalable media application.

[0031] There are certain conventional media processing platforms that can be used to reduce the manual effort and amount of technical knowledge required to successfully incorporate custom algorithms into scalable media applications. As those versed in the technical field will recognize, a disadvantage of these types of conventional media processing platforms, however, is that changes to an application or service using the platform often require changes to other applications and services using the platform. Consequently, modifying a conventional scalable media application using such a platform is only possible when the entire conventional media processing platform is rebuilt.

[0032] To enable more flexible updates for mainstream scalable media applications, a Petition 870250109370, dated 11 / 28 / 2025, page 30 / 73 18 / 47 A software developer can implement the conventional scalable media application using a generalized distributed computing framework. As those versed in the technique will recognize, an application that uses a generalized distributed computing framework does not necessarily need to be rebuilt when another application that uses the generalized distributed computing framework is modified. A disadvantage of this approach, however, is that ensuring that each worker computing instance managed through the distributed computing framework provides the appropriate runtime environment for a given application is quite difficult, if not impossible.Another disadvantage is that developing conventional scalable media applications using a generalized distributed computing framework also requires in-depth technical knowledge of media processing techniques, which, as discussed above, can create a substantial technical obstacle for many software developers. Running Custom Algorithms on Media Items Using Containers

[0033] To address the above problems, system 100 includes, without limitation, an incumbency management subsystem 150 and a platform agent 134 which together establish a split-map-collect workflow using containers. The split-map workflow enables simultaneous processing of each media item 196. The incumbency management subsystem 150 resides in memory 116 of compute instance 110 (1) and runs on processor 112 of compute instance 110 (1). The platform agent 134 is an interface between the subsystem Petition 870250109370, dated 11 / 28 / 2025, page 31 / 73 19 / 47 of incumbency management 150 and the scalable media application 140. For explanatory purposes only, the combination of the incumbency management subsystem 150 and the platform agent 134 is also referred to in this document as the incumbency management platform. Notably, in several embodiments, the incumbency management platform may treat (e.g., operates on, processes, etc.) any media-related object as a first-class object. For example, in some embodiments, the incumbency management platform treats frames as first-class objects for video content and channels as first-class objects for audio content.

[0034] As those skilled in the art will recognize, each container 180 is an independent executable instance of code that is generated when a container image 132 is run on a compute instance 110. As shown, the system 100 includes an image registry 130 that includes, without limitation, any number of container images 132. Each container image 132 is a static file that includes independent executable code. The independent executable code provides a self-contained software package, including, without limitation, the platform agent 134, a scalable media application 140, and dependencies 136. The dependencies 136 include, without limitation, operating system dependencies and language-specific dependencies that provide a runtime environment for the platform agent 134 and the scalable media application 140.

[0035] When executed on a compute instance 110, the container image 132 generates the container 180 which Petition 870250109370, dated 11 / 28 / 2025, page 32 / 73 20 / 47 provides dependencies 136 and can run platform agent 134 and scalable media application 140. As referred to in this document, the container 180 generated from the container image 132 that includes a given scalable media application 140 is associated with the scalable media application 140. Any number of compute instances 110 can deploy containers 180. Furthermore, each compute instance 110 can simultaneously deploy any number of containers 180 associated with any number of container images 132.

[0036] As shown, the scalable media application 140 includes, without limitation, a split function 142, a map function 144, and a collection function 146. The split function 142 partitions the media item(s) 196 into smaller units or splits. The map function 144 applies a custom algorithm associated with a given split. The collection function 146 combines the results of applying the custom algorithm associated with all splits. Notably, the platform agent 134 provides any number and type of built-in functions that the scalable media application 140 can use. Each of the split function 142, the map function 144, and the collection function 146 can be a custom function or a built-in function provided by the platform agent 134.

[0037] A custom split function 142 example generates a first split that includes the first 5 minutes of a media item 196 (5) and a second split that includes the last 3 minutes of media item 196 (5). Another custom split function 142 example generates the splits based on media item 196 (1) which is a video sequence. Petition 870250109370, dated 11 / 28 / 2025, page 33 / 73 21 / 47 of the source for a specific motion and in media item 196(2) which is a video sequence encoded for the movie. A first split includes uncompressed and decoded versions of the 102nd frames of media items 196(1) and 196(2), and a second split includes uncompressed and decoded versions of the 2099th frames of media items 196(1) and 196(2). An example of an integrated 142 split function is a time-based splitter that partitions media item 196(x) based on the runtime associated with media item 196(x). Another example of an integrated 142 split function is a snapshot-based splitter that partitions media item 196(x) into snapshot sequences based on snapshot change data. Each snapshot sequence includes a set of frames that generally have similar spatiotemporal properties and are executed over an uninterrupted period of time.

[0038] An example of an integrated map function 144 does not perform operations and is used to create a scalable media application 140 that performs the split function 142 and the collection function 146 without applying a custom algorithm to each split. An example of an integrated collection function 146 is a Zip file collector that collects map output files generated by map functions 144 based on the different splits into a single Zip file. Another example of an integrated collection function 146 is a concatenation collector that concatenates byte content from map output files generated by map functions 144 based on the different splits in an order associated with the splits. In alternative embodiments, any number and type of Petition 870250109370, dated 11 / 28 / 2025, page 34 / 73 22 / 47 integrated functions in any combination can be acquired and used in the scalable media application 140 in any technically feasible way.

[0039] The split function 142, the map function 144, and the collection function 146 can be defined in any technically feasible way and in any language. For example, in some embodiments, the input to the split function 142 is one or more media items 196 and the output of the split function 142 is a split specification file written in JavaScript Object Notation (JSON). For video sources, the split specification file includes the boundaries of each split represented by the start and end frame numbers. Each split is identified by a split unit identifier. The split specification file also allows the specification of overlaps between consecutive splits.

[0040] Platform agent 134 acquires tasks (i.e., discrete portions of work) for execution by the scalable media application 140, performs preprocessing operations on files that are handled by the scalable media application 140, invokes the functions included in the scalable media application 140, and performs postprocessing operations on the results generated by the scalable media application 140. Platform agent 134 may acquire tasks in any technically feasible manner. For example, in some embodiments, platform agent 134 monitors one or more durable priority queues for tasks. Preprocessing and postprocessing operations may include any number and type of security-related operations, media processing operations, operations of Petition 870250109370, dated 11 / 28 / 2025, page 35 / 73 23 / 47 formatting, and so on.

[0041] For example, in some embodiments, platform agent 134 securely acquires an encoded video sequence from the media content library 198, decodes the encoded video sequence, and securely loads the frames corresponding to a split into secure storage 120. In the same or other embodiments, platform agent 134 encrypts the results produced by the scalable media application 140, securely loads the encrypted results into secure storage 120 as final output files, removes all temporary files and directories created by the scalable media application 140, and notifies the incumbency management subsystem 150 when the tasks are completed. In some embodiments, platform agent 134 performs additional operations such as collecting and reporting usage metrics and automatically converting video sequences into JPEG or Portable Network Graphics (PNG) images.

[0042] As shown, the incumbency management subsystem 150 includes, without limitation, an incumbency interface mechanism 152, a state mechanism 154, a workflow mechanism 162, an incumbency state database 164, a task mechanism 172, and an autoscaler 174. The incumbency interface mechanism 152 is an outward-facing component that enables other applications and users to submit and manage incumbency requests 190. The incumbency interface mechanism 152 can be implemented in any technically feasible way. For example, in some implementations, the incumbency interface mechanism 152 hosts any Petition 870250109370, dated 11 / 28 / 2025, page 36 / 73 24 / 47 number of representational state transfer (REST) ​​application programming interfaces (APIs).

[0043] Each assignment request 190 includes, without limitation, a picture identifier 192 and a list of media item identifiers. The picture identifier 192 uniquely identifies one of the container pictures 132 included in the picture record 130. The list of media item identifiers includes any number of media item identifiers (not shown). Each media item identifier uniquely identifies one of the media items 196 included in the media content library 198. In various embodiments, the assignment request 190 may specify any amount of additional information relevant to the requested work in any technically feasible manner. In alternative embodiments, the assignment request 190 may specify the container picture 132 and any number of media items 196 in any technically feasible manner.For example, in some modes, assignment request 190 may specify a remote file location for media item 196(x). In such modes, media item 196(x) is not necessarily included in the media content library 198.

[0044] Upon receiving a 190 (x) assignment request associated with a user, the 152 assignment interface mechanism generates a new assignment (not shown). As part of generating the new assignment, the 152 assignment interface mechanism obtains the 132 (z) container image from image record 130 based on image identifier 192. The 152 assignment interface mechanism Petition 870250109370, dated 11 / 28 / 2025, page 37 / 73 25 / 47 provides a 196 assignment identifier that uniquely identifies the new assignment for the user.

[0045] After the assignment interface mechanism 152 generates a new assignment, the workflow mechanism 162 executes the assignment. To execute the assignment corresponding to the assignment request 190(x), the workflow mechanism 192 triggers a split-map-collect workflow (not shown in Figure 1) based on the container image 132(z) and the list of media item identifiers. More specifically, the workflow mechanism 192 executes the workflow for the specified media item(s) 198 through the list of media item identifiers using any number of the containers 180 associated with the container image 132(z). Each assignment includes, without limitation, a split task followed by N map tasks (where N is the total number of splits), followed by a collect task.

[0046] First, workflow mechanism 162 generates a split task specifying the media item list identifier 194. Workflow mechanism 162 causes platform agent 132 included in a container 180 associated with container image 132(z) to execute the split task using the split function 142. As part of executing the split task, platform agent 132 obtains the media item(s) 196 from the media component library 198 based on the media item list identifier 194. In alternative modes, the assignment request 190 can specify any number of media items 196 and platform agent 132 Petition 870250109370, dated 11 / 28 / 2025, page 38 / 73 26 / 47 may acquire media item(s) 196 in any technically feasible manner. For example, in some embodiments, the assignment request 190 may specify file location(s) for any number of media items 196 and the platform agent 132 may obtain media item(s) 196 based on the file location(s).

[0047] After the split task is completed, workflow engine 162 generates a different map task for each of the splits determined by the split task. For each map task, workflow engine 162 causes the platform agent 132 included in a potentially different container 180 associated with the container image 132(z) to execute the map task using the map function 144. Any number of containers 180 can execute any number of map tasks sequentially, simultaneously, or in any combination thereof.

[0048] After the completion of all map tasks, workflow engine 162 causes platform agent 132 included in one of the containers 180 associated with container image 132(x) to execute the collection task using collection function 146. Workflow engine 162 can determine that all map tasks have completed execution in any technically feasible way. For example, in some embodiments, the execution of a given map task generates one or more associated map output files, and workflow engine 172 considers that the map tasks have completed execution when the map output files are successfully generated. In other embodiments, workflow engine 172 Petition 870250109370, dated 11 / 28 / 2025, page 39 / 73 27 / 47 determines whether the map tasks have completed execution based on the messages that pass between the workflow mechanism 172 and the recipients 180. In general, the collection task generates one or more final output files. The final output file(s) are subsequently used to perform at least one evaluation operation, modification operation, and representation operation with respect to the media item(s) 196 associated with the assignment.

[0049] The workflow mechanism 162 can cause the different instances of the platform agent 132 included in different containers 180 to execute tasks in any technically feasible way. For example, in some embodiments, the workflow mechanism 162 uses the task mechanism 172 to cause the different instances of the platform agent 132 to execute tasks. The task mechanism 172 is a priority-based messaging system that sends tasks to containers 130 and provides additional functionality such as implicit retries at the platform level. To execute a task, the workflow mechanism 162 adds the task to one of several durable priority queues managed by the task mechanism 172.

[0050] The autoscaler 174 understands the weights of the applications and distributes the available compute resources among the active scalable media applications 140 based on the associated weights and loads. To assign a compute instance 110 to a given scalable media application 140, the autoscaler 174 runs the container image 132 associated with the scalable media application 140 on the compute instance 110. Importantly, if the Petition 870250109370, dated 11 / 28 / 2025, page 40 / 73 28 / 47 autoscaler 174 detect that there are no containers 130 associated with a scalable media application 140 (x) for which a task is exceptional, autoscaler 174 executes the container image 180 (x) that includes the scalable media application 140 (x) to generate a new container 130.

[0051] In alternative embodiments, any component included in the system 100 can perform any quantity and type of resource management and / or container management operations in any technically feasible manner. For example, in some embodiments, the workflow mechanism 162 distributes computing resources among active scalable media applications 140, generates the containers 130, and transmits tasks directly to the different instances of the platform agents 134.

[0052] The assignment status database 164 stores the status of assignments based on assignment identifiers 192. The status of each assignment indicates the current stage in the workflow and the current status (e.g., in progress, pending, completed, failed) of the tasks associated with the current stage. For example, the status of a given assignment might be that the assignment is in the map stage and the map tasks associated with 200 of 500 splits have been successfully completed. The workflow engine 162 uses the assignment status database 164 to trigger the split-map-collect workflow for each assignment, and the status engine 154 uses the assignment status database 164 to provide the assignment status to users.

[0053] The state mechanism 154 is an application of Petition 870250109370, dated 11 / 28 / 2025, page 41 / 73 29 / 47 user interface that enables users to determine the status of each assignment using the associated assignment identifier 196. The status mechanism 154 can provide the status of each assignment in any technically feasible way and at any level of granularity. In some modes, the status mechanism 154 is a GUI that graphically represents the progress of each assignment broken down into the split, map, and collect stages. In the same or other modes, the status mechanism 154 graphically displays a list of tasks in progress, pending, completed, and failed.

[0054] Note that the techniques described in this document are illustrative and not restrictive, and may be modified without departing from the broader spirit and scope of the invention. Many modifications and variations will be apparent to those with common knowledge of the art without departing from the scope and spirit of the embodiments and techniques described. As a general subject, the techniques described in this document are applicable to triggering a split-map-collect workflow that uses any number of containers 180 to execute custom algorithms on media items 196.

[0055] For example, in alternative embodiments, the workflow mechanism 162 may cause the containers to perform the split function 142, the map function 144, and the collect function 146 in any technically feasible way that is consistent with the split-map-collect workflow. Furthermore, in some alternative embodiments, the functionality of the applications and components included in the system 100, as described Petition 870250109370, dated 11 / 28 / 2025, page 42 / 73 30 / 47 in this document, can be distributed across any number of other applications and components that may or may not be included in system 100. For example, any amount of the platform agent functionality 134 and the task engine 172 can be included in the workflow engine 162. Automatically executing the Split-Map-Collect Workflow

[0056] Figure 2 illustrates the workflow 210 established by the workflow mechanism 162 of Figure 1, according to various embodiments of the present invention. Although not shown in Figure 2, the workflow mechanism 162 executes the workflow 210 in response to the assignment request 190, specifying the container image 132 (x) and the media item 196 (y). For explanatory purposes only, containers 180 (1) - 180 (5) are associated with the container image 132 (x) and the media item 196 (y) is a video file.

[0057] As shown, workflow 210 begins when workflow mechanism 162 causes platform agent 134 included in container 180(1) to execute split function 142 on media item 196(y). Split function 142 generates a split specification file (not shown in Figure 2) that specifies splits 220(1)–220(5). Split 220(1) includes, without limitation, frames 0–47 of media item 196(y). Split 220(2) includes, without limitation, frames 48–95 of media item 196(y). Split 220(3) includes, without limitation, frames 96–143 of media item 196(y). Split 220(4) includes, without limitation, frames 144–191 of media item 196(y). THE Petition 870250109370, dated 11 / 28 / 2025, page 43 / 73 31 / 47 division 220 (5) includes, without limitation, frames 192-239 of media item 196 (y). In alternative embodiments, the division function 142 can partition any number of media items 196 into any number of divisions 220, and each division 220 can include a different number of media objects (e.g., frames, channels, etc.).

[0058] After the split function 142 has finished executing, the workflow mechanism 162 causes the different instances of the platform agent 134 included in containers 180(1) - 180(5) to execute the associated instance of the map function 144 in, respectively, split 220(1) - 220(5). Note that containers 180(1) - 180(5) can execute substantially in parallel with each other. After the map functions 144 have finished executing, the workflow mechanism 162 causes container 180(1) to execute the collection function 146 to generate any number of final output files (not shown). The final output file(s) is / are the consolidated result(s) of running the scalable media application 140 associated with the container image 132 (x) on the media item 196 (y).

[0059] Figure 3 illustrates how one of the containers 180 in Figure 2 executes a custom algorithm in a given division 220, according to various embodiments of the present invention. More specifically, Figure 3 represents the map task operations that the platform agent 134 and the map function 144 included in container 180 (1) perform in division 220 (1) in response to a map task that specifies division 220 (1). Notably, the map function 144 incorporates the custom algorithm. Petition 870250109370, dated 11 / 28 / 2025, p. 44 / 73 32 / 47 For illustrative purposes only, Figure 3 shows the map task operations as a series of numbered bubbles.

[0060] First, as represented by the numbered bubble 1, platform agent 134 prepares map input files 312 to be processed by map function 144. As shown, map input files 312 are included in secure storage 120 which is made available to map function 144 with a network mounting solution. Map input files 312 describe, without limitation, the frames included in division 220 (1). As part of preparing map input files 312, platform agent 134 performs one or more operations (e.g., copy operations, mount operations, etc.) that enable map input files 312 to be accessible to container 180 (1) via an input directory 310.

[0061] Subsequently, as represented with bubble number 2, platform agent 134 prepares a context 322. Although not shown, context 322 includes, without limitation, any amount and type of information required by map function 144 to execute on division 220 (1). In particular, context 322 specifies the location of the input directory 310, the location of an output directory 390, and any number of media attributes associated with division 220 (1). An example of a media attribute is frames per second. Platform agent 134 then invokes map function 144 with context 144 (bubble number 3).

[0062] As represented by the numbered bubble 4, the map function 144 reads the context 322 and the input files of Petition 870250109370, dated 11 / 28 / 2025, page 45 / 73 33 / 47 map 312. The map function 144 executes the custom algorithm embedded in the map function 144 (numbered bubble 5). As represented with numbered bubble 6, the map function 144 writes any number of map output files 392 to the output directory 390. The map output files 392 are the results of executing the custom algorithm on division 220 (1).

[0063] After map function 144 finishes executing and as represented with bubble number 7, platform agent 134 stores map output files 392 in secure storage 120. Finally, as represented with bubble number 8, platform agent 134 performs any number of cleanup operations. An example of a cleanup operation is deleting all temporary files and directories that map function 144 created while processing split 220 (1).

[0064] Although not represented in Figure 3, prior to the mapping task operations represented by bubbles numbered 1-8, platform agent 134 and split function 142 included in container 180 (1) performed a similar sequence of operations to execute a split task. And, subsequent to the map task operations represented by bubbles numbered 1 to 8, platform agent 134 and collection function 146 included in container 180 (1) performed a similar sequence of operations to execute a collection task.

[0065] Figure 4 is a flow diagram of the steps of the method for executing customized algorithms on media items, according to various embodiments of the present invention. Although the steps of the method are described with reference Petition 870250109370, dated 11 / 28 / 2025, page 46 / 73 34 / 47 to the systems of Figures 1-3, persons skilled in the art will understand that any system configured to implement the steps of the method, in any order, falls within the scope of the present invention.

[0066] As shown, a 400 method begins at step 402, where the incumbent interface mechanism 152 receives incumbent request 190 from a user. Incumbent request 190 specifies, without limitation, image identifier 192, and the list of media item identifiers 194. At step 404, the incumbent interface mechanism 152 initializes a new incumbent based on incumbent request 190 and transmits the incumbent identifier 196 associated with the user. At step 406, the incumbent interface mechanism 152 acquires a target container image 132 from the image registry 130 based on image identifier 192. In alternative embodiments, the incumbent interface mechanism 152 may acquire the target container image 132 in any technically feasible way, based on any type of image identifier.

[0067] In step 408, workflow mechanism 162 causes one of the 180 containers associated with the target container image 132 to execute the split function 142 on the 196 media items specified through the media item identifier list to generate the 220 splits. In step 410, for each 220 split, workflow mechanism 162 causes one of the potentially different 180 containers associated with the target container image 132 to execute the map function 144 on the 220 split to generate one or more map output files 392. In step 412, after the different instances of the map functions 144 Petition 870250109370, dated 11 / 28 / 2025, page 47 / 73 35 / 47 completing execution in divisions 220, workflow mechanism 162 causes one of the containers 180 associated with the target container image 132 to execute collection function 146 on the map output files 292 associated with the different divisions 220 to generate final output file(s). The final output file(s) can be used to perform at least one of an evaluation operation on, a modification operation on, and a representation operation on the media items 196 specified through the media item identifier list.

[0068] In step 414, the incumbent interface mechanism 152 determines whether the incumbent interface mechanism 152 has received a new incumbent request 190. If, in step 414, the incumbent interface mechanism 152 determines that the incumbent interface mechanism 152 has received a new incumbent request 190, then method 400 returns to step 402, where the incumbent interface mechanism 152 and the workflow mechanism 162 execute the new incumbent request 190. If, however, in step 412, the incumbent interface mechanism 152 determines that the incumbent interface mechanism 152 has not received a new incumbent request 190, then method 400 terminates.

[0069] In summary, the disclosed techniques can be used to efficiently execute a custom algorithm on media content across distributed computing resources. The custom algorithm is incorporated into the split, map, and collect functions included in a scalable media application. A platform agent implements the overload functionality. For example, in Petition 870250109370, dated 11 / 28 / 2025, page 48 / 73 36 / 47 In various modes, the platform agent securely acquires media items from a media content library for a wide variety of media formats, automatically performs media processing operations such as encoding and decoding, and securely stores files in secure storage. The platform agent, the scalable media application, and any dependencies of the scalable media application are included in a container image that is stored in an image registry. The custom algorithm is executed via an encumbrance request that specifies at least the container image and one or more media items.

[0070] Upon receiving an assignment request, a workflow engine executes a new assignment based on the assignment request and a split-map-collect workflow. First, the workflow engine generates a split task specifying the media items associated with the assignment request. The workflow engine queues the task for execution by a container associated with the container image. If there are no containers associated with the container image, an autoscaler will cause the available compute instances to execute the container image, thus creating new container(s) associated with the container image. To execute the split task, the platform agent included in the container safely acquires the media item(s) and executes the split function on the media item(s).The split function partitions the media item(s) into splits and generates a split specification file that specifies the splits. Petition 870250109370, dated 11 / 28 / 2025, page 49 / 73 37 / 47

[0071] When it determines that the split task has completed execution, the workflow engine generates a different map task for each of the splits specified in the split specification file. The workflow engine queues the map tasks for execution by the containers associated with the container image. In this way, the map tasks are distributed among any number of containers associated with the container image and dynamically managed by the autoscaler. To execute the map task for a given split, the platform agent included in the container configures the map input files associated with the split (e.g., the frames included in the split), executes the map function based on the map input files, and stores the map output file(s) generated by the map function in secure storage.Upon determining that all map tasks have completed execution, the workflow engine generates a collection task. The workflow engine queues the collection task for execution by a container associated with the container image. To execute the collection task, the platform agent included in the container configures the map output files generated by the different map tasks, executes the map function based on the map output files, and stores the final output file(s) generated by the collection function in secure storage for further processing.

[0072] Advantageously, the disclosed techniques enable customized algorithms to be executed more easily and reliably on media items through distributed computing resources compared to the technique's solutions. Petition 870250109370, dated 11 / 28 / 2025, pp. 50 / 73 38 / 47 previous. Notably, the workflow mechanism establishes a divide-map-collect workflow that can execute custom algorithms on media data with high throughput using automatically allocated containers that include the appropriate operating system (OS) dependencies. In this sense, the amount of technical knowledge of dynamic workflows, resource allocation, and load balancing required to generate scalable media applications is reduced compared to prior technique solutions. Furthermore, the disclosed techniques automatically perform media, communication, and security operations that reduce the amount of manual design effort and technical knowledge required to securely and successfully execute the custom algorithm on a wide variety of potentially proprietary media items. These technical advantages provide one or more technological advancements over the prior technique.

[0073] 1. In some embodiments, a computer-implemented method comprises generating a plurality of split specifications based on a split function included in a container image, wherein each split specification is associated with a different portion of a 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 collection function included in the container image, wherein the one or more final output files are subsequently used to perform at least one evaluation operation on, one modification operation on Petition 870250109370, dated 11 / 28 / 2025, pp. 51 / 73 39 / 47 in, and a representation operation in relation to the media item.

[0074] 2. The computer-implemented method of clause 1, wherein the container image includes a scalable media application and one or more operating system (OS) dependencies of the scalable media application.

[0075] 3. The computer-implemented method of clauses 1 or 2, further comprising the performance of one or more operations to determine that the plurality of map output files has been successfully generated.

[0076] 4. The computer-implemented method of any of clauses 1-3, wherein the generation of the plurality of split specifications comprises acquiring a first container associated with the container image; causing the first container to safely acquire the media item from a media content library; and causing the first container to perform the split function on the media item.

[0077] 5. The computer-implemented method of any of clauses 1-4, further comprising executing the container image on a computing 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.

[0078] 6. The computer-implemented method of any of clauses 1-5, wherein the generation of the plurality of map output files comprises, for each division specification included in the plurality of division specifications, causing a different container. Petition 870250109370, dated 11 / 28 / 2025, pp. 52 / 73 40 / 47 included in a plurality of containers associated with the image container to generate a different map output file included in the plurality of map output files based on the map function.

[0079] 7. The computer-implemented method of any of clauses 1-6, wherein the generation of one or more final output files comprises acquiring a first container associated with the container image and causing the first container to perform the collection function on the plurality of map output files.

[0080] 8. The computer-implemented method of any of clauses 1-7, wherein the split function partitions a plurality of frames included in the media item based on playback time to generate the plurality of split specifications.

[0081] 9. The computer-implemented method of any of clauses 1-8, wherein the map function incorporates a custom algorithm that operates on at least one media content or encoded media content.

[0082] 10. The computer-implemented method of any of clauses 1-9, wherein the collection 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.

[0083] 11. In some embodiments, one or more non-transient computer-readable media include instructions that, when executed by one or more processors, cause one or more processors to perform the steps of generating a plurality of division specifications with Petition 870250109370, dated 11 / 28 / 2025, pp. 53 / 73 41 / 47 based on a split function included in a container image, wherein each split specification is associated with a different portion of a 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 collection function included in the container image, wherein the one or more final output files are subsequently used to perform at least one evaluation operation on, one modification operation on, and one representation operation on the media item.

[0084] 12. To one or more non-transient computer-readable media of clause 11, wherein the container image includes a scalable media application and one or more operating system (OS) dependencies of the scalable media application.

[0085] 13. To one or more non-transient computer-readable media of clauses 11 or 12, wherein the map function operates on a media-related object as a first class object.

[0086] 14. To one or more non-transient computer-readable media of any of clauses 11 to 13, wherein the generation of the plurality of split specifications comprises the transmission of a task request to a task mechanism which, in response, acquires a first container associated with the container image and causes the Petition 870250109370, dated 11 / 28 / 2025, pp. 54 / 73 42 / 47 first container performs the split function on an uncompressed and decoded version of the media item.

[0087] 15. One or more non-transient computer-readable media of any of clauses 11-14, further comprising running the container image on a computing 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.

[0088] 16. To one or more non-transient computer-readable media of any of clauses 11-15, wherein the generation of 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 perform 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 have the second container perform the map function in the second plurality of frames to generate a second map output file included within the plurality of map output files.

[0089] 17. To one or more non-transitory computer-readable media of any of clauses 11-16, where Petition 870250109370, dated 11 / 28 / 2025, pp. 55 / 73 43 / 47 The generation of one or more final output files comprises acquiring a first container associated with the container image and having the first container perform the collection function in the plurality of map output files.

[0090] 18. To one or more non-transient computer-readable media of any of clauses 11-17, wherein each split specification is associated with a different snapshot sequence included in the media item.

[0091] 19. One or more non-transient computer-readable media of any of clauses 11-18, wherein the media item comprises at least one video content, encoded video content, audio content, encoded audio content and text content.

[0092] 20. In some embodiments, a system comprises one or more memories that store instructions; and one or more processors coupled to 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 each split specification is associated with a different part of the media content; generate a plurality of map output files based on the plurality of split specifications and a map function included in the container image; perform one or more operations to determine that the plurality of map output files was successfully generated; and generate one or more final output files based on the plurality of map output files and a collection function included in the container image, wherein the one or more final output files are subsequently used to perform at least one evaluation operation on, a Petition 870250109370, dated 11 / 28 / 2025, pp. 56 / 73 44 / 47 modification operation in, and a representation operation in relation to the media content.

[0093] Any and all combinations of any of the elements of the cited claim in any of the claims and / or any elements described in this application, in any form, fall within the contemplated scope of the present invention and protection.

[0094] The descriptions of the various modalities have been presented for illustrative purposes, but are not intended to be exhaustive or limiting to the modalities disclosed. Many modifications and variations will be evident to those with common knowledge of the technique without departing from the scope and spirit of the modalities described.

[0095] Aspects of the present embodiments may be incorporated as a computer program system, method, or product. Consequently, aspects of this disclosure may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, microcode, etc.), or an embodiment that combines software and hardware aspects, which may generally be referred to in this document as a module or system. Furthermore, any technique, process, function, component, mechanism, module, or hardware and / or software system described in this disclosure may be implemented as a circuit or set of circuits. Additionally, aspects of this disclosure may take the form of a computer program product incorporated in one or more computer-readable media with computer-readable program code embedded therein. Petition 870250109370, dated 11 / 28 / 2025, pp. 57 / 73 45 / 47

[0096] Any combination of one or more computer-readable media may be used. A computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium. A computer-readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared or semiconductor system, apparatus or device, or any suitable combination thereof.More specific examples (a non-exhaustive list) of computer-readable storage media include the following: an electrical connection with one or more wires, a portable computer floppy disk, a hard disk drive, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the context of this document, a computer-readable storage medium may be any readable medium that can contain or store a program for use by or in connection with an instruction-executing system, apparatus, or device.

[0097] Aspects of the present disclosure are described above with reference to illustrations of flowcharts and / or block diagrams of methods, apparatus (systems) and computer program products according to the disclosure modalities. It will be understood that each block of the illustrations of the flowcharts and / or block diagrams and combinations of blocks in the illustrations of the flowcharts and / or block diagrams of Petition 870250109370, dated 11 / 28 / 2025, pp. 58 / 73 46 / 47 blocks can be implemented by computer program instructions. These computer program instructions can be supplied to a processor of a general-purpose computer, special-purpose computer, or other programmable data processing device to produce a machine. The instructions, when executed through the computer processor or other programmable data processing device, enable the implementation of the functions / acts specified in the flowchart and / or block or blocks of the block diagram. These processors can be, without limitation, general-purpose processors, special-purpose processors, application-specific processors, or field-programmable gate arrays.

[0098] The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of computer program systems, methods, and products according to various embodiments of this disclosure. In this sense, each block in the flowchart or block diagrams may represent a module, segment, or part of the code, comprising one or more executable instructions to implement the logical function(s). It should also be noted that, in some alternative implementations, the functions observed in the block may occur out of the order indicated in the figures. For example, two blocks shown in succession may, in fact, be executed substantially simultaneously, or the blocks may sometimes be executed in reverse order, depending on the functionality involved. It should also be noted that each block of the block diagrams and / or flowchart illustration and combinations of blocks in the Petition 870250109370, dated 11 / 28 / 2025, pp. 59 / 73 47 / 47 Block diagrams and / or flowchart illustrations can be implemented by special-purpose hardware-based systems that perform the specified functions or actions, or combinations of special-purpose hardware and computer instructions.

[0099] While the foregoing is directed to embodiments of the present disclosure, other and additional embodiments of the disclosure may be created without departing from the basic scope thereof, and the scope thereof is determined by the following claims. Petition 870250109370, dated 11 / 28 / 2025, pages 60 / 73

Claims

1 / 6 CLAIMS 1. A computer-implemented method, characterized in that it comprises: 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 collection 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. A computer-implemented method according to claim 1, characterized in that the container image includes a scalable media application and one or more operating system (OS) dependencies of the scalable media application.

3. A computer-implemented method according to claim 1, characterized in that it further comprises performing one or more operations to determine that the plurality of map output files was successfully generated. Petition 870250109370, dated 11 / 28 / 2025, page 61 / 73 2 / 6 4. A computer-implemented method according to claim 1, characterized in that the generation of the plurality of splitting specifications comprises: acquiring a first container associated with the container image; having the first container safely acquire the media item from a media content library; and having the first container perform the splitting function on the media item.

5. A computer-implemented method according to claim 1, characterized in that it further comprises executing the container image on a computing 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. A computer-implemented method according to claim 1, characterized in that the generation of the plurality of map output files comprises, for each division specification included in the plurality of division 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. Computer-implemented method, according to claim 1, characterized in that the generation of one or more final output files comprises the acquisition of a first container associated with the image container and causing the first container to perform the collection function in the plurality of map output files.

8. A computer-implemented method according to claim 1, characterized in that the splitting function partitions a plurality of frames included in the media item.

9. A computer-implemented method according to claim 1, characterized in that the map function incorporates a customized algorithm that operates on at least one media content or encoded media content.

10. A computer-implemented method according to claim 1, characterized in that the collection function performs at least one encryption operation, one compression operation, and one byte concatenation operation on a plurality of map output files to generate one or more final output files.

11. Non-transient computer-readable media, characterized in that it includes instructions that, when executed by one or more processors, cause the one or more processors to perform the following steps: 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 Petition 870250109370, dated 11 / 28 / 2025, p.63 / 73 4 / 6 plurality of split specifications, generate 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 generate one or more final output files based on the plurality of map output files and a collection 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. Non-transient computer-readable media according to claim 11, characterized in that generating a plurality of split specifications comprises transmitting a task request to a task mechanism which, in response, acquires a first container associated with the container image, and causes the first container to perform the split function on an uncompressed and decoded version of the media item.

13. Non-transient computer-readable media according to claim 11, characterized in that generating a 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 division specification included in the plurality of division specifications; Petition 870250109370, dated 11 / 28 / 2025, p.64 / 73 5 / 6 cause the first container to perform the map function on the first plurality of frames to generate a first map output file included in the plurality of map output files; cause 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 cause the second container to perform the map function on the second plurality of frames to generate a second map output file included in the plurality of map output files.

14. Non-transient computer-readable media according to claim 11, characterized in that each division specification is associated with a different sequence of scenes included in the media item.

15. System, characterized by the fact that it comprises: one or more memories storing instructions; and one or more processors coupled to 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 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 content; generate a plurality of map output files. Petition 870250109370, dated 11 / 28 / 2025, p.65 / 73 6 / 6 based on the plurality of split specifications and a map function included in the container image; perform one or more operations to determine that the plurality of map output files was successfully generated; and generate one or more final output files based on the plurality of map output files and a collection 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 content. Petition 870250109370, dated 11 / 28 / 2025, pp. 66 / 73.