WO2007130116A1 - System and method for assembling data - Google Patents

System and method for assembling data Download PDF

Info

Publication number
WO2007130116A1
WO2007130116A1 PCT/US2006/035989 US2006035989W WO2007130116A1 WO 2007130116 A1 WO2007130116 A1 WO 2007130116A1 US 2006035989 W US2006035989 W US 2006035989W WO 2007130116 A1 WO2007130116 A1 WO 2007130116A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
computer program
program product
executable media
user
Prior art date
Application number
PCT/US2006/035989
Other languages
French (fr)
Inventor
Jay Rifkin
Phil Gatch
Original Assignee
Digicorp, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Digicorp, Inc. filed Critical Digicorp, Inc.
Publication of WO2007130116A1 publication Critical patent/WO2007130116A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44213Monitoring of end-user related data
    • H04N21/44222Analytics of user selections, e.g. selection of programs or purchase activity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/254Management at additional data server, e.g. shopping server, rights management server
    • H04N21/2543Billing, e.g. for subscription services
    • H04N21/25435Billing, e.g. for subscription services involving characteristics of content or additional data, e.g. video resolution or the amount of advertising
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2665Gathering content from different sources, e.g. Internet and satellite
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2668Creating a channel for a dedicated end-user group, e.g. insertion of targeted commercials based on end-user profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43072Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of multiple content streams on the same device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal

Definitions

  • Embodiments of the invention relate to the field of computer software and hardware system. More particularly but not by way of limitation, embodiments of the invention are directed to a system and method for assembling data from multiple network sources into executable media packages configured for targeted dissemination to an audience of requesting viewers which may include advertisement tracking and incentivized click-thrus.
  • the smaller files sizes are a result of the way data is stored in the MP3 file (as pulse-code modulation-encoded (PCM) audio data where portions that are considered less important to human hearing are discarded).
  • PCM pulse-code modulation-encoded
  • Other audio data formats such as Advanced Audio Coding (AAC) which is also known as MPEG-2 Part 7 also provide a compressed format for distributing music files.
  • AAC Advanced Audio Coding
  • P2P peer-to-peer systems
  • a pure P2P network is a network that relies on the computer power and bandwidth of each computer / peer that is connected to the network.
  • a P2P network does not have the notion of clients or servers but has each peer function as both a client and a server. This model of network arrangement differs from the client-server model where communication is usually to and from a central server.
  • Peer-to-peer architecture embodies one of the key technical concepts of the Internet, described in the first internet Request for Comments, "RFC 1, Host Software.” More recently, the peer-to-peer concept achieved wide spread recognition in the general public in the context of the absence of central indexing servers in architectures used for exchanging multimedia files such as audio data.
  • Podcasting is about giving users customization and control over the audio and video data the user desires. In essence the goal in podcasting is to create audio or video content for an audience that wants to listen to the content when they want, where they want and how they want.
  • Another problem existing solutions have is that there is no effective way to manage the podcast content based on audience characteristics such a demographics or geographic location. For instance, the same content is typically distributed to all users who subscribe to the podcast without further customization based on preferences or likely preferences of the user.
  • Known systems do not allow for podcast related advertisement tracking or podcast related free download of media to incentivize click-thrus.
  • Embodiments of the invention provide users with an innovative way to create and distribute executable media packages.
  • Systems designed to implement one or more attributes of the invention configured to create or modify an executable media package based upon input obtained from a plurality of contributing users.
  • Distribution of the executable media package is achieved using any communication and computational mechanism that enables users to obtain and view the contents of the executable media package.
  • the executable media package comprises data such as podcast data or other data obtainable via a subscription feed such as Really Simple Syndication (RSS) protocol.
  • RSS Really Simple Syndication
  • the podcast data is assembled from media data and generated in one embodiment of the invention via transcoding process that outputs a generated podcast file with encoded chapter data and metadata.
  • the system is configured to accept media data that contains pretagged inventory where the pretagged inventory is associated with a specific user attribute such as a demographic or geographic characteristic.
  • An advertisement targeted at a specific demographic group is an example of pretagged inventory.
  • the subscription feed is generated as part of the publication process and generally summarizes the content of the media data. Hence the subscription feed is what provides users who wish to execute the executable media package with a way to subscribe to a specific set of executable media packages.
  • an executable media package is assembled for subscription embodiments of the invention provide a mechanism for distributing the executable media package to achieve a business goal such as the desire to have viewers within a specific demographic access to the message contained therein. This distribution occurs when the executable media package is published along with the embedded metadata. Once published the executable media data is disseminated to requesting users (e.g., those subscribed to the feed) upon request.
  • One or more embodiments of the invention enable the tracking of advertisement viewing.
  • layering for example in a podcast file allows hidden functionality to be bundled into the podcast.
  • Interactive Flash, pictures, audio, advertisements and scripts may be embedded into a podcast.
  • a script may be utilized to record the IP address and time and date of the tracked event.
  • a MOV file embedded into a low layer that is really a script, generates an error which allows the script to record the IP address and time and date of the execution of the script.
  • timestamping events the verification of advertisement downloading and viewing is achieved.
  • the information related to the advertisement viewing may be tracked and reported to an advertiser or other content provider.
  • specific targeting of advertisements may occur when a user opts into a profiling form, or when the user purchases something for example.
  • one or more embodiments of the invention enable incentivized click-thru functionality. For example, by presenting an advertisement embedded into a layered podcast, obtaining a click-thru, redirecting to a merchant who delivers free media content, incentivized click-thru functionality is achieved.
  • Using these embodiments of the system allows for the generation of income when content producers or advertisement providers pay a merchant for click-thrus.
  • any free giveaway of media that results in payment to the content creators provides an incentive for content creators to enter that market.
  • a click- thru cost of 63 cents with a cost per song of under 8 cents provides a large incentive for using an embodiment of the invention compared to the United States market where a click-thru cost of 1 dollar with a cost per song of 60 cents providing a lower, yet positive incentive.
  • a percentage of click-thru revenue may be contracted to a granting authority for the exclusive license to provide the system enabled herein.
  • Ad content may be auctioned out allowing for different media buyers to provide ads that dynamically change based on any variable, such as the time of viewing, after a number of ads has been displayed or based on the profile of the user viewing the ad or any other characteristic associated with the user, location of user, time, or any other variable.
  • Figure IA is a block diagram showing a system and method for assembling data from multiple network sources into executable media packages in accordance with one or more embodiments of the invention.
  • Figure IB is a high-level block diagram that illustrates the basic functionalities required to implement a solution that assembles data from multiple networked sources into media content for purposes of distributing said media content to a targeted audience of requesting users.
  • Figure 1C provides an illustration of the methodology implemented by one or more embodiments of the invention via a chaptering / metadata definition interface.
  • Figure 2 provides an example of the media collection interface configured to provide upload functionality in accordance with one or more embodiments of the invention.
  • Figure 3 illustrates a chaptering interface that provides users with a tool for inserting navigation data and other metadata such as hyperlink data and images.
  • Figure 4 illustrates a media management interface for enabling a plurality of users to access and manage the media data pool.
  • Figure 5 illustrates a publishing interface for enabling authorized users to publish executable media packages to a subscription feed.
  • Figure 6 illustrates a search interface that utilizes indexed data associated with executable media packages.
  • Figure 7 illustrates channel or episode specific advertising in accordance with one or more embodiments of the invention.
  • Figure 8 illustrates an executable media package in the form of a podcast that is configured to save click-thru information and provide a user interface element that results in a free product giveaway if the user clicks-thru the link.
  • Embodiments of the invention provide users with an innovative way to create and distribute executable media packages.
  • systems designed to implement one or more attributes of the invention are coupled to an interconnection fabric such as a computer network and configured to create or modify an executable media package based upon input obtained from a plurality of contributing users (see e.g., Figure IA, 171, 172, ... 173n).
  • the system provides an enterprise solution that can scale to any number of users.
  • Distribution of the executable media package can be achieved using any communication and computational mechanism that enables users to obtain and view the contents of the executable media package (see e.g., Figure IA, 170).
  • the executable media package comprises data such as podcast data or other data obtainable via a subscription feed such as Really Simple Syndication (RSS) protocol.
  • the podcast data is assembled from media data 176 and generated in one embodiment of the invention via transcoding process 174 that outputs at block 175 a generated podcast file with encoded chapter data and metadata.
  • the generated podcast may include advertisement tracking and incentivized click-thrus in one or more embodiments of the invention.
  • the system is configured to accept media data that contains pretagged inventory where the pretagged inventory 180 is associated with a specific user attribute such as a demographic or geographic characteristic. An advertisement targeted at a specific demographic group is an example of pretagged inventory.
  • the subscription feed is generated as part of the publication process at block 181 and generally summarizes the content of the media data.
  • the subscription feed is what provides users who wish to execute the executable media package with a way to subscribe to a specific set of executable media packages.
  • an executable media package is assembled for subscription embodiments of the invention provide a mechanism for distributing the executable media package in order to achieve a business goal such as the desire to have viewers within a specific demographic access to the message contained therein. This distribution occurs via at block 182 where the executable media package is published along with the embedded metadata. Once published the executable media data is disseminated to requesting users (e.g., those subscribed to the feed) upon request. If updates to the executable media package are available 184 or if new media is published users can obtain the updated media 185 via the subscription feed process.
  • the invention is not limited to any specific user interface layout one or more embodiments of the invention make use of a series of interfaces configured to optimize the workflow process associated with generating executable media packages in cases where multiple users contribute to the creation of the executable media package. Because systems embodying the invention are able to accept input from multiple contributing users the system is well suited to become an integral component of any post-production workflow intended to allow multiple users to contribute to the creation of a set of executable media packages.
  • software implementing aspects of the invention present a media collection interface configured to provide users with a way to identify data for inclusion into the executable media package, a chaptering interface for users to define navigation data and/or other metadata to be associated with a specific playback point, a media management interface for organizing and previewing media, and a publication interface for releasing the executable media packages to an audience.
  • a media collection interface configured to provide users with a way to identify data for inclusion into the executable media package
  • a chaptering interface for users to define navigation data and/or other metadata to be associated with a specific playback point
  • a media management interface for organizing and previewing media
  • a publication interface for releasing the executable media packages to an audience.
  • Systems embodying one or more aspects of the invention may be configured to implement various levels of user control.
  • the general purpose of having such control in a multiuser environment is to provide a mechanism for production oversight prior to dissemination of the completed executable media package. This enables an administrator to control at the user level which users can access data and media data of a particular type.
  • the user responsible for final review and publication of the executable media package may, for instance, differ from the users who create the content. In cases where access is restricted the restricted user is only given access to data within the users permission level.
  • Figure IB is a high-level block diagram that illustrates the basic functionalities required to implement a solution that assembles data from multiple networked sources into media content for purposes of distributing said media content to a targeted audience of requesting users.
  • the system contains an upload function (100) for uploading media data that is to be included into the executable media package.
  • Audio data, video data, image data, text data and other forms of media content are some examples of the type of media data that can be uploaded for use.
  • media data can be obtained from anywhere on the local machine or the network that is accessible to the contributing user.
  • a user may for instance use locally stored audio, images, or video data and/or use the local client computer to capture such data.
  • media data is stored on the local system of the contributing user and uploaded to a remote system that is accessible to other contributing users.
  • the system uses a client/server topology where there are multiple clients configured to communicate with a scalable server. Users may also obtain media data from a other computers accessible via the network and then upload the media data to the server.
  • this client/server topology makes use of a thick client such as a JavaTM Swing application communicating to a remote FTP server in the backend.
  • FIG. 2 provides an example of the media collection interface configured to provide upload functionality in accordance with one or more embodiments of the invention.
  • media collection interface 200 contains a screen region having functionality that enables users to select media data via media selection implements 201-204.
  • a command buttons provide users with a way to select audio 201, text 202, video 203 and images 204.
  • the desired data is selected it is shown in the files to upload region 205 of the media collection interface.
  • the select images command may be utilized to select an advertisement source with a level of indirection that allows for dynamic advertisement inclusion.
  • advertisement tracking components may be introduced into the podcast for metric generation functionality purposes. Alternatively, during the publish process, advertisement tracking components may be installed into the podcast based on any advertisement components that exist in the podcast whether direct or through a level of indirection.
  • Uploaded files are accessible for other users to access and take action upon.
  • Chaptering interface 300 which is depicted at Figure 3 provides users with a tool for inserting navigation data and other metadata such as hyperlink data and images.
  • Chaptering interface 300 is where users provide the inputs utilized by the assembly function 102 of Figure IB.
  • the general purpose of assembly function is to generate executable media packages and define metadata to be associated with a specific package.
  • Figure 1C provides a more detailed illustration of the methodology implemented via chaptering interface 300.
  • media data is obtained for playback.
  • the "choose audio file" 301 command initiates a mechanism for obtaining media data that takes the form of audio data.
  • media data playback occurs.
  • users can perform various chaptering functions 302, 303, 304 to associate chaptering information and metadata with a particular media data timecode.
  • the set first chapter function 302 enables the user to define where in time the first chapter begins (start time), the duration of the chapter, and also provide other metadata such as a chapter title, image data, and hyperlink information such as a URL and URL title.
  • the create chapter function 303 defines the start time, duration and associated metadata for additional chapters. These chaptering functions are how the system obtains chaptering input and metadata associated with a specific time code (e.g., step 152). Users can also associate default metadata such as images 305 and other information such as URL 306 and title 307 information with the media data at a non-specific time code.
  • the delete chapter function removes a chapter and if necessary the system renumbers the existing chapters to maintain proper numbering.
  • systems embodying one ore more aspects of the invention resort and renumber the chaptering data to maintain sequential organization (e.g., 154).
  • the chaptering functionality is complete and the user may cause the system to transcode the media data into an assembled executable media package.
  • the executable media data is a podcast this is accomplished by initiating a create executable media package / podcast media file command 308 which in turn causes the system to assemble a executable media package / podcast enabled or compliant media file.
  • the system executes at the command level functions to input the media data and a Data Transfer Object (DTO) containing XML based chapter information.
  • DTO Data Transfer Object
  • the DTO functions as a conduit for client/server communications in that the data used by the client is put into a serializable object and sent to the client for handling. Hence the DTO is used to provide the client with the information needed to display the data.
  • the client performs HTTP posts to communicate with the server.
  • media management function 104 contains functionality for enabling a plurality of users to access and manage the media data pool containing data chaptered using the chaptering interface discussed above. An example of the media management interface is depicted in Figure 4.
  • Screen region 401 provides a list of chaptered executable media packages that are available in an assigned workspace.
  • screen region 401 provides a list of audio files wrapped within an MPEG-4/7 container format and having associated metadata such as that defined via chaptering interface 300.
  • users may select the chaptered files using a pointing device and execute a download operation to the network location identified with destination command 403 via command 402. Having this functionality gives users a mechanism to preview and test chaptered executable media packages on one or more local systems before they are released for publication.
  • the executable media packages are in final form users with the proper level of access make use of a publishing interface to submit the executable media data to a subscription feed.
  • FIG. 5 depicts an example of a publishing interface for submitting executable media packages to a subscription feed.
  • Publishing interface 500 contains various input regions for obtaining metadata to be associated with the publication.
  • an executable media file e.g., 501
  • information such as category information 502, a title 503, a description 504 about the contents of the package to be published and other extensions to the metadata such as link information, layout information or client specific information used by the client program that will be used to run the executable media package.
  • Preview 505 provides users with a way to review the executable media package before submitting it for publication.
  • pre and/or post-tagging of the executable media file occurs.
  • the executable media file is an MPEG-4/7 video/audio file published data
  • the pre- embedded information enables batch publishing of episodic/syndicated content for distribution. This feature allows for the instant publishing of RSS metadata associated with an attachment as it is posted to multiple channels for distribution.
  • the publishing user may optionally associate demographic information with an executable media file and/or target a specific channel or even an episode on a channel at an intended target user. This enables the publisher to offer content based on a specific user profile or demographic. Profile information is typically obtained from users during a sign-up process but can also result from recording user behavior over time. When a user who has the targeted profile logs-in to the system access is granted to the published executable media package associated with their profile. [0036] In one embodiment of the invention the information associated with a specific executable media package (or a channel containing multiple media packages) is indexed and can be used for searching (e.g., Figure IA, 186).
  • the system makes use of manually entered or automatically generated index data associated with any executable media packages and thereby enables users to perform searches that are semantics based, content based, or based on metadata.
  • indexing approach it is possible for users to search based on people, places, events, scenes, color, texture, patterns, sound, genre, tile, author, dates or any other information that might identify one or more executable media packages.
  • the system is configured so that voice, image, and speech-to-text software auto-catalogue and index content.
  • This process automatically creates metadata that in turn enables text-based searches for specific multimedia content.
  • the Metadata created can be added to the RSS description or other custom field.
  • the software can capture the video (or audio) frame/time code/subject and create a .jpg snapshot frame to use for purposes of having a visual reference cue 602. For example a "Tom Cuise + Katie Holmes" search entered into a search interface 601 would query the database and find a .jpg of the frame w/ time code stamp (see e.g., Figure 6, 600).
  • the search could pull up multiple reference jpg's from a library and display them as a grid collection along with text information.
  • This service can be used by the Content creator and end/or users to search for content. Advertisers can use the search service to find contextual content that matches their product campaign profile.
  • a search within an episodic syndication post could appear as follows:
  • One or more embodiments of the invention are configured to implement channel or episode specific advertising (see e.g., Figure 7). For instance, multiple channels of the same content based on demographics (age, Income, interest). Ads can be changed on a daily, weekly, monthly basis or at other periodic intervals as desired. Advertisements can be submitted as follows in audio, video or enhanced audio or video form. Advertisers may optionally embed hyperlinks into the enhanced media (e.g., enhanced podcasts) and optionally implement trackable unique affiliate marketing programs. Click-thrus to a hyperlink can then be measured and used to access effectiveness, obtain user provided data and/or extend ad viewing time. Using layering for example in a podcast file allows hidden functionality to be bundled into the podcast which may be utilized to track advertisement viewing.
  • Interactive Flash, pictures, audio, advertisements and scripts may be embedded into a podcast.
  • a script may be utilized to record the IP address and time and date of the tracked event. For example, a MOV file embedded into a low layer that is really a script, generates an error which allows the script to record the IP address and time and date of the execution of the script. Any other method of determining the time that an advertisement is viewed by a user is in keeping with the spirit of the invention. By timestamping events, whether through hidden embedded functionality or through any other method, the verification of advertisement downloading and viewing is achieved. The information related to the advertisement viewing may be tracked and reported to an advertiser or other content provider. In addition, specific targeting of advertisements may occur when a user opts into a profiling form, or when the user purchases something for example. As shown in Figure 7, user B may have provided profile information that allows for the targeting of advertisements AD 2 and AD 3 to user B.
  • channels 1-A, 1-B or 1-C are all different variations of a channel having the same basic episodes but having variable advertising content (e.g., AD 1, AD 2 and AD3).
  • the subset of the channel that is provided to the user in the form of an executable media package depends on profile or login information of the user or on any other characteristic associated with the user, time or any other characteristic.
  • user A subscribes to the system the user might receive Channel 1-A
  • user B could receive Channel 1-B
  • a user C might receive Channel 1-C.
  • the difference between what channel users receive is based on information provided by the user or information learned about the user through recording the users usage habits.
  • the system can provide metrics to advertisers that indicate the level of viewing of advertisements that is occurring.
  • one or more embodiments of the invention enable incentivized click-thru functionality. For example, by presenting an advertisement embedded into a layered podcast, e.g., podcast for channel IA and obtaining a click-thru, incentivized click-thru functionality is achieved when redirecting to a merchant who delivers free media content.
  • the system provides a free product, for example a free media file or song.
  • the free song is provided.
  • the cost of the song is less than the price of the click-thru, then a profit may be generated.
  • a user B clicks on AD3 then the user may be presented with a website associated with AD3 and when the system records the click-thru, the advertiser pays the merchant for redirecting the user.
  • Using these embodiments of the system allows for the generation of income when content producers or advertisement providers pay a merchant for click-thrus.
  • any free giveaway of media that results in payment to the content creators provides an incentive for content creators to enter that market.
  • a click-thru cost of 63 cents with a cost per song of under 8 cents provides a large incentive for using an embodiment of the invention compared to the United States market where a click-thru cost of 1 dollar with a cost per song of 60 cents providing a lower, yet positive incentive.
  • a percentage of click-thru revenue may be contracted to a granting authority for the exclusive license to provide the system enabled herein.
  • Ad content may be auctioned out allowing for different media buyers to provide ads that dynamically change based on any variable, such as the time of viewing, after a number of ads has been displayed or based on the profile of the user viewing the ad or any other characteristic associated with the user, location of user, time, or any other variable.
  • Figure 8 illustrates an executable media package in the form of a podcast that is configured to save click-thru information and provide a user interface element that results in a free product giveaway if the user clicks-thru the link.
  • Executable media package is shown visually in viewer 801. hi this example, the executable media package or podcast is depicted with link 802 that results in the display of web store 850 and link 803 that results in a download of a free product, or display of a web site or web store where the product is free or is marked as free by executing link 803.
  • Executable media package play position 804 shows that the executable media package is approximately 2/3 through playing.
  • link 802 or 803 may be displayed so that the links are available only at that portion of the podcast.
  • the media played in viewer 801 may include advertisements for example that are viewed before links 802 and 803 are displayed to ensure that clicks through these links signify that a user has been shown an advertisement.
  • hidden scripts may be utilized to ensure that advertisements have been seen by a user.
  • the IP address, advertisement ID and timestamp of viewing may be saved on any computer for further processing such as billing of an advertiser.
  • a content producer may pay the merchant for the product and yield a net profit by charging more for a click-thru to an advertiser.
  • a net profit is produced.
  • the merchant may also pay the content producer for directing users at their website or web store as well.
  • the advertiser generally pays a click-thru and page view fee to the content producer that has generated the podcast.
  • the workflow process for handling targeted advertising involves the content provider uploading executable media packages and submitting a plurality of advertising content (e.g., ADl, AD2, AD3) via a publishing process.
  • a plurality of advertising content e.g., ADl, AD2, AD3
  • One or more embodiments of the invention add the channel to a database of inventory from which advertisers can search and select a channel from the available inventory within which to place advertisements.
  • the system creates an ad inventory database by searching for "black" frames (or silent audio) longer than a threshold time period that is typically less than the time period users can easily perceive or generate frames from videotape archives.
  • Time code logs for the advertisements are included in the database and ads can either be manually or automatically submitted at chosen time intervals (e.g., every 15 minutes, bookend, (Beginning/Middle/End)). Advertisers can then search and preview content based on entered search criteria.
  • advertisers or media buyers can drill deeper to obtain channel/episode information, determine inventory availability, and ascertain the cost of placing the advertisement. Once an advertisement is selected it can then be placed into the appropriate content as needed.
  • An administration console allows advertisers to track and monitor an ad campaign and make changes to the campaign as desired.
  • HTTP connection module comprises a collection of classes working together to make http requests and receive http responses from the backend server of the application.
  • the HTTP connection module may also pass the user login data and a Jsession Id generated by the application server for all communications with the client.
  • the connection module will store this data and use this for all communication with the backend server (Server Side).
  • Swing UI module contain the program code used to implement the various interfaces described throughout this document and in one embodiment of the invention comprises the various Swing components and widgets to be used in the client.
  • An observer framework is used for event handling.
  • Session Data Module is a storage container containing the server session data (e.g., userinfo and JSession Id etc). This data may, for instance, be contained within the HTTP connection module and written to a log locally for debugging purposes.
  • server session data e.g., userinfo and JSession Id etc.
  • Data Transfer Object is a storage container configured to act as a conduit for the server to communicate with the client.
  • the data used by the client is put into this serializeable object, sent to the client and used by the client for display data.
  • the client performs HTTP posts to communicate with the server.
  • Struts application which follows the MVC (Model View Controller) architecture and has Multi-part form support used to post file data.
  • the web application use these primary URL mappings to service requests.
  • An Upload Files request receives multipart data from the client and writes it into the account folder as a file.
  • the data that is uploaded in this context is the original source data that may or may not be included in the executable media packages when they are finished. Duplication files names are also handled.
  • a File Download service is used in one embodiment of the invention by the create Podcast command to play an audio file or in the more generalized case to play any media data.
  • the media data is downloaded using HTTP and played in the Java QuickTime Player in a way that outputs the current time code for purposes of creating chapter data.
  • the chapter data is written to a serializeable DTO and posted once the Create Podcast Button is pressed.
  • Login and Log Off functionality utilizes the user table. This module will be used to manage and control user access. Primarily maintaining sessions when users are logged on or off of the system. For instance, one implementation of the invention makes use of a database to persist user data. This is helpful in a multi-user context because users can be given access levels and an administrator can exercise control over each users. Although not set forth in the table below the database can also be utilize log tables to log the user activity. On the viewer side of things a user login is used to associate the user with a particular profile and thereby enable advertisers to target specific content at the user.
  • the create podcast service is called when the Create Podcast button is pressed (see e.g., Figure 3).
  • input is the file names and the DTO containing the XML based chapter info is processed at a command level to create the Podcast.
  • the Data Access Object (DAO) module is used to allow the application to access the Database and uses a JDBC to connect to the database. Connection pooling provides a way to increase availability.
  • DAO Data Access Object
  • RSS feed In one or more embodiments of the invention the basic information defined via publishing interface 500 is submitted in the form of an RSS feed containing XML data.
  • the outer container is ⁇ rss> tag that encloses a ⁇ channel>.
  • the channel contains elements or tags that collectively define feed properties via the accompanying metadata. Following the channel elements are items that define the actual feed content. Each item within the XML data may define a unique entry, and a feed can contain multiple items.
  • An ⁇ item> element for instance might define a headline, image, or audio file. Closing ⁇ /channel> and ⁇ /rss> tags will follow the items in order to maintain proper syntax. Variations of the example show below will occur depending upon the data provided via the publishing interface and hence one of skill in the art will recognize that the example set forth below is a generalized example that is none specific to an actual publication case.
  • the Log In to Client module provides the functionality that enables users to login to the system. Since one or more embodiments of the invention make use of a thick client for the Application front end, the login dialog can be presented once the user clicks on the application. Once the user enters the username and the password and clicks on logon, the Event handler framework on the client checks the triggered event (login) and passes over the input widget info over to the LoginAction Class. This class is programmed to perform validation of the input data (username/ password) and then create a Data Transfer Object (DTO) with the data and pass it to the HTTP connection Module which then calls the Login service on the Application server. The application server passes this request to the Login Action class on the server side.
  • login triggered event
  • DTO Data Transfer Object
  • This server side Login Action class then authenticates the user and sends back to the user the userinfo and the Jsessionid in a DTO.
  • the user is logged in and is shown the main page in the application client. If the user entered data is invalid the user receives an error message.
  • the Main Menu UI module contains functions for rendering the interface the user views once logged in.
  • the HTTP connection module obtains the response from the server about the login attempt and if it is successful places the userinfo data and the Jsession id in the Sessionlnfo module and calls the Main page UI widget.
  • this widget contain numerous buttons with labels for functions such as: User can upload audio files (e.g., *.m4a and other audio file types) User can upload image files (e.g., *.gif, jpg, .png and other image file types), (Transcoding will support multiple file formats). Create Podcast File, Create RSS Feed from existing Podcast enabled audio files.
  • the Upload Audio Files module provides the user with an upload media data option.
  • the event handler framework present the user the LOAD media widget (e.g., audio or video data) which contains a button to show the file chooser.
  • the user can use the filechooser to choose a media file.
  • the user may select the file and then click on upload button.
  • the event handler framework posts this multipart data along with the session info to the Application server.
  • the application server then calls the UploadAudio Action class which parses the multipart data and writes it to the directory of the account associated with the user. While this is happening the user is optionally shown a dummy progress bar.
  • the file is uploaded and the user get a file upload finished dialog with option to upload more. If the user selects yes then the event handler framework shows the same Audio File upload widget again.
  • the Upload Image Files module is executed when the user initiates a command to obtain an image.
  • the event handler framework responds by presenting the user the LOAD Image widget. This widget contains a button to show the file chooser. The user can use the filechooser to choose an image file, select the file and then click on upload button.
  • the event handler framework posts this multipart data along with the session info to the Application server.
  • the application server calls the Uploadlmage Action class that parses the multipart data and write it to the image directory of the account associated with the user.
  • the file is uploaded and the user will get a file upload finished dialog with option to upload more. If the user selects yes then the event handler framework shows the same Image File upload widget again.
  • the event handler framework presents the user the Create Podcast widget.
  • This widget contains a button to choose the audio file.
  • the connection module calls the Application server with this request.
  • the application server then passes the request to the ShowServerAudio files class.
  • This class will read the names of all the files in the account directory associated with the user and puts these filenames in a DTO and sends the response back to the client.
  • the client passes this DTO response to the filechooser widget and shows it the user.
  • the user may then select a file and click the view button.
  • the event hander framework sends this request to the HTTP connection module.
  • the connection module calls the Application server which in turn passes the request to the DownloadServerAudio files class.
  • This action class calls the download module which sends back the client the file chosen by the user.
  • the HTTP connection module can download this file to a temporary location and start playing it in a java based QuickTime player widget.
  • the Create Podcast file module may be utilized to introduce metric generation of advertisement viewing.
  • the metric generation may comprise inserting an event time stamp module that is configured to time stamp the viewing start and end times for an advertisement. By sending the IP address, advertisement ID and start and stop times to a computer configured to store advertisement information, advertisement metrics may thus be stored.
  • the user can click on the create chapter button.
  • the event hander framework creates an editable chapter name with the time code on the player.
  • Users can create multiple chapters.
  • the data is stored in a Data Object.
  • each of the chapters has a button.
  • the user can click on the button to associate the (image file) gif file to the chapter. This is done in a similar way to the previously explained method (View Audio File).
  • the create PODCAST Podcast File
  • This button passes the chapter data object to the HTTP connection module which passes the request to the application server.
  • the application server passes the request to the CreatePodcast Action class which processes the data and passes it to a UNIX command line utility that convert the audio to the Podcast file.
  • the Podcast file is stored in an output directory.
  • the application server passes the request to the ShowPodcastFiles action class.
  • This class reads the names of the Podcast files in the account directory associated with the user, places these filenames in a DTO and sends the response back to the client.
  • the client passes this DTO response to the filechooser widget and presents it to the user.
  • the user may then select a file and click the create RSS feed button.
  • the event hander framework send a request to the HTTP connection module.
  • the connection module calls the Application server with this request.
  • the application server then passes the request to the CreateRSSFeed action class that calls the RSS Feed module.
  • This module passes the input request parameters to the RSS feed command line utility which generates an RSS feed out of the input.
  • Media File Player module The player used to play the media data (e.g., audio data) will need to play, scroll, stop playback, and display timecode.
  • Q4J player Java QuickTime player
  • Q4J player Java QuickTime player
  • the Logout module provides the functionality needed to log the user off the system. Once the user clicks on logoff, the Event handler framework on the client checks the triggered event (logoff) and passes over the input widget info over to the LogOffAction Class. This class invalidate the user session and send a response to the client about successful logout. Data in the Session module of the client is typically be removed.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Social Psychology (AREA)
  • Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Astronomy & Astrophysics (AREA)
  • Computer Graphics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

One or more embodiments of the invention are directed to a system and method for assembling data from multiple network sources into executable media packages configured for targeted dissemination to an audience of requesting viewers. Gathering of advertisement viewing information and click-thrus is obtained by layerring scripts into the executable media pakage to determine if advertisements have been viewed. A free product or service may be provided to a user that has clicked thru a link, with compensation from the content producer to the merchant for the product and compensation from the advertiser to the content producer which yields a net profit.

Description

SYSTEM AND METHOD FOR ASSEMBLING DATA
INVENTORS: Jay Rifkin Phil Gatch
BACKGROUND OF THE INVENTIO FIELD OF THE INVENTION
[0001] Embodiments of the invention relate to the field of computer software and hardware system. More particularly but not by way of limitation, embodiments of the invention are directed to a system and method for assembling data from multiple network sources into executable media packages configured for targeted dissemination to an audience of requesting viewers which may include advertisement tracking and incentivized click-thrus.
DESCRIPTION OF THE RELATED ART
[0002] Modern communication systems provide an efficient mechanism for rapidly communicating data to a universe of multiple recipients. Giving users such capabilities has dramatically changed existing distribution systems for digital media. Radio and television for instance are becoming replaced by other technologies. In a prior era music was distributed in the form of Compact Discs (CDs) and made available to consumers via physical storefronts or simply played to customers on radio stations. The digital data stored on these CDs remained largely undistributed across computer networks because doing so was overly complex and largely impractical due to the large file size required to maintain a relatively decent level of audio quality. The advent of compressed file formats for audio data such as the MPEG Audio Layer 3 format (commonly referred to as MP3) resulted in smaller file sizes and thereby eased the constraints that previously prevented the distribution of music across computer networks. The smaller files sizes are a result of the way data is stored in the MP3 file (as pulse-code modulation-encoded (PCM) audio data where portions that are considered less important to human hearing are discarded). Other audio data formats such as Advanced Audio Coding (AAC) which is also known as MPEG-2 Part 7 also provide a compressed format for distributing music files.
[0003] Once consumers had the ability to encode audio data into these and other compressed file formats music sharing became significantly more commonplace as users could now email or share music data across a computer network. Systems such as Napster, Kazza and Grokster which in essence provide users with a way to share music stored on one computer with users on another computer. Such systems are referred to as peer-to-peer systems (P2P). A pure P2P network is a network that relies on the computer power and bandwidth of each computer / peer that is connected to the network. A P2P network does not have the notion of clients or servers but has each peer function as both a client and a server. This model of network arrangement differs from the client-server model where communication is usually to and from a central server. Peer-to-peer architecture embodies one of the key technical concepts of the Internet, described in the first internet Request for Comments, "RFC 1, Host Software." More recently, the peer-to-peer concept achieved wide spread recognition in the general public in the context of the absence of central indexing servers in architectures used for exchanging multimedia files such as audio data.
[0004] The popularity of peer-to-peer systems, which offered the lure of free music but had legal issues about the legitimacy of such distribution, led to more commercially acceptable alternatives such as Apple Computer's iTunes™. Music distribution systems such as Apple Computer's iTunes™ system brought legitimacy to a form of distribution that was once viewed negatively by the entertainment industry. Using data distribution systems such as iTunes™ users can now purchase and download music and videos of their liking with a few simple mouse clicks. Another option users have is receive a subscription feed of automatically delivered audio or video content. These subscription feeds are accomplished using either Really Simply Syndication (RSS) or Atom syndication for listening on mobile devices and personal computers and are called podcasts usually featuring audio or video versions of a show, lesson or any other type of periodic broadcast. Subscribers to a podcast typically receive updates at sporadic or planned intervals such as daily, weekly, etc. There are also podcast networks that feature multiple shows on the same feed. Podcasting is about giving users customization and control over the audio and video data the user desires. In essence the goal in podcasting is to create audio or video content for an audience that wants to listen to the content when they want, where they want and how they want.
[0005] As devices such as the iPod™ or other MP3 type players become increasingly popular distribution mechanisms such as podcasting must be become more sophisticated. Current tools for authoring podcasts or other RSS feeds are cumbersome and lack the functionality needed to be useful for large-scale productions. Moreover the process of creating production quality podcasts is unnecessarily complex and existing software solutions are not tailored towards situations having more than one author for a given podcast. Thus prior art systems are deficient of an effective mechanism for generating podcasts based on collective input from a plurality of users. For instance, existing systems do not have effective mechanisms for assembling a podcast or other type of media package in cases where a plurality of contributing users provide input into what data the podcast is to contain. Another problem existing solutions have is that there is no effective way to manage the podcast content based on audience characteristics such a demographics or geographic location. For instance, the same content is typically distributed to all users who subscribe to the podcast without further customization based on preferences or likely preferences of the user. Known systems do not allow for podcast related advertisement tracking or podcast related free download of media to incentivize click-thrus. To overcome the problems stated above and others not explicitly set forth there is a need for an innovative system and method for assembling data from multiple network sources into executable media packages configured for targeted dissemination to an audience of requesting viewers.
BRIEF SUMMARY OF THE INVENTION
[0006] Embodiments of the invention provide users with an innovative way to create and distribute executable media packages. Systems designed to implement one or more attributes of the invention configured to create or modify an executable media package based upon input obtained from a plurality of contributing users. Hence the system provides an enterprise solution that can scale to any number of users. Distribution of the executable media package is achieved using any communication and computational mechanism that enables users to obtain and view the contents of the executable media package. In at least one case the executable media package comprises data such as podcast data or other data obtainable via a subscription feed such as Really Simple Syndication (RSS) protocol. The podcast data is assembled from media data and generated in one embodiment of the invention via transcoding process that outputs a generated podcast file with encoded chapter data and metadata.
[0007] The system is configured to accept media data that contains pretagged inventory where the pretagged inventory is associated with a specific user attribute such as a demographic or geographic characteristic. An advertisement targeted at a specific demographic group is an example of pretagged inventory. The subscription feed is generated as part of the publication process and generally summarizes the content of the media data. Hence the subscription feed is what provides users who wish to execute the executable media package with a way to subscribe to a specific set of executable media packages. Once an executable media package is assembled for subscription embodiments of the invention provide a mechanism for distributing the executable media package to achieve a business goal such as the desire to have viewers within a specific demographic access to the message contained therein. This distribution occurs when the executable media package is published along with the embedded metadata. Once published the executable media data is disseminated to requesting users (e.g., those subscribed to the feed) upon request.
[0008] One or more embodiments of the invention enable the tracking of advertisement viewing. Using layering for example in a podcast file allows hidden functionality to be bundled into the podcast. Interactive Flash, pictures, audio, advertisements and scripts may be embedded into a podcast. Once embedded, a script may be utilized to record the IP address and time and date of the tracked event. For example, a MOV file embedded into a low layer that is really a script, generates an error which allows the script to record the IP address and time and date of the execution of the script. By timestamping events, the verification of advertisement downloading and viewing is achieved. The information related to the advertisement viewing may be tracked and reported to an advertiser or other content provider. In addition, specific targeting of advertisements may occur when a user opts into a profiling form, or when the user purchases something for example.
[0009] In addition to tracking podcast related advertisement viewing, one or more embodiments of the invention enable incentivized click-thru functionality. For example, by presenting an advertisement embedded into a layered podcast, obtaining a click-thru, redirecting to a merchant who delivers free media content, incentivized click-thru functionality is achieved. Using these embodiments of the system allows for the generation of income when content producers or advertisement providers pay a merchant for click-thrus. In certain countries where media is generally not paid for, any free giveaway of media that results in payment to the content creators provides an incentive for content creators to enter that market. For example, in China a click- thru cost of 63 cents with a cost per song of under 8 cents provides a large incentive for using an embodiment of the invention compared to the United States market where a click-thru cost of 1 dollar with a cost per song of 60 cents providing a lower, yet positive incentive. Since certain countries allow for exclusive rights, for example for podcast rights, a percentage of click-thru revenue may be contracted to a granting authority for the exclusive license to provide the system enabled herein.
[0010] Ad content may be auctioned out allowing for different media buyers to provide ads that dynamically change based on any variable, such as the time of viewing, after a number of ads has been displayed or based on the profile of the user viewing the ad or any other characteristic associated with the user, location of user, time, or any other variable.
DESCRIPTION OF THE DRAWINGS
[0011] The figures referred to throughout and setting forth one or more example embodiments of an innovative system and method for assembling data from multiple network sources into executable media packages configured for targeted dissemination to an audience of requesting viewers are as follows:
[0012] Figure IA is a block diagram showing a system and method for assembling data from multiple network sources into executable media packages in accordance with one or more embodiments of the invention.
[0013] Figure IB is a high-level block diagram that illustrates the basic functionalities required to implement a solution that assembles data from multiple networked sources into media content for purposes of distributing said media content to a targeted audience of requesting users.
[0014] Figure 1C provides an illustration of the methodology implemented by one or more embodiments of the invention via a chaptering / metadata definition interface.
[0015] Figure 2 provides an example of the media collection interface configured to provide upload functionality in accordance with one or more embodiments of the invention.
[0016] Figure 3 illustrates a chaptering interface that provides users with a tool for inserting navigation data and other metadata such as hyperlink data and images.
[0017] Figure 4 illustrates a media management interface for enabling a plurality of users to access and manage the media data pool.
[0018] Figure 5 illustrates a publishing interface for enabling authorized users to publish executable media packages to a subscription feed.
[0019] Figure 6 illustrates a search interface that utilizes indexed data associated with executable media packages.
[0020] Figure 7 illustrates channel or episode specific advertising in accordance with one or more embodiments of the invention.
[0021] Figure 8 illustrates an executable media package in the form of a podcast that is configured to save click-thru information and provide a user interface element that results in a free product giveaway if the user clicks-thru the link. DETAILED DESCRIPTION OF THE INVENTION
[0022] An innovative system and method for assembling data from multiple network sources into executable media packages configured for targeted dissemination to an audience of requesting viewers will now be described. In one or more embodiments of the invention the content contained in the media packages is customizable based on identified attributes of the targeted viewer. In the following description numerous specific details are set forth in order to provide a more thorough understanding of embodiments of the invention. It will be apparent, however, to an artisan of ordinary skill that the description given is an example and that the present invention may be practiced without incorporating all aspects of the specific details described herein. For instance systems embodying one or more aspects of the invention can be implemented using a number of different technologies and hence the invention is not to be limited to the specific examples given herein but can also include other implementations used to accomplish the functions described herein. In some cases specific features well known to those of ordinary skill in the art have not been described in detail so as not to obscure the invention. Readers should note that although examples of the invention are set forth herein, the claims, and the full scope of any equivalents, are what define the invention.
[0023] Conceptual Overview
[0024] Embodiments of the invention provide users with an innovative way to create and distribute executable media packages. For instance, systems designed to implement one or more attributes of the invention are coupled to an interconnection fabric such as a computer network and configured to create or modify an executable media package based upon input obtained from a plurality of contributing users (see e.g., Figure IA, 171, 172, ... 173n). The system provides an enterprise solution that can scale to any number of users. Distribution of the executable media package can be achieved using any communication and computational mechanism that enables users to obtain and view the contents of the executable media package (see e.g., Figure IA, 170). In at least one case the executable media package comprises data such as podcast data or other data obtainable via a subscription feed such as Really Simple Syndication (RSS) protocol. The podcast data is assembled from media data 176 and generated in one embodiment of the invention via transcoding process 174 that outputs at block 175 a generated podcast file with encoded chapter data and metadata. The generated podcast may include advertisement tracking and incentivized click-thrus in one or more embodiments of the invention. The system is configured to accept media data that contains pretagged inventory where the pretagged inventory 180 is associated with a specific user attribute such as a demographic or geographic characteristic. An advertisement targeted at a specific demographic group is an example of pretagged inventory. The subscription feed is generated as part of the publication process at block 181 and generally summarizes the content of the media data. Hence the subscription feed is what provides users who wish to execute the executable media package with a way to subscribe to a specific set of executable media packages. Once an executable media package is assembled for subscription embodiments of the invention provide a mechanism for distributing the executable media package in order to achieve a business goal such as the desire to have viewers within a specific demographic access to the message contained therein. This distribution occurs via at block 182 where the executable media package is published along with the embedded metadata. Once published the executable media data is disseminated to requesting users (e.g., those subscribed to the feed) upon request. If updates to the executable media package are available 184 or if new media is published users can obtain the updated media 185 via the subscription feed process.
[0025] Although the invention is not limited to any specific user interface layout one or more embodiments of the invention make use of a series of interfaces configured to optimize the workflow process associated with generating executable media packages in cases where multiple users contribute to the creation of the executable media package. Because systems embodying the invention are able to accept input from multiple contributing users the system is well suited to become an integral component of any post-production workflow intended to allow multiple users to contribute to the creation of a set of executable media packages. For instance, software implementing aspects of the invention present a media collection interface configured to provide users with a way to identify data for inclusion into the executable media package, a chaptering interface for users to define navigation data and/or other metadata to be associated with a specific playback point, a media management interface for organizing and previewing media, and a publication interface for releasing the executable media packages to an audience. Each of these interfaces as well as other interfaces not expressly mentioned herein may be configured to provide additional functionality and examples of such functionality are described in further detail below. Readers are to take note however that such examples are not intended to be construed as limiting or detract from the systems goal which is to make use of any interface or series of interfaces able to effectively collect content from multiple users for inclusion into an executable media package.
[0026] Systems embodying one or more aspects of the invention may be configured to implement various levels of user control. The general purpose of having such control in a multiuser environment is to provide a mechanism for production oversight prior to dissemination of the completed executable media package. This enables an administrator to control at the user level which users can access data and media data of a particular type. The user responsible for final review and publication of the executable media package may, for instance, differ from the users who create the content. In cases where access is restricted the restricted user is only given access to data within the users permission level.
[0027] System Components and Interfaces
[0028] Figure IB is a high-level block diagram that illustrates the basic functionalities required to implement a solution that assembles data from multiple networked sources into media content for purposes of distributing said media content to a targeted audience of requesting users. To achieve such functionality the system contains an upload function (100) for uploading media data that is to be included into the executable media package. Audio data, video data, image data, text data and other forms of media content are some examples of the type of media data that can be uploaded for use. Generally media data can be obtained from anywhere on the local machine or the network that is accessible to the contributing user. A user may for instance use locally stored audio, images, or video data and/or use the local client computer to capture such data. For instance, in one embodiment of the invention media data is stored on the local system of the contributing user and uploaded to a remote system that is accessible to other contributing users. In this case the system uses a client/server topology where there are multiple clients configured to communicate with a scalable server. Users may also obtain media data from a other computers accessible via the network and then upload the media data to the server. In one embodiment this client/server topology makes use of a thick client such as a Java™ Swing application communicating to a remote FTP server in the backend.
[0029] It is also feasible to have a single device function as both a client and server or to configure the system to make user of a peer-to-peer or other acceptable network topology. Hence although the current invention is described in the exemplary form set forth herein using a client/server model it is not limited explicitly to use of a client/server model.
[0030] Figure 2 provides an example of the media collection interface configured to provide upload functionality in accordance with one or more embodiments of the invention. Referring now to Figure 2, media collection interface 200 contains a screen region having functionality that enables users to select media data via media selection implements 201-204. In the example depicted a command buttons provide users with a way to select audio 201, text 202, video 203 and images 204. Once the desired data is selected it is shown in the files to upload region 205 of the media collection interface. When the user has completed the selection files are uploaded to a centralized media data pool via the upload files command 206. The select images command may be utilized to select an advertisement source with a level of indirection that allows for dynamic advertisement inclusion. In addition, after upload, advertisement tracking components may be introduced into the podcast for metric generation functionality purposes. Alternatively, during the publish process, advertisement tracking components may be installed into the podcast based on any advertisement components that exist in the podcast whether direct or through a level of indirection.
[0031] Uploaded files are accessible for other users to access and take action upon. Chaptering interface 300 which is depicted at Figure 3 provides users with a tool for inserting navigation data and other metadata such as hyperlink data and images. Chaptering interface 300 is where users provide the inputs utilized by the assembly function 102 of Figure IB. The general purpose of assembly function is to generate executable media packages and define metadata to be associated with a specific package. Figure 1C provides a more detailed illustration of the methodology implemented via chaptering interface 300. At step 150 media data is obtained for playback. In the embodiment of the invention depicted in Figure 3, the "choose audio file" 301 command initiates a mechanism for obtaining media data that takes the form of audio data.
[0032] At step 151 media data playback occurs. Once playback begins users can perform various chaptering functions 302, 303, 304 to associate chaptering information and metadata with a particular media data timecode. The set first chapter function 302 enables the user to define where in time the first chapter begins (start time), the duration of the chapter, and also provide other metadata such as a chapter title, image data, and hyperlink information such as a URL and URL title. The create chapter function 303 defines the start time, duration and associated metadata for additional chapters. These chaptering functions are how the system obtains chaptering input and metadata associated with a specific time code (e.g., step 152). Users can also associate default metadata such as images 305 and other information such as URL 306 and title 307 information with the media data at a non-specific time code. The delete chapter function removes a chapter and if necessary the system renumbers the existing chapters to maintain proper numbering. In cases where chaptering input is placed before an existing chapter mark (e.g., 153), systems embodying one ore more aspects of the invention resort and renumber the chaptering data to maintain sequential organization (e.g., 154). If playback is complete and the user has finished setting the chapter data and the metadata, the chaptering functionality is complete and the user may cause the system to transcode the media data into an assembled executable media package. In cases where the executable media data is a podcast this is accomplished by initiating a create executable media package / podcast media file command 308 which in turn causes the system to assemble a executable media package / podcast enabled or compliant media file. To accomplish this the system executes at the command level functions to input the media data and a Data Transfer Object (DTO) containing XML based chapter information. The DTO functions as a conduit for client/server communications in that the data used by the client is put into a serializable object and sent to the client for handling. Hence the DTO is used to provide the client with the information needed to display the data. The client performs HTTP posts to communicate with the server. Referring now back to Figure IB media management function 104 contains functionality for enabling a plurality of users to access and manage the media data pool containing data chaptered using the chaptering interface discussed above. An example of the media management interface is depicted in Figure 4. Screen region 401 provides a list of chaptered executable media packages that are available in an assigned workspace. In the example depicted screen region 401 provides a list of audio files wrapped within an MPEG-4/7 container format and having associated metadata such as that defined via chaptering interface 300. Using media management interface 400 users may select the chaptered files using a pointing device and execute a download operation to the network location identified with destination command 403 via command 402. Having this functionality gives users a mechanism to preview and test chaptered executable media packages on one or more local systems before they are released for publication. [0033] Once the executable media packages are in final form users with the proper level of access make use of a publishing interface to submit the executable media data to a subscription feed. Various types of subscription and non-subscription interfaces are within the scope of the invention. Figure 5 depicts an example of a publishing interface for submitting executable media packages to a subscription feed. Publishing interface 500 contains various input regions for obtaining metadata to be associated with the publication. Once an executable media file is identified for publication (e.g., 501) information such as category information 502, a title 503, a description 504 about the contents of the package to be published and other extensions to the metadata such as link information, layout information or client specific information used by the client program that will be used to run the executable media package. Preview 505 provides users with a way to review the executable media package before submitting it for publication.
[0034] In one embodiment of the invention pre and/or post-tagging of the executable media file occurs. For instance in cases where the executable media file is an MPEG-4/7 video/audio file published data can be embedded in the MPEG file header metadata. Once embedded, the pre- embedded information enables batch publishing of episodic/syndicated content for distribution. This feature allows for the instant publishing of RSS metadata associated with an attachment as it is posted to multiple channels for distribution. a. Name I Lucy Lucy b. Episode # 101 c. Description Lucy takes a job at a candy factory d. Season Season 5 e. Content Advisory TBD f. Release Date 1958 or 01/01/1958 g. Copyright ©1966 Desilu Productions h. Comments Poor film to Video transfers. Scratches + Audio pops.
[0035] The publishing user may optionally associate demographic information with an executable media file and/or target a specific channel or even an episode on a channel at an intended target user. This enables the publisher to offer content based on a specific user profile or demographic. Profile information is typically obtained from users during a sign-up process but can also result from recording user behavior over time. When a user who has the targeted profile logs-in to the system access is granted to the published executable media package associated with their profile. [0036] In one embodiment of the invention the information associated with a specific executable media package (or a channel containing multiple media packages) is indexed and can be used for searching (e.g., Figure IA, 186). The system makes use of manually entered or automatically generated index data associated with any executable media packages and thereby enables users to perform searches that are semantics based, content based, or based on metadata. Using this indexing approach it is possible for users to search based on people, places, events, scenes, color, texture, patterns, sound, genre, tile, author, dates or any other information that might identify one or more executable media packages.
[0037] In one embodiment of the invention the system is configured so that voice, image, and speech-to-text software auto-catalogue and index content. This process automatically creates metadata that in turn enables text-based searches for specific multimedia content. The Metadata created can be added to the RSS description or other custom field. Also, if needed the software can capture the video (or audio) frame/time code/subject and create a .jpg snapshot frame to use for purposes of having a visual reference cue 602. For example a "Tom Cuise + Katie Holmes" search entered into a search interface 601 would query the database and find a .jpg of the frame w/ time code stamp (see e.g., Figure 6, 600). The search could pull up multiple reference jpg's from a library and display them as a grid collection along with text information. This service can be used by the Content creator and end/or users to search for content. Advertisers can use the search service to find contextual content that matches their product campaign profile.
[0038] A search within an episodic syndication post could appear as follows:
Channel: Inside Edition Season 10
Episode: 101
Date: 03/19/2006
Description: Oscar ceremonies gala event.
TC: 01 :21 :21 Tom + Katie Holmes
TC : 01 :21 :25 Michael Douglas + Katherine Zeta Jones (Face)
TC: 01 :25 : 13 Lindsey Lohan (Face)
TC: 01 :29:22 Lindsey Lohan (Speech)
[0039] One or more embodiments of the invention are configured to implement channel or episode specific advertising (see e.g., Figure 7). For instance, multiple channels of the same content based on demographics (age, Income, interest). Ads can be changed on a daily, weekly, monthly basis or at other periodic intervals as desired. Advertisements can be submitted as follows in audio, video or enhanced audio or video form. Advertisers may optionally embed hyperlinks into the enhanced media (e.g., enhanced podcasts) and optionally implement trackable unique affiliate marketing programs. Click-thrus to a hyperlink can then be measured and used to access effectiveness, obtain user provided data and/or extend ad viewing time. Using layering for example in a podcast file allows hidden functionality to be bundled into the podcast which may be utilized to track advertisement viewing. Interactive Flash, pictures, audio, advertisements and scripts may be embedded into a podcast. Once embedded, a script may be utilized to record the IP address and time and date of the tracked event. For example, a MOV file embedded into a low layer that is really a script, generates an error which allows the script to record the IP address and time and date of the execution of the script. Any other method of determining the time that an advertisement is viewed by a user is in keeping with the spirit of the invention. By timestamping events, whether through hidden embedded functionality or through any other method, the verification of advertisement downloading and viewing is achieved. The information related to the advertisement viewing may be tracked and reported to an advertiser or other content provider. In addition, specific targeting of advertisements may occur when a user opts into a profiling form, or when the user purchases something for example. As shown in Figure 7, user B may have provided profile information that allows for the targeting of advertisements AD 2 and AD 3 to user B.
[0040] Referring again to Figure 7 channels 1-A, 1-B or 1-C are all different variations of a channel having the same basic episodes but having variable advertising content (e.g., AD 1, AD 2 and AD3). The subset of the channel that is provided to the user in the form of an executable media package depends on profile or login information of the user or on any other characteristic associated with the user, time or any other characteristic. When user A subscribes to the system the user might receive Channel 1-A, user B could receive Channel 1-B and a user C might receive Channel 1-C. The difference between what channel users receive is based on information provided by the user or information learned about the user through recording the users usage habits. By tracking the viewing of advertisements, the system can provide metrics to advertisers that indicate the level of viewing of advertisements that is occurring. In this manner, popular podcasts may demand higher rates of compensation from advertisers. [0041] In addition to tracking podcast related advertisement viewing, one or more embodiments of the invention enable incentivized click-thru functionality. For example, by presenting an advertisement embedded into a layered podcast, e.g., podcast for channel IA and obtaining a click-thru, incentivized click-thru functionality is achieved when redirecting to a merchant who delivers free media content. In order to incentivized the click-thru, the system provides a free product, for example a free media file or song. When the user clicks-thru, the free song is provided. When the cost of the song is less than the price of the click-thru, then a profit may be generated. As shown in Figure 7, if a user B clicks on AD3, then the user may be presented with a website associated with AD3 and when the system records the click-thru, the advertiser pays the merchant for redirecting the user. Using these embodiments of the system allows for the generation of income when content producers or advertisement providers pay a merchant for click-thrus. In certain countries where media is generally not paid for, any free giveaway of media that results in payment to the content creators provides an incentive for content creators to enter that market. For example, in China a click-thru cost of 63 cents with a cost per song of under 8 cents provides a large incentive for using an embodiment of the invention compared to the United States market where a click-thru cost of 1 dollar with a cost per song of 60 cents providing a lower, yet positive incentive. Since certain countries allow for exclusive rights, for example for podcast rights, a percentage of click-thru revenue may be contracted to a granting authority for the exclusive license to provide the system enabled herein. Ad content may be auctioned out allowing for different media buyers to provide ads that dynamically change based on any variable, such as the time of viewing, after a number of ads has been displayed or based on the profile of the user viewing the ad or any other characteristic associated with the user, location of user, time, or any other variable.
[0042] Figure 8 illustrates an executable media package in the form of a podcast that is configured to save click-thru information and provide a user interface element that results in a free product giveaway if the user clicks-thru the link. Executable media package is shown visually in viewer 801. hi this example, the executable media package or podcast is depicted with link 802 that results in the display of web store 850 and link 803 that results in a download of a free product, or display of a web site or web store where the product is free or is marked as free by executing link 803. Executable media package play position 804 shows that the executable media package is approximately 2/3 through playing. At this point in the podcast, link 802 or 803 may be displayed so that the links are available only at that portion of the podcast. The media played in viewer 801 may include advertisements for example that are viewed before links 802 and 803 are displayed to ensure that clicks through these links signify that a user has been shown an advertisement. Alternatively or in combination, hidden scripts may be utilized to ensure that advertisements have been seen by a user. When a user has viewed an advertisement, the IP address, advertisement ID and timestamp of viewing may be saved on any computer for further processing such as billing of an advertiser. For free product giveaways, a content producer may pay the merchant for the product and yield a net profit by charging more for a click-thru to an advertiser. For example, by charging an advertiser more money for clicking through link 803 and the cost of a product, e.g., song in this example, a net profit is produced. The merchant may also pay the content producer for directing users at their website or web store as well. In addition, the advertiser generally pays a click-thru and page view fee to the content producer that has generated the podcast.
[0043] The workflow process for handling targeted advertising involves the content provider uploading executable media packages and submitting a plurality of advertising content (e.g., ADl, AD2, AD3) via a publishing process. One or more embodiments of the invention add the channel to a database of inventory from which advertisers can search and select a channel from the available inventory within which to place advertisements. The system creates an ad inventory database by searching for "black" frames (or silent audio) longer than a threshold time period that is typically less than the time period users can easily perceive or generate frames from videotape archives. Time code logs for the advertisements are included in the database and ads can either be manually or automatically submitted at chosen time intervals (e.g., every 15 minutes, bookend, (Beginning/Middle/End)). Advertisers can then search and preview content based on entered search criteria. Some examples of search queries that might be initiated by a user who wishes to place advertisements follow:
Figure imgf000018_0001
[0044] After performing searches, advertisers or media buyers can drill deeper to obtain channel/episode information, determine inventory availability, and ascertain the cost of placing the advertisement. Once an advertisement is selected it can then be placed into the appropriate content as needed. An administration console allows advertisers to track and monitor an ad campaign and make changes to the campaign as desired.
[0045] Design Details
[0046] Although there are various ways to implement the general functionality and interfaces described herein, a more specific set of details is provided to give an example of the modules and basic functionality used in the context of a client/server embodiment of the invention.
[0047] On the client side one or more embodiments of the invention makes use of the following modules:
[0048] HTTP connection module comprises a collection of classes working together to make http requests and receive http responses from the backend server of the application. The HTTP connection module may also pass the user login data and a Jsession Id generated by the application server for all communications with the client. The connection module will store this data and use this for all communication with the backend server (Server Side).
[0049] Swing UI module contain the program code used to implement the various interfaces described throughout this document and in one embodiment of the invention comprises the various Swing components and widgets to be used in the client. An observer framework is used for event handling.
[0050] Session Data Module is a storage container containing the server session data (e.g., userinfo and JSession Id etc). This data may, for instance, be contained within the HTTP connection module and written to a log locally for debugging purposes.
[0051] Data Transfer Object (DTO) is a storage container configured to act as a conduit for the server to communicate with the client. In one embodiment of the invention the data used by the client is put into this serializeable object, sent to the client and used by the client for display data. The client performs HTTP posts to communicate with the server. [0052] On the server side one or more embodiments of the invention is implemented as a Struts application which follows the MVC (Model View Controller) architecture and has Multi-part form support used to post file data. The web application use these primary URL mappings to service requests.
[0053] An Upload Files request receives multipart data from the client and writes it into the account folder as a file. The data that is uploaded in this context is the original source data that may or may not be included in the executable media packages when they are finished. Duplication files names are also handled.
[0054] A File Download service is used in one embodiment of the invention by the create Podcast command to play an audio file or in the more generalized case to play any media data. The media data is downloaded using HTTP and played in the Java QuickTime Player in a way that outputs the current time code for purposes of creating chapter data. The chapter data is written to a serializeable DTO and posted once the Create Podcast Button is pressed.
[0055] Login and Log Off functionality utilizes the user table. This module will be used to manage and control user access. Primarily maintaining sessions when users are logged on or off of the system. For instance, one implementation of the invention makes use of a database to persist user data. This is helpful in a multi-user context because users can be given access levels and an administrator can exercise control over each users. Although not set forth in the table below the database can also be utilize log tables to log the user activity. On the viewer side of things a user login is used to associate the user with a particular profile and thereby enable advertisers to target specific content at the user.
[0056] Not by way of limitation and included herein only for purposes of example is a sample users table.
Figure imgf000020_0001
Figure imgf000021_0001
[0057] The create podcast service is called when the Create Podcast button is pressed (see e.g., Figure 3). In one example, input is the file names and the DTO containing the XML based chapter info is processed at a command level to create the Podcast.
[0058] The Data Access Object (DAO) module is used to allow the application to access the Database and uses a JDBC to connect to the database. Connection pooling provides a way to increase availability.
[0059] RSS feed. In one or more embodiments of the invention the basic information defined via publishing interface 500 is submitted in the form of an RSS feed containing XML data. Although the invention is not limited solely to the use of RSS feeds, it is useful for purposes of illustrating how publication occurs to discuss the basic structure of an RSS feed. When submitting a feed the information that is to be posted with the feed is submitted as XML data. The outer container is <rss> tag that encloses a <channel>. The channel contains elements or tags that collectively define feed properties via the accompanying metadata. Following the channel elements are items that define the actual feed content. Each item within the XML data may define a unique entry, and a feed can contain multiple items. An <item> element, for instance might define a headline, image, or audio file. Closing </channel> and </rss> tags will follow the items in order to maintain proper syntax. Variations of the example show below will occur depending upon the data provided via the publishing interface and hence one of skill in the art will recognize that the example set forth below is a generalized example that is none specific to an actual publication case.
<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<!-- channel metadata -->
<title>My Executable Media Data</title> <link>http://A URL/feed.rss</link> <description>Headlines and important news</description>
<!-- channel content — > <item> <!-- item content — >
<title>Intro To Developing Executable Media Packages</title>
<description>This article provides an overview of the methodology used to develop executable media packages. The enclosure references the podcast.</description>
<enclosure url=mthttp.7/[URL]/Assembled_Package.m4b" length="123456" type="audio/mpeg" />
</item> </channel>
</rss>
[0060] Module Specific Functions
[0061] The Log In to Client module provides the functionality that enables users to login to the system. Since one or more embodiments of the invention make use of a thick client for the Application front end, the login dialog can be presented once the user clicks on the application. Once the user enters the username and the password and clicks on logon, the Event handler framework on the client checks the triggered event (login) and passes over the input widget info over to the LoginAction Class. This class is programmed to perform validation of the input data (username/ password) and then create a Data Transfer Object (DTO) with the data and pass it to the HTTP connection Module which then calls the Login service on the Application server. The application server passes this request to the Login Action class on the server side. This server side Login Action class then authenticates the user and sends back to the user the userinfo and the Jsessionid in a DTO. The user is logged in and is shown the main page in the application client. If the user entered data is invalid the user receives an error message.
[0062] The Main Menu UI module contains functions for rendering the interface the user views once logged in. The HTTP connection module obtains the response from the server about the login attempt and if it is successful places the userinfo data and the Jsession id in the Sessionlnfo module and calls the Main page UI widget. In one implementation this widget contain numerous buttons with labels for functions such as: User can upload audio files (e.g., *.m4a and other audio file types) User can upload image files (e.g., *.gif, jpg, .png and other image file types), (Transcoding will support multiple file formats). Create Podcast File, Create RSS Feed from existing Podcast enabled audio files.
[0063] The Upload Audio Files module provides the user with an upload media data option. The event handler framework present the user the LOAD media widget (e.g., audio or video data) which contains a button to show the file chooser. The user can use the filechooser to choose a media file. The user may select the file and then click on upload button. The event handler framework posts this multipart data along with the session info to the Application server. The application server then calls the UploadAudio Action class which parses the multipart data and writes it to the directory of the account associated with the user. While this is happening the user is optionally shown a dummy progress bar. The file is uploaded and the user get a file upload finished dialog with option to upload more. If the user selects yes then the event handler framework shows the same Audio File upload widget again.
[0064] The Upload Image Files module is executed when the user initiates a command to obtain an image. The event handler framework responds by presenting the user the LOAD Image widget. This widget contains a button to show the file chooser. The user can use the filechooser to choose an image file, select the file and then click on upload button. The event handler framework posts this multipart data along with the session info to the Application server. The application server calls the Uploadlmage Action class that parses the multipart data and write it to the image directory of the account associated with the user. The file is uploaded and the user will get a file upload finished dialog with option to upload more. If the user selects yes then the event handler framework shows the same Image File upload widget again.
[0065] When the Create Podcast file module is executed the event handler framework presents the user the Create Podcast widget. This widget contains a button to choose the audio file. When the user clicks on the button the event hander framework sends this request to the HTTP connection module. The connection module calls the Application server with this request. The application server then passes the request to the ShowServerAudio files class. This class will read the names of all the files in the account directory associated with the user and puts these filenames in a DTO and sends the response back to the client. The client passes this DTO response to the filechooser widget and shows it the user. The user may then select a file and click the view button. When the user clicks on the button the event hander framework sends this request to the HTTP connection module. The connection module calls the Application server which in turn passes the request to the DownloadServerAudio files class. This action class calls the download module which sends back the client the file chosen by the user. The HTTP connection module can download this file to a temporary location and start playing it in a java based QuickTime player widget. The Create Podcast file module may be utilized to introduce metric generation of advertisement viewing. In one or more embodiments, the metric generation may comprise inserting an event time stamp module that is configured to time stamp the viewing start and end times for an advertisement. By sending the IP address, advertisement ID and start and stop times to a computer configured to store advertisement information, advertisement metrics may thus be stored.
[0066] The user can click on the create chapter button. When the user clicks on the button the event hander framework creates an editable chapter name with the time code on the player. Users can create multiple chapters. The data is stored in a Data Object. On the UI, each of the chapters has a button. The user can click on the button to associate the (image file) gif file to the chapter. This is done in a similar way to the previously explained method (View Audio File). Once the user is satisfied with the editing, the user can click on the create PODCAST (Podcast File) button. This button passes the chapter data object to the HTTP connection module which passes the request to the application server. The application server passes the request to the CreatePodcast Action class which processes the data and passes it to a UNIX command line utility that convert the audio to the Podcast file. The Podcast file is stored in an output directory.
[0067] Create RSS Feed. The user will click on the button next to the label containing the Create RSS feed option. The event handler framework will present the user the Create RSS feed widget. This widget will contain a button to choose the Podcast file. When the user clicks on the button the event hander framework will send this request to the HTTP connection module. The connection module will call the Application server with this request.
[0068] The application server passes the request to the ShowPodcastFiles action class. This class reads the names of the Podcast files in the account directory associated with the user, places these filenames in a DTO and sends the response back to the client. The client passes this DTO response to the filechooser widget and presents it to the user. The user may then select a file and click the create RSS feed button. When the user clicks on the button the event hander framework send a request to the HTTP connection module. The connection module calls the Application server with this request. The application server then passes the request to the CreateRSSFeed action class that calls the RSS Feed module. This module passes the input request parameters to the RSS feed command line utility which generates an RSS feed out of the input.
[0069] Media File Player module. The player used to play the media data (e.g., audio data) will need to play, scroll, stop playback, and display timecode. Q4J player (Java QuickTime player) is an example of a player that serves this purpose.
[0070] The Logout module provides the functionality needed to log the user off the system. Once the user clicks on logoff, the Event handler framework on the client checks the triggered event (logoff) and passes over the input widget info over to the LogOffAction Class. This class invalidate the user session and send a response to the client about successful logout. Data in the Session module of the client is typically be removed.
[0071] These details set for in the form of the examples contained herein comprise a system and method for assembling data from multiple network sources into executable media packages configured for targeted dissemination to an audience of requesting viewers has been described. While the invention herein disclosed has been described by means of specific embodiments and applications thereof, numerous modifications and variations could be made thereto by those skilled in the art without departing from the scope of the invention set forth in the claims.

Claims

CLAIMSWhat is claimed is:
1. A computer program product for assembling data from multiple networked sources into media content for purposes of distributing said media content to a targeted audience, said computer program product comprising: computer readable program code embodied in a computer usable memory medium where said computer readable program code is configured to: present a media collection interface configured to provide a plurality of contributors with a mechanism for identifying data for inclusion into an executable media package; obtain input to identify said data from said plurality of contributors via said data collection interface where said input identifies a storage location for said data; present a navigation interface configured to provide said plurality of contributors with a mechanism for defining navigation data to associate with said data; obtain input to define said navigation data from at least one of said plurality of contributors via said navigation interface; assemble said data and said navigation data into said executable media package; generate a subscription feed comprising a content summary of said executable media package where said subscription feed comprises links to said executable media package; and publish said executable media package for download by users subscribed to said subscription feed.
2. The computer program product of claim 1 wherein said media collection interface provides said plurality of contributors with access to said data where said data comprises audio, video or text data.
3. The computer program product of claim 1 wherein said computer program product further comprises: save advertisement viewing information associated with said executable media package;
4. The computer program product of claim 1 wherein said computer program product further comprises:. provide a tree product or service to a user that has clicked-thru an advertisement.
5. The computer program product of claim 1 wherein said media collection interface provides said plurality of contributors with access to said data where said data comprises image data.
6. The computer program product of claim 1 wherein said computer readable program code is further configured to upload said data from a local file system executing said computer program product to a repository of data separable from said local file system.
7. The computer program product of claim 6 wherein said computer readable program code is further configured to: download said data from said repository for playback with a time code at said local file system; playback said data to at least one contributing user with said time code data for purposes of obtaining said navigation data from said at least one contributing user.
8. The computer program product of claim 7 wherein said navigation data comprises metadata associated with said data.
9. The computer program product of claim 8 where said metadata comprises link information associated with said data in said executable media package.
10. The computer program product of claim 8 wherein said metadata comprises image information associated with said time code.
11. The computer program product of claim 8 where said metadata comprises link information associated with insert data used to update to said executable media package.
12. The computer program product of claim 11 where different version of said executable media package are assembled and made available to users based on user profile information.
13. The computer program product of claim 11 where contents of said executable media package are modifiable by advertisers via an ad administration interface.
14. The computer program product of claim 11 where advertising data is variable in accordance with demographic information of said viewing user.
15. The computer program, product of claim 14 where executable media data is indexed to enable searching.
16. The computer program product of claim 14 where said advertising data is associated with an executable media file based on search criteria entered by an advertiser.
17. In a computer system a method for assembling data from multiple networked sources into media content for purposes of distributing said media content to a targeted audience of requesting users comprising: presenting a media collection interface configured to provide a plurality of contributors with a mechanism for identifying data for inclusion into an executable media package; obtaining input to identify said data from said plurality of contributors via said data collection interface where said input identifies a storage location for said data; presenting a navigation interface configured to provide said plurality of contributors with a mechanism for defining navigation data to associate with said data; obtaining input to define said navigation data from at least one of said plurality of contributors via said navigation interface; assembling said data and said navigation data into said executable media package; generating a subscription feed comprising a content summary of said executable media package where said subscription feed comprises links to said executable media package; and publishing said executable media package for download by users subscribed to said subscription feed.
18. A system for assembling data from multiple networked sources into media content for purposes of distributing said media content to a targeted audience of requesting users comprising: a means for presenting a media collection interface configured to provide a plurality of contributors with a mechanism for identifying data for inclusion into an executable media package; a means for obtaining input to identify said data from said plurality of contributors via said data collection interface where said input identifies a storage location for said data; a means for presenting a navigation interface configured to provide said plurality of contributors with a mechanism for defining navigation data to associate with said data; a means for obtaining input to define said navigation data from at least one of said plurality of contributors via said navigation interface; a means for assembling said data and said navigation data into said executable media package; a means for generating a subscription feed comprising a content summary of said executable media package where said subscription feed comprises links to said executable media package; and a means for publishing said executable media package for download by users subscribed to said subscription feed.
PCT/US2006/035989 2006-05-02 2006-09-13 System and method for assembling data WO2007130116A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US79733606P 2006-05-02 2006-05-02
US60/797,336 2006-05-02

Publications (1)

Publication Number Publication Date
WO2007130116A1 true WO2007130116A1 (en) 2007-11-15

Family

ID=38668062

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2006/035989 WO2007130116A1 (en) 2006-05-02 2006-09-13 System and method for assembling data

Country Status (1)

Country Link
WO (1) WO2007130116A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6324691B1 (en) * 1998-11-12 2001-11-27 Hewlett-Packard Company Manufacture of software distribution media packages from components resident on a remote server source
US20020062320A1 (en) * 2000-11-21 2002-05-23 Matsushita Electric Industrial Co., Ltd. File management method and content recording/playback apparatus
US20060195513A1 (en) * 2005-02-28 2006-08-31 Yahoo! Inc. System and method for networked media access
US20070016530A1 (en) * 2005-07-15 2007-01-18 Christopher Stasi Multi-media file distribution system and method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6324691B1 (en) * 1998-11-12 2001-11-27 Hewlett-Packard Company Manufacture of software distribution media packages from components resident on a remote server source
US20020062320A1 (en) * 2000-11-21 2002-05-23 Matsushita Electric Industrial Co., Ltd. File management method and content recording/playback apparatus
US6922707B2 (en) * 2000-11-21 2005-07-26 Matsushita Electric Industrial Co., Ltd. File management method and content recording/playback apparatus
US20060195513A1 (en) * 2005-02-28 2006-08-31 Yahoo! Inc. System and method for networked media access
US20070016530A1 (en) * 2005-07-15 2007-01-18 Christopher Stasi Multi-media file distribution system and method

Similar Documents

Publication Publication Date Title
US10437896B2 (en) Singular, collective, and automated creation of a media guide for online content
US9525902B2 (en) Discovery and analytics for episodic downloaded media
US20100145794A1 (en) Media Processing Engine and Ad-Per-View
KR101004510B1 (en) Automatically matching advertisements to media files
US20060190616A1 (en) System and method for aggregating, delivering and sharing audio content
US20110208616A1 (en) Content system
US20080098032A1 (en) Media instance content objects
US20070245020A1 (en) Publishing scheduler for online content feeds
US20100185502A1 (en) Dynamic mixed media package
US20080208692A1 (en) Sponsored content creation and distribution
JP2010502116A (en) System and method for selective media content access by recommendation engine
KR20090018919A (en) System and/or method for distributing media content
EP2018728A2 (en) Advertisement rotation
US11818407B2 (en) Platform, system and method of generating, distributing, and interacting with layered media
KR20180041879A (en) Method for editing and apparatus thereof
WO2007130116A1 (en) System and method for assembling data

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 06814721

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 06814721

Country of ref document: EP

Kind code of ref document: A1