Method, apparatus, and computer program product for controlling content distribution

The method, apparatus, and computer program product provided herein provide for distribution of customized content to displays in a network. A display may receive video content for display from a transceiver device. Channel configurations may be user-configured to include content from any number of sources. Channel content may be generated based on a channel configuration to incorporate identified content and the channel content may be provided to transceiver devices. Alert messages may be pushed to channels, and takeovers of transceiver devices to stream a particular channel may be performed.

BACKGROUND

Various embodiments of the invention are related to content distribution, and particularly to a method, apparatus and computer program product for configuring content channels and distributing the content for display. Applicant has discovered problems with and related opportunities relating to disseminating content to a plurality of displays. Through applied effort, ingenuity, and innovation, Applicant has solved many of these identified problems by developing a solution that is embodied by the present invention, which is described in detail below.

BRIEF SUMMARY

A method, apparatus, and computer program product are therefore provided for controlling content distribution to a plurality of transceiver devices in communication with displays.

A computer-implemented method is provided for controlling content distribution, the method comprising receiving a channel configuration from a channel configuration module, the channel configuration comprising at least one uniform resource locator (URL), storing the channel configuration in association with the channel identifier on a content distribution apparatus, receiving an indication of at least one transceiver device selected from a plurality of transceiver devices, wherein the indication indicates the at least one transceiver device is to be associated with the channel identifier, and associating the channel identifier with the at least one transceiver device, such that channel content generated based on the channel configuration and associated with the channel identifier is received by the transceiver device via a network interface and transmitted by the transceiver device for display. In some examples, the method includes generating the channel content based on the channel configuration. The channel configuration may further comprise at least two URLs and a respective position and a respective size for each of the at least two URLs with respect to the channel content.

In some embodiments, the channel configuration comprises at least two URLs and a respective duration for which each of the two URLs are to be displayed. In some embodiments, the method further includes receiving an indication of a takeover channel identifier, and causing transmission of a takeover channel identifier to all of the plurality of transceiver devices such that associated takeover content is transmitted by the transceiver device.

In some embodiments, the method further includes receiving an indication of an alert message, and causing respective channel content associated with all available channel identifier to be updated to include the alert message. In some examples, the method includes causing transmission of the alert message to the content distribution apparatus from a remote user device.

In some embodiments, the method includes receiving an indication of local content on a remote user device, causing transmission of the local content to the content distribution apparatus, and associating the local content with the channel configuration. In some examples, the at least one URL is associated with promotional content provided by a promotion and marketing service and customized for a provider, and wherein the channel configuration comprises at least one additional URL associated with content provided by the provider. In some examples, the at least one URL is associated with provider metric content provided by a promotion and marketing service, wherein the provider metric content describes at least provider profit based on data collected by the promotion and marketing service.

An apparatus for controlling content distribution is provided, the apparatus comprising a channel configuration module, configured for, when executed by a processor, accessing a channel configuration provided by a remote user device and stored in associated with a channel identifier, the channel configuration comprising at least one uniform resource locator (URL), and a transceiver device configuration module, configured to, when executed by a processor, access a transceiver device configuration comprising an association of a transceiver device and the channel identifier, such that channel content generated based on the channel configuration and associated with the channel identifier is received by the transceiver device via a network interface and transmitted by the transceiver device for display.

In some examples embodiments, the apparatus further includes a channel content generation module, configured to, when executed by a processor, generate the channel content based on the channel configuration. In some examples, the channel configuration further comprises at least two URLs and a respective position and a respective size for each of the at least two URLs with respect to the channel content.

In some examples, the channel configuration comprises at least two URLs and a respective duration for which each of the two URLs are to be displayed. The apparatus may further include a takeover module configured to, when executed by a processor, a) receive an indication of a takeover channel identifier, and b) cause transmission of a takeover channel identifier to all of the plurality of transceiver devices such that associated takeover content is transmitted by the transceiver device.

In some examples, the apparatus comprises an alert module configured to, when executed by a processor, a) receive an indication of an alert message, and b) cause respective channel content associated with all available channel identifier to be updated to include the alert message. In some embodiments, the alert module is further configured to, when executed by the processor, cause transmission of the alert message to the content distribution apparatus from a remote user device.

The apparatus may further include a channel content generation module, configured to, when executed by a processor, receive an indication of local content on a remote user device, cause transmission of the local content to the content distribution apparatus, and associate the local content with the channel configuration. The at least one URL may be associated with promotional content provided by a promotion and marketing service and customized for a provider, and the channel configuration may comprise at least one additional URL associated with content provided by the provider. The at least one URL is associated with provider metric content provided by a promotion and marketing service, wherein the provider metric content describes at least provider profit based on data collected by the promotion and marketing service.

