US20200404035A1 - Extensible Resource Management for Hybrid Cloud-Based Media Production - Google Patents
Extensible Resource Management for Hybrid Cloud-Based Media Production Download PDFInfo
- Publication number
- US20200404035A1 US20200404035A1 US16/869,203 US202016869203A US2020404035A1 US 20200404035 A1 US20200404035 A1 US 20200404035A1 US 202016869203 A US202016869203 A US 202016869203A US 2020404035 A1 US2020404035 A1 US 2020404035A1
- Authority
- US
- United States
- Prior art keywords
- cloud
- production
- media
- software code
- media flows
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0236—Filtering by address, protocol, port number or service, e.g. IP-address or URL
-
- H04L65/4076—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1886—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with traffic restrictions for efficiency improvement, e.g. involving subnets or subdomains
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/069—Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/34—Signalling channels for network management communication
- H04L41/342—Signalling channels for network management communication between virtual entities, e.g. orchestrators, SDN or NFV entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/40—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/04—Processing captured monitoring data, e.g. for logfile generation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
- H04L43/062—Generation of reports related to network traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/82—Miscellaneous aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/10—Architectures or entities
- H04L65/1016—IP multimedia subsystem [IMS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
-
- H04L65/608—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/611—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/70—Media network packetisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/762—Media network packet handling at the source
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/04—Protocols for data compression, e.g. ROHC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/26616—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for merging a unicast channel into a multicast channel, e.g. in a VOD application, when a client served by unicast channel catches up a multicast channel to save bandwidth
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/64—Addressing
- H04N21/6405—Multicasting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/64—Addressing
- H04N21/6408—Unicasting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1863—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast comprising mechanisms for improved reliability, e.g. status reports
- H04L12/1868—Measures taken after transmission, e.g. acknowledgments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
Definitions
- Media-over-Internet Protocol, or media-over-IP, production facilities typically rely on multicast flow distribution to efficiently move media content, for which there are established production media flow carriage and management standards, as well as proprietary solutions.
- these standards and solutions for managing multicast production media flows are implemented using “on-premises” resources for which the production facility has control of the information technology (IT) architecture.
- IT information technology
- a traditional media-over-IP production facility can provide the timing mechanisms required for the multicast production media flows, such as Precision Time Protocol (PTP) for example, and can manage the bandwidth, control, and routing for the multicast streams.
- PTP Precision Time Protocol
- cloud-based computing environments by contrast, whether they are public or private, multicast flow management has typically been impermissible due in part to the unpredictable demands that multicast signals can place on cloud bandwidth. Instead, users of cloud-based IT resources are typically allocated computing and storage processes for which they are billed, as well as ingress or egress bandwidth, which they are also billed or allocated for. Due to the constraints imposed by use of cloud-based IT services, the media-over-IP architectures that work for a locally controlled production facility cannot be extended into the cloud. The unfortunate result is that defined production media flows from a local media-over-IP production facility cannot scale to cloud production media flows logically or seamlessly in the conventional art.
- ERPs extensible resource managers
- FIG. 1 shows a diagram of an exemplary hybrid cloud-based media production system, according to one implementation
- FIG. 2 shows a diagram of an extensible resource manager (ERM) suitable for use as part of the system of FIG. 1 , according to one exemplary implementation;
- ERP extensible resource manager
- FIG. 3 shows a diagram of an exemplary interaction environment for the ERM of FIG. 2 , according to one implementation.
- FIG. 4 shows a flowchart presenting an exemplary method for use by an ERM, according to one implementation.
- the present application describes an extensible resource manager (ERM) for a hybrid cloud-based media production system, which addresses and overcomes the drawbacks and deficiencies in the conventional art.
- the ERM disclosed by the present application is configured to support a hybrid local/cloud-based production system.
- the comprehensive control over management of the production media flows for the system, commonly known as Software Defined Network Orchestration (hereinafter “SDNO”) is performed by a network orchestrator of the system (hereinafter “SDNO”).
- SDNO Software Defined Network Orchestration
- SDNO network orchestrator of the system
- the SDNO and ERM are configured to extend seamlessly between the local and cloud-based “virtual” production environments to enable a highly scalable and dynamic media-over-IP production solution.
- hybrid cloud-based media production may refer to brick-and-mortar production facilities that are extensible into the cloud so as to include cloud-based virtual production resources, as well as to production systems relying entirely or substantially on virtual media processing resources. Consequently, the expressions “hybrid cloud-based media production” and “cloud-extensible media production” may be used interchangeably in the present disclosure. It is further noted that the hybrid cloud-based media production solution disclosed in the present application is cloud agnostic, i.e., not specifically designed for implementation in a particular type of cloud environment. Consequently, the cloud virtual production environment into which the present solution expands may include multiple distinct cloud environments, and thus may be a multi-cloud virtual production environment.
- the present ERM may be implemented as a substantially automated solution.
- the terms “automation,” “automated,” and “automating” refer to ERMs and their processes that do not require the participation of a human user, such as a human production manager.
- a human production manager may review, or even intervene, in the actions determined by the automated ERMs and according to the automated methods described herein, that human involvement is optional.
- the methods described in the present application may be performed under the control of hardware processing components of the disclosed ERMs.
- FIG. 1 shows exemplary hybrid cloud-based media production system 100 , according to one implementation.
- hybrid cloud-based media production system 100 includes on-premises production environment 102 interactively linked with cloud-based virtual production environment 104 .
- on-premises production environment 102 includes local resources 110 generating multicast production media flows 132 a and communicatively coupled to facility expansion platform 120 .
- Local resources 110 include “big iron” production hardware 112 , local physical production network 114 , local computing and data storage resources 116 , and local production applications 118 .
- FIG. 1 shows exemplary hybrid cloud-based media production system 100 , according to one implementation.
- hybrid cloud-based media production system 100 includes on-premises production environment 102 interactively linked with cloud-based virtual production environment 104 .
- on-premises production environment 102 includes local resources 110 generating multicast production media flows 132 a and communicatively coupled to facility expansion platform 120 .
- Local resources 110 include “big iron” production hardware 112 , local physical production network 114 , local computing
- FIG. 1 shows SDNO 106 , ERM 150 , and media flow transport security manager 160 , as well as graphical user interface (GUI) 126 of facility expansion platform 120 providing a production monitoring and/or control dashboard for an optional user of hybrid cloud-based media production system 100 .
- GUI graphical user interface
- FIG. 1 Also shown in FIG. 1 are abstraction layer 108 associated with SDNO 106 , abstraction layer 152 associated with ERM 150 , and communication links 122 between ERM 150 and SDNO 106 , which may be provided by an application programming interface (API)(hereinafter “SDNO API 122 ”).
- API application programming interface
- abstraction layer 104 associated with SDNO 106
- abstraction layer 152 associated with ERM 150
- an abstraction layer is a series of software services (often called microservices) providing and accomplishing specific functions, as known in the art.
- Abstraction layer 104 supports both “east/west” lateral communications between other software services and “north/south” vertical communications between the layers that call these services for SDNO 106
- abstraction layer 152 provides analogous communications support for ERM 150 .
- Cloud-based virtual production environment 104 includes cloud-based resources 140 configured to receive and process cloud production media flows 142 a corresponding to multicast production media flows 132 a , thereby producing post-production cloud media flows 142 b .
- cloud-based resources 140 include cloud bandwidth 144 , cloud-based computing and data storage resources 146 , and cloud-based production applications 148 .
- Also shown in FIG. 1 is physical, i.e., not cloud-based or virtual, post-production facility 134 receiving post-production multicast media flows 132 b corresponding to post-production cloud media flows 142 b.
- physical post-production facility 134 may be another production facility similar to on-premises production environment 102 , or may be a media distribution hub, such as a regional affiliate or other affiliated media distributor.
- post-production multicast media flows 132 b correspond to post-production cloud media flows 142 b after post-production media flows 142 b are converted from a cloud permissible media flow type, such as unicast, to multicast.
- cloud production media flows 142 a are processed to generate post-production cloud media flows 142 b using cloud-based virtual production environment 104 .
- multicast is a term used to describe communication in which a piece of information is sent from one or more points to a set of other points. In this case there may be one or more senders, and the information is distributed to a group of receivers.
- An example of an application which may use multicast is a video server sending out networked television (TV) channels. Concurrent delivery of high quality video to each of a large number of delivery platforms will exhaust the capability of even a high bandwidth network with a powerful video clip server. This poses a major scalability issue for applications which require sustained high bandwidth.
- Multicasting is the networking technique of delivering the same packet concurrently to a group of clients. IP multicast provides dynamic many-to-many connectivity between a set of senders (at least 1) and a group of receivers.
- IP multicast packet The format of an IP multicast packet is identical to that of unicast packets and is distinguished by the use of a special class of destination address (i.e., class D IPv4 address), which denotes a specific multicast group.
- TCP Transmission Control Protocol
- UDP User Datagram Protocol
- multicast clients receive a stream of packets only if they have previously elected to do so, for example by joining the specific multicast group address. Membership of a group may be dynamic and may be controlled by the receivers, which are informed by the local client applications.
- the routers in a multicast network learn which sub-networks have active clients for each multicast group and attempt to minimize the transmission of packets across parts of the network for which there are no active clients.
- the multicast mode is useful if a group of clients require a common set of data at the same time, or when the clients are able to receive and store common data until needed. Where there is a common need for the same data required by a group of clients, multicast transmission may provide significant bandwidth savings, for example, up to 1/N of the bandwidth compared to N separate unicast clients.
- cloud production media flows 142 a and post-production cloud media flows 142 b may be multicast media flows. Nevertheless, most present use cases require conversion of multicast production media flows 132 a into unicast production media flows prior to processing in cloud-based virtual production environment 104 .
- cloud production media flows 142 a may be unicast production media flows 142 a
- post-production cloud media flows 142 b may be post-production unicast media flows 142 b.
- Unicast is a term used to describe communication in which a piece of information is sent from one point to another point. In this case there is just one sender and one receiver.
- Unicast transmission in which a packet is sent from a single source to a specified destination, is a predominant form of transmission on LANs and within the Internet. All LANs, such as Ethernet, for example, as well as IP networks, support the unicast transfer mode. Examples of the standard unicast applications supported by LANs and IP networks include Hypertext Transfer Protocol (HTTP), Simple Mail Transfer Protocol (SMTP), File Transfer Protocol (FTP), and Telnet, each of which employs TCP.
- HTTP Hypertext Transfer Protocol
- SMTP Simple Mail Transfer Protocol
- FTP File Transfer Protocol
- Telnet Telnet
- Hybrid cloud-based media production system 100 provides an exemplary framework by which on-premises production environment 102 can scale larger by expanding into cloud-based virtual production environment 104 . That expansion may include the following:
- Media-over-IP multicast production media flows 132 a are converted to unicast or other cloud permissible production media flows 142 a as they move into cloud-based virtual production environment 104 .
- SDNO 106 extends into cloud-based virtual production environment 104 from on-premises production environment 102 to manage cloud production media flows 142 a in cloud-based virtual production environment 104 , creating a virtual network managing the bandwidth and allocation of cloud production media flows 142 a , as well as the announce and discovery of cloud-based resources 140 .
- SDNO 106 enables cloud-based resources 140 for required production processes and manages the connections. In one implementation, this would be accomplished by the cloud providers supplying standard APIs to cloud-based resources 140 .
- ERM 150 communicates with SDNO 106 , and coordinates and books cloud-based resources 140 required by the media workflows, spinning up computing and storage processes as needed, and loading the required applications. ERM 150 can additionally manage the licenses for the applications, should additional applications be required. ERM management of cloud-based resources 140 and licensing may be API based such that ERM 150 can present a media based dashboard to a user via GUI 126 of hybrid cloud-based media production system 100 , while allocating the appropriate resources from the cloud provider.
- FIG. 2 shows a diagram of exemplary ERM 250 , according to one implementation.
- ERM 250 includes computing platform 252 having hardware processor 254 and memory 256 implemented as a non-transitory storage device.
- memory 256 stores resource management software code 258 , and may store one or more reports 224 (hereinafter “report(s) 224 ”) generated by resource management software code 258 .
- ERM 250 corresponds in general to ERM 150 , in FIG. 1 . As a result, ERM 250 may share any of the characteristics attributed to ERM 150 by the present disclosure, and vice versa.
- memory 256 may be any computer-readable non-transitory storage medium.
- a computer-readable non-transitory medium may correspond to various types of media, such as volatile media and non-volatile media, for example.
- Volatile media may include dynamic memory, such as dynamic random access memory (dynamic RAM), while non-volatile memory may include optical, magnetic, or electrostatic storage devices.
- Common forms of computer-readable non-transitory media include, for example, optical discs, RAM, programmable read-only memory (PROM), erasable PROM (EPROM), and FLASH memory.
- FIG. 2 depicts resource management software code 258 as being stored as single software module in memory 256 , that representation is also provided merely as an aid to conceptual clarity. More generally, ERM 150 / 250 may include one or more computing platforms, such as computer servers or computer work stations for example, which may be co-located, or may form an interactively linked but distributed network.
- computing platforms such as computer servers or computer work stations for example, which may be co-located, or may form an interactively linked but distributed network.
- ERM 150 / 250 may correspond to one or more web servers, accessible over a packet-switched network such as the Internet, for example.
- ERM 150 / 250 may correspond to one or more computer servers supporting a wide area network (WAN), a LAN, or included in another type of limited distribution or private network.
- WAN wide area network
- LAN local area network
- a user of hybrid cloud-based media production system 100 may utilize GUI 126 to review the performance of hybrid cloud-based media production system 100 as described in report(s) 224 generated by resource management software code 258 of ERM 150 / 250 , when executed by hardware processor 254 .
- Report(s) 224 may include performance and/or financial metrics.
- report(s) generated by resource management software code 258 may reveal the profitability or return-on-investment (ROI) of media content in the form of TV programming content or feature film content produced using hybrid cloud-based media production system 100 based on billing and licensing information obtained from ERM 150 .
- ROI return-on-investment
- hardware processor 254 may execute resource management software code 258 to aggregate financial metrics corresponding to processing of cloud production media flows 142 a using cloud-based resources 140 , and to determine, using one or more of those financial metrics, the cost of processing cloud production media flows 142 a in cloud-based virtual production environment 104 . Moreover, in some implementations, hardware processor 254 may further execute resource management software code 258 to obtain revenue data for post-production cloud media flows 142 b corresponding respectively to cloud production media flows 142 a , to determine, using the cost and the revenue data, the ROI for post-production cloud media flows 142 b , and to generate report(s) 224 including at least the ROI.
- report(s) 224 generated using resource management software code 258 may be stored in memory 256 and/or may be copied to non-volatile storage. Alternatively, or in addition, and as noted above, in some implementations those reports may be displayed to a user of hybrid cloud-based media production system 100 via GUI 126 .
- the cloud host provider may work with the media applications, SDNO 106 , and ERM 150 to present to an on-premises production environment 102 based system user a hybrid but apparently seamless production environment.
- Standards and specifications such as Networked Media Open Specifications (NMOS) that define the methods for discovery, bandwidth reservation, and the like can be used to establish the framework to create this hybrid architecture, and enable ERM 150 and SDNO 106 to establish the features required for a dynamic environment.
- NMOS Networked Media Open Specifications
- SDNO 106 and ERM 150 would present to the user a seamless environment in which it is impossible, or nearly so, to distinguish where on-premises production environment 102 ends and cloud-based virtual production environment 104 begins.
- FIG. 3 shows a diagram of exemplary interaction environment 300 for ERM 350 participating in a hybrid cloud-based media production process, according to one implementation.
- interaction environment 300 includes on-premises production environment 302 , cloud-based virtual production environment 304 , network orchestrator or SDNO 306 , resources database 362 , billing and reporting metrics database 364 , common carrier interface 366 , and licensing database 368 .
- FIG. 3 shows common carrier API 372 , cloud API 374 , SDNO API 322 , licensing API 378 , and local network communication links 370 supporting communications between ERM 350 and each of on-premises production environment 302 , resources database 362 , and billing and reporting metrics database 364 .
- multicast production media flows 332 a cloud production media flows 342 a corresponding to multicast production media flows 332 a
- post-production cloud media flows 342 b resulting from processing of cloud production media flows 342 a in cloud-based virtual production environment 304
- post-production multicast media flows 332 b corresponding to post-production cloud media flows 342 b
- the correspondence between cloud production media flows 342 a and multicast production media flows 332 a may be one-to-one.
- the correspondence between cloud production media flows 342 a and multicast production media flows 332 a may be many-to-one, while the correspondence between post-production multicast media flows 332 b and post-production cloud media flows 342 b may be one-to-many.
- ERM 350 corresponds in general to ERM 150 / 250 in FIGS. 1 and 2 . Consequently, ERM 350 may share any of the characteristics attributed to ERM 150 / 250 by the present disclosure, and vice versa.
- on-premises production environment 302 , cloud-based virtual production environment 304 , network orchestrator or SDNO 306 correspond respectively in general to on-premises production environment 102 , cloud-based virtual production environment 104 , and SDNO 106 , in FIG. 1 .
- on-premises production environment 302 may share any of the characteristics attributed to respective on-premises production environment 102 , cloud-based virtual production environment 104 , and SDNO 106 by the present disclosure, and vice versa.
- SDNO API 322 corresponds in general to SDNO API 122 , in FIG. 1 , and those corresponding features may share any of the characteristics attributed to either corresponding feature by the present disclosure.
- multicast production media flows 332 a cloud production media flows 342 a , post-production cloud media flows 342 b , and post-production multicast media flows 332 b correspond respectively in general to multicast production media flows 132 a , cloud production media flows 142 a , post-production cloud media flows 142 b , and post-production multicast media flows 132 b .
- multicast production media flows 332 a , cloud production media flows 342 a , post-production cloud media flows 342 b , and post-production multicast media flows 332 b may share any of the characteristics attributed to respective multicast production media flows 132 a , cloud production media flows 142 a , post-production cloud media flows 142 b , and post-production multicast media flows 132 b by the present disclosure, and vice versa. That is to say, in some implementations, cloud production media flows 342 a may be unicast production media flows 342 a , and post-production cloud media flows 342 b may be post-production unicast media flows 342 b.
- FIG. 4 shows flowchart 480 presenting an exemplary method for use by ERM 150 / 250 / 350 .
- FIG. 4 it is noted that certain details and features have been left out of flowchart 480 in order not to obscure the discussion of the inventive features in the present application.
- flowchart 480 begins with communicating with SDNO 106 / 306 to identify one or more multicast production media flows 132 a / 332 a for processing in cloud-based virtual production environment 104 / 304 (action 481 ).
- Multicast production media flows 132 a / 332 a may include streaming audio content, streaming video content, streaming audio-video content, graphics, or one or more media files, to name a few examples.
- multicast production media flows 132 a / 332 a may also include associated media files that could be used at runtime, could be re-used at other times, or could be exported.
- multicast production media flows 132 a / 332 a may take the form of carriera feeds or remote feeds, for example.
- timing protocol applied to multicast production media flows 132 a / 332 a may be incompatible with timing schemes permitted in the cloud.
- timing of multicast production media flows 132 a / 332 a may be controlled in on-premises production environment 102 / 302 using Precision Time Protocol (PTP), which is known in the art, but which is typically not permitted in cloud-based computing environments.
- PTP Precision Time Protocol
- cloud-based virtual production environment 104 may evolve to support use of PTP.
- one or more multicast production media flows 132 a may have a timing protocol that is impermissible in cloud-based virtual production environment 104 , while in other implementations the timing protocol used for one or more multicast production media flows 132 a may be permitted in cloud-based virtual production environment 104 .
- Action 481 may be triggered by workflow requirements, such as turnaround time or scheduling, by resource constraints imposed by local resources 110 , or may be scheduled to occur at predetermined intervals (e.g., daily, weekly, monthly, etc.), for example. Referring to FIG. 2 , with continued reference to FIGS. 1, 3, and 4 , action 481 may be performed by resource management software code 258 , executed by hardware processor 254 of ERM 150 / 250 / 350 , and using SDNO API 122 / 322 .
- Flowchart 480 continues with identifying one or more of cloud-based resources 140 for processing one or more cloud production media flows 142 a / 342 a in cloud-based virtual production environment 104 / 304 (action 482 ).
- One or more cloud production media flows 142 a / 342 a may be converted from and correspond to one or more multicast production media flows 132 a / 332 a identified in action 481 .
- conversion of one or more multicast production media flow(s) 132 a / 332 a into one or more cloud production media flows 142 a / 342 a may be performed by hybrid cloud-based media production system 100 .
- that conversion may be performed by a host provider supplying cloud-based resources 140 , or by an independent third party provider of multicast to unicast conversion services.
- Conversion of one or more multicast production media flows 132 a / 332 a into one or more cloud production media flows 142 a / 342 a is typically performed before delivery of one or more cloud production media flows 142 a / 342 a into cloud bandwidth 144 of cloud-based virtual production environment 104 / 304 .
- Conversion of one or more multicast production media flows 132 a / 332 a into one or more cloud production media flows 142 a / 342 a may include aliasing, performing Network Address Translation (NATing), or some other form of IP address translation to convert one or more multicast production media flows 132 a / 332 a into unicast production media flows, or into any other IP transmission format permissible in cloud-based virtual production environment 104 / 304 .
- Identification of cloud-based resources 140 needed to process one or more cloud production media flows 142 a / 342 a may be performed by resource management software code 258 , executed by hardware processor 254 of ERM 150 / 250 / 350 .
- Action 483 may be performed by resource management software code 258 , executed by hardware processor 254 of ERM 150 / 250 / 350 .
- action 483 may include ERM 150 / 250 / 350 communicating with resources database 362 via communication link 370 to determine what license resources are presently in effect, and whether those licensing resources cover the one or more cloud-based resources needed to process one or more cloud production media flows 142 a / 342 a in cloud-based virtual production environment 104 / 304 .
- Action 484 may be performed by resource management software code 258 , executed by hardware processor 254 of ERM 150 / 250 / 350 .
- action 484 may include ERM 150 / 250 / 350 communicating with licensing database 368 via licensing API 378 to obtain any needed licenses.
- action 484 may be skipped.
- Flowchart 480 continues with provisioning cloud-based virtual production environment 104 / 304 with the one or more cloud-based resources 140 identified as needed for processing one or more cloud production media flows 142 a in action 482 (action 485 ).
- Action 485 may follow action 484 , or may be performed in response to determining that the necessary license(s) already exist in action 483 .
- Provisioning cloud-based virtual production environment 104 / 304 with cloud-based resources 140 may include one or more of reserving cloud bandwidth 144 , ordering cloud-based computing and data storage resources 146 , and ordering cloud-based production applications 148 , for example.
- Provisioning of cloud-based virtual production environment in action 485 may be performed by resource management software code 258 , executed by hardware processor 254 of ERM 150 / 250 / 350 , and using cloud API 374 .
- flowchart 480 may conclude with action 485 described above. However, in other implementations, flowchart 480 may continue with the optional action of reserving common carrier bandwidth for transporting one or more cloud production media flows 142 a / 342 a into cloud-based virtual production environment 104 / 304 (action 486 ). For example, in some implementations, optional action 486 may include identifying the amount of common carrier bandwidth required for transporting one or more cloud production media flows 142 a / 342 a into cloud-based virtual production environment 104 / 304 , and then reserving it.
- Reserving common carrier bandwidth for transporting one or more cloud production media flows 142 a / 342 a into cloud-based virtual production environment 104 / 304 may be performed by resource management software code 258 , executed by hardware processor 254 of ERM 150 / 250 / 350 . In some implementations, for instance such a reservation may be made by ERM 150 / 250 / 350 through use of common carrier interface 366 and common carrier API 372 .
- production media flows are converted from multicast production media flow(s) 132 a / 332 a to one or more cloud production media flows 142 a / 342 a , they may come through different network paths, resulting in wander and jitter that causes one or more cloud production media flows 142 a / 342 a to move out of time with one another.
- production processing of one or more cloud production media flows 142 a / 342 a is to be performed in cloud-based virtual production environment 104 / 304 , alignment of one or more cloud production media flows 142 a / 342 a must typically be done after their delivery into cloud-based virtual production environment 104 / 304 , and may be performed by SDNO 106 / 306 using a cloud permissible or “cloud friendly” timing protocol.
- PTP may be used in media-over-IP to align multicast production media flow(s) 132 a / 332 a .
- one or more cloud production media flows 142 a / 342 a must be buffered, as well as being timed using a cloud permissible timing protocol, such as Network Time Protocol (NTP) for example.
- NTP Network Time Protocol
- Optional action 486 may also include reserving common carrier bandwidth for transporting one or more post-production cloud media flows 142 b / 342 b out of cloud-based virtual production environment 104 / 304 after processing of one or more cloud production media flows 142 a / 342 a in cloud-based virtual production environment 104 / 304 .
- optional action 486 may include identifying the amount of common carrier bandwidth required for transporting one or more post-production cloud media flows 142 b / 342 b out of cloud-based virtual production environment 104 / 304 , and then reserving it.
- Reserving common carrier bandwidth for transporting one or more post-production cloud media flows 142 b / 342 b out of cloud-based virtual production environment 104 / 304 may be performed by resource management software code 258 , executed by hardware processor 254 of ERM 150 / 250 / 350 . In some implementations, for instance such a reservation may be made by ERM 150 / 250 / 350 through use of common carrier interface 366 and common carrier API 372 .
- flowchart 480 can continue with the optional action of deactivating cloud-based virtual production environment 104 / 304 after processing of one or more cloud production media flows 142 a / 342 a is complete (action 487 ).
- Action 487 results in effective withdrawal of hybrid cloud-based media production system 100 from cloud-based virtual production environment 104 / 304 .
- cloud-based resources 140 ordered by ERM 150 / 250 / 350 and allocated to hybrid cloud-based media production system 100 such as cloud bandwidth 144 , cloud-based computing and data storage resources 146 , cloud-based production applications 148 , and any temporary licenses obtained by ERM 150 / 250 / 350 , are relinquished back to the cloud host.
- Optional action 487 may be performed by resource management software code 258 , executed by hardware processor 254 of ERM 150 / 250 / 350 .
- hardware processor 254 may execute resource management software code to receive a notification from SDNO 106 / 306 of hybrid cloud-based media production system 100 , and deactivate, in response to receiving the notification, cloud-based virtual production environment 104 / 304 .
- one or more post-production cloud media flows 142 b / 342 b may be converted into one or more post-production multicast media flows 132 b / 332 b .
- one or more post-production media flows 132 b may be returned to on-premises production environment 102 / 302 , or one or more post-production media flows 132 b may be transmitted to physical post-production facility 134 .
- physical post-production facility 134 may be another production facility similar to on-premises production environment 102 / 302 , or may be a media distribution hub, such as a regional affiliate or other affiliated media distributor. Conversion of one or more post-production cloud media flows 142 b / 342 b into one or more post-production multicast media flows 132 b / 332 b , as well as recovery or transmission of one or more post-production multicast media flows 132 b / 332 b , may be performed by SDNO 106 / 306 .
- flowchart 480 can continue and conclude with optionally generating report(s) 224 including at least the ROI for one or more post-production cloud media flows 142 b / 342 b and/or post-production multicast media flows 132 b / 332 b (action 488 ).
- report(s) 224 including at least the ROI for one or more post-production cloud media flows 142 b / 342 b and/or post-production multicast media flows 132 b / 332 b (action 488 ).
- hardware processor 254 may execute resource management software code 258 to aggregate financial metrics corresponding to processing of one or more cloud production media flows 142 a / 342 a using cloud-based resources 140 , and to determine, using one or more of those financial metrics, the cost of processing one or more cloud production media flows 142 a / 342 a in cloud-based virtual production environment 104 / 304 .
- hardware processor 254 may frther execute resource management software code 258 to obtain revenue data for one or more post-production cloud media flows 142 b / 342 b corresponding respectively to one or more cloud production media flows 142 a / 342 a , to determine, using the cost and the revenue data, the ROI for one or more post-production cloud media flows 142 b / 342 b , and to generate report(s) 224 including at least the ROI.
- actions 486 , 487 , and 488 , as well as action 484 may be omitted from the method outlined by flowchart 480 .
- the method outlined by flowchart 480 may continue directly from action 483 to conclude with action 485 , while in other implementations actions 481 , 482 , 483 , 484 , and 485 (hereinafter “actions 481 - 485 ”) may be performed.
- action 485 may be followed by any one of actions 486 , 487 , or 488 .
- hardware processor 254 may execute resource management software code 258 to perform actions 481 , 482 , 483 , and 485 , or actions 481 - 485 , or actions 481 , 482 , 483 , and 485 or 481 - 485 as well as one or more of actions 486 , 487 , and 488 , in an automated process from which human involvement may be omitted.
- the present application describes an ERM solution that addresses and overcomes the drawbacks and deficiencies in the conventional art.
- the ERM solution disclosed in the present application can be used to enable a true hybrid production environment that is configured to scale to a much greater resource capability than is available locally. Media applications used in the production process would look the same regardless of whether they are local resources or cloud-based resources.
- the disclosed ERM solution may be advantageously utilized to manage and allocate the added resources needed when they are not local.
Abstract
Description
- The present application claims the benefit of and priority to pending Provisional Patent Application Ser. No. 62/864,279, filed Jun. 20, 2019, and titled “Cloud-Extensible Media Production,” which is hereby incorporated fully by reference into the present application.
- The present application is related to U.S. patent application Ser. No. ______, filed concurrently with the present application, attorney docket number 0260603, and titled “Hybrid Cloud-Based Media Production”; U.S. patent application Ser. No. ______, filed concurrently with the present application, attorney docket number 0260668, and titled “Media Flow Transport Security Management”; and U.S. patent application Ser. No. 16/800,853, filed on Feb. 25, 2020, and titled “Software Defined Network Orchestration to Manage Media Flows for Broadcast with Public Cloud Networks,” which are hereby incorporated fully by reference into the present application.
- Media-over-Internet Protocol, or media-over-IP, production facilities typically rely on multicast flow distribution to efficiently move media content, for which there are established production media flow carriage and management standards, as well as proprietary solutions. In traditional media-over-IP production environments, these standards and solutions for managing multicast production media flows are implemented using “on-premises” resources for which the production facility has control of the information technology (IT) architecture. As a result, a traditional media-over-IP production facility can provide the timing mechanisms required for the multicast production media flows, such as Precision Time Protocol (PTP) for example, and can manage the bandwidth, control, and routing for the multicast streams.
- In cloud-based computing environments, by contrast, whether they are public or private, multicast flow management has typically been impermissible due in part to the unpredictable demands that multicast signals can place on cloud bandwidth. Instead, users of cloud-based IT resources are typically allocated computing and storage processes for which they are billed, as well as ingress or egress bandwidth, which they are also billed or allocated for. Due to the constraints imposed by use of cloud-based IT services, the media-over-IP architectures that work for a locally controlled production facility cannot be extended into the cloud. The unfortunate result is that defined production media flows from a local media-over-IP production facility cannot scale to cloud production media flows logically or seamlessly in the conventional art.
- There are provided extensible resource managers (ERMs) and methods for their use, substantially as shown in and/or described in connection with at least one of the figures, and as set forth more completely in the claims.
-
FIG. 1 shows a diagram of an exemplary hybrid cloud-based media production system, according to one implementation; -
FIG. 2 shows a diagram of an extensible resource manager (ERM) suitable for use as part of the system ofFIG. 1 , according to one exemplary implementation; -
FIG. 3 shows a diagram of an exemplary interaction environment for the ERM ofFIG. 2 , according to one implementation; and -
FIG. 4 shows a flowchart presenting an exemplary method for use by an ERM, according to one implementation. - The following description contains specific information pertaining to implementations in the present disclosure. One skilled in the art will recognize that the present disclosure may be implemented in a manner different from that specifically discussed herein. The drawings in the present application and their accompanying detailed description are directed to merely exemplary implementations. Unless noted otherwise, like or corresponding elements among the figures may be indicated by like or corresponding reference numerals. Moreover, the drawings and illustrations in the present application are generally not to scale, and are not intended to correspond to actual relative dimensions.
- The present application describes an extensible resource manager (ERM) for a hybrid cloud-based media production system, which addresses and overcomes the drawbacks and deficiencies in the conventional art. In one implementation, the ERM disclosed by the present application is configured to support a hybrid local/cloud-based production system. The comprehensive control over management of the production media flows for the system, commonly known as Software Defined Network Orchestration (hereinafter “SDNO”) is performed by a network orchestrator of the system (hereinafter “SDNO”). The SDNO and ERM are configured to extend seamlessly between the local and cloud-based “virtual” production environments to enable a highly scalable and dynamic media-over-IP production solution.
- It is noted, that as used in the present application, the expression “hybrid cloud-based media production” may refer to brick-and-mortar production facilities that are extensible into the cloud so as to include cloud-based virtual production resources, as well as to production systems relying entirely or substantially on virtual media processing resources. Consequently, the expressions “hybrid cloud-based media production” and “cloud-extensible media production” may be used interchangeably in the present disclosure. It is further noted that the hybrid cloud-based media production solution disclosed in the present application is cloud agnostic, i.e., not specifically designed for implementation in a particular type of cloud environment. Consequently, the cloud virtual production environment into which the present solution expands may include multiple distinct cloud environments, and thus may be a multi-cloud virtual production environment.
- It is further noted that, in some implementations, the present ERM may be implemented as a substantially automated solution. As used in the present application, the terms “automation,” “automated,” and “automating” refer to ERMs and their processes that do not require the participation of a human user, such as a human production manager. Although, in some implementations, a human production manager may review, or even intervene, in the actions determined by the automated ERMs and according to the automated methods described herein, that human involvement is optional. Thus, in some implementations, the methods described in the present application may be performed under the control of hardware processing components of the disclosed ERMs.
-
FIG. 1 shows exemplary hybrid cloud-basedmedia production system 100, according to one implementation. As shown inFIG. 1 , hybrid cloud-basedmedia production system 100 includes on-premises production environment 102 interactively linked with cloud-basedvirtual production environment 104. As shown inFIG. 1 , on-premises production environment 102 includeslocal resources 110 generating multicast production media flows 132 a and communicatively coupled tofacility expansion platform 120.Local resources 110 include “big iron”production hardware 112, localphysical production network 114, local computing anddata storage resources 116, andlocal production applications 118. In addition,FIG. 1 shows SDNO 106,ERM 150, and media flowtransport security manager 160, as well as graphical user interface (GUI) 126 offacility expansion platform 120 providing a production monitoring and/or control dashboard for an optional user of hybrid cloud-basedmedia production system 100. Also shown inFIG. 1 areabstraction layer 108 associated with SDNO 106,abstraction layer 152 associated withERM 150, andcommunication links 122 betweenERM 150 and SDNO 106, which may be provided by an application programming interface (API)(hereinafter “SDNOAPI 122”). - With respect to
abstraction layer 104 associated with SDNO 106, andabstraction layer 152 associated withERM 150, it is noted that an abstraction layer is a series of software services (often called microservices) providing and accomplishing specific functions, as known in the art.Abstraction layer 104 supports both “east/west” lateral communications between other software services and “north/south” vertical communications between the layers that call these services for SDNO 106, whileabstraction layer 152 provides analogous communications support forERM 150. - Cloud-based
virtual production environment 104 includes cloud-basedresources 140 configured to receive and process cloudproduction media flows 142 a corresponding to multicastproduction media flows 132 a, thereby producing post-productioncloud media flows 142 b. As shown inFIG. 1 , cloud-basedresources 140 includecloud bandwidth 144, cloud-based computing anddata storage resources 146, and cloud-basedproduction applications 148. Also shown inFIG. 1 is physical, i.e., not cloud-based or virtual,post-production facility 134 receiving post-productionmulticast media flows 132 b corresponding to post-productioncloud media flows 142 b. - It is noted that
physical post-production facility 134 may be another production facility similar to on-premises production environment 102, or may be a media distribution hub, such as a regional affiliate or other affiliated media distributor. It is further noted that post-productionmulticast media flows 132 b correspond to post-productioncloud media flows 142 b afterpost-production media flows 142 b are converted from a cloud permissible media flow type, such as unicast, to multicast. It is further noted that cloudproduction media flows 142 a are processed to generate post-productioncloud media flows 142 b using cloud-basedvirtual production environment 104. - It is also noted that “multicast” is a term used to describe communication in which a piece of information is sent from one or more points to a set of other points. In this case there may be one or more senders, and the information is distributed to a group of receivers. One example of an application which may use multicast is a video server sending out networked television (TV) channels. Concurrent delivery of high quality video to each of a large number of delivery platforms will exhaust the capability of even a high bandwidth network with a powerful video clip server. This poses a major scalability issue for applications which require sustained high bandwidth. One way to significantly ease scaling to larger groups of clients is to employ multicast networking. Multicasting is the networking technique of delivering the same packet concurrently to a group of clients. IP multicast provides dynamic many-to-many connectivity between a set of senders (at least 1) and a group of receivers.
- The format of an IP multicast packet is identical to that of unicast packets and is distinguished by the use of a special class of destination address (i.e., class D IPv4 address), which denotes a specific multicast group. Since Transmission Control Protocol (TCP) supports only the unicast mode, multicast applications must typically use the User Datagram Protocol (UDP) transport protocol. Unlike broadcast transmission, which is used on some local area networks (LANs), multicast clients receive a stream of packets only if they have previously elected to do so, for example by joining the specific multicast group address. Membership of a group may be dynamic and may be controlled by the receivers, which are informed by the local client applications. The routers in a multicast network learn which sub-networks have active clients for each multicast group and attempt to minimize the transmission of packets across parts of the network for which there are no active clients. The multicast mode is useful if a group of clients require a common set of data at the same time, or when the clients are able to receive and store common data until needed. Where there is a common need for the same data required by a group of clients, multicast transmission may provide significant bandwidth savings, for example, up to 1/N of the bandwidth compared to N separate unicast clients.
- As noted above, in cloud-based computing environments, whether they are public or private, multicast flow management has typically been impermissible due in part to the unpredictable demands that multicast signals can place on cloud bandwidth. However, it is contemplated that cloud-based
virtual production environment 104 may evolve to accommodate multicast flow management. Consequently, in some implementations cloudproduction media flows 142 a and post-production cloud media flows 142 b may be multicast media flows. Nevertheless, most present use cases require conversion of multicastproduction media flows 132 a into unicast production media flows prior to processing in cloud-basedvirtual production environment 104. Thus, in some implementations, cloudproduction media flows 142 a may be unicastproduction media flows 142 a, and post-production cloud media flows 142 b may be post-production unicast media flows 142 b. - In contrast to multicast. “unicast” is a term used to describe communication in which a piece of information is sent from one point to another point. In this case there is just one sender and one receiver. Unicast transmission, in which a packet is sent from a single source to a specified destination, is a predominant form of transmission on LANs and within the Internet. All LANs, such as Ethernet, for example, as well as IP networks, support the unicast transfer mode. Examples of the standard unicast applications supported by LANs and IP networks include Hypertext Transfer Protocol (HTTP), Simple Mail Transfer Protocol (SMTP), File Transfer Protocol (FTP), and Telnet, each of which employs TCP.
- Hybrid cloud-based
media production system 100 provides an exemplary framework by which on-premises production environment 102 can scale larger by expanding into cloud-basedvirtual production environment 104. That expansion may include the following: - 1) Media-over-IP multicast
production media flows 132 a are converted to unicast or other cloud permissibleproduction media flows 142 a as they move into cloud-basedvirtual production environment 104. - 2)
SDNO 106 extends into cloud-basedvirtual production environment 104 from on-premises production environment 102 to manage cloudproduction media flows 142 a in cloud-basedvirtual production environment 104, creating a virtual network managing the bandwidth and allocation of cloudproduction media flows 142 a, as well as the announce and discovery of cloud-basedresources 140. In other words,SDNO 106 enables cloud-basedresources 140 for required production processes and manages the connections. In one implementation, this would be accomplished by the cloud providers supplying standard APIs to cloud-basedresources 140. - 3)
ERM 150 communicates withSDNO 106, and coordinates and books cloud-basedresources 140 required by the media workflows, spinning up computing and storage processes as needed, and loading the required applications.ERM 150 can additionally manage the licenses for the applications, should additional applications be required. ERM management of cloud-basedresources 140 and licensing may be API based such thatERM 150 can present a media based dashboard to a user viaGUI 126 of hybrid cloud-basedmedia production system 100, while allocating the appropriate resources from the cloud provider. -
FIG. 2 shows a diagram ofexemplary ERM 250, according to one implementation. As shown inFIG. 2 ,ERM 250 includescomputing platform 252 havinghardware processor 254 andmemory 256 implemented as a non-transitory storage device. According to the present exemplary implementation,memory 256 stores resource management software code 258, and may store one or more reports 224 (hereinafter “report(s) 224”) generated by resource management software code 258.ERM 250 corresponds in general toERM 150, inFIG. 1 . As a result,ERM 250 may share any of the characteristics attributed toERM 150 by the present disclosure, and vice versa. - It is noted that, although the present application refers to resource management software code 258 as being stored in
memory 256 for conceptual clarity, more generally,memory 256 may be any computer-readable non-transitory storage medium. The expression “computer-readable non-transitory storage medium,” as used in the present application, refers to any medium, excluding a carrier wave or other transitory signal that provides instructions tohardware processor 254 ofERM 150/250. Thus, a computer-readable non-transitory medium may correspond to various types of media, such as volatile media and non-volatile media, for example. Volatile media may include dynamic memory, such as dynamic random access memory (dynamic RAM), while non-volatile memory may include optical, magnetic, or electrostatic storage devices. Common forms of computer-readable non-transitory media include, for example, optical discs, RAM, programmable read-only memory (PROM), erasable PROM (EPROM), and FLASH memory. - It is further noted that although
FIG. 2 depicts resource management software code 258 as being stored as single software module inmemory 256, that representation is also provided merely as an aid to conceptual clarity. More generally,ERM 150/250 may include one or more computing platforms, such as computer servers or computer work stations for example, which may be co-located, or may form an interactively linked but distributed network. - As a result,
hardware processor 254 andmemory 256 may correspond to distributed processor and memory resources. Thus, it is to be understood that resource management software code 258 may be stored and/or executed using the distributed memory and/or processor resources ofERM 150/250.ERM 150/250 may correspond to one or more web servers, accessible over a packet-switched network such as the Internet, for example. Alternatively,ERM 150/250 may correspond to one or more computer servers supporting a wide area network (WAN), a LAN, or included in another type of limited distribution or private network. - A user of hybrid cloud-based
media production system 100 may utilizeGUI 126 to review the performance of hybrid cloud-basedmedia production system 100 as described in report(s) 224 generated by resource management software code 258 ofERM 150/250, when executed byhardware processor 254. Report(s) 224 may include performance and/or financial metrics. For example, in some implementations report(s) generated by resource management software code 258 may reveal the profitability or return-on-investment (ROI) of media content in the form of TV programming content or feature film content produced using hybrid cloud-basedmedia production system 100 based on billing and licensing information obtained fromERM 150. - As a specific example, in some implementations,
hardware processor 254 may execute resource management software code 258 to aggregate financial metrics corresponding to processing of cloudproduction media flows 142 a using cloud-basedresources 140, and to determine, using one or more of those financial metrics, the cost of processing cloudproduction media flows 142 a in cloud-basedvirtual production environment 104. Moreover, in some implementations,hardware processor 254 may further execute resource management software code 258 to obtain revenue data for post-production cloud media flows 142 b corresponding respectively to cloudproduction media flows 142 a, to determine, using the cost and the revenue data, the ROI for post-production cloud media flows 142 b, and to generate report(s) 224 including at least the ROI. - It is noted that, in various implementations, report(s) 224 generated using resource management software code 258 may be stored in
memory 256 and/or may be copied to non-volatile storage. Alternatively, or in addition, and as noted above, in some implementations those reports may be displayed to a user of hybrid cloud-basedmedia production system 100 viaGUI 126. - In public cloud environments, the cloud host provider may work with the media applications,
SDNO 106, andERM 150 to present to an on-premises production environment 102 based system user a hybrid but apparently seamless production environment. Standards and specifications such as Networked Media Open Specifications (NMOS) that define the methods for discovery, bandwidth reservation, and the like can be used to establish the framework to create this hybrid architecture, and enableERM 150 andSDNO 106 to establish the features required for a dynamic environment. As a result,SDNO 106 andERM 150 would present to the user a seamless environment in which it is impossible, or nearly so, to distinguish where on-premises production environment 102 ends and cloud-basedvirtual production environment 104 begins. -
FIG. 3 shows a diagram ofexemplary interaction environment 300 forERM 350 participating in a hybrid cloud-based media production process, according to one implementation. As shown inFIG. 3 , in addition toERM 350,interaction environment 300 includes on-premises production environment 302, cloud-basedvirtual production environment 304, network orchestrator or SDNO 306,resources database 362, billing andreporting metrics database 364,common carrier interface 366, andlicensing database 368. In addition,FIG. 3 showscommon carrier API 372,cloud API 374,SDNO API 322,licensing API 378, and localnetwork communication links 370 supporting communications betweenERM 350 and each of on-premises production environment 302,resources database 362, and billing andreporting metrics database 364. - Also shown in
FIG. 3 are multicastproduction media flows 332 a, cloudproduction media flows 342 a corresponding to multicastproduction media flows 332 a, post-production cloud media flows 342 b resulting from processing of cloudproduction media flows 342 a in cloud-basedvirtual production environment 304, and post-productionmulticast media flows 332 b corresponding to post-production cloud media flows 342 b. It is noted that in use cases in which multicast media flows are permissible in cloud-basedvirtual environment 304, the correspondence between cloudproduction media flows 342 a and multicastproduction media flows 332 a, as well as the correspondence between post-productionmulticast media flows 332 b and post-production cloud media flows 342 b may be one-to-one. However, in use cases in which multicast media flows are impermissible in cloud-basedvirtual environment 304, the correspondence between cloudproduction media flows 342 a and multicastproduction media flows 332 a may be many-to-one, while the correspondence between post-productionmulticast media flows 332 b and post-production cloud media flows 342 b may be one-to-many. -
ERM 350 corresponds in general toERM 150/250 inFIGS. 1 and 2 . Consequently,ERM 350 may share any of the characteristics attributed toERM 150/250 by the present disclosure, and vice versa. In addition, on-premises production environment 302, cloud-basedvirtual production environment 304, network orchestrator or SDNO 306 correspond respectively in general to on-premises production environment 102, cloud-basedvirtual production environment 104, andSDNO 106, inFIG. 1 . As a result, on-premises production environment 302, cloud-basedvirtual production environment 304, network orchestrator or SDNO 306 may share any of the characteristics attributed to respective on-premises production environment 102, cloud-basedvirtual production environment 104, andSDNO 106 by the present disclosure, and vice versa. -
SDNO API 322 corresponds in general toSDNO API 122, inFIG. 1 , and those corresponding features may share any of the characteristics attributed to either corresponding feature by the present disclosure. Moreover, multicastproduction media flows 332 a, cloudproduction media flows 342 a, post-production cloud media flows 342 b, and post-productionmulticast media flows 332 b correspond respectively in general to multicastproduction media flows 132 a, cloudproduction media flows 142 a, post-production cloud media flows 142 b, and post-productionmulticast media flows 132 b. Thus, multicastproduction media flows 332 a, cloudproduction media flows 342 a, post-production cloud media flows 342 b, and post-productionmulticast media flows 332 b may share any of the characteristics attributed to respective multicastproduction media flows 132 a, cloudproduction media flows 142 a, post-production cloud media flows 142 b, and post-productionmulticast media flows 132 b by the present disclosure, and vice versa. That is to say, in some implementations, cloudproduction media flows 342 a may be unicastproduction media flows 342 a, and post-production cloud media flows 342 b may be post-production unicast media flows 342 b. - The functionality of
ERM 150/250/350 will be further described by reference toFIG. 4 in combination withFIGS. 1, 2, and 3 .FIG. 4 showsflowchart 480 presenting an exemplary method for use byERM 150/250/350. With respect to the method outlined inFIG. 4 , it is noted that certain details and features have been left out offlowchart 480 in order not to obscure the discussion of the inventive features in the present application. - Referring to
FIGS. 1, 3, and 4 in combination,flowchart 480 begins with communicating withSDNO 106/306 to identify one or more multicastproduction media flows 132 a/332 a for processing in cloud-basedvirtual production environment 104/304 (action 481). Multicastproduction media flows 132 a/332 a may include streaming audio content, streaming video content, streaming audio-video content, graphics, or one or more media files, to name a few examples. For example, in addition to the real-time media flows included in multicastproduction media flows 132 a/332 a, multicastproduction media flows 132 a/332 a may also include associated media files that could be used at runtime, could be re-used at other times, or could be exported. Moreover, where multicastproduction media flows 132 a/332 a include video, they may take the form of carriera feeds or remote feeds, for example. - It is noted that where multicast
production media flows 132 a/332 a originate in on-premises production environment 102/302, the timing protocol applied to multicastproduction media flows 132 a/332 a may be incompatible with timing schemes permitted in the cloud. For example, timing of multicastproduction media flows 132 a/332 a may be controlled in on-premises production environment 102/302 using Precision Time Protocol (PTP), which is known in the art, but which is typically not permitted in cloud-based computing environments. However, it is contemplated that cloud-basedvirtual production environment 104 may evolve to support use of PTP. Consequently, in some implementations one or more multicastproduction media flows 132 a may have a timing protocol that is impermissible in cloud-basedvirtual production environment 104, while in other implementations the timing protocol used for one or more multicastproduction media flows 132 a may be permitted in cloud-basedvirtual production environment 104. -
Action 481 may be triggered by workflow requirements, such as turnaround time or scheduling, by resource constraints imposed bylocal resources 110, or may be scheduled to occur at predetermined intervals (e.g., daily, weekly, monthly, etc.), for example. Referring toFIG. 2 , with continued reference toFIGS. 1, 3, and 4 ,action 481 may be performed by resource management software code 258, executed byhardware processor 254 ofERM 150/250/350, and usingSDNO API 122/322. -
Flowchart 480 continues with identifying one or more of cloud-basedresources 140 for processing one or more cloudproduction media flows 142 a/342 a in cloud-basedvirtual production environment 104/304 (action 482). One or more cloudproduction media flows 142 a/342 a may be converted from and correspond to one or more multicastproduction media flows 132 a/332 a identified inaction 481. It is noted that, in some implementations, conversion of one or more multicast production media flow(s) 132 a/332 a into one or more cloudproduction media flows 142 a/342 a may be performed by hybrid cloud-basedmedia production system 100. However, in other implementations, that conversion may be performed by a host provider supplying cloud-basedresources 140, or by an independent third party provider of multicast to unicast conversion services. - Conversion of one or more multicast
production media flows 132 a/332 a into one or more cloudproduction media flows 142 a/342 a is typically performed before delivery of one or more cloudproduction media flows 142 a/342 a intocloud bandwidth 144 of cloud-basedvirtual production environment 104/304. Conversion of one or more multicastproduction media flows 132 a/332 a into one or more cloudproduction media flows 142 a/342 a may include aliasing, performing Network Address Translation (NATing), or some other form of IP address translation to convert one or more multicastproduction media flows 132 a/332 a into unicast production media flows, or into any other IP transmission format permissible in cloud-basedvirtual production environment 104/304. Identification of cloud-basedresources 140 needed to process one or more cloudproduction media flows 142 a/342 a may be performed by resource management software code 258, executed byhardware processor 254 ofERM 150/250/350. -
Flowchart 480 continues with determining whether a license or licenses exists for the one or more cloud-based resources identified in action 482 (action 483).Action 483 may be performed by resource management software code 258, executed byhardware processor 254 ofERM 150/250/350. For example, in some implementations,action 483 may includeERM 150/250/350 communicating withresources database 362 viacommunication link 370 to determine what license resources are presently in effect, and whether those licensing resources cover the one or more cloud-based resources needed to process one or more cloudproduction media flows 142 a/342 a in cloud-basedvirtual production environment 104/304. -
Flowchart 480 continues with obtaining the license or licenses for the one or more cloud-based resources needed to process one or more cloudproduction media flows 142 a/342 a in cloud-basedvirtual production environment 104/304 if that/those license(s) do not exist (action 484).Action 484 may be performed by resource management software code 258, executed byhardware processor 254 ofERM 150/250/350. For example, in some implementations,action 484 may includeERM 150/250/350 communicating withlicensing database 368 vialicensing API 378 to obtain any needed licenses. However, it is noted that in use cases in whichaction 483 determines that the necessary license(s) exist,action 484 may be skipped. - It is noted that possible use cases giving rise to situations in which a needed license does not exist may include a last-minute change in workflow resulting in a function not having been planned for, a change in vendor, or the expiration of a license. However, in some use cases there may be a “site license” for a function, as known in the art, eliminating the need for license reporting.
-
Flowchart 480 continues with provisioning cloud-basedvirtual production environment 104/304 with the one or more cloud-basedresources 140 identified as needed for processing one or more cloudproduction media flows 142 a in action 482 (action 485).Action 485 may followaction 484, or may be performed in response to determining that the necessary license(s) already exist inaction 483. Provisioning cloud-basedvirtual production environment 104/304 with cloud-basedresources 140 may include one or more of reservingcloud bandwidth 144, ordering cloud-based computing anddata storage resources 146, and ordering cloud-basedproduction applications 148, for example. Provisioning of cloud-based virtual production environment inaction 485 may be performed by resource management software code 258, executed byhardware processor 254 ofERM 150/250/350, and usingcloud API 374. - In some implementations, the method outlined by
flowchart 480 may conclude withaction 485 described above. However, in other implementations,flowchart 480 may continue with the optional action of reserving common carrier bandwidth for transporting one or more cloudproduction media flows 142 a/342 a into cloud-basedvirtual production environment 104/304 (action 486). For example, in some implementations,optional action 486 may include identifying the amount of common carrier bandwidth required for transporting one or more cloudproduction media flows 142 a/342 a into cloud-basedvirtual production environment 104/304, and then reserving it. Reserving common carrier bandwidth for transporting one or more cloudproduction media flows 142 a/342 a into cloud-basedvirtual production environment 104/304 may be performed by resource management software code 258, executed byhardware processor 254 ofERM 150/250/350. In some implementations, for instance such a reservation may be made byERM 150/250/350 through use ofcommon carrier interface 366 andcommon carrier API 372. - It is noted that as production media flows are converted from multicast production media flow(s) 132 a/332 a to one or more cloud
production media flows 142 a/342 a, they may come through different network paths, resulting in wander and jitter that causes one or more cloudproduction media flows 142 a/342 a to move out of time with one another. Because production processing of one or more cloudproduction media flows 142 a/342 a is to be performed in cloud-basedvirtual production environment 104/304, alignment of one or more cloudproduction media flows 142 a/342 a must typically be done after their delivery into cloud-basedvirtual production environment 104/304, and may be performed bySDNO 106/306 using a cloud permissible or “cloud friendly” timing protocol. - As noted above, in on-
premises production environment 102/302, PTP may be used in media-over-IP to align multicast production media flow(s) 132 a/332 a. In order to achieve analogous timing in cloud-basedvirtual production environment 104/304 in implementations in which use of PTP is not permitted there, one or more cloudproduction media flows 142 a/342 a must be buffered, as well as being timed using a cloud permissible timing protocol, such as Network Time Protocol (NTP) for example. -
Optional action 486 may also include reserving common carrier bandwidth for transporting one or more post-production cloud media flows 142 b/342 b out of cloud-basedvirtual production environment 104/304 after processing of one or more cloudproduction media flows 142 a/342 a in cloud-basedvirtual production environment 104/304. For example, in some implementations,optional action 486 may include identifying the amount of common carrier bandwidth required for transporting one or more post-production cloud media flows 142 b/342 b out of cloud-basedvirtual production environment 104/304, and then reserving it. Reserving common carrier bandwidth for transporting one or more post-production cloud media flows 142 b/342 b out of cloud-basedvirtual production environment 104/304 may be performed by resource management software code 258, executed byhardware processor 254 ofERM 150/250/350. In some implementations, for instance such a reservation may be made byERM 150/250/350 through use ofcommon carrier interface 366 andcommon carrier API 372. - In some implementations,
flowchart 480 can continue with the optional action of deactivating cloud-basedvirtual production environment 104/304 after processing of one or more cloudproduction media flows 142 a/342 a is complete (action 487).Action 487 results in effective withdrawal of hybrid cloud-basedmedia production system 100 from cloud-basedvirtual production environment 104/304. In other words, cloud-basedresources 140 ordered byERM 150/250/350 and allocated to hybrid cloud-basedmedia production system 100, such ascloud bandwidth 144, cloud-based computing anddata storage resources 146, cloud-basedproduction applications 148, and any temporary licenses obtained byERM 150/250/350, are relinquished back to the cloud host. -
Optional action 487 may be performed by resource management software code 258, executed byhardware processor 254 ofERM 150/250/350. For example, after processing of one or more cloudproduction media flows 142 a/142 b using the one or more cloud-basedresources 140 identified inaction 482,hardware processor 254 may execute resource management software code to receive a notification fromSDNO 106/306 of hybrid cloud-basedmedia production system 100, and deactivate, in response to receiving the notification, cloud-basedvirtual production environment 104/304. - It is noted that, in some implementations, after processing of one or more cloud
production media flows 142 a/342 a into one or more post-production cloud media flows 142 b/342 b, one or more post-production cloud media flows 142 b/342 b may be converted into one or more post-productionmulticast media flows 132 b/332 b. Once converted, one or more post-production media flows 132 b may be returned to on-premises production environment 102/302, or one or more post-production media flows 132 b may be transmitted tophysical post-production facility 134. As noted above,physical post-production facility 134 may be another production facility similar to on-premises production environment 102/302, or may be a media distribution hub, such as a regional affiliate or other affiliated media distributor. Conversion of one or more post-production cloud media flows 142 b/342 b into one or more post-productionmulticast media flows 132 b/332 b, as well as recovery or transmission of one or more post-productionmulticast media flows 132 b/332 b, may be performed bySDNO 106/306. - In some implementations, and as shown in
FIG. 4 ,flowchart 480 can continue and conclude with optionally generating report(s) 224 including at least the ROI for one or more post-production cloud media flows 142 b/342 b and/or post-productionmulticast media flows 132 b/332 b (action 488). For example, and as discussed above by reference toFIG. 2 , in some implementations,hardware processor 254 may execute resource management software code 258 to aggregate financial metrics corresponding to processing of one or more cloudproduction media flows 142 a/342 a using cloud-basedresources 140, and to determine, using one or more of those financial metrics, the cost of processing one or more cloudproduction media flows 142 a/342 a in cloud-basedvirtual production environment 104/304. Moreover, in some implementations,hardware processor 254 may frther execute resource management software code 258 to obtain revenue data for one or more post-production cloud media flows 142 b/342 b corresponding respectively to one or more cloudproduction media flows 142 a/342 a, to determine, using the cost and the revenue data, the ROI for one or more post-production cloud media flows 142 b/342 b, and to generate report(s) 224 including at least the ROI. - It is emphasized that one or more of
optional actions action 484 may be omitted from the method outlined byflowchart 480. Thus, in some implementations, the method outlined byflowchart 480 may continue directly fromaction 483 to conclude withaction 485, while inother implementations actions action 485 may be followed by any one ofactions hardware processor 254 may execute resource management software code 258 to performactions actions actions - Thus, the present application describes an ERM solution that addresses and overcomes the drawbacks and deficiencies in the conventional art. The ERM solution disclosed in the present application can be used to enable a true hybrid production environment that is configured to scale to a much greater resource capability than is available locally. Media applications used in the production process would look the same regardless of whether they are local resources or cloud-based resources. The disclosed ERM solution may be advantageously utilized to manage and allocate the added resources needed when they are not local.
- From the above description it is manifest that various techniques can be used for implementing the concepts described in the present application without departing from the scope of those concepts. Moreover, while the concepts have been described with specific reference to certain implementations, a person of ordinary skill in the art would recognize that changes can be made in form and detail without departing from the scope of those concepts. As such, the described implementations are to be considered in all respects as illustrative and not restrictive. It should also be understood that the present application is not limited to the particular implementations described herein, but many rearrangements, modifications, and substitutions are possible without departing from the scope of the present disclosure.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/869,203 US11212258B2 (en) | 2019-06-20 | 2020-05-07 | Extensible resource management for hybrid cloud-based media production |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962864279P | 2019-06-20 | 2019-06-20 | |
US16/869,203 US11212258B2 (en) | 2019-06-20 | 2020-05-07 | Extensible resource management for hybrid cloud-based media production |
Publications (2)
Publication Number | Publication Date |
---|---|
US20200404035A1 true US20200404035A1 (en) | 2020-12-24 |
US11212258B2 US11212258B2 (en) | 2021-12-28 |
Family
ID=74038108
Family Applications (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/800,853 Active 2040-03-05 US11470041B2 (en) | 2019-06-20 | 2020-02-25 | Software defined network orchestration to manage media flows for broadcast with public cloud networks |
US16/869,137 Active 2040-08-06 US11228564B2 (en) | 2019-06-20 | 2020-05-07 | Hybrid cloud-based media production |
US16/869,236 Active 2040-11-12 US11362994B2 (en) | 2019-06-20 | 2020-05-07 | Media flow transport security management |
US16/869,203 Active 2040-07-04 US11212258B2 (en) | 2019-06-20 | 2020-05-07 | Extensible resource management for hybrid cloud-based media production |
US17/815,147 Pending US20220360559A1 (en) | 2019-06-20 | 2022-07-26 | Software defined network orchestration to manage media flows for broadcast with public cloud networks |
Family Applications Before (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/800,853 Active 2040-03-05 US11470041B2 (en) | 2019-06-20 | 2020-02-25 | Software defined network orchestration to manage media flows for broadcast with public cloud networks |
US16/869,137 Active 2040-08-06 US11228564B2 (en) | 2019-06-20 | 2020-05-07 | Hybrid cloud-based media production |
US16/869,236 Active 2040-11-12 US11362994B2 (en) | 2019-06-20 | 2020-05-07 | Media flow transport security management |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/815,147 Pending US20220360559A1 (en) | 2019-06-20 | 2022-07-26 | Software defined network orchestration to manage media flows for broadcast with public cloud networks |
Country Status (1)
Country | Link |
---|---|
US (5) | US11470041B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11212258B2 (en) | 2019-06-20 | 2021-12-28 | Disney Enterprises, Inc. | Extensible resource management for hybrid cloud-based media production |
US11455228B2 (en) | 2020-08-03 | 2022-09-27 | Disney Enterprises, Inc. | Non-linear management of real time sequential data in cloud instances via time constraints |
US11695732B2 (en) | 2021-05-13 | 2023-07-04 | Disney Enterprises Inc. | Architecture features for a media-centric firewall |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114064211B (en) * | 2021-11-15 | 2023-06-02 | 湖北公众信息产业有限责任公司 | Video stream analysis system and method based on end-side-cloud computing architecture |
Family Cites Families (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7610621B2 (en) * | 2004-03-10 | 2009-10-27 | Eric White | System and method for behavior-based firewall modeling |
US7721117B2 (en) * | 2005-04-01 | 2010-05-18 | Sherer W Paul | Stream control failover utilizing an attribute-dependent protection mechanism |
WO2008141169A1 (en) * | 2007-05-09 | 2008-11-20 | Entropic Communications, Inc. | Aggregating network packets for transmission to a destination node |
KR101669384B1 (en) * | 2007-07-03 | 2016-10-25 | 쓰리엠 이노베이티브 프로퍼티즈 컴파니 | System and method for assigning pieces of content to time-slots samples for measuring effects of the assigned content |
CA2743144C (en) * | 2008-11-12 | 2016-04-05 | Level 3 Communications, Llc | Dynamic processing of streamed content |
EP2211502A1 (en) * | 2009-01-22 | 2010-07-28 | IBBT vzw | Management system and method for configuring a network for transferring media data |
US9246964B2 (en) * | 2012-11-09 | 2016-01-26 | International Business Machines Corporation | Streaming data on data processes |
US8601144B1 (en) * | 2012-11-27 | 2013-12-03 | Sansay, Inc. | Systems and methods for automatic ICE relay candidate creation |
US9300633B2 (en) * | 2013-03-25 | 2016-03-29 | International Business Machines Corporation | Network-level access control management for the cloud |
US9674251B2 (en) * | 2013-06-17 | 2017-06-06 | Qualcomm Incorporated | Mediating content delivery via one or more services |
US10356138B2 (en) | 2014-01-13 | 2019-07-16 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and nodes for configuring a communication path for a media service |
US9380030B2 (en) * | 2014-05-20 | 2016-06-28 | Avay Inc. | Firewall traversal for web real-time communications |
US9906568B2 (en) * | 2014-08-28 | 2018-02-27 | Avaya Inc. | Hybrid cloud media architecture for media communications |
US9756374B2 (en) * | 2014-09-10 | 2017-09-05 | Ericsson Ab | Advertisement targeting scheme in a multicast ABR environment based on throttled ad channel streaming |
EP3257216B1 (en) * | 2015-02-11 | 2021-01-27 | Expway | Method of handling packet losses in transmissions based on dash standard and flute protocol |
EP3304329A4 (en) | 2015-06-01 | 2018-10-31 | Benjamin Aaron Miller | Break state detection in content management systems |
US20180262551A1 (en) * | 2015-09-21 | 2018-09-13 | Dolby Laboratories Licensing Corporation | Efficient delivery of customized content over intelligent network |
US10931727B2 (en) * | 2016-03-30 | 2021-02-23 | Arris Enterprises Llc | Transparent intercept for adaptive bitrate splicer |
US10320952B2 (en) * | 2016-05-16 | 2019-06-11 | Mellanox Technologies Tlv Ltd. | System-wide synchronized switch-over of multicast flows |
US10015528B2 (en) * | 2016-06-01 | 2018-07-03 | Arris Enterprises Llc | Methods and systems for generation of dynamic multicast channel maps |
CN106209688B (en) | 2016-07-13 | 2019-01-08 | 腾讯科技(深圳)有限公司 | Cloud data multicast methods, devices and systems |
US10440403B2 (en) | 2017-01-27 | 2019-10-08 | Gvbb Holdings S.A.R.L. | System and method for controlling media content capture for live video broadcast production |
CN110915180B (en) * | 2017-05-16 | 2022-06-28 | 瑞典爱立信有限公司 | Low-latency media ingestion system, apparatus and method |
US10986421B2 (en) | 2017-07-03 | 2021-04-20 | Dolby Laboratories Licensing Corporation | Identification and timing data for media content |
US11442445B2 (en) | 2017-08-02 | 2022-09-13 | Strong Force Iot Portfolio 2016, Llc | Data collection systems and methods with alternate routing of input channels |
US10284889B1 (en) | 2018-01-31 | 2019-05-07 | Verizon Patent And Licensing Inc. | Determining an actual start of program content relative to a scheduled start of the program content |
US11017539B2 (en) | 2018-04-30 | 2021-05-25 | Intel Corporation | Object tracking and identification using intelligent camera orchestration |
US11032595B2 (en) * | 2018-09-28 | 2021-06-08 | Rovi Guides, Inc. | Systems and methods for delivery of content via multicast and unicast |
US11252127B2 (en) * | 2018-12-11 | 2022-02-15 | Level 3 Communications, Llc | Systems and methods for processing requests for content of a content distribution network |
US11297494B2 (en) * | 2019-02-01 | 2022-04-05 | T-Mobile Usa, Inc. | Secure rich communication services multicast system |
US10942762B2 (en) | 2019-03-29 | 2021-03-09 | Hewlett Packard Enterprise Development Lp | Launch web browser applications in microservice-based containers |
US11470041B2 (en) | 2019-06-20 | 2022-10-11 | Disney Enterprises, Inc. | Software defined network orchestration to manage media flows for broadcast with public cloud networks |
US11451533B1 (en) | 2019-09-26 | 2022-09-20 | Joinesty, Inc. | Data cycling |
US11309975B2 (en) | 2020-02-10 | 2022-04-19 | Schweitzer Engineering Laboratories, Inc. | Fiber-optically powered antenna |
-
2020
- 2020-02-25 US US16/800,853 patent/US11470041B2/en active Active
- 2020-05-07 US US16/869,137 patent/US11228564B2/en active Active
- 2020-05-07 US US16/869,236 patent/US11362994B2/en active Active
- 2020-05-07 US US16/869,203 patent/US11212258B2/en active Active
-
2022
- 2022-07-26 US US17/815,147 patent/US20220360559A1/en active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11212258B2 (en) | 2019-06-20 | 2021-12-28 | Disney Enterprises, Inc. | Extensible resource management for hybrid cloud-based media production |
US11228564B2 (en) * | 2019-06-20 | 2022-01-18 | Disney Enterprises, Inc. | Hybrid cloud-based media production |
US11362994B2 (en) | 2019-06-20 | 2022-06-14 | Disney Enterprises, Inc. | Media flow transport security management |
US11470041B2 (en) | 2019-06-20 | 2022-10-11 | Disney Enterprises, Inc. | Software defined network orchestration to manage media flows for broadcast with public cloud networks |
US11455228B2 (en) | 2020-08-03 | 2022-09-27 | Disney Enterprises, Inc. | Non-linear management of real time sequential data in cloud instances via time constraints |
US11695732B2 (en) | 2021-05-13 | 2023-07-04 | Disney Enterprises Inc. | Architecture features for a media-centric firewall |
Also Published As
Publication number | Publication date |
---|---|
US20200404034A1 (en) | 2020-12-24 |
US11212258B2 (en) | 2021-12-28 |
US20220360559A1 (en) | 2022-11-10 |
US11228564B2 (en) | 2022-01-18 |
US20200404033A1 (en) | 2020-12-24 |
US11362994B2 (en) | 2022-06-14 |
US11470041B2 (en) | 2022-10-11 |
US20200403972A1 (en) | 2020-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11212258B2 (en) | Extensible resource management for hybrid cloud-based media production | |
KR102127019B1 (en) | Multi-modal communication priority over wireless networks | |
CN101641917B (en) | Network resource negotiation | |
WO2018161933A1 (en) | Live broadcast stream transmission method, apparatus and system, and computer readable storage medium, and computer device | |
WO2014082538A1 (en) | Business scheduling method and apparatus and convergence device | |
CN110035256B (en) | Processing method and device for monitoring resource permission | |
US8077615B2 (en) | Multicast admission control | |
CN102257764B (en) | Multicast quality of service module and method | |
CN106716939A (en) | Improved qos in data stream delivery | |
CN109873864B (en) | Communication connection establishing method and system based on video networking | |
CN110708493B (en) | Method and device for acquiring permission of participating in video networking conference | |
CN110519549B (en) | Conference terminal list obtaining method and system | |
CN109922302B (en) | Conference reservation information acquisition method, system, device and machine readable medium | |
US11337038B2 (en) | Method, device and system for transmitting multicast group information | |
DK2355403T3 (en) | PROCEDURE FOR DISTRIBUTION OF DATA ON A MOBILE AD-HOC REMOVAL DATA | |
CN110719433B (en) | Method and device for displaying online state of terminal, electronic equipment and storage medium | |
US20220035724A1 (en) | Non-linear management of real time sequential data in cloud instances via time constraints | |
CN109600567B (en) | Video conference processing method and system | |
CN109819209B (en) | System, method and device for monitoring resource calling | |
CN110557611B (en) | Information synchronization method, device and storage medium | |
CN113114973A (en) | Video conference method, device and system | |
US20230077580A1 (en) | Priority-Based Production Load Balancing | |
CN111683228A (en) | Data transmission method and device based on video network, electronic equipment and storage medium | |
CN109802853B (en) | Method and device for grading service quality | |
US11546398B1 (en) | Real-time transport (RTC) with low latency and high scalability |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
AS | Assignment |
Owner name: DISNEY ENTERPRISES, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:STREIN, MICHAEL J.;BEARDSLEY, CRAIG L.;MCCORMICK, RYAN N.;REEL/FRAME:052692/0713 Effective date: 20200506 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: AWAITING TC RESP., ISSUE FEE NOT PAID |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |