Delivery platform for cinema content

TWI937326BActive Publication Date: 2026-09-01BARCO NV
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
TW111138416
Authority / Receiving Office
TW · TW
Patent Type
Patents
Current Assignee / Owner
Priority Date
2021-12-13
Filing Date
2022-10-11
Publication Date
2026-09-01
Estimated Expiration
2042-10-10

AI Technical Summary

Technical Problem

The distribution of digital cinema content to movie theaters faces challenges such as managing large digital archives, preventing piracy, and requiring multiple transfers among different servers, leading to increased costs and risks of corruption or piracy, especially when multiple distributors are involved.

Method used

A system and method for distributing digital cinema content using federated server groups, centralized distribution, and a scheduler to manage and deliver content synchronously based on scheduled showtimes, utilizing cloud-based servers and data storage, and implementing a predictive model for traffic estimation to optimize delivery.

Benefits of technology

This approach simplifies and secures the distribution process, reduces costs by minimizing duplication of systems, and ensures timely delivery of content to multiple screens while minimizing piracy risks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure TWG2TB001908303_001
    Figure TWG2TB001908303_001
  • Figure TWG2TB001908303_002
    Figure TWG2TB001908303_002
  • Figure TWG2TB001908303_003
    Figure TWG2TB001908303_003
Patent Text Reader

Abstract

This invention provides a system for distributing Digital Cinema Content (DCC) to cinemas, integrating with content creators, distributors, and cinemas. A master structure including a scheduling system operates to automatically deliver DCCs to individual cinema IT systems. The scheduler ensures the availability of DCCs before or at a cinema IT system before a screening time. The system can automatically generate key delivery messages. These cinema IT systems may include cinema servers comprising media players dedicated to specific screens. These cinema servers can operate as a federated server group. DCCs can be stored on any of the cinema servers and played on any screen in a cinema.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Invention Field Cross-reference to related applications

[0002] This application claims priority to U.S. Application No. 63 / 288,755, filed December 13, 2021, entitled “DELIVERY PLATFORM FOR CINEMA CONTENT,” which is hereby incorporated herein by reference for all purposes. For the purposes of the United States of America, this application claims the benefit of U.S. Application No. 63 / 288,755, filed December 13, 2021, entitled “DELIVERY PLATFORM FOR CINEMA CONTENT,” under 35 U.S.SC § 119, which is hereby incorporated herein by reference for all purposes.

[0003] This invention relates to the delivery of digital cinema content (DCC), such as movies, to cinemas. The invention can be embodied, for example, in systems and methods for delivering digital cinema content. Prior Technology

[0004] Background of the Invention

[0005] Previously, movies were delivered to cinemas as physical films stored on reels. To project a movie, the cinema would need to physically deliver the corresponding reels and load them into an optical cinema projector. To display the movie on more than one screen simultaneously, each screen required a separate set of film reels. After several projections, any particular copy of the movie could deteriorate due to repeated processing, projector malfunction, and the like.

[0006] The emergence of digital projectors capable of projecting movies from digital files has solved some of the inherent problems in distributing movie reels, but has introduced new domain-specific challenges, such as managing extremely large digital files, preventing piracy, and providing the infrastructure for projecting movies from digital files.

[0007] The business of distributing DCCs to cinemas has broken down. DCCs are generated by different production companies. Different distributors have the right to distribute individual films to cinemas in different markets and geographic regions. Typically, DCCs are delivered to cinemas via multiple intermediary entities from distributors. For example, the following methods are not uncommon for delivering DCCs from distributors to cinemas: (i) The distributor places the DCC on the server and then transmits the DCC to the delivery company's server; (ii) The delivery company receives the DCC at the server and then transmits the DCC to a caching server in the cinema, which is controlled locally by the delivery company. (iii) The cinema management company has access to the cache server and uses those permissions to transfer DCC from the cache server to the document package server in the cinema; and (iv) The cinema management system copies the DCC from the document package server to the media server connected to the digital projector that will play the DCC on the specific screen.

[0008] This allocation model requires multiple transfers of DCC across different servers controlled by different entities. Each transfer introduces the risk of digital content being corrupted or pirated, or both.

[0009] In the current configuration used for distributing digital cinema content, if a cinema wants to screen digital content from multiple distributors, it needs to invest in, manage, and maintain multiple different caching servers or other mechanisms for receiving DCCs. The DCC distributors also need to invest in computer infrastructure to receive DCCs from different content creators and distribute them to cinemas. This can involve significant duplication of systems and work, resulting in substantial costs.

[0010] The inventors have recognized the need for improved technology for distributing digital content to cinemas. Summary of the Invention

[0011] Invention Summary

[0012] This invention has multiple states. These states include, but are not limited to: ● Systems and methods for delivering digital cinema content; ● Systems and methods for delivering digital content using a combined server group; ● Systems and methods for managing a cluster of servers used in cinema servers; ● Systems and methods for the centralized distribution of content in digital cinemas; ● Systems and methods for synchronously delivering DCC during active playback; ● Scheduling-based systems and methods for allocating digital content to cinemas.

[0013] The present invention includes the following non-limiting examples.

[0014] One embodiment of the present invention provides a system for distributing and managing digital cinema content. The system includes one or more cinema IT systems. Each of the one or more cinema IT systems is associated with a cinema and includes multiple cinema servers. Each of the multiple cinema servers includes a data storage area. One or more of the cinema servers includes a media player associated with a corresponding screen. The system also includes a main structure configured to selectively deliver digital cinema content to one or more of the cinema IT systems. The main structure includes: one or more main structure data storage areas configured to receive and store digital cinema content; and a scheduler configured to initiate the transmission of copies of the digital cinema content from the main structure to individual cinema IT systems. The scheduler is configured to: determine, at least in part, the delivery deadline for delivering digital cinema content items to one of the cinema IT systems based on the scheduled screening times of the digital content items generated by the cinema IT system; estimate the estimated amount of time required to transfer the digital cinema content's copy of the self-contained data storage area to the cinema IT system; and determine the transfer start time that is at least an estimated amount of time earlier than the delivery deadline.

[0015] The main structure may include, for example, cloud-based servers and data storage. The scheduler may be implemented by software instructions that execute on a cloud-based or other internet-connected server computer.

[0016] In some embodiments, in one or more cinema IT systems, a cinema server is associated with forming a federated server group. The federated server group can provide each media player in the cinema IT system with access to digital cinema content stored, in part or in full, in the data storage area of ​​any of the cinema servers in the federated server group.

[0017] In some embodiments, within a federated server group, one or more cinema servers manage the federated server group. Management may include one or more of the following: determining where and how to store digital cinema content; receiving digital cinema content without interfering with playback; adding cinema servers to the federated server group; and removing cinema servers from the federated server group.

[0018] In some embodiments, the combined server group is configured to adjust the rate at which digital cinema content is transmitted to, from, or within the combined server group.

[0019] In some embodiments, the combined server group and the system share one or more cinema server processing capabilities and transmission capabilities, or both.

[0020] In some embodiments, the combined server group provides a network attached storage (NAS) interface for autonomous architectures to receive transmitted digital cinema content.

[0021] In some embodiments, the system includes a predictive model based on historical data traffic measurements in the data connection between the mainframe and the cinema IT system, and the scheduler applies the predictive model to predict future traffic on the data connection and estimate the estimated time required to transfer copies of digital cinema content from the mainframe data storage to the cinema IT system.

[0022] In some embodiments, the system includes an ordering interface that aggregates information about items of digital cinema content available for purchase from a distributor server and receives orders for delivering a selection of available digital cinema content items to the cinema IT system. In some embodiments, the order requests permission to play the ordered digital cinema content item on a specific device on a screen associated with one of the devices in the cinema IT system. The media players associated with the screen may each have a corresponding public key. The system may be configured to automatically generate at least one Key Delivery Message (KDM) for each of the ordered digital cinema content items, the KDM containing a decryption key for the ordered digital cinema content item encoded using the public key of the corresponding media player.

[0023] In some embodiments, the system includes one or more distributor servers configured to receive digital cinema content for distribution to cinemas.

[0024] In some embodiments, one or more of the cinema servers include a 5G module.

[0025] In some embodiments, the system includes an online user interface that provides information about one or both of the cinema's IT system and cinema servers.

[0026] In some embodiments, the system includes an interface that conveys information about the scheduled screening of DCC items by the cinema IT system and status information about specific DCC items required for the scheduled screening of specific DCC items. The status information includes at least information indicating that specific DCC items have been received and verified by the respective cinema IT systems and information indicating that other specific DCC items have not yet been received by the respective cinema IT systems. The status information may also include more detailed information, such as one or more start times for individual DCC items, and / or the expected completion time for individual DCC items to be transmitted to the cinema IT system.

[0027] Another non-limiting embodiment of the present invention provides a system for distributing and managing digital cinema content. The system includes one or more cinema IT systems. Each of the one or more cinema IT systems is associated with a cinema and includes multiple cinema servers. Each of the multiple cinema servers includes a data storage area and a media player associated with a corresponding screen in the cinema. The system also includes a main structure configured to selectively deliver digital cinema content to one or more of the cinema IT systems. The main structure includes: one or more main structure data storage areas configured to receive and store digital cinema content; and one or more main structure servers configured to transmit copies of the digital cinema content from the main structure data storage areas to one or more of the cinema servers in each of the one or more cinema IT systems. The main structure, in collaboration with one or more entities in the cinema IT system, is configured to schedule and execute the transmission of copies of digital cinema content to meet corresponding delivery deadlines, while adjusting the data rate of transmission and / or suspending and / or prohibiting transmission at times corresponding to: one or more cinema servers having a load higher than the threshold; and / or one or more cinema IT systems having a load higher than the threshold; and / or the data communication link to the cinema IT system having a traffic higher than the threshold.

[0028] In some embodiments, the system includes a scheduler configured to: determine, at least in part, a delivery deadline for delivering an item of digital cinema content to one of the digital cinema content items to the cinema IT system based on the scheduled screening time of the digital content item generated by the cinema IT system; estimate the estimated amount of time required to transfer a copy of the digital cinema content to the cinema IT system; and determine a start time for the transfer that is at least an estimated amount of time earlier than the delivery deadline.

[0029] In some embodiments, the scheduler is configured to predict the load on one or more cinema servers and / or one or more cinema IT systems based on the screening times of the cinema IT systems, and at least in part uses the predicted load as the basis for the start time.

[0030] Another non-limiting embodiment provides a method for allocating and managing Digital Cinema Content (DCC). The method includes: receiving DCC items at a content delivery master structure and storing the DCC items in one or more master structure data storage areas. The method accesses data containing scheduled screening times of DCC items generated by each of one or more cinema IT systems, and determines, at least in part, a delivery deadline for delivering the DCC items to each of the one or more cinema IT systems based on the respective scheduled screening times of the DCC items generated by the cinema IT systems. The method determines an estimated transmission time for transferring copies of the DCC items from the master structure data storage areas to each of the one or more cinema IT systems. For each of the one or more cinema IT systems, the method determines a respective start time for transmitting copies of the DCC items to the cinema IT system, the respective start time being at least an estimated time earlier than the delivery deadline; and begins transmitting copies of the DCC items to the cinema IT system at the respective start time.

[0031] In some embodiments, for at least one of the cinema IT systems, transferring a copy of the DCC project to the cinema IT system includes transferring a copy of the DCC project to a network attached storage (NAS) interface associated with the respective cinema IT system.

[0032] In some embodiments, for at least one of the cinema IT systems, the estimated time required to transfer a copy of the DCC project's self-contained data storage to the cinema IT system is at least partially based on the future traffic volume in the data connection between the mainframe and the cinema IT system estimated by a predictive model based on historical data traffic measurements in the data connection between the mainframe and the cinema IT system.

[0033] In some embodiments, each of the cinema IT systems includes one or more media players, each of the media players being associated with a corresponding screen and each of the media players having a public key. In these embodiments, for each of the one or more cinema IT systems, the method may include: automatically generating at least one key delivery message (KDM) for an item of digital content, the key delivery message containing a decryption key for a copy of the digital content item encoded using the public key of one or more media players in the cinema IT system.

[0034] In some embodiments, the method includes accessing a data storage area containing records of the order in which digital cinema items are played on screens associated with media players of one or more cinema IT systems; and for each of the one or more cinema IT systems: identifying records corresponding to the order in which digital content items are played on the multiple screens associated with the cinema IT system. For each of the cinema IT systems, at least one KDM contains multiple KDMs for digital content items, each of the multiple KDMs being encoded using a public key associated with a media player associated with each of the multiple screens.

[0035] In some embodiments, the determination of each start time is based on one or more of the following: the size of the DCC item; the location of the DCC item stored in the main structure; the bandwidth of the data connection between the location of the DCC item stored in the background and the cinema IT system; the expected traffic on the data connection between the location of the DCC item stored in the background and the cinema IT system; and the availability of data storage on the cinema IT system.

[0036] In some embodiments, the determination of each start time is based on the expected traffic on the data connection terminated at the cinema's IT system.

[0037] In some embodiments, the estimated transmission time of a DCC item is determined based on the size of the DCC item, the location from which the DCC item will be transmitted to the cinema IT system, the bandwidth of the connection through which a copy of the DCC item will be transmitted, and the estimated traffic on the connection.

[0038] In some embodiments, the estimated transmission time of an item in the DCC is determined by taking into account the impact of other items in the DCC being transmitted by the main structure.

[0039] In some embodiments, the method includes adjusting the transmission rate of an item from the DCC to at least one of the cinema IT systems. In some embodiments, the adjustment is performed in response to a determination that at least one item from the streaming DCC is being streamed to at least one of the cinema IT systems.

[0040] In some embodiments, the method includes setting individual start times to the time when individual cinema IT systems and / or data communication links connected to individual cinema IT systems will operate under low capacity.

[0041] In some embodiments, setting individual start times includes setting the individual start time to occur after midnight and before local noon on the individual cinema IT system.

[0042] In some embodiments, determining the start time of each of the cinema IT systems includes: determining the available storage capacity of each of the cinema IT systems at a time close to the latest start time of the project to be delivered DCC 102 but not later than the corresponding delivery deadline, and determining whether to set the start time earlier than the latest start time based on the available storage capacity of each cinema IT system.

[0043] In some embodiments, one or more cinema IT systems include multiple cinema IT systems; and the method includes simultaneously delivering DCC items to multiple cinema IT systems, for example by multicast.

[0044] In some embodiments, the method includes providing an interface that conveys information about the scheduled screening of DCC items in a cinema and status information about the status of specific DCC items required for the scheduled screening.

[0045] In some embodiments, the method includes the allocator receiving an upload authorization to upload DCC items from a server associated with the allocator to the main structure.

[0046] In some embodiments, the method includes a self-allocator receiving an allocation grant to transmit a DCC project autonomous structure to one or more cinema IT systems. In some embodiments, the allocation grant specifies that a digital content project is authorized for playback on one or more specific screens. In some embodiments, the allocation grant specifies the duration on which the digital content project can be played.

[0047] In some embodiments, transmitting a copy of the DCC project to the cinema IT system includes delivering a copy of the DCC project to a data storage location within the cinema IT system, from which a copy of the DCC 102 project can be played on a specific screen authorized to play the DCC project without further transmitting a copy of the DCC project within the cinema IT system.

[0048] In some embodiments, the method includes adjusting the transmission rate of a copy of the DCC to the cinema IT system based on the current load experienced by the cinema IT system.

[0049] In some embodiments, the method includes adjusting the transmission rate of the DCC copy to the cinema IT system based on the current traffic on the data link used to deliver the DCC copy to the cinema IT system.

[0050] Another aspect of the invention provides a method for delivering digital cinema content as described herein and / or depicted in the accompanying drawings.

[0051] Another aspect of the invention provides an apparatus having any new and inventive features, combinations of features, or sub-combinations of features as described herein.

[0052] Another aspect of the invention provides a method having any new and inventive steps, actions, combinations of steps and / or actions, or sub-combinations of steps and / or actions as described herein.

[0053] Other forms and exemplary embodiments are illustrated in the accompanying drawings and / or described in the following description.

[0054] It is emphasized that the present invention refers to all combinations of the above features, even if such features are described in different claims, illustrated in different figures and / or described in different chapters, paragraphs or sentences. Simple Explanation of the Diagram

[0055] Non-limiting examples of the present invention are described with reference to the accompanying drawings.

[0056] Figure 1 is a schematic diagram depicting an example cinema management system used for cinema content delivery.

[0057] Figure 2 is a schematic diagram depicting an example cinema's IT system configured to work in conjunction with the cinema management system shown in Figure 1.

[0058] Figure 3 is a schematic diagram depicting a group of instance federated servers that may be included in the IT system of Figure 2.

[0059] Figure 4 is a block diagram depicting an example method for delivering digital cinema content. Implementation

[0060] Detailed Description of Preferred Embodiments

[0061] Throughout the following description, specific details are set forth in order to provide a more thorough understanding of the invention. However, the invention may be practiced without such details. In other instances, well-known elements have not been shown or described in detail to avoid unnecessarily obscuring the invention. Therefore, the specification and drawings should be viewed in an illustrative rather than restrictive sense.

[0062] Figure 1 is a schematic diagram of an example cinema management system 100. The cinema management system 100 incorporates multiple features that can be applied in combination (as described) or in any sub-combination or individually. These features include, but are not limited to: ● A single system configured to allow the participation of multiple stakeholders who play different roles in making digital cinema content available and delivered. Stakeholders may include interconnected IT systems associated with one or more cinemas, one or more distributors, one or more post-production units, etc. Providing a universal single system such as System 100 can simplify, enhance reliability, and / or accelerate the delivery of digital cinema content. ● The main structure, which is assembled with: o Automatically schedules the delivery of DCCs to the cinema IT system, syndicated server groups, and / or specific servers based on scheduling data. Scheduling data may include one or more of the following: screening time, latest delivery date, destination (e.g., server, screen, syndicated server group, etc.), storage availability, server congestion, and network congestion. Scheduling may consider factors such as: available bandwidth, estimated time required to deliver a specific DCC to its destination, other scheduled deliveries of digital cinema content, scheduled screening times at the cinema IT system, and / or available storage to ensure that a specific DCC is available at the cinema IT system for playback on one or more screens at the corresponding screening time. o Delivering DCC to one or more cinema IT systems, one or more combined server groups and / or one or more servers; and / or o represents a temporary central storage unit, whose self-distributor server receives DCC and stores such content until it is delivered to one or more cinema IT systems, one or more combined server groups and / or one or more servers. ● A cinema IT system comprising a unified server group that combines multiple servers within the cinema IT system to aggregate storage available on the multiple servers, while facilitating playback with the help of media players associated with some or all of the multiple servers. ● A combined server group, comprising multiple servers, each of which contains computer software that can be executed by the server and configured to perform the following operations when executed by that server: o Manage a federated server group, either individually or in cooperation with some or all other servers in the federated server group; and o serves as a communication link between one or both of the other servers within the federated server group and a party outside the federated server group. ● Network connectivity of the Cinema Management System 100. This network is designed to allow relatively fast transmission of DCC between components such as the distributor server, mainframe, and cinema IT system server. ● Cinema IT systems, configured in accordance with the methods described herein, to facilitate uninterrupted playback of DCC while delivering additional content and / or managing joint server groups. ● The cinema management system 100 described herein includes features that facilitate scaling the cinema management system 100 to operate with a larger number of cinema IT systems and / or a large number of cinema servers. For example, such a system can be scaled to include one or both of the following: 1,000 or more cinema IT systems and 40,000 or more servers spanning any number of cinema IT systems.

[0063] The cinema management system 100 includes a network of computers connected via data communication links. System 100 provides an integrated platform for delivering DCCs from multiple sources (content creators and distributors) to multiple consumers (cinemas). System 100 includes features that simplify DCC allocation, make DCC allocation more reliable, reduce complexity compared to current systems, reduce the risk of piracy, and simplify DCC management within cinemas (especially those with multiple screens). Not all embodiments of the invention include all features of the described system 100.

[0064] The example system 100 shown in Figure 1 includes one or more post-production servers 101. The post-production server 101 is associated with the content creator 104 that produces DCC 102. DCC 102 may include, for example, one or more of the following: film, commercial, short film, performance, recorded event (e.g., drama, concert, opera, etc.), and streamed content (e.g., streamed live opera performance, streamed live theatrical performance, streamed live concert, streamed sporting event, etc.).

[0065] Content creator 104 can be any source of DCC 102. For example, some or all of content creator 104 can be post-production organizations preparing films or other DCCs 102 for distribution in different markets. Content creator 104 can, for example, perform one or more of the following: post-production editing, adding music and other audio effects, adding visual effects, adding subtitles, etc. DCCs 102 prepared by content creator 104 can be ready for screening in cinemas in one or more markets. Content creator 104 may additionally or alternatively include broadcasters via streaming events.

[0066] Content creator 104 may save DCC 102 that is ready for distribution on post-production server 101. Figure 1 depicts each content creator 104 saving DCC 102 on one post-production server 101. However, any particular content creator 104 may have the right to save DCC 102 on multiple post-production servers 101.

[0067] Although system 100 can work with a single post-production server 101, system 100 advantageously includes multiple production servers 101. Multiple post-production servers 101 associated with different content creators 104 are included in system 100, advantageously facilitating the scheduling, acquisition, and management of a full range of DCCs 102 originating from multiple content creators 104 within a single system by the cinema. Generally, because the field of DCC production 102 is fragmented, with several large production studios and many smaller independent content creators, cinemas will want to include DCCs 102 from multiple content creators 104 in their products.

[0068] When content creator 104 wants to make DCC 102's project available, content creator 104 can store DCC 102's project in the corresponding post-production server 101. Content creator 104 can store multiple projects of DCC 102 in the corresponding post-production server 101.

[0069] In the cinema business, cinemas typically contract with distributors 105 to obtain DCC 102. Different distributors 105 may have the right to distribute DCC 102 from different content creators 104 in different geographic regions and / or different market segments. Distributors 105 may be responsible for adapting DCC 102 to suit a specific geographic region or market segment. For example, distributor 105 may be responsible for generating subtitles and / or dubbing in one or more languages. System 100 may be configured to deliver DCC 102 from content creator 104 to one or more distributors 105.

[0070] In the illustrated embodiment, system 100 includes a distributor server 103. Each distributor server 103 is associated with a distributor 105. Distributor 105 can be extended with DCC 102 received at the corresponding distributor server 103. For example, distributor 105 can add subtitles to the language associated with the region to which the distributor is preparing to distribute DCC 102.

[0071] System 100 can be configured with: ● Automatically deliver DCC 102 to a specific allocator server 103 (e.g., for a specific allocator 105 to distribute all DCC 102 from a specific content creator 104). ● Automatically deliver all DCCs 102 to specific multiple allocator servers 103 (e.g., for content creators 104 using specific allocators 105 to distribute DCCs 102 in different regions or market segments). ● Allows content creators 104 to specify one or more distributor servers 103 for each project of DCC 102.

[0072] Content creator 104 can control system 100 to transfer one or more DCC 102 items to one or more distributors 105 at specified times. System 100 can provide a control panel or interface that allows content creator 104 to perform the following operations: ● Transfer the DCC 102 project from the content creator 104's computer system to the corresponding post-production server 101; ● The corresponding post-production server 101 transmits any item from the DCC 102 project to one or more distributor servers 103; ● Control the timing of transmission.

[0073] The post-production server 101 and the distribution server 103 can be separated from other computer systems used by the content creator 104 and the distributor 105, respectively. This separation improves the overall reliability of system 100 and its resistance to piracy. The post-production server 101 and the distribution server 103 can be combined with: ● It has the functionality required by system 100; ● Only accepts data of the specific type corresponding to DCC 102; ● Check each received item for errors in DCC 102 and verify that it is DCC 102; ● Only transmit the received items of DCC 102 to the destination within system 100.

[0074] The post-production server 101 and the distributor server 103 can be protected by a computer firewall from other computers operated by the content creator 104 and the distributor 105, respectively.

[0075] Figure 1 depicts each post-production server 101 transmitting DCC 102 to a distributor server 103. However, any distributor server 103 may receive DCC 102 from one or more post-production servers 101, and a post-production server 101 may send DCC 102 to any number of distributor servers 103.

[0076] In some embodiments, the content creator 104 may also operate as the distributor 105. In this case, the content creator 104 may be associated with both or only the distributor server 103 and the post-production server 101.

[0077] The post-production server 101 and the distributor server 103 are included in the system 100 to provide content creators 104 with a fast, flexible, secure, consistent and convenient way to deliver DCC 102 to distributor 105 and ultimately distribute DCC 102 to cinemas.

[0078] The cinema management system 100 includes a main structure 110. The main structure 110 is used to deliver cinema content 102 from the distributor server 103 to the cinema IT system 120 associated with the cinema. Since the system 100 includes a distributor server 103 for multiple distributors 105, the cinema IT system 120 can receive DCC 102 from any of the distributors 105 in a consistent manner by means of the system 100.

[0079] For streaming events (such as streaming live concerts, streaming live sporting events, etc.), content creator 104 can directly stream DCC 102 to host structure 110 without prior uploading to one or both of post-production server 101 and distributor server 103. Host structure 110 can copy and deliver the streaming content to individual cinema IT systems 120 for immediate and / or delayed playback.

[0080] The main structure 110 may include a data storage area 111 that can be used as a temporary centralized storage system for the cinema management system 100. Specifically, the main structure 110 may receive DCCs 102 to be allocated to one or more cinema IT systems 120 from one or more distributor servers 103. The main structure 110 may then temporarily store the received DCCs 102 or portions of DCCs 102 in the data storage area 111.

[0081] As described below, system 100 enables master structure 110 to subsequently deliver DCC 102 to cinema IT system 120, which has requested DCC 102 in the schedule, ensuring that DCC 102 is properly received in cinema IT system 120 well in advance of its scheduled screening. Master structure 110 may forward DCC 102 to cinema IT system upon receipt (i.e., in parts) or after all DCC 102 has been received.

[0082] In some embodiments, the master structure 110 handles different types of DCCs in different ways. For example, if DCC 102 contains a streamed event, the master structure 110 may forward it to the cinema IT system 120 upon receiving DCC 102. For example, if DCC 102 contains a preset event (e.g., a movie), the master structure 110 may wait to deliver DCC 102 to the cinema IT system 120 until it has received and stored all DCCs 102.

[0083] The main structure 110 may include, for example, one or more servers, which may be hosted, for example, at the location of an operator of the cinema management system 100 and / or on cloud storage. The servers of the main structure 110 may be geographically distributed to facilitate the rapid delivery of DCC 102's projects to cinemas worldwide.

[0084] DCC 102 often requires a considerable amount of storage. For example, a feature-length movie in a digital format suitable for projecting high-quality images via a digital cinema projector typically has a size of 250GB or more. A DCC 102 with a longer playback time in a higher resolution format can have a size of 1TB or more. The main structure 110 can contain sufficient storage capacity to store a large number of items available for distribution to cinemas using DCC 102.

[0085] Since each item in DCC 102 typically contains a large amount of data, system 100 includes a sufficiently large amount of data storage for DCC 102. Another problem caused by the large size of each item in DCC 102 is that transferring a copy of an item in DCC 102 from one part of system 100 to another is not instantaneous or near instantaneous, but can take a considerable amount of time.

[0086] DCC 102 is often stored in files, but other data structures can be used. A DCC 102 item can be split among multiple files or other data structures. For example, a movie may contain: a video file containing the image to be projected, one or more audio files containing the sound to be played, and one or more subtitle files containing subtitles in one or more languages. This collection of files can be provided together in a Digital Cinema Package (DCP). A DCP intended for different markets may include audio and / or subtitles in different languages. Standard formats exist for DCPs, including SMPTE DCP as defined by SMPTE standard 429-2 Digital Cinema Package and the earlier Interop DCP.

[0087] Post-production server 101, distributor server 103, mainframe 110, content creator 104, and cinema IT system 120 are interconnected via data links 150. Data links 150 may include dedicated data links and / or data links provided by internet infrastructure and / or satellite data links. Ideally, all data links 150 are high-speed data links; however, this is not always possible. Some towns and cities where cinema IT system 120 may be located are served only by relatively low-bandwidth data connections.

[0088] The inventors have recognized significant logical problems in making DCC 102 available for scheduled screenings. Due to the large size of DCC 102, delivering digital content 102 from one server to another can be time-consuming, even on currently available communication channels. Even in a cinema, local transmission over a modern local area network (e.g., from a cache server to a packet server or from a packet server to a media server) can take up to 1 to 2 hours. Inter-point transmissions can take even longer (e.g., up to 12 to 18 hours). These extended transmission times significantly complicate the logistics required to ensure that each movie or other DCC 102 segment is properly received and available for scheduled screening by the correct media player and with the correct permissions.

[0089] System 100 includes a scheduler 112. Scheduler 112 uses scheduling data 113 to schedule the delivery of DCC 102 autonomous architecture 110 to a specific cinema IT system 120. For each delivery of a specific item of DCC 102 to a specific cinema IT system 120, scheduler 112 determines a delivery deadline that the specific item of DCC 102 must have been properly delivered to the specific cinema IT system 120 before that deadline. Streamed DCC 102 can be scheduled for real-time or near real-time delivery to one or more cinema IT systems 120 as it appears. For DCC 102 containing fixed (preset) content, DCC 102 can be scheduled for delivery to a specific cinema IT system 120 within a sufficient timeframe to be received at the cinema IT system and ready for playback at the cinema IT system 120 before its first scheduled screening.

[0090] The delivery deadline for a specific preset DCC 102 can be determined by working backward from the first scheduled screening time of the specific DCC 102 at the specific cinema IT system 102. The system 100 can, for example, be configured to set the delivery deadline long enough before the first scheduled screening time of the specific DCC 102 to verify that the specific DCC 102 has been received completely and intact. If necessary, the specific DCC 102 in the cinema IT system 120 can be moved to a storage location where the specific DCC 102 can be played on a specific screen, and optionally set long enough before the first scheduled screening to allow the specific DCC 102 to be retransmitted to the cinema IT system 120 in case of problems.

[0091] Based on the delivery deadline and information about a specific DCC 102, System 100 schedules the steps required to meet the delivery deadline. Factors such as the following can be considered when scheduling these steps: ● The size of a specific item in DCC 102; ● The location on main structure 110 where specific items of DCC 102 are stored; ● The bandwidth of the data connection 150 between the current location of a specific project in DCC 102 and the destination cinema IT system 120; ● Expected traffic on data connection 150 (especially data connection 150 terminated at cinema IT system 120) (e.g., traffic from scheduled stream DCC 102 and other scheduled deliveries from DCC 102); ● The processing resources of the cinema's IT system 120 (e.g., processing capacity considering playback activities); and ● Availability of data storage on the cinema's IT system 120.

[0092] In some embodiments, system 100 determines the scheduled start time for transmitting a specific DCC 102 to cinema IT system 120 by steps including the following: ● Estimate the amount of time required to deliver a specific DCC 102 to the cinema IT system 120 ("estimated transmission time"). The estimated transmission time may be based on the size of the specific DCC 102, the location from which the specific DCC 102 will be transmitted, the bandwidth of connection 150, the expected transmission rate, and the estimated traffic on connection 150 (including other items of the DCC 102 that system 100 can transmit). ● Choosing a location will increase the security factor by estimating the transmission time. ● Subtract the estimated transit time from the delivery deadline.

[0093] In some embodiments, scheduler 112 is configured to specify a maximum data transfer rate for delivering a particular DCC. Scheduler 112 may set a reduced maximum data transfer rate (i.e., adjust the transfer rate) to prevent DCC delivery from causing problems such as: data congestion that could interfere with the delivery of scheduled streaming DCC 102; consumption of processing resources or bandwidth in cinema IT system 120 that could interfere with DCC playback on screen 124; and data congestion that would unduly delay the completion of delivery of another DCC 102.

[0094] When determining the estimated transmission time, scheduler 112 may apply data from various sources. These sources may include scheduling data 113, which may include, for example, one or more of the following: ● The scheduling of screening times for the cinema's IT system 120, including any screening time via streaming DCC 102; ● Data storage available in the cinema's IT system 120; ● Information regarding specific items of DCC 102 in System 100 and other possible items of DCC 102 (e.g., size); ● Other items in DCC 102 have scheduling time for the cinema IT system 120; ● Activities occurring within the cinema's IT system 120, including scheduled and current activities (e.g., playing DCC 102).

[0095] Scheduler 112 may also consider information regarding the anticipated and typical usage of data connection 150. This information may be obtained, for example, from historical traffic measurements on data connection 150 and / or from past, current, and future screening schedules of cinema IT system 120. This information may include traffic not originating from data connection 150 of system 100.

[0096] In some embodiments, system 100 includes a predictive model based on historical traffic measurements, which can be applied to predict future traffic on data connection 150 when planning to transmit DCC 102 to a specific cinema IT system 120.

[0097] There is no need to schedule the transmission of specific items of DCC 102 to the cinema IT system 120 exactly on the delivery deadline. System 100 can schedule the transmission of DCC 102 earlier, for example, when the cinema IT system 120 and / or data communication link 150 are typically operating at low capacity, such as from early morning to noon.

[0098] Specific items of DCC 102 can be delivered earlier, provided that the cinema IT system 120 has sufficient storage to receive and hold specific items of DCC 102 until the last scheduled screening of specific items of DCC 102. In some embodiments, the scheduler 112 determines the available storage capacity of the cinema IT system 120 at a time close to the latest start time of delivery of specific items of DCC 102 but not later than the corresponding delivery deadline (e.g., by processing scheduling data 113) to assess whether an earlier start time can be scheduled.

[0099] Scheduler 112 can trigger the transmission of DCC 102 to cinema IT system 120 to begin at the corresponding scheduled start time. Scheduling data 113 may generally pertain to the scheduled transmission of DCC 102 to cinema IT system 120. In some embodiments, transmissions to specific portions of cinema IT system 120 are scheduled separately (e.g., cinema IT system 120 may have multiple interfaces or servers for receiving transmissions of DCC 102, and transmissions of DCC 102 to these interfaces or servers may be scheduled separately considering interface- or server-specific factors). Scheduler 112 may obtain scheduling-related information from cinema IT system 120.

[0100] In some embodiments, system 100 uses multicast transmission to simultaneously schedule delivery of a specific DCC 102 to multiple cinema IT systems 120. This approach can significantly reduce traffic on some data links 150 within the mainframe 110, especially when the multiple cinema IT systems 120 include cinema IT systems 120 located in the same general geographic area.

[0101] System 100 advantageously includes an ordering system 112A that operates in conjunction with scheduler 112. Ordering system 112A provides a platform by which cinema operators can place orders for cinema content from one or more distributors 105 for playback on specific screens in the cinema at specific screening times. Upon acceptance of an order, ordering system 112A can update the corresponding cinema's screening schedule and make information about the accepted order available to scheduler 112 (e.g., in scheduling data 113) for scheduling.

[0102] System 100 provides an interface 140 through which cinema managers can view the screening schedule of a specific cinema. Interface 140 can provide information about the status of a specific DCC 102 required for the scheduled screening. The status may indicate, for example, that the specific DCC 102 is on the appropriate cinema IT system 120 and has been verified to be in good working order, or that the transmission of the specific DCC 102 is in progress (and the expected completion time), or that the specific DCC 102 is scheduled for transmission at a specific time.

[0103] Interface 140 may further indicate whether any decryption keys required for playing DCC 102 in the schedule have been received or not yet received and exist on the appropriate cinema IT system 120.

[0104] Interface 140 may additionally or alternatively mediate communication between one or more of the cinema IT system 120, distributor 103, mainframe 110, and one or more components of the cinema IT system 120 (e.g., the joint server group 123 and / or server 130 discussed elsewhere herein). Interface 140 may include dedicated and / or public interfaces. Dedicated interfaces may be accessed only by computer systems pre-authorized to interact with interface 140 (e.g., a portion of system 100).

[0105] Interface 140 may include one or more dedicated components and one or more common components. For example, components of interface 140 facing one or more distributors 103 and / or one or more cinema IT systems 120 may include common interfaces. Components of interface 140 facing host structure 110, one or more components of cinema IT system 120 (e.g., the federated server group 123 and / or one or more servers 130 discussed elsewhere herein) may provide dedicated interfaces. In some embodiments, interface 140 is provided by host structure 110, as depicted by dashed line 141.

[0106] In some embodiments, the cinema IT system includes a dedicated interface for communicating with interface 140. The interface may include, for example, a wireless (e.g., 5G) interface, a software interface, or the like. Users of the cinema IT system 120 can interact with interface 140 via such an interface.

[0107] In some embodiments, interface 140 is operable to receive: ● The authorization from distributor 105 to upload the DCC 102 project from the corresponding distributor server 103 to the main structure 110, so that the DCC 102 project can be used for distribution to the cinema IT system 120; and ● Authorization to transmit the specific project self-construction 110 of DCC 102 to a specific cinema IT system 120. The authorization can specify a specific screen 124 on which the project of digital content 102 can be played, and can specify the duration on which the project of digital content 102 can be played.

[0108] Interface 140 can be configured to transmit requests from a specific cinema to rent a specific DCC 102 (e.g., for display on a specific screen at a specific time or during a specific time period) to distributor 105. Each specific DCC 102 may have a unique identifier, such as a serial number. Interface 140 may forward information about the scheduling of DCC 102 within the cinema IT system 120 to distributor 105. For example, interface 140 may forward information about one or more of the DCC 102, the server, the screen, and the screening time to distributor 105. For example, the information may include one or more of the following: which DCC 102 is stored on which server, which DCC 102 is played on which screen, the screening time of the DCC 102, and which DCC 102 the cinema IT system 102 wants and / or has.

[0109] Interface 140 can transfer information to main structure 110, which may include scheduling data 113 for use by scheduler 112. Main structure 110 can store scheduling data 113 for use by scheduler 112.

[0110] Interface 140 may, for example, include one or more application programming interfaces (APIs) and one or more portals, or both. For example, an authorized user may use a portal to provide information to interface 140. For example, an automated general management system 125 may send commands to the API of interface 140. Multiple input items can be submitted at once, regardless of whether interface 140 includes an API and one or both of the portals. For example, this means that allocator-related components 105 can type all DCCs 102 as a single input to the destination of each. For example, interface 140 may include an API between mainframe 110 and cinema IT system 120. This API may include functionality that can be called by software executing on cinema IT system 120 to exchange commands and information with mainframe 100.

[0111] In some embodiments, individual cinema IT systems 120 within system 100 include interfaces that provide the status of cinema IT systems 120, DCC 102 stored on cinema IT systems 120, screens 124 of cinema IT systems 120, etc. Such interfaces can provide similar information to individual cinemas as the interface 140 described above, in the absence of a centralized system.

[0112] Figure 2 is a schematic diagram illustrating an example cinema IT system 120. The cinema IT system 120 may, for example, be associated with a physical cinema location. The cinema location may include multiple screens. For example, it is not uncommon for a single cinema location to have 5, 10, or more screens, and for each of these screens to play a different DCC 102 at any given time.

[0113] The cinema IT system 120 includes one or more servers 130. In the embodiment depicted in Figure 2, the cinema IT system 120 includes servers 130-1, 130-2, 130-3, 130-4...130-n (collectively or collectively referred to as servers 130).

[0114] The cinema IT system 120 further includes one or more screens 124 for displaying DCC 102. The embodiment depicted in Figure 2 includes screens 124-1, 124-2, 124-3, 124-4…124-n (collectively or collectively referred to as screens 124) representing any number of screens 124 that may exist. Screens 124 may include any type of screen for displaying DCC, including screens on which images are projected (front or rear) by a projector, self-emissive screens such as LED screens, etc. Screens 124 may be located in a cinema environment and / or a lobby environment.

[0115] For each screen 124, the cinema IT system 120 includes a media player 125 connected to control a playback system 126. The playback system 126 may include a sound wave system for reproducing the audio from the DCC 102. To avoid clutter, Figure 2 shows only media player 125-1 and playback system 126-1, corresponding to screen 124-1, and omits media players and playback systems for the other screens 124.

[0116] In some embodiments, each media player 125 is hosted on a server 130 associated with a specific one of the screens 124. In the embodiment depicted in FIG2, each screen 124 is associated with a corresponding server 130, and no screen 124 shares a server 130. In FIG2, screen 124-1 is associated with server 130-1, screen 124-2 is associated with server 130-2, screen 124-3 is associated with server 130-3, screen 124-4 is associated with server 130-4, and screen 124-n is associated with server 130-n. In other embodiments, one server 130 may be associated with multiple screens 124, and / or one screen 124 may be associated with multiple servers 130.

[0117] Typically, a cinema licenses individual items from the DCC 102 of distributor 105 to play on one or more specific screens 124. To facilitate this, each item of the DCC 102 can be digitally encrypted such that it can only be played by a specific media player 125 associated with the specific screen 124 that has been licensed for playback. For example, each media player 125 may contain a decryption engine using a unique private key in a unique public / private key pair. The DCC 102 licensed for playback by that media player 125 may be encrypted. To enable a specific media player 125 to play digital media content 102, distributor 105 can provide a key delivery message (KDM) containing a decryption key for the DCC 102 encoded with the public key of the media player 125 it is using. Media player 125 may be configured to use its private key to obtain the decryption key, allowing the DCC 102 to be played. Media player 125 may be configured such that the private key is not available externally (e.g., the private key may be stored in a secure hardware device), and therefore the decryption key of DCC 102 cannot be used outside of media player 125.

[0118] System 100 can facilitate or automate the generation of KDMs. For example, system 100 can store public keys for each device in media player 125 (e.g., in mainframe 110). When a cinema manager places an order for a specific DCC 102 to be played on a specific screen 124 using the ordering interface of system 100, the corresponding public key can be transmitted to the appropriate distributor server 103. Distributor server 103 can automatically generate KDMs by either requesting them from distributor 105 or by using the received public key and the decryption key of the specific DCC 102. The generation of KDMs can be performed using secure hardware.

[0119] The KDM can be transmitted to the corresponding cinema IT system 120 via system 100. System 100 can track the delivery of the KDM and can generate a warning if any of the screens 124 that have been authorized to play the video have not yet received the KDM.

[0120] In some embodiments, system 100 is configured to deliver a specific DCC 102, which is permitted to be played on a specific screen 124, to a data storage location in the cinema IT system from which the DCC 102 can be played on the specific screen 124 without being transferred within the cinema IT system. For example, system 100 may directly transfer a DCC 102 intended for playback on screen 124 to a data storage area of ​​the server 130 corresponding to screen 124. This functionality can be applied to allow a distributor to assign the DCC 102 to one or more servers within the cinema IT system from outside the system, from which the DCC 102 can be played on the desired screen 124. In some embodiments, the specific screen 124 for the DCC may be specified in scheduling data 113. In some embodiments, system 100 includes an interface by which a distributor can specify that system 100 should send DCC 102 to one or more screens 124 in a particular cinema for playback. In some embodiments, each screen 124 in system 100 has a unique ID that can be used to route DCCs for playback on screen 124. In some embodiments, system 100 stores the unique IDs for all screens 124 in system 100.

[0121] In some embodiments, system 100 is configured to transmit KDM for playback of DCC 102 on a specific screen 124 in a particular cinema. System 100 may deliver the KDM directly to an appropriate storage location in an applicable cinema IT system 120.

[0122] In some embodiments, the transmission of the DCC to the cinema IT system 120 is adjusted based on the current load experienced by the cinema IT system 120 and / or the current traffic on the data link used to deliver the DCC 102 to the cinema IT system 120. For example, the data transmission rate of the DCC 102 may be reduced or transmission may be suspended if the cinema IT system 120 is operating under high load and / or has limited bandwidth for receiving and storing the incoming DCC 102. The cinema IT system 120 may be configured to deliver information about the current load and / or available bandwidth of the cinema IT system 120 to the main structure 110 to facilitate such adjustments.

[0123] In some embodiments, the data storage of server 130 of cinema IT system 120 is shared so that media player 125 is not limited to playing only items of DCC 102 stored on the same server 130 hosted by media player 125. In some such embodiments, system 100 directly transmits DCC 102 via autonomous architecture 110 to an available location within cinema IT system 120 for data storage. This architecture can reduce or eliminate time-consuming transmission of DCC 102 items within cinema IT system 120.

[0124] A media player 125 hosted on a server 130 can play DCC 102 stored in the data storage area of ​​that server 130 and / or one or more other servers within the server 130. DCC 102 stored in the cinema IT system 120 can be used for playback on any screen 124 of the cinema IT system 120 without transmitting DCC 102 within the cinema IT system 120 prior to playback. For example, in some embodiments, some or all of the servers 130 of the cinema IT system 120 are configured as a federated server group (FSG) 123.

[0125] In some embodiments, to establish FSG 123, multiple servers 130 are first powered on. Servers 130 are configured to connect to one or more other servers. Additional servers 130 may be added to the established FSG 123. Servers 130 may be configured to automatically add themselves to the established federated server group upon power-up. Once FSG 123 is established, the federated server group may establish connections to one or both of the host structure 110 and interface 140. Establishing a connection to the host structure 110 may occur before, simultaneously with, or after establishing a connection to the interface 140.

[0126] FSG 123 then proceeds to a standby state, where it awaits one or more events such as: receiving DCC 102, adding / removing server 130, server 130 malfunctioning, playing DCC 102 on screen 124, external information requests, and scheduled maintenance. FSG 123 may take action in response to such responses. The action may vary depending on the event.

[0127] Other servers outside of FSG 123 (such as servers of host 110) can interact with FSG 123 as if server 130 were a single server. FSG 123 provides a defined interface for interacting with servers of host 110. In some embodiments of system 100, each FSG 123 may be visible to host 110 as a network attached storage (“NAS”) device, allowing host 110 to write data such as DCC 102 directly to FSG 123 for storage.

[0128] Within the cinema IT system 120, each server 130 may share some or all of its data storage with other servers 130, enabling servers 130 to collectively provide a shared data storage area combining the data storage areas of multiple servers 130. In a preferred embodiment, any media player 125 in the cinema IT system 120 may access DCC 102 stored in the combined data storage area of ​​FSG 123 for playback, regardless of which server(s) actually manages the stored DCC 102. This configuration provides a 1:1 relationship between media player 125 and screen 124, allowing each media player 125 to be provided on a dedicated server 130, while removing the requirement that DCC 102 to be played on a particular media player 125 must be stored on the same server 130 as that media player 125.

[0129] DCC 102 can be stored in virtually any location within the cinema IT system 120, while remaining accessible as if DCC 102 were stored on the server 130 of the managed media player 125.

[0130] When the main structure 110 transmits DCC 102 to one or more cinema IT systems 120, the main structure 110 may deliver DCC 102 to one or more specific servers 130 or to an FSG 123 containing multiple servers 130 (in this case, DCC 102 may be stored on one server 130 or distributed across the data storage areas of multiple servers 130 depending on the configuration of the FSG 123).

[0131] In some embodiments, the cinema IT system 120 has one or more additional servers 130 that are not associated with one or more screens 124 and are not used for playing DCCs 102. Such additional servers may store DCCs 102. Providing such additional servers 130 advantageously allows the cinema IT system 120 to have a server 130 to screen 124 ratio greater than 1:1. In some embodiments, the FSG 123 may be configured such that DCCs received by the autonomous architecture 110 are directed to the additional servers 130 when the server 130 associated with the screen 124 is busy (e.g., playing DCCs).

[0132] In some embodiments, the cinema IT system 120 may be configured to allow one item of DCC 102 to be played by a first media player 125 hosted by a first party in server 130, while another item of DCC 102, wholly or partially stored on the first server 130 hosting the first digital media player 125, is played by a second media player hosted by a second party in server 130. In such embodiments, the data link 150 connecting the servers 130 within the cinema IT system 120 must have high capacity, and the servers 130 must have sufficient I / O capacity to support synchronous data streams corresponding to different DCCs 102 played by different media players 125. To facilitate synchronous data streams corresponding to different DCCs 102 played by different media players 125, the bandwidth available between the different servers 130 may be, for example, 10 Gbps or greater.

[0133] The cinema IT system 120 may include an automated general management system 129. The automated general management system 129 may be software running on one or more data processors of the cinema IT system 120. The general management system 129 can perform various functions. The functions of the general management system 129 may include, for example, one or more of the following: ● Interacts with scheduler 112 and maintains local scheduling of when and on which screen 124 DCC 102 will play. ● Provide an interface to the ordering system 112A for ordering DCC 102 for future screenings. The interface may optionally provide functionality for accessing upcoming versions of DCC 102, pre-ordering new versions, and automatically scheduling such versions when the release date of a pre-ordered new version becomes known. ● Track the received DCC 102 and its corresponding KDM (or other keys required to play the DCC on a specific screen). ● DCC 102 is automatically removed from the cinema's IT system 120 when it is no longer needed (for example, when all scheduled screenings of DCC 102 have been completed). ● Monitor the performance of the cinema IT system 120 and data link 150. Through these data links, DCC 102 can autonomously transmit data from structure 110 to the cinema IT system 120. ● Generate instruction codes to send information such as requests or scheduling to parties outside the cinema's IT system 120.

[0134] The management of the cinema IT system 120 revolves around the primary function of ensuring reliable and uninterrupted playback of the DCC 102 on the screen 124. Other functions, such as receiving transmissions of new DCCs 102 from the mainframe 110 for purposes other than playback and / or transmitting data within the cinema IT system 120, can be managed so as not to interfere with the playback of the DCC 102. For example, other functions may include: ● Scheduled to occur when playback has not yet occurred; and / or ● Controlled so as not to consume the processing or bandwidth resources required for uninterrupted and reliable playback (e.g., by adjusting data transmission, operating processing at a lower priority level, or the like); and / or ● Execute using a portion of the cinema's IT system that is not included in the playback function (e.g., outside the path of the playback function).

[0135] In some embodiments, each server 130 of the cinema IT system 120 includes multiple data interfaces, and the servers 130 are interconnected via multiple data communication links. A first set of interfaces and data links may be reserved for at least playing DCC 102 when playback occurs. A second independent set of interfaces and data links may be used for functions other than playback when playback occurs.

[0136] Figure 3 schematically depicts an example FSG 123. In a typical implementation, the number of servers 130 in FSG 123 is based on the number of screens 124 served by the media player 125 of FSG 123. FSG 123 typically includes servers 130 in the range of 2 to 20. In some embodiments, FSG 123 includes one server 130 for each screen 124 of a cinema served by FSG 123. The total storage available on all servers 130 within FSG 123 is selected to be sufficient to buffer the items of currently running DCC 102 so that items scheduled for upcoming runs of DCC 102 can be received in advance. The servers 130 within FSG 123 may, for example, have a total data storage capacity of 10TB, 20TB, or greater. Within FSG 123, each server 130 associated with screen 124 may include a media server 125 dedicated to playback on that screen 124.

[0137] Each server 130 includes an onboard data storage unit 131. The onboard data storage unit 131 may be used to store DCC 102. The onboard data storage unit 131 may include one or more data storage modules. In some embodiments, the data storage modules are dual-port, enabling the modules to support simultaneous or nearly simultaneous reads and / or writes. The onboard storage unit 131 may, for example, include one or more M.2 modules. The onboard data storage unit 131 may include a high-throughput data interface, such as a non-electrically dependent high-speed memory interface providing throughput up to 31.5 Gb / s.

[0138] Each server 130 includes a high-throughput communication interface that allows DCC 102 to transmit relatively quickly to a corresponding onboard data storage 131, be received for playback from the onboard data storage 131 of one or more other servers 130, as feed / stream reception (e.g., for streaming events), and / or be delivered from the corresponding onboard data storage 131 to an intermediate server of one or more other servers 130 for playback. These interfaces can be provided to support bit rates high enough to support two or more simultaneous streams, each with a bit rate sufficient for real-time playback of items for DCC 102. In some embodiments, servers 130 of the cinema IT system 120 are connected via a 10 Gigabit Ethernet data link. The combination of the high-throughput interface to the onboard data storage 131 in server 130 and the fast interconnection between servers 130 allows DCC 102 to stream simultaneously between different servers 130 within FSG 123.

[0139] The cinema IT system 120, which includes the capability to stream DCC 102 stored on one or more servers 130 to media players on other servers 130, allows for greater flexibility in the way DCC 102 is stored within the cinema IT system. This can further reduce or eliminate: ● The need to store the same DCC 102 on multiple servers 130 in the cinema IT system 120; ● The need to transmit DCC 102 in the data storage area of ​​server 130 in cinema IT system 120; and / or ● Allows for storage optimization of FSG 123. In some embodiments, a network speed of 10 Gbps or higher may allow DCC 102 to be transmitted between servers 130 at a bit rate greater than that required for playback.

[0140] In the illustrated embodiment, each server 130 also includes a storage management system 132. The storage management system 132 includes software and / or hardware that operates to control the operation of the onboard data storage 131 as needed by the cinema IT system 120 (e.g., in response to a request from the general management system 129). The storage management system 132 may, for example, issue commands to the onboard storage 131. Commands may include commands to perform one or more of the following: store DCC 102, delete stored DCC 102, copy DCC 102, check the integrity of DCC 102, read DCC 102, etc. The storage management system 132 may receive such commands and then forward them to the onboard storage 131.

[0141] In the illustrated embodiment, each server 130 also includes a playback management system 133. In alternative embodiments, one or more servers 130 may not include a playback management system 133. The playback management system 133 manages the playback of the DCC 102 on the server 130. The playback management system 133 includes software and / or hardware configured to assist in setting up the playback of the DCC 102 on the media player 125. The playback management system 133 may communicate with the onboard storage 131 and / or with one or more media players 125 corresponding to one or more screens 124 associated with the server 130. The playback management system 133 may receive commands (e.g., from the general management system 129) to configure the cinema IT system 120 to play a specific DCC 102 on a specific screen 124 at a specific time.

[0142] Each server 130 includes a software layer 134 (collectively or collectively referred to as software layer 134). Each software layer 134 contains computer software that, when executed by the corresponding server 130, enables that server 130 to communicate with software layers 134 on one or more other servers 130. In Figure 3, each software layer 134 is depicted as communicating with software layers 134 on all other servers 130 in the federated server 123. In other implementations, additional connectivity between software layers 134 may be provided.

[0143] Server 130 uses software layer 134 to manage FSG 123. The management of FSG 123 can be structured in various ways. For example, in some embodiments, one or a selected subset of servers 130 may perform management functions for FSG 123. In other embodiments, all servers 130 may cooperate to manage the operation of FSG 123. Communication between servers 130 mediated by software layer 134 coordinates the actions of servers 130 in FSG 123. In some embodiments where less than all servers 130 manage FSG 123 at any given time, at least one software layer 134 running on the first server 130 managing FSG 123 may have one or more designated backup software layers 134 running on other servers 130 that act as designated backup servers for the first server 130. If the first server 130 fails or malfunctions, one or more of the designated backup servers 130 may take over the management functions of the first server 130.

[0144] Redundancy can be configured based on FSG 123 (e.g., each FSG 123 may have its own unique redundancy parameters). Redundancy may include any or all of redundant data storage, redundant software, and redundant management systems. Redundancy is selected by system 100, cinema IT system 120, and / or by the cinema. In some embodiments, redundancy includes multiple data storage areas configured in a Redundant Array of Independent Disks (RAID) architecture. Software layer 134 can select which one or more software layers will manage FSG 123.

