Abstract:
A system and method for generating revenue for content distributors (e.g., studios) and location based viewing retailers (e.g., exhibitors) is provided. The system extends the viewing retailer footprints outside the various venues (e.g., into homes and mobile devices), using virtual seats that are associated to a particular location based on geography, and by making content available to consumers that might otherwise be either unavailable and/or inconvenient. The system comprises a control circuitry configured to: to receive, using a communications circuitry, a first location information from a first client device; to determine, using a location engine, a geographical location of the first client device using the first location information; and to send, using a content distribution engine, the content to a second client device based on the determined geographical location of the first location information, even if the first and second devices are contained in a single device.

Description:
CROSS-REFERENCE TO RELATED APPLICATION 
       [0001]    This application claims priority to U.S. Provisional Application No. 62/217,555 entitled “GEOLOCATION BASED CONTENT DELIVERY NETWORK SYSTEM, METHOD AND PROCESS”, filed Sep. 11, 2015, which application is hereby incorporated in its entirety by reference. 
     
    
     FIELD OF THE INVENTION 
       [0002]    Various aspects of the disclosure relate to content delivery, and in one aspect but not by way of limitation, to content delivery based on geolocation information. 
       BACKGROUND 
       [0003]    Exclusive exhibition of various forms of content (e.g., movies, plays, concerts, and sporting events) commonly occurs in location-based venues where attendant constraints, such as limited seats and showtimes, of access for the public can greatly limit the potential reach for that content. Movies in theatres are a primary example of content with such constraints. For a new movie release, theatres typically have a limited window of exclusivity to exhibit the new movie to as many people as possible while having to balance the showtimes and seat counts among all of the movies exhibited at any given theatre. 
         [0004]    Movies are typically released exclusively to theaters for a minimum period of 90 days. However, the bulk of people attend a new movie during the first few weeks of the release window, and the availability of each movie declining precipitously thereafter. Even for blockbuster movies, which might continue to attract high attendance in the later stage of the release window, the general availability to the public is still reduced over time as it plays on fewer screens and with fewer showtimes. During the time between the steep attendance drop and later DVD/Blu-Ray disc release, both the movie studios and theatre operators (exhibitors) are denied potential viewers due to lack of availability during the “dead period” for the film prior to DVD, as theatre operators remove lower performing movies from screens, and replace them with newer and/or better performing movies. When this dead period occurs, potential revenue for movie studios and theatre operators are lost. 
         [0005]    Movies generally do not play in theatres for the full 90+ days of the theatrical release window because the economics of holding a screen for an entire run rarely makes sense. In a typical 90-day period, approximately 125-150 movies are released to theatres. Theatres in turn typically have between 4 and 30 screens, each seating anywhere from 30-300 people. Because of the non-continuous nature of adding seats to match the title&#39;s appeal (i.e.—a step function from 0 seats to one screen that holds 30 or more people), and the competition among movies for screen real estate, the public is usually unable to find even new movies soon after their theatrical release. Further complicating matters, scheduled showtimes cannot possibly always align with the specific needs of all members of the public, and the varying degrees of ease of access to theatres (e.g., distance, weather, geographical constraints) further combine to limit the overall revenue for any single title even at its peak moment of awareness. All of these complications translate directly to potentially thousands of lost attendances. One way to recoup some of the lost attendance is to provide an alternative way for consumers to watch movies when they cannot be found (or are hard to find) in theatres. 
       SUMMARY OF THE INVENTION 
       [0006]    To address the challenges of content (e.g., movie) availability described above, content owners and exhibitors ideally should be able to sell an inventory of “virtual seats” (or remote seats) located in homes or in places that are remote to the exhibitors&#39; venue. This will allow consumers to watch the exhibited content outside the venue (e.g., at home) and free them from the requirement of being at the venue physically. By allowing consumers to obtain virtual seats of a movie/content and to watch it outside the venue (e.g., at home), the constraints of limited seats at the venue and inflexible showtimes (i.e., exhibitor selected showtimes rather than consumer-selected) are greatly lessened. Further, the economic reality of consumers not being able to keep a particular film on screen during the entire limited exclusivity window will become less of an issue. As such, an alternative way for consumers to watch a movie during the theatrical release window or a first run movie is needed. Accordingly, a method and system for providing first run movies (or other content) to consumers for viewing outside the venue (e.g., at home) are provided. 
         [0007]    In one aspect, a method for providing content to a set of remote viewers, at seats located outside the venue and within a geographic distribution boundary, is provided. The method comprises: defining said geographic boundary corresponding to a geographic area relating to the first venue, said geographic boundary is different from a geographic boundary of a second venue; determining (for said remote viewers of the first venue) using a location engine, the geolocation of each seat of said remote viewer; determining whether the geolocation of said seat is within said geographic boundary of the first venue; and providing said content, using a distribution engine, to each of said seats determined to be within said geographic boundary of said first venue. 
         [0008]    In another aspect, a method for sending a content to a client device based on the client device geolocation data is provided. The method comprises receiving a first location information from a first client device. The first client device may be a television, a set-top-box, a game console, or an Internet based streaming device (e.g., OTT devices such as Roku™ and Chromecast™). The first location information of the first device may comprise one or more of an Internet Protocol (IP) address, a media access control (MAC) address, and geolocation data such as global positioning system (GPS) data (e.g., longitude and latitude). Once the first location information is received, the geographical location of the first client device is determined using the first location information. 
         [0009]    In one aspect, the content or media is sent to a second client device based on the determined geographical location of the first location information. The first client device may be the same as the second client device. In other words, both the request for content and the display of content are performed by the same device (e.g., connected TV). In another aspect, the first client device is different than the second client device. In this scenario, the first device may be a mobile device performing the geolocation via GPS, registration and the ordering of the content. Once ordered, the content will be available for download or stream to a second display device such as a connected TV or set-top-box that was previously registered with the first device. It should be noted that the content may be a multimedia, a movie, a concert, a sporting event, a play, or any other entertainment event. 
         [0010]    In one aspect, prior to delivering/streaming the content to the client device, the property type at the geographical location of the location information (or geolocation data) is verified. In one aspect, the content is only delivered to the client device if the type of property is determined to be a residential property or a mixed residential-commercial property. In yet another aspect, the IP address of the first location information is checked to determine whether it matches with the IP address of the second location information. Only when there is a match and upon verification that the property type is a residential type property, the content may be delivered (be available for download) or streamed to the client device or an alternative display device previously registered with the client device. 
         [0011]    In one aspect, the method also comprises receiving a request for a listing of first run movies from the first device and locating a theatre proximate to the determined geographical location of the first client device. This creates a geo-fence around a participating theatre by assigning all registered client devices located at a residential (or mixed residential-commercial) property within X number of miles to that participating theatre, by way of selling virtual seats in the participating theatre. In this way, revenue generated via the geolocation based content delivery system and method may be shared with the participating theatre. This revenue may be reported as box office revenue for the participating theatre. In another aspect, the method also comprises receiving a request for a listing of first run movies (and/or other content) from the first device and locating a theatre proximate to the determined geographical location of the first client device. This creates a geo-fence around a non-participating theatre by geo-blocking (preventing) all registered client devices located at a residential (or mixed residential-commercial) property within X number of miles to that non-participating theatre. 
         [0012]    In one aspect, the method also comprises retrieving a list of movies being offered by the theatre proximate to the determined geographical location and sending the list of movies to the client device. In another aspect, the method comprises receiving a request for a listing of first run movies (and/or other content) from the first device and determining a geographical location of the second device associated with the first device. The first and second client devices may be different. Once the geographical location of the second device is determined, a participating theatre proximate to the second device is located. Next, a list of movies being offered by the participating theatre is retrieved and sent to the first client device. The first client device may then place an order for a movie to be displayed on the second device. In one aspect, a portion of the revenue generated from the order is shared with the participating theatre and the movie studio. 
         [0013]    In yet another aspect of the disclosure, a system for content delivery is disclosed. The system comprises a control circuitry configured to: receive, using a content consumption engine and the communications circuitry, a first location information from a first client device; determine, using a location engine, a geographical location of the first client device using the first location information; and send, using a content distribution engine, the content to a second client device based on the determined geographical location of the first location information. 
         [0014]    In yet another aspect, a non-transitory processor-readable medium is disclosed. The non-transitory processor-medium comprises one or more instructions operational on a computing device, which when executed by a processor causes the processor to: receive a first location information from a first client device; determine a geographical location of the first client device using the first location information; and deliver the content to a second client device based on the determined geographical location of the first location information. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0015]    The foregoing summary, as well as the following detailed description, is better understood when read in conjunction with the accompanying drawings. The accompanying drawings, which are incorporated herein and form part of the specification, illustrate a plurality of embodiments and, together with the description, further serve to explain the principles involved and to enable a person skilled in the relevant art(s) to make and use the disclosed technologies. 
           [0016]      FIG. 1  illustrates an exemplary environment in which the geolocation based content delivery platform operates in accordance with an aspect of the disclosure. 
           [0017]      FIG. 2  illustrates an exemplary client device registration system and process with ISP relationship in accordance with an aspect of the disclosure. 
           [0018]      FIGS. 3-4  illustrate exemplary geolocation based content delivery systems and processes with ISP relationship in accordance with an aspect of the disclosure. 
           [0019]      FIG. 5  illustrates an exemplary client device registration system and process with no ISP relationship in accordance with an aspect of the disclosure. 
           [0020]      FIGS. 6-7  illustrate exemplary geolocation based content delivery systems and processes with no ISP relationship in accordance with one or more aspects of the disclosure. 
           [0021]      FIGS. 8-9  illustrate exemplary mobile device initiated geolocation based content delivery systems and processes with no ISP relationship in accordance with one or more aspects of the disclosure. 
           [0022]      FIG. 10  illustrates an exemplary server-side registration and geolocation based content delivery process in accordance with an aspect of the disclosure. 
           [0023]      FIG. 11  illustrates an exemplary server-side geolocation based content delivery process in accordance with an aspect of the disclosure. 
           [0024]      FIG. 12  illustrates an exemplary server-side registration and geolocation based content delivery process in accordance with an aspect of the disclosure. 
           [0025]      FIG. 13  illustrates an exemplary client-side geolocation based content delivery process in accordance with an aspect of the disclosure. 
           [0026]      FIG. 14  illustrates an exemplary geolocation based content delivery process in accordance with an aspect of the disclosure. 
           [0027]      FIG. 15  illustrates an exemplary process that governs content offer in accordance with an aspect of the disclosure. 
           [0028]      FIG. 16  illustrates an exemplary server-side remote seat purchasing process in accordance with an aspect of the disclosure. 
           [0029]      FIG. 17  illustrates an exemplary process for the loyalty partner program in accordance with an aspect of the disclosure. 
           [0030]      FIG. 18  is a block diagram illustrating an exemplary software module/engine and hardware implementation of the geolocation based content delivery system in accordance with an aspect of the disclosure. 
           [0031]      FIG. 19  is a block diagram illustrating an exemplary of a hardware implementation of a geolocation based content delivery method and system that may employ the methods and processes of  FIGS. 2-17  in accordance with one or more aspects of the disclosure. 
       
    
    
     DETAILED DESCRIPTION 
     Overview 
       [0032]    As previously mentioned, movies sometime perform poorly at the box office because of weather, timing of the release, unfair ratings, negative reviews, and competition. Theatre operators (exhibitors) lose money whenever they dedicate an entire screening room to a low performing movie as they must pay for staffs and lose out on profits that could have been generated by screening a better performing or newer movie. As such, theatre operators tend to remove low performing movies from screening as soon as possible. Sometimes theatre operators remove a movie from screening just after 2 weeks of being released—well in advance of the end of the movie&#39;s scheduled exclusivity period. During the dead earning period between when the movie is removed from theatres and the DVD/Blu-Ray release date, both the movie studio and theatre operators will generate almost zero revenue and may even likely lose money due to cost borne from marketing, staffing, and distribution. 
         [0033]    As such there is a need for a system and method that would allow consumers to obtain tickets and watch movies during the dead attendance period. What is needed is a system and method for streaming (or otherwise made available) first run movies (i.e., movies still in their theatrical release window and are exclusive to theatres) to consumers. The system would basically allow consumers to obtain “virtual seats” (seats located remotely and outside of the theatre) of a movie at participating theatres near their home and view the movie in the comfort of their own home. In one aspect, a consumer may only obtain virtual seats from nearby participating theatres with which the consumer&#39;s residential property is associated. This aspect of a theatre and residential properties allows the content (during the first run window, for example) to be shared with the participating theatre much like the standard brick-and-mortar revenue sharing model. 
         [0034]      FIG. 1  illustrates an exemplary environment  100  in which the method and system for geolocation based content delivery operate. As shown in  FIG. 1 , environment  100  includes a communication network  110 , a consumer facing content portal  115 , a content delivery network (CDN)  120 , a theatre  125 , a movie studio  130 , an Internet service provider (ISP)  135 , a mobile phone  140 , location services  145 , and a residential property  150 . Operating within a local area network (LAN) of residential property  150  are items such as a connected TV  152 , a game console  154 , a satellite or cable set-top-box (STB)  156 , and various client devices  158  (e.g., mobile phone, tablet, laptop, desktop, etc.). Consumer facing content portal  115  can also be referred to as a consumption engine which facilitates the order and consumption of content by consumers. 
         [0035]    In one aspect, consumer facing content portal (consumption engine)  115  may be a secured computing platform having servers in various locations for hosting web sites, web applications, and application programming interfaces (API), each of which or combination thereof may be responsible for managing communication session between CDN  120 , theatre  125 , movie studio  130 , ISP  135 , mobile phone  140 , location services  145 , and various devices in residential property  150  in order to facilitate the first run movie (or other content) ordering and streaming process. Portal  115  may host a web site or web application for consumers to connect to using one of client devices  152 ,  154 ,  156 , and  158  in order to obtain a listing of first run movies from a participating theatre proximate to their home and to obtain a virtual seat of a movie. It should be noted that content other than first run movies may be on the list such as old movies, classics, plays, sporting events, live events (e.g. pop concerts), etc. Portal  115  may also have APIs for interfacing with applications installed in connected TV  152  and other connected devices such as STB  156  and game console  154 . Likewise, the API will manage the communication session between the various entities such as CDN  120 , theatre  125 , ISP  135 , location services  145 , and one of connected devices  152 - 158  to enable the consumer to view available first run movies or other content being offered by participating theatre  125  and to obtain virtual seats for a movie/content. 
         [0036]    CDN  120  may comprise servers deployed in various data centers across the world. CDN  120  may store encrypted movies (including movies in their theatrical release window) provided by studio  130 . Once a consumer obtains a virtual seat of a movie from theatre  125 , the closest and/or fastest CDN server available for the consumer&#39;s geographical location is identified. CDN  120  may make the movie available for download or may stream the movie to HDCP (high-bandwidth digital content protection) certified IP devices located at residential property  150 . 
         [0037]    In one aspect, portal  115  may implement a session based watermarking on the movie prior to the movie being delivered or streamed to a device in residential property  150 . The session based watermarking is unique for each residential property or IP address associated with residential property  150 . In this way, studio  130  may detect and track down illegal copying and distribution of a movie in case the encryption mechanism is somehow compromised. 
         [0038]    In one aspect, first run movies are only offered to residential properties. Commercial properties are not eligible because of the high risk of a mass showing. This obviously would greatly diminish the revenue capacity for the movie studios. To ensure that only residential properties can obtain virtual seats and watch first run movies, portal  115  employs an innovative geolocation based verification process and determines whether the residential property falls within a geographical distribution boundary of a participating theatre. In one aspect, the geographical location of the IP address associated with a MAC address of a client device such as connected TV  152 , game console  154 , and STB  156  is verified. This may be done by having a data sharing relationship with ISP  135 , which provides Internet services to residential property  150 . In one aspect, portal  115  communicates with ISP  135  to obtain the geographical location and/or address of residential property  150 . Once property  150  is verified to be residential property such as a single family home, a condominium, or an apartment, portal  115  will authorize devices associated with the IP address of residential property  150  to receive a stream of first run movies. 
         [0039]    In one aspect, commercial properties may be allowed to obtain virtual seats and watch first fun movies or other content but with additional requirements. In this scenario, when the display device is determined to be associated with a commercial property, portal  115  may require additional verification or information such as the number of expected viewers, the type of event, and the name of company associated with the commercial property. In one aspect, the availability of content and the pricing of a virtual seat for a commercial property may be adjusted based on one or more of the additional information. In one aspect, only a certain type of event located in a commercial property may be allowed to view and obtain a movie/content from the geolocation based content delivery platform. For example, when the geolocation of a device is associated with a commercial property, the device may still be allowed to obtain a movie if the device indicates that the event is for a child&#39;s birthday. In one aspect, once a child&#39;s birthday is the input for the type of event, then the list of available movies may be restricted by genre such as family or animation. 
         [0040]    The additional information may also be used to perform analytics and to identify anomalies. For example, if a property—residential or commercial—has a consistent history of ordering a movie every Friday at 5 pm, it may warrant an investigation or the account holder may be required to provide additional information or the account may even be restricted. 
         [0041]    In another aspect, only movies with a certain status will be made available for purchase by consumers in a commercial building. The status may include one or more of the number of days since released, critic reviews, and the percent of theatres screening the movie. For example, if the percent of theatres screening the movie is less than 5%, then the movie may be made available on the geolocation based content delivery platform for commercial properties. In one aspect, similar status triggers as described above may also be applicable to residential properties. 
         [0042]    Referring again to  FIG. 1 , portal  115  may verify the MAC address of STB  156  with cable and satellite TV providers, when STB  156  is used to obtain virtual seats or selected as the display/rendering device, to determine whether the cable/satellite subscriber is associated with a residential or commercial account. In one aspect, STBs that are associated with commercial accounts are prohibited to participate in the geolocation based content delivery platform provided by portal  115 . As such, for the purpose of IP address verification, ISP  135  may include cable and satellite providers such as Dish™, Comcast™, and DirecTV™. Alternatively, STBs that are associated with commercial accounts may participate when certain additional information is provided and certain movie status triggers are met. 
         [0043]    Where a data sharing relationship with ISP  135  does not exist, portal  115  may verify the geographical location of an IP address of a display device (e.g., connected TV  152 , a HDCP certified mobile device, an portable game console, etc.) by using the geolocation data of a location services enabled device (e.g., mobile device  158 ) that is also located on the same network. For example, as shown in  FIG. 1 , connected TV  152  and mobile device  158  (e.g., mobile phone, tablet, etc.) may both be connected to the same local area network, thus they share the same IP address when communicating with communication network  110 . To verify that the IP address used by connected TV  152  is located in a residential type property, the geolocation data of mobile device  158  may be used to obtain the actual geographic location of device  158  while it is connected to the same LAN as connected TV  152 . Using the geolocation data from mobile device  158 , the longitude and latitude may be obtained and thereby may be used to cross reference various resources such as Bing&#39; Maps and Google Maps to determine the type of property that is located at that geographic location. In this way, the geographic location of TV  152  and the type of property where TV  152  is located can be ascertained. In one aspect, the geographic location and the property type associated with the geographic location may be determined using a location verification service/engine (not shown). This service may be part of portal  115  or may be an independently operated entity such as location services  145 , which may be an IP address look-up service/company. 
         [0044]    In one aspect, the location of mobile device  158  may be determined by triangulation with nearby cell towers. In urban or highly developed areas where cell towers are common, the triangulation location method can be sufficiently accurate to determine the type of property where the mobile device is located. Accordingly, in one aspect, the shared IP address of TV  152  and mobile device  158  and the triangulation location data of mobile device  158  may be used to verify the geographic location and the property type where both of the devices reside. 
         [0045]    The first run content delivery/streaming platform as described above brings customers and revenue to entertainment promoters that show live events (e.g., movies, concerts, and plays) by geo-locating customers and selling virtual seats at the promoter&#39;s venue. The geolocation based content delivery platform also provides customers with a secure platform for viewing live events, where and when they want (e.g., an in-home theatre), while protecting by geo-fencing (a.k.a. geo-blocking) any pre-determined/protected trade areas. It should be noted that a venue may be a theatre, a park, a stadium, a stage, a school, a gymnasium, or any structure suitable for hosting an event. 
         [0000]    Geolocation Based Content Delivery with ISP Relationship 
         [0046]      FIG. 2  illustrates a registration process  200  of a display device such as connected TV  152 , game console  154 , and STB  156  in accordance with one aspect of the disclosure. In one aspect, a display device  205  (e.g., connected TV  152 , game console  154 , and STB  156 ) must first be registered with the system before being able to receive a list of first run movies that is available for download or streaming. Process  200  begins at  220  when display device  205  sends a registration request along with its IP address to a location engine  210 . In one aspect, display device  205  also sends its MAC address to location engine  210 . In one aspect, location engine  210  is a standalone location determination/verification service such as location services  145 . Alternatively, location engine  210  may be a part of consumer portal  115 . In one aspect, location engine  210  may be one of a plurality of APIs, residing on portal  115 , that is specifically coded to determine and verify the geographical location of an IP address. 
         [0047]    At  230 , the IP address of display device  205  is sent to ISP engine  215  which is configured to determine the geographical location of display  205 . ISP engine  215  is also configured to determine the property type—residential or commercial—of the structure at the determined geographical location. At  240 , ISP engine  215  sends the geographical location information back to engine  210 . In one aspect, ISP engine  215  may confirm to location engine  210  that the IP address of display device  205  is associated with a residential property. Once confirmed, location engine  210  may register display device  205  as an authorized display device. At  250 , location engine  210  may optionally send a registration confirmation to display device  205 . 
         [0048]    In one aspect, ISP engine  215  may be part of ISP  135 . Alternatively, ISP engine  215  may be one of a plurality of APIs residing on portal  115 . 
         [0049]    In one aspect, display device  205  may send a registration request and the IP address directly to portal  115 , which will then communicate with location engine  210  and ISP engine  215  to complete the registration. In one aspect, ISP engine  215  may be integrated with location engine  210  to enable location engine  210  to perform all of ISP engine  215  functionalities. 
         [0050]      FIG. 3  illustrates a process  300  for ordering a first run movie or other content in accordance with one aspect of the disclosure. Process  300  starts at  315  where display device  205  makes a title request to location engine  210 . Along with the title request, display device  205  also sends its IP address to location engine  210  for verification that the TV IP address has not changed since it was registered. Once location engine  210  confirms that the IP address for display device  205  has not changed, it forwards (at  320 ) the title request and the location information to a content/session management  305 , which will obtain the list of first run movies at a nearby and participating theatre, based on the received location information. 
         [0051]    In one aspect, content/session management  305  may be a part of portal  115 . For example, session management  305  may be an API or a web application residing on portal  115 . At  325 , the listing of first run movies is sent to display device  205 . At  330 , display device  205  places a movie order with session management  305 . At  335 , session management  305  instructs a distribution engine  310  to stream the ordered movie to display  205 . At  340 , the ordered movie is streamed to display device  205 . In one aspect, distribution engine  310  may make the movie available for download for later playback. At  345 , session management  305  sends a transaction report to royalty engine  350 . The transaction report may include the total sale receipt, the identification of participating theatre, and the consumer account information associated with display device  205 . 
         [0052]    Referring back to  FIG. 2 , although not shown in  FIG. 2 , session management  305  may communicate with a participating theatre within a certain distance from the geographical location of the location information to obtain a real-time listing of first run movies. 
         [0053]      FIG. 4  illustrates a process  400  for ordering a first run movie or other content using display device  205  in accordance with one aspect of the disclosure. It should be noted that in process  400 , display device  205  is already pre-registered with consumer portal  115  using an ISP location service as described in process  200 . Additionally, in one aspect, the architecture of process  400  only allows display device  205  to initiate communication with session management  305 . In this way, session management  305  may manage all the necessary functions/communications to enable display device  205  to order and receive a first run movie stream. 
         [0054]    At  405 , display device  205  may send a request to session management  305  for a listing of first run movies. In one aspect, display device  205  may also send the IP address and the MAC address to session management  305 . However, since display device  205  is already pre-registered, session management  305  is already aware of the geographical location of display device  205  and had also verified the type of property at the geographical location of display device  205 . Accordingly, at  410 , upon receipt of the request for the listing of first run movies, session management  305  may immediately send the listing of first run movies back to display device  205  using a list of first run movies being offered by a participating theatre proximate to the geographical location of display device  205 . In one aspect, session management  305  may re-query the participating theatre for an updated movie listing each time a request for a listing of first run movies is received from display device  205 . In one aspect, the listings of all first run movies being offered by participating theatres are stored locally and are dynamically updated via API calls. In this way, session management  305  does not have to be in direct or constant communication with the participating theatre. In one aspect, session management  305  may update the listing of first run movies in real time or periodically. 
         [0055]    In one aspect, session management  305  may optionally check whether display device  205  is currently using the same IP address as it was using when it first registered. In one aspect, at  415 , session management  305  may optionally send the IP address information to location engine  210  for re-verification. At  420 , location engine  210  may send to session management  305  the result of the IP address re-verification. In one aspect, steps  415  and  420  are optional and may be performed by session management  305 . For example, during registration process  200 , session management  305  may store the IP address and the MAC address of display device  205  after the geographical location has been determined and verified. In this way, when display device  205  makes a future request/order, session management  305  can perform a quick verification to determine whether display  205  is already registered and pre-approved without having to depend on ISP engine  135  and location services  145 . 
         [0056]    At  425 , display  205  may place an order for a first run movie from the list of movies received at  410 . Once session management  305  receives the order, it sends an instruction (at  430 ) to distribution engine  310  to stream the ordered movie to display device  205 . At  435 , in response to the instruction sent by session management  305 , distribution engine  310  streams (or otherwise makes available) the ordered movie to display device  205 . In one aspect, only HDCP certified devices can receive content stream from distribution engine  310 . At  440 , the revenue collected from the sale of the movie is distributed by royalty engine  350 . 
       Location Engine 
       [0057]    Referring to  FIGS. 2, 3, and 4 , it should be noted that location engine  210  may also be coded to cross reference various map resources such as Bing™ Maps and Google™ Maps to determine the type of property located at a specific geographic location. In one aspect, location engine  210  may be coded to perform triangulation using nearby cell towers to determine the location of a device. In urban or highly developed areas where cell towers are common, the triangulation location method can be sufficiently accurate to determine the type of property where the mobile device is located. Accordingly, in one aspect, location engine  210  may verify the geographic location and the property type where both of the devices are located by using 1) the shared IP address of connected TV  152  and mobile device  158 ; and 2) the triangulation location data of mobile device  158 . 
         [0058]    Once the geolocation of the mobile device is determined, location engine  210  locates the nearest theatre to the mobile device by determining which one of a theatre&#39;s geographical distribution boundary contains the geolocation of the mobile device. Location engine  210  may include a venue database containing locations of venues (e.g. movie theatres, concert halls, and stadiums) and their respective trade area. The venue database may comprise, but is not limited to, proprietary software and/or third-party database and/or API&#39;s. If the venue database is a separate entity, the location engine  210  may be configured to query the venue database to obtain the geographic distribution boundary for a particular theatre. It should be noted session management  305  or any one of the plurality of APIs of portal  115  may also be configured to perform this task. 
         [0059]    In one aspect, geolocation data may include a latitude, a longitude, and an accuracy factor. Location engine  210  may check whether the geolocation received from mobile device  158  has the desired accuracy. If the accuracy factor of the geolocation data does not meet the minimum accuracy requirement, then the location verification process fails and further access to the system by the mobile device is denied. In one aspect, location engine  210  uses a third party geolocation API to get the street address of the user and store it into profile for future use. 
         [0060]    In another aspect, location engine  210  determines the nearest movie theater by first arranging two or more nearby theatres by distance from the geolocation of a device (e.g., mobile device  158 ). Location engine  210  then determines each of the theatres&#39; geographical distribution area radius or boundary (the distribution area does not have to be a circle) and checks to see if the geolocation of device  158  falls within any of theatre&#39;s distribution boundary. If, for example, the geolocation of device  158  falls only in the distribution boundary for theatre A, then device  158  is assigned to theatre A. In other words, a geo-fence is established for theatre A and device  158 , which will prevent other theatres from streaming content to device  158 . In one aspect, if device  158  falls within the distribution boundary of two participating theatres, then the closest theatre by distance is assigned to be the partner theatre. 
         [0061]    In one aspect, the radius of the geographical distribution area of a theatre is determined based one or more of the area population density, the number of residential units, spending habits, and the demographics of the population. 
         [0000]    Geolocation Based Delivery with No ISP Relationship 
         [0062]      FIG. 5  illustrates a process  500  for performing registration with session management  305 , which may serve as the consumer facing portal for content including first run movies, in accordance with an aspect of the disclosure. In process  500 , location determination and property type verification is not available through ISP  135 . As such, display device  205  must verify its location and property type using the geolocation information of mobile device  158 , which is also on the same home network (or local area network) as display device  205 . 
         [0063]    Registration process  500  starts at  505  where mobile device  158  sends a registration request, the geolocation information, and its IP address to location engine  210 . In one aspect, location engine  210  may be an independent location verification service such as location services  145 . Alternatively, location engine  210  may be an integrated portion (one of a plurality of web applications or APIs) of portal  115 . Using the geolocation information provided by mobile device  158 , location engine  210  may determine what type of structure/property is located at that particular geolocation. In another aspect, location engine  210  may provide one or more of the services provided by ISP service  135  and location services  145  such as address lookup, property type verification, GPS location services, triangulation location services, and femtocell location services. 
         [0064]    If the type of structure/property is residential, then location engine  210  will allow registration to proceed and send a code to mobile device  158  at  510 . If the type of structure/property is commercial in nature, then registration will be denied. In one aspect, if the type of structure/property is a mixed commercial and residential structure/property, then registration may be allowed depending on the latitude information and the address provided by the consumer. For example, if the latitude information indicates that the mobile device is 40 feet higher than the base elevation for that specific location, then it could indicate that the mobile device is in a condominium structure/property where there are commercial spaces on the first and/or the second floor. At  515 , the registration code received by mobile device  158  may then be manually entered into display device  205 . Here, display device  205  is a connected TV using a geolocation based first run movie app, however because no ISP relationship is present, display device  205  must be registered concurrently with mobile device  158 . At  520 , display device  205  may send the code and its IP address to location engine  210 . If the IP address of display device  205  matches with the IP address of mobile device  158 , then both the mobile and display devices will be registered. If the IP addresses do not match, then registration is denied. It should be noted that mobile device  158  has to be on the same home network with display device  205  in order for registration to be successful. In one aspect, all of the digits of the IP address of display device  205  must match with all of the digits of the IP address of mobile device  158 . In another aspect, only a portion of the IP address of display device  205  must match with a portion of the IP address of mobile device  158 . In other words, a portion of devices  158  and  205  IP addresses may be different (e.g., the very last digit) as long as the portions that are similar indicate an IP address of a single source such as an Internet modem/router. 
         [0065]      FIG. 6  illustrates a process  600  for ordering a first run movie or other content in accordance with an aspect of the disclosure. Process  600  starts at  605  where mobile device  158  sends a request for a list of first run movies to location engine  210 . Along with the listing request, mobile device  158  also sends its location information to location engine  210 . In one aspect, the location information may comprise one or more of an IP address, geolocation data (e.g., GPS data), and a MAC address. 
         [0066]    Once the IP address of mobile device  158  is received, location engine  210  may determine whether the IP address was previously registered. If yes, location engine  210  may retrieve the geographical location associated with the IP address of mobile device  158 . At  610 , location engine  210  forwards the geographical location information and the request for the listing of first run movies (or other content) to session management  305 , which then retrieves the participating theatre for that geographical location. In one aspect, session management  305  sends a request to the participating theatre for an updated list of movies for which virtual seats can be obtained. 
         [0067]    At  615 , session management  305  sends the listing of first run movies to display device  205  and/or mobile device  158 . At  620 , display device  205  purchases a virtual seat for one of the first run movies and the order is sent to session management  305 . In one aspect, after the purchase is confirmed, session management  305  sends an instruction (at  625 ) to distribution engine  310  to stream the purchased movie to display device  205 . At  630 , distribution engine  310  streams the movie to display device  205 . 
         [0068]    In one aspect, process  600  requires both mobile device  158  and display device  205  to be pre-registered using registration process  200  or  500 . In one aspect, steps  605  and  610  may be optional. In this scenario, mobile device  158  may send the request for the listing of first run movies and its location information directly to session management  305 . As previously mentioned, the location information may comprise one or more of an IP address, a MAC address, and the geolocation information of mobile device  158 . Since both mobile device  158  and display device  205  are pre-registered, session management  305  should already have the geographical location and participating theatre associated with the pre-registered IP address. In other words, session management  305  may send a list of first run movies directly to the mobile device in response to the request. As previously mentioned, it should be noted that content other than first run movies may be on the list such as old movies, classics, plays, sporting events, live events (e.g. pop concerts), etc.” 
         [0069]      FIG. 7  illustrates a process  700  for ordering a multimedia content (e.g., first run movie) in accordance with one aspect of the disclosure. In process  700 , mobile device  158  communicates directly with session management  305  to request a list of first run movies and to order a movie or a virtual seat. In this architecture, session management  305  acts as the main portal for mobile device  158  and also for display device  205 . In one aspect, session management  305  is configured to perform registration verification, new device registration, identification of participating theatre or venue near mobile device  158  or display device  205 , obtaining an updated listing of first run movies from participating theatre, sending the listing of first run movies to requesting device, receiving order of a virtual seat, and instructing a movie to be streamed to a particular device. To perform all of these functions, session management  305  is configured to communicate with theatre  125 , location engine  210 , and distribution engine  310  using a communication circuit/engine (not shown). It should be noted that theatre  125  may be a park, a stadium, a stage, a school, a gymnasium, or any structure suitable for hosting an event. 
         [0070]    As shown in  FIG. 7 , mobile device  158  sends a request for a listing of first run movies to session management  305 , which then checks with location engine  210  to determine whether mobile device  158  is already registered at  710 . At  715 , location engine  210  sends back at least one of the geographical location of mobile device  158  and the participating theatre assigned to that particular geographical location. At  720 , session management  305  then sends the listing of movies to mobile device  158  and display device  205 . In one aspect, steps  710  and  715  involving location engine  210  are optional as session management  305  may incorporate all of the functionalities of location engine  210 . In other words, session management  305  may determine the registration status and location of mobile device  158  if it has already been pre-registered using process  500 , for example. 
         [0071]    At  725 , display device  205  purchases a virtual seat of a first run movie by making the purchase request to session management  305 . Once the purchase is confirmed, session management  305  instructs distribution engine  310  to stream the movie to display device  205  at  730 . At  735 , distribution engine  310  streams the movie to display device  205 . In one aspect, distribution engine  310  may comprise CDN  120 , which may comprise servers deployed in various locations. CDN  120  may store encrypted movies provided by studio  130  and may include watermarking features/patterns as specified by session management  305 . In one aspect, session management  305  assigns a unique watermarking pattern to each stream of a first run movie. The watermarking pattern may be assigned and sent to distribution engine  310  at  730 . In one aspect, distribution engine  310  may encode the watermarking pattern in real-time as the movie is being streamed to display device  205 . 
         [0072]    In one aspect, the watermarking pattern may be the IP address or the MAC address of the mobile or display device. The watermarking pattern may be discrete and not noticeable by the human eye. This implementation may enable studios to easily track down any illegal conversion and distribution of movies exhibited on the geolocation based content delivery platform and thereby reducing piracy. 
       Remote Ordering 
       [0073]    In a situation where the account owner is not at home, it is desirable to enable the account holder to nevertheless order movie for people (e.g., children) at home. Accordingly, a process  800  for remotely ordering a first run movie is provided in accordance with an aspect of the disclosure. Process  800  describes a situation where the consumer can obtain, using mobile phone  140 , a virtual seat (order a first run movie) from a participating theatre near their home devices (e.g., devices  152 - 158 ) while away from home. It should be noted that mobile phone  140  may be running a first run movie (FRM) application (not shown) that is configured to communicate with portal  115  or session management  305 . The FRM application residing on mobile phone  140  may include a user interface (UI) for the user to select a pre-registered display device while the user is away from home. Alternatively, the user may register a new remote display device. However, the remote display device must be in a geographical area where ISP service  135  is available. In other words, a new remote display device can be registered, but the ISP or cable/satellite relationship must exist in order for the geolocation and the property type where the remote display device resides can be verified. In one aspect, a new remote display device can be registered without ISP services; however, the remote display device must have its own location services capability. For example, a remote display device such as a tablet with GPS and cellular or 4G/5G capability may be registered. 
         [0074]    As shown in  FIG. 8 , process  800  begins at  805  when mobile device  158  selects a remote display device and concurrently requests a listing of first run movies (or other content) at the participating theatre assigned to the pre-registered remote display device. In response to the request, session management  305  sends the list of first run movies to mobile phone  140 . Session management  305  may also send the list of first run movies/content to the pre-registered display device. At  815 , mobile phone  140  sends an order request of a movie to session management  305 . 
         [0075]    In one aspect, prior to instructing distribution engine  310  to stream the movie to display device  205 , session management  305  may optionally verify (at  820  and  825 ) the IP and MAC addresses of the selected display device (made at step  805 ) to determine if the selected display device is already registered. In one aspect, session management  305  may verify pre-registration and location with location engine  210 . 
         [0076]    In response to the purchase request at  815 , session management  305  instructs distribution engine  310  to stream the first run movie or content (e.g., music, multimedia, play, concert, etc.) to the display device selected at  805 . 
       Multiple Subscriber Accounts 
       [0077]    Certain households will have multiple subscribers. Those subscribers may all live in the same household but some may not. For example, a father and daughter may each have their own accounts. However, both accounts are administered by one owner, namely the father.  FIG. 9  illustrates a process  900  for ordering a first run movie in a multiple subscriber accounts situation in accordance with one aspect of the disclosure. Process  900  starts at  905  where mobile device  158  sends a title request to location engine  210 . Along with the title request, mobile device  158  also sends the location information and the IP address to engine  210 . Location engine  210  may then retrieve one or more display devices and their IP addresses associated with mobile device  158 . Location engine  210  then sends a list of available display devices to mobile device  158  at  910 . 
         [0078]    At  915 , mobile device  158  selects a display device and sends the selection back to location engine  210 , which then forwards the title request and location information of the selected display device to session management  305  at  920 . Upon receiving the location information of the selected display device (e.g., connected TV  152 , game console  154 , and STB  156 ), session management  305  determines the participating theatre assigned to the geographical location of the selected display device. Session management  305  then retrieves the list of first run movies and/or other content being offered by the participating theatre and sends it to the selected display device  205  and mobile device  158  at  925  and  930 , respectively. At  935 , display device  205  sends a purchase request of a movie to session management  305 , which then instructs distribution engine  310  to stream the purchased movie to display device  205  at  940 . At  945 , display device  205  receives the movie stream. 
         [0079]      FIG. 10  illustrates a process  1000  for registering a client device and ordering a first run movie or other content in accordance with one aspect of the disclosure. On a high level, process  1000  describes the logical procedure for registering a new client device using ISP location services. In other words, there exists a relationship between portal  115  and the client device Internet service provider (ISP). The main function of ISP service  135  is to provide the physical/geographical address associated to the IP address of the client device. Using the address, the type of structure/property at that physical location can be ascertained. 
         [0080]    As shown in  FIG. 10 , at  1002  the location information of a client device is received by portal  115 , location engine  210 , or session management  305 . As previously mentioned, portal  115  may comprise of one or more APIs. Location engine  210  and session management  305  may be one of the APIs in portal  115 . At  1004 , the geographic location of the client device is determined using the received location information, which may comprise one or more of an IP address, geolocation data (e.g., GPS data), and the MAC address of the client device. 
         [0081]    At  1006 , the type of property associated with the determined geographical location (e.g., street address) may be verified. In one aspect, once the client device is verified, its IP address and MAC address are stored and flagged as registered. The client device is then made eligible to receive streaming of first run movies. In this way, a client device may only need to be registered once. At  1008 , the content is delivered to the client device based on the result of the verification. In one aspect, the content is only delivered to the client device if the type of property is a residential property. Otherwise, if the type of property is commercial property, then the content is not delivered as the client device would become ineligible to participate in the virtual seat streaming program. It should be noted that content on the geolocation based content delivery platform may also be made available to commercial property, but only with additional information and/or status triggers as previously described. 
         [0082]      FIG. 11  illustrates a process  1100  for purchasing a first run movie or other content in accordance with an aspect of the disclosure. In process  1100 , the location information is received from a client device along with a purchase request for a first run movie at  1102 . In one aspect, the location information is received by session management  305  or location engine  210 . At  1104 , the received location information is verified with the location information used by the same client device when it first registered. In one aspect, the verification is performed by location engine  210 , which may comprise ISP service  135  and location services  145 . In another aspect, the verification may be done by session management  305 . At  1106 , the movie/content is streamed to the client device based on the verification. 
         [0083]    In one aspect, the client device at  1102  may be the same as the client device receiving the stream at  1108 . Alternatively, the client device at  1102  may be mobile device  158  and the client device at  1108  may be connected TV  152 . This involves a situation where the mobile device is used to register and order the movie, but a different display device is selected for viewing. 
         [0084]      FIG. 12  illustrates a process  1200  for registering a client device, for retrieving a list of first run movies (or other content), and for ordering a first run movie for streaming to the client device in accordance with an aspect of the disclosure. At  1202 , a request for a listing of first run movies and the location information of the client device is received by session management  305 . In one aspect, the location information may comprise one or more of an IP address, a MAC address, and geolocation data. 
         [0085]    At  1204 , a list of movies available for virtual seats purchases of a participating theatre located near the location information is sent to the client device. Here, it is assumed that the client device is located on the same home network as the eventual display device. At  1206 , a user selection of a movie and a display device is received. In one aspect, the selected display device is the same device as the client device. For example, the client device may be game console  154  running a FRM application, which means game console  154  can both order and receive (when it selects itself as the display device) a movie stream from the geolocation based content delivery platform. In another aspect, the selected display device is a different device such as connected TV  152  or STB  156 . At  1208 , whether the selected display device is already registered is determined. If yes, an optional verification process is performed at  1210 , which determines whether the IP address of the selected display device is the same IP address used when it first registered. This is to prevent the display device from being registered at a home location and then moved to another ineligible commercial location where the system could be exploited. 
         [0086]    At  1212 , based on the verification, the movie is delivered, streamed, or otherwise made available for download to the selected display device. If at  1208  the answer is no, then both the client device and the display device may be registered at  1214 , which involves verifying the location information of the client device and the selected display device. In one aspect, a portion of the IP addresses of both devices must match and the property type associated with the geographical location of the client device must be non-commercial. In one aspect, the portion of the IP address that has to match is the first 3 digit groups of an IP address. For example, for the IP address 194.169.1.50, the first 3 digit groups are 194, 169, and 1. At  1216 , the movie is delivered/streamed to the selected display device after registration. 
         [0087]      FIG. 13  illustrates a process  1300  for remote ordering in accordance with an aspect of the disclosure. Process  1300  may also be applicable in a multi-subscriber accounts situation. Process  1300  begins at  1302  where a selection of a display device is received from a client device. In response to the display device selection, a listing of first run movies being offered by a participating theatre near the location of the selected display device is sent to the client device at  1304 . At  1306 , an order for a movie is received. At  1308 , the location information of the selected display device is checked with the location information used to register the same selected display device. This is to confirm whether or not they are the same device. At  1310 , the movie ordered is sent to the selected display device based on the results of the confirmation at  1308 . 
         [0088]    It should be noted that each of processes  1000 ,  1100 ,  1200 , and  1300  may be executed by one or more engines/modules described in processes  200  through  900 . For example, at  1302 , the selection may be received by session management  305  or portal  115 . Additionally, at  1304 , the listing of movie may be sent by session management  305  or location engine  210 . At  1308 , the location confirmation may be performed by ISP  135 , location service  145 , location engine  210 , or by session management  305 . 
         [0089]    Additionally, although each of the processes above is described in terms of first run movies, it should be noted that other content such as concerts, plays, sporting events, etc., may be purchased and streamed to virtual seats or client devices located outside of the venue, but within the venue geographical distribution boundary (trade area). 
       Distribution Engine 
       [0090]    Referring to  FIGS. 3, 4, and 6-9 , it should be noted that distribution engine  310  may an API within portal  115  or session management  305 . In one aspect, distribution engine  310  is an API that is configured to communicate with CDN  120  to facilitate the order and delivery of a movie. Distribution engine  310  may also be a part of CDN  120 . In one aspect, distribution engine  310  may comprise CDN  120 , which may comprise servers deployed in various locations. CDN  120  may store encrypted movies provided by studio  130  and may include watermarking features/patterns as specified by session management  305 . 
       Client Side Implementation 
       [0091]      FIG. 14  illustrates a process  1400  for requesting a list of first run movies (or other content) and for ordering the movie/content in accordance with one aspect of the disclosure. At  1402 , a display device is selected using a mobile device such as mobile phone  140  (when away from home) or mobile device  158  (when at home). The list of available display devices may be made available to mobile phone  140  by session management  305 . In one aspect, the list of available display devices is determined by determining which display devices have already been registered and associated with the current mobile device&#39;s MAC address or other means of identification. 
         [0092]    At  1404 , a list of movies available for virtual seats purchase at a participating theatre proximate to the selected display device is received at mobile device  158 . At  1406 , a movie is selected and ordered. At  1408 , in response to the movie selection, the movie is streamed to the selected display device. 
         [0093]    In one aspect, as long as a mobile device such as a phone, a phablet, a tablet, a laptop-tablet hybrid, etc., is associated with a residential account, it can request for a movie listing and purchase a movie on the geolocation based content delivery platform regardless of its location at the time of the purchase. In one aspect, the mobile device may be restricted to a predetermined screen size when it is away from its home location (i.e., the account owner home address). For example, any mobile device with a screen size larger than 8″ will be made ineligible if it is not at its home location. Additionally, the mobile device may be required to run a FRM application where additional restriction may be applied. In one aspect, if the mobile device is away from its home location, the FRM application may disable all casting and/or screen mirroring functionalities (e.g., Chromecast, AirPlay, etc.). In this way, unauthorized group viewing on a personal device may be prevented or at least minimized. 
         [0094]    In one aspect, a mobile device may be allowed to start receiving a movie stream regardless of its location as long as the movie was previously ordered when the mobile device was at its home location. In this way, consumers will be able to enjoy movies on the geolocation based content delivery platform while traveling (e.g., on the plane, at the hotel, etc.). 
         [0095]    Geo-Fencing &amp; Trade Areas Management 
         [0096]    To encourage theatre operators to participate in the geolocation based content delivery platform, each participating theatre will be assigned their own geographic distribution boundary or trade area. Households that fall within a theatre&#39;s trade area may only obtain virtual seats from the participating theatre to which they belong. If a residence falls outside of a theatre&#39;s geographic distribution boundary, then that theatre is geo-blocked. In other words, the theatre is prevented from selling virtual seats of an event (or for a content to residence or remote devices) falling outside of its assigned trade area. This provides the participating theatre/venue operators a guaranteed customer base that they can expect to make money from by selling the virtual seats for content they are offering. 
         [0097]    In one aspect, a theatre/venue may have a trade area with predetermined X mile radius or may be defined by zip-code boundary, neighborhood, school district, square kilometers, or major streets and highways. In another aspect, the X mile radius or X square kilometer trade area has a direct relationship with the population density of the geographic area in question. Thus, for example, in New York City, the X mile radius may be measured in city blocks or feet because of the potentially large population density where the theatre resides. However, in Des Moines, Iowa, a theatre trade area&#39;s radius might be 10 miles for example to have the same population coverage as the theatre in New York City. 
         [0098]    Ideally, there is no overlap of trade areas when defining and assigning trade areas for theatres in an area. However, for a densely populated area with many theatres, the overlap of trade areas between different theatres may be unavoidable. When an overlap exists, complications can arise. For example, if a residence is in an overlap zone created by two adjacent trade areas belonging to two different participating theatres, the issue is then to which theatre is the residence assigned? How to determine whether a content should be made available on the geolocation based content delivery platform? Accordingly, an innovative approach is developed to address how the customer base is shared in various scenarios. 
         [0099]    In one aspect, when the customer location (or client device) is in a non-overlapping trade area, whether a content should be made available is determined according to Table A, as shown below. 
         [0000]    
       
         
               
               
               
               
             
           
               
                 TABLE A 
               
               
                   
               
               
                   
                 Movie Currently  
                 Movie Previously  
                 Movie Never  
               
               
                   
                 Showing 
                 Shown 
                 Shown 
               
               
                 Theater 
                 Movie Offered 
                 Movie Offered 
                 Movie Offered 
               
               
                   
               
             
             
               
                 Partner Exhibitor 
                 Yes 
                 Yes 
                 Yes 
               
               
                 Non-partner  
                 No 
                 Yes 
                 Yes 
               
               
                 Exhibitor 
               
               
                   
               
             
          
         
       
     
         [0100]    In one aspect, when the customer location (or client device) is in an uncovered area (no defined trade area for any theatre), all new movies are generally available on the geolocation based content delivery platform. 
         [0101]    In one aspect, if the geolocation of the remote client device falls within two or more pre-determined trade area boundaries, and one is a participant and the other is not, that household will be assigned to the nearest of the two, and, if the nearest theatre is participating, that theatre will be assigned as the nearest theatre from which that household will be able to obtain virtual seats in order to watch the content from that theatre (e.g. first run movies) in-home. 
         [0102]    In one aspect, if the nearest theatre is a non-participating theatre, then that theatre&#39;s pre-determined X mile radius (e.g. 3 mile) trade area will be geo-fenced and protected from allowing its content to be viewed outside the theatre, (e.g. in-home using the service), within a pre-determined X mile radius trade area surrounding that theater. 
         [0103]    In another aspect, if a household&#39;s proximity is approximately the same distance to two or more theatres located within the same trade areas or located in an overlapping trade area, where one or more theatres are participating and the others are non-participating, if the nearest theatre is the participating theatre, it will be assigned as the nearest theatre from which that household can obtain virtual seats in order to watch content (e.g. first run movies) at home. If the household&#39;s location is nearest a non-participating theatre in the overlapping trade area, then that household will not be able to obtain virtual seats from any participating theatre to watch the selected movie while the non-participating theatre is still showing the same movie. 
         [0104]    In one aspect, when there exists an overlap trade area between two or more trade areas, whether a content should be made available is determined according to process  1500 , as shown in  FIG. 15 . Process  1500  provides a structured way for determining how to share customers and whether a movie/content should be made available on the geolocation based content delivery platform. Process  1500  starts at step  1  by determining and confirming whether a remote seat (e.g., a client device of a consumer) is located within the overlapped portion of two or more trade areas. In step  2 , the nearest participating theatre is identified. Step  3  provides a table that guides the rules for movie offering. If step  3  still has not provided an answer, then step  4  identifies the next nearest theatre. Once all of the steps ( 1  through  7  (C)) are performed, the question on whether a movie should be offered should be resolved. 
         [0105]      FIG. 16  illustrates an exemplary process  1600  for purchasing a remote seat and streaming a content thereto. At  1602 , the geographic distribution boundary or trade area is defined. Next, the geolocation of the remote seat or client device at the remote seat/location is determined. At  1606 , a determination is made on whether the remote seat is inside a geo-fence of a participating theatre (or inside a geo-blocked area of another theatre). This may be done by location engine  210 , session management  305 , or in combination of both. In one aspect, a determination is also made on whether the remote seat is part of an overlapping trade area. If there is an overlap, the issues of whether a film/content should be offered to the remote seat and how the revenue is shared is guided by process  1500 . If there is no overlap, then table A is controlling. 
         [0106]    Loyalty Based Content Distribution 
         [0107]    For certain very loyal customers that are part of a theatre loyalty program, the typical movie offer rules do not apply.  FIG. 17  illustrates an exemplary process  1700  for handling loyal customers. At  1702 , a determination is made on whether the customer is part of a loyalty member program. At  1704 , the geo-fencing rule governing typical customers is ignored for loyal customers. At  1706 , the nearest loyalty program partner theatre is located. Next, the distance between the loyalty partner theatre and the geolocation of the remote seat is determined at  1708 . If the distance is less than N miles at  1710 , then the rules governing content offer and revenue sharing are controlled by plan A, which allows the movie to be purchased and the purchase credit to be assigned to the partner theatre. 
         [0108]    If the distance at  1710  is larger than N miles, then the loyal customer may still purchase a movie but none of the theatres will get credit. 
         [0109]    In one aspect, communication/consumption engine  1810  is configured to communicate with the remote seats or with client devices at the remote seat. Consumption engine  1810  may communicate with outside services such as IP service  135  and location services  145 . Additionally, consumption engine  1810  may be configured to manage all communications between one or more engines  210 ,  305 ,  310 ,  350 ,  1820 ,  1822 ,  1824 ,  1826 ,  1830 , and  1840 . In another aspect, consumption engine  1810  may be part of session management  305 . Although, as shown in  FIG. 18 , IP engine  135  and location services  145  may exist independently or one or more of these engines may be integrated with the API  1820 . 
       Exemplary Software Module/Engine and Hardware Implementation 
       [0110]      FIG. 18  illustrates an exemplary processing circuit  1500  configured to implement various aspects of the present disclosure. Processing circuit  1500  includes location engine/module  210 , session management  305 , distribution engine  310 , royalty engine  350 , communication engine  1810 , APIs  1820 , and watermarking engine  1830 . APIs  1520  comprises ISP service  1822 , theatre locator  1824 , and location services  1826 . It should be noted that one or more modules/engines in processing circuit  1800  may reside on a memory (e.g., RAM, ROM, external memory, etc.) that is accessible by processor  500 . Alternatively, one or more engines  210 ,  305 ,  310 ,  350 ,  1810 ,  1820 ,  1822 ,  1824 ,  1826 ,  1830 , and  1840  may reside on an internal memory of processor  1800 . 
         [0111]    In one aspect, communication engine  1810  is configured to communicate with the remote seats or with client devices at the remote seat. Communication engine  1810  may communicate with outside services such as IP service  135  and location services  145 . Additionally, communication engine  1810  may be configured to manage all communications between one or more engines  210 ,  305 ,  310 ,  350 ,  1820 ,  1822 ,  1824 ,  1826 ,  1830 , and  1840 . In another aspect, consumption engine  1810  may be part of session management  305 . Although, as shown in  FIG. 18 , IP engine  135  and location services  145  may exist independently or one or more of these engines may be integrated with the API  1820 . 
         [0112]      FIG. 19  illustrates an overall system or apparatus  1900  in which processes  200  through  1400  may be implemented. In accordance with various aspects of the disclosure, an element, or any portion of an element, or any combination of elements may be implemented with a processing system  1914  that includes one or more processing circuits  1904 . Processing circuits  1904  may include micro-processing circuits, microcontrollers, digital signal processing circuits (DSPs), field programmable gate arrays (FPGAs), programmable logic devices (PLDs), state machines, gated logic, discrete hardware circuits, and other suitable hardware configured to perform the various functionality described throughout this disclosure. That is, the processing circuit  1904  may be used to implement any one or more of the processes described above and illustrated in  FIGS. 2 through 14 . 
         [0113]    In the example of  FIG. 19 , the processing system  1914  may be implemented with a bus architecture, represented generally by the bus  1902 . The bus  1902  may include any number of interconnecting buses and bridges depending on the specific application of the processing system  1914  and the overall design constraints. The bus  1902  links various circuits including one or more processing circuits (represented generally by the processing circuit  1904 ), the storage device  1905 , and a machine-readable, processor-readable, processing circuit-readable or computer-readable media (represented generally by a non-transitory machine-readable medium  1906 .) The bus  1902  may also link various other circuits such as timing sources, peripherals, voltage regulators, and power management circuits, which are well known in the art, and therefore, will not be described any further. The bus interface  1908  provides an interface between bus  1902  and a transceiver  1910 . The transceiver  1910  provides a means for communicating with various other apparatus over a transmission medium. Depending upon the nature of the apparatus, a user interface  1912  (e.g., keypad, display, speaker, microphone, touchscreen, motion sensor) may also be provided. 
         [0114]    The processing circuit  1904  is responsible for managing the bus  1902  and for general processing, including the execution of software module/engine stored on the machine-readable medium  1906 . The software module/engine, when executed by processing circuit  1904 , causes processing system  1914  to perform the various functions described herein for any particular apparatus. Machine-readable medium  1906  may also be used for storing data that is manipulated by processing circuit  1904  when executing software module/engine. 
         [0115]    One or more processing circuits  1904  in the processing system may execute software module/engine or software module/engine components. Software module/engine shall be construed broadly to mean instructions, instruction sets, code, code segments, program code, programs, subprograms, software module/engines/engines, applications, software module/engine applications, software module/engine packages, routines, subroutines, objects, executables, threads of execution, procedures, functions, etc., whether referred to as software module/engine, firmware, middleware, microcode, hardware description language, or otherwise. A processing circuit may perform the tasks. A code segment may represent a procedure, a function, a subprogram, a program, a routine, a subroutine, an engine, a module, a software module/engine package, a class, or any combination of instructions, data structures, or program statements. A code segment may be coupled to another code segment or a hardware circuit by passing and/or receiving information, data, arguments, parameters, or memory or storage content. Information, arguments, parameters, data, etc. may be passed, forwarded, or transmitted via any suitable means including memory sharing, message passing, token passing, network transmission, etc. 
         [0116]    The software module/engine may reside on machine-readable medium  1906 . The machine-readable medium  1906  may be a non-transitory machine-readable medium. A non-transitory processing circuit-readable, machine-readable or computer-readable medium includes, by way of example, a magnetic storage device (e.g., hard disk, solid-state drive), an optical disk (e.g., a compact disc (CD) or a digital versatile disc (DVD)), a smart card, a flash memory device (e.g., a card, a stick, or a key drive), RAM, ROM, a programmable ROM (PROM), an erasable PROM (EPROM), an electrically erasable PROM (EEPROM), a register, a removable disk, a hard disk, a CD-ROM and any other suitable medium for storing software module/engine and/or instructions that may be accessed and read by a machine or computer. The terms “machine-readable medium”, “computer-readable medium”, “processing circuit-readable medium” and/or “processor-readable medium” may include, but are not limited to, non-transitory media such as portable or fixed storage devices, optical storage devices, and various other media capable of storing, containing or carrying instruction(s) and/or data. Thus, the various methods described herein may be fully or partially implemented by instructions and/or data that may be stored in a “machine-readable medium,” “computer-readable medium,” “processing circuit-readable medium” and/or “processor-readable medium” and executed by one or more processing circuits, machines and/or devices. The machine-readable medium may also include, by way of example, a carrier wave, a transmission line, and any other suitable medium for transmitting software module/engine and/or instructions that may be accessed and read by a computer. 
         [0117]    The machine-readable medium  1906  may reside in the processing system  1914 , external to the processing system  1914 , or distributed across multiple entities including the processing system  1914 . The machine-readable medium  1906  may be embodied in a computer program product. By way of example, a computer program product may include a machine-readable medium in packaging materials. Those skilled in the art will recognize how best to implement the described functionality presented throughout this disclosure depending on the particular application and the overall design constraints imposed on the overall system. 
         [0118]    One or more of the components, steps, features, and/or functions illustrated in the figures may be rearranged and/or combined into a single component, block, feature or function or embodied in several components, steps, or functions. Additional elements, components, steps, and/or functions may also be added without departing from the disclosure. The apparatus, devices, and/or components illustrated in the Figures may be configured to perform one or more of the methods, features, or steps described in the Figures. The algorithms described herein may also be efficiently implemented in software module/engine and/or embedded in hardware. 
         [0119]    Note that the aspects of the present disclosure may be described herein as a process that is depicted as a flowchart, a flow diagram, a structure diagram, or a block diagram. Although a flowchart may describe the operations as a sequential process, many of the operations can be performed in parallel or concurrently. In addition, the order of the operations may be re-arranged. A process is terminated when its operations are completed. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, its termination corresponds to a return of the function to the calling function or the main function. 
         [0120]    Those of skill in the art would further appreciate that the various illustrative logical blocks, modules, circuits, engines, and algorithm steps described in connection with the aspects disclosed herein may be implemented as electronic hardware, computer software module/engine, or combinations of both. To clearly illustrate this interchangeability of hardware and software module/engine, various illustrative components, blocks, modules, engines, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software module/engine depends upon the particular application and design constraints imposed on the overall system. 
         [0121]    The methods or algorithms described in connection with the examples disclosed herein may be embodied directly in hardware, in a software module/engine/engine executable by a processor, or in a combination of both, in the form of processing unit, programming instructions, or other directions, and may be contained in a single device or distributed across multiple devices. A software module/engine may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. A storage medium may be coupled to the processor such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. 
         [0122]    While certain exemplary embodiments have been described and shown in the accompanying drawings, it is to be understood that such embodiments are merely illustrative of and not restrictive on the broad invention, and that this invention should not be limited to the specific constructions and arrangements shown and described, since various other modifications are possible. Those skilled in the art will appreciate that various adaptations and modifications of the just described preferred embodiment can be configured without departing from the scope and spirit of the invention. Therefore, it is to be understood that, within the scope of the appended claims, the invention may be practiced other than as specifically described herein.