WO2007081761A2 - Method and system for generation of media - Google Patents

Method and system for generation of media Download PDF

Info

Publication number
WO2007081761A2
WO2007081761A2 PCT/US2007/000207 US2007000207W WO2007081761A2 WO 2007081761 A2 WO2007081761 A2 WO 2007081761A2 US 2007000207 W US2007000207 W US 2007000207W WO 2007081761 A2 WO2007081761 A2 WO 2007081761A2
Authority
WO
WIPO (PCT)
Prior art keywords
media
programming
elements
source
user
Prior art date
Application number
PCT/US2007/000207
Other languages
French (fr)
Other versions
WO2007081761A3 (en
Inventor
Dwight Marcus
Original Assignee
Ntech Properties, 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 Ntech Properties, Inc. filed Critical Ntech Properties, Inc.
Publication of WO2007081761A2 publication Critical patent/WO2007081761A2/en
Publication of WO2007081761A3 publication Critical patent/WO2007081761A3/en

Links

Classifications

    • 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
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests
    • 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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
    • 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/47End-user applications
    • H04N21/475End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data
    • H04N21/4755End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data for defining user preferences, e.g. favourite actors or genre
    • 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/47End-user applications
    • H04N21/482End-user interface for program selection
    • 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/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors

Definitions

  • the present invention relates to generation of media programming.
  • a library of media elements which may include brief video clips, brief audio recordings, and other types of media, may be maintained.
  • the media elements are tagged, and a : database maintains the tags.
  • Various parameters and instructions for assembly of media elements into programming may be provided, such as through templates, and the media elements are assembled into media programming.
  • a method of generating media programming includes providing a first media source having a plurality of media elements, tags associated with each of the media elements, and one or more first media source templates for assembling of the media elements into media programming.
  • the method further includes providing a second media source, the second media source having at least a second template and receiving a request for media programming at the second media source.
  • the method .further includes in response to the request, generating media programming : comprising selected ones of the media elements assembled in accordance with at least the second template.
  • a method of providing media programming includes receiving a request for media programming; providing to a first media source a request for generation of media programming, the first
  • media source having media elements, tags associated with each of the media elements, and one or more first media source templates for assembling of the media elements into media programming, the programming to be assembled in accordance with at least a second template from the second media source; receiving generated media programming from the first source; and providing the generated media programming responsive to the request.
  • a system for generating media programming includes a first media source having media elements, tags associated with each of the media elements, and one or more first media source templates for assembling of the media elements into media programming; and a second media source having at least a second template. At least one of the first and second media sources is adapted to generate, in response to a request for media programming received at the second source, media programming including selected ones of the media elements assembled in accordance with at least the second template.
  • a method for generating media programming includes providing a media source having media elements, tags associated with each of the media elements, and one or more first templates for assembling of the media elements into media programming; receiving a request for media programming; responsive to the request, generating media programming including ones of the media elements assembled in accordance with at least one of the templates; providing the media programming and an identifier associated with the media programming in response to the request; receiving the identifier in a second request; and providing the media programming in response to the second request.
  • a system for generating media programming includes a media source having media elements, tags associated with each of the media elements, and one or more first templates for assembling of the media elements into media programming.
  • the media source being adapted to receive a request for media programming and, responsive to the request, generate media programming including ones of the media elements assembled in accordance with at least one of the templates.
  • the system has a processor for providing the media programming and an identifier associated with the media programming in response to the request; receiving the identifier in a second request; and providing the media programming in response to the second request.
  • a method of facilitating navigating a system having media elements and adapted to assemble the media elements into media programming includes providing for a user at least a first media program assembled from the media elements in accordance with a first level; presenting to a user a menu option to select a second level; receiving from the user a selection of the second level; and providing for the user a first tier experience including a series of media programs of relatively brief duration assembled from ones of the media elements consistent with the selected option.
  • a system for facilitating navigating a system having media elements and adapted to assemble the media elements into media programming includes a processor, operating in accordance with instructions in computer program code, for providing for a user at least a first media program assembled from the media elements in accordance with a first level; a processor, operating in accordance with instructions in computer • program code, for presenting to a user a menu option to select a second level; and a processor, operating in accordance with instructions in computer program code for, in response to receiving from the user a selection of the second level, providing for the user a first tier experience including a series of media programs of relatively brief duration assembled from ones of the media elements consistent with the selected option.
  • a method of tagging each of multiple media elements includes assigning a value to each of the media elements on a first scale; and assigning a value to each of the media elements in a second scale.
  • a method of generating media programming includes assigning a value to media elements on at least one scale, wherein the media elements make up pre-existing programming; receiving a rule related to a value on the scale; and in response to receiving the rule, generating a version of the pre-existing programming having media elements that violate the rule deleted, a temporal order of the media elements being preserved.
  • a computer-readable medium having stored thereon a plurality of instructions, the plurality of instructions including instructions for performing the steps of receiving an assignment of a value to a
  • • programming from media elements, parameters being associated with each of the media elements includes providing a user prompt related to one or more parameters associated with media elements included in a first media program assembled from a library of media elements; receiving from a user a parameter selection signal; and providing a second media program assembled from the library of media elements in response to the received parameter selection signal.
  • a computer-readable medium has stored thereon instructions, including instructions for causing a processor to provide a user prompt related to one or more parameters associated with media elements included in a first media program assembled from a library of media elements; receiving from a user a parameter selection signal; and causing the processor to provide a second media program assembled from the library of media elements , in response to the received parameter selection signal.
  • a method of generating media programming includes providing a first media source having a plurality of first media elements, tags associated with each of the first media elements, and one or more first media source templates for assembling of the first media elements into media programming; receiving at least one second media element from a second media source, the second media element having at least one rule for use associated therewith; and generating media programming including at least some of the first media elements and the second media element, in accordance with at least one of the templates and the rule.
  • a system for generating media programming includes a first media source having first media elements, tags associated with each of the first media elements, and one or more first media source templates for assembling of the first media elements into media programming.
  • the first media source is adapted to receive at least one second media element from a second media source, the second media element having at least one rule for use associated therewith; and to generate media programming including at least some of the first media elements and the second media element, in accordance with at least one of the templates and the rule.
  • FIG. 1 shows a schematic diagram of a system according to an embodiment
  • FIG. 2 is a schematic diagram of a system according to an alternative embodiment
  • Fig. 3 is a process flow diagram of a process according to an embodiment
  • Fig. 4 is a process flow diagram of a process according to an alternative embodiment.
  • Fig. 5 illustrates a method and system for navigation in an embodiment.
  • Fig. 6 illustrates exemplary scales for tagging of media elements in an embodiment.
  • Fig. 7 is a process flow diagram of a process according to an embodiment.
  • Fig. 8 illustrates a display according to an embodiment.
  • Fig. 9 is a block diagram illustrating an embodiment.
  • a media source 100 is shown.
  • Media source 100 may include a database containing tags including information regarding a plurality of media elements.
  • Media source 100 may also include stored media elements.
  • Media source 100 may further include one or more templates for assembling of media elements into programming.
  • Media elements may include any media information that may be viewed, heard, or otherwise experienced by a user, or that affects any media that may be viewed, heard or otherwise experienced by a user.
  • media elements may include periods of prerecorded video, prerecorded audio, prerecorded audio and video, and instructions related to generation of audio and video.
  • Tags may include any information characterizing any media element. Such tags may include a summary of content, type of media, information regarding lighting, effects, music, sound quality, scenes, and any other type of information related to the media element. Tags may be maintained in a separate database from media elements, or may be in the form of meta data or other data associated with media elements.
  • Templates include information and instructions for assembling media elements.
  • the media elements do not have an inherent temporal order.
  • At least one media generator in addition to media source 100, is provided.
  • three media generators 110, 115, 120 are illustrated.
  • Each media generator 110, 115, 120 may include templates or other instructions or sets of instructions for generating media programming.
  • the instructions for generating media programming may include instructions for selection of media elements by any suitable parameter to generate media programming.
  • the instructions may limit the generated media programming by topic.
  • the instructions may include insertion of specific media elements in any media programming, or require the insertion of media elements having a particular tag.
  • the specific media elements to be inserted may include a reference to the name or identity of an owner or operator of a media generator, for example.
  • the media generator 110, 115, 120 may provide instructions, in the form of tags and templates, to media source 100.
  • media source 100 may provide programming, such as in the form of a suitably interpolated audio, video, or audiovisual program, to media generator 110 or to server 130, for serving to user 150.
  • a user 150 which may be generated by, for example, a web client running on a personal computer, ⁇ personal digital assistant, cellular telephone, digital cable, satellite or Internet .television, satellite radio, satellite telephone, or other device, media generator 110 develops a set of instructions, and provides those instructions to media source 100.
  • media source 100 In response to the set of instructions, media source 100 assembles and delivers programming to media generator 110. Media generator provides those to server 130, which then returns the programming to the user 150. Of course, it will be appreciated that the programming may be delivered directly to user 150, such as through a separate browser window.
  • media generators 110, 115, 120 maintain locally a database identifying media elements.
  • media generator determines, based on a set of instructions, the media elements and their order. The media elements and their order are then delivered to media source 100, which returns media programming as above.
  • media generators 110, 115, 120 each include both a database of tags and other information relating to media elements, and recorded media elements as well. The recorded media elements may be copied periodically from the recorded media elements maintained by media source 100, or may be a subset of those stored recorded media elements. Additional media elements not maintained at media source 100 may also be provided.
  • each of servers 130, 135, 140 may be operated by entities distinct from an owner or operator of the media source 100.
  • owners or operators may include providers of entertainments, such as musical groups, including bands and orchestras, film studios, music producers, theatrical groups; retailers of goods and services; educational institutions; other non-profits, and other entities.
  • server 130 may provide a website of a musical artist.
  • server 130 issues a request to media generator 110 to provide media programming.
  • Media programming is returned, in one of the implementations discussed above, including, for example, a setection of clips of the band playing.
  • the programming may also include interviews with one or more band members, music videos, videos taken backstage at concert venues, and other content that is tagged as being of interest. Videos and other media contributed by other users, such as fans of a band, may be incorporated into the library of media elements.
  • server 140 provides a website of a retailer.
  • the media returned may include programming including media elements featuring activities related specifically to products sold by the retailer, and/or to a general impression that the retailer wishes to provide.
  • a retailer of hiking, camping and other outdoor gear may provide nature and adventure media programming.
  • a retailer of housewares may provide media programming featuring home design, or entertaining at home, by way of example.
  • consideration may be paid to an entity that owns or operates media source 100 by an entity that owns or operates one or more of servers 130, 135, 140.
  • media programming may be transparent to the user, so that the user is aware only of the server 130, 135 or 140, and is not aware of the first media source 100.
  • media programming may include various devices for branding with the identity of server 130, 135, 140, or the respective owner or operator.
  • Such devices for branding may include incorporating a logo in an image display, periodically or at logical breaks in programming inserting audio or video identities of the owner or operator, or other techniques.
  • a user such as any of users 150, 155,
  • a request may result in the generation of media programming from media source 100.
  • Such generated media programming may be presented in such a manner that the user is not aware that the source is media source 100.
  • media elements available through individual servers 130, 135, 140 may be made available to other servers.
  • a user may make available predetermined programming, or modified programming, to another.
  • First user 220 issues a request for programming to server 210, via a communications protocol such as TCP/IP via the Internet or other network.
  • Server 210 requests programming from media source 200, which assembles media programming from tagged stored media segments in accordance with one or more templates or other preferences and instructions, and returns the media programming to server 210.
  • Server 210 provides the programming, along with an identifier associated with the programming.
  • the identifier may be a URL, by way of example.
  • Server 210 is responsive to a request including the identifier to furnish the same provided programming.
  • the composition of the programming may be stored either at server 210 or media .source 200.
  • User 220 may then provide the identifier, such as a URL, to a second user 230, who then receives the programming by providing the same identifier to server 210.
  • User 220 may provide the identifier to one or more second users
  • the user 220 may include the identifier in an e-mail.
  • the user may cause the identifier to be posted as a URL • on a web page or other resource capable of being accessed through a network.
  • the identifier may be in the form of a permalink.
  • a user may share generated programming with others.
  • a first media source such as source 100
  • a second media source such as source 110
  • has at least a template as •indicated by block 310.
  • a request for programming is received by the second media source, as indicated by block 320.
  • media programming is generated, including media elements from the first media source, and assembly in accordance at least with the template from the second media source, as indicated by block 330.
  • a request is received, as indicated by block 410.
  • a request for media programming, along with at least a template, is provided to media source 100, as indicated by block 420.
  • Media programming is then received from first media source 100, as indicated by block 430.
  • the media programming may then be provided responsive to the request.
  • Media programming may be represented in a hierarchical manner, depending on the level of filtration of programming.
  • the level of filtration may be navigated by a user command.
  • the command may be a simple up or down command.
  • the command may provide additional user choices.
  • the user is presented with general media programming with no filtration.
  • a system may present the viewer with two tiers of viewing at any of the levels described herein. In a first tier, the viewer is presented with relatively brief presentations of programming. The duration of the relatively brief presentations may be selected to be sufficient to permit a viewer to make a . decision as to whether to view longer programming similar to the presented brief presentation.
  • the duration of the relatively brief presentations may be from about one second or less to ten seconds or greater; the duration may be adjusted by the user.
  • a second tier the viewer reviews a relatively long duration of programming, which may be anywhere from about one minute to several hours in duration.
  • the user may continuously be presented with a selection between a first tier and a second tier.
  • the first tier may be named “surf” and the second tire "watch.”
  • the command to switch between first and second tiers may be a surf/watch toggle, as indicated by block 502.
  • the user may be brought to a first tier at a different level.
  • a user starting at block 500 the general - no filter level
  • a display similar to Fig. 5 may be presented to the , user as an aid in navigation.
  • the user may navigate from block 500 to a filtered level, indicated at block 505.
  • the filtered level, in the first tier may present programming filtered by user preferences and demographic information, for example.
  • the user at the second level may be provided a range of subject matter areas, such as music, indicated by block 515, sports indicated by block 510, and other categories, such as drama, nature, comedy, science, politics, and other subject matter categories.
  • the user may be presented with the first tier of that level, which may be filtered in accordance with user preferences.
  • the user may then select a type of music from a menu, such as at blocks 520, 525, 530.
  • the types of rock such as punk 535, indie rock 540 or class rock 545.
  • the user may be presented with an option to select greater or lesser filtering. If the user selects greater filtering, then a more narrow range of programming, based on a more narrow range of media elements, is provided, based on information retained regarding the user. For example, if the user regularly selects indie rock from the choices shown in Fig. 5, a selection of greater filtering from the rock genre may result in the programming being limited to indie rock.
  • the particular filtering may not be known to the user.
  • the selection of greater filtering may result in the limiting of media programming by a factor such as geography.
  • the user may not return to the same selection logic.
  • the selection of less filtering by pressing on an UP button, for example at 502
  • may result in a loss of genre selection so that a user moves from Rock to Music.
  • a selection of greater filtering by pressing on a DOWN button 503, for example, may result in time period filtering, so that the user, rather than returning to music made up of elements tagged as Rock, receives programming tagged as music from the 1980's of all types.
  • the user may be presented with a • menu of options, such as genre, time period, types of instruments, nationality of performers, and other parameters. The user may select or deselect such parameters before selecting an UP or DOWN arrow. Based on the stored preferences associated with the user, the parameters for generation of media will then be altered. The user does not need to select the particular parameter. For example, if the user selects type of instrument and then the DOWN arrow, and the system has a stored preference of the user for brass instruments, then media elements including brass instruments will be selected.
  • a media element may be assigned a value on a plurality of scales or axes.
  • the scales or axes may be binary, for those either including or excluding a specific element. Even after a media element has been tagged, the element may be associated with additional tags or information in accordance with additional scales or axes.
  • each scene within a pre- existing film may be tagged on a number of scales.
  • the scales shown in Fig. 6 are merely exemplary, and others may be contemplated.
  • Scale 605 is a scale of violence, and includes exemplary data points, which vary from two individuals engaged in unarmed combat to mass mayhem.
  • Scale 610 is a scale of interpersonal conflict with a different range.
  • Scale 615 is a scale pertinent to romance.
  • the assigned values may be obtained in any suitable manner.
  • a processor may be caused by software to present a user interface for a user to select and input an assigned value.
  • the assigned value may be received, and then be stored in a database associated with the media element, or may be recorded immediately, or at a later time, as metadata associated with a digital media element.
  • automated processes including, for example, pattern recognition software, may assign values on one or more scales.
  • pre-existing programming such as films
  • pre-existing programming may be tagged as individual media elements, and then the media elements assembled into programming using entirely different criteria.
  • the pre-existing programming may be divided into fixed media elements, or the tagging of media elements may be accomplished by designating time periods associated with the ; programming to have various tags associated therewith.
  • existing programming may be tagged as individual media elements according to !one or more selected parameters, as indicated at 710.
  • the media elements may be tagged in this embodiment with a temporal order consistent with the preexisting programming.
  • the parameters may be sex and violence.
  • a user may be given the option of selecting a level, such as a maximum level, of one of these parameters, such as sex and violence.
  • a system may generate programming, in the form of a version of the pre-existing programming having media elements that exceeded a selected level of sex or violence excluded from the assembled programming, as indicated at 730.
  • a user may select a desired level, or a minimum level of a parameter such as sex, violence, or other material, and a version of the programming may be generated meeting those requirements.
  • a desired level or a minimum level of a parameter such as sex, violence, or other material
  • a version of the programming may be generated meeting those requirements.
  • the temporal order of the media elements as presented in the pre-existing programming may be preserved.
  • Fig. 8 a further method of generating programming from media elements will be described.
  • a user has presented to him or her at least a first media program, shown in the window 805 of display 800.
  • the program may have one or more parameters associated therewith, or individual media elements included in the program may have one or more parameters associated therewith.
  • the parameters may relate to the subject matter of the program, the nature of the program, or other factors.
  • parameters related to the depicted frame may relate to the proportion of men and women depicted in the programming, and to the level of action versus talk.
  • two sliders 810, 815 are indicated for these two parameters.
  • a signal is provided to the system to adjust the parameters related to generation of programming.
  • the system then proceeds to assemble and return at least a second media program responsive to the user parameter selection.
  • the user prompt may take any suitable form. Examples of forms include buttons, arrows, selectable boxes, numerical values, and any other type of form available.
  • the parameters may take a wide variety of forms.
  • the parameters may include bands influenced by the band currently displayed, more emphasis or individual members, different styles of music, by way of example.
  • the programming relates to an individual, such as an actor/director, the parameters presented may include such choices as leading role, cameo appearance, early career, recent appearances, and other information.
  • the parameters may include a wide variety of factors that can be adjusted.
  • the setting of scenes may be adjusted between such extremes as city and wilderness, summer and winter, wealthy environment and poor environment, and the like.
  • a conversation parameter may be provided between such extremes as intellectual versus simple and friendly versus hostile. Scales such as those established in connection with a method illustrated above with respect to Fig. 6 may be employed.
  • media segment generators 905, media programming generators 910, and combined media segment and media programming generators 915, 920 are shown.
  • Media segment generators 905 provide segments that may be employed in the generation of programming.
  • Media programming generators 910 generate programming employing media segments provided by others.
  • Combined media segment and media programming generators 920 both generate media segments and generate media programming from generated segments.
  • Media segment generators 905 may associate rules related to use of media segments that they generate.
  • the rules may be in the form of tags that are associated with the media segments.
  • the media segments may then be provided to media programming generators 910, and to combined media segment and media programming generators 915, 920.
  • the rules may, by way of example, permit use in exchange for specified consideration, such as a cash payment, based on a suitable formula.
  • the rules may provide for payment by the media programming generator for use, such as for advertisements of a product or service. It will be appreciated that the programming generator may
  • the rules contained in the tag may also include restrictions on use.
  • the tag may include restrictions on use together with or adjacent to a particular type of media element or programming.
  • a rule may provide that the media element may not be used immediately adjacent to an advertisement, or not within a certain period of time before an advertisement, or after an advertisement.
  • a rule may specify that a media element is not to be used within a given interval after a media element having a particular type of music.
  • a media element including polka music may indicate that it is not to be used within an
  • a media element advertising vehicles with a stress on safety may contain instructions that it is for use within a certain period of time after any programming involving vehicle accidents. Alternatively, consideration for insertion of the advertisement may be greater if the use is within a certain period of time following programming on a selected topic.
  • the tag may include restrictions on use to users who are identified as having certain preferences, or as belonging to a particular demographic. For example, a tag may identify that the media element is for use exclusively for females in the 20 to 29 year age range.
  • a media element may include rules indicating that it is not to be used within a certain interval of any media element having a certain mood. For example, a media element showing a party scene may have a rule indicating that it is not for use within five minutes of a media element tagged as having a mood indicated as sad, somber or mourning.
  • the methods and systems described above may be implemented with computer storage products or computer readable media that contain program code or computer software for causing a processor to perform the various computer-implemented operations.
  • the computer-readable medium is any data storage device that can store data which can thereafter be read by a computer system such as a microprocessor.
  • the media and program code may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well known to those of ordinary skill in the computer software arts.
  • Examples of computer-readable media include, but are not limited to magnetic media such as hard disks, floppy disks, and magnetic .tape; optical media such as CD-ROM disks; magneto-optical media; and 'specially configured hardware devices such as application-specific integrated circuits (ASICs), programmable logic devices (PLDs), and ROM and RAM devices.
  • Examples of program code include both machine code, as produced, for example, by a compiler, or files containing higher-level code that may be executed using an interpreter. Steps in the computer-implemented methods may be implemented in processors running software stored locally, and/or in configurations such as application service providers, in which certain steps are executed on processors communicating with one another over a network such as the Internet. Either stand-alone computers or client/server systems, or any combination thereof, may be employed.
  • any of the steps in the methods described above may be implemented by one or more processors executing instructions stored in computer-readable memories. It will be appreciated that any of the method steps described above may be implemented by means for performing the step, wherein the means for performing the step include a processor operating in accordance with instructions contained in computer '.program code.
  • communications may be implemented in a network, such as the Internet, employing the TCP/IP protocol.
  • Media elements may be stored in any suitable medium, which may include magnetic media, and both digital and analog media.
  • Media elements may be stored and transmitted in a compressed format, such as the MPEG-3 format for video, or may be stored and transmitted in uncompressed formats.
  • Tags may be included in fields in files containing media elements in digital format, and may be deemed metadata.
  • media elements may include one or more identifying indicia, and tag information may be stored in • separate databases or other files.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Astronomy & Astrophysics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

A method of generating media programming includes providing a first media source having a plurality of media elements, tags associated with each of the media elements, and one or more first media source templates for assembling of the media elements into media programming. The method further includes providing a second media source, the second media source having at least a second template and receiving a request for media programming at the second media source. The method further includes in response to the request, generating media programming including selected ones of the media elements assembled in accordance with at least the second template.

Description

METHOD AND SYSTEM FOR GENERATION OF MEDIA
FIELD OF THE INVENTION
[0001] The present invention relates to generation of media programming.
BACKGROUND OF THE INVENTION
[0002] Methods and systems for generation of media programming have been disclosed in my U.S. Patent No. 6,032,156, which is hereby incorporated by reference herein in its entirety. In some embodiments, a library of media elements, which may include brief video clips, brief audio recordings, and other types of media, may be maintained. The media elements are tagged, and a : database maintains the tags. Various parameters and instructions for assembly of media elements into programming may be provided, such as through templates, and the media elements are assembled into media programming.
SUMMARY OF THE INVENTION
[0003] In an embodiment, a method of generating media programming includes providing a first media source having a plurality of media elements, tags associated with each of the media elements, and one or more first media source templates for assembling of the media elements into media programming. The method further includes providing a second media source, the second media source having at least a second template and receiving a request for media programming at the second media source. The method .further includes in response to the request, generating media programming : comprising selected ones of the media elements assembled in accordance with at least the second template.
[0004] In another embodiment, a method of providing media programming includes receiving a request for media programming; providing to a first media source a request for generation of media programming, the first
. media source having media elements, tags associated with each of the media elements, and one or more first media source templates for assembling of the media elements into media programming, the programming to be assembled in accordance with at least a second template from the second media source; receiving generated media programming from the first source; and providing the generated media programming responsive to the request.
[0005] In another embodiment, a system for generating media programming includes a first media source having media elements, tags associated with each of the media elements, and one or more first media source templates for assembling of the media elements into media programming; and a second media source having at least a second template. At least one of the first and second media sources is adapted to generate, in response to a request for media programming received at the second source, media programming including selected ones of the media elements assembled in accordance with at least the second template.
[0006] In another embodiment, a method for generating media programming includes providing a media source having media elements, tags associated with each of the media elements, and one or more first templates for assembling of the media elements into media programming; receiving a request for media programming; responsive to the request, generating media programming including ones of the media elements assembled in accordance with at least one of the templates; providing the media programming and an identifier associated with the media programming in response to the request; receiving the identifier in a second request; and providing the media programming in response to the second request.
[0007] In another embodiment, a system for generating media programming includes a media source having media elements, tags associated with each of the media elements, and one or more first templates for assembling of the media elements into media programming. The media source being adapted to receive a request for media programming and, responsive to the request, generate media programming including ones of the media elements assembled in accordance with at least one of the templates. The system has a processor for providing the media programming and an identifier associated with the media programming in response to the request; receiving the identifier in a second request; and providing the media programming in response to the second request.
[0008] In another embodiment, a method of facilitating navigating a system having media elements and adapted to assemble the media elements into media programming includes providing for a user at least a first media program assembled from the media elements in accordance with a first level; presenting to a user a menu option to select a second level; receiving from the user a selection of the second level; and providing for the user a first tier experience including a series of media programs of relatively brief duration assembled from ones of the media elements consistent with the selected option.
[0009] In another embodiment, a system for facilitating navigating a system having media elements and adapted to assemble the media elements into media programming includes a processor, operating in accordance with instructions in computer program code, for providing for a user at least a first media program assembled from the media elements in accordance with a first level; a processor, operating in accordance with instructions in computer • program code, for presenting to a user a menu option to select a second level; and a processor, operating in accordance with instructions in computer program code for, in response to receiving from the user a selection of the second level, providing for the user a first tier experience including a series of media programs of relatively brief duration assembled from ones of the media elements consistent with the selected option.
[0010] In another embodiment, a method of tagging each of multiple media elements includes assigning a value to each of the media elements on a first scale; and assigning a value to each of the media elements in a second scale. [0011] In another embodiment, a method of generating media programming includes assigning a value to media elements on at least one scale, wherein the media elements make up pre-existing programming; receiving a rule related to a value on the scale; and in response to receiving the rule, generating a version of the pre-existing programming having media elements that violate the rule deleted, a temporal order of the media elements being preserved.
[0012] In another embodiment, a computer-readable medium having stored thereon a plurality of instructions, the plurality of instructions including instructions for performing the steps of receiving an assignment of a value to a
. plurality of media elements on at least one scale, wherein the media elements
• make up pre-existing programming; receiving a rule related to a value on the scale; and in response to receiving the rule, generating a version of the preexisting programming having media elements that violate the rule deleted, a temporal order of the media elements being preserved.
[0013] In another embodiment, a method of providing media
• programming from media elements, parameters being associated with each of the media elements, includes providing a user prompt related to one or more parameters associated with media elements included in a first media program assembled from a library of media elements; receiving from a user a parameter selection signal; and providing a second media program assembled from the library of media elements in response to the received parameter selection signal.
[0014] In another embodiment, a computer-readable medium has stored thereon instructions, including instructions for causing a processor to provide a user prompt related to one or more parameters associated with media elements included in a first media program assembled from a library of media elements; receiving from a user a parameter selection signal; and causing the processor to provide a second media program assembled from the library of media elements , in response to the received parameter selection signal. [0015] In another embodiment, a method of generating media programming includes providing a first media source having a plurality of first media elements, tags associated with each of the first media elements, and one or more first media source templates for assembling of the first media elements into media programming; receiving at least one second media element from a second media source, the second media element having at least one rule for use associated therewith; and generating media programming including at least some of the first media elements and the second media element, in accordance with at least one of the templates and the rule.
[0016] In another embodiment, a system for generating media programming includes a first media source having first media elements, tags associated with each of the first media elements, and one or more first media source templates for assembling of the first media elements into media programming. The first media source is adapted to receive at least one second media element from a second media source, the second media element having at least one rule for use associated therewith; and to generate media programming including at least some of the first media elements and the second media element, in accordance with at least one of the templates and the rule.
BRIEF DESCRIPTION OF THE DRAWINGS
[0017] Understanding of the present invention will be facilitated by consideration of the following detailed description of the preferred embodiments of the present invention taken in conjunction with the accompanying drawings, in which like numerals refer to like parts and:
[0010] Fig. 1 shows a schematic diagram of a system according to an embodiment;
[0011] Fig. 2 is a schematic diagram of a system according to an alternative embodiment;
[0012] Fig. 3 is a process flow diagram of a process according to an embodiment; [0013] Fig. 4 is a process flow diagram of a process according to an alternative embodiment.
[0014] Fig. 5 illustrates a method and system for navigation in an embodiment.
[0015] Fig. 6 illustrates exemplary scales for tagging of media elements in an embodiment.
[0016] Fig. 7 is a process flow diagram of a process according to an embodiment.
[0017] Fig. 8 illustrates a display according to an embodiment.
[0018] Fig. 9 is a block diagram illustrating an embodiment.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0019] The following description of the preferred embodiments is merely by way of example and is in no way intended to limit the invention, its application, or uses.
[0020] Referring now to Fig. 1 , a system for generation of media programming will be described. A media source 100 is shown. Media source 100 may include a database containing tags including information regarding a plurality of media elements. Media source 100 may also include stored media elements. Media source 100 may further include one or more templates for assembling of media elements into programming.
[0021] Media elements may include any media information that may be viewed, heard, or otherwise experienced by a user, or that affects any media that may be viewed, heard or otherwise experienced by a user. By way of example, media elements may include periods of prerecorded video, prerecorded audio, prerecorded audio and video, and instructions related to generation of audio and video. [0022] Tags may include any information characterizing any media element. Such tags may include a summary of content, type of media, information regarding lighting, effects, music, sound quality, scenes, and any other type of information related to the media element. Tags may be maintained in a separate database from media elements, or may be in the form of meta data or other data associated with media elements.
[0023] Templates include information and instructions for assembling media elements. The media elements do not have an inherent temporal order.
[0024] At least one media generator, in addition to media source 100, is provided. In the embodiment of Fig. 1, three media generators 110, 115, 120 are illustrated. Each media generator 110, 115, 120 may include templates or other instructions or sets of instructions for generating media programming. The instructions for generating media programming may include instructions for selection of media elements by any suitable parameter to generate media programming. By way of example, the instructions may limit the generated media programming by topic. By way of alternative example, the instructions may include insertion of specific media elements in any media programming, or require the insertion of media elements having a particular tag. The specific media elements to be inserted may include a reference to the name or identity of an owner or operator of a media generator, for example.
[0025] In one embodiment, the media generator 110, 115, 120 may provide instructions, in the form of tags and templates, to media source 100. In accordance with the received instructions, media source 100 may provide programming, such as in the form of a suitably interpolated audio, video, or audiovisual program, to media generator 110 or to server 130, for serving to user 150. Thus, in response to a request received from a user 150, which may be generated by, for example, a web client running on a personal computer, personal digital assistant, cellular telephone, digital cable, satellite or Internet .television, satellite radio, satellite telephone, or other device, media generator 110 develops a set of instructions, and provides those instructions to media source 100. In response to the set of instructions, media source 100 assembles and delivers programming to media generator 110. Media generator provides those to server 130, which then returns the programming to the user 150. Of course, it will be appreciated that the programming may be delivered directly to user 150, such as through a separate browser window.
[0026] In another embodiment, media generators 110, 115, 120 maintain locally a database identifying media elements. In this embodiment, media generator determines, based on a set of instructions, the media elements and their order. The media elements and their order are then delivered to media source 100, which returns media programming as above. In yet another embodiment, media generators 110, 115, 120 each include both a database of tags and other information relating to media elements, and recorded media elements as well. The recorded media elements may be copied periodically from the recorded media elements maintained by media source 100, or may be a subset of those stored recorded media elements. Additional media elements not maintained at media source 100 may also be provided.
[0027] In some embodiments, each of servers 130, 135, 140 may be operated by entities distinct from an owner or operator of the media source 100. Examples of owners or operators may include providers of entertainments, such as musical groups, including bands and orchestras, film studios, music producers, theatrical groups; retailers of goods and services; educational institutions; other non-profits, and other entities. By way of example, server 130 may provide a website of a musical artist. When user 150 presents a request to server 130, server 130 issues a request to media generator 110 to provide media programming. Media programming is returned, in one of the implementations discussed above, including, for example, a setection of clips of the band playing. The programming may also include interviews with one or more band members, music videos, videos taken backstage at concert venues, and other content that is tagged as being of interest. Videos and other media contributed by other users, such as fans of a band, may be incorporated into the library of media elements. [0028] In another example, server 140 provides a website of a retailer.
The media returned may include programming including media elements featuring activities related specifically to products sold by the retailer, and/or to a general impression that the retailer wishes to provide. For example, a retailer of hiking, camping and other outdoor gear may provide nature and adventure media programming. A retailer of housewares may provide media programming featuring home design, or entertaining at home, by way of example.
[0029] In the above embodiments, consideration may be paid to an entity that owns or operates media source 100 by an entity that owns or operates one or more of servers 130, 135, 140.
[0030] The generation of the media programming may be transparent to the user, so that the user is aware only of the server 130, 135 or 140, and is not aware of the first media source 100. By way of example, media programming may include various devices for branding with the identity of server 130, 135, 140, or the respective owner or operator. Such devices for branding may include incorporating a logo in an image display, periodically or at logical breaks in programming inserting audio or video identities of the owner or operator, or other techniques.
[0031] In some embodiments, if a user, such as any of users 150, 155,
160 has exhausted all of the media that is specific to the owner or operator of server 130, 135, 140, such as all the media elements relating to a band, then a request may result in the generation of media programming from media source 100. Such generated media programming may be presented in such a manner that the user is not aware that the source is media source 100.
[0032] In another embodiment, media elements available through individual servers 130, 135, 140, may be made available to other servers.
[0033] In an embodiment, explained with reference to Fig. 2, a user may make available predetermined programming, or modified programming, to another. First user 220 issues a request for programming to server 210, via a communications protocol such as TCP/IP via the Internet or other network. Server 210 requests programming from media source 200, which assembles media programming from tagged stored media segments in accordance with one or more templates or other preferences and instructions, and returns the media programming to server 210. Server 210 provides the programming, along with an identifier associated with the programming. The identifier may be a URL, by way of example. Server 210 is responsive to a request including the identifier to furnish the same provided programming. By way of example, the composition of the programming may be stored either at server 210 or media .source 200. User 220 may then provide the identifier, such as a URL, to a second user 230, who then receives the programming by providing the same identifier to server 210.
[0034] User 220 may provide the identifier to one or more second users
230 in any suitable manner. For example, the user 220 may include the identifier in an e-mail. The user may cause the identifier to be posted as a URL • on a web page or other resource capable of being accessed through a network. In some embodiments, the identifier may be in the form of a permalink. Advantageously, a user may share generated programming with others.
[0035] Referring to Fig. 3, a method will now be described. A first media source, such as source 100, is provided, as indicated by block 300. A second media source, such as source 110, is provided, and has at least a template, as •indicated by block 310. A request for programming is received by the second media source, as indicated by block 320. In response to the request, media programming is generated, including media elements from the first media source, and assembly in accordance at least with the template from the second media source, as indicated by block 330.
[0036] Referring now to Fig. 4, a method performed by a media source,
such as media source 110, will now be described. A request is received, as indicated by block 410. A request for media programming, along with at least a template, is provided to media source 100, as indicated by block 420. Media programming is then received from first media source 100, as indicated by block 430. The media programming may then be provided responsive to the request.
[0037] Referring now to Fig. 5, a system of navigation will be explained.
Media programming may be represented in a hierarchical manner, depending on the level of filtration of programming. The level of filtration may be navigated by a user command. In some embodiments, the command may be a simple up or down command. In other embodiments, the command may provide additional user choices. For example, at a highest level, indicated by block 500 of Fig. 5, the user is presented with general media programming with no filtration. A system may present the viewer with two tiers of viewing at any of the levels described herein. In a first tier, the viewer is presented with relatively brief presentations of programming. The duration of the relatively brief presentations may be selected to be sufficient to permit a viewer to make a . decision as to whether to view longer programming similar to the presented brief presentation. By way of example, the duration of the relatively brief presentations may be from about one second or less to ten seconds or greater; the duration may be adjusted by the user. In a second tier, the viewer reviews a relatively long duration of programming, which may be anywhere from about one minute to several hours in duration. The user may continuously be presented with a selection between a first tier and a second tier. By way of example, the first tier may be named "surf" and the second tire "watch." The command to switch between first and second tiers may be a surf/watch toggle, as indicated by block 502. By selecting a level, in either the first or second tier, the user may be brought to a first tier at a different level. By way of example, a user starting at block 500, the general - no filter level, may be presented with options of greater detail. A display similar to Fig. 5 may be presented to the , user as an aid in navigation. The user may navigate from block 500 to a filtered level, indicated at block 505. The filtered level, in the first tier, may present programming filtered by user preferences and demographic information, for example. The user at the second level may be provided a range of subject matter areas, such as music, indicated by block 515, sports indicated by block 510, and other categories, such as drama, nature, comedy, science, politics, and other subject matter categories. In response to the selection of one of these categories, the user may be presented with the first tier of that level, which may be filtered in accordance with user preferences. The user may then select a type of music from a menu, such as at blocks 520, 525, 530. The types of rock, such as punk 535, indie rock 540 or class rock 545.
[0038] In a further embodiment, the user may be presented with an option to select greater or lesser filtering. If the user selects greater filtering, then a more narrow range of programming, based on a more narrow range of media elements, is provided, based on information retained regarding the user. For example, if the user regularly selects indie rock from the choices shown in Fig. 5, a selection of greater filtering from the rock genre may result in the programming being limited to indie rock.
[0039] Alternatively, the particular filtering may not be known to the user.
For example, the selection of greater filtering may result in the limiting of media programming by a factor such as geography.
[0040] If the user selects less filtering, i.e., a high level in the hierarchy,
- and then selects a greater level of filtering, the user may not return to the same selection logic. For example, the selection of less filtering, by pressing on an UP button, for example at 502, may result in a loss of genre selection, so that a user moves from Rock to Music. A selection of greater filtering, by pressing on a DOWN button 503, for example, may result in time period filtering, so that the user, rather than returning to music made up of elements tagged as Rock, receives programming tagged as music from the 1980's of all types.
[0041] It will be appreciated that the numbers of levels may be unlimited, depending on the granularity of the definition of the scope of the tags that will be included in the generated programming.
[0042] The user may be presented with an option of selecting parameters
.to be employed or discarded. For example, the user may be presented with a menu of options, such as genre, time period, types of instruments, nationality of performers, and other parameters. The user may select or deselect such parameters before selecting an UP or DOWN arrow. Based on the stored preferences associated with the user, the parameters for generation of media will then be altered. The user does not need to select the particular parameter. For example, if the user selects type of instrument and then the DOWN arrow, and the system has a stored preference of the user for brass instruments, then media elements including brass instruments will be selected.
[0043] In another embodiment, and referring now to Fig. 6, a method of making media elements available for multiple purposes will be explained. A media element may be assigned a value on a plurality of scales or axes. The scales or axes may be binary, for those either including or excluding a specific element. Even after a media element has been tagged, the element may be associated with additional tags or information in accordance with additional scales or axes. By way of example, referring to Fig. 6, each scene within a pre- existing film may be tagged on a number of scales. The scales shown in Fig. 6 are merely exemplary, and others may be contemplated. Scale 605 is a scale of violence, and includes exemplary data points, which vary from two individuals engaged in unarmed combat to mass mayhem. Scale 610 is a scale of interpersonal conflict with a different range. Scale 615 is a scale pertinent to romance.
[0044] The assigned values may be obtained in any suitable manner. For example, a processor may be caused by software to present a user interface for a user to select and input an assigned value. The assigned value may be received, and then be stored in a database associated with the media element, or may be recorded immediately, or at a later time, as metadata associated with a digital media element. In another embodiment, automated processes, including, for example, pattern recognition software, may assign values on one or more scales.
[0045] It will be appreciated that, for example, scenes from a dramatic film may be tagged with a wide variety of binary tags. Tags for the presence and absence of men, women, vehicles, cars, trains, actions, such as persons entering buildings, persons leaving buildings, demographic characteristics, and other characteristics. Entirely different selected parameters may return the same scene.
[0046] In an embodiment, pre-existing programming, such as films, may be tagged as individual media elements, and then the media elements assembled into programming using entirely different criteria. The pre-existing programming may be divided into fixed media elements, or the tagging of media elements may be accomplished by designating time periods associated with the ; programming to have various tags associated therewith.
[0047] In another embodiment, explained with reference to Fig. 7, pre-
, existing programming may be tagged as individual media elements according to !one or more selected parameters, as indicated at 710. The media elements may be tagged in this embodiment with a temporal order consistent with the preexisting programming. By way of example, the parameters may be sex and violence. A user may be given the option of selecting a level, such as a maximum level, of one of these parameters, such as sex and violence. Upon receiving a selection, indicated at 720, a system may generate programming, in the form of a version of the pre-existing programming having media elements that exceeded a selected level of sex or violence excluded from the assembled programming, as indicated at 730. In another embodiment, a user may select a desired level, or a minimum level of a parameter such as sex, violence, or other material, and a version of the programming may be generated meeting those requirements. In these embodiments, the temporal order of the media elements as presented in the pre-existing programming may be preserved.
[0048] Referring now to Fig. 8, a further method of generating programming from media elements will be described. A user has presented to him or her at least a first media program, shown in the window 805 of display 800. The program may have one or more parameters associated therewith, or individual media elements included in the program may have one or more parameters associated therewith. The parameters may relate to the subject matter of the program, the nature of the program, or other factors. By way of example, parameters related to the depicted frame may relate to the proportion of men and women depicted in the programming, and to the level of action versus talk. In the disclosed embodiment, two sliders 810, 815 are indicated for these two parameters. If the user adjusts either of these sliders, such as by moving a mouse cursor over a slider, clicking, and dragging to the left or right, a signal is provided to the system to adjust the parameters related to generation of programming. The system then proceeds to assemble and return at least a second media program responsive to the user parameter selection.
[0049] The user prompt may take any suitable form. Examples of forms include buttons, arrows, selectable boxes, numerical values, and any other type of form available.
[0050] The parameters may take a wide variety of forms. For example, if the current media programming relates to a musical artist or band, the parameters may include bands influenced by the band currently displayed, more emphasis or individual members, different styles of music, by way of example. If the programming relates to an individual, such as an actor/director, the parameters presented may include such choices as leading role, cameo appearance, early career, recent appearances, and other information.
[0051] The parameters may include a wide variety of factors that can be adjusted. For example, the setting of scenes may be adjusted between such extremes as city and wilderness, summer and winter, wealthy environment and poor environment, and the like. A conversation parameter may be provided between such extremes as intellectual versus simple and friendly versus hostile. Scales such as those established in connection with a method illustrated above with respect to Fig. 6 may be employed.
[0052] It will be appreciated that the ability to select parameters depends on the tagging associated with the media elements. [0053] Referring now to Fig. 9, a method for generation of media from media elements having associated rules related to sharing of the elements will be described. In the embodiment of Fig. 9, media segment generators 905, media programming generators 910, and combined media segment and media programming generators 915, 920 are shown. Media segment generators 905 provide segments that may be employed in the generation of programming. Media programming generators 910 generate programming employing media segments provided by others. Combined media segment and media programming generators 920 both generate media segments and generate media programming from generated segments.
[0054] Media segment generators 905 may associate rules related to use of media segments that they generate. The rules may be in the form of tags that are associated with the media segments. The media segments may then be provided to media programming generators 910, and to combined media segment and media programming generators 915, 920. The rules may, by way of example, permit use in exchange for specified consideration, such as a cash payment, based on a suitable formula. The rules may provide for payment by the media programming generator for use, such as for advertisements of a product or service. It will be appreciated that the programming generator may
. maintain a log of such uses, and periodically provide statements.
[0055] The rules contained in the tag may also include restrictions on use. By way of example, the tag may include restrictions on use together with or adjacent to a particular type of media element or programming. By way of example, a rule may provide that the media element may not be used immediately adjacent to an advertisement, or not within a certain period of time before an advertisement, or after an advertisement. By way of further example,
• a rule may specify that a media element is not to be used within a given interval after a media element having a particular type of music. For example, a media element including polka music may indicate that it is not to be used within an
. interval of a certain period of time of any media element including rock music.
By way of further example, a media element advertising vehicles with a stress on safety may contain instructions that it is for use within a certain period of time after any programming involving vehicle accidents. Alternatively, consideration for insertion of the advertisement may be greater if the use is within a certain period of time following programming on a selected topic. By way of further example, the tag may include restrictions on use to users who are identified as having certain preferences, or as belonging to a particular demographic. For example, a tag may identify that the media element is for use exclusively for females in the 20 to 29 year age range. By way of further example, a media element may include rules indicating that it is not to be used within a certain interval of any media element having a certain mood. For example, a media element showing a party scene may have a rule indicating that it is not for use within five minutes of a media element tagged as having a mood indicated as sad, somber or mourning.
[0056] The methods and systems described above may be implemented with computer storage products or computer readable media that contain program code or computer software for causing a processor to perform the various computer-implemented operations. The computer-readable medium is any data storage device that can store data which can thereafter be read by a computer system such as a microprocessor. The media and program code may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well known to those of ordinary skill in the computer software arts. Examples of computer-readable media include, but are not limited to magnetic media such as hard disks, floppy disks, and magnetic .tape; optical media such as CD-ROM disks; magneto-optical media; and 'specially configured hardware devices such as application-specific integrated circuits (ASICs), programmable logic devices (PLDs), and ROM and RAM devices. Examples of program code include both machine code, as produced, for example, by a compiler, or files containing higher-level code that may be executed using an interpreter. Steps in the computer-implemented methods may be implemented in processors running software stored locally, and/or in configurations such as application service providers, in which certain steps are executed on processors communicating with one another over a network such as the Internet. Either stand-alone computers or client/server systems, or any combination thereof, may be employed.
[0057] It will be appreciated that any of the steps in the methods described above may be implemented by one or more processors executing instructions stored in computer-readable memories. It will be appreciated that any of the method steps described above may be implemented by means for performing the step, wherein the means for performing the step include a processor operating in accordance with instructions contained in computer '.program code.
[0058] The methods and systems described herein may employ any suitable communications interface and hardware. By way of non-limiting example, communications may be implemented in a network, such as the Internet, employing the TCP/IP protocol.
, [0059] Media elements may be stored in any suitable medium, which may include magnetic media, and both digital and analog media. Media elements may be stored and transmitted in a compressed format, such as the MPEG-3 format for video, or may be stored and transmitted in uncompressed formats. Tags may be included in fields in files containing media elements in digital format, and may be deemed metadata. Alternatively, media elements may include one or more identifying indicia, and tag information may be stored in • separate databases or other files.
[0060] In embodiments having multiple media generators, it will be appreciated that there are numerous possible distributions of the functions of generating media. For example, all media elements may be stored in a single media source, which generates all programming. Alternatively, an entire library of media elements, or portions of a library of media elements, may be stored in association with one or more additional media generators. Protocols may be provided for distribution of media elements between different stored libraries of media elements. A library of media elements is any set of more than one media - element ^ [0061] It will be appreciated that the embodiments described and illustrated herein are merely exemplary.

Claims

ClaimsWhat is claimed is:
1. A method of generating media programming, comprising: providing a first media source having a plurality of media elements, tags associated with each of said media elements, and one or more first media source templates for assembling of said media elements into media programming; providing a second media source, said second media source having at least a second template; receiving a request for media programming at said second media source; and in response to said request, generating media programming comprising selected ones of said media elements assembled in accordance with at least said second template.
2. The method of claim 1 , wherein said step of generating media programming is performed at the first media source.
3. The method of claim 1 , wherein said step of generating media programming is performed at the second media source.
4. The method of claim 1 , wherein said request is received from a user, and further comprising providing the generated media programming to the user.
5. The method of claim 1 , wherein said second template requires insertion in the generated programming of a media element identifying an owner or operator of the second media source.
6. The method of claim 1 , wherein said second template determines a topic of the generated programming. :7. A method of providing media programming, comprising: receiving a request for media programming; providing to a first media source a request for generation of media programming, the first media source having a plurality of media elements, tags associated with each of said media elements, and one or more first media source templates for assembling of said media elements into media programming, said programming to be assembled in accordance with at least a second template from the second media source; receiving generated media programming from the first source; and providing the generated media programming responsive to the request.
.
8. A system for generating media programming, comprising: a first media source having a plurality of media elements, tags associated with each of said media elements, and one or more first media source templates for assembling of said media elements into media . programming; and a second media source, said second media source having at least . a second template; at least one of said first and second media sources adapted to generate, in response to a request for media programming received at said second source, media programming comprising selected ones of said media elements assembled in accordance with at least said second template.
9. A method for generating media programming, comprising: providing a media source having a plurality of media elements, :tags associated with each of said media elements, and one or more first templates for assembling of said media elements into media programming receiving a request for media programming; responsive to the request, generating media programming comprising ones of said media elements assembled in accordance with at least one of said templates; providing the media programming and an identifier associated with the media programming in response to the request; receiving the identifier in a second request; and providing the media programming in response to the second request.
10. A system for generating media programming, comprising: a media source having a plurality of media elements, tags associated with each of said media elements, and one or more first templates for assembling of said media elements into media programming; said media source being adapted to receive a request for media programming and, responsive to the request, generate media programming comprising ones of said media elements assembled in accordance with at least one of said templates; processor for providing the media programming and an identifier associated with the media programming in response to the request; receiving the identifier in a second request; and providing the media programming in response to the second request.
11. A method of facilitating navigating a system having media elements and adapted to assemble the media elements into media
• programming, comprising the steps of: providing for a user at least a first media program assembled from the media elements in accordance with a first level; presenting to a user a menu option to select a second level; receiving from the user a selection of the second level; and providing for the user a first tier experience comprising a series of media programs of relatively brief duration assembled from ones of the media elements consistent with the selected option.
12. The method of claim 11 , wherein the user is provided with an option of selecting a second tier experience comprising at least one media program of relatively long duration assembled from ones of the media elements.
13. The method of claim 11 , further comprising providing the user with a menu of second level options.
14. The method of claim 11 , wherein, in response to the user selection of the second level, more narrow filtering of media elements is provided based on information regarding the user.
15. The method of claim 11 , wherein a user may select filtering parameters.
16. A system for facilitating navigating a system having media elements and adapted to assemble the media elements into media programming, comprising; means for providing for a user at least a first media program assembled from the media elements in accordance with a first level; means for presenting to a user a menu option to select a second level; and means for, in response to receiving from the user a selection of the second level, providing for the user a first tier experience comprising a series of media programs of relatively brief duration assembled from ones of the media elements consistent with the selected option.
17. A method of tagging each of a plurality of media elements, comprising: assigning a value to each of said media elements on a first scale; and assigning a value to each of said media elements in a second scale.
18. The method of claim 17, wherein each of said media elements comprises a portion of a preexisting media work.
19. The method of claim 17, wherein said preexisting media work comprises one of a film, dramatic television program, and sporting event.
20. A method of generating media programming, comprising: assigning a value to a plurality of media elements on at least one scale, wherein the media elements make up pre-existing programming; receiving a rule related to a value on the scale; and in response to receiving the rule, generating a version of the preexisting programming having media elements that violate the rule deleted, a temporal order of the media elements being preserved.
21. The method of claim 20, wherein the rule is a maximum value.
' 22. The method of claim 20, wherein the rule is a desired value.
23. A computer-readable medium having stored thereon a plurality of instructions, the plurality of instructions including instructions for performing: receiving an assignment of a value to a plurality of media elements on at least one scale, wherein the media elements make up pre-existing programming; receiving a rule related to a value on the scale; and in response to receiving the rule, generating a version of the preexisting programming having media elements that violate the rule deleted, a temporal order of the media elements being preserved.
24. A method of providing media programming from a plurality of media elements, parameters being associated with each of said media elements, comprising the steps of: providing a user prompt related to one or more parameters associated with media elements included in a first media program assembled from a library of media elements; receiving from a user a parameter selection signal; and providing a second media program assembled from the library of media elements in response to the received parameter selection signal.
25. The method of claim 24, wherein said user prompt comprises at least an adjustable first parameter.
26. A computer-readable medium having stored thereon a plurality of instructions, the plurality of instructions including instructions for performing: providing a user prompt related to one or more parameters associated with media elements included in a first media program assembled ,from a library of media elements; receiving from a user a parameter selection signal; and providing a second media program assembled from the library of media elements in response to the received parameter selection signal.
27. A method of generating media programming, comprising: providing a first media source having a plurality of first media elements, tags associated with each of said first media elements, and one or more first media source templates for assembling of said first media elements into media programming; receiving at least one second media element from a second media source, said second media element having at least one rule for use associated •therewith; generating media programming comprising a plurality of said first media elements and said second media element, in accordance with at least one of said templates and said rule.
28. The method of claim 27, wherein the rule relates to payment for use of the second media element.
29. The method of claim 27, wherein the rule relates to types of the first media elements adjacent to which use of the second media element is permitted.
30. The method of claim 27, wherein the rule relates to demographic characteristics of a user for whom the second media element may be used.
31. A system for generating media programming, comprising: a first media source having a plurality of first media elements, tags associated with each of said first media elements, and one or more first media source templates for assembling of said first media elements into media programming; the first media source being adapted to receive at least one second media element from a second media source, said second media element having at least one rule for use associated therewith; and to generate media programming comprising a plurality of said first media elements and said second media element, in accordance with at least one of said templates and said rule.
PCT/US2007/000207 2006-01-04 2007-01-04 Method and system for generation of media WO2007081761A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US75635706P 2006-01-04 2006-01-04
US60/759,357 2006-01-17