[0145] In some embodiments, the management of FSG 123 may involve multiple rule systems. For example, a server 130 configured to participate in the management of FSG 123 may initiate a proposed decision and may forward the proposed decision to one or more other management servers 130. A receiving management server 130 may respond to the proposed decision by responding to the initiating management server 130. The receiving management server 130 may forward the proposed decision to one or more other management servers 130. Once a predefined number of receiving management servers 130 have responded to the proposed decision, the initiating management server 130 may issue commands to one or more servers 130 to implement the proposed decision. Upon receiving such commands, the receiving server 130 may implement the proposed decision by executing the commands.

[0146] Managing one state of FSG 123 requires managing DCC 102 on server 130. Managing DCC 102 may include determining which DCC 102 should be stored on which server 130, which DCC 102 should be prioritized, which server 130 should have backups of DCC 102, and how to handle the deletion of any DCC 102 from storage. Managing DCC 102 may additionally or alternatively include maintaining a record of DCC 102 and / or indicating that DCC 102 should be played.

[0147] In some embodiments, one or more software layers 134 may be configured to split the storage of all or specific DCC 102 among two or more different servers 130 participating in shared data storage. For example, a movie may contain video files, audio files, and subtitle files. One or more software layers 134 may decide to store the audio files on a first server 130, the video files on a second server 130, and the subtitle files on a third server 130. Alternatively or additionally, one or more software layers 134 may split, for example, video files among multiple servers 130. Each DCC 102 may include an asset map, which is an overview of the components (e.g., one or more different video components, audio components, subtitle components, etc.) that constitute the entire DCC 102. The asset map or components of the asset map may be hashed to check the integrity of the DCC 102. In some embodiments, when more DCCs 102 are stored on a server 130 participating in shared data storage, the software layer 134 is configured to select locations for storing DCCs 102, thereby balancing the DCCs 102 in the data storage areas provided in the cinema IT system 120.

[0148] In some embodiments, software layer 134 is configured to store one or more backups (or split components of DCC 102) on one or more servers 130. When storing one or more backups, software layer 134 may consider one or more of the following: the upcoming screening time of DCC 102; storage availability on server 130; activity on server 130 (e.g., playback); system 100; cinema IT system 120; and / or cinema preferences. For example, screening time may be considered as providing more redundancy to DCC 102 that is closer to its screening time than other DCC 102.

[0149] When managing the storage of DCC 102, software layer 134 can be configured to optimize the way DCC 102 is stored on server 130. Factors such as one or more of the following can be considered when optimizing storage: on which screen 124 DCC 102 is scheduled to play, when DCC 102 will play, the processing load of individual server 130, and / or the processing load of FSG 123. For example, storage can be considered optimized when the DCC is copied to the server 130 associated with playback at some point before playback. For example, storage can be considered optimized if DCC 102 is stored on a server 130 with low activity relative to one or more other servers 130 when it is stored and / or when it is ready to play.

[0150] Software layer 134 can determine whether deleting a specific DCC 102 from server 130 is appropriate or necessary. For example, software layer 134 can periodically compare the DCC 102 stored on server 130 with the schedule and determine whether the schedule includes a valid playout time associated with DCC 102. If no valid playout time exists, software layer 134 can determine that such DCC 102 should be deleted. For example, software layer 134 can periodically compare the DCC 102 stored on server 130 with available keys. If no valid key exists or the key has expired for a specific DCC 102, software layer 134 can determine that such DCC 102 should be deleted and may allow DCC 102 to be deleted.

[0151] Software layer 134 can prioritize DCC 102 storage. For content prioritization, software layer 134 can consider one or more of the following: ● Screening time (i.e., when DCC 102 will play and on which screen 124); ● Data type (e.g., video, audio, subtitles, etc.); ● Server 130 status (e.g., CPU load, storage module availability, etc.); ● FSG 123 status (e.g., total network capacity, load, etc.); ● User preferences (e.g., cost preference, redundancy preference, performance preference).

[0152] For example, DCC 102 with a current playback time can be prioritized for storage on the server 130 associated with the screen 124 that will play this content 102 (compared to content 102 with only a future playback time). For example, the storage of video and / or audio data can be prioritized for storage on the server 130 associated with the screen 124 that will play this content 102 (compared to subtitle data). For example, when two DCCs 102 are transmitted between servers 130, the DCC 102 with the earlier playback time can be transmitted before the DCC 102 with the later playback time.

[0153] Software layer 134 can also manage the playback of DCC 102 on screen 124. Playback management can be performed by software layer 134 on server 130 associated with screen 124 where a specific DCC 102 is to be played. In order to play DCC 102, software layer 134 can determine which server 130 such DCC 102 is stored on. Software layer 134 can query one or more servers 130 to inquire whether the server 130 has any part of DCC 102. Software layer 134 can request any server 130 that has any part of such DCC 102 to send the part of such DCC 102 to the media player 125 of the specified server 130. The specified server 130 can be the server 130 associated with screen 124 where such DCC 102 will be played. In cases where a DCC 102 project is split across multiple servers 130, a designated server 130 may group portions of DCC 102 received from one or more servers 130 together. A designated server 130 may group DCC 102 together while it continues to receive such DCC 102 (e.g., such DCC 102 may be streamed) or after all portions of DCC 102 have been received at the designated server 130. A software layer 134 on the designated server 130 may group such DCC 102 together. The software layer 134 may select specific components (specific audio, specific video, specific subtitles, etc.) of DCC 102 for playback by the media player 125 based on DCC 102 asset mapping, the capacity of the media player 125, and / or the language selection for DCC 102 playback.

[0154] Adjustments can be applied within the IT cinema system 120 when transmitting DCC 102 in server 130. For example, the data rate for transmitting components of DCC 102 can be limited to a rate sufficient to allow the media player 125 playing DCC 102 to play it uninterruptedly. For example, the DCC transmission speed can be adjusted to match the playback speed. Adjusting the transmission rate of data for DCC 102 in the cinema IT system 120 can leave more available bandwidth for other operations on the cinema IT system 102 (such as playing other DCC 102 on other media players 125, receiving transmissions of new DCC 102 from host 110, receiving streamed DCC 102, etc.).

[0155] Software layer 134 can instruct playback management 133 to play a specific DCC 102 on a specific screen 124 according to scheduling data associated with DCC 102. Playback management 133 can then play DCC 102 on screen 124.

[0156] Software layer 134 can maintain statistics about DCC 102. For example, software layer 134 can maintain statistics about one or more of the following: the number of times each specific item of DCC 102 is played in the cinema IT system 120, the number of times a specific DCC 102 is played on which screen 124, the number of tickets sold, etc. Such statistics can be compiled into records by the cinema IT system 120, and the payment amount for renting individual items of DCC 102 can be calculated on these records.

[0157] Software layer 134 can act as a "control center" for its specific server 130. In this regard, software layer 134 can determine the actions that server 130 should take and then execute those actions. Software layer 134 can, for example, cause actions to be executed by providing instructions to one or both of the corresponding storage management 132 and playback management 133. Communication with storage management 132 may include commands regarding the maintenance of onboard storage 131. For example, commands may include adding DCC 102 to onboard storage 131, removing DCC 102 from onboard storage 131, checking the integrity of DCC 102 on onboard storage 131, reading DCC 102 from onboard storage 131, checking storage used or available on onboard storage 131, etc. Communication with playback management 133 may include commands to play DCC 102. When deciding what action server 130 should perform, software layer 134 can consider the processing limits experienced by server 130. Software layer 134 can monitor server 130 to determine the processing limits of server 130.

[0158] Software layer 134 can collectively act as the "control center" of FSG 123. In this regard, software layer 134 can provide one or more interfaces mediating interactions between FSG 123 and external parties. Software layer 134 can send and / or receive DCC 102. Software layer 134 can schedule the delivery of DCC 102 and / or respond to the delivery of DCC 102. Regarding the delivery of DCC 102, software layer 134 can further monitor one or more of the following: delivery speed, delivery integrity, and estimated completion of delivery. The status of FSG 123, including the distribution of DCC 102 to FSG 123, can be retrieved from the local management of server 130.

[0159] Another aspect of managing FSG 123 involves monitoring server 130. Software layer 134 can: ● Add server 130 to FSG 123; ● Remove server 130 from FSG 123; ● Monitor server 130 to determine whether each server 130 is active; ● Restart server 130; ● Power on or power off server 130; ● etc.

[0160] If, during monitoring of server 130, it is determined that server 130 is inactive or has malfunctioned, software layer 134 may be configured to take corrective action. For example, software layer 134 may attempt to restart server 130, consider server 130 removed from FSG 123, replace server 130 with another server 130, and / or notify human representative 126. Alternatively or additionally, software layer 134 may not take corrective action and instead continue sending queries to server 130 that it can respond to once it is back online. In the event of a server 130 malfunction, server 130 may notify one or more other servers 130 of its malfunction status. If server 130 is added and / or removed from FSG 123, software layer 134 may determine a new storage plan for DCC 102 and, if necessary, redistribute DCC 102 already stored on server 130.

[0161] In some embodiments, one or more of the cinema IT system 120, FSG 123, and one or more servers 130 are configured to provide an interface 140 containing information about FSG 123 and / or server 130. This information may include one or more of the following: which server 130 is operating, which screen 124 is associated with which server 130, optimal screening time, optimal screen 124 for a particular DCC 102, preferred DCC 102, server 130 processing power, server 130 transmission capacity, etc. Interface 140 may forward this information to one or both of the distributor server 103 and main structure 110. Distributor 105 may use this information to determine which DCC 102 is scheduled for delivery to cinema IT system 120. Main structure 110 may store this information in scheduling data 113. Scheduler 112 can use this information to determine the transmission rate for a specific DCC 102. Main structure 110 may additionally or alternatively forward this information and / or self-allocator 105 may request such DCC 102. In some embodiments, interface 140 may request information about FSG 123 and / or server 130 from one or more of the cinema IT system 120, FSG 123, and one or more servers 130.

[0162] Data connection 150 facilitates the exchange of DCC 102, associated keys, and control information within the cinema management system 100. Data connection 150 can connect to: ● One or more of the following: interface 140, main structure 110, distributor server 103, and cinema IT system 120; ● One or more of the following: a unified server group 123 and one or more of the interface 140, the main structure 120, and the distributor server 103; and ● Each server 130 and one or more other servers 130 within FSG 123.

[0163] Data link 150 can be configured to provide a single network for connecting all components of system 100. For example, interface 140 is connected to distributor server 103, cinema IT system 120, mainframe 110 and FSG 123, mainframe 120 is connected to distributor server 103, cinema IT system 120 and federated server group 123, and each server 130 is connected to one or more other servers 130 within FSG 123, forming a single network.

[0164] In some embodiments, data link 150 is configured to provide multiple subnetworks for connecting components. This is illustrated, for example, in Figures 1 through 3, wherein: ● One or more servers 130 within FSG 123 are connected via a subnet 150-1 of the data link. ● The combined server group 123 is connected to the main structure 110 via subnet 150-2 of the data link and / or to the interface 140 via subnet 150-3. ● The main structure 110 is connected to the interface 140 via the data link subnet 150-4. ● The main structure 110 is connected to the distributor 103 via the data link subnet 150-5. ● Distributor 103 is connected to interface 140 via subnet 150-6 of the data link. ● The main structure 110 is connected to the content creator 104 via the data link subnet 150-7. In some embodiments, the data links for one or more subnets are provided by a 5G wireless network.

