As bandwidth and transmission speeds increase across the Internet, more content such as audio, video, and imagery is available to end-users. In many current solutions, content uploaders and/or content providers may provide advertisements within the content itself. Such current solutions however, often rely on statically including the advertisements, without regard to geography, target demographic, or other advertising concerns. Consequently, because many current solutions statically include advertisements in the content, the advertisements are generally stored with the content (sometimes as a single file). Such configurations increase storage requirements for the content, as well as reduce the ability to change the advertisements shown in subsequent viewings.
Embodiments disclosed herein include systems, methods, and non-transitory computer-readable mediums for dynamically providing advertisement data. Some embodiments include a memory component that stores a program that causes the system to receive uploaded content from an uploading computing device, receive a desired break time and a desired break duration for the uploaded content, and determine a content target demographic for the uploaded content. Similarly, some embodiments are further configured to determine advertisement content that corresponds to the content target demographic, create a tag for the uploaded content that indicates the desired break time and the desired break duration of a break, and store the tag for a subsequent content request of the uploaded content.
Also disclosed herein are embodiments of a method for dynamically providing advertisement data. Embodiments of the method include receiving uploaded content from an uploading computing device, receiving a desired break time and a desired break duration of a desired break for the uploaded content, and determining a content target demographic for the uploaded content. Some embodiments include determining advertisement content that corresponds to the content target demographic, creating, by a content providing computing device, a tag for the uploaded content that indicates the desired break time and the desired break duration, receiving a request for the uploaded content, the request being received from an end-user computing device, and determining an end-user demographic of an end-user that requested the uploaded content. Still some embodiments include retrieving the uploaded content and the tag and providing the uploaded content to the end-user computing device for presentation.
Further, embodiments of a non-transitory computer-readable medium are also disclosed. The non-transitory computer-readable medium may be configured to store a program that when executed by a computing device cause the computing device to receive uploaded content from an uploading computing device, receive a break time and a break duration of a break for the uploaded content, and determine a content target demographic. Some embodiments further cause the computing device to create a tag for the uploaded content that indicates the break time and the break duration, store the tag for subsequent content request, and receive a request for the uploaded content, the request being received from an end-user computing device. Still some embodiments cause the computing device to determine an end-user demographic for an end-user of the uploaded content, retrieve the uploaded content and the tag, provide the uploaded content to the end-user for presentation, and determine, from the tag, whether the break has been reached in presentation of the uploaded content. Some embodiments cause the computing device to determine whether the end-user demographic is substantially similar to the content target demographic and in response to determining that the end-user demographic is substantially similar to the content target demographic, provide, during the break, an advertisement to the end-user in place of the uploaded content.
Other embodiments and/or advantages of this disclosure will be or may become apparent to one with skill in the art upon examination of the following drawings and detailed description. It is intended that all such additional systems, methods, features, and advantages be included within this description and be within the scope of the present disclosure.
Many aspects of the disclosure can be better understood with reference to the following drawings. The components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Moreover, in the drawings, like reference numerals designate corresponding parts throughout the several views. While several embodiments are described in connection with these drawings, there is no intent to limit the disclosure to the embodiment or embodiments disclosed herein. On the contrary, the intent is to cover all alternatives, modifications, and equivalents.
Embodiments disclosed herein provide systems, methods, and non-transitory computer-readable mediums for dynamically providing advertisement data within content. Accordingly, some embodiments may be configured to offer a single stream of content (such as an inauguration or the Olympics) to many viewers, while some embodiments may be configured to provide many different content streams to many viewers. Services offered to content uploading entities such as schools, offices, churches, governments, etc. may be controlled by those entities themselves. The uploading entities may control scheduling broadcasts, uploading photos, posting articles, and ultimately inserting an advertisement that is selected from advertisement content into their live broadcasts and/or stored content, such as on-demand content. Additionally, embodiments disclosed herein may be configured to allow the content uploader to choose a desired break time and/or desired break duration for an advertisement. The advertisement may be included dynamically by the uploading user, who selects an option that corresponds with the amount of time for the advertisement. The advertisement may then be selected by the content provider, based on predetermined criteria received from the content uploader and/or end-user. Because the uploading user is only identifying criteria associated with a desired advertisement and the content provider is interrupting the content to include an advertisement during a desired time, the content may be stored without any associated advertisements. This not only may reduce storage requirements for the content, but allows different advertisements to be provided to different end-users and during different viewings.
Referring now to the drawings,
More specifically, the uploading computing device 102a may be configured to upload content, such as audio data streams, video data streams, imagery, and/or other data to the content providing computing device 102b. The content providing computing device 102b may include a memory component 140 that stores content logic 144a, advertisement determination logic 144b, and utility logic 144c and may be configured to receive the uploaded content and advertisements. The content providing computing device 102b may also receive advertisement timing data, such as a time for interruption and a duration for interruption from the uploading computing device 102a. The content providing computing device 102b may also receive a request from the end-user computing device 102c for the content. The content providing computing device 102b may provide the requested content and dynamically include advertisements within the content, as indicated by the uploading computing device 102a.
As described herein, the content providing computing device 102b may be configured to dynamically include advertisement data within broadcast (and/or on-demand) content. More specifically, the content providing computing device 102b may receive tag data with the content that identifies a time and/or duration for inserting an advertisement within the content. The content providing computing device 102b can then access an advertisement that matches the desired criteria. Upon reaching the time for the advertisement, the content providing computing device 102b can interrupt the content to provide the advertisement for the identified duration.
Additionally, included in
It should be understood that while the uploading computing device 102a, the content providing computing device 102b, the end-user computing device 102c, and the administrator computing device 102d are depicted as personal computers and/or servers, these are merely examples. More specifically, in some embodiments, any type of computing device (e.g. mobile computing device, personal computer, server, etc.) may be utilized for any of these components. Additionally, while each of these computing devices is illustrated in
Additionally, the memory component 140 may be configured to store operating logic 242, the content logic 144a, the advertisement determination logic 144b, and the utility logic 144c, each of which may be embodied as a computer program, firmware, and/or hardware, as an example. A local interface 246 is also included in
The processor 230 may include any processing component operable to receive and execute instructions (such as from the data storage component 236 and/or memory component 140). The input/output hardware 232 may include and/or be configured to interface with a monitor, keyboard, mouse, printer, camera, microphone, speaker, and/or other device for receiving, sending, and/or presenting data. The network interface hardware 234 may include and/or be configured for communicating with any wired or wireless networking hardware, such as the wireless communications device 104 or other antenna, a modem, LAN port, wireless fidelity (Wi-Fi) card, WiMax card, mobile communications hardware, and/or other hardware for communicating with other networks and/or devices. From this connection, communication may be facilitated between the content providing computing device 102b and other computing devices.
Similarly, it should be understood that the data storage component 236 may reside local to and/or remote from the content providing computing device 102b and may be configured to store one or more pieces of data for access by the content providing computing device 102b and/or other components. As illustrated in
Included in the memory component 140 are the operating logic 242, the content logic 144a, the advertisement determination logic 144b, and the utility logic 144c. The operating logic 242 may include an operating system and/or other software for managing components of the content providing computing device 102b. Similarly, the content logic 144a may reside in the memory component 140 and may be configured to cause the processor 230 receive content from the uploading computing device 102a, as well as provide the content to the end-user computing device 102c. Additionally, the advertisement determination logic 144b may be configured to cause the processor 230 to receive tag data that includes one or more times and/or durations for interrupting the content to provide an advertisement. The utility logic 144c may be configured to receive requests for a utility application from the uploading computing device 102a and/or from the end-user computing device 102c.
It should be understood that the components illustrated in
In block 558, a determination can be made regarding whether the content is complete. If so, the process may end. If not however, a determination can be made regarding whether a break has been reached, as defined by the content uploader. If not, the process may return to block 556. If so however, at block 562, an advertisement that substantially matches predetermined duration criteria, demographic criteria, geographic criteria, and/or other criteria may be accessed. At block 564 the advertisement may be provided to the end-user computing device 102c during the identified break. At block 566 a determination can be made regarding whether the break has ended. If so, the process returns to block 556 to resume providing the content. If not however, the process returns to block 564 to continue providing the advertisement.
The live stream window 706 may be configured to provide the title of the content, the name of the uploader, the audio device being utilized, the video device being utilized, the expected bit rate, the current bit rate, the elapsed time. Also included in the live stream window 706 is a start broadcast option and a stop broadcast option. An indication of a time when the next break begins and/or ends is also included.
It should be understood that the flowcharts included herein show the architecture, functionality, and operation of a possible implementation of software. In this regard, each block can be interpreted to represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that in some implementations, the functions noted in the blocks may occur out of the order and/or not at all. For example, two blocks shown in succession may in fact be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved.
It should be emphasized that the above-described embodiments are merely possible examples of implementations, merely set forth for a clear understanding of the principles of this disclosure. Many variations and modifications may be made to the above-described embodiment(s) without departing substantially from the spirit and principles of the disclosure. Further, the scope of the present disclosure is intended to cover all combinations and sub-combinations of all elements, features, and aspects discussed above. All such modifications and variations are intended to be included herein within the scope of this disclosure.
This application is a continuation of PCT/US2011/42802 filed Jul. 1, 2011, which claims the benefit of U.S. Provisional Application No. 61/379,161 filed Sep. 1, 2010 and entitled Dynamically Providing Advertisement Data, both of which are incorporated by reference in their entireties.
Number | Date | Country | |
---|---|---|---|
61379161 | Sep 2010 | US |
Number | Date | Country | |
---|---|---|---|
Parent | PCT/US2011/042802 | Jul 2011 | US |
Child | 13178129 | US |