A software facility (“the facility”) for selecting targeted advertising messages for deployment with media sequences or with playlists of media sequences is provided. The facility operates in connection with a multimedia search engine, such as the multimedia search engines described in U.S. patent application Ser. No. 09/878,866 filed Jun. 11, 2001; U.S. patent application Ser. No. 09/878,876 filed Jun. 11, 2001; U.S. patent application Ser. No. 09/876,941 filed Jun. 8, 2001; U.S. patent application Ser. No. 09/876,925 filed Jun. 8, 2001; U.S. patent application Ser. No. 10/432,316 filed May 21, 2003; U.S. patent application Ser. No. 10/432,258 filed May 21, 2003; U.S. patent application Ser. No. 10/432,306 filed May 21, 2003; U.S. patent application Ser. No. 10/432,388 filed May 21, 2003; U.S. patent application Ser. No. 10/415,021 filed Apr. 24, 2003; U.S. patent application Ser. No. 10/415,216 filed Apr. 24, 2003; and U.S. patent application Ser. No. 10/415,210 filed Apr. 24, 2003, each of which is hereby incorporated herein by reference in its entirety.
In some embodiments, when a user submits a query made up of search terms to a multimedia search engine, the query is used for two purposes: (1) to generate a search result containing controls such as links that can be used to download and/or render media sequences satisfying the query; and (2) to select one or more media sequence advertising messages to be deployed with the media sequences satisfying the query when downloaded and/or rendered. In various embodiments, the facility deploys the selected advertising messages in a variety of ways, including (1) inserting the advertising message into, or “attaching it to,” the media sequences that satisfy the query, or (2) while a media sequence satisfying the query is being downloaded and/or rendered, displaying still image thumbnails of the selected advertising messages that the user may activate in order to view the selected advertising messages. For example, where a music video media sequence for the song Hollywood by the artist Madonna appears in the search result for the query “Madonna,” the facility may insert an advertising message for Madonna's newest album into the music video or display thumbnail for such advertising message alongside the music video. On the other hand, when the music video appears in the search result for the query “Hollywood,” the facility may instead deploy the music video with an advertising message for Hollywood tourist attractions. By selecting and deploying an advertising message with media sequences in some or all of the ways described above, the facility enables a media sequence provider to obtain additional revenue from presenting an advertising message likely to be relevant to the user performing the search.
In some embodiments, the facility also selects targeted advertising messages for deployment with sets of media sequences (hereinafter referred to as “playlists”). Playlists have become increasingly common on media sites as technology has allowed consumers and content producers to group various media sequences together based on common themes, interests, or other factors. Some media websites (such as Apple's iTunes) allow users to find pre-existing playlists by entering a search query to search for playlists that are generated by other users. Some media websites (such as AOL Music) allow users to create playlists by first entering a search query to locate a particular media sequence, then selecting a control that adds the media sequence into a personalized playlist. The facility stores search queries that are used by a user to locate pre-existing playlists, to generate new playlists, or to modify existing playlists. Prior to the use of a stored playlist, or contemporaneously with the use of a stored playlist, the facility uses the stored search queries to select one or more advertising messages to be presented with the media sequences in the playlist. The advertising messages that are presented may be updated each time the playlist is accessed in order to remove advertising messages from expired campaigns, to remove advertising messages that are not having a desired marketing effect, or to add new advertising messages. By providing targeted advertising messages to a playlist user, the facility enables a playlist publisher to increase the effectiveness of the advertisements over non-targeted ads.
The server computer system 150 contains a memory 160. The memory 160 preferably contains the facility 161, comprising one or more programs 162, as well as data 163. Data 163 typically includes data relating single or multi-word search terms to advertising messages of one or more media sequence types. Such data may reflect the results of various kinds of advertising message sales techniques, such as auctions or outright purchase of particular search terms by advertisers or their representatives. The memory preferably further contains a web server computer program 164 for delivering web pages in response to requests from web clients. While items 161-164 are preferably stored in memory while being used, those skilled in the art will appreciate that these items, or portions of them, maybe be transferred between memory and a persistent storage device 172 for purposes of memory management and data integrity. The server computer system further contains one or more central processing units (CPU) 171 for executing programs, such as programs 161-164, and a computer-readable medium drive 173 for reading information or installing programs such as the facility from computer-readable media, such as a floppy disk, a CD-ROM, or a DVD.
While various embodiments of the facility are described in terms in the environment described above, those skilled in the art will appreciate that the facility may be implemented in a variety of other environments including a single, monolithic computer system, as well as various other combinations of computer systems or similar devices connected in various ways. In particular, the facility may interact with users via a wide range of portable and/or wireless user interface devices, such as cellular telephones, pagers, personal digital assistants, etc.
The facility typically identifies rows of the advertising message information table that in the search terms column contains search terms that match search terms in the query. In some cases, the facility further seeks to match the media type of selected advertising messages either directly to the media type of each of the principal media sequences, or to a group of media types that includes the media type of the principal media sequence, such as a group of audio/video media sequence media types, or a group of media sequence media types supported by a particular media viewer program, etc. In some embodiments, the facility selects the advertising messages associated with all rows of the advertising message information table whose search terms match the query. In some embodiments, the facility selects the advertising messages associated with the rows of the advertising message information table whose search terms most significantly match the query.
While
Returning to
In steps 204-206, the facility loops through each media sequence in the set generated in step 202. In step 205, the facility generates a link that causes one of the advertising messages selected in step 203 to be presented in conjunction with the media sequence when the link is dereferenced. This advertising message is generally of a media sequence type that is either the same as, or otherwise compatible with the media sequence type of the media sequence. The advertising message may be chosen based upon information associated with the media sequence, such as metadata attributed to the media sequence. In some cases, the generated link causes more than one of the selected advertising messages to be presented in conjunction with the media sequence.
In some embodiments, the facility generates the link in step 205 in a manner that causes the selected advertising message to be attached to the media sequence. The generated link may cause the selected advertising message to be presented in various positions relative to the media sequence, such as before the media sequence, after the media sequence, during the media sequence, or throughout the media sequence or portions of the media sequence. Table 1 below shows sample contents for a link generated by the facility in step 205.
The portion of the sample link before the first question mark directs a request to a server capable of concatenating one or more advertising messages with a media sequence. The portion of the sample link between the first and second question marks identifies the media sequence to the server, while the portion after the second question mark identifies the advertising message to the server. When the server receives this request, it retrieves both the advertising message and the media sequence, concatenates them, and serves the concatenated result to the client. In some embodiments, the facility constructs the link in such a way as to direct the request to a server for the advertising message that is capable of retrieving and concatenating the media sequence, or a server for the media sequence that is capable of retrieving and concatenating the advertising message. In some embodiments, the facility encodes the contents of the link to make it more difficult or impossible to identify the URL of the advertising message and/or the media sequence without possession of data stored on the server. For example, as shown below in Table 2, the parameters containing the URLs for the media sequence in the advertising message may be replaced with numerical or other identifiers that are mapped to the corresponding URLs on the server.
In some embodiments, the link is constructed to point to a custom media metafile, such as an .asx file, hosted by the facility. Sample contents for such an .asx file corresponding to the example shown in Table 1 are shown below in Table 4.
In some embodiments, the facility constructs the link in step 205 in such a way as to cause the client to display the media sequence with thumbnail still images for one or more selected advertising message alongside.
In step 206, if additional media sequences in the set remain to be processed, then the facility continues in step 204 to process the next media sequence in the set, else the facility continues in step 207. In step 207, the facility generates a query result containing the links generated in step 205. In step 208, the facility replies to the query received in step 201 with the query result generated in step 207. After step 208, the facility continues in step 201 to receive the next query.
In some embodiments, the facility also enables targeted advertising to be added to playlists containing multiple media sequences.
In step 515, the facility applies the search query against a database or other catalog of media sequences in order to identify a set of media sequences that are responsive to the query. In some embodiments, the facility performs the search using multimedia search engine techniques described in one or more of the patent applications referenced above. In step 520, the set of media sequences that are determined to be responsive to the search query are displayed by the facility. Typically, search results are displayed in a list with the results having highest relevancy displayed at the beginning of the list and results having lower relevancy displayed towards the end of the list. In step 525, the facility generates an interface that allows the user to select whether one or more media sequences from the search results should be added to an existing playlist or used to build a new playlist. Those skilled in the art will appreciate that the user may select particular media sequences from the search results list using a variety of different input mechanisms, including dragging and dropping a search result into a playlist, selecting a search result using a checkbox or radio button, selecting a search result using a drop-down menu, selecting a media sequence after being redirected to the sequence from the search results, or any of a variety of other techniques.
In a decision step 530, a test is made by the facility to see whether the user elected to add a media sequence identified in the search results to a playlist. If a media sequence is selected to be added to a playlist, in step 540 the facility stores a pointer or other link to the selected media sequence and also stores the search query that was used to generate the search results containing the selected media resource. A data structure suitable for storing such information is provided in
With reference to
It will be appreciated that the facility may create a separate table 600 for each playlist created or added to by a user, or may combine multiple playlists into a common table and provide an additional identifier (not shown) to correlate each media sequence with a particular playlist.
While
Returning to
While the process depicted in
Once search queries have been associated with a playlist, the facility may generate one or more targeted advertising messages that are associated with the playlist and which may be delivered to the user when the user accesses the playlist.
When targeting advertising messages to media sequences contained in playlists, it will be appreciated that the search queries used to locate the media sequences or playlists may be used in a variety of ways. For example, if a single search query is associated with each media resource, each search query might only be used to target the advertising message associated with that particular media sequence. In this fashion, the ads will be tailored to user preferences at the media sequence level. Alternatively, all of the search queries associated with the media sequences in a particular playlist may be used as a group to target the advertising messages to the playlist. In this fashion, the advertising messages portrayed to the user will reflect advertising associated with the search queries as a whole, rather than as individual queries.
In step 740, a message ID identifying the advertising message is stored in association with the media sequence.
It will be appreciated that table 800 is merely representative of the type of correlation that may be drawn between advertising messages and media sequences in a playlist. A number of variations may be made to the mapping and to the table structure. More than one advertising message may be correlated with each media sequence, for example, allowing the facility to deliver one (or more) advertising message prior to the media sequence, one (or more) advertising message during the media sequence, and one (or more) advertising message after the media sequence. If more than one advertising message is correlated with each media sequence, the facility may also present a user with a choice of advertising messages to receive such as via the user display depicted in
Returning to
It will be appreciated that the targeting process of identifying which advertising messages to deliver with media sequences may be performed at various times prior to delivery of the actual advertising messages. For example, the targeting process may be performed when the user initially constructs a playlist or when the user locates a previously-generated playlist. An advantage of identifying advertising messages when the playlist is first generated or located is that the messages are immediately available for delivery whenever the user accesses the playlist in the future, without having to require further processing. Alternatively, the targeting process may be performed when the user accesses a playlist to review the media sequences in the playlist. Identifying advertising messages when a user accesses the playlist is obviously advantageous in that the advertising messages will be more up-to-date and potentially more relevant to a user. Further timing variations are possible. For example, a background process may periodically be run by the facility in order to update the advertising messages associated with a playlist on a periodic basis. Periodically updating the targeting may involve deleting advertising campaigns that have expired (i.e., are no longer actively run by the advertiser), inserting new advertising campaigns, and removing poorly performing advertising campaigns, as examples.
When the facility updates the advertising targeting and associates a new message with a particular media sequence, the facility may also store an indication of the previous advertising message that the new message is replacing. As shown in
When a user accesses a playlist that has advertising messages correlated with media sequences, the advertising messages may be delivered before, during or after each media sequence, before or after each playlist as a whole, or any combination thereof. Even though advertising messages are correlated with a media sequence in the table, the facility may elect to not utilize one or more of the correlated messages when the media sequence is presented to the user. It will be appreciated that by using search queries to target advertisements to playlist users, better results are achieved than untargeted ads. Moreover, because playlists typically group together media sequences of a particular category or genre, better targeting will typically be achieved since a greater understanding of a user's interests may be predicted from search queries used to construct the playlist.
Those skilled in the art will appreciate that the steps shown in
In some embodiments, rather than deploying an advertising message with a primary media sequence by its construction of a link to the primary media sequence that is included in the search result, the facility instead includes either the advertising message itself or a link to the advertising message within a version of the primary media sequence that is served to the user who receives the search result. In these embodiments, where the user saves a copy of the served media sequence, the advertising message can be presented to the user each time the user plays the saved media sequence.
In some embodiments, rather than selecting an advertising message to deploy with a primary media sequence before generating the search result, the facility instead defers selection of an advertising message to deploy until after the user has selected the media sequence from the search result for retrieval. For example, the link to a media sequence included in the search result may include information usable by the facility to select an advertising message, such as search terms contained in the query. Table 5 below shows a link similar to the link of Table 2 in which the advertising message identifier parameter has been replaced with a parameter indicating the query string “general motors.”
Further, in some embodiments, the facility stores information inside the primary media sequence that causes a media player program playing the media sequence to call the facility for selection and deployment of an advertising message each time the media sequence is played. This “late-binding” of advertising messages can enable the facility to select even the most recently-introduced advertising messages. Indeed, it can cause advertising messages to be presented that are not available when the search result is generated, or even when the media sequence is served.
It will be appreciated by those skilled in the art that the above-described facility may be straightforwardly adapted or extended in various ways. For example, the facility may be used with media sequences and/or advertising messages of various media sequence types. Further, the facility may use a variety of mechanisms to attach advertising messages to media sequences. Additionally, the facility may attach advertising messages to media sequences made available in a variety of forms, such as streaming or downloaded forms. Also, the facility may be implemented in conjunction with a variety of other multimedia searching and/or advertising functionality. Further, the facility may be used by various combinations of parties, including advertisers, advertising agencies, electronic publishers, intermediaries of various types, etc. Advertising revenue may be collected from various combinations of these parties, and distributed to various combinations of these parties. While the foregoing description makes reference to preferred embodiments, the scope of the invention is defined solely by the claims that follow and the elements recited therein.