[0165] Data link 150 may include one or both of optical, wired, or wireless connections. Wireless connections may include Wi-Fi, cellular, etc. In some embodiments, some or all of network 150 may include a 5G network. For example, in some embodiments, network 150 may consist of a wired connection and a 5G connection. 5G connections can advantageously reduce latency and / or provide higher bandwidth and / or data capacity. One or more servers 130 may include an integrated 5G interface module. This 5G interface module allows connectivity to interface 140, through which management can occur on a per-screen 124 and / or per-server 130 basis.

[0166] The main structure 110 may establish a network connection with one or more servers 130 within the FSG 123. The main structure 110 may also establish a network connection with one or more servers 130 associated with the software layer 134 that manages the FSG 123. This network connection may be established via a network switch. The main structure 110 may communicate with the FSG 123 via such a network connection. Delivery of the DCC 102 may occur via this network connection. The DCC 102 may be delivered using a suitable protocol (e.g., File Transfer Protocol; FTP). The main structure 110 may deliver the DCC 102 via the network connection to a server 130 associated with a screen 124 capable of playing the delivered DCC 102. The main structure 110 may also deliver the DCC 102 via the network connection to a server 130 not associated with a screen 124 capable of playing content. This can occur, for example, when the network connection between the host 110 and the server 130 associated with the screen 124 capable of playing the DCC 102 is unavailable and / or for scheduling purposes. The host 110 may deliver the DCC 102 via the network connection to the server 130 designated by the FSG 123 to store copies of such DCC 102. After delivery, the DCC 102 may be reassigned to one or more other servers 130.

[0167] An option for delivering DCC 102 to the cinema IT system 120 is an assembly system 100 that allows the host architecture 110 to provide DCC 102 to the cinema IT system 120 via interface 140. Interface 140 can then transfer a copy of DCC 102 to the appropriate cinema IT system 120, FSG 123, and / or server 130. In other embodiments, the host architecture 110 can deliver DCC 102 directly to the cinema IT system 120, FSG 123, and / or server 130.

[0168] The option for delivering streamed DCC 102 items (e.g., streamed live concerts, streamed live sporting events, etc.) is to assemble system 100 so that content creator 104 can directly provide DCC 102 to cinema IT system 120. In such embodiments, one or more data links 150 may exist connecting content creator 104 to cinema IT system 120. This option can help reduce the latency between live streaming events and broadcasts within cinema IT system 120 caused by the forwarding of DCC 102 to cinema IT system 120 via host structure 110.

[0169] The cinema management system 100 can be configured to reduce the likelihood of interruptions in the playback of the Digital Cinema Control Center (DCC) 102 on the screen 124. For example, when playback is not occurring, the DCC 102 can be transmitted to the cinema IT system. This can be based on the specific media player playing the DCC 102 or typically used for the FSG 123. For example, when playback is not occurring on any media player in the cinema IT system 120, the software layer 134 can manage content, servers, etc. As another example, the server 130 that actively participates in delivering the DCC 102 for playback or playing the DCC 102 can be excluded from operations such as transmitting the DCC 102 autonomous structure 110 to the cinema IT system 120. Any changes to the configuration of such servers 130 can be removed until the servers 130 no longer participate in the active playback of the DCC 102.

[0170] The Cinema Management System 100 can be easily scaled up to serve a larger number of cinemas, distributors and / or content creators, and more projects providing digital cinema content.

[0171] Figure 4 is a block diagram illustrating an example method 200 that can be applied in the operation of master structure 110. Method 200 receives scheduling data at block 210. In block 210, master structure 110 may receive scheduling data 113 as described elsewhere herein. In block 220, master structure 110 confirms the scheduling data 113 with the sending party. After block 220 is completed, DCC 102 is uploaded to master structure 110 in block 230. In block 235, the integrity and integration of the uploaded DCC 102 can be checked (e.g., via hash checking). In block 240, master structure 110 schedules the delivery of DCC 102 to one or more cinema IT systems 120. DCC 102 may be scheduled for delivery as described elsewhere herein.

[0172] Figure 4 depicts the upload of content block 230 prior to the scheduled delivery block 240. However, blocks 230 and 240 can be executed in any order and simultaneously. After executing blocks 230 and 240, in block 250, the master structure 110 delivers DCC 102 to one or more cinema IT systems. After DCC 102 has been delivered to all cinema IT systems that have scheduled it, the master structure 110 can then delete DCC 102 in block 270. Before deleting content block 270, the master structure 110 can check whether DCC 102 has been delivered in block 260.

[0173] System 100 can be optionally configured to facilitate the management of cinema chains. For example, System 100 may include: an ordering system that facilitates ordering DCC 102 for multiple screens in multiple cinemas within a single order, and a scheduling system 112 that is configured to deliver DCC 102 to multiple cinemas (optionally along with KDM to allow DCC 102 to play on multiple screens). System 100 thereby facilitates the management of content and keys at each point and screen, as well as across points (each chain or each company). Explanation of terms

[0174] Unless the context explicitly requires otherwise, throughout the specification and the scope of the patent application: ● "Screen" is not limited to any particular technology, but includes any technology or combination of technologies that can be used to reproduce DCC for audience viewing. ● The terms "comprise / comprising" and similar words should be interpreted in an inclusive sense, relative to their mutually exclusive or exhaustive meanings; that is, they should be interpreted as "including (but not limited to)". ● The terms "connection," "coupled," or any variation thereof mean any direct or indirect connection or coupling between two or more elements; the coupling or connection between elements can be physical, logical, or a combination thereof; ● When used to describe this specification, the terms "in this document," "above," "below," and similar terms refer to this specification as a whole, and not to any particular part of this specification; ● The use of "or" in a list involving two or more items covers all of the following interpretations of the word: any one of the items in the list, all the items in the list, and any combination of the items in the list; ● The singular forms “a / an” and “the” also include the meaning of any appropriate plural form.

[0175] The directional terms used in this specification and any accompanying claims (where applicable), such as "vertical," "lateral," "horizontal," "upward," "downward," "forward," "backward," "inward," "outward," "left," "right," "front," "back," "top," "bottom," "below," "above," "below," and the like, depend on the specific orientation of the described and illustrated device. Various alternative orientations may be used for the subject matter described herein. Therefore, these directional terms are not strictly defined and should not be interpreted rigorously.

[0176] Embodiments of the present invention may be implemented using specially designed hardware, configurable hardware, or programmable data processors. These programmable data processors are configured by providing software (which may optionally include firmware) executable on a data processor, dedicated computer, or data processor, which is specifically programmed, configured, or constructed to perform one or more steps of the methods explained in detail herein, and / or a combination of two or more of these steps. Examples of specially designed hardware include: logic circuits, application-specific integrated circuits (ASICs), large-scale integrated circuits (LSIs), very large-scale integrated circuits (VLSIs), and the like. Examples of configurable hardware include one or more programmable logic devices, such as programmable array logic (PAL), programmable logic array (PLA), and field programmable gate array (FPGA). Examples of programmable data processors include microprocessors, digital signal processors (DSPs), embedded processors, graphics processors, mathematical coprocessors, general-purpose computers, server computers, cloud computers, mainframe computers, computer workstations, and the like. For example, one or more data processors in the control circuitry of a device can implement the methods described herein by executing software instructions in processor-accessible program memory.

[0177] Processing can be centralized or distributed. In the case of distributed processing, information, including software and / or data, can be stored centrally or distributed. Such information can be exchanged between different functional units via communication networks, such as local area networks (LANs), wide area networks (WANs), or the Internet, wired or wireless data links, electromagnetic signals, or other data communication channels.

[0178] For example, although programs or blocks are presented in a given order, alternative instances may execute routines with steps in a different order, or use a system with blocks, and some programs or blocks may be deleted, moved, added, subdivided, combined, and / or modified to provide alternatives or subcombinations. Each of these programs or blocks can be implemented in a variety of different ways. Furthermore, although sometimes programs or blocks are shown to execute sequentially, they may alternatively execute in parallel, or execute at different times.

[0179] Furthermore, although the elements are sometimes shown to be executed sequentially, they may alternatively be executed simultaneously or in different sequences. Therefore, it is intended that the following claims be interpreted to include all such variations within the scope desired.

[0180] In some embodiments, the present invention may be implemented in software. For clarity, "software" includes any instructions that execute on a processor and may include (but is not limited to) firmware, resident software, microcode, and the like. Both the processing hardware and software may be, wholly or partially, centralized or distributed (or a combination thereof), as is known to those skilled in the art. For example, the software and other modules may be accessible via local memory, via a network, via a browser or other applications in a distributed computing context, or via other means suitable for the foregoing purposes.

[0181] In the case of the components mentioned above (e.g., software modules, processors, assemblies, devices, circuits, etc.), unless otherwise specified, reference to that component (including reference to "means") shall be construed as including any component that performs the functions of the described component as an equivalent of that component (i.e., functionally equivalent), including components that are not structurally equivalent to the disclosed structures that perform the functions in the exemplary embodiments illustrated in this invention.

[0182] For illustrative purposes, specific examples of systems, methods, and apparatuses have been described herein. These are merely examples. The techniques provided herein can be applied to systems other than those described above. Many changes, modifications, additions, omissions, and arrangements are possible within the practice of this invention. This invention includes variations of the described embodiments that will be apparent to those skilled in the art, including variations obtained by means of the following steps: replacing features, elements, and / or actions with equivalent features, elements, and / or actions; mixing and matching features, elements, and / or actions from different embodiments; combining features, elements, and / or actions from embodiments as described herein with features, elements, and / or actions from other techniques; and / or omitting combinations of features, elements, and / or actions from the described embodiments.

[0183] Various features are described herein as existing in "some embodiments". Such features are not mandatory and may not be present in all embodiments. Embodiments of the invention may include zero, any, or any combination of two or more of such features. This is limited to the degree to which a particular feature of such features is incompatible with other features of such features, meaning that it would be impossible for someone skilled in the art to construct a practical embodiment combining such incompatible features. Therefore, the description of "some embodiments" having feature A and "some embodiments" having feature B should be interpreted as explicitly indicating that the inventors also anticipate embodiments combining features A and B (unless otherwise stated in this specification or features A and B are fundamentally incompatible).

[0184] Therefore, the appended claims and the claims introduced below are intended to be interpreted to include all such modifications, arrangements, additions, omissions, and sub-combinations as can be reasonably inferred. The scope of the claims should not be limited to the preferred embodiments illustrated in the examples, but should be given the broadest interpretation consistent with the description as a whole.

[0185] 100: Cinema Management System 101: Post-production server 102:DCC, Digital Media Content 103: Distributor Server 104: Content Creators 105: Distributor 110: Main Structure 111: Data Storage Area 112: Scheduler 112A: Ordering System 113: Scheduling Data 120: Cinema IT System 123: Joint Server Group 124, 124-1, 124-2, 124-3, 124-4…124-n: screen 125,125-1: Media Player 126: Playback System, Human Representative 126-1: Playback System 129: General Automated Management System 130, 130-1, 130-2, 130-3, 130-4…130-n: Server 131: Onboard Data Storage 132: Storage Management 133: Playback Management 134: Soft layer 140: Interface 141: Dashed line 150: Data Link 150-1, 150-2, 150-3, 150-4, 150-5, 150-6, 150-7: Subnets 200: Method Blocks 210, 220, 230, 235, 240, 250, 260, 270:

Claims

1. A method for allocating and managing digital cinema content (DCC) distributed from one or more post-production servers to one or more distribution servers, the method comprising: at a content delivery master, receiving an item of a DCC via the one or more distribution servers and storing the item of the DCC in one or more master data storage areas; accessing data containing a scheduled screening time of the item of the DCC generated by each of one or more cinema IT systems, and determining, at least in part, a delivery deadline for delivering the item of the DCC to each of the one or more cinema IT systems based on the respective scheduled screening time of the item of the DCC generated by the cinema IT system; determining an estimated transmission time for transmitting a copy of the item of the DCC from the master data storage area to each of the one or more cinema IT systems; and for each of the one or more cinema IT systems: determining that the copy of the item of the DCC will be transmitted to the cinema IT system. A separate start time for the system, which is at least as much time earlier than the delivery deadline; and at that separate start time, the transmission of the copy of the DCC item to the cinema IT system begins.

2. The method of claim 1, wherein transmitting the copy of the item of the DCC to at least one of the cinema IT systems includes transmitting the copy of the item of the DCC to a network attached storage (NAS) interface associated with the respective cinema IT system.

3. As in request item 1 or 2, wherein, For at least one of these cinema IT systems, the estimated time required to transfer a copy of the DCC item from the mainframe data storage to the cinema IT system is at least partially based on the future traffic volume in the data connections between the mainframe and the cinema IT system estimated by a predictive model based on historical data traffic measurements in the data connections between the mainframe and the cinema IT system.

4. The method of claim 1, wherein each of the cinema IT systems includes one or more media players, each of the one or more media players being associated with a corresponding screen and each of the one or more media players having a public key, wherein the method includes: For each of these cinema IT systems, at least one Key Delivery Message (KDM) is automatically generated for the item of digital content, the Key Delivery Message containing a decryption key for the copy of the item of digital content encoded with the public key of one or more media players of the cinema IT system.

5. The method of claim 4, comprising: accessing a data storage area containing a record of the playback order of an item from a digital cinema on screens associated with media players of one or more cinema IT systems; and, for each of the one or more cinema IT systems, identifying the record corresponding to the playback order of the item of digital content on each of the multiple screens associated with the media players of the cinema IT system; wherein, For each of these cinema IT systems, the at least one KDM includes multiple KDMs for the project of digital content, each of the multiple KDMs using the public key encoding associated with one of the media players associated with each of the multiple screens.

6. The method of claim 1, wherein the determination of the respective start time is based on one or more of the following: the size of the item in the DCC; the location of the item in the DCC stored in the main structure; the bandwidth of the data connection between the location of the item in the background of the DCC and the cinema IT system; the expected traffic on such data connection between the location of the item in the background of the DCC and the cinema IT system; and the availability of data storage on the cinema IT system.

7. The method of request item 1, wherein the determination of the respective start time is based on the expected traffic on a data connection terminated at the cinema's IT system.

8. The method of claim 1, wherein the estimated transmission time of the item of the DCC is determined based on the size of the item of the DCC, the location from which the item of the DCC will be transmitted to the cinema IT system, the bandwidth of the connection through which the copy of the item of the DCC will be transmitted, and the estimated traffic on such connection.

9. The method of request 1, wherein the determination of the estimated transmission time of an item in the DCC takes into account the impact of the estimated transmission time of other items in the DCC transmitted by the master structure.

10. The method of claim 1, wherein the method comprises adjusting the transmission rate of the DCC to at least one of the cinema IT systems.

11. The method of claim 10, wherein the adjustment is performed in response to a determination that at least one item via streaming DCC is streaming to at least one of the cinema IT systems.

12. The method of claim 1, which includes setting the respective start time to the time when the respective cinema IT system and / or the data communication link connected to the respective cinema IT system is expected to operate at low capacity.

13. The method of request 1, wherein setting the individual start time includes setting the individual start time to occur after midnight and before local noon of the individual cinema IT system.

14. The method of claim 1, wherein determining the start time of each of the cinema IT systems comprises: determining the available storage capacity of each of the cinema IT systems at a time close to the latest start time of the item for which DCC will be delivered but not later than the corresponding delivery deadline, and setting the start time earlier than the latest start time if the available storage capacity of the individual cinema IT system would accommodate the earlier start time.

15. As in request item 1, wherein: The one or more cinema IT systems comprise multiple cinema IT systems; and the method comprises simultaneously delivering the DCC item to these multiple cinema IT systems.

16. The method of claim 1, comprising providing an interface that conveys information about a cinema IT system’s scheduled screening of a particular item of the DCC and status information about the status of the specific items of the DCC required for such scheduled screening, wherein the status information includes at least information indicating that the specific items of the DCC have been received and verified at the cinema IT system and information indicating that other specific items of the DCC have not yet been received by the cinema IT system.

17. The method of request item 1, comprising receiving an upload authorization to upload an item of DCC from a server associated with a distributor to the main structure, and responding to the upload authorization to upload the item of DCC.

18. The method of request item 1, which includes receiving an allocation authorization to transfer the item of DCC from the master structure to one or more of the cinema IT systems.

19. The method of request item 18, wherein the allocation authorizes the DCC to authorize the item thereon to play on one or more specific screens.

20. The method of request item 18 or 19, wherein the allocation authorization specifies the time for which the digital content of the item can be played.

21. The method of claim 1, wherein transmitting the copy of the DCC item to the cinema IT system comprises delivering the copy of the DCC item to a data storage location within the cinema IT system, the copy of the DCC item being playable from the data storage location on a specific screen authorized to play the DCC item without further transmission of the copy of the DCC item within the cinema IT system.

22. The method of claim 1, comprising adjusting the transmission rate of the copy of the DCC to the cinema IT system based on a current load experienced by the cinema IT system.

23. The method of claim 1, comprising adjusting a transmission rate of the copy of the DCC to the cinema IT system based on the current traffic on the data connection used to deliver the copy of the DCC to the cinema IT system.

24. A system for distributing and managing digital cinema content (DCC), the system comprising: one or more cinema IT systems, each of the one or more cinema IT systems being associated with a cinema and including multiple cinema servers, each of the cinema servers including a data storage area and one or more of the cinema servers including a media player associated with a corresponding screen; a host structure configured to selectively deliver the DCC to one or more of the cinema IT systems, the host structure including: one or more host structure data storage areas configured to receive and store the DCC; and a scheduler configured to initiate the transmission of copies of the DCC from the host structure to the individual cinema IT systems, the scheduler being configured to: determine a delivery deadline for delivering that item of the DCC to one of the cinema IT systems based at least in part on a scheduled screening time of an item of digital content generated by the cinema IT system; estimate the delivery date of the DCC to one of the cinema IT systems. The estimated amount of time required to transfer the copy from the main data storage area to the cinema IT system; and the determination of a start time for the transfer that is at least the estimated amount of time earlier than the delivery deadline.

25. The system of claim 24, wherein in one or more of the cinema IT systems, the cinema servers are associated with a federated server group that provides each of the media players in the cinema IT system with access to DCCs stored, in part or in whole, in the data storage area of ​​any of the cinema servers in the federated server group.

26. The system of claim 25, wherein within the joint server group, one or more of the cinema servers manage the joint server group, wherein management includes one or more of the following: determining where and how to store DCCs; receiving DCCs without interfering with playback; adding cinema servers to the joint server group; and removing cinema servers from the joint server group.

27. The system of request item 25 or 26, wherein the combined server group is configured to adjust the rate at which DCC is transmitted to, from, or within the combined server group.

28. The system as described in request item 25 or 26, wherein the combined server group shares with the system one or more cinema server processing capabilities and transmission capabilities, or both.

29. The system of claim 24, wherein the federated server group provides a network attached storage (NAS) interface for receiving transmitted DCCs from the host.

30. The system of claim 24, wherein the system includes a predictive model based on historical data traffic measurements in the data connections between the mainframe and the cinema IT systems, and the scheduler applies the predictive model to predict future traffic on the data connections and estimate the estimated time required to transfer a copy of the DCC from the mainframe data storage to the cinema IT system.

31. The system of request item 24 includes an ordering interface that summarizes information about DCC items available from the distributor servers and receives orders for delivering selections of the available DCC items to the cinema IT systems.

32. The system of request 31, wherein the order requests permission to play DCC's ordered items on specific screens associated with one of the cinema IT systems, each of the media players associated with the screens having a public key, and the system is configured to automatically generate at least one key delivery message (KDM) for each of the DCC's ordered items, the key delivery message containing a decryption key for the DCC's ordered items encoded using the public key of the corresponding media player.

33. The system of claim 24 further includes one or more distributor servers configured to receive DCCs for distribution to cinemas.

34. The system of request item 24, wherein one or more of the cinema servers include a 5G module.

35. The system of claim 24 further includes an online user interface that provides information about one or both of the cinema IT systems and cinema servers.

36. The system of claim 24, comprising an interface that conveys information about the scheduled screening of DCC items by the cinema IT systems and status information about the specific DCC items required for the scheduled screening of those specific DCC items, wherein the status information includes at least information indicating that a specific DCC item has been received and verified at a separate cinema IT system and information indicating that other specific DCC items have not yet been received by the separate cinema IT system.

37. A system for allocating and managing DCCs, the system comprising: one or more cinema IT systems, each of the one or more cinema IT systems being associated with a cinema and including multiple cinema servers, each of the multiple cinema servers including a data storage area and a media player associated with a corresponding screen of the cinema; a host structure configured to selectively deliver the DCCs to one or more of the cinema IT systems, the host structure including: one or more host structure data storage areas configured to receive and store the DCCs; and one or more host structure servers configured to transfer copies of the DCCs from the host structure data storage areas to one or more of the cinema servers of one or more of the cinema IT systems; the host structure cooperating with one or more of the cinema IT systems being configured to schedule and execute the DCCs. The transmission of such copies is made to meet the corresponding delivery deadline, while adjusting the data rate of the transmission and / or suspending and / or prohibiting the transmission at times corresponding to the following: one or more of the cinema servers have a load higher than a threshold; and / or one or more cinema IT systems have a load higher than a threshold; and / or a data communication link to the cinema IT system has a traffic higher than a threshold.

38. The system of claim 37, comprising a scheduler configured to perform one of the following operations: determining, at least in part, a delivery deadline for delivering the item of the DCC to one of the cinema IT systems based on a scheduled screening time of the item of digital content generated by the cinema IT system; estimating an estimated amount of time required to transfer the copy of the DCC from the master data storage area to the cinema IT system; and determining a start time for the transfer that is at least the estimated amount of time earlier than the delivery deadline.

39. The system of claim 38, wherein the scheduler is configured to predict a load on one or more of the cinema servers and / or one or more cinema IT systems based on a scheduling of the screening time of the cinema IT system, and at least in part uses the predicted load as the basis for the start time.

Citation Information

Patent Citations

  • System and Method for Streaming Content from Multiple Servers

    US20160337426A1