A computer program product for controlling content distribution is provided, the computer program product comprising at least one non-transitory computer-readable medium having computer-readable program instructions stored therein, the computer-readable program instructions comprising a channel configuration module, configured for, when executed by a processor, accessing a channel configuration provided by a remote user device and stored in associated with a channel identifier, the channel configuration comprising at least one uniform resource locator (URL), and a transceiver device configuration module, configured to, when executed by a processor, access a transceiver device configuration comprising an association of a transceiver device and the channel identifier, such that channel content generated based on the channel configuration and associated with the channel identifier is received by the transceiver device via a network interface and transmitted by the transceiver device for display.

In some examples, the computer program product further comprises a channel content generation module, configured to, when executed by a processor, generate the channel content based on the channel configuration. The computer program product of claim21, wherein the channel configuration further comprises at least two URLs and a respective position and a respective size for each of the at least two URLs with respect to the channel content. In some examples, the channel configuration comprises at least two URLs and a respective duration for which each of the two URLs are to be displayed.

The computer program product may further include a takeover module configured to, when executed by a processor, a) receive an indication of a takeover channel identifier, and b) cause transmission of a takeover channel identifier to all of the plurality of transceiver devices such that associated takeover content is transmitted by the transceiver device.

The computer program product may further includes an alert module configured to, when executed by a processor, a) receive an indication of an alert message, and b) cause respective channel content associated with all available channel identifier to be updated to include the alert message.

In some embodiments, the alert module is further configured to, when executed by the processor, cause transmission of the alert message to the content distribution apparatus from a remote user device.

The computer program product may include a channel content generation module, configured to, when executed by a processor, receive an indication of local content on a remote user device, cause transmission of the local content to the content distribution apparatus, and associate the local content with the channel configuration.

In some examples, the at least one URL is associated with promotional content provided by a promotion and marketing service and customized for a provider, and wherein the channel configuration comprises at least one additional URL associated with content provided by the provider. The at least one URL is associated with provider metric content provided by a promotion and marketing service, wherein the provider metric content describes at least provider profit based on data collected by the promotion and marketing service.

DETAILED DESCRIPTION

Overview

In some environments, it may be desirable to disseminate information to various individuals in remote locations, such as by numerous display screens located throughout a network. Some such implementations may require that each display communicates with a local device (e.g., server, tablet, or other computing device) to access the desired content. The local device may be expensive to install, particularly in mass quantities as needed by each display location. In some instances, the local device may be difficult to configure or maintain remotely and may require an authorized user to physically visit the station in order to configure the device and/or to troubleshoot technical issues.

Furthermore, in some examples, it may be desirable for various users, groups of users, business entities and/or the like to configure various portions of a display screen independently of one another. Current solutions may offer only a single control point that may require coordination between such user groups and administration via a particular user or group of users.

A method, apparatus, and computer program product are therefore provided to control content distribution to a plurality of devices in a network. The method, apparatus, and computer program product may be provided via a content distribution apparatus. In some examples, a user may configure a channel to include content from a number of URLs (uniform resource locator), images, video, and/or other media sources. In some instances, more than one URL may be provided so that content from different locations may be provided via one channel. A “channel configuration” may therefore be considered any information provided by a user to define a channel and may include any number of URLs, sizing and positioning information, images, video content, and/or a channel name. A “channel identifier” may be considered any unique identifier associated with a channel configuration, such as a URL or other identifier.

A transceiver device may be configured to be tuned to a particular channel based on a channel identifier. Based on the associated channel configuration, “channel content” may be generated by the content distribution apparatus to incorporate the content identified in the associated channel configuration. The channel content may therefore be considered composite web content generated from a plurality of sources. The provision of channel content to a transceiver device may be achieved by “tuning” the associated transceiver device to a channel such that the transceiver device receives the generated channel content. The transceiver device may convert the channel content to a video format and transmit the video content to a display.

Example Embodiment

FIG. 1is a schematic representation of a content distribution system101for controlling content distribution according to an example embodiment. In general, content distribution apparatus102provides content distribution functionality such as channel configuration, transceiver device configuration, user administration, and/or the like, as described with respect to the example embodiments provided herein. Content distribution apparatus102may be implemented as a personal computer and/or other networked device, such as a server or distributed system configured to communicate over network108with user device(s)110and transceiver device(s)120. Content distribution apparatus102will be described in further detail with respect toFIGS. 2 and 7.

Network108may include any wired or wireless communication network including, for example, a wired or wireless local area network (LAN), personal area network (PAN), metropolitan area network (MAN), wide area network (WAN), or the like, as well as any hardware, software and/or firmware required to implement it (such as, e.g., network routers, etc.). For example, network108may include a cellular telephone, an 802.11, 802.16, 802.20, and/or WiMax network. Further, the network108may include a public network, such as the Internet, a private network, such as an intranet, or combinations thereof, and may utilize a variety of networking protocols now available or later developed including, such as, but not limited to, TCP/IP based networking protocols.

Any number of user devices110-110nmay be implemented as a personal computer and/or other networked device, such as a cellular phone, tablet computer, mobile device, etc., that may be used to access the content distribution apparatus102, and in some embodiments, transceiver devices122. User devices110-110nare illustrated to emphasize that numerous user devices may be implemented within the system101, but hereinafter may be described as user device110for simplicity. As such, a user may use user device110to view example displays provided by the content distribution apparatus102such as those provided inFIGS. 3A-3E, to configure content channels and transceiver devices as described herein. In some embodiments, input parameters defining the content configurations and transceiver device configurations may be provided to the content distribution apparatus102via a user device110. In some embodiments, a user may direct the content distribution apparatus102to provide alerts and initiate a takeover of transceiver devices120via user device110, as described in further detail herein.

Any number of transceiver devices120-120mmay be operative in the content distribution system101to access content provided by the content distribution apparatus102and provide the content to respective displays122-122mfor display. Numerous instances of displays122-122mand corresponding transceiver devices120-120mmay be present but for simplicity may be referred to hereinafter as transceiver device120and display122. While illustrated as display and transceiver device pairs, in some examples, one transceiver device120may indeed provide content to more than one display122, for example.

Transceiver device120may be implemented on any type of device configured to communicate with content distribution apparatus102via network108and transmit content for display on display122. For example, transceiver device120may be implemented on a personal computing station, tablet computer, and/or a lightweight streaming device, such as Chromecast, Airtame, and/or Sugarcube, for example, which may be configured to connect to a display122by high definition multimedia interface (HDMI), and to communicate wirelessly with content distribution apparatus102via network108. While transceiver device120is commonly referred to throughout as a streaming device physically connected to a display120and communicative wirelessly with content distribution apparatus102, it will be appreciated that many other configurations of content distribution system101may exist. For example, transceiver device120may be directly wired to content distribution apparatus102, and/or configured to communicate wirelessly with display122. In some examples, the transceiver120may be implemented within the same housing as that of the display122.

Display122may be a television monitor or computer monitor, for example, configured to receive content from transceiver device120in a format compatible for display by display122. For example, in embodiments in which transceiver device120is embodied as a Chromecast, the transceiver device120may receive streamed browser content from content distribution apparatus102, convert the browser content to video format compatible with HDMI, and transmit the video content for display.

FIG. 2is another schematic representation of a system101, or portion thereof, for controlling content distribution according to an example embodiment. Content distribution apparatus102may integrate and/or collectively provide the functionality of channel configuration module212, transceiver device configuration module214, alert module216, takeover module218, user administration module220and/or channel content generation module222. Content distribution apparatus102may additionally store and/or retrieve data from content repository230, channel configuration database232, and/or transceiver device configuration database234.

In general, channel configuration module212enables a user of user device110to provide custom channel configurations defining any number of URLs, images, or other content to be included in a channel and provided to a transceiver device120for display. Channel configurations may be stored on channel configuration database232, and may refer to content stored on content repository230, or any other content accessible over network108, for example. The content channel configurations may therefore be stored for reuse and/or modification. The channel configuration module212may provide channel configurations to the content channel generation module222so that channel content may be generated and provided on user interface displays such as the examples displays ofFIGS. 3A-3C, described in detail below.

Transceiver device configuration module214may provide the ability for a user of user device110to direct any transceiver device120to access content associated with a channel configuration. The transceiver device configuration module214may provide a user with a listing of active transceiver devices120on network108, and may enable the user to point the transceiver device120to a particular channel configuration such that the content distribution apparatus102and/or channel content generation module222provides the intended content to the transceiver device120. A user may therefore change displayed content on any of the displays122from a remote location, and/or configure multiple displays122(via their respective transceiver devices120) to display the same customized content. In some examples, a group of transceiver devices may be defined such that all the transceiver devices in a group may be configured to be tuned to the same channel at any given time. Therefore, a number of displays in a department, geographic vicinity, and/or the like may display the same content. The transceiver device configuration database234may maintain associations of transceiver devices to content channel configurations. The transceiver device configuration module214may additionally or alternatively provide a user interface display for making such configurations.

Alert module216provides a use the ability, such as with user device110, to push an alert message to any number of displays. For example, the alert module216may provide a user interface such as that illustrated inFIG. 3E, allowing a user to enter an alert message. The alert message may be communicated to the channel configuration module212and/or channel content generation module222so that channel content may be temporarily modified to include the alert message.

Takeover module218enables a user, such as with user device110, to temporarily override available transceiver devices120to tune to a particular channel, or takeover channel. The takeover module218may therefore communicate with transceiver device configuration module214, and may provide a user interface for entry of a channel identifier of the corresponding channel to which the available transceiver devices120and/or or a group of transceiver devices120will be tuned.

The user administration module220may provide for configuration of user access to the various modules212,214,216,218, and/or the like. For example, one group of users may have authority to configure channels while another group of users may have the ability to configure transceiver devices. Similarly, a defined set of users may have authority to push alerts or initiate a takeover of the transceiver devices. The user administration module220may therefore control access to such functionality, and provide for authorized users to add and/or remove users from authorized user groups.

The channel content generation module222may access channel configurations as provided by the channel configuration module212to generate channel content to be provided to transceiver120and displayed on display122. The channel content generation module222may incorporate content identified in a channel configuration such that the content is accessible via a single URL, for example. In some embodiments, the channel content generation module222may access alert module216to incorporate alerts into the channel content.

In general, the content repository230may include storage space for content that may be included in a channel configuration. In some embodiments, a user may publish or upload content to the content repository230while configuring a channel. The content may then become available to other users and channels by accessing the content repository230.

The channel configuration database232may be used to store the user defined channel configurations. For example, each channel configuration identifier may be stored in association with respective channel configurations, including references to any of the URLs or other media included in the channel configuration.

The transceiver device configuration database234may maintain a record for each transceiver device available on network108, for example, and may include associations to channel configurations indicating to which channel a transceiver device is tuned. The transceiver device configuration database234may, in some embodiments, comprises data defining groups of transceiver devices.

FIGS. 3A-3Eare example displays that may be provided by content distribution apparatus102for a user to control the distribution of content. Any of the displays may be accessed with user device110, for example.

FIG. 3Ais an example display providing a menu to access various functionality provided by content distribution apparatus102. For example, as shown by indicator302, an option for configuring transceiver devices120may be provided. Upon selection of the transceiver devices option, the transceiver device configuration module214and/or the like may provide a listing of available transceiver devices120and/or groups of transceiver devices120on network108. The available transceiver devices120may include any transceiver device120configured to operate on network108. The transceiver device configuration module214and/or the like may additionally provide channel identifiers of any channel to which a transceiver device120is tuned, and/or the status of any of the transceiver devices120, such as whether or not the transceiver device120is broadcasting to a respective display122. Furthermore, transceiver device configuration module214may provide a user with an option to tune a transceiver device120to a different channel, such as by entering a channel identifier. In response, the channel content being provided to an associated display122may change to reflect the content defined by the identified channel configuration. In some examples, a user may add and/or remove transceiver devices120from a group of transceiver devices, and/or create and name a group of transceiver devices120, such as “engineering department,” for example.

As shown by indicator304, an option for providing channel configurations may be provided. Upon selection of the channel option, a display such as that of FIG.3B may be displayed. Channel configurations will be described in further detail with respect toFIG. 3B.

As shown by indicator306, an option to provide a push alert may be provided. Upon selection of the push alert option, a display such as that ofFIG. 3Emay be provided. Alerts will be described in further detail with respect toFIG. 3E.

As shown by indicator308, an option for performing a channel takeover may be provided. Selection of the channel takeover option may result in a display such has that ofFIG. 3D, described in further detail hereinafter.

FIG. 3Bis an example display that may be provided by channel configuration module212for enabling a user to select to add a channel, as shown by indicator310. Selection of the add channel option may result in display of a display such as that ofFIG. 3C. In area312, the channel configuration module212provides a listing of channel configurations, as may be provided by channel configuration database232. Each channel has a name and a corresponding edit link, which may transition a display screen to a display similar to that ofFIG. 3C, allowing a user to edit the channel configuration.

FIG. 3Cis an example display that may be provided by channel configuration module212for enabling a user to add a new channel configuration. In some embodiments, a modified version of the display may be provided with information prefilled to allow for editing of an existing channel configuration. In area320, a user may enter a name for the channel. In area322, the user may choose a layout for how the content will be displayed. The full screen option, for example, may be used for a channel configuration comprising only one URL or other media source to utilize the entire display screen. Another layout option referred to as “content with sidebar” is also provided. The layout includes two sections, and may provide for content associated with a first content source (e.g., a URL) in a main portion of the display, and an additional portion for content associated with a second content source. While the displayed layouts are provided as selectable options for a channel configuration, many other layouts may be presented, or may be user-configured. For example, a layout may define the number of sections, the size and/or dimensions of each section, and/or the positioning of each section relative to the layout and/or other sections. A layout for a channel configuration may include any number of sections, and each section may be associated with any number of URLs.

Areas324and326provide for configurations of section1and2, respectively. In this example, the content with sidebar is selected in area322, so areas324and326are provided as a result of the section. Depending on how many sections are present in the selected layout, an area to configure each section may be provided. Area324provides a URL input. A user may therefore enter a URL for content to be displayed in section1. An option to add another URL to be rotated in section1is also provided, but in the illustrated example, only one URL is configured for section1.

Area326provides for configuration of section2, the sidebar. In this example, a user has selected to add a second URL, and an option for display duration is presented in area328. The two URLs a user enters may therefore be rotated for the indicated duration. For example, content provided via URL1may be displayed for 15 seconds, followed by content provided via URL2for 15 seconds, on a continual rotational basis within section2. Display duration options of 15 seconds, 30 seconds, 1 minute, and 2 minutes are provided as examples, but any configuration, including a free-form entry of any duration, and/or different durations for each URL, may be available.

The URLs provided in areas324and/or328may enable a user to provide content from various sources. For example, an image or video file may be stored in content repository230and accessed via a URL. Furthermore, a URL to an application server operative in network108(or via content distribution apparatus102) may provide access to a web application and/or may provide pertinent information to those in the vicinity of a display122.

Selection of the add channel button328may result in the channel configuration being saved to channel configuration database232. The channel may then appear on the channel listing, as provided in area312ofFIG. 3B. The channel configuration may be assigned a channel identifier, and may be made available to transceiver devices120such that the channel content generated based on the channel configuration may be displayed on displays122.

Although not illustrated, in some example embodiments, a user may indicate a location of local content on user device110that the user wishes to publish to a channel. In this regard, upon creation or editing of the channel configuration, the specified content may be transmitted or uploaded to the content distribution apparatus102. The content may be stored on content repository230, and the corresponding URL may be included in the content configuration.

FIG. 3Dis an example display that may be provided by takeover module218for a user to initiate a channel takeover. Dropdown332provides a listing of available channels, such as provided by the channel configuration database232and/or channel configuration module212. A user may select a takeover channel in the dropdown332to indicate which channel the user wishes to broadcast to transceiver devices120and/or group of transceiver devices120. A user may select option334to start a takeover of all available transceiver devices120such that corresponding displays120show the channel web content generated based on the selected channel configuration. A user may stop the takeover by selecting option336, at which point the transceiver devices120may return to access the previously tuned channel. The transceiver device configuration database234may be updated accordingly to reflect the takeover and stoppage of the takeover. While not illustrated inFIG. 3D, in some embodiments, a user may select the transceiver devices120to which the takeover will be applied, and/or a duration for which the takeover will occur prior to the transceiver device configurations reverting to the previously displayed channel. The takeover functionality provided by takeover module218may enable a user to temporarily provide broadcasting of a special event or major news event company-wide, for example.

FIG. 3Eis an example display that may be provided by the alert module216for pushing alerts to available transceiver devices120, group of transceiver devices120, and corresponding displays122. A user may use user device110in order to provide the alert message to remote displays122. In area340, a user may provide a message to be disseminated. In area344, an alert style may be selected. In this example embodiment, an option for low, normal, and urgent is provided. The alert style may dictate the size, color, positioning, and/or the like of the alert message with respect to the channel configuration. An example display of an alert message is provided inFIG. 4. Additionally on the display ofFIG. 3E, a user may select an alert duration in area346for which an alert may be displayed before returning to the configured channel. Selection of button348may cause modification of channel configurations, such as in the channel configuration database232and/or channel configuration module212, and such that all available transceiver devices120receive the alert for display. Although not illustrated, in some example embodiments, a user may select specific transceiver devices120to receive the alert message.

FIG. 4illustrates example channel content that may be provided on a display122. For example, a channel configured using the display ofFIG. 3Cmay include two sections402and404, providing content retrieved from URL1and URL2respectively. The display also reflects an alert message410that has been pushed to all channels such that the alert message appears with the designated alert style and for the specified duration. Note that a large portion of sections402and404are still visible even though the alert covers a small portion of the sections.

FIG. 5is a flowchart of operations that may be performed by content distribution apparatus102, according to some example embodiments, for distributing configured content. As shown by operation510, content distribution apparatus102may include means, such as channel configuration module212and/or the like, for receiving a channel configuration from a channel configuration module, the channel configuration comprising at least one uniform resource locator (URL). As described above with respect toFIG. 3C, a user may provide information relating to a channel configuration via a graphical user interface provided on a user device110. The channel configuration may include any number of URLs, positioning and sizing information, durations, layout information, a channel name, and/or the like. The positioning and/or sizing information may indicate how content associated with a respective URL may be placed and sized with respect to the channel content as a whole, and/or relative to another section of the channel configuration that may be associated with a different URL.

As shown by operation520, content distribution apparatus102may include means, such as channel configuration module212, channel configuration database232and/or the like, for storing the channel configuration in association with the channel identifier on a content distribution apparatus102. In some examples, the channel configuration and channel identifier may be stored on the channel configuration database232. The channel identifier may be a unique identifier such that when the channel content generation module222receives a request for channel content, the module222may access the other information included in the channel configuration based on the channel identifier.

As shown by operation530, content distribution apparatus102may include means, such as channel configuration module212and/or the like, for receiving an indication of at least one transceiver device selected from a plurality of transceiver devices120, wherein the indication indicates the at least one transceiver device is to be associated with the channel identifier. In this regard, a user may provide input to a user interface to control which display122displays content from which channels, with a user device110that may be remote from any of the displays122and/or transceiver devices120.

As shown by operation540, content distribution apparatus102may include means, such as channel configuration module212, transceiver device configuration module214, transceiver device configuration database234, and/or the like, for associating the channel identifier with the at least one transceiver device120, such that channel content generated based on the channel configuration and associated with the channel identifier is received by the transceiver device and transmitted by the transceiver device for display. In some examples, the at least one transceiver device120may include a group of transceiver devices120.

For example, the transceiver device configuration module214and/or transceiver device configuration database234may facilitate associations such that an identifier of a transceiver device120is associated with a channel identifier. Said differently, the transceiver device120is tuned to the identified channel.

In instances the transceiver device120is operative on network108, the channel content generation module222may generate channel content as defined by the channel configuration module212and/or channel configuration database232, based on the associated channel identifier. In some instances, the channel may have one associated dedicated URL by which to provide the channel content (e.g., composite content of any number of URLs). The transceiver device120may access the channel content, convert the channel content to a video format, and provide the video content to display122.

As another example, the channel content generation module222and/or the channel configuration module212may render hypertext markup language for transmission to the transceiver device120. Still further, the channel content generation module222and/or the channel configuration module212may stream content to the transceiver device120according to a known streaming protocol, for example.

FIG. 6is a flow diagram of data between components of system101according to example embodiments. As described herein, a user device110may transmit transceiver device configurations602and channel configurations604to content distribution apparatus102. The transceiver device configurations602may include a transceiver device identifier and channel identifier pair indicating to which channel a particular transceiver device120will be tuned.

Channel configurations604may include any information defining content to be incorporated into the channel content, such as URLs, positioning and sizing information, durations, and/or the like, as described with respect toFIG. 3Eabove.

Content distribution apparatus102may cause transmission of generated channel content610to transceiver device122. As described herein, the channel content610is generated based on the channel configuration associated with the channel identifier to which the transceiver device122is tuned. The channel content610may be transmitted in a format that the transceiver device122is configured to receive, including but not limited to, HTML5 (Hypertext Markup Language version 5), MPEG-DASH (Moving Picture Experts Groups Dynamic Adaptive Streaming), HLS (Hyptertext Transfer Protocol Live Streaming), and/or the Microsoft Smooth Streaming Protocol.

In some embodiments the transceiver device122may convert channel content610to a format compatible with display120, such as a video format compatible for transmission by HDMI. Video content620may be transmitted to display120for display. In some embodiments, the received channel content610may already be in a video format for transmission to the display120.

Having now described the flow of data between components of system101,FIG. 7provides an implementation of system101according to an example embodiment.

In accordance with some example embodiments, content distribution apparatus102may include various means, such as one or more processors702, memories704, communications modules706, and/or input/output modules708. Content distribution apparatus102may further include channel configuration module212, transceiver device configuration module214, alert module216, takeover module218, user administration module220and/or channel content generation module222, among other things (not shown). As referred to herein, the term “module” includes hardware, software and/or firmware configured to perform one or more particular functions. In this regard, content distribution apparatus102and/or system101as described herein may be embodied as, for example, circuitry, hardware elements (e.g., a suitably programmed processor, combinational logic circuit, and/or the like), a computer program product comprising computer-readable program instructions stored on a non-transitory computer-readable medium (e.g., memory704) that is executable by a suitably configured processing device (e.g., processor702), or some combination thereof.

Processor702may, for example, be embodied as various means including one or more microprocessors with accompanying digital signal processor(s), one or more processor(s) without an accompanying digital signal processor, one or more coprocessors, one or more multi-core processors, one or more controllers, processing circuitry, one or more computers, various other processing elements including integrated circuits such as, for example, an ASIC (application specific integrated circuit) or FPGA (field programmable gate array), or some combination thereof. Accordingly, although illustrated inFIG. 7as a single processor, in some embodiments, processor702comprises a plurality of processors. The plurality of processors may be embodied on a single computing device or may be distributed across a plurality of computing devices collectively configured to function as content distribution apparatus102. The plurality of processors may be in operative communication with each other and may be collectively configured to perform one or more functionalities of content distribution apparatus102as described herein. In an example embodiment, processor702is configured to execute instructions stored in memory704or otherwise accessible to processor702. These instructions, when executed by processor702, may cause promotional system100to perform one or more of the functionalities of content distribution apparatus102as described herein.

Whether configured by hardware, firmware/software methods, or by a combination thereof, processor702may comprise an entity capable of performing operations according to embodiments of the present invention while configured accordingly. Thus, for example, when processor702is embodied as an ASIC, FPGA or the like, processor702may comprise specifically configured hardware for conducting one or more operations described herein. As another example, when processor702is embodied as an executor of instructions, such as may be stored in memory704, the instructions may specifically configure processor702to perform one or more operations described herein, such as those discussed in connection withFIG. 5.

Memory704may comprise, for example, volatile memory, non-volatile memory, or some combination thereof. Although illustrated inFIG. 7as a single memory, memory704may comprise a plurality of memory components. The plurality of memory components may be embodied on a single computing device or distributed across a plurality of computing devices. In various embodiments, memory704may comprise, for example, a hard disk, random access memory, cache memory, flash memory, a compact disc read only memory (CD-ROM), digital versatile disc read only memory (DVD-ROM), an optical disc, circuitry configured to store information, or some combination thereof. In some embodiments, memory704may comprise a suitable network database (e.g., content repository230, channel configuration database232, transceiver device configuration database234) configured to store information for content distribution operations and/or the like, as described herein. Additionally or alternatively, memory704may be configured to store such data as well as various applications, instructions, or the like for enabling content distribution apparatus102to carry out various functions in accordance with example embodiments of the present invention. For example, in at least some embodiments, memory704is configured to buffer input data for processing by processor702. Additionally or alternatively, memory704may be configured to store program instructions for execution by processor702. Memory704may store information in the form of static and/or dynamic information. This stored information may be stored and/or used by content distribution apparatus102during the course of performing its functionalities.

Communications module706may be embodied as any device or means embodied in circuitry, hardware, a computer program product comprising computer readable program instructions stored on a computer readable medium (e.g., memory704) and executed by a processing device (e.g., processor702), or a combination thereof that is configured to receive and/or transmit data from/to another device, such as, for example, a second content distribution apparatus102and/or the like. In some embodiments, communications module706(like other components discussed herein) can be at least partially embodied as or otherwise controlled by processor702. In this regard, communications module706may be in communication with processor702, such as via a bus. Communications module706may include, for example, an antenna, a transmitter, a receiver, a transceiver, network interface card and/or supporting hardware and/or firmware/software for enabling communications with another computing device. Communications module706may be configured to receive and/or transmit any data that may be stored by memory704using any protocol that may be used for communications between computing devices, such as content distribution apparatus102, user device110, and/or transceiver device120. Communications module706may additionally or alternatively be in communication with the memory704, input/output module708and/or any other component of promotional system100, such as via a bus.

Input/output module708may be in communication with processor702to receive an indication of a user input and/or to provide an audible, visual, mechanical, or other output to a user (e.g., provider and/or consumer). As such, input/output module708may include support, for example, for a keyboard, a mouse, a joystick, a display, a touch screen display, a microphone, a speaker, a RFID reader, barcode reader, biometric scanner, and/or other input/output mechanisms. In embodiments wherein content distribution apparatus102is embodied as a server or database, aspects of input/output module708may be reduced as compared to embodiments where content distribution apparatus102is implemented as an end-user machine (e.g., user device110) or other type of device designed for complex user interactions. In some embodiments (like other components discussed herein), input/output module708may even be eliminated from content distribution apparatus102. Input/output module708may be in communication with the memory704, communications module706, and/or any other component(s), such as via a bus. Although more than one input/output module and/or other component can be included in content distribution apparatus102, only one is shown inFIG. 7to avoid overcomplicating the drawing (like the other components discussed herein).

Modules212,214,216,218,220, and/or222may perform operations of the content distribution apparatus102as described herein. In some embodiments, some or all of the functionality of the modules212,214,216,218,220, and/or222may be performed by processor702. For example, non-transitory computer readable storage media can be configured to store firmware, one or more application programs, and/or other software, which include instructions and other computer-readable program code portions that can be executed to control each processor (e.g., processor702and/or any of the modules212,214,216,218,220, and/or222) of the content distribution apparatus102to implement various operations. As such, a series of computer-readable program code portions are embodied in one or more computer program products and can be used, with a computing device, server, and/or other programmable apparatus, to produce machine-implemented processes.

As described with respect toFIG. 1, content distribution apparatus102may be coupled to one or more user devices110and/or transceiver devices120via network108.

As will be appreciated, any such computer program instructions and/or other type of code may be loaded onto a computer, processor or other programmable apparatus circuitry to produce a machine, such that the computer, processor, or other programmable circuitry that executes the code on the machine creates the means for implementing various functions, including those described herein.

Promotion and Marketing Embodiment

As described above, the method, apparatus, and computer program products provided herein enable a user to customize content and distribute the content for display to a plurality of displays, some of which may be remotely located. In another example embodiment described below, a promotion and marketing service and provider may benefit from a content distribution apparatus102.

As used herein, the term “provider” may be used interchangeably with “merchant” and may include, but is not limited to, a business owner, consigner, shopkeeper, tradesperson, vender, operator, entrepreneur, agent, dealer, organization or the like that is in the business of a providing a good, service or experience to a consumer, facilitating the provision of a good, service or experience to a consumer and/or otherwise operating in the stream of commerce. One example provider may be a running company that sells attire for use by a person who runs or participates in athletic activities.

The promotion and marketing service (e.g., a service that provides promotion and/or marketing services on behalf of one or more providers that are offering one or more instruments that are redeemable for goods, services, experiences and/or the like by a consumer) may engage in business with a provider to offer a promotion.

As shown inFIG. 8, promotion and marketing system810and provider system820may interact with content distribution apparatus102, user devices110, and/or transceiver devices120over network108. The promotion and marketing system810and provider system820may be considered 3rdparty systems that operate remotely and in some embodiments, independently, other than their respective interactions with content distribution apparatus102, for example. For example, the promotion and marketing service may provide a pre-configured transceiver device120to the provider for use in the provider's retail spaces, offices, and/or the like. The transceiver device120may be configured to operate within the provider's LAN, which may be included in network108.

The provided transceiver device120and/or transceiver device configuration database234may be preconfigured such that the transceiver device120is tuned to a specified channel. The user administration module220may, in some embodiments, prevent provider820from reconfiguring the transceiver device configurations and/or channel configurations. A preconfigured channel may comprise, for example, one URL associated with the promotion and marketing service810, and a URL associated with the provider system820. The promotion and marketing service may therefore ensure some level of control over the content displayed using the provided transceiver devices120. In some examples, the transceiver device120and/or transceiver device configuration database234may be preconfigured based on images, content, media or the like retrieved from a provider's website, marketing materials, reviews, third party sites or the like.

As an example, the promotion and marketing service may include a logo or advertisement in a portion of the channel content. In some examples, a section of channel content may be provided by an application of the promotion and marketing system810, showing available promotions offered on behalf of the promotion and marketing service for use at the provider, and/or promotional content provided by a promotion and marketing service and customized for a provider. As another example, a URL may be associated with provider metric content provided by the promotion and marketing service, wherein the provider metric content describes at least provider profit based on data collected by the promotion and marketing service. As another example, any metrics relating to sales, revenue, and/or profits, as tracked and calculated by the promotion and marketing service on behalf of the provider may be displayed via the specified channel. In some examples, such information can be run or otherwise accessed by a manager, sales staff or the like to view real time or semi-real time performance of a provider business, a category of businesses similar to that of the provider, businesses that are proximate to the provider or the like.

In some embodiments, a designated section of the channel content may be allotted for the provider system820. For example, the channel configuration may be preconfigured to point to a specific URL accessed on an application server of the provider system820. While the provider system820may not be permitted to configure channels, the provider system820may modify the content provided via the specified URL such that the provider system820controls at least a portion of the channel content disseminated to displays in the network108. In this regard, the provider may provide daily menus, specials, deals, promotions, company and/or employee updates, and/or the like in the designated section of the channel content. In some examples, live content may be included, such as sporting events, news events or the like.

The user administration module220may be configured to control what access users of the provider system820have over the content distribution apparatus102. For example, in some embodiments, a particular provider and/or employee of the provider may have access to push alerts to a number of transceiver devices120.

Any number of configurations of the content distribution apparatus102may can be customized such that control by the promotion and market system810and provider820is divided and/or shared. Both entities may benefit from such an arrangement. The promotion and marketing service may publish content to displays in a 3rdparty facility, thereby increasing visibility. The promotion and marketing service810may even sell such implementations to providers. Providers may benefit by having promotion and marketing service content, some of which may be especially generated for the provider, seamlessly streamed to devices in their retail stores and/or offices.

CONCLUSION

The computer-implemented method, apparatus and computer program product provided herein provide distinct advantages over current methods of distributing content to displays. Whereas many implementations require that a display be controlled by a pre-defined and/or static control device, the content distribution apparatus102provides a centralized access point and interface by which authorized users can direct a plurality of transceiver devices, and thus a plurality of displays to display content provided by respective channels. As such, the method, apparatus and computer program product provide numerous technical advantages including the conservation of processing resources and the associated power consumption otherwise expended to support the control of numerous different transceiver devices. For example, a user may configure any number of transceiver devices, or all available transceiver devices to provide content from a single source, from a single interface, as opposed to accessing individual interfaces for each transceiver device.

Moreover, while some users may access transceiver device configurations, the same or other users may access channel configurations to control what content is provided via the various channel, possibly independently of the transceiver device configurations. In this regard, the separation of control being transceiver and channel association in comparison to channel and content associations enable for efficient coordination of content provision to a large number of displays and/or users. Embodiments therefore provide distinct technical advantages over alternative implementations in which users would need to make multiple different entries to define individual transceiver device and channel pairings, as well as individual channel and channel content associations.

Even further, the customization of the content channels enables different users or user groups to provide content to different portions of a display, or such that the display rotates between different content channels. In this regard the different users or user groups can control portions of the content independent of one another without having to coordinate changing control or administration of the transceiver devices or channels. In this regard, additional improvements to known display control interfaces are provided.

Embodiments of the present invention have been described above with reference to block diagrams and flowchart illustrations of methods, apparatuses, systems and computer program products. It will be understood that each block of the circuit diagrams and process flowcharts, and combinations of blocks in the circuit diagrams and process flowcharts, respectively, can be implemented by various means including computer program instructions. These computer program instructions may be loaded onto a general purpose computer, special purpose computer, or other programmable data processing apparatus, such as processor702, modules212,214,216,218,220and/or222to produce a machine, such that the computer program product includes the instructions which execute on the computer or other programmable data processing apparatus create a means for implementing the functions specified in the flowchart block or blocks.

These computer program instructions may also be stored in a computer-readable storage medium (e.g., memory704) that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including computer-readable instructions for implementing the function discussed herein. The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions that execute on the computer or other programmable apparatus provide steps for implementing the functions discussed herein.

Accordingly, blocks of the block diagrams and flowchart illustrations support combinations of means for performing the specified functions, combinations of steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that each block of the circuit diagrams and process flowcharts, and combinations of blocks in the circuit diagrams and process flowcharts, can be implemented by special purpose hardware-based computer systems that perform the specified functions or steps, or combinations of special purpose hardware and computer instructions.