Publications (2)

Publication Number Publication Date
WO2007081761A2 true WO2007081761A2 (en) 2007-07-19
WO2007081761A3 WO2007081761A3 (en) 2008-05-02

Family

ID=38256905

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2007/000207 WO2007081761A2 (en) 2006-01-04 2007-01-04 Method and system for generation of media

Country Status (1)

Country Link
WO (1) WO2007081761A2 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020053078A1 (en) * 2000-01-14 2002-05-02 Alex Holtz Method, system and computer program product for producing and distributing enhanced media downstreams

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020053078A1 (en) * 2000-01-14 2002-05-02 Alex Holtz Method, system and computer program product for producing and distributing enhanced media downstreams

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KIRDA E. ET AL.: 'MyXML: An XML based template engine for the generation of flexible web content' PROCEEDINGS, CHESAPEAKE, VA: AACE, [Online] 2000, pages 317 - 322 Retrieved from the Internet: <URL:http://www.media.inhatc.ac.kr/papers/hypermedia/Kirda00.pdf> *

Also Published As

Publication number Publication date
WO2007081761A3 (en) 2008-05-02

Similar Documents

Publication Publication Date Title
US20200382571A1 (en) Method and system for generation of media
US11115728B2 (en) Method and apparatus for creation, distribution, assembly and verification of media
US20190303402A1 (en) User interface for viewing targeted segments of multimedia content based on time-based metadata search criteria
US8645991B2 (en) Method and apparatus for annotating media streams
JP6124357B2 (en) Automatic monitoring of media content availability
US8316015B2 (en) Tunersphere
US20100325205A1 (en) Event recommendation service
US20020092019A1 (en) Method and apparatus for creation, distribution, assembly and verification of media
US20150172787A1 (en) Customized movie trailers
EP1538838A1 (en) Information processor, information processing method and computer program
US20070277196A1 (en) Methods of user behavior learning and acting in a pervasive system
US20090313324A1 (en) Interactive viewing of media content
US11681738B2 (en) Creative arts recommendation systems and methods
WO2001077776A2 (en) System and method for personalized message creation and delivery
WO2008054744A1 (en) Content rating systems and methods
KR20070104614A (en) Automatic generation of trailers containing product placements
KR101705595B1 (en) Method for intuitively reproducing video contents through data structure and the apparatus thereof
CN101517550A (en) Social and interactive applications for mass media
CN107491995A (en) The apparatus and method for controlling the placement of auxiliary media
KR20090115204A (en) Variation and control of sensory work playback
JP2004364183A (en) Partial content creation method, partial content creation system, partial content creation apparatus, and partial content creation program
US9110954B2 (en) Single access method for multiple media sources
US20090328103A1 (en) Genre-based segment collections
US8751475B2 (en) Providing additional information related to earmarks
US11051064B1 (en) System and process of adaptive video streaming service with anti-piracy tracking providing a unique version of a movie customized by artificial intelligence and tailored specifically for each person or group of people watching

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase in:

Ref country code: DE

DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)
122 Ep: pct application non-entry in european phase

Ref document number: 07716320

Country of ref document: EP

Kind code of ref document: A2

DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)