Patent Document

BACKGROUND OF THE INVENTION 
       [0001]    Outdoor advertising, sometimes referred to as out-of-home advertising, is focused on marketing to consumers when they are ‘on the go’ in public places, in transit, waiting (such as in a medical office) and/or in specific commercial locations (such as in a retail venue). One example of this are electronic billboards located in retail outlets, typically comprising display devices (e.g., flat-panel display devices, cathode-ray tube display devices, etc.) operated by one or more computers. The computers controlling the display devices cause media content to be presented on the display devices, wherein media content may comprise readable text, still or moving images, or a combination thereof. For example, media content may be in the form of a binary file, storable within the memory of the controlling computer, wherein images and text are encoded with presentation information directing how, when, and in what order the images and text are presented. Examples of such media content are encoded in formats well known in the art, including but not limited to Microsoft® PowerPoint®, AVI, MPEG, Quicktime®, and equivalents. Media content may be stored as a file on a storage medium of the controlling computer, or may be streamed in real-time via a communications network (e.g., a Local Area Network (LAN) or the Internet). 
         [0002]    The choice of what particular media content is presented on the display device is managed by Content Management Software (CMS) operating on the controlling computer, or alternately a server computer commonly connected to one or more display computers by means of a communications network so as to direct content on a plurality of display devices from a central point. 
         [0003]    As the popularity of these out-of-home advertising systems has grown, so has the number of different CMS products to operate them. For example, one CMS system would typically be installed at a site of a retail organization (e.g., a supermarket) for the display of media content of interest to people patronizing the site. The maintenance and operation of the CMS would be provided by either the local or general management of the site. Accordingly, the media content provided on an electronic billboard system on the site will be limited to information about that particular store unless the management directs time and energy to collect additional advertising content from third parties. 
         [0004]    Third-party advertising content can potentially generate substantial revenue from sales of advertising time on the organization&#39;s advertising system, such as to offset the costs of installing and maintaining the system. Third-party advertising content may also make the display devices more attractive to viewers by providing a greater variety of different and up-to-date media content than the local or general management can provide. However, managing media content created by third-parties, including soliciting third-party content, scheduling updating of third-part content, and addressing compatibility issues with third-party content with the CMS in place, is time-consuming and may involve skills outside the skill-set of the local or regional management. 
         [0005]    Thus, there is a need for the capability to provide and manage third-party advertising for out-of-home advertising systems such as in-house electronic billboard systems by means of a remotely managed service. There is also a need for a third-party advertising system that can provide and manage third-party advertising to a plurality of different out-of-home advertising systems deployed at a plurality of different sites. However, the different out-of-home advertising systems and corresponding CMS products operating among different retail organizations and other out-of-home installations vary widely and are typically neither compatible nor interoperable with each other. For example, some CMS applications are commercial products, while others may be custom-designed products developed specially for a particular retail organization, such as by an in-house development team. 
         [0006]    Further, out-of-home advertising systems and the CMS products that operate them are typically not adapted to have more than one means for control. Hence, to incorporate third-party content, the in-house management of the electronic billboard system would either have to manage the acquisition, presentation, and rotation of the third-party content themselves, or else would have to provide some form of direct control over their CMS to an independent, off-site manager, which for security, reliability, and other reasons, an in-house manager would be reasonably reluctant to do. 
         [0007]    Thus, a need exists for a system and a method that can provide and manage third-party advertising on a remote out-of-home advertising system such as an in-house electronic billboard system via a remotely-controlled system that would be effective regardless of the particular CMS application in operation at a deployment site, such that third-party content can be provided and managed on the out-of-home advertising system remotely, without requiring the direct intervention of in-house management or the modification of the operative CMS system already in place. 
       SUMMARY OF THE INVENTION 
       [0008]    The present invention was developed in consideration of the above problems, and various embodiments of the invention provide a capability to resolve or ameliorate one or more of said problems. 
         [0009]    According to a first aspect of the present invention, there is provided a system comprising a display device and a display controller, the display controller being a computer (hereinafter, a computer is comprised of at least a CPU connected to a memory and a storage device, the storage device having recorded thereon an operating system adapted to control the CPU) having stored thereon a main presentation application and a priority presentation application, the operating system of the computer configured to enable the main presentation application and the priority presentation application to operate concurrently on the CPU, the main presentation application configured to cause the display device, by way of the operating system, to present a main display content as a main presentation, and the priority presentation application configured to cause the display device, by way of the operating system, to present a priority display content as a priority presentation, and to exclude the main presentation of the main presentation application from the display device for an entire duration of the priority presentation, and further configured to cause, through the operating system, a resumption of the main presentation on the display device upon completion of the priority presentation, wherein the main and priority display content each comprise any of still or motion video information. 
         [0010]    According to a second aspect of the present invention, there is provided a software product for presenting media content on a display controlled by a computer, recorded on a computer readable medium and configured to i) cause the computer to exclude a main presentation program running on the computer to prevent a main presentation of the main presentation program from being presented on the display, and also causing the computer to present a priority presentation on the display for an entire duration of the priority presentation, and ii) upon completion of the entire duration of the priority presentation, cause the computer to restore the main presentation program to resume presenting the main presentation on the display, wherein the main and priority presentations each comprise any of still or motion video information. 
         [0011]    According to a third aspect of the present invention, there is provided a method for presenting priority media content in a public space, comprising i) providing a software product, recordable on a computer readable medium, for presenting media content on a display controlled by a display controller, and ii) providing a server (that is, a computer comprised of a CPU, a memory, a storage device, and a network interface for communicating with other computers, and configured to make computer-readable data available for retrieval by said other computers), the storage device of the server having software recorded thereon configured to cause the server to store priority media content readable by the software product operating on a display controller, wherein the software product is configured to cause the display controller to i) to exclude a main presentation program running on the display controller to prevent the display controller from presenting a main presentation on the display, and also causing the display controller to present a priority presentation on the display for an entire duration of the priority presentation, and ii) upon completion of the entire duration of the priority presentation, cause the display controller to restore the main presentation program thereby causing the display controller to present the main presentation on the display, wherein the main and priority presentations each comprise any of still or motion video information, and wherein the priority presentation is stored as the priority media content on the server and retrievable from the server by the display controller. The server may be available for direct communication with the display controller via an interconnected network (e.g., the Internet), or be in indirect communication with the display controller, such as by way of portable data media (e.g., floppy disks, portable Flash memory, cd-ROM, etc.) transferred between the server and the display controller by hand, or by way of an indirect network connection (e.g., a connection to a firewall, bridge, or gateway device in communications with a network connected to the server). 
         [0012]    According to a fourth aspect of the present invention, there is provided an apparatus for presenting priority media content comprising at least one server as described above in communication via an interconnected network (e.g., the Internet) with at least one display controller and with at least one sponsor computer operated by a sponsor of priority media content to be displayed on the at least one display controller, the server being configured to address a software product stored in the at least one display controller, for presenting media content on at least one display device controlled by the at least one display controller, and the server being further configured to control the software product so as to cause the at least one display controller to display the priority presentation on the at least one display device and to cease displaying a main presentation on the at least one display device during the priority presentation. 
         [0013]    According to a fifth aspect of the present invention, there is provided a system and method for exchanging, managing, distributing, and presenting media content between content providers and display devices, wherein a server computer receives media content from content providers (e.g., advertisers) and arranges for distribution of the media content to display controllers in communication with the server based in part on parameters provided by the content provider. The server may provide an interactive user interface for prompting and retrieving information from the content provider, as well as providing relevant information to the content provider including availability of time slots for display on display controllers available to the server. The interactive user interface may also provide a means for carrying out transactions with the content providers in exchange for storing, scheduling, and displaying media content on one of more display devices, as well as providing feedback to the content provider including indications that a media content has been played on one or more display devices. 
         [0014]    These and other embodiments and advantages of the present invention may become apparent from the following detailed description, taken in conjunction with the accompanying drawings, illustrating by way of example the principles of the invention. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0015]      FIG. 1  illustrates an exemplary arrangement of an electronic billboard system and a third-party content server according to the invention. 
           [0016]      FIG. 2  illustrates another exemplary arrangement of an electronic billboard system and a third-party content server according to the invention. 
           [0017]      FIG. 3  illustrates yet another exemplary arrangement of an electronic billboard system and a third-party content server according to the invention. 
           [0018]      FIG. 4  illustrates an exemplary display screen whereupon in-house content is displayed, including text and graphics. 
           [0019]      FIG. 5  illustrates an exemplary display screen where the inventive application excludes the in-house content from being displayed over a portion of the display screen, and a priority content is displayed in that portion. 
           [0020]      FIG. 6  illustrates an exemplary display screen where the inventive application excludes the in-house content from being displayed over an entirety of the display device, and a priority content including text and graphics is displayed in that entirety. 
           [0021]      FIG. 7  is a flow chart schematically illustrating the essential steps of the invention operating on a client display controller. 
           [0022]      FIG. 8  diagrammatically illustrates an organization of the operating system, the main presentation application, and the priority presentation application operating in the CPU and the memory of the display controller. 
           [0023]      FIG. 9  is a flow-chart detailing the operation of the step wherein the priority presentation application excludes the main presentation application from the display device of the display controller. 
           [0024]      FIG. 10  is a flow-chart detailing the operation of the step wherein the priority presentation application restores the main presentation application to the display device of the display controller. 
       
    
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS 
       [0025]      FIG. 1  schematically illustrates an elementary arrangement in accordance with the invention including a server  10  for storing priority media content readable by the priority presentation software application of the invention. The server  10  may comprise a single server device, a cluster of interoperating or redundant load-balancing server devices, or the equivalent as known in the art. The priority media content includes one or more priority presentations, storable as binary information (e.g., one or more files) on a computer-readable medium in a manner known to those of skill in the art. A priority presentation is a binary data presentable as a combination of still or moving text and/or graphics operable for presentation on a multi-media device for a predetermined period of time. Examples of binary media content are known in the art (e.g., Macromedia Flash®, Microsoft® PowerPoint®, Apple® Quicktime®, etc.). 
         [0026]    In an embodiment of the invention, the server  10  is in communication with client computers  5 , through which content providers may retrieve data from the server  10  representing availability of display devices  50  for display of media content, and through which content providers may transmit media content to the server  10  for storage and distribution to display controllers  60 . 
         [0027]    A display controller  60  is connected to a display device  50 , which may be deployed in a public space for viewing. The server  10  and the display controller  60  may be any computing device comprising a storage device (e.g., RAM, disk drive, portable Flash memory, cd-ROM, etc.) and a central processing unit (“CPU”). At least the display controller  60  would have running thereon an operating system configured to execute more than one process at a time (a multi-tasking operating system, e.g., Microsoft® Windows® XP Professional) and would also comprise interfacing hardware for connecting to and operating a display device  50 . The display controller  60  may also comprise interfacing hardware for connecting to and operating a speaker or audio device for producing sound. One or more speakers may be integrated as part of the display device or be deployed separately. The display device  50  may be any of a cathode-ray tube (“CRT”) display, a liquid crystal display (“LCD”) or plasma flat-panel display, or an equivalent device for presenting computer-generated visual images. 
         [0028]    In an embodiment, the display controller  60  and display device  50  may further comprise feedback devices configured to take measure of the area surrounding the display device and also the operative status of the display controller  50 . These devices may include, but are not limited to, computer self-diagnostic devices, an infrared motion detector, a laser motion detector, a still or motion-picture camera, a door sensor or floor-based traffic sensor, and an RFID detector. These devices are configured, at least, to determine whether potential viewers are nearby the display device  50  before, during, or after a presentation of media content. Devices may also be included with either of the display device  50  of the display controller  60  to determine environmental information of the surrounding area, including (but not limited to) temperature, humidity detectors, smoke, radiation, or other environmental conditions or hazards. 
         [0029]    The priority presentation software (“PPS”) application of the invention is loaded on a storage device of a display controller  60 . Content Management Software as described above (hereinafter referred to as a main presentation software or “MPS” application) is also loaded on a storage device of the display controller  60 . Priority media content readable by the PPS application is provided from the server  10  to the display controller  60  by any effective data transmission means  12  (e.g., floppy disk, cd-ROM, flash disk, or equivalent). The server  10  may also provide scheduling information for instructing the PPS application when and under what conditions the any part of the priority media content should be displayed on the display device  50  as a priority presentation. 
         [0030]      FIG. 2  schematically illustrates an exemplary arrangement wherein the server  10  is connected by way of a wide-area network  20  (e.g., the Internet) to a network router  30 . The network router  30  connects the server  10 , via a local area network  34  (“LAN”) which may be cabled or wireless, to a plurality of display controllers  60 . In the example illustrated in  FIG. 2 , each display controller  60  is connected to two display devices  50 . A display controller may be connected to any number of display devices  50  as supported by the display interfacing hardware constituted therein. 
         [0031]    In this embodiment, the display devices  50  may be provided in a public area such as a retail store. The management of the public area would provide administrative services for the display devices, the display controllers  60 , and the LAN that connects them. Also in this example, the LAN is connected to the Internet  20  via a router  30 . The management of the public area also operates its own in-house server  40  on the LAN to perform various computer-related functions, such including support functions for the display controllers  60  in communication with the in-house server  40  as generally known in the art. 
         [0032]    In another embodiment, as illustrated in  FIG. 3 , communication between the server  10  and the display controllers  60  takes place through an intermediate computer, here shown as the in-house server  40 . In this embodiment, the display controllers are in communication with the in-house server  40  via a private LAN  42  which may be cabled or wireless. The in-house server is connected to both the private LAN  42  and the LAN  34  in connection with the wide-area network  20  via the network router  30 . In this embodiment, the in-house server  40  is provided with a sync server application configured to cause the in-house server  40  to operate as a proxy or sync server between the server  10  and the display controllers  60 , such that the display controllers  60  are not in direct communication with either the of the wide-area network  20  or the server  10 . By isolating the display controllers  60  from a wide-area network the wide-area network  20 , the display controllers are more secure from unauthorized control (e.g., from unauthorized communications from the Internet). 
         [0033]    As indicated above, one or more display controllers  60  operate one or more display devices  50 . The operation is normally performed by Content Management Software or main presentation software application maintained by the management of the public area. The main presentation software application, e.g., Content Management Software (“CMS”), may be centrally administered by the in-house server  40 . 
         [0034]    The PPS application of the invention is loaded and executed to run at the same time as the MPS application as provided by the operating system of the display controller, as schematically illustrated in  FIG. 8 . Those skilled in the art will understand that these two software applications are both maintained in the memory of the display controller and concurrently managed by the operating system. 
         [0035]    The flow chart in  FIG. 7  diagramatically illustrates the essential operation of the inventive PPS application. The MPS application and the PPS program are initialized (steps  200 ,  210 ) on the display controller  60 . Those skilled in the art understand that these initialization steps need not necessarily occur in this order, so long as they both are to occur. 
         [0036]    Once the MPS application is initialized and begins operation, the main presentation is presented to the display device  50  (step  230 ). The main presentation may appear as a combination of still or moving text and graphics  52  as in  FIG. 2 . Once the PPS application is initialized and begins operation, it enters a wait state (step  220 ) wherein it awaits a trigger. The trigger may be any of (but not limited to) a time interval, a time of day, a signal provided over the network connected to the display controller  60 , a signal provided by a user interface device (e.g., a keyboard, mouse, touchpad), any of the feedback devices described above, or equivalent. 
         [0037]    Upon the detection of the trigger (step  240 ), the PPS application exits the wait state and executes subroutines stored on the storage medium of the display controller  60  to exclude the MPS application from presenting its presentation content to the display device  50  (step  250 ). Those of skill in the art will understand that the MPS application is prevented from making any changes to the images on the display device  50 , and the PPS application executes subroutines stored on the storage medium to establish exclusive control over the display device  50 . 
         [0038]    Once control over the display device  50  is established, the PPS application begins presenting the priority presentation on the display device  50  (step  270 ). The priority presentation may appear as a combination of still or moving text and graphics  54  as in  FIG. 6 , wherein the priority presentation is presented over an entirety of the display device  50 . Alternatively,  FIG. 5  illustrates the priority presentation presented over only a portion of the display device  50 , where other portions of the main presentation remain visible outside a presentation area established exclusively for the priority presentation. 
         [0039]    Exclusive control over the display device  50  is maintained until the priority presentation is complete (step  280 ), whereupon the PPS application executes subroutines stored on the storage device of the display controller  60  to relinquish the exclusive control over the display device  50  and re-enable control of the MPS application over the display device  50  (step  290 ). The PPS application then returns to the wait state and awaits the next trigger. In an embodiment, the display controller  60  includes subroutines to record, on the storage device of the display controller  60 , proof-of-play information upon completion of each priority presentation. In this embodiment, the PPS application further includes routines to store a proof-of-play record, including the time and date, upon the completion of any priority presentation. These proof-of-play records provide proof that an entirety of the priority presentation was presented. 
         [0040]    In an embodiment, trigger information may be embedded in a priority media content, or provided separately in the scheduling information provided by the server  10 . Trigger information is usually tied to a particular priority presentation such that under the predetermined conditions, the particular priority presentation will be presented. As indicated above, the predetermined conditions may include (but is not limited to) a time of day, a frequency within a time period, a signal from one or more feedback devices, an signal from the network connected to the display controller, or a combination of any or all of the preceding. 
         [0041]    In a further embodiment, the trigger information is provided within a standard file type (JPEG, BMP, EXE, http, DOC, txt, etc.) as an override trigger file (OTF). In this embodiment, the OTF is inserted into a playlist of MPS application as a scheduled presentation/content. When the OTF event occurs, the PPS application receives a trigger to present one or more priority presentations. This trigger event consists of a signal that begins when OTF is initiated and continues as long as the OTF is configured to play within the MPS application. The PPS application detects the signal from the OTF and overrides the MPS application for the duration of the OTF (i.e., the MPS application “plays” the OTF, the PPS application prevents it from being displayed on the display device  50 ) until the OTF completes and the trigger stops. The PPS application then returns control of the display device  50  back to the MPS application. By this method, the presentation of media between the MPS application and the PPS application is coordinated, thus providing that important content of the MPS application is not overridden by the PPS application. 
         [0042]    In another embodiment, the proof-of-play records are transmitted over the network  34 ,  20  to the server  10  on a periodic basis. The proof-of-play records may be transmitted as a file or a stream, using a protocol known to those skilled in the art (e.g., FTP, SSH, SCP, HTTP, HTTPS, etc.). In the arrangement illustrated in  FIG. 2 , the PPS application is configured to establish a connection with the server  10  and attempt to authenticate with the server  10  in order to complete the connection. Upon a successful authentication, the PPS application causes the display controller  60  to transmit the proof-of-play records, and the server  10  stores the proof-of-play records along with the authentication information to provide at least statistical information with respect to the distribution and play of any particular priority presentation among the display devices  50 . 
         [0043]    In another embodiment, the PPS application may also transmit status information to the server  10  about the operating status of the display controller  60  (e.g., system load, system up-time, available storage space and memory, and/or errors detected and recorded). 
         [0044]    In yet another embodiment, arranged as in  FIG. 2 , a subroutine of the display controller  60  contacts the server  10  over the network  34 ,  20  on a periodic basis to retrieve updated priority media content and scheduling information. The priority media content may be transmitted as a file or a stream, using a protocol known to those skilled in the art (e.g., FTP, SSH, SCP, HTTP, HTTPS, etc.). The PPS application is configured to establish a connection with the server  10  and attempt to authenticate with the server  10  in order to complete the connection. By requiring the PPS application to contact the server  10  and not the other way around, the PPS application is capable of communicating via a firewall (operating, for example, in the network router  30 ) without requiring special configuration. 
         [0045]    Connection and authentication may be established by any method known by those of skill in the art, wherein the PPS Application includes subroutines and data as required to successfully complete authentication (e.g., a unique identification, password, and/or a public encryption key, as known in the art). Upon a successful authentication, the server  10  transmits the priority media content, containing one or more priority presentations, to the display controller  60  and the PPS application causes the display controller  60  to store the priority media content on its storage device. The server  10  also transmits scheduling information which the display controller  60  stores on its storage device to be read by the PPS application to control when and/or how often a priority presentation of the priority media content is displayed on the display device  50 . 
         [0046]    In the same manner, the PPS application may be configured to contact the server  10  and retrieve software updates intended to improve the operation of the PPS application, the updates being in the form of a data transmission as known in the art. 
         [0047]    The PPS application may engage in communication with the server  10  regardless of whether the PPS application is also (i.e., simultaneously) presenting a priority presentation on the display device  50 . 
         [0048]    In yet another embodiment, arranged as in  FIG. 3 , the transmission of the proof-of-play records, the status information, and updated priority media content and scheduling information is retrieved indirectly from the server  10  via the in-house server  40 . In this embodiment, the in-house server  40  is configured to include a sync server application for enabling communication between the server  10  and the display controllers  60 . 
         [0049]    The sync server application on the in-house server  40  is configured, either manually or automatically, to authenticate with the server  10  as described above and retrieve the updated priority media content and scheduling information over the wide-area network  20 . The sync server application may store (e.g., cache) the updated priority media content and scheduling information on the storage device of the in-house server  40  for later transmission to the display controllers  60 , or alternately immediately transmit the updated priority media content and scheduling information to one or more display controllers  60  connected on the private LAN  42 . The PPS applications running on the display controllers  60  configured either to receive the transmissions from the in-house server  40  whenever they are provided and/or retrieve the updated priority media content and scheduling information from the sync server  40  on a periodic basis. 
         [0050]    The sync server application is also configured to receive transmissions of the proof-of-play records and status information from the display controllers  60 , and configured authenticate with the server  10  and relay the proof-of-play records and status information to the server  10 . 
         [0051]    In the same manner, the sync server application may be configured to contact the server  10  and retrieve software updates intended to improve the operation of the sync server application, the updates being in the form of a data transmission as known in the art. 
         [0052]    In a yet another embodiment as arranged in  FIG. 3 , the sync server application is also configured to receive configuration information by way of a user-interface for viewing performance statistics of the PPS application and controlling operating parameters of the PPS application operating on one or more display controllers  60 . For example, the performance statistics that may be compiled and displayed to a user of the sync server application may include, but are not limited to, the proof-of-play records applicable to the display controllers  60  under the control of the sync server. The user-interface may be provided via a display device connected to the in-house server  40  or a network-based interface such as a software as a service (“SaaS”) or web-based application operating over the network in a web browser like Internet Explorer®, Firefox®, or equivalent. 
         [0053]    In this embodiment, the PPS application is configured to receive operating signals from the sync server for control of operating parameters of the PPS application by way of the private LAN  42 . The operating parameters include, but are not limited to, and disabling the PPS application from excluding the MPS application and presenting content and scheduling when the PPS application may exclude the MPS application and present content in accordance with a time of day or some other event. A user-interface may also be provided to the user of the sync server application to cause the sync server application to immediately send a signal to start, stop, or re-start operation of the PPS application on any or all of the display controllers  60  under the control of the sync server. 
         [0054]    In another embodiment, the user-interface may be further provided with tools for the creation and editing of media content for display on display devices  50 . The tools may provide pre-configured templates and editing tools, as known in the art, for composing presentations of text and graphics (both still and animated) for presentation on the display devices  50  as priority media content. The tools may further include facilities to integrate with external news and information feeds (e.g., Internet-based news feeds, RSS, etc.), facilities to receive and incorporate media files of common formats (MPEG, WMV, JPEG, Flash®, etc.), and tools for arranging portions of the presentation on one or more different display portions of the display device  50 . 
         [0055]    In another embodiment, the sync server application is configured to provide a user-interface for previewing priority content such as that retrieved from the server  10 , and further providing a user-interface to enable or disable any portion of the priority content from being displayed by any or all of the display controllers  60  under the control of the sync server. 
         [0056]    In yet another embodiment, the sync server application may be configured to receive an emergency signal, for example from a source on the LAN  34  or from one or more of the display controllers  60  on the private LAN  42 , configured to cause either of the PPS application or the MPS application to display an emergency program content. Where the emergency signal is configured to operate with the MPS, then the sync server application, which also receives the emergency signal, may be configured to immediately instruct the PPS applications of all the display controllers  60  under the control of the sync server to terminate the display of any priority content and restore control of the respective display devices  50  to the respective MPS applications so that an emergency content may be promptly presented. Where the emergency signal is configured to operate with the PPS, then the sync server application may be configured to immediately cause the PPS applications of all the display controllers  60  under the control of the sync server to exclude the respective MPS applications and halt and priority content in progress so that an emergency content may be promptly presented. 
         [0057]    All of the features provided above with respect to the sync server application may also be integrated into the PPS application to provide a user-interface and control over a particular display controller  60 . 
         [0058]    In another embodiment, the display controller  60  further includes an audio controller (e.g., an audio interface, sound card, or equivalent) and an audio output device (e.g., a speaker) the main and priority presentation each further include audio information, such as a voice-over or background music to accompany the visual information presented as the main and priority presentation. 
         [0059]    When the PPS application exits the wait state and the MPS application is excluded from presenting its presentation content to the display device  50 , sub-routines stored on the storage device of the display controller  60  cause the display controller  60  to also exclude the MPS application from causing the audio controller from presenting an audio portion of the MPS application, and further to establish exclusive control of the audio controller for an audio portion of the priority presentation, thereby allowing audio only from the priority presentation to be broadcast from the audio output device for the duration of the priority presentation. Upon completion of the presentation program, sub-routines stored on the storage device of the audio controller are executed to relinquish the exclusive control over the audio controller and re-enable control of the MPS application over the audio controller before the PPS application returns to the wait state. 
         [0060]    Those of skill in the art will understand that, like the PPS application, a MPS application will usually incorporate routines of its own to establish an exclusive control of its own over the display device  50 . Hence, the PPS application of the invention executes routines designed to temporarily overcome and suppress the display-capture routines of the MPS application for at least as long as the priority presentation is to play on the display device  50 . In particular, capturing and relinquishing control over the display device  50  (steps  240  and  290 ) is accomplished by different methods, depending upon the MPS application operating on the display controller  60 . 
         [0061]    In another embodiment, wherein the PPS application and MPS application operate in the Windows® environment (here, Microsoft® Windows® XP Professional) on the display controller  60 , the PPS application makes calls to subroutines in the Win32 API to create a new desktop (CreateDesktop) and then cause the operating system to direct the display content of the PPS application to it (see  FIG. 9 , step  310 ). Those of skill in the art will recognize that the Windows ® graphical user interface environment is based upon a display surface, represented on the screen of the display device  50 , known as a desktop. Windows® provides a default desktop upon startup that is used by applications during normal use, but that there is also provided a means to create another, alternate desktop, distinct from the default desktop by way of the CreateDesktop call. A new desktop created in this manner is configured for the exclusive use of an application that requests it. 
         [0062]    As further provided schematically in  FIG. 9 , the PPS application also makes a call to switch the display device  50  from displaying the main desktop to the new desktop (SwitchDesktop) (step  350 ). As a result, the applications that were running and displaying content on the display device  50  prior to the CreateDesktop call, including the MPS application, disappear from the display device  50  to be replaced by the new desktop containing wherein the PPS application is exclusively providing its own display content (the priority presentation). 
         [0063]      FIG. 10  schematically details the sub-steps of step  290  where control is restored to the MPS. Upon the completion of the priority presentation, the PPS application again makes a call to SwitchDesktop to restore the contents of the original desktop to the display device  50  ( FIG. 10 , step  410 ). Even though the original desktop was not being displayed on the display device for a time, applications such as the MPS application continue to operate uninterrupted on the display controller  60 , except that they are not displayed on the display device  50 . 
         [0064]    However, where the MPS application employs a similar technique of CreateDesktop and SwitchDesktop calls to acquire exclusive control of the display device  50 , the PPS application must use an alternative method to acquire and maintain exclusive control. In addition, where the main presentation and/or the priority presentation include audio portions, the PPS application calls routines in the Win32 API to temporarily suspend the execution of the MPS application, thereby preventing the MPS application from either re-acquiring control of the display device  50  prematurely or playing its own audio content on top of that of the priority presentation. 
         [0065]    Here, the PPS application is configured to determine ( FIG. 9 , step  300 ) that it is necessary to suspend the MPS application rather than merely displacing it with a new desktop, the PPS application in this embodiment will suspend the process of the MPS application. 
         [0066]    In another embodiment, the PPS application makes the determination of step  300  by identifying the application name of the MPS application and comparing it to a list of known MPS applications compatible with the steps outlined above. If the PPS application determines that the foregoing steps will not be fully effective to exclude it from the display device  50 , the PPS application proceeds with an alternative procedure. 
         [0067]    In another embodiment, the alternative procedure for excluding the MPS application includes the PPS application executing routines to initialize its own display content and bring it to the foreground of the existing desktop (SetForegroundWindow) (step  320 ). The PPS application also makes a call to move the MPS application operating on the desktop to positions off the display area of the display device  50  (SetWindowPlacement) (step  330 ). Then, the PPS application makes calls to OpenThread and SuspendThread with the Process ID of the MPS application (step  340 ), thereby temporarily stopping the operation of the MPS application. The PPS application then proceeds to play the priority presentation (step  270 ). 
         [0068]    Upon the completion of the priority presentation (step  280 ) where the MPS application is known by the PPS application to require suspension, the PPS application brings the MPS application out of suspension (step  420 ) by calls to OpenThread and ResumeThread. The PPS application then restores the positions of the MPS application to the visible foreground of the desktop with a call to SetForegroundWindow (step  430 ), and also restores the MPS application to its original position on the desktop with SetWindowPos (step  440 ). 
         [0069]    In this way, the PPS application can co-exist on a display controller  60  with a MPS application and display content on the display device  50  independently of the operation of the MPS application. As described above, the PPS application determines an appropriate method for taking control of the display device from the MPS application, without the MPS application having to be altered, reconfigured, or recoded. Accordingly, the display controller  60  is enabled to provide third-party content in addition to any content provided by the MPS application with a minimum of technical effort required by the local managers at the display site. 
         [0070]    In another embodiment of the invention, features of the MPS application are integrated with the PPS application, hereinafter referred to as an Integrated Presentation Software (IPS) application. In this embodiment, the IPS application functions in place of the MPS application on the display controller  60 . 
         [0071]    As with the MPS application described above, the IPS embodiment of the PPS application operates as a Content Management Software as described above for presentation of media content. The IPS embodiment is further configured with all the features of the PPS application described above, with the addition of the following. 
         [0072]    As there is no MPS application in this embodiment, the IPS embodiment is not required to execute routines to exclude an MPS application from control of the display device  50  upon the event of a trigger. Instead, the IPS embodiment, configured to operate as the MPS application on the display controller  60 , is configured to cause the display controller  60  to present media content to the display device  50 , and further to simultaneously detect the event of a trigger. 
         [0073]    As with the PPS embodiment described above, the IPS embodiment may detect a trigger as any of (but not limited to) a time interval, a time of day, a signal provided over the network connected to the display controller  60 , a signal provided by a user interface device (e.g., a keyboard or mouse), or equivalent. 
         [0074]    Upon detecting an appropriate trigger, the IPS embodiment causes the display controller  60  to switch from displaying the main presentation on the display device  50  to displaying a priority presentation on the display device  50 . As with the PPS described above, the IPS embodiment is configured to present the priority presentation until it completes; thereupon, the IPS embodiment resumes presentation of the main presentation and awaits the event of another trigger. 
         [0075]    The invention also provides for a business method for providing third-party content to an out-of-home advertising system as described above. 
         [0076]    In one embodiment, a content manager provides a PPS application as described above to be installed and executed on a compatible display controller  60  and display device  50  at a deployment site managed by site manager. A deployment site may be, for example, a shopping center, a retail store or supermarket, restaurant, or any other indoor or outdoor public place. A site manager may be, for example, a local manager of a supermarket or a shopping center. 
         [0077]    In this embodiment, a content manager provides a medium, e.g., a Flash memory, cd-ROM, or networked storage device containing the PPS application in either of an executable form ready to be executed by a display controller  60  or else an installable form known to those of skill in the art ready to be transferred to the storage device of the display controller  60  and configured into the executable form. 
         [0078]    From the medium, an operator of the display controller can configure the PPS application to begin executing on the display controller  60 . 
         [0079]    Also in this embodiment, the content manager provides a server  10  as described above in connection with the wide-area network such as the Internet  20 . The server  10  may comprise a single server device, a cluster of interoperating or redundant load-balancing server devices, or the equivalent as known in the art. 
         [0080]    In another embodiment, the content manager also provides a medium containing a sync server application as described above. From the medium, an operator of an in-house server configures the in-house server  40  to execute the sync server application and configures the sync server application to communicate with the PPS application executing on the display controller  60 . 
         [0081]    In operation, the PPS application of the display controller  50 , or alternatively, the sync server application of the in-house server  40 , periodically attempts to make contact with the server  10  via the Internet  20 , as described above. The server  10  provided by the content manager is configured to wait for, authenticate, and accept connections from one or more display controllers  60  or in-house servers  40  with the respective PPS applications or sync server applications operating thereon. Connection and authentication may be established by any method known by those of skill in the art. Upon successful authentication, the server  10  is configured to transmit priority media content particularly for display by the PPS application operating on the display device  50  of the display controller  60 , as described above. 
         [0082]    In another embodiment, the server  10  provided by the content manager is also configured to provide scheduling information for use by the PPS application to control when and/or how often a priority presentation of the priority media content is displayed on the display device  50 . 
         [0083]    In yet another embodiment, the server  10  provided by the content manager is also configured to receive proof-of-play records from the display controller  60  (directly, or by way of the sync server application running on the in-house server  40 ), as described above. 
         [0084]    In yet still another embodiment, the server  10  provided by the content manager is also configured to provide updates to the PPS application, the updates being in the form of a data transmission as known in the art to be incorporated into the PPS application in order to improve the performance of the PPS application against a greater plurality of MPS applications. 
         [0085]    In a further embodiment, the content manager may provide any of display devices  50  and/or display controllers  60  to the deployment site, the display controllers  60  including a PPS application as described above. 
         [0086]    In a variation of the embodiments of the business method provided above, the PPS application provided is in the form of an IPS embodiment, as described above. 
         [0087]    The invention also provides for a business method for receiving an electronic request over the wide-area-network  20 , from a PPS application or an IPS embodiment deployed on a display controller  60 , directly or via a sync server application as described above, via a server  10  configured as described above, and providing display content for display by the PPS application via a display device  50 . 
         [0088]    In an embodiment of the business method, the content manager also provides facilities enabling communication with one or more content providers for the creation, submission, and scheduling of priority content for display on the display devices  50  under the control of the PPS application (or IPS embodiment) in communication with the server  10 . In this embodiment, the content manager also provides facilities to manage transactions with the content providers for sale of the use of the display devices  50  in presenting the priority content. 
         [0089]    In this embodiment, the content manager tracks the availability of display devices  50  for priority content based on the configurations of site managers, and also maintains records and statistics of deployments of the PPS applications, including but not limited to geographical location, demographics, type of venue or business at the site, and viewing statistics. The content manager also maintains the proof-of-play records and status information particular to content providers and makes them available to content providers to assist in further purchasing and scheduling of priority content. The content manager may also maintain information with respect to data gathered by feedback devices as described above at sites where display devices  50  and/or display controllers  60  are so equipped. Information gathered and maintained may be stored and retrieved, for example, by way of a database application such as Oracle®, Sybase®, MySQL®, or the equivalent. 
         [0090]    In another embodiment, the content manager provides, by way of the server  10  or additional computer hardware in communication with the server  10 , an interactive user-interface through which one or more content providers perform the functions outlined above as to creating, submitting, and scheduling priority content, managing transactions for the purchase of display time on one or more of the display devices  50 , viewing proof-of-play records and status information particular to a content provider, browsing available display devices  50  and sites wherein display devices  50  are deployed sorted by category as above, and other functions to further enable the effective distribution of priority content provided by content providers. The server  10  is configured at least to receive media content in compatible formats as described above and make them available for retrieval by either of PPS applications operating on display controllers  60  and/or sync server applications operating on in-house servers  40 . 
         [0091]    In an exemplary embodiment, the time from submission of a media content by a content provider and ultimate delivery to a PPS application for presentation on a display device  50  is no more than 48 hours. 
         [0092]    In yet another embodiment, the interactive user-interface is provided in the form of a web server application operating on the server  10  or additional computer hardware in communication with the server  10  configured to receive requests from computers  5  in communication with the server  10  over a wide-area network  20  by way of a browser application operating on a computer  5 , e.g., Internet Explorer®, Firefox®, or equivalent. 
         [0093]    In yet still another embodiment, the user-interface is provided as a SaaS solution. 
         [0094]    In another embodiment, the user-interface provides real-time feedback to the content provider of when and how often one or more particular priority presentations are presented. The user-interface may also provide feedback as to priority content not displayed because of action taken by a site manager to disable a priority content from being displayed on a display device  50  or display device  50  at a site. 
         [0095]    In yet another embodiment, the user-interface provides visual representations of the proof-of-play records to compare particular priority presentations scheduled for display with priority presentations as they are actually displayed on a display device  50  or at a site. 
         [0096]    In yet still another embodiment, the user-interface presents the information 
         [0097]    In another embodiment, the user-interface provides visual representations of data provided by the feedback devices as described above. 
         [0098]    In yet another embodiment, the user-interface presents the information provided by proof-of-play records, status information, and information provided by the feedback devices to compiled information in visual forms for evaluation by content providers. The forms may be in compliance with industry standards such as provided by the Out-of-Home Video Advertising Bureau (OVAB). 
         [0099]    In another embodiment, the information is provided in the form of feedback as a measure of unit impression, as defined by the OVAB, including statistics as to audience presence (people that see a display device  50  or set of related display devices  50 ), dwell time (how long a viewer is in a particular venue), media rotation (minutes of media presentation/hour), and media content length (in seconds). 
         [0100]    In yet another embodiment, the user-interface provides tools for the creation and editing of priority media content. The tools may provide pre-configured templates and editing tools, as known in the art, for composing presentations of text and graphics (both still and animated) for presentation on the display devices  50  as priority media content. The tools may further include facilities to integrate with external news and information feeds (e.g., Internet-based news feeds, RSS, etc.), facilities to receive and incorporate media files of common formats (MPEG, WMV, JPEG, Flash®, etc.), and tools for arranging portions of the presentation on one or more different display portions of the display device  50 . 
         [0101]    In yet another embodiment, the user-interface provides an interactive, chronological representation of a schedule of media content for one or more display devices  50 , enabling a content provider to purchase particular a time-slot(s) based on at least time of day, venue, audience size, and/or media content before or after the desired time-slot(s). 
         [0102]    In a further embodiment, the user-interface provides means to record and debit an account particular to a content provider based on a quantity of impressions as provided above (or related methods), as well as for creation of content (if applicable). 
         [0103]    In yet a further embodiment, the user-interface provides a means for a content provider to arrange for a particular submitted media content to be prioritized for preferential or faster delivery to display controllers  50 . In this embodiment, the user-interface may provide for an additional transaction in exchange for marking a media content as a priority. 
         [0104]    In yet still a further embodiment, the server may communicate in real-time to the content provider that one or more media content has been completed at one or more display devices  50  or sites. In another embodiment, the communication may be in the form or an e-mail, an instant message, or the equivalent. In yet another embodiment, the communication may be in the form of a widget integrated with the user-interface described above. In yet still another embodiment, this feature may be enabled by the content provider for one or more media content via the user-interface. 
         [0105]    Embodiments of the invention may be represented as a software product stored in a machine-readable medium (also referred to as a computer-readable medium, a processor-readable medium, or a computer usable medium having a computer readable program code embodied therein). The machine-readable medium may be any suitable tangible medium, including magnetic, optical, or electrical storage medium including a diskette, compact disk read only memory (cd-ROM), memory device (volatile or non-volatile), or similar storage mechanism. The machine-readable medium may contain various sets of instructions, code sequences, configuration information, or other data, which, when executed, cause a processor to perform steps in a method according to an embodiment of the invention. Those of ordinary skill in the art will appreciate that other instructions and operations necessary to implement the described invention may also be stored on the machine-readable medium. Software running from the machine-readable medium may interface with circuitry to perform the described tasks. 
         [0106]    In the preceding description, for purposes of explanation, numerous details are set forth in order to provide a thorough understanding of the embodiments of the present invention. However, it will be apparent to one skilled in the art that these specific details are not required in order to practice the present invention. In other instances, well-known electrical structures and circuits are shown in block diagram form in order not to obscure the present invention. For example, specific details are not provided as to whether the embodiments of the invention described herein are implemented as a software routine, hardware circuit, firmware, or a combination thereof. 
         [0107]    The invention as described herein may comprise one, several, all, or any of the embodiments provided above in any combination. The above-described embodiments of the present invention are intended to be examples only. Alterations, modifications and variations can be effected to the particular embodiments by those of skill in the art without departing from the scope of the invention, which is defined solely by the claims appended hereto.

Technology Category: 3