Abstract:
A system for providing on-demand video on an aircraft is described. In various implementations, the system includes a first computer that receives broadcast video content, digital video players distributed within a passenger seating area of the aircraft, and a second computer. The second computer receives the video content from the first computer, and provides the video content, on-demand, to a subset of the digital video players. The system also includes a third computer that receives the video content from the first computer, and provides the video content, on-demand, to another subset of the plurality of digital video players. The first computer may provide the video content to the second and third computers using a multicast protocol. The video content may include a live television broadcast or a television channel that was requested by a user of one or more of the digital video players.

Description:
TECHNICAL FIELD 
       [0001]    This invention relates generally to aircraft-based on-demand video systems and methods, and, more particularly, to aircraft-based on-demand video systems and methods that permit both broadcasting and multicasting to occur. 
       BACKGROUND 
       [0002]    In recent years, cable and satellite television technologies have been combined with low-cost, high-capacity digital video recorders to give viewers a tremendous amount of flexibility regarding what programs are watched and when they are watched. The typical consumer is now accustomed to getting video on-demand (VOD). However, there are still certain types of content that entertainment networks would still like to broadcast real-time, such as live programs. But broadcasting content has certain inherent inefficiencies. For example, some viewers on a network may not wish to view a particular broadcast program, but instead may want to view a unicast, VOD program. One environment in which an audience is likely to include people who want broadcast content along with people who want VOD is on a passenger airline. For example, there may be many passengers on a flight who wish to watch the NCAA playoffs. At the same time, there may be passengers on the same flight who are not interested in basketball, but would rather watch VOD movie. But since the broadcast content is propagated throughout the network, bandwidth that could be devoted to VOD is wastefully consumed. Thus, it can be seen that there is a need for a method and system for delivering VOD that addresses the foregoing problems. 
       SUMMARY 
       [0003]    In accordance with the foregoing, a method and system for delivering on-demand video is provided. In an embodiment of the invention, the system includes a first computer that receives broadcast video content, digital video players distributed within a passenger seating area of the aircraft, and a second computer. The second computer receives the video content from the first computer, and provides the video content, on-demand, to a subset of the digital video players. The system also includes a third computer that receives the video content from the first computer, and provides the video content, on-demand, to another subset of the plurality of digital video players. The first computer may provide the video content to the second and third computers using a multicast protocol. The video content may include a live television broadcast or a television channel that was requested by a user of one or more of the digital video players. 
         [0004]    In various implementations the first computer receives requests for the video content from each of a subset of the plurality of digital video players and, in response to the requests, subscribes to a multicast group for the video content. 
         [0005]    The system may also include a network switch communicatively linked to the first, second, and third computers, wherein the network switch maintains a routing table, and the network switch routes communication from the first computer to both of the second and third computers based on the routing table. 
         [0006]    In one implementation, the second computer only receives the video content from the first computer if the second computer has detected that there is a demand for the video content by one or more of the digital video players. 
         [0007]    The system may also include a satellite receiver communicatively linked to the first computer, wherein the first computer receives satellite television video signals from the satellite receiver, and the satellite television video signals represent the video content. The digital video players to which the video content is transmitted may have previously requested the content. 
         [0008]    In various embodiments, each of the digital video players executes software for presenting a menu to a passenger and receives, from the passenger, a request for the video content. 
         [0009]    In another embodiment of the invention, the system includes a broadcast server that receives a live video feed and multicasts the content of the feed, video-on-demand servers communicatively linked to the broadcast server, and multiple groups of digital video players located in a passenger area of the aircraft. Each group of digital video players is associated with one video-on-demand servers. Each of the video-on-demand servers determines whether any of the digital video players it serves has requested the content. Based on this determination, the video-on-demand server requests the live video feed from the broadcast server. The video-on-demand server may perform this requesting step by subscribing to a multicast group associated with the live video feed. 
         [0010]    In various implementations, the system may include an Ethernet switch communicatively linked to each of the video-on-demand servers and to the broadcast server. The Ethernet switch maintains the subscriptions to any multicast groups. In one implementation, the video-on-demand servers receive the content from the broadcast server only if the video-on-demand server determines that one of the digital video players it servers has requested the content. The video-on-demand servers may request the content from the broadcast server by using a multicast protocol. Each digital video player may request the content in response to receiving an input from a passenger via an interactive menu. 
         [0011]    In yet another embodiment of the invention, the method includes the steps of receiving a satellite television signal at a receiver on an aircraft, in which satellite signal comprising data representing a live television broadcast; and transmitting the data to a broadcast server on the aircraft. The broadcast server multicasts the data over a network to video-on-demand servers on the aircraft. Each video-on-demand server is associated with a group of digital video players, and each digital video player is associated with a passenger seat of the aircraft. Each of the video-on-demand servers determines which of its associated digital video players has requested the television broadcast and then multicasts the data to those digital video players. In one implementation, each of the video-on-demand servers subscribes to a multicast group only if one or more of its digital video players requests the data. A virtual local area network that includes the broadcast server and the video-on-demand servers may be maintained to carry out the method. 
     
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0012]      FIG. 1  illustrates an embodiment of the system for delivering on-demand video described herein; 
           [0013]      FIG. 2  illustrates an embodiment of a VOD server (from  FIG. 1 ); 
           [0014]      FIG. 3  illustrates an embodiment of an area distribution (ADB) box (from  FIG. 1 ); 
           [0015]      FIG. 4  illustrates an embodiment of a seat electronics box (SEB) (from  FIG. 1 ); and 
           [0016]      FIG. 5  is a block diagram that will be referred to in conjunction with a description of the steps carried out on the system of  FIG. 1  to deliver both on-demand video and a broadcast program to passengers on an airline. 
       
    
    
     DETAILED DESCRIPTION 
       [0017]    Referring to  FIG. 1 , a system configured in accordance with an embodiment of the invention is shown. The system, generally labeled  10 , is an Ethernet network (e.g., 100 BaseT or 1000 BaseT) located on a passenger aircraft, and having several components, many of which act as nodes on the network. Although the embodiment described herein will be referred to as having a certain number of each type of component, it is to be understood that any number of nodes and/or components is possible. The system  10  includes a satellite receiver  11 , first, second, and third VOD servers  12 ,  14 , and  16 , and an Ethernet switch  18 . The satellite receiver  11 , and the VOD servers  12 ,  14 , and  16  are communicatively linked to the Ethernet switch  18  via Ethernet communication links. The Ethernet switch  18  directs Ethernet frames to the appropriate components in the system  10  based on one or more of the following: MAC addresses of the frames, multicast protocols, broadcast protocols, and IP addresses of the IP packets contained within the Ethernet frames. The system  10  also includes first, second, and third area distribution boxes (ADBs)  20 ,  22  and  24 , each of which is communicatively linked via Ethernet to the Ethernet switch  18 . Proximate to each row of passenger seats in the aircraft is a seat electronic box (SEB)  28 , which is communicatively linked to one of the ADBs via Ethernet. One or more digital video players (“players”) are connected to each SEB via gigabit Ethernet such that each passenger will have his or her own player. Each player may be stand-alone, or may be integrated with a video display unit, such as the Smart Video Display Unit (SVDU) described in U.S. application Ser. No. 11/137,011, which was filed on May 25, 2005, and is incorporated herein by reference in its entirety. The system further includes a broadcast server  26 , which is communicatively linked via Ethernet to the first, second, and third VOD servers  20 ,  22 , and  24 , and to the satellite receiver  11 . In an embodiment of the invention, the Ethernet switch  18  limits distribution of the content of the broadcast server  26  to the VOD servers  20 ,  22 , and  24  by, for example, setting up a port-based Virtual Local Area Network (VLAN). 
         [0018]    Referring to  FIG. 2 , an example implementation of a VOD server (the VOD  12  from  FIG. 1 ) will now be described. According to this implementation, each VOD server is controlled by a processor  31  (e.g., a 300 MHz G3 PowerPC), and includes a Random Access Memory (RAM)  32 , a first controller (e.g., a SCSI controller)  34 , a first hard disk  35 , a second controller  36 , and a second hard disk  37 . The VOD server further includes Ethernet interfaces  38 . The operation of the first hard disk  35  is controlled by the first controller  34 , while the operation of the second hard disk  37  is controlled by the second controller  36 . 
         [0019]    Stored on the first and second hard disks  35  and  37  is data representing video content (including any accompanying audio content), such as movies and prerecorded broadcasts. The video content may be stored in any of a variety of formats, MPEG-4 being one example. Also stored on the first and second hard disks  35  and  37  is live broadcast content (i.e., broadcast content that has just been received via television or radio signals). When the VOD server receives a request for video content, the processor  31 , in cooperation with the RAM  32  and the controllers  34  and  36 , retrieves the video content from one or both of the hard disks  35  and  37 , and transmits the video content out of the appropriate Ethernet interfaces  38 , buffering the video content as necessary in a video buffer of the RAM  32 . 
         [0020]    Referring to  FIG. 3 , an example implementation of an ADB (the ADB  20  from  FIG. 1 ) will now be described. According to this implementation, the ADB is controlled by a processor  44  (e.g., a 300 MHz G3 PowerPC), and includes an Ethernet switch  42 . The ADB is communicatively linked to the Ethernet switch  18  ( FIG. 1 ) via a 1000 BaseT Ethernet. The ADB is communicatively linked to some of the SEBs  28  ( FIG. 1 ) in its subnet via Ethernet links (either 1000 BaseT or 100 BaseT). The ADB receives Ethernet frames from the Ethernet switch  18  and transmits them to the appropriate SEBs based on the destination MAC addresses of the frames and based on multicast protocol commands received. Additionally, the ADB may be capable of detecting IP addresses of packets contained within the Ethernet frames and transmitting the Ethernet frames to the appropriate SEBs based on those IP addresses. 
         [0021]    Referring to  FIG. 4 , an example implementation of an SEB (the SEB  28  from  FIG. 1 ) will now be described. According to this implementation, the SEB is controlled by a processor  54  (e.g., a 300 MHz G3 PowerPC), and includes an Ethernet switch  52 . The SEB is communicatively linked to either the Ethernet switch  18  ( FIG. 1 ) or another SEB via an Ethernet link (either 1000 BaseT or 100 BaseT). The SEB is also communicatively linked to first, second, and third players  57 ,  58 , and  59  via 100 BaseT Ethernet. The SEB receives Ethernet frames from the Ethernet switch  18 , either directly or via other SEBs, and transmits them to the appropriate digital video player based at least in part on the destination MAC addresses of the frames and based on multicast protocol commands received. Additionally, the SEB may be capable of detecting IP addresses of packets contained within the Ethernet frames and transmitting the Ethernet frames to the appropriate dig based on those IP addresses. 
         [0022]    In an embodiment of the invention, the system  10  ( FIG. 1 ) provides broadcast content to the passengers as follows. When an player (in response to a passenger&#39;s input) requests a program of the kind provided by the broadcast server  26 , the VOD server that normally provides VOD material to that passenger&#39;s player looks for the multicast stream associated with the requested program. The data from the multicast stream is then routed as a unicast stream to the requesting player. From the point of view of the system  10 , the unicast stream is just another VOD program, just like those that are pre-stored in the VOD servers. The additional load on the VOD server is minimized as the VOD server only listens to the multicast streams explicitly requested by player. The performance impact on the network interface of the VOD server is also minimal as there is virtually no load on the input link to the VOD server when a VOD program is being played. 
         [0023]    According to an embodiment of the invention, the broadcast server  26  multicasts its content to one or more predefined “multicast groups,” whose members are one or more of the VOD servers  12 ,  14 , and  16 . The identities of the VOD servers that are members of a particular multicast group are defined by and stored on the Ethernet switch  18 . The Ethernet switch  18  redirects the multicast streams that it receives from the broadcast server  26  to the appropriate VOD servers based on their membership in the multicast groups. 
         [0024]    Referring to  FIG. 5 , an example of how multiple passengers in an aircraft can view both VOD content and broadcast content will now be described. In this example, it is assumed that the broadcast server monitors five different satellite channels and transmits the content of each of those five channels to the Ethernet switch  18 . The Ethernet switch defines five multicast groups—one for each of the five channels. Each of the VOD servers then has the option to subscribe to one or more of these multicast groups using, for example, a multicast protocol. 
         [0025]    Continuing with the example, first a passenger at one of the passenger seats uses the player to access an interactive menu. Then, the passenger orders a movie using the menu. That order is formatted by the SEB into an HTTP “POST” command, which is transmitted to the Ethernet switch  18  using standard TCP/IP networking protocols. The Ethernet switch  18  refers to its internal routing table to determine which VOD server should handle the request. In this example, it will be assumed that the first VOD server  12  will handle the request. Based on the routing table, the Ethernet switch transmits the request to the first VOD server  12 . The first VOD server  12  interprets the request as a request for satellite channel  3 . The first VOD server  12  responds by sending a multicast protocol message to the Ethernet switch  18  indicating that the first VOD server  12  wishes to subscribe to the multicast group corresponding to channel  3 . The Ethernet switch  18  then transmits Ethernet frames containing the video for channel  3  that it receives from the broadcast server  26  to the VOD server  12 . The VOD server  12 , in turn, transmits those Ethernet frames to the player of the passenger that requested channel  3 . 
         [0026]    It can thus be seen that a new and useful system for delivering on-demand video has been described. Note that there are many possible variations of the embodiments described herein that fall within the scope of the following claims. Additionally, every implementation and configuration described herein is meant to be an example only and should not be taken as limiting the scope of the claims. Also, note that he use of the terms “a” and “an” and “the” and similar referents in the context of describing the invention (especially in the context of the following claims) are to be construed to cover both the singular and the plural. Finally, the steps of all methods described herein can be performed in any suitable order unless otherwise indicated herein or otherwise clearly contradicted by context.