US20160035387A1 - Automated story generation - Google Patents
Automated story generation Download PDFInfo
- Publication number
- US20160035387A1 US20160035387A1 US14/880,175 US201514880175A US2016035387A1 US 20160035387 A1 US20160035387 A1 US 20160035387A1 US 201514880175 A US201514880175 A US 201514880175A US 2016035387 A1 US2016035387 A1 US 2016035387A1
- Authority
- US
- United States
- Prior art keywords
- user
- movie
- rules
- media content
- theme
- Prior art date
- Legal status (The legal status 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 status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/02—Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
- G11B27/031—Electronic editing of digitised analogue information signals, e.g. audio or video signals
- G11B27/034—Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/765—Interface circuits between an apparatus for recording and another apparatus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/79—Processing of colour television signals in connection with recording
- H04N9/80—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/79—Processing of colour television signals in connection with recording
- H04N9/80—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
- H04N9/82—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
- H04N9/8205—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
Definitions
- Users can create stories, e.g., movies, from user assets such as user images, videos, and audio files. Users can use a computing device to render individual manipulations for combining, grouping and ordering a set of user assets for output presentation. The generated movies can be desirable for sselling the user assets.
- stories e.g., movies
- user assets such as user images, videos, and audio files.
- Users can use a computing device to render individual manipulations for combining, grouping and ordering a set of user assets for output presentation.
- the generated movies can be desirable for sselling the user assets.
- Embodiments discussed herein include systems and methodology for enabling automatic and personalized user story creation.
- user content, or assets are automatically analyzed and organized within a user story, e.g., a movie.
- rules of a theme script that is designed to create a particular feeling or theme for a finished user story are automatically applied to user assets to create a predesigned look for the user assets which become elements of the generated user story.
- an introduction section and an end section for the user story are automatically created pursuant to theme script rules and using user assets, metadata and/or feature information mined from analyzed user assets.
- the user story is automatically organized into chapters pursuant to theme script rules and the nature and quantity of the user assets.
- the user story is personalized by the inclusion of captions that are automatically generated from information mined from analyzed user assets and/or are automatically generated with generic text that can be replaced by user input when the necessary asset information is unavailable or nonexistent.
- various treatments e.g., transitions, effects, music inclusions, titles, credits, caption designs, etc.
- treatments are applied to or generated for elements of the user story pursuant to theme script rules.
- the treatments are intended to help create a personalized user story with a particular look and feel.
- elements of the automatically generated user story can be modified by a user to further enhance the personalization of the final user story.
- a finalized user story can be stored and/or published, e.g., to one or more websites, one or more devices, e.g., cell phones, etc.
- FIG. 1 depicts an embodiment movie production system that automatically transforms and arranges user content to generate a story.
- FIG. 2 depicts sections of an embodiment generated story.
- FIG. 3 depicts embodiment theme script rule groups.
- FIGS. 4A-4B illustrate an embodiment logic flow for an embodiment movie production system.
- FIGS. 5A-5E illustrate an embodiment logic flow for an embodiment movie production system to execute a user-chosen theme script to generate a story.
- FIG. 6 is a block diagram of an exemplary basic computing device system that can process software, i.e., program code, or instructions.
- FIG. 1 depicts an embodiment movie production system 100 that takes as input user content 135 , or user assets 135 , and arranges the user content 135 to generate a personal story, e.g., movie, 160 with high quality and minimum user effort.
- user content 135 can include, but is not limited to, user images 105 , user video 115 , also referred to herein as video clips, user audio 125 , user graphics and/or user text files.
- the user assets 135 are each composed of one or more frames; i.e., one or more images in a set of images 105 , one or more stills in a video 115 , one or more predefined timed segments of an audio file 125 , etc.
- the product, e.g., movie, 160 generated by the movie production system 100 is a resultant story that is told by the user assets 135 included therein along with any dynamically generated elements 155 , e.g., a scrapbook page of selected user images 105 , etc., and preselected elements, e.g., clipart, music, etc.
- the term movie is intended to refer to any product, or story, generated by an embodiment movie production system 100 using user assets 135 .
- a movie 160 consists of a collection of one or more frames wherein each frame can be, or consist of, a user asset, a modified user asset, a dynamically generated element 155 , predefined content, etc., or a combination thereof, etc.
- the movie 160 generated by the movie production system 100 can have three sections, as depicted in FIG. 2 .
- An embodiment first movie section is an intro, or introduction, section 210 .
- an intro section 210 is a section added to the beginning of the movie 160 that introduces the movie 160 .
- an intro section 210 can include one or more titles, one or more credits, date information, user content 135 information, one or more phrases, e.g., lyrics to a song, words from a poem, captions, etc.
- an intro section 210 can also, or alternatively, include content 155 , or elements 155 , that is dynamically generated from user content 135 ; e.g., a collage formed from users assets 135 .
- An embodiment second movie section is the mid, or body, section 220 .
- the mid section 220 is the section of the movie 160 that is the story produced from the user assets 135 .
- the mid section 220 includes user assets 135 , unaltered, transformed, edited and/or modified.
- the mid section 220 can also, or alternatively, include elements 155 dynamically generated from user assets 135 , e.g., a collage of images 105 arranged on a predesigned background, frame captions created from mined metadata, etc.
- frames of the mid section 220 of the movie 160 can also, or alternatively, include predefined content; e.g., a music score, clip art, etc.
- An embodiment third movie section is the outro, or end, section 230 .
- an end section 230 is a section added to the end of the movie 160 that concludes the movie 160 .
- an end section 230 can include one or more titles, one or more credits, date information, user content 135 information, one or more phrases, e.g., lyrics to a song, words from a poem, captions, etc.
- an end section 230 can also, or alternatively, include elements 155 dynamically generated from user content 135 .
- the mid section 220 of a movie 160 can be divided into two or more chapters, or sections, 240 , each with its own subject, or content, or sub-theme.
- each chapter 240 has a mid section 220 .
- each chapter 240 can also include an intro section 210 .
- each chapter 240 can also, or alternatively, include an end section 230 .
- a movie 160 can consist of just a mid section 220 , an intro section 210 and a mid section 220 , a mid section 220 and an end section 230 , or an intro section 210 , a mid section 220 and an end section 230 .
- theme scripts, or script files, 150 of the movie production system 100 are designed to create stories, e.g., movies, 160 from user assets 135 .
- the theme scripts 150 are generated with creative input from one or more artists and/or one or more graphic designers who choose harmonious styling elements for a particular theme.
- theme scripts 150 can also, or alternatively, be generated by a user 145 or any one desiring to author a script file 150 .
- theme scripts 150 can also, or alternatively, be generated by the execution of script design software.
- the theme scripts 150 are in a human-readable format which provides for efficient maintenance and flexible modification of a theme script 150 .
- An embodiment theme application engine 120 of a movie production system 100 has the capability to utilize a user chosen theme script 150 to automatically arrange and transform user assets 135 in such a way that the resultant story, or movie, 160 is of a user-perceived high quality with minimal user effort required.
- the theme application engine 120 runs a theme script 150 against user assets 135 to create a story, or movie, 160 .
- each theme script 150 contains information, or rules 175 , on how the user assets 135 should be filtered, arranged and/or transformed (visually and/or audioally) to create a movie 160 with a particular theme.
- a theme refers to a mood, an aesthetic style or an event, e.g., joyous, sporty, birthday, wedding, sepia, colorful, etc.
- theme scripts 150 provide an abstract mechanism for defining how an end product, e.g., movie 160 , should look and sound without the need to know any details of the user assets 135 .
- Metadata and feature information is mined from the user content 135 ; e.g., any tags related to the user content 135 , any tags identifying people in the user content 135 , any tags identifying the location of the pictured user content 135 ; feature information on where faces are located in a frame of user content 135 , etc. Mining some of this information can be computationally expensive and time consuming. Thus, in an embodiment the mining of metadata and feature information from user content 135 is done in the background when the user content 135 is first input, or made available, to the movie production system 100 .
- an embodiment metadata feature extraction and analysis engine 110 when user content 135 is input to the movie production system 100 it is automatically fed through an embodiment metadata feature extraction and analysis engine 110 , also referred to herein as an analysis engine 110 .
- the analysis engine 110 executes asynchronously in the background using spare CPU cycles.
- the analysis engine 110 has the capability to extract, analyze and store metadata and feature information from user content 135 that can be used later by an embodiment theme application engine 120 in creating a personal movie 160 .
- the analysis engine 110 stores the mined metadata and feature information in one or more metadata databases 130 .
- mined metadata and feature information is stored and referenced by one or more of a variety of storage constructs, including but not limited to, metadata databases 130 , tables, lists, linked lists, etc.
- the analyses performed can include statistical analysis to determine how much is changing over x frames in a user video 115 or user audio file 125 ; e.g., how much action is occurring over x frames of a user video 115 .
- the analyses performed can include a determination of the loudness of the audio portion of a user video 115 or subset of the user video 115 or the loudness of a user audio file 125 or subset of a user audio file 125 .
- the analyses performed can include a determination of the clarity of one or more user images 105 and/or one or more frames of a user video 115 ; i.e., a determination of how in focus one or more user images 105 and/or one or more user video frames are.
- the analyses performed can include a determination of whether one or more images 105 and/or one or more frames of a user video 115 have red-eye.
- a variety of additional and/or different analyses can be performed on a set of user assets 135 .
- information derived from one or more analyses can be used to identify modifications, or corrections, that can be made to one or more user assets 135 ; e.g., modifications for red-eye, modifications for out-of-focus user images 105 or frames of a user video clip 115 , etc.
- the analysis engine 110 has the capability to perform analyses on a set of user assets 135 . Analyses of the user assets 135 can be computationally expensive and time consuming. Thus, in an embodiment the analyses of the user content 135 is done in the background when the user content 135 is first input to the movie production system 100 . In an embodiment, when user content 135 is input to the movie production system 100 it is automatically fed through an embodiment analysis engine 110 . In an embodiment the analysis engine 110 executes asynchronously in the background using spare CPU cycles to perform analyses on the user content 135 .
- an adaptation engine 140 has the capability to use asset modification information from the analysis engine 110 to modify, or correct, one or more user assets 135 .
- the adaptation engine 140 corrects red eyes, adjusts lighting and exposure, shortens or otherwise segments a video 115 for specific content and/or to reduce duplicity or redundancy, deletes or modifies out-of-focus frames in a video 115 , etc.
- the resultant modified user asset(s) are stored in one or more asset databases 170 .
- modified user assets are stored and referenced by one or more of a variety of storage constructs, including but not limited to, asset databases 170 , tables, lists, linked lists, etc. In this manner the user assets 135 remain as inputted and are unaltered by the embodiment movie production system 100 and the movie production system 100 is non destructive to user content 135 .
- the adaptation engine 140 has the capability to take directions from the theme application engine 120 and apply theme script rules 175 to user assets 135 .
- the adaptation engine 140 can crop one or more user images 105 as directed by one or more theme script rules 175 to zoom in on a particular image feature; e.g., a person, a geographic feature, e.g., mountain or river, etc.
- the adaptation engine 140 can impose an effect on user assets 135 ; e.g., transpose user assets 135 to black-and-white, fade in or fade out on one or more user asset frames, etc.
- the resultant modified user asset(s) are stored in one or more asset databases 170 .
- modified user assets are stored and referenced by one or more of a variety of storage constructs, including but not limited to, asset databases 170 , tables, lists, linked lists, etc. In this manner the original user assets 135 remain unaltered by the embodiment movie production system 100 .
- each theme script 150 contains rules 175 that define the movie 160 to be generated.
- each theme script 150 has rules 175 that, when applied, create the format of the movie 160 , e.g., size of the mid section 220 , number and ordering of chapters 240 in the mid section 220 , etc.
- each theme script 150 contains rules 175 for the contents of any intro section(s) 210 , the contents of the mid section 220 , and the contents of any end section(s) 230 .
- each theme script 150 can contain rules 175 to be applied to user assets 135 to generate transformations on one or more user assets 135 by, e.g., correlating metadata and feature information mined from or otherwise related to the user assets 135 with the theme script rules 175 .
- user assets 135 can be transposed to suit the theme of the selected script file 150 ; e.g., user assets 135 can be modified to be black-and-white, cropped to depict specific content, etc.
- each theme script 150 can contain rules 175 that identify special keywords that can be replaced with metadata or feature information extracted from the user assets 135 , e.g., names identifying faces of people in the images 105 and/or video 115 , location feature identification information, e.g., mountain range, waterfall, etc., in the images 105 and/or video 115 , etc.
- rules 175 that identify special keywords that can be replaced with metadata or feature information extracted from the user assets 135 , e.g., names identifying faces of people in the images 105 and/or video 115 , location feature identification information, e.g., mountain range, waterfall, etc., in the images 105 and/or video 115 , etc.
- location feature identification information e.g., mountain range, waterfall, etc.
- the theme scripts 150 can have as a target a number of user assets 135 or range of a number of user assets 135 . In an embodiment the theme scripts 150 can accommodate a smaller number of user assets 135 than targeted. An embodiment theme script 150 targeted to accommodate more than the existing number of user assets 135 can reuse user assets 135 among the frames of the generated movie 160 in an orderly or random pattern in order to generate a movie 160 with a sufficient desired length.
- An embodiment theme script 150 targeted to accommodate more than the existing number of user assets 135 can spread the existing user assets 135 among the frames of the generated movie 160 in such a manner as to include duplicative user assets 135 but with differing treatments, e.g., effects, transitions, etc., in order to generate a movie 160 with a sufficient desired length.
- a theme script 150 will generate a mid section 220 of a movie 160 that has more frames than user assets 135 .
- An embodiment theme script 150 targeted to accommodate more than the existing number of user assets 135 can generate a shorter play-length movie 160 that coincides with the existing user asset set.
- An embodiment theme script 150 targeted to accommodate more than the existing number of user assets 135 can increase the time spent on one or more user assets 135 included in frames in the movie 160 to generate a movie 160 of a predetermined play-length or within a predetermined play-length time span.
- An embodiment theme script 150 targeted to accommodate more than the existing number of user assets 135 can create frames of a movie 160 by dynamically generating elements 155 to be included in the movie 160 from the user assets 135 , e.g., generating additional images from user asset video clips 115 and/or portions of user asset images 105 , generating additional video clips by dividing existing user asset video clips 115 into smaller play-length videos, generating scrapbook pages with user assets 135 , etc.
- theme scripts 150 targeted to accommodate more than the existing number of user assets 135 can manage a smaller set of user assets 135 with a combination of one or more of these embodiment approaches and/or with other approaches.
- the theme scripts 150 can manage a larger number of user assets 135 than are targeted to be accommodated in a movie 160 .
- An embodiment theme script 150 targeted to accommodate less than the existing number of user assets 135 can determine not to include all the user assets 135 in the movie 160 .
- An embodiment theme script 150 targeted to accommodate less than the existing number of user assets 135 can include additional chapters 240 , longer chapters 240 , a longer mid section 220 , etc. in the generated movie 160 to manage all or a larger subset of the user assets 135 than targeted for.
- An embodiment theme script 150 targeted to accommodate less than the existing number of user assets 135 can shorten the frame display time for one or more of the user assets 135 and/or speed up the output of one or more user asset video clips 115 included in the generated movie 160 .
- theme scripts 150 targeted to accommodate less than the existing number of user assets 135 can manage a larger set of user assets 135 with a combination of one or more of these embodiment approaches and/or with other approaches.
- a theme script 150 can contain rules 175 for the theme application engine 120 to apply to dynamically generate elements 155 for the movie 160 .
- Such dynamically generated elements 155 can include, but are not limited to, frame background designs, scrapbook pages, collages, additional images generated from still frames of a user asset video 115 , additional images generated from differing regions of a user asset image 105 , etc.
- dynamically generated elements 155 are stored in one or more movie asset databases 195 .
- dynamically generated elements 155 are stored and referenced by one or more of a variety of storage constructs, including but not limited to, movie asset databases 195 , tables, lists, linked lists, etc.
- a theme script 150 can contain rules 175 for the theme application engine 120 to apply for the inclusion of predefined content within the movie 160 .
- additional predefined content can include, but is not limited to, clip art, audio tracks, caption style, etc.
- Each theme script 150 can contain rules 175 from one or more of these groups which are selected and/or tailored to define a portion of the resultant movie 160 with the identified theme from the theme script 150 .
- FIG. 3 depicts embodiment theme script rule groups 300 .
- a grouping rule, or rules, 305 in an embodiment script file 150 defines the logic by which different user assets 135 are to be grouped into chapters, or sections, of the movie 160 ; e.g., by content location, date range, the identity of the people appearing in the user assets 135 , random, etc.
- An aspect of this grouping rule(s) 305 also defines the size of the chapters 240 or sections; i.e., how much user content 135 is to be included in any particular chapter 240 and/or how much time each chapter 240 in the movie 160 should play, or run.
- An ordering rule, or rules, 310 in an embodiment script file 150 defines the logic by which different user assets 135 are to be ordered within the movie 160 ; e.g., by ascending or descending time properties, randomly, etc.
- the ordering rule(s) 310 define the order of user assets 135 for the chapters 240 of the movie 160 and/or the order of user assets 135 within the movie 160 .
- a selection rule, or rules, 315 in an embodiment script file 150 manages duplicative user assets 135 and the omission of user assets 135 from the resultant movie 160 , including the omission of one or more images 105 from a set of images 105 and/or the trimming of user video 115 and/or audio files 125 .
- the omission of user assets 135 from the movie 160 can be for a variety of results including the reduction of duplicative views or sounds within the movie 160 , the inclusion of selective content within the movie 160 , maintenance of a predefined play time for the movie 160 , etc.
- An aspect of embodiment selection rule(s) 315 defines, or otherwise determines, how many frames of which user assets 135 are to be included in the movie 160 .
- this aspect of the selection rule(s) 315 defines which, if any, duplicative frames, from a content perspective, of the user assets 135 are to be included in the movie 160 .
- selection rule(s) 315 also define which two of the ten images are to be included in the movie 160 , e.g., the first two images in the set of images 105 , the two images in the set of images 105 with the face of the depicted person most centered, etc.
- a transition rule, or rules, 320 in an embodiment script file 150 defines the transitions to be imposed on the user assets 135 and other elements 155 included in each chapter 240 and the movie 160 ; e.g., zoom, pan, rotate, fade in, fade out, etc.
- An effects rule, or rules, 325 in an embodiment script file 150 defines the effects to be imposed on the user assets 135 and other elements 155 included in the movie 160 ; e.g., render one or more images 105 black-and-white, render one or more images 105 sepia, mute audio in one or more chapters 240 , etc.
- An intro rule, or rules, 330 in an embodiment script file 150 defines the information to be used to create an intro section 210 for the movie 160 .
- an intro rule(s) 330 also, or alternatively, defines the information for generating an intro section 210 for one or more chapters 240 of the movie 160 .
- an intro section 210 is a special section added to the beginning of the movie 160 and/or the beginning of a movie chapter 240 .
- the content of an intro section 210 includes the look, feel and/or audio for each frame of the intro section 210 ; e.g., black backdrop with white letters and a voice over from frames of a video 115 , etc.
- the content of an intro section 210 can contain one or more titles, one or more credits, date information, content information, one or more phrases, e.g., lyrics to a song, words from a poem, captions, etc.
- the content of an intro section 210 can also, or alternatively, be content 155 that is dynamically generated from user content 135 .
- content of an intro section 210 is automatically generated from existing metadata and/or feature information mined from user assets 135 ; e.g., titles extracted from image tags, names extracted from image tags, etc.
- content of an intro section 210 is also, or alternatively, generated from prompted user input when the necessary metadata and/or feature information is unavailable to the movie production system 100 .
- content of an intro section 210 is also, or alternatively, generated from preexisting non-user asset content; e.g., phrases from music lyrics and/or poems, clip art, a music selection, etc.
- titles, credits or captions can already exist in one or more frames of an intro section 210 because, e.g., the user 145 has previously caused a movie 160 to be generated from a set of user assets 135 and the user 145 has subsequently changed the theme script 150 to be applied to the same set of user assets 135 , the user has previously created titles, credits or captions associated with one or more user assets 135 included in an introduction section 210 or one or more frames of an introduction section 210 , etc.
- the text of the existing titles, credits and captions will not be removed or replaced pursuant to theme script rules 175 .
- the effect and/or transition applied to the text of the existing titles, credits and captions of the introduction section(s) 210 will be altered as dictated by one or more theme script rules 175 defining the text style for the resultant movie introduction section(s) 210 .
- An outro rule, or rules, 335 in an embodiment script file 150 defines the information to be used to create an end, or outro, section 230 for the movie 160 .
- an outro rule(s) 335 also, or alternatively, defines the information for generating an end section 230 for each chapter 240 of the movie 160 .
- an end section 230 is a special section added to the end of the movie 160 and/or the end of one or more movie chapters 240 .
- the content of an end section 230 includes the look, feel and/or audio for each frame of the end section 230 ; e.g., slow fade out of image frame from user image 105 overlaid with black lettering and enhanced with a musical selection, etc.
- the content of an end section 230 can contain one or more titles, one or more credits, date information, content information, one or more phrases, e.g., lyrics to a song, words from a poem, captions, etc.
- the content of an end section 230 can also, or alternatively, be elements 155 dynamically generated from user content 135 ; e.g., a collage formed from user assets 135 .
- content of an end section 230 is automatically generated from existing metadata and/or feature information mined from user assets 135 ; e.g., credits extracted from image tags, etc.
- content of an end section 230 is also, or alternatively, generated from prompted user input when the necessary metadata and/or feature information is unavailable to the movie production system 100 .
- content of an end section 230 is also, or alternatively, generated from preexisting non-user asset content; e.g., phrases from music lyrics and/or poems, clip art, a music selection, etc.
- titles, credits or captions can already exist in one or more frames of an end section 230 because, e.g., the user 145 has previously caused a movie 160 to be generated from a set of user assets 135 and the user 145 has subsequently changed the theme script 150 to be applied to the same set of user assets 135 , the user has previously created titles, credits or captions associated with one or more user assets 135 included in an end section 230 or one or more frames of an end section 230 , etc.
- the text of the existing titles, credits and captions will not be removed or replaced pursuant to theme script rules 175 .
- the effect and/or transition applied to the text of the existing titles, credits and captions of the end section(s) 230 will be altered as dictated by one or more theme script rules 175 defining the text style for the resultant movie end section(s) 230 .
- Caption rules 340 in an embodiment script file 150 define how and where captions are to be added to user assets 135 and/or frames of the movie 160 .
- caption rules 340 further contain the details on the style and treatment of various captions included within the movie 160 ; e.g., font, color, size, position, effect, etc.
- caption rules 340 can contain special keywords that are subsequently replaced by appropriate metadata and/or feature information previously mined from the user assets 135 .
- the caption will be generated with generic text and the user 145 will be prompted to thereafter provide input to replace the generic text and render the movie 160 specific and/or personal.
- captions can already exist in one or more frames of the movie 160 because, e.g., the user 145 has previously caused a movie 160 to be generated from a set of user assets 135 and the user 145 has subsequently changed the theme script 150 to be applied to the same set of user assets 135 , the user has previously created captions associated with one or more user assets 135 included in the movie 160 , etc.
- the text of the existing captions will not be removed or replaced pursuant to theme script rules 175 .
- the effect and/or transition applied to the text of the existing captions will be altered as dictated by one or more theme script rules 175 defining the text style for the resultant movie captions.
- caption text positioning and duration is not guaranteed with the application of a new theme script 150 to the user assets 135 as the new theme script 150 may need to modify these to account for, e.g., animation, theme aesthetics, etc.
- An art rule, or rules, 345 in an embodiment script file 150 defines how any included art, e.g., clip art, etc., should be added to, or otherwise, utilized, in the movie 160 ; e.g., the addition of adornments such as backgrounds or clip art images to one or more movie frames, etc.
- the art rule(s) 345 details how user assets 135 are to appear with or within added clip art in one or more movie frames; e.g., a scrapbook page with user asset images 105 positioned within clip art frames, etc.
- one or more theme scripts 150 identify one or more music scores, via a music rule, or rules, 350 to be included within the movie 160 .
- the identified music score(s) are intended to enhance the theme, or mood, of the chosen script file 150 and, therefore, the resultant movie 160 .
- the music rules 350 include directions for the positioning of the music within the movie 160 and the treatment, e.g., volume, and effects, e.g., fade in, fade out, loop, etc., to be imposed on the included music.
- the music rules 350 also, or alternatively, dictate how a user's audio 120 is to be managed within the movie 160 ; e.g., played with specific chapters and muted for others, softened and played throughout the body 220 of the movie 160 , played in the introduction 210 and end 230 sections of the movie 160 , etc.
- the user 145 is asked to indicate whether they wish to retain the user-specified music or utilize the theme script identified music.
- the user 145 is notified that the user-specified music will not be implemented and the theme script identified music is included within the movie 160 pursuant to one or more music rules 350 .
- the user-specified music is retained and used for the movie 160 .
- the user 145 is prompted, via the UI 180 , to select, or otherwise identify, a music selection, or selections, to be included within the movie 160 .
- pre-identified music indicated in one or more theme script rules 175 is used for the movie 160 .
- a dynamic frame generation rule(s) 355 in a script file 150 defines how elements 155 , or frames, are to be dynamically created for incorporation within the movie 160 .
- Dynamically generated elements 155 can include, but are not limited to, frame background designs, scrapbook pages, collages, additional images generated from still frames of a user asset video 115 , additional images generated from differing regions of a user asset image 105 , etc.
- a dynamic frame generation rule(s) 355 can define the creation of a scrapbook page frame with user images 105 arranged about the frame and decorated with pre-selected clipart to be included within the movie 160 .
- a dynamic frame generation rule(s) 355 can define the generation of two images from one user asset image 105 where each of the two generated images depict differing regions, or subjects, e.g., different people, etc., within the user asset image 105 .
- mined metadata and feature information and/or the results of analyses performed on the original user asset 135 is used in conjunction with, or by, the dynamic frame generation rule(s) 355 to dynamically generate elements 155 for the movie 160 from existing user assets 135 .
- dynamically generated elements 155 created pursuant to one or more dynamic frame generation rules 355 are stored in one or more movie asset databases 195 .
- dynamically generated elements 155 are stored and referenced by one or more of a variety of storage constructs, including but not limited to, movie asset databases 195 , tables, lists, linked lists, etc.
- a dynamic frame generation rule(s) 355 controls the placement of dynamically generated elements 155 within the movie 160 ; e.g., first frame in the intro section 210 , etc.
- a dynamic frame generation rule(s) 355 defines the transitions and effects to be implemented for dynamically generated elements 155 .
- the transitions and effects identified by a dynamic frame generation rule 355 supersedes any transition rules 320 or effects rules 235 in the script file 150 that would otherwise be implemented for the dynamically generated element 155 due to, e.g., its position within the movie 160 .
- a user 145 interacts with the movie production system 100 via a user interface. UI, 180 .
- the user 145 enables user content 135 to be input, or otherwise made accessible, to the computing system, or device, e.g., personal computer, computer network, etc. hosting, or otherwise running, the movie production system 100 .
- the theme application engine 120 via the UI 180 , prompts the user 145 for input to render the movie 160 more polished and personal.
- the UI outputs the movie 160 to the user 145 for review.
- the user 145 can make changes to the movie 160 via the UI 180 .
- a progress dialog box is displayed to the user 145 via the UI 180 .
- the progress dialog box indicates the action currently being performed to generate the movie 160 ; e.g., applying black-and-white movie theme, generating intro section, etc.
- the progress dialog box indicates how much of the movie generation has been completed; e.g., 60% complete, etc.
- a progress dialog box is displayed to a user 145 only when the movie production system 100 requires a user perceptible time to apply the rules 175 of a theme script 150 to generate a movie 160
- the user 145 can, via the UI 180 , inform the movie production system 100 that the movie 160 is finished and/or ready for publication.
- the movie production system 100 encodes a finished movie 160 in one or more predefined formats and/or one or more user-specified formats and/or one or more formats supported by a storage media associated with the movie production system 100 and upon which the finished movie 160 will be stored and/or pushed to and/or published to.
- there can be more than one copy of a finished, encoded movie 190 also referred to herein as the published movie 190 .
- the movie production system 100 stores each encoded version of the finished movie 190 to one or more storage media, e.g., hard drive, computer memory, DVD, CD, memory stick, etc.
- storage media e.g., hard drive, computer memory, DVD, CD, memory stick, etc.
- the movie production system 100 can publish a finished, encoded version of the movie 190 by pushing, or otherwise storing, the published movie 190 to one or more devices or media 185 , e.g., computer, cell phone, etc.
- the movie production system 100 can publish a finished, encoded version of the movie 190 to one or more publication points 165 , e.g., websites, email addresses, etc.
- FIGS. 4A-4B illustrate an embodiment logic flow for an embodiment movie production system 100 . While the following discussion is made with respect to systems portrayed herein the operations described may be implemented in other systems. The operations described herein are not limited to the order shown. Additionally, in other alternative embodiments more or fewer operations may be performed. Further, the operations depicted may be performed by an embodiment movie production system 100 or by an embodiment movie production system 100 in combination with one or more other systems.
- user assets are introduced, or otherwise made available to, the movie production system 400 .
- the movie production system analyzes the user assets to mine metadata and feature information 402 .
- the movie production system stores metadata and feature information collected from user assets in one or more metadata databases 404 .
- the analysis engine 110 of the movie production system 100 has the capability to analyze the user assets 135 to mine metadata and feature information and to store the mined data and information in one or more metadata databases 130 .
- the analysis engine 110 stores mined metadata and feature information which is referenced by one or more of a variety of storage constructs, including but not limited to, metadata databases 195 , tables, lists, linked lists, etc.
- the movie production system analyzes the user assets to identify user assets or user asset portions, i.e., frames or segments, to be modified, e.g., to correct red-eye, etc., 406 .
- the analysis engine 110 of the movie production system 100 has the capability to analyze user assets 135 to identify those user assets 135 , or portions of user assets 135 , to be modified or corrected.
- the analysis engine 110 notifies the adaptation engine 140 of the movie production system 100 to modify the user assets 135 so identified.
- the movie production system makes any identified modifications and corrections to indicated user assets 408 .
- the modified user assets are stored 410 .
- the adaptation engine 140 of the movie production system 100 has the capability to make the modifications and corrections to the identified user assets 135 , or portions thereof, and to store the resultant modified user assets.
- the movie production system executes, or otherwise acts upon, the chosen script file to generate a story, e.g., a movie, 418 .
- the theme application engine 120 of the movie production system 100 has the capability to execute the user-chosen script file 150 to generate a movie 160 .
- the theme application engine 120 applies rules 175 of the user-chosen script file 150 to one or more user assets 135 , one or more modified user assets and/or one or more generated elements 155 . Additional details for this embodiment step 418 are described with reference to FIGS. 5A-5E .
- the generated story e.g., movie
- the theme application engine 120 of the movie maker system 100 directs the output of the movie 160 to the user 145 via the UI 180 .
- the movie 160 is in a WYSIWYG (what-you-see-is-what-you-get) format appropriate for user review.
- a user 145 can override one or more theme script rules 175 and/or add additional elements or content, e.g., transitions or effects not accounted for by the theme script 150 , to the movie 160 by requesting edits to the movie 160 via the UI 180 .
- the user 145 can choose different transitions and/or effects, add pan and/zoom to one or more images, change captions, titles or credit styles, change font settings, add or remove music, add or delete user assets 135 to be included in the movie 160 , etc.
- the user inputs their edit requests to the movie production system 444 .
- the user 145 directs their edits to the theme application engine 120 of the movie production system 100 via the UI 180 .
- the movie production system implements the requested edits and updates the movie accordingly 446 .
- the theme application engine 120 of the movie production system 100 coordinates the implementation of user-requested edits to the movie 160 .
- the newest version of the movie, with user-requested edits implemented is output to the user for review 448 .
- the theme application engine 120 of the movie maker system 100 directs the output of the movie 160 to the user 145 via the UI 180 .
- the movie 160 is in a WYSIWYG format appropriate for user review.
- the movie maker system again, at decision block 430 , makes a determination as to whether the user is requesting any edits to the movie.
- decision block 432 a determination is made as to whether the user has introduced new assets to the movie production system for inclusion in a generated movie. If yes, in an embodiment, and referring back to FIG. 4A , the new user assets are made available to the movie production system 400 and processed as prior introduced user assets were.
- the movie production system encodes the movie into one or more appropriate output formats 438 .
- the movie production system stores the encoded movie 438 .
- the movie production system stores the finished movie 438 .
- the movie production system thereafter encodes the finished movie into one or more versions of the finished movie pursuant to requirements for the encoded movie's destination 438 .
- the movie production system can publish, or push, a finished, encoded version of the movie on to one or more indicated computing devices or media 440 .
- the movie production system can publish a finished, encoded version of the movie to one or more publication points 440 .
- the movie production system thereafter ends processing for the current movie 442 .
- FIGS. 5A-5E illustrate an embodiment logic flow for an embodiment movie production system 100 to execute, or otherwise run or act upon, a user-chosen theme script 150 to create a movie 160 ; i.e., an embodiment logic flow for the movie production system execution of a theme script to generate a movie 418 of FIG. 4A .
- the operations described may be implemented in other systems. The operations described herein are not limited to the order shown. Additionally, in other alternative embodiments more or fewer operations may be performed. In any embodiment not all steps need be performed for each script file 150 and/or the steps may be performed in a different order for different script files 150 . Further, the operations depicted may be preformed by an embodiment movie production system 100 or by an embodiment movie production system 100 in combination with one or more other systems.
- user assets are chosen, or otherwise identified, to be included in the story, or movie, 500 .
- the user assets, or a subset thereof are grouped into one or more chapters for a resultant movie 502 .
- the theme application engine 120 organizes the user assets 135 , or a subset thereof, into one or more movie chapters 240 .
- the theme application engine 120 accesses the asset database(s) 170 to include modified user assets in the generated movie 160 and accesses the user assets for those user assets to be included in the generated movie 160 that have not, as yet, been modified.
- the theme application engine 120 chooses the user assets, or modified user assets, for each chapter 240 based on the available user assets 135 , and modified user assets, mined metadata and feature information and/or keywords identified in the user-chosen script file 150 , e.g., SinglePersonShot, GroupShot, CloseUp, etc.
- the user assets are arranged and/or ordered within the movie 504 .
- the theme application engine 120 arranges and/or orders the user assets 135 , and/or modified user assets stored in an asset database 170 , within the various movie chapters 240 ; e.g., orders the user assets 135 from the first to be displayed to the last to be displayed for a first chapter 240 of the movie 160 , etc.
- one or more user assets are modified 506 .
- the theme application engine 120 signals, or otherwise directs, the adaptation engine 140 to transpose, or modify, one or more user assets 135 to be included in the movie 160 .
- the theme application engine 120 directs the adaptation engine 140 to transpose selected images 105 to black-and-white.
- the theme application engine 120 can direct the adaptation engine 140 to trim a user asset video 115 .
- a video clip 115 may be trimmed to highlight what is deemed the interesting sections of the video clip 115 .
- the selection of the segments of the video clip 115 to retain, and those segments to trim is based on keywords in one or more rules 175 of the script file 150 and can be facilitated by stored feature information.
- the segments of a video clip 115 that are retained for a movie 160 can vary from script theme 150 to script theme 150 based on the keywords designated in any particular script file 150 .
- one or more elements to be included in the movie are dynamically generated 508 .
- the theme application engine 120 dynamically generates elements 155 to be included in the movie 160 using user assets 135 or modified user assets.
- the theme application engine 120 dynamically generates one or more frames for the movie 160 that resemble a scrapbook with images 105 applied thereto and decorated with clip art.
- the selection of the user assets 135 and/or portions of the user assets 135 included in a dynamically generated element 155 are based on keywords in one or more script rules 175 and/or stored metadata and/or feature information.
- dynamically generated elements are stored 508 .
- the theme application engine 120 stores the elements 155 it dynamically generates in one or more movie asset databases 195 .
- the theme application engine 120 stores the elements 155 it dynamically generates and references the stored elements 155 using one or more of a variety of storage constructs, including but not limited to, movie asset databases 195 , tables, lists, linked lists, etc.
- the dynamically generated elements are arranged, or ordered, within the movie 508 .
- one or more transitions are applied to one or more user assets, or groups of user assets, and/or one or more dynamically generated elements included in the movie 514 .
- the theme application engine 120 pursuant to one or more rules 175 of the user-chosen script file 150 applies rule-specified transitions to one or more user assets 135 , groups of user assets 135 , and/or dynamically generated elements 155 included in the movie 160 .
- the theme application engine 120 signals, or otherwise commands, the adaptation engine 140 to apply rule-specified transitions to one or more user assets 135 , groups of user assets 135 , and/or dynamically generated elements 155 included in the movie 160 .
- some transition applications 514 require information about the user asset(s) a transition is to be applied to, e.g., the portion of an image 105 that the transition is to begin the fade out on.
- the movie production system 100 uses stored metadata, feature and/or analysis information to finalize the application of a rule-specified transition to one or more user assets 135 and/or one or more dynamically generated elements 155 .
- one or more effects are applied to one or more user assets, groups of user assets, and/or one or more dynamically generated elements included in the movie 520 .
- the theme application engine 120 pursuant to one or more rules 175 of the user-chosen script file 150 , applies rule-specified effects to one or more user assets 135 , groups of user assets 135 , and/or dynamically generated elements 155 included in the movie 160 .
- the theme application engine 120 signals, or otherwise commands, the adaptation engine 140 to apply rule-specified effects to one or more user assets 135 , groups of user assets 135 , and/or dynamically generated elements 155 included in the movie 160 .
- some effect applications 520 require information about the user asset an effect is to be applied to, e.g., the area of interest in an image 105 where the effect is to zoom in on.
- the movie production system 100 uses stored metadata, feature and/or analysis information to finalize the application of a rule-specified effect to one or more user assets 135 and/or one or more dynamically generated elements 155 .
- an intro section for the movie is generated 522 .
- the theme application engine 120 applies one or more script rules 175 to generate an intro section 210 for the movie 160 .
- an intro section 210 is generated by the theme application engine 120 giving special treatment, e.g., transition and/or effects application, title and/or caption inclusion, etc., to the first, or selected first group of, movie frames which may include one or more user assets 135 and/or one or more dynamically generated elements 155 .
- the theme application engine 120 pursuant to one or more script rules 175 , adds title information, credit information, captions and/or other text information into one or more frames of the movie's intro section 210 .
- the movie production system uses metadata from one or more metadata databases to complete the title(s), credit(s), caption(s) and/or other text within the intro section of the movie 524 .
- an indication e.g., a flag, a counter, etc.
- an intro section for one or more chapters of the movie is generated 536 .
- the theme application engine 120 applies one or more script rules 175 to generate an intro section 210 for one or more movie chapters 240 .
- an intro section 210 is generated by the theme application engine 120 giving special treatment, e.g., transition and/or effects application, title and/or caption inclusion, etc., to the first, or selected first group, of movie frames of each chapter 240 which may include one or more user assets 135 and/or one or more dynamically generated elements 155 .
- the theme application engine 120 pursuant to one or more script rules 175 , adds title information, credit information and/or other text information into one or more frames of the intro section 210 for one or more movie chapters 240 .
- the movie production system uses metadata from one or more metadata databases to complete the title(s), credit(s) and any caption and/or other text within the intro section of the chapters of the movie 538 .
- an indication e.g., a flag, a counter, etc.
- an outro section for the movie is generated 546 .
- the theme application engine 120 applies one or more script rules 175 to generate an outro section 230 for the movie 160 .
- an outro section 230 is generated by the theme application engine 120 giving special treatment, e.g., transition and/or effects application, title and/or caption inclusion, etc., to the last, or last group of, movie frames which may include one or more user assets 135 and/or one or more dynamically generated elements 155 .
- the theme application engine 120 pursuant to one or more script rules 175 , adds title information, credit information, captions and/or other text information into one or more frames of the movie's outro section 230 .
- the movie production system uses metadata from one or more metadata databases to complete the title(s), credit(s), caption(s) and/or other text within the outro section of the movie 548 .
- an indication e.g., a flag, a counter, etc.
- an outro section for one or more chapters of the movie is generated 556 .
- the theme application engine 120 applies one or more script rules 175 to generate an outro section 230 for one or more movie chapters 240 .
- an outro section 230 is generated by the theme application engine 120 giving special treatment, e.g., transition and/or effects application, title and/or caption inclusion, etc., to the last, or last group of, movie frames of a chapter 240 which may include one or more user assets 135 and/or one or more dynamically generated elements 155 .
- the theme application engine 120 pursuant to one or more script rules 175 , adds title information, credit information and/or other text information into one or more frames of the outro section 230 for one or more chapters 240 of the movie 160 .
- the movie production system uses metadata from one or more metadata databases to complete the title(s), credit(s), caption(s) and/or other text within the outro section of the chapters of the movie 558 .
- an indication e.g., a flag, a counter, etc.
- one or more captions are added to the body section of the movie 566 .
- the theme application engine 120 applies one or more script rules 175 to generate one or more captions 230 for one or more movie frames in the body section 220 of the movie 160 .
- the movie production system uses metadata from one or more metadata databases to complete the captions 566 .
- an indication e.g., a flag, a counter, etc.
- the user 145 is asked, via the UI 180 , whether the movie production system should use the user included music or theme script identified music for the generated movie 160 .
- the theme script identified music is added to the movie as dictated by one or more theme script rules 578 .
- the movie production system includes the user-provided information in the movie as directed by one or more theme script rules 594 .
- the theme application engine 120 of the movie production system 100 includes the user-provided information in the movie 160 as directed by one or more theme script rules 175 .
- a movie has been automatically generated and processing of the user-chosen script file is ended 596 .
- one or more additional user assets 135 are included by the user 145 for use in generating a movie 160 or one or more user assets 135 are removed by the user 145 for use in generating a movie 160 then various steps of FIGS. 5A to 5E are performed as appropriate on the new set of user assets for generation of a movie 160 .
- the movie production system 100 automatically organizes the video 115 within the movie 160 and applies one or more transitions and/or one or more effects to the video frames as dictated by the theme script rules 175 .
- FIG. 6 is a block diagram that illustrates an exemplary computing device system 600 upon which an embodiment can be implemented.
- the computing device system 600 includes a bus 605 or other mechanism for communicating information, and a processing unit 610 coupled with the bus 605 for processing information.
- the computing device system 600 also includes system memory 615 , which may be volatile or dynamic, such as random access memory (RAM), non-volatile or static, such as read-only memory (ROM) or flash memory, or some combination of the two.
- the system memory 615 is coupled to the bus 605 for storing information and instructions to be executed by the processing unit 610 , and may also be used for storing temporary variables or other intermediate information during the execution of instructions by the processing unit 610 .
- the system memory 615 often contains an operating system and one or more programs, and may also include program data.
- a storage device 620 such as a magnetic or optical disk, is also coupled to the bus 605 for storing information, including program code consisting of instructions and/or data.
- the computing device system 600 generally includes one or more display devices 635 , such as, but not limited to, a display screen, e.g., a cathode ray tube (CRT) or liquid crystal display (LCD), a printer, and one or more speakers, for providing information to a computing device user.
- the computing device system 600 also generally includes one or more input devices 630 , such as, but not limited to, a keyboard, mouse, trackball, pen, voice input device(s), and touch input devices, which a computing device user can use to communicate information and command selections to the processing unit 610 . All of these devices are known in the art and need not be discussed at length here.
- the processing unit 610 executes one or more sequences of one or more program instructions contained in the system memory 615 . These instructions may be read into the system memory 615 from another computing device-readable medium, including, but not limited to, the storage device 620 . In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software program instructions.
- the computing device system environment is not limited to any specific combination of hardware circuitry and/or software.
- computing device-readable medium refers to any medium that can participate in providing program instructions to the processing unit 610 for execution. Such a medium may take many forms, including but not limited to, storage media and transmission media.
- storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory, CD-ROM, digital versatile disks (DVD), magnetic cassettes, magnetic tape, magnetic disk storage, or any other magnetic medium, floppy disks, flexible disks, punch cards, paper tape, or any other physical medium with patterns of holes, memory chip, or cartridge.
- the system memory 615 and storage device 620 of the computing device system 600 are further examples of storage media.
- transmission media include, but are not limited to, wired media such as coaxial cable(s), copper wire and optical fiber, and wireless media such as optic signals, acoustic signals, RF signals and infrared signals.
- the computing device system 600 also includes one or more communication connections 650 coupled to the bus 605 .
- the communication connection(s) 650 provide a two-way data communication coupling from the computing device system 600 to other computing devices on a local area network (LAN) 665 and/or wide area network (WAN), including the World Wide Web, or Internet 670 .
- Examples of the communication connection(s) 650 include, but are not limited to, an integrated services digital network (ISDN) card, modem, LAN card, and any device capable of sending and receiving electrical, electromagnetic, optical, acoustic, RF or infrared signals.
- ISDN integrated services digital network
- Communications received by the computing device system 600 can include program instructions and program data.
- the program instructions received by the computing device system 600 may be executed by the processing unit 610 as they are received, and/or stored in the storage device 620 or other non-volatile storage for later execution.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
Description
- This application is a Continuation of and claims benefit from U.S. patent application Ser. No. 13/844,953 that was filed on Mar. 16, 2013, and that is a Continuation of U.S. patent application Ser. No. 12/757,055 (U.S. Pat. No. 8,422,852) that was filed on Apr. 9, 2010 (Issued on Apr. 16, 2013), each of which is incorporated herein by reference in its entirety.
- Users can create stories, e.g., movies, from user assets such as user images, videos, and audio files. Users can use a computing device to render individual manipulations for combining, grouping and ordering a set of user assets for output presentation. The generated movies can be desirable for showcasing the user assets.
- With the plethora of media and messages vying for individuals' attentions via their computers, televisions, cell phones, radios, etc, what can assist any particular presentation to stand out to an audience, along with the story subject, is the caliber of polish with which the story is generated.
- Users have to commit time and effort to create a story from their user assets as there can be many factors and elements a user will contend with in generating a finished product. Additionally, creating a finished product from a set of user assets can require users to have the skills, artistic talent and knowledge of the software for implementing the details to generate the intended resultant product.
- This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This summary is not intended to identify key or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
- Embodiments discussed herein include systems and methodology for enabling automatic and personalized user story creation.
- In embodiments user content, or assets, e.g., images, video and/or audio files, are automatically analyzed and organized within a user story, e.g., a movie. In embodiments rules of a theme script that is designed to create a particular feeling or theme for a finished user story are automatically applied to user assets to create a predesigned look for the user assets which become elements of the generated user story.
- In embodiments an introduction section and an end section for the user story are automatically created pursuant to theme script rules and using user assets, metadata and/or feature information mined from analyzed user assets.
- In embodiments the user story is automatically organized into chapters pursuant to theme script rules and the nature and quantity of the user assets.
- In embodiments the user story is personalized by the inclusion of captions that are automatically generated from information mined from analyzed user assets and/or are automatically generated with generic text that can be replaced by user input when the necessary asset information is unavailable or nonexistent.
- In embodiments various treatments, e.g., transitions, effects, music inclusions, titles, credits, caption designs, etc., are applied to or generated for elements of the user story pursuant to theme script rules. In an aspect of these embodiments the treatments are intended to help create a personalized user story with a particular look and feel.
- In embodiments elements of the automatically generated user story can be modified by a user to further enhance the personalization of the final user story. In embodiments a finalized user story can be stored and/or published, e.g., to one or more websites, one or more devices, e.g., cell phones, etc.
- These and other features will now be described with reference to the drawings of certain embodiments and examples which are intended to illustrate and not to limit, and in which:
-
FIG. 1 depicts an embodiment movie production system that automatically transforms and arranges user content to generate a story. -
FIG. 2 depicts sections of an embodiment generated story. -
FIG. 3 depicts embodiment theme script rule groups. -
FIGS. 4A-4B illustrate an embodiment logic flow for an embodiment movie production system. -
FIGS. 5A-5E illustrate an embodiment logic flow for an embodiment movie production system to execute a user-chosen theme script to generate a story. -
FIG. 6 is a block diagram of an exemplary basic computing device system that can process software, i.e., program code, or instructions. - In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of embodiments described herein. It will be apparent, however, to one skilled in the art that the embodiments may be practiced without these specific details. In other instances well-known structures and devices are either simply referenced or shown in block diagram form in order to avoid unnecessary obscuration. Any and all titles used throughout are for ease of explanation only and are not for any limiting use.
-
FIG. 1 depicts an embodimentmovie production system 100 that takes asinput user content 135, oruser assets 135, and arranges theuser content 135 to generate a personal story, e.g., movie, 160 with high quality and minimum user effort. Inembodiments user content 135 can include, but is not limited to,user images 105,user video 115, also referred to herein as video clips,user audio 125, user graphics and/or user text files. In an embodiment theuser assets 135 are each composed of one or more frames; i.e., one or more images in a set ofimages 105, one or more stills in avideo 115, one or more predefined timed segments of anaudio file 125, etc. - In an embodiment the product, e.g., movie, 160 generated by the
movie production system 100 is a resultant story that is told by theuser assets 135 included therein along with any dynamically generatedelements 155, e.g., a scrapbook page of selecteduser images 105, etc., and preselected elements, e.g., clipart, music, etc. As used herein, the term movie is intended to refer to any product, or story, generated by an embodimentmovie production system 100 usinguser assets 135. In an embodiment amovie 160 consists of a collection of one or more frames wherein each frame can be, or consist of, a user asset, a modified user asset, a dynamically generatedelement 155, predefined content, etc., or a combination thereof, etc. - In an embodiment the
movie 160 generated by themovie production system 100 can have three sections, as depicted inFIG. 2 . An embodiment first movie section is an intro, or introduction,section 210. In an embodiment anintro section 210 is a section added to the beginning of themovie 160 that introduces themovie 160. In an aspect of this embodiment anintro section 210 can include one or more titles, one or more credits, date information,user content 135 information, one or more phrases, e.g., lyrics to a song, words from a poem, captions, etc. In an aspect of this embodiment anintro section 210 can also, or alternatively, includecontent 155, orelements 155, that is dynamically generated fromuser content 135; e.g., a collage formed fromusers assets 135. - An embodiment second movie section is the mid, or body,
section 220. In an embodiment themid section 220 is the section of themovie 160 that is the story produced from theuser assets 135. In an embodiment themid section 220 includesuser assets 135, unaltered, transformed, edited and/or modified. In an embodiment themid section 220 can also, or alternatively, includeelements 155 dynamically generated fromuser assets 135, e.g., a collage ofimages 105 arranged on a predesigned background, frame captions created from mined metadata, etc. In an embodiment frames of themid section 220 of themovie 160 can also, or alternatively, include predefined content; e.g., a music score, clip art, etc. - An embodiment third movie section is the outro, or end,
section 230. In an embodiment anend section 230 is a section added to the end of themovie 160 that concludes themovie 160. In an aspect of this embodiment anend section 230 can include one or more titles, one or more credits, date information,user content 135 information, one or more phrases, e.g., lyrics to a song, words from a poem, captions, etc. In an aspect of this embodiment anend section 230 can also, or alternatively, includeelements 155 dynamically generated fromuser content 135. - In an embodiment the
mid section 220 of amovie 160 can be divided into two or more chapters, or sections, 240, each with its own subject, or content, or sub-theme. In this embodiment eachchapter 240 has amid section 220. In an aspect of this embodiment eachchapter 240 can also include anintro section 210. In an aspect of this embodiment eachchapter 240 can also, or alternatively, include anend section 230. - In embodiments a
movie 160 can consist of just amid section 220, anintro section 210 and amid section 220, amid section 220 and anend section 230, or anintro section 210, amid section 220 and anend section 230. - Referring back to
FIG. 1 , in an embodiment theme scripts, or script files, 150 of themovie production system 100 are designed to create stories, e.g., movies, 160 fromuser assets 135. In an embodiment thetheme scripts 150 are generated with creative input from one or more artists and/or one or more graphic designers who choose harmonious styling elements for a particular theme. In anembodiment theme scripts 150 can also, or alternatively, be generated by auser 145 or any one desiring to author ascript file 150. In anembodiment theme scripts 150 can also, or alternatively, be generated by the execution of script design software. - In an embodiment the
theme scripts 150 are in a human-readable format which provides for efficient maintenance and flexible modification of atheme script 150. - An embodiment
theme application engine 120 of amovie production system 100 has the capability to utilize a user chosentheme script 150 to automatically arrange and transformuser assets 135 in such a way that the resultant story, or movie, 160 is of a user-perceived high quality with minimal user effort required. In an embodiment thetheme application engine 120 runs atheme script 150 againstuser assets 135 to create a story, or movie, 160. In an embodiment eachtheme script 150 contains information, orrules 175, on how theuser assets 135 should be filtered, arranged and/or transformed (visually and/or audioally) to create amovie 160 with a particular theme. In an embodiment a theme refers to a mood, an aesthetic style or an event, e.g., joyous, sporty, birthday, wedding, sepia, colorful, etc. In anembodiment theme scripts 150 provide an abstract mechanism for defining how an end product, e.g.,movie 160, should look and sound without the need to know any details of theuser assets 135. - In an embodiment, before a theme is applied to a set of
user assets 135 metadata and feature information is mined from theuser content 135; e.g., any tags related to theuser content 135, any tags identifying people in theuser content 135, any tags identifying the location of the pictureduser content 135; feature information on where faces are located in a frame ofuser content 135, etc. Mining some of this information can be computationally expensive and time consuming. Thus, in an embodiment the mining of metadata and feature information fromuser content 135 is done in the background when theuser content 135 is first input, or made available, to themovie production system 100. - In an embodiment, when
user content 135 is input to themovie production system 100 it is automatically fed through an embodiment metadata feature extraction andanalysis engine 110, also referred to herein as ananalysis engine 110. In an embodiment theanalysis engine 110 executes asynchronously in the background using spare CPU cycles. In an embodiment theanalysis engine 110 has the capability to extract, analyze and store metadata and feature information fromuser content 135 that can be used later by an embodimenttheme application engine 120 in creating apersonal movie 160. In an embodiment theanalysis engine 110 stores the mined metadata and feature information in one ormore metadata databases 130. In other embodiments mined metadata and feature information is stored and referenced by one or more of a variety of storage constructs, including but not limited to,metadata databases 130, tables, lists, linked lists, etc. - In an embodiment, before a theme is applied to a set of
user assets 135 one or more analyses are performed on theuser assets 135. In an embodiment the analyses performed can include statistical analysis to determine how much is changing over x frames in auser video 115 oruser audio file 125; e.g., how much action is occurring over x frames of auser video 115. In an embodiment the analyses performed can include a determination of the loudness of the audio portion of auser video 115 or subset of theuser video 115 or the loudness of auser audio file 125 or subset of auser audio file 125. In an embodiment the analyses performed can include a determination of the clarity of one ormore user images 105 and/or one or more frames of auser video 115; i.e., a determination of how in focus one ormore user images 105 and/or one or more user video frames are. In an embodiment the analyses performed can include a determination of whether one ormore images 105 and/or one or more frames of auser video 115 have red-eye. In embodiments a variety of additional and/or different analyses can be performed on a set ofuser assets 135. In an embodiment information derived from one or more analyses, also referred to herein as asset modification information or details, can be used to identify modifications, or corrections, that can be made to one ormore user assets 135; e.g., modifications for red-eye, modifications for out-of-focus user images 105 or frames of auser video clip 115, etc. - In an embodiment the
analysis engine 110 has the capability to perform analyses on a set ofuser assets 135. Analyses of theuser assets 135 can be computationally expensive and time consuming. Thus, in an embodiment the analyses of theuser content 135 is done in the background when theuser content 135 is first input to themovie production system 100. In an embodiment, whenuser content 135 is input to themovie production system 100 it is automatically fed through anembodiment analysis engine 110. In an embodiment theanalysis engine 110 executes asynchronously in the background using spare CPU cycles to perform analyses on theuser content 135. - In an embodiment
movie production system 100 anadaptation engine 140 has the capability to use asset modification information from theanalysis engine 110 to modify, or correct, one ormore user assets 135. For example, theadaptation engine 140 corrects red eyes, adjusts lighting and exposure, shortens or otherwise segments avideo 115 for specific content and/or to reduce duplicity or redundancy, deletes or modifies out-of-focus frames in avideo 115, etc. In an embodiment the resultant modified user asset(s) are stored in one ormore asset databases 170. In other embodiments modified user assets are stored and referenced by one or more of a variety of storage constructs, including but not limited to,asset databases 170, tables, lists, linked lists, etc. In this manner theuser assets 135 remain as inputted and are unaltered by the embodimentmovie production system 100 and themovie production system 100 is non destructive touser content 135. - In an embodiment the
adaptation engine 140 has the capability to take directions from thetheme application engine 120 and apply theme script rules 175 touser assets 135. For example, theadaptation engine 140 can crop one ormore user images 105 as directed by one or more theme script rules 175 to zoom in on a particular image feature; e.g., a person, a geographic feature, e.g., mountain or river, etc. As another example theadaptation engine 140 can impose an effect onuser assets 135; e.g., transposeuser assets 135 to black-and-white, fade in or fade out on one or more user asset frames, etc. In an embodiment the resultant modified user asset(s) are stored in one ormore asset databases 170. In other embodiments modified user assets are stored and referenced by one or more of a variety of storage constructs, including but not limited to,asset databases 170, tables, lists, linked lists, etc. In this manner theoriginal user assets 135 remain unaltered by the embodimentmovie production system 100. - As noted, in an embodiment each
theme script 150 containsrules 175 that define themovie 160 to be generated. In an embodiment eachtheme script 150 hasrules 175 that, when applied, create the format of themovie 160, e.g., size of themid section 220, number and ordering ofchapters 240 in themid section 220, etc. In an embodiment eachtheme script 150 containsrules 175 for the contents of any intro section(s) 210, the contents of themid section 220, and the contents of any end section(s) 230. - In an embodiment each
theme script 150 can containrules 175 to be applied touser assets 135 to generate transformations on one ormore user assets 135 by, e.g., correlating metadata and feature information mined from or otherwise related to theuser assets 135 with the theme script rules 175. In thismanner user assets 135 can be transposed to suit the theme of the selectedscript file 150; e.g.,user assets 135 can be modified to be black-and-white, cropped to depict specific content, etc. - In an embodiment each
theme script 150 can containrules 175 that identify special keywords that can be replaced with metadata or feature information extracted from theuser assets 135, e.g., names identifying faces of people in theimages 105 and/orvideo 115, location feature identification information, e.g., mountain range, waterfall, etc., in theimages 105 and/orvideo 115, etc. In this manner the generatedmovie 160 is rendered personal to theuser 145 in accordance with theuser assets 135. - In an embodiment the
theme scripts 150 can have as a target a number ofuser assets 135 or range of a number ofuser assets 135. In an embodiment thetheme scripts 150 can accommodate a smaller number ofuser assets 135 than targeted. Anembodiment theme script 150 targeted to accommodate more than the existing number ofuser assets 135 can reuseuser assets 135 among the frames of the generatedmovie 160 in an orderly or random pattern in order to generate amovie 160 with a sufficient desired length. Anembodiment theme script 150 targeted to accommodate more than the existing number ofuser assets 135 can spread the existinguser assets 135 among the frames of the generatedmovie 160 in such a manner as to includeduplicative user assets 135 but with differing treatments, e.g., effects, transitions, etc., in order to generate amovie 160 with a sufficient desired length. In an aspect of these embodiments atheme script 150 will generate amid section 220 of amovie 160 that has more frames thanuser assets 135. - An
embodiment theme script 150 targeted to accommodate more than the existing number ofuser assets 135 can generate a shorter play-length movie 160 that coincides with the existing user asset set. Anembodiment theme script 150 targeted to accommodate more than the existing number ofuser assets 135 can increase the time spent on one ormore user assets 135 included in frames in themovie 160 to generate amovie 160 of a predetermined play-length or within a predetermined play-length time span. Anembodiment theme script 150 targeted to accommodate more than the existing number ofuser assets 135 can create frames of amovie 160 by dynamically generatingelements 155 to be included in themovie 160 from theuser assets 135, e.g., generating additional images from user asset video clips 115 and/or portions ofuser asset images 105, generating additional video clips by dividing existing user asset video clips 115 into smaller play-length videos, generating scrapbook pages withuser assets 135, etc. In otherembodiments theme scripts 150 targeted to accommodate more than the existing number ofuser assets 135 can manage a smaller set ofuser assets 135 with a combination of one or more of these embodiment approaches and/or with other approaches. - In an embodiment the
theme scripts 150 can manage a larger number ofuser assets 135 than are targeted to be accommodated in amovie 160. Anembodiment theme script 150 targeted to accommodate less than the existing number ofuser assets 135 can determine not to include all theuser assets 135 in themovie 160. Anembodiment theme script 150 targeted to accommodate less than the existing number ofuser assets 135 can includeadditional chapters 240,longer chapters 240, a longermid section 220, etc. in the generatedmovie 160 to manage all or a larger subset of theuser assets 135 than targeted for. Anembodiment theme script 150 targeted to accommodate less than the existing number ofuser assets 135 can shorten the frame display time for one or more of theuser assets 135 and/or speed up the output of one or more user asset video clips 115 included in the generatedmovie 160. In otherembodiments theme scripts 150 targeted to accommodate less than the existing number ofuser assets 135 can manage a larger set ofuser assets 135 with a combination of one or more of these embodiment approaches and/or with other approaches. - In an embodiment a
theme script 150 can containrules 175 for thetheme application engine 120 to apply to dynamically generateelements 155 for themovie 160. Such dynamically generatedelements 155 can include, but are not limited to, frame background designs, scrapbook pages, collages, additional images generated from still frames of auser asset video 115, additional images generated from differing regions of auser asset image 105, etc. In an embodiment dynamically generatedelements 155 are stored in one or moremovie asset databases 195. In other embodiments dynamically generatedelements 155 are stored and referenced by one or more of a variety of storage constructs, including but not limited to,movie asset databases 195, tables, lists, linked lists, etc. - In an embodiment a
theme script 150 can containrules 175 for thetheme application engine 120 to apply for the inclusion of predefined content within themovie 160. Such additional predefined content can include, but is not limited to, clip art, audio tracks, caption style, etc. - In an embodiment there are various groups of theme script rules 175 to effect a variety of resultant content, or elements, included in a generated
movie 160. Eachtheme script 150 can containrules 175 from one or more of these groups which are selected and/or tailored to define a portion of theresultant movie 160 with the identified theme from thetheme script 150. -
FIG. 3 depicts embodiment theme script rule groups 300. A grouping rule, or rules, 305 in anembodiment script file 150 defines the logic by whichdifferent user assets 135 are to be grouped into chapters, or sections, of themovie 160; e.g., by content location, date range, the identity of the people appearing in theuser assets 135, random, etc. An aspect of this grouping rule(s) 305 also defines the size of thechapters 240 or sections; i.e., howmuch user content 135 is to be included in anyparticular chapter 240 and/or how much time eachchapter 240 in themovie 160 should play, or run. - An ordering rule, or rules, 310 in an
embodiment script file 150 defines the logic by whichdifferent user assets 135 are to be ordered within themovie 160; e.g., by ascending or descending time properties, randomly, etc. In an embodiment the ordering rule(s) 310 define the order ofuser assets 135 for thechapters 240 of themovie 160 and/or the order ofuser assets 135 within themovie 160. - A selection rule, or rules, 315 in an
embodiment script file 150 managesduplicative user assets 135 and the omission ofuser assets 135 from theresultant movie 160, including the omission of one ormore images 105 from a set ofimages 105 and/or the trimming ofuser video 115 and/or audio files 125. In an embodiment the omission ofuser assets 135 from themovie 160 can be for a variety of results including the reduction of duplicative views or sounds within themovie 160, the inclusion of selective content within themovie 160, maintenance of a predefined play time for themovie 160, etc. - An aspect of embodiment selection rule(s) 315 defines, or otherwise determines, how many frames of which
user assets 135 are to be included in themovie 160. In an embodiment this aspect of the selection rule(s) 315 defines which, if any, duplicative frames, from a content perspective, of theuser assets 135 are to be included in themovie 160. For example, there may be ten (10) images of the same person in the same pose with the same location background in a set ofuser images 105 and the selection rule(s) 315 define a maximum of two (2) images that depict the same subject matter are to be included in themovie 160. In an embodiment selection rule(s) 315 also define which two of the ten images are to be included in themovie 160, e.g., the first two images in the set ofimages 105, the two images in the set ofimages 105 with the face of the depicted person most centered, etc. - A transition rule, or rules, 320 in an
embodiment script file 150 defines the transitions to be imposed on theuser assets 135 andother elements 155 included in eachchapter 240 and themovie 160; e.g., zoom, pan, rotate, fade in, fade out, etc. - An effects rule, or rules, 325 in an
embodiment script file 150 defines the effects to be imposed on theuser assets 135 andother elements 155 included in themovie 160; e.g., render one ormore images 105 black-and-white, render one ormore images 105 sepia, mute audio in one ormore chapters 240, etc. - An intro rule, or rules, 330 in an
embodiment script file 150 defines the information to be used to create anintro section 210 for themovie 160. In an embodiment an intro rule(s) 330 also, or alternatively, defines the information for generating anintro section 210 for one ormore chapters 240 of themovie 160. As noted, in an embodiment anintro section 210 is a special section added to the beginning of themovie 160 and/or the beginning of amovie chapter 240. In an embodiment the content of anintro section 210 includes the look, feel and/or audio for each frame of theintro section 210; e.g., black backdrop with white letters and a voice over from frames of avideo 115, etc. - In an embodiment the content of an
intro section 210 can contain one or more titles, one or more credits, date information, content information, one or more phrases, e.g., lyrics to a song, words from a poem, captions, etc. In an embodiment the content of anintro section 210 can also, or alternatively, be content 155 that is dynamically generated fromuser content 135. - In an embodiment content of an
intro section 210 is automatically generated from existing metadata and/or feature information mined fromuser assets 135; e.g., titles extracted from image tags, names extracted from image tags, etc. In an embodiment content of anintro section 210 is also, or alternatively, generated from prompted user input when the necessary metadata and/or feature information is unavailable to themovie production system 100. In an embodiment content of anintro section 210 is also, or alternatively, generated from preexisting non-user asset content; e.g., phrases from music lyrics and/or poems, clip art, a music selection, etc. - In an embodiment titles, credits or captions can already exist in one or more frames of an
intro section 210 because, e.g., theuser 145 has previously caused amovie 160 to be generated from a set ofuser assets 135 and theuser 145 has subsequently changed thetheme script 150 to be applied to the same set ofuser assets 135, the user has previously created titles, credits or captions associated with one ormore user assets 135 included in anintroduction section 210 or one or more frames of anintroduction section 210, etc. In an aspect of this embodiment the text of the existing titles, credits and captions will not be removed or replaced pursuant to theme script rules 175. In an aspect of this embodiment the effect and/or transition applied to the text of the existing titles, credits and captions of the introduction section(s) 210 will be altered as dictated by one or more theme script rules 175 defining the text style for the resultant movie introduction section(s) 210. - An outro rule, or rules, 335 in an
embodiment script file 150 defines the information to be used to create an end, or outro,section 230 for themovie 160. In an embodiment an outro rule(s) 335 also, or alternatively, defines the information for generating anend section 230 for eachchapter 240 of themovie 160. As noted, in an embodiment anend section 230 is a special section added to the end of themovie 160 and/or the end of one ormore movie chapters 240. In an embodiment the content of anend section 230 includes the look, feel and/or audio for each frame of theend section 230; e.g., slow fade out of image frame fromuser image 105 overlaid with black lettering and enhanced with a musical selection, etc. - In an embodiment the content of an
end section 230 can contain one or more titles, one or more credits, date information, content information, one or more phrases, e.g., lyrics to a song, words from a poem, captions, etc. In an embodiment the content of anend section 230 can also, or alternatively, beelements 155 dynamically generated fromuser content 135; e.g., a collage formed fromuser assets 135. - In an embodiment content of an
end section 230 is automatically generated from existing metadata and/or feature information mined fromuser assets 135; e.g., credits extracted from image tags, etc. In an embodiment content of anend section 230 is also, or alternatively, generated from prompted user input when the necessary metadata and/or feature information is unavailable to themovie production system 100. In an embodiment content of anend section 230 is also, or alternatively, generated from preexisting non-user asset content; e.g., phrases from music lyrics and/or poems, clip art, a music selection, etc. - In an embodiment titles, credits or captions can already exist in one or more frames of an
end section 230 because, e.g., theuser 145 has previously caused amovie 160 to be generated from a set ofuser assets 135 and theuser 145 has subsequently changed thetheme script 150 to be applied to the same set ofuser assets 135, the user has previously created titles, credits or captions associated with one ormore user assets 135 included in anend section 230 or one or more frames of anend section 230, etc. In an aspect of this embodiment the text of the existing titles, credits and captions will not be removed or replaced pursuant to theme script rules 175. In an aspect of this embodiment the effect and/or transition applied to the text of the existing titles, credits and captions of the end section(s) 230 will be altered as dictated by one or more theme script rules 175 defining the text style for the resultant movie end section(s) 230. - Caption rules 340 in an
embodiment script file 150 define how and where captions are to be added touser assets 135 and/or frames of themovie 160. In an embodiment caption rules 340 further contain the details on the style and treatment of various captions included within themovie 160; e.g., font, color, size, position, effect, etc. - In an embodiment caption rules 340 can contain special keywords that are subsequently replaced by appropriate metadata and/or feature information previously mined from the
user assets 135. In an embodiment, if the metadata or feature information necessary to personalize a caption is unavailable the caption will be generated with generic text and theuser 145 will be prompted to thereafter provide input to replace the generic text and render themovie 160 specific and/or personal. - In an embodiment captions can already exist in one or more frames of the
movie 160 because, e.g., theuser 145 has previously caused amovie 160 to be generated from a set ofuser assets 135 and theuser 145 has subsequently changed thetheme script 150 to be applied to the same set ofuser assets 135, the user has previously created captions associated with one ormore user assets 135 included in themovie 160, etc. In an aspect of this embodiment the text of the existing captions will not be removed or replaced pursuant to theme script rules 175. In an aspect of this embodiment the effect and/or transition applied to the text of the existing captions will be altered as dictated by one or more theme script rules 175 defining the text style for the resultant movie captions. Thus, in an aspect of this embodiment caption text positioning and duration is not guaranteed with the application of anew theme script 150 to theuser assets 135 as thenew theme script 150 may need to modify these to account for, e.g., animation, theme aesthetics, etc. - An art rule, or rules, 345 in an
embodiment script file 150 defines how any included art, e.g., clip art, etc., should be added to, or otherwise, utilized, in themovie 160; e.g., the addition of adornments such as backgrounds or clip art images to one or more movie frames, etc. - In an embodiment the art rule(s) 345 details how
user assets 135 are to appear with or within added clip art in one or more movie frames; e.g., a scrapbook page withuser asset images 105 positioned within clip art frames, etc. - In an embodiment one or
more theme scripts 150 identify one or more music scores, via a music rule, or rules, 350 to be included within themovie 160. In an aspect of this embodiment the identified music score(s) are intended to enhance the theme, or mood, of the chosenscript file 150 and, therefore, theresultant movie 160. In an embodiment the music rules 350 include directions for the positioning of the music within themovie 160 and the treatment, e.g., volume, and effects, e.g., fade in, fade out, loop, etc., to be imposed on the included music. - In an embodiment the music rules 350 also, or alternatively, dictate how a user's
audio 120 is to be managed within themovie 160; e.g., played with specific chapters and muted for others, softened and played throughout thebody 220 of themovie 160, played in theintroduction 210 and end 230 sections of themovie 160, etc. - In an embodiment if there is user-specified music already associated with one or
more user assets 135 or one or more frames of themovie 160 then theuser 145 is asked to indicate whether they wish to retain the user-specified music or utilize the theme script identified music. In an alternative embodiment if there is user-specified music associated with one ormore user assets 135 or one or more frames of themovie 160 then theuser 145 is notified that the user-specified music will not be implemented and the theme script identified music is included within themovie 160 pursuant to one or more music rules 350. In a second alternative embodiment if there is user-specified music associated with one ormore user assets 135 or one or more frames of themovie 160 then the user-specified music is retained and used for themovie 160. - In an embodiment if there is no music associated with the
user assets 135 or frames of themovie 160 then theuser 145 is prompted, via theUI 180, to select, or otherwise identify, a music selection, or selections, to be included within themovie 160. In an alternative embodiment if there is no music associated with theuser assets 135 or frames of themovie 160 then pre-identified music indicated in one or more theme script rules 175 is used for themovie 160. - In an embodiment a dynamic frame generation rule(s) 355 in a
script file 150 defines howelements 155, or frames, are to be dynamically created for incorporation within themovie 160. Dynamically generatedelements 155 can include, but are not limited to, frame background designs, scrapbook pages, collages, additional images generated from still frames of auser asset video 115, additional images generated from differing regions of auser asset image 105, etc. For example, a dynamic frame generation rule(s) 355 can define the creation of a scrapbook page frame withuser images 105 arranged about the frame and decorated with pre-selected clipart to be included within themovie 160. As a second example, a dynamic frame generation rule(s) 355 can define the generation of two images from oneuser asset image 105 where each of the two generated images depict differing regions, or subjects, e.g., different people, etc., within theuser asset image 105. In an aspect of this embodiment mined metadata and feature information and/or the results of analyses performed on theoriginal user asset 135 is used in conjunction with, or by, the dynamic frame generation rule(s) 355 to dynamically generateelements 155 for themovie 160 from existinguser assets 135. - In an embodiment dynamically generated
elements 155 created pursuant to one or more dynamic frame generation rules 355 are stored in one or moremovie asset databases 195. In other embodiments dynamically generatedelements 155 are stored and referenced by one or more of a variety of storage constructs, including but not limited to,movie asset databases 195, tables, lists, linked lists, etc. - In an embodiment a dynamic frame generation rule(s) 355 controls the placement of dynamically generated
elements 155 within themovie 160; e.g., first frame in theintro section 210, etc. In an embodiment a dynamic frame generation rule(s) 355 defines the transitions and effects to be implemented for dynamically generatedelements 155. In an aspect of this embodiment the transitions and effects identified by a dynamicframe generation rule 355 supersedes anytransition rules 320 or effects rules 235 in thescript file 150 that would otherwise be implemented for the dynamically generatedelement 155 due to, e.g., its position within themovie 160. - In embodiments more, less and/or
alternative groups 300 of theme script rules 175 exist. - Referring again to
FIG. 1 , in an embodiment auser 145 interacts with themovie production system 100 via a user interface. UI, 180. In an embodiment theuser 145 enablesuser content 135 to be input, or otherwise made accessible, to the computing system, or device, e.g., personal computer, computer network, etc. hosting, or otherwise running, themovie production system 100. In an embodiment thetheme application engine 120, via theUI 180, prompts theuser 145 for input to render themovie 160 more polished and personal. In an embodiment the UI outputs themovie 160 to theuser 145 for review. In an embodiment theuser 145 can make changes to themovie 160 via theUI 180. - In an embodiment, while the
movie production system 100 is generating a movie 160 a progress dialog box is displayed to theuser 145 via theUI 180. In an embodiment the progress dialog box indicates the action currently being performed to generate themovie 160; e.g., applying black-and-white movie theme, generating intro section, etc. In an embodiment the progress dialog box indicates how much of the movie generation has been completed; e.g., 60% complete, etc. - In an embodiment a progress dialog box is displayed to a
user 145 only when themovie production system 100 requires a user perceptible time to apply therules 175 of atheme script 150 to generate amovie 160 - In an embodiment the
user 145 can, via theUI 180, inform themovie production system 100 that themovie 160 is finished and/or ready for publication. In an embodiment themovie production system 100 encodes afinished movie 160 in one or more predefined formats and/or one or more user-specified formats and/or one or more formats supported by a storage media associated with themovie production system 100 and upon which thefinished movie 160 will be stored and/or pushed to and/or published to. In an embodiment there can be more than one copy of a finished, encodedmovie 190, also referred to herein as the publishedmovie 190. - In an embodiment the
movie production system 100 stores each encoded version of thefinished movie 190 to one or more storage media, e.g., hard drive, computer memory, DVD, CD, memory stick, etc. - In an embodiment the
movie production system 100 can publish a finished, encoded version of themovie 190 by pushing, or otherwise storing, the publishedmovie 190 to one or more devices ormedia 185, e.g., computer, cell phone, etc. In an embodiment themovie production system 100 can publish a finished, encoded version of themovie 190 to one or more publication points 165, e.g., websites, email addresses, etc. -
FIGS. 4A-4B illustrate an embodiment logic flow for an embodimentmovie production system 100. While the following discussion is made with respect to systems portrayed herein the operations described may be implemented in other systems. The operations described herein are not limited to the order shown. Additionally, in other alternative embodiments more or fewer operations may be performed. Further, the operations depicted may be performed by an embodimentmovie production system 100 or by an embodimentmovie production system 100 in combination with one or more other systems. - Referring to
FIG. 4A , in an embodiment user assets are introduced, or otherwise made available to, themovie production system 400. - In an embodiment the movie production system analyzes the user assets to mine metadata and feature
information 402. In an embodiment the movie production system stores metadata and feature information collected from user assets in one ormore metadata databases 404. In an aspect of these embodiments theanalysis engine 110 of themovie production system 100 has the capability to analyze theuser assets 135 to mine metadata and feature information and to store the mined data and information in one ormore metadata databases 130. In alternative aspects of these embodiments theanalysis engine 110 stores mined metadata and feature information which is referenced by one or more of a variety of storage constructs, including but not limited to,metadata databases 195, tables, lists, linked lists, etc. - In an embodiment the movie production system analyzes the user assets to identify user assets or user asset portions, i.e., frames or segments, to be modified, e.g., to correct red-eye, etc., 406. In an aspect of this embodiment the
analysis engine 110 of themovie production system 100 has the capability to analyzeuser assets 135 to identify thoseuser assets 135, or portions ofuser assets 135, to be modified or corrected. In this aspect of this embodiment theanalysis engine 110 notifies theadaptation engine 140 of themovie production system 100 to modify theuser assets 135 so identified. - In an embodiment the movie production system makes any identified modifications and corrections to indicated
user assets 408. In an embodiment the modified user assets are stored 410. In an aspect of these embodiments theadaptation engine 140 of themovie production system 100 has the capability to make the modifications and corrections to the identifieduser assets 135, or portions thereof, and to store the resultant modified user assets. - In an embodiment, at decision block 412 a determination is made as to whether new user assets have been included by the user after a prior movie version has already been generated for review. If no, in an embodiment the user, via the UI of the movie production system, chooses a theme script to be applied to the user assets, or a user-identified subset of the user assets, 414. In an embodiment the theme application engine of the movie production system is apprised of the user selection and accesses the chosen
script file 416. - In an embodiment the movie production system executes, or otherwise acts upon, the chosen script file to generate a story, e.g., a movie, 418. In an aspect of this embodiment the
theme application engine 120 of themovie production system 100 has the capability to execute the user-chosenscript file 150 to generate amovie 160. In an aspect of this embodiment thetheme application engine 120 appliesrules 175 of the user-chosenscript file 150 to one ormore user assets 135, one or more modified user assets and/or one or more generatedelements 155. Additional details for thisembodiment step 418 are described with reference toFIGS. 5A-5E . - In an embodiment the generated story, e.g., movie, is output to the user for
review 420. In an aspect of this embodiment thetheme application engine 120 of themovie maker system 100 directs the output of themovie 160 to theuser 145 via theUI 180. In an embodiment themovie 160 is in a WYSIWYG (what-you-see-is-what-you-get) format appropriate for user review. - In an embodiment at decision block 422 a determination is made as to whether the user has made a theme change request. If yes, in an embodiment the theme application engine of the movie production system is apprised of the user selection and accesses the newly chosen
script file 416. - Referring to
FIG. 4B , at decision block 430 a determination is made as to whether the user has requested any edits to the movie. In an embodiment auser 145 can override one or more theme script rules 175 and/or add additional elements or content, e.g., transitions or effects not accounted for by thetheme script 150, to themovie 160 by requesting edits to themovie 160 via theUI 180. For example theuser 145 can choose different transitions and/or effects, add pan and/zoom to one or more images, change captions, titles or credit styles, change font settings, add or remove music, add or deleteuser assets 135 to be included in themovie 160, etc. - In an embodiment if the user wishes to edit the movie then the user inputs their edit requests to the
movie production system 444. In an aspect of this embodiment theuser 145 directs their edits to thetheme application engine 120 of themovie production system 100 via theUI 180. In an embodiment the movie production system implements the requested edits and updates the movie accordingly 446. In an aspect of this embodiment thetheme application engine 120 of themovie production system 100 coordinates the implementation of user-requested edits to themovie 160. - In an embodiment the newest version of the movie, with user-requested edits implemented, is output to the user for
review 448. In an aspect of this embodiment thetheme application engine 120 of themovie maker system 100 directs the output of themovie 160 to theuser 145 via theUI 180. In an embodiment themovie 160 is in a WYSIWYG format appropriate for user review. - In an embodiment the movie maker system again, at
decision block 430, makes a determination as to whether the user is requesting any edits to the movie. - If at
decision block 430 there are no user-requested movie edits then in an embodiment at decision block 432 a determination is made as to whether the user has introduced new assets to the movie production system for inclusion in a generated movie. If yes, in an embodiment, and referring back toFIG. 4A , the new user assets are made available to themovie production system 400 and processed as prior introduced user assets were. - Referring again to
FIG. 4B if atdecision block 432 there are no new user assets to be included in a generated movie then in an embodiment at decision block 434 a determination is made as to whether any user assets have been removed by the user for use in generating a movie. If yes, in an embodiment and referring back toFIG. 4A , the movie production system executes the user-chosen theme script to regenerate, or otherwise modify, the movie without the previously includeduser assets 418. - Referring again to
FIG. 4B if atdecision block 434 no user assets have been excluded for use in generating a movie then in an embodiment at decision block 436 a determination is made as to whether the user has requested the movie be published. If no, in an embodiment and referring back toFIG. 4A , the movie maker system continues to output the movie to the user or otherwise make the movie available to the user forreview 420. - If at
decision block 436 the user has commanded the movie be published then in an embodiment the movie production system encodes the movie into one or more appropriate output formats 438. In an embodiment the movie production system stores the encodedmovie 438. In an alternative embodiment, if at decision block 426 the user has commanded the movie be published then in an embodiment the movie production system stores thefinished movie 438. In an alternative embodiment the movie production system thereafter encodes the finished movie into one or more versions of the finished movie pursuant to requirements for the encoded movie'sdestination 438. - In an embodiment the movie production system can publish, or push, a finished, encoded version of the movie on to one or more indicated computing devices or
media 440. In an embodiment the movie production system can publish a finished, encoded version of the movie to one or more publication points 440. - In an embodiment the movie production system thereafter ends processing for the
current movie 442. -
FIGS. 5A-5E illustrate an embodiment logic flow for an embodimentmovie production system 100 to execute, or otherwise run or act upon, a user-chosentheme script 150 to create amovie 160; i.e., an embodiment logic flow for the movie production system execution of a theme script to generate amovie 418 ofFIG. 4A . While the following discussion is made with respect to systems portrayed herein the operations described may be implemented in other systems. The operations described herein are not limited to the order shown. Additionally, in other alternative embodiments more or fewer operations may be performed. In any embodiment not all steps need be performed for eachscript file 150 and/or the steps may be performed in a different order for different script files 150. Further, the operations depicted may be preformed by an embodimentmovie production system 100 or by an embodimentmovie production system 100 in combination with one or more other systems. - Referring to
FIG. 5A , in an embodiment user assets are chosen, or otherwise identified, to be included in the story, or movie, 500. - In an embodiment, pursuant to one or more theme script rules of the user chosen script file the user assets, or a subset thereof, are grouped into one or more chapters for a
resultant movie 502. In an aspect of this embodiment thetheme application engine 120 organizes theuser assets 135, or a subset thereof, into one ormore movie chapters 240. In an aspect of this embodiment, pursuant to one or more script file rules 175, thetheme application engine 120 accesses the asset database(s) 170 to include modified user assets in the generatedmovie 160 and accesses the user assets for those user assets to be included in the generatedmovie 160 that have not, as yet, been modified. In an aspect of this embodiment thetheme application engine 120 chooses the user assets, or modified user assets, for eachchapter 240 based on theavailable user assets 135, and modified user assets, mined metadata and feature information and/or keywords identified in the user-chosenscript file 150, e.g., SinglePersonShot, GroupShot, CloseUp, etc. - In an embodiment, pursuant to one or more theme script rules of the user-chosen script file, the user assets are arranged and/or ordered within the
movie 504. In an aspect of this embodiment, pursuant to one or more script file rules 175, thetheme application engine 120 arranges and/or orders theuser assets 135, and/or modified user assets stored in anasset database 170, within thevarious movie chapters 240; e.g., orders theuser assets 135 from the first to be displayed to the last to be displayed for afirst chapter 240 of themovie 160, etc. - In an embodiment, pursuant to one or more theme script rules, one or more user assets are modified 506. In an aspect of this embodiment, pursuant to one or more theme script rules 175, the
theme application engine 120 signals, or otherwise directs, theadaptation engine 140 to transpose, or modify, one ormore user assets 135 to be included in themovie 160. For example, in an aspect of this embodiment and pursuant to one or more theme script rules 175, thetheme application engine 120 directs theadaptation engine 140 to transpose selectedimages 105 to black-and-white. - As another example, in an aspect of this embodiment and pursuant to one to more theme script rules 175 as well as the length of a
user video 115, how manyother user assets 135 are to be included in the generatedmovie 160, how much the user video changes over x time and/or etc., thetheme application engine 120 can direct theadaptation engine 140 to trim auser asset video 115. In an embodiment avideo clip 115 may be trimmed to highlight what is deemed the interesting sections of thevideo clip 115. In an embodiment the selection of the segments of thevideo clip 115 to retain, and those segments to trim, is based on keywords in one ormore rules 175 of thescript file 150 and can be facilitated by stored feature information. Thus, in an embodiment the segments of avideo clip 115 that are retained for amovie 160 can vary fromscript theme 150 to scripttheme 150 based on the keywords designated in anyparticular script file 150. - In an embodiment, pursuant to one or more theme script rules of the user-chosen script file, one or more elements to be included in the movie are dynamically generated 508. In an aspect of this embodiment, pursuant to one or
more rules 175 of the user-chosenscript file 150, thetheme application engine 120 dynamically generateselements 155 to be included in themovie 160 usinguser assets 135 or modified user assets. For example, in an embodiment and pursuant to one or more theme script rules 175, thetheme application engine 120 dynamically generates one or more frames for themovie 160 that resemble a scrapbook withimages 105 applied thereto and decorated with clip art. In an embodiment the selection of theuser assets 135 and/or portions of theuser assets 135 included in a dynamically generatedelement 155 are based on keywords in one ormore script rules 175 and/or stored metadata and/or feature information. - In an embodiment dynamically generated elements are stored 508. In an aspect of this embodiment the
theme application engine 120 stores theelements 155 it dynamically generates in one or moremovie asset databases 195. In other aspects of this embodiment thetheme application engine 120 stores theelements 155 it dynamically generates and references the storedelements 155 using one or more of a variety of storage constructs, including but not limited to,movie asset databases 195, tables, lists, linked lists, etc. - In an embodiment, pursuant to one or more rules of the user-chosen script file the dynamically generated elements are arranged, or ordered, within the
movie 508. - In an embodiment at decision block 510 a determination is made as to whether user transitions have been applied to one or more user assets to be included in the movie; i.e., has the user already applied one or more transitions to one or more user assets. If yes, in an embodiment the movie production system notifies the user that the user applied transitions will be replaced with theme script identified transitions 512.
- Whether or not the user has previously applied any transitions to any user assets, or group of user assets, included in the movie in an embodiment, pursuant to one or more rules of the user-chosen script file, one or more transitions are applied to one or more user assets, or groups of user assets, and/or one or more dynamically generated elements included in the
movie 514. In an aspect of this embodiment pursuant to one ormore rules 175 of the user-chosenscript file 150 thetheme application engine 120 applies rule-specified transitions to one ormore user assets 135, groups ofuser assets 135, and/or dynamically generatedelements 155 included in themovie 160. In an alternative aspect of this embodiment thetheme application engine 120 signals, or otherwise commands, theadaptation engine 140 to apply rule-specified transitions to one ormore user assets 135, groups ofuser assets 135, and/or dynamically generatedelements 155 included in themovie 160. - In an aspect of this embodiment some
transition applications 514 require information about the user asset(s) a transition is to be applied to, e.g., the portion of animage 105 that the transition is to begin the fade out on. In this aspect of this embodiment themovie production system 100 uses stored metadata, feature and/or analysis information to finalize the application of a rule-specified transition to one ormore user assets 135 and/or one or more dynamically generatedelements 155. - In an embodiment at decision block 516 a determination is made as to whether user effects have been applied to one or more user assets to be included in the movie; i.e., has the user already applied one or more effects to one or more user assets. If yes, in an embodiment the movie production system notifies the user that the user applied effects will be replaced with theme script identified
effects 518. - Whether or not the user has previously applied any effects to any user assets, or group of user assets, included in the movie in an embodiment, pursuant to one or more rules of the user-chosen script file, one or more effects are applied to one or more user assets, groups of user assets, and/or one or more dynamically generated elements included in the
movie 520. In an aspect of this embodiment, pursuant to one ormore rules 175 of the user-chosenscript file 150, thetheme application engine 120 applies rule-specified effects to one ormore user assets 135, groups ofuser assets 135, and/or dynamically generatedelements 155 included in themovie 160. - In an alternative aspect of this embodiment the
theme application engine 120 signals, or otherwise commands, theadaptation engine 140 to apply rule-specified effects to one ormore user assets 135, groups ofuser assets 135, and/or dynamically generatedelements 155 included in themovie 160. - In an aspect of this embodiment some
effect applications 520 require information about the user asset an effect is to be applied to, e.g., the area of interest in animage 105 where the effect is to zoom in on. In this aspect of this embodiment themovie production system 100 uses stored metadata, feature and/or analysis information to finalize the application of a rule-specified effect to one ormore user assets 135 and/or one or more dynamically generatedelements 155. - In an embodiment, pursuant to one or more theme script rules of the user-chosen script file an intro section for the movie is generated 522. In an aspect of this embodiment the
theme application engine 120 applies one ormore script rules 175 to generate anintro section 210 for themovie 160. In an embodiment anintro section 210 is generated by thetheme application engine 120 giving special treatment, e.g., transition and/or effects application, title and/or caption inclusion, etc., to the first, or selected first group of, movie frames which may include one ormore user assets 135 and/or one or more dynamically generatedelements 155. - In an embodiment the
theme application engine 120, pursuant to one ormore script rules 175, adds title information, credit information, captions and/or other text information into one or more frames of the movie'sintro section 210. In an embodiment the movie production system uses metadata from one or more metadata databases to complete the title(s), credit(s), caption(s) and/or other text within the intro section of themovie 524. - Referring to
FIG. 5B , in an embodiment at decision block 530 a determination is made as to whether there is adequate metadata to complete the intro section of the movie. If no, in an embodiment the movie production system uses generic title(s), generic credit(s) and/or generic caption(s) and/or other generic text in place of user asset specific information within the intro section of the movie for those titles, credits, captions and other intro section text for which there isinsufficient metadata 532. In an embodiment the movie production system sets an indication, e.g., a flag, a counter, etc., as a notification that user input for generic text within the intro section of the movie is to be requested 534. - Whether or not there is sufficient metadata to complete the text portions of the intro section of the movie in an embodiment, pursuant to one or more theme script rules of the user-chosen script file, an intro section for one or more chapters of the movie is generated 536. In an aspect of this embodiment the
theme application engine 120 applies one ormore script rules 175 to generate anintro section 210 for one ormore movie chapters 240. In an embodiment anintro section 210 is generated by thetheme application engine 120 giving special treatment, e.g., transition and/or effects application, title and/or caption inclusion, etc., to the first, or selected first group, of movie frames of eachchapter 240 which may include one ormore user assets 135 and/or one or more dynamically generatedelements 155. - In an embodiment the
theme application engine 120, pursuant to one ormore script rules 175, adds title information, credit information and/or other text information into one or more frames of theintro section 210 for one ormore movie chapters 240. In an embodiment the movie production system uses metadata from one or more metadata databases to complete the title(s), credit(s) and any caption and/or other text within the intro section of the chapters of themovie 538. - In an embodiment at decision block 540 a determination is made as to whether there is adequate metadata to complete the intro section for the chapters of the movie. If no, in an embodiment the movie production system uses generic title(s), generic credit(s) and/or generic caption(s) and/or other generic text in place of user asset specific information within the intro section of the movie chapters for those titles, credits, captions and other intro section text for which there is
insufficient metadata 542. In an embodiment the movie production system sets an indication, e.g., a flag, a counter, etc., as a notification that user input for generic text within the one or more intro sections of one or more movie chapters is to be requested 544. - In an embodiment, pursuant to one or more theme script rules of the user-chosen script file, an outro section for the movie is generated 546. In an aspect of this embodiment the
theme application engine 120 applies one ormore script rules 175 to generate anoutro section 230 for themovie 160. In an embodiment anoutro section 230 is generated by thetheme application engine 120 giving special treatment, e.g., transition and/or effects application, title and/or caption inclusion, etc., to the last, or last group of, movie frames which may include one ormore user assets 135 and/or one or more dynamically generatedelements 155. - In an embodiment the
theme application engine 120, pursuant to one ormore script rules 175, adds title information, credit information, captions and/or other text information into one or more frames of the movie'soutro section 230. In an embodiment the movie production system uses metadata from one or more metadata databases to complete the title(s), credit(s), caption(s) and/or other text within the outro section of themovie 548. - Referring to
FIG. 5C , in an embodiment at decision block 550 a determination is made as to whether there is adequate metadata to complete the outro section of the movie. If no, in an embodiment the movie production system uses generic title(s), generic credit(s) and/or generic caption(s) and/or other generic text in place of user asset specific information within the outro section of the movie for those titles, credits, captions and other outro section text for which there isinsufficient metadata 552. In an embodiment the movie production system sets an indication, e.g., a flag, a counter, etc., as a notification that user input for generic text within the outro section of the movie is to be requested 554. - Whether or not there is sufficient metadata to complete the text portions of the outro section of the movie, in an embodiment, pursuant to one or more theme script rules of the user-chosen script file, an outro section for one or more chapters of the movie is generated 556. In an aspect of this embodiment the
theme application engine 120 applies one ormore script rules 175 to generate anoutro section 230 for one ormore movie chapters 240. In an embodiment anoutro section 230 is generated by thetheme application engine 120 giving special treatment, e.g., transition and/or effects application, title and/or caption inclusion, etc., to the last, or last group of, movie frames of achapter 240 which may include one ormore user assets 135 and/or one or more dynamically generatedelements 155. - In an embodiment the
theme application engine 120, pursuant to one ormore script rules 175, adds title information, credit information and/or other text information into one or more frames of theoutro section 230 for one ormore chapters 240 of themovie 160. In an embodiment the movie production system uses metadata from one or more metadata databases to complete the title(s), credit(s), caption(s) and/or other text within the outro section of the chapters of themovie 558. - In an embodiment at decision block 560 a determination is made as to whether there is adequate metadata to complete the outro sections for the chapters of the movie. If no, in an embodiment the movie production system uses generic title(s), generic credit(s) and/or generic caption(s) and/or other generic text in place of user asset specific information within the outro section of the movie chapters for those titles, credits, captions and other outro section text for which there is
insufficient metadata 562. In an embodiment the movie production system sets an indication, e.g., a flag, a counter, etc., as a notification that user input for generic text within the one or more outro sections of one or more movie chapters is to be requested 564. - In an embodiment, pursuant to one or more theme script rules of the user-chosen script file, one or more captions are added to the body section of the
movie 566. In an aspect of this embodiment thetheme application engine 120 applies one ormore script rules 175 to generate one ormore captions 230 for one or more movie frames in thebody section 220 of themovie 160. In an embodiment the movie production system uses metadata from one or more metadata databases to complete thecaptions 566. - Referring to
FIG. 5D , in an embodiment at decision block 570 a determination is made as to whether there is adequate metadata to complete the captions for the body of the movie. If no, in an embodiment the movie production system uses generic captions in place of user asset specific information for those captions for which there isinsufficient metadata 572. In an embodiment the movie production system sets an indication, e.g., a flag, a counter, etc., as a notification that user input for generic captions within the body section of the movie is to be requested 574. - Whether or not there is sufficient metadata to personalize the captions in the movie's body, in an embodiment at decision block 576 a determination is made as to whether there is user included music for the movie. If no, in an embodiment theme script identified music is incorporated within the movie as dictated by one or more theme script rules 578.
- If there is user included music for the movie, in an embodiment at decision block 580 a determination is made as to whether the user wants to change the music to the theme script identified music. In an aspect of this embodiment the
user 145 is asked, via theUI 180, whether the movie production system should use the user included music or theme script identified music for the generatedmovie 160. - If the user indicates the theme script identified music should be incorporated within the movie then in an embodiment the theme script identified music is added to the movie as dictated by one or more theme script rules 578.
- If the user indicates the user included music should be incorporated within the movie then in an embodiment at decision block 582 a determination is made as to whether there is sufficient user included music for the entire generated movie. If yes, in an embodiment the movie production system applies the user included music to the generated
movie 584. If, however, there is insufficient user included music for the entire generated movie then in an embodiment the movie production system loops the user included music as dictated by one or more theme script rules for the user included music to be applied to the generatedmovie 586. In an alternate embodiment if there is insufficient user included music for the entire generated movie then the movie production system applies user included music for the portions of the movie where user included music is available and applies theme script identified music for other portions of the generatedmovie 586. - Referring to
FIG. 5E , in an embodiment at decision block 590 a determination is made as to whether user input is required to complete the movie; e.g., are there one or more generic captions or titles, etc., that require user input because the necessary metadata was unavailable. If yes, in an embodiment the movie production system prompts the user to input information in order to complete themovie 592. In an aspect of this embodiment thetheme application engine 120, via theUI 180, prompts theuser 145 to input information to fill in blank captions and/or replace generic information in captions, titles and/or credits with personal information to complete themovie 160. - In an embodiment the movie production system includes the user-provided information in the movie as directed by one or more theme script rules 594. In an aspect of this embodiment the
theme application engine 120 of themovie production system 100 includes the user-provided information in themovie 160 as directed by one or more theme script rules 175. - In an embodiment a movie has been automatically generated and processing of the user-chosen script file is ended 596.
- In an embodiment if one or more
additional user assets 135 are included by theuser 145 for use in generating amovie 160 or one ormore user assets 135 are removed by theuser 145 for use in generating amovie 160 then various steps ofFIGS. 5A to 5E are performed as appropriate on the new set of user assets for generation of amovie 160. For example, if anew video 115 is added by theuser 145 to the set ofuser assets 135 to be used for amovie 160 themovie production system 100 automatically organizes thevideo 115 within themovie 160 and applies one or more transitions and/or one or more effects to the video frames as dictated by the theme script rules 175. - While in embodiments discussed herein tasks have been assigned to various identified components of an embodiment
movie production system 100, in other embodiments the described tasks can be performed by other and/or additional system components. -
FIG. 6 is a block diagram that illustrates an exemplarycomputing device system 600 upon which an embodiment can be implemented. Thecomputing device system 600 includes abus 605 or other mechanism for communicating information, and aprocessing unit 610 coupled with thebus 605 for processing information. Thecomputing device system 600 also includessystem memory 615, which may be volatile or dynamic, such as random access memory (RAM), non-volatile or static, such as read-only memory (ROM) or flash memory, or some combination of the two. Thesystem memory 615 is coupled to thebus 605 for storing information and instructions to be executed by theprocessing unit 610, and may also be used for storing temporary variables or other intermediate information during the execution of instructions by theprocessing unit 610. Thesystem memory 615 often contains an operating system and one or more programs, and may also include program data. - In an embodiment, a
storage device 620, such as a magnetic or optical disk, is also coupled to thebus 605 for storing information, including program code consisting of instructions and/or data. - The
computing device system 600 generally includes one ormore display devices 635, such as, but not limited to, a display screen, e.g., a cathode ray tube (CRT) or liquid crystal display (LCD), a printer, and one or more speakers, for providing information to a computing device user. Thecomputing device system 600 also generally includes one ormore input devices 630, such as, but not limited to, a keyboard, mouse, trackball, pen, voice input device(s), and touch input devices, which a computing device user can use to communicate information and command selections to theprocessing unit 610. All of these devices are known in the art and need not be discussed at length here. - The
processing unit 610 executes one or more sequences of one or more program instructions contained in thesystem memory 615. These instructions may be read into thesystem memory 615 from another computing device-readable medium, including, but not limited to, thestorage device 620. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software program instructions. The computing device system environment is not limited to any specific combination of hardware circuitry and/or software. - The term “computing device-readable medium” as used herein refers to any medium that can participate in providing program instructions to the
processing unit 610 for execution. Such a medium may take many forms, including but not limited to, storage media and transmission media. Examples of storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory, CD-ROM, digital versatile disks (DVD), magnetic cassettes, magnetic tape, magnetic disk storage, or any other magnetic medium, floppy disks, flexible disks, punch cards, paper tape, or any other physical medium with patterns of holes, memory chip, or cartridge. Thesystem memory 615 andstorage device 620 of thecomputing device system 600 are further examples of storage media. Examples of transmission media include, but are not limited to, wired media such as coaxial cable(s), copper wire and optical fiber, and wireless media such as optic signals, acoustic signals, RF signals and infrared signals. - The
computing device system 600 also includes one ormore communication connections 650 coupled to thebus 605. The communication connection(s) 650 provide a two-way data communication coupling from thecomputing device system 600 to other computing devices on a local area network (LAN) 665 and/or wide area network (WAN), including the World Wide Web, orInternet 670. Examples of the communication connection(s) 650 include, but are not limited to, an integrated services digital network (ISDN) card, modem, LAN card, and any device capable of sending and receiving electrical, electromagnetic, optical, acoustic, RF or infrared signals. - Communications received by the
computing device system 600 can include program instructions and program data. The program instructions received by thecomputing device system 600 may be executed by theprocessing unit 610 as they are received, and/or stored in thestorage device 620 or other non-volatile storage for later execution. - While various embodiments are described herein, these embodiments have been presented by way of example only and are not intended to limit the scope of the claimed subject matter. Many variations are possible which remain within the scope of the following claims. Such variations are clear after inspection of the specification, drawings and claims herein. Accordingly, the breadth and scope of the claimed subject matter is not to be restricted except as defined with the following claims and their equivalents.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/880,175 US20160035387A1 (en) | 2010-04-09 | 2015-10-09 | Automated story generation |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/757,055 US8422852B2 (en) | 2010-04-09 | 2010-04-09 | Automated story generation |
US13/844,953 US9161007B2 (en) | 2010-04-09 | 2013-03-16 | Automated story generation |
US14/880,175 US20160035387A1 (en) | 2010-04-09 | 2015-10-09 | Automated story generation |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/844,953 Continuation US9161007B2 (en) | 2010-04-09 | 2013-03-16 | Automated story generation |
Publications (1)
Publication Number | Publication Date |
---|---|
US20160035387A1 true US20160035387A1 (en) | 2016-02-04 |
Family
ID=44760992
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/757,055 Active 2031-06-30 US8422852B2 (en) | 2010-04-09 | 2010-04-09 | Automated story generation |
US13/844,953 Active US9161007B2 (en) | 2010-04-09 | 2013-03-16 | Automated story generation |
US14/880,175 Abandoned US20160035387A1 (en) | 2010-04-09 | 2015-10-09 | Automated story generation |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/757,055 Active 2031-06-30 US8422852B2 (en) | 2010-04-09 | 2010-04-09 | Automated story generation |
US13/844,953 Active US9161007B2 (en) | 2010-04-09 | 2013-03-16 | Automated story generation |
Country Status (4)
Country | Link |
---|---|
US (3) | US8422852B2 (en) |
EP (1) | EP2556482A4 (en) |
CN (1) | CN102256049B (en) |
WO (1) | WO2011126498A1 (en) |
Families Citing this family (86)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100263005A1 (en) * | 2009-04-08 | 2010-10-14 | Eric Foster White | Method and system for egnaging interactive web content |
US9208147B1 (en) | 2011-01-07 | 2015-12-08 | Narrative Science Inc. | Method and apparatus for triggering the automatic generation of narratives |
US11989659B2 (en) | 2010-05-13 | 2024-05-21 | Salesforce, Inc. | Method and apparatus for triggering the automatic generation of narratives |
US8655111B2 (en) * | 2010-05-13 | 2014-02-18 | Shutterfly, Inc. | System and method for creating and sharing photo stories |
US8355903B1 (en) | 2010-05-13 | 2013-01-15 | Northwestern University | System and method for using data and angles to automatically generate a narrative story |
US8726161B2 (en) * | 2010-10-19 | 2014-05-13 | Apple Inc. | Visual presentation composition |
US9697178B1 (en) | 2011-01-07 | 2017-07-04 | Narrative Science Inc. | Use of tools and abstraction in a configurable and portable system for generating narratives |
US10185477B1 (en) | 2013-03-15 | 2019-01-22 | Narrative Science Inc. | Method and system for configuring automatic generation of narratives from data |
US9697197B1 (en) | 2011-01-07 | 2017-07-04 | Narrative Science Inc. | Automatic generation of narratives from data using communication goals and narrative analytics |
US9720899B1 (en) | 2011-01-07 | 2017-08-01 | Narrative Science, Inc. | Automatic generation of narratives from data using communication goals and narrative analytics |
US10657201B1 (en) | 2011-01-07 | 2020-05-19 | Narrative Science Inc. | Configurable and portable system for generating narratives |
US9576009B1 (en) | 2011-01-07 | 2017-02-21 | Narrative Science Inc. | Automatic generation of narratives from data using communication goals and narrative analytics |
US20120246609A1 (en) | 2011-03-24 | 2012-09-27 | International Business Machines Corporation | Automatic generation of user stories for software products via a product content space |
US10739941B2 (en) | 2011-03-29 | 2020-08-11 | Wevideo, Inc. | Multi-source journal content integration systems and methods and systems and methods for collaborative online content editing |
US9711178B2 (en) | 2011-03-29 | 2017-07-18 | Wevideo, Inc. | Local timeline editing for online content editing |
US20130254292A1 (en) * | 2012-03-21 | 2013-09-26 | Authorbee, Llc | Story content generation method and system |
US9578365B2 (en) * | 2012-05-15 | 2017-02-21 | H4 Engineering, Inc. | High quality video sharing systems |
US20130314749A1 (en) * | 2012-05-28 | 2013-11-28 | Ian A. R. Boyd | System and method for the creation of an e-enhanced multi-dimensional pictokids presentation using pictooverlay technology |
US20140013268A1 (en) * | 2012-07-09 | 2014-01-09 | Mobitude, LLC, a Delaware LLC | Method for creating a scripted exchange |
US9201947B2 (en) * | 2012-09-20 | 2015-12-01 | Htc Corporation | Methods and systems for media file management |
WO2014045262A2 (en) * | 2012-09-24 | 2014-03-27 | Burkiberk Ltd | Interactive creation of a movie |
US9278255B2 (en) | 2012-12-09 | 2016-03-08 | Arris Enterprises, Inc. | System and method for activity recognition |
US10212986B2 (en) | 2012-12-09 | 2019-02-26 | Arris Enterprises Llc | System, apparel, and method for identifying performance of workout routines |
US8935305B2 (en) * | 2012-12-20 | 2015-01-13 | General Instrument Corporation | Sequential semantic representations for media curation |
US9075544B2 (en) | 2013-01-15 | 2015-07-07 | International Business Machines Corporation | Integration and user story generation and requirements management |
US9111040B2 (en) | 2013-01-15 | 2015-08-18 | International Business Machines Corporation | Integration of a software content space with test planning and test case generation |
US9063809B2 (en) | 2013-01-15 | 2015-06-23 | International Business Machines Corporation | Content space environment representation |
US9659053B2 (en) | 2013-01-15 | 2017-05-23 | International Business Machines Corporation | Graphical user interface streamlining implementing a content space |
US9069647B2 (en) | 2013-01-15 | 2015-06-30 | International Business Machines Corporation | Logging and profiling content space data and coverage metric self-reporting |
US9396342B2 (en) | 2013-01-15 | 2016-07-19 | International Business Machines Corporation | Role based authorization based on product content space |
US9218161B2 (en) | 2013-01-15 | 2015-12-22 | International Business Machines Corporation | Embedding a software content space for run-time implementation |
US9081645B2 (en) | 2013-01-15 | 2015-07-14 | International Business Machines Corporation | Software product licensing based on a content space |
US9141379B2 (en) | 2013-01-15 | 2015-09-22 | International Business Machines Corporation | Automated code coverage measurement and tracking per user story and requirement |
US9087155B2 (en) | 2013-01-15 | 2015-07-21 | International Business Machines Corporation | Automated data collection, computation and reporting of content space coverage metrics for software products |
US20140205269A1 (en) * | 2013-01-23 | 2014-07-24 | Changyi Li | V-CDRTpersonalize/personalized methods of greeting video(audio,DVD) products production and service |
US11748833B2 (en) * | 2013-03-05 | 2023-09-05 | Wevideo, Inc. | Systems and methods for a theme-based effects multimedia editing platform |
US9886173B2 (en) | 2013-03-15 | 2018-02-06 | Ambient Consulting, LLC | Content presentation and augmentation system and method |
US9626365B2 (en) | 2013-03-15 | 2017-04-18 | Ambient Consulting, LLC | Content clustering system and method |
US10365797B2 (en) * | 2013-03-15 | 2019-07-30 | Ambient Consulting, LLC | Group membership content presentation and augmentation system and method |
US9286710B2 (en) * | 2013-05-14 | 2016-03-15 | Google Inc. | Generating photo animations |
US9378768B2 (en) * | 2013-06-10 | 2016-06-28 | Htc Corporation | Methods and systems for media file management |
US20150026578A1 (en) * | 2013-07-22 | 2015-01-22 | Sightera Technologies Ltd. | Method and system for integrating user generated media items with externally generated media items |
US20150090099A1 (en) * | 2013-10-01 | 2015-04-02 | David Michael Hawkins | Method for Transforming a Poem into a Song |
US9552342B2 (en) * | 2014-01-09 | 2017-01-24 | Microsoft Technology Licensing, Llc | Generating a collage for rendering on a client computing device |
US10042830B2 (en) * | 2014-05-07 | 2018-08-07 | Scripto Enterprises Llc. | Writing and production methods, software, and systems |
US20150331960A1 (en) * | 2014-05-15 | 2015-11-19 | Nickel Media Inc. | System and method of creating an immersive experience |
US9646227B2 (en) | 2014-07-29 | 2017-05-09 | Microsoft Technology Licensing, Llc | Computerized machine learning of interesting video sections |
US9934423B2 (en) * | 2014-07-29 | 2018-04-03 | Microsoft Technology Licensing, Llc | Computerized prominent character recognition in videos |
US11238090B1 (en) | 2015-11-02 | 2022-02-01 | Narrative Science Inc. | Applied artificial intelligence technology for using narrative analytics to automatically generate narratives from visualization data |
US10747823B1 (en) | 2014-10-22 | 2020-08-18 | Narrative Science Inc. | Interactive and conversational data exploration |
US11288328B2 (en) | 2014-10-22 | 2022-03-29 | Narrative Science Inc. | Interactive and conversational data exploration |
US11922344B2 (en) | 2014-10-22 | 2024-03-05 | Narrative Science Llc | Automatic generation of narratives from data using communication goals and narrative analytics |
US11341338B1 (en) | 2016-08-31 | 2022-05-24 | Narrative Science Inc. | Applied artificial intelligence technology for interactively using narrative analytics to focus and control visualizations of data |
US11250630B2 (en) | 2014-11-18 | 2022-02-15 | Hallmark Cards, Incorporated | Immersive story creation |
US11170038B1 (en) | 2015-11-02 | 2021-11-09 | Narrative Science Inc. | Applied artificial intelligence technology for using narrative analytics to automatically generate narratives from multiple visualizations |
US11232268B1 (en) | 2015-11-02 | 2022-01-25 | Narrative Science Inc. | Applied artificial intelligence technology for using narrative analytics to automatically generate narratives from line charts |
US11222184B1 (en) | 2015-11-02 | 2022-01-11 | Narrative Science Inc. | Applied artificial intelligence technology for using narrative analytics to automatically generate narratives from bar charts |
CN106815217A (en) * | 2015-11-30 | 2017-06-09 | 北京云莱坞文化传媒有限公司 | Story recommends method and story recommendation apparatus |
FR3053201B1 (en) * | 2016-06-28 | 2019-07-12 | Y.Not | METHOD FOR CREATING A PERSONALIZED OBJECT |
US11568148B1 (en) | 2017-02-17 | 2023-01-31 | Narrative Science Inc. | Applied artificial intelligence technology for narrative generation based on explanation communication goals |
US11068661B1 (en) | 2017-02-17 | 2021-07-20 | Narrative Science Inc. | Applied artificial intelligence technology for narrative generation based on smart attributes |
US10699079B1 (en) | 2017-02-17 | 2020-06-30 | Narrative Science Inc. | Applied artificial intelligence technology for narrative generation based on analysis communication goals |
US10762304B1 (en) | 2017-02-17 | 2020-09-01 | Narrative Science | Applied artificial intelligence technology for performing natural language generation (NLG) using composable communication goals and ontologies to generate narrative stories |
US11954445B2 (en) | 2017-02-17 | 2024-04-09 | Narrative Science Llc | Applied artificial intelligence technology for narrative generation based on explanation communication goals |
US10943069B1 (en) | 2017-02-17 | 2021-03-09 | Narrative Science Inc. | Applied artificial intelligence technology for narrative generation based on a conditional outcome framework |
US10755040B2 (en) | 2017-05-17 | 2020-08-25 | Media Gazelle Inc. | Method and system for semantically generating and digitally publishing articles |
CN107577672B (en) * | 2017-09-19 | 2021-07-06 | 网智天元科技集团股份有限公司 | Public opinion-based script setting method and device |
US11042709B1 (en) | 2018-01-02 | 2021-06-22 | Narrative Science Inc. | Context saliency-based deictic parser for natural language processing |
US11561986B1 (en) | 2018-01-17 | 2023-01-24 | Narrative Science Inc. | Applied artificial intelligence technology for narrative generation using an invocable analysis service |
US10755046B1 (en) | 2018-02-19 | 2020-08-25 | Narrative Science Inc. | Applied artificial intelligence technology for conversational inferencing |
US11295783B2 (en) * | 2018-04-05 | 2022-04-05 | Tvu Networks Corporation | Methods, apparatus, and systems for AI-assisted or automatic video production |
US10929595B2 (en) | 2018-05-10 | 2021-02-23 | StoryForge LLC | Digital story generation |
US11232270B1 (en) | 2018-06-28 | 2022-01-25 | Narrative Science Inc. | Applied artificial intelligence technology for using natural language processing to train a natural language generation system with respect to numeric style features |
US11341330B1 (en) | 2019-01-28 | 2022-05-24 | Narrative Science Inc. | Applied artificial intelligence technology for adaptive natural language understanding with term discovery |
EP3984235A4 (en) | 2019-06-11 | 2022-12-28 | Wemovie Technologies | Production-as-service systems for making movies, tv shows and multimedia contents |
WO2021022499A1 (en) * | 2019-08-07 | 2021-02-11 | WeMovie Technologies | Adaptive marketing in cloud-based content production |
US11328009B2 (en) * | 2019-08-28 | 2022-05-10 | Rovi Guides, Inc. | Automated content generation and delivery |
WO2021068105A1 (en) * | 2019-10-08 | 2021-04-15 | WeMovie Technologies | Pre-production systems for making movies, tv shows and multimedia contents |
WO2021225608A1 (en) | 2020-05-08 | 2021-11-11 | WeMovie Technologies | Fully automated post-production editing for movies, tv shows and multimedia contents |
US11070888B1 (en) | 2020-08-27 | 2021-07-20 | WeMovie Technologies | Content structure aware multimedia streaming service for movies, TV shows and multimedia contents |
US12041338B1 (en) | 2020-09-23 | 2024-07-16 | Apple Inc. | Personalized content creation |
US11166086B1 (en) | 2020-10-28 | 2021-11-02 | WeMovie Technologies | Automated post-production editing for user-generated multimedia contents |
US11812121B2 (en) | 2020-10-28 | 2023-11-07 | WeMovie Technologies | Automated post-production editing for user-generated multimedia contents |
US11330154B1 (en) | 2021-07-23 | 2022-05-10 | WeMovie Technologies | Automated coordination in multimedia content production |
CN113762474A (en) * | 2021-08-26 | 2021-12-07 | 厦门大学 | Story ending generation method and storage medium for adaptive theme |
US11321639B1 (en) | 2021-12-13 | 2022-05-03 | WeMovie Technologies | Automated evaluation of acting performance using cloud services |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080155422A1 (en) * | 2006-12-20 | 2008-06-26 | Joseph Anthony Manico | Automated production of multiple output products |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1996030844A1 (en) | 1995-03-28 | 1996-10-03 | Takashi Ogata | Support system for automation of story structure preparation |
JPH08314890A (en) | 1995-05-12 | 1996-11-29 | Odaka Komuten:Kk | Automatic story generating method and device |
US6976229B1 (en) | 1999-12-16 | 2005-12-13 | Ricoh Co., Ltd. | Method and apparatus for storytelling with digital photographs |
US7149961B2 (en) * | 2003-04-30 | 2006-12-12 | Hewlett-Packard Development Company, L.P. | Automatic generation of presentations from “path-enhanced” multimedia |
JP4401727B2 (en) * | 2003-09-30 | 2010-01-20 | キヤノン株式会社 | Image display apparatus and method |
US6972828B2 (en) | 2003-12-18 | 2005-12-06 | Eastman Kodak Company | Method and system for preserving the creative intent within a motion picture production chain |
KR100801666B1 (en) | 2006-06-20 | 2008-02-11 | 뷰모션 (주) | Method and system for generating the digital storyboard by converting text to motion |
US20080215984A1 (en) | 2006-12-20 | 2008-09-04 | Joseph Anthony Manico | Storyshare automation |
US7929028B2 (en) | 2007-06-28 | 2011-04-19 | Disney Enterprises, Inc. | Method and system for facilitating creation of content |
US8443284B2 (en) | 2007-07-19 | 2013-05-14 | Apple Inc. | Script-integrated storyboards |
US20090219291A1 (en) | 2008-02-29 | 2009-09-03 | David Brian Lloyd | Movie animation systems |
US9812170B2 (en) * | 2008-04-11 | 2017-11-07 | Gvbb Holdings S.A.R.L. | Method for automated television production |
US20100157352A1 (en) * | 2008-12-19 | 2010-06-24 | Morales Javier A | Method and system for creating visual representation of wysiwyg finishing instructions for specialty photo media |
-
2010
- 2010-04-09 US US12/757,055 patent/US8422852B2/en active Active
- 2010-08-18 EP EP10849600.1A patent/EP2556482A4/en not_active Ceased
- 2010-08-18 WO PCT/US2010/045891 patent/WO2011126498A1/en active Application Filing
-
2011
- 2011-04-08 CN CN201110093244.5A patent/CN102256049B/en active Active
-
2013
- 2013-03-16 US US13/844,953 patent/US9161007B2/en active Active
-
2015
- 2015-10-09 US US14/880,175 patent/US20160035387A1/en not_active Abandoned
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080155422A1 (en) * | 2006-12-20 | 2008-06-26 | Joseph Anthony Manico | Automated production of multiple output products |
Also Published As
Publication number | Publication date |
---|---|
EP2556482A4 (en) | 2013-10-23 |
EP2556482A1 (en) | 2013-02-13 |
CN102256049A (en) | 2011-11-23 |
US8422852B2 (en) | 2013-04-16 |
US9161007B2 (en) | 2015-10-13 |
US20130216205A1 (en) | 2013-08-22 |
CN102256049B (en) | 2015-11-25 |
WO2011126498A1 (en) | 2011-10-13 |
US20110249953A1 (en) | 2011-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9161007B2 (en) | Automated story generation | |
US6954894B1 (en) | Method and apparatus for multimedia editing | |
US9106812B1 (en) | Automated creation of storyboards from screenplays | |
RU2322654C2 (en) | Method and system for enhancement of audio signal | |
US20150261419A1 (en) | Web-Based Video Navigation, Editing and Augmenting Apparatus, System and Method | |
US20060152504A1 (en) | Sequential retrieval, sampling, and modulated rendering of database or data net information using data stream from audio-visual media | |
US20070101271A1 (en) | Template-based multimedia authoring and sharing | |
JP2004206711A (en) | Synchronization of music and image in digital multimedia device system | |
US20120177345A1 (en) | Automated Video Creation Techniques | |
US20070162857A1 (en) | Automated multimedia authoring | |
CN109120992A (en) | Video generation method and device, electronic equipment and storage medium | |
WO2007127695A2 (en) | Prefernce based automatic media summarization | |
US20060010162A1 (en) | Media article composition | |
US9645985B2 (en) | Systems and methods for customizing text in media content | |
TW200849030A (en) | System and method of automated video editing | |
CN111930289B (en) | Method and system for processing pictures and texts | |
WO2010081225A1 (en) | Digital content creation system | |
JP2007079736A (en) | Data editing device, data editing method, and data editing program | |
JP6903365B1 (en) | Server and data allocation method | |
Hua et al. | Interactive video authoring and sharing based on two-layer templates | |
CA3208553A1 (en) | Systems and methods for transforming digital audio content | |
KR20150121928A (en) | System and method for adding caption using animation | |
WO2022003798A1 (en) | Server, composite content data creation system, composite content data creation method, and program | |
AU744386B2 (en) | Method and apparatus for multimedia editing | |
US20240179366A1 (en) | Mutable composite media |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:037014/0842 Effective date: 20141014 Owner name: MICROSOFT CORPORATION, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SURI, NITIN;SUBRAMANIAN, SRIRAM;SPROULE, DAVID WILLIAM;REEL/FRAME:037014/0798 Effective date: 20100405 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |