# Patent

## Title
Methods systems and devices for dynamically creating composite videos

## Abstract

Devices, systems, and methods for dynamically creating composite videos are disclosed. In one aspect a computerized method comprises editing and playing a lead-in video, playing a user recorded video, playing multiple invitee recorded videos, and editing and playing a lead-out video to create a seamless composite video.

## Background
FIELD OF THE INVENTION
This invention relates generally to methods, systems, and devices for dynamically creating composite videos.
DESCRIPTION OF THE RELATED ART
Creating a video with multiple participants or creators is often difficult. Scheduling a convenient time for each participant to meet may be hard. If creators individually submit content, then some participants may forget to submit their contributions. Also, statically created composite videos may be resource intensive to create and lack the ability update based on viewer reactions.
It would be desirable to provide alternative and improved methods, systems, and devices for creating composite videos. At least some of these objectives will be met by the invention described herein below.
SUMMARY OF THE INVENTION
In one aspect, the present application discloses methods, systems, and devices for dynamically creating a composite video. In one embodiment a computer-implemented method for dynamically creating a composite video comprises receiving by a user mobile computing device a selectable list of potential invitees to create and submit time bound videos for creating a composite video from a server computing device, delivering invitee selection data from the user mobile computing device to the server computing device, recording a video using a video recording component on the user mobile computing device, delivering the user recorded video from the user mobile computing device to the server computing device and delivering time period data from the user mobile computing device to the server computing device. The time period data indicates a time period to submit the time bound videos. Multiple invitee mobile computing devices then receive and play the user recorded video, record and deliver time bound videos using recording components on the invitee mobile computing devices, and display the list of invitees selected by the user mobile computing device. A composite video is then dynamically created in real-time on the multiple invitee mobile computing devices. The invitee mobile computing devices receive the composite video customization data, data indicating which invitee mobile devices did not submit a video, data indicating a video playback order, and the invitee recorded videos from the server computing device. A lead-in video is edited based on the composite video customization data, the edited lead-in video is played, the user recorded video is played after the edited lead-in video, the invitee recorded videos are played after the user recorded video in an order based on the data indicating the video playback order, a lead-out video is edited to indicate which invitees did not submit a video based on the data indicating which invitee mobile devices did not submit a video, and the edited lead-out video is played. The lead-in video and the lead-out video may be preloaded on the multiple invitee mobile computing devices in an unedited form before receiving the composite video customization data, data indicating which invitee mobile devices did not submit a video, data indicating a video playback order, and the invitee recorded videos. The multiple invitee mobile computing devices are configured to play the edited lead-in video, the user recorded video, the individual invitee recorded videos, and the edited lead-out video sequentially as a seamless composite video. In an embodiment, the invitee mobile computing devices may be configured to individually edit the unedited lead-in video while the videos are being delivered.
In an embodiment, the seamless composite video has a video progress bar and a time indicator representing the length of the composite video as a whole. The user recorded videos or the invitee recorded videos may be cached or buffered while the lead-in video is editing or playing. The composite video may comprise a navigation menu to skip to individual segments within the composite video.
Theme data may be delivered from the user mobile computing device to the server computing device. The multiple invitee mobile computing devices may also receive the theme data from the server computing device. The preloaded unedited lead-in video and the preloaded unedited lead-out video maybe selected based on the theme data. Customization data may comprise comprises text, image, audio, or video data. Editing the lead-in video may comprise inserting custom text, images, audio, or videos into the lead-in video.
In an embodiment, notifications are provided to the invitee mobile computing devices regarding the time period to submit the time bound videos. Notifications may be provided to the invitee mobile computing devices indicating that the composite video is available for viewing when the time period to submit the video has expired or all invitees have submitted a video.
In an embodiment, duration data indicating a maximum duration for the invitee recorded videos is delivered from the user mobile computing device to the server computing device. The invitee mobile computing devices may then receive the duration data and the time bound invitee recorded videos are limited to the maximum duration indicated in the duration data.
In an aspect, the method may comprise delivering taunt data from one of the multiple invitee mobile computing devices to the server computing device. The taunt data indicates an invitee that did not submit a video. A taunt notification is delivered from the server computing device to the invitee that did not submit a video based on the taunt data encouraging the invitee that did not submit a video to submit a video. Customization data may indicate a style for the taunt notification and the taunt notification may be created based on the indicated taunt style.
In another aspect, the method may comprise delivering positive reaction data from one of the multiple invitee mobile computing devices to the server computing device. The positive reaction data may indicate a playback time of the composite video, a location on the composite video, and an identity of the invitee mobile computing device delivering the reaction data. The positive reaction data is then delivered to at least one of the multiple invitee mobile computing devices and the composite video is edited to indicate a positive reaction by the identified invitee at the indicated playback time and the indicated location. The customization data may indicate a style for the positive reaction indication and the composite video may be edited based on the indicated positive reaction style.
In an embodiment, the method further comprises receiving by the user mobile computing device a selectable set of template question videos, delivering template question video selection data from the user mobile computing device to a feedback server computing device, editing the template question video based on customization input from the user computing device to create a customized question video, delivering the customized question video from the feedback server computing device to participant computing devices; and receiving answers to the customized question video from the participant computing devices. The participant computing devices may be the invitee mobile computing devices.
This, and further aspects of the present embodiments are set forth herein.



BRIEF DESCRIPTION OF THE DRAWINGS
Present embodiments have other advantages and features which will be more readily apparent from the following detailed description and the appended claims, when taken in conjunction with the accompanying drawings, in which:
FIG. 1 shows an exemplary computer-implemented method for creating composite videos.
FIG. 2 shows an exemplary system architecture.
FIG. 3 shows an exemplary embodiment of participant selection.
FIG. 4 depicts an exemplary embodiment showing video segment recording status.
FIG. 5 shows an exemplary embodiment of a composite video with reaction indicators.
FIG. 6 depicts an exemplary embodiment of a video segment navigation menu.



DETAILED DESCRIPTION
While the invention has been disclosed with reference to certain embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted without departing from the scope of the invention. In addition, many modifications may be made to adapt to a particular situation or material to the teachings of the invention without departing from its scope.
Throughout the specification and claims, the following terms take the meanings explicitly associated herein unless the context clearly dictates otherwise. The meaning of “a”, “an”, and “the” include plural references. The meaning of “in” includes “in” and “on.” Referring to the drawings, like numbers indicate like parts throughout the views. Additionally, a reference to the singular includes a reference to the plural unless otherwise stated or inconsistent with the disclosure herein.
The word “exemplary” is used herein to mean “serving as an example, instance, or illustration.” Any implementation described herein as “exemplary” is not necessarily to be construed as advantageous over other implementations.
The present disclosure describes methods, systems, and devices for creating composite videos. In an embodiment, a meeting update composite video is created by combining multiple time limited update videos submitted by multiple meeting invitees. FIG. 1 shows a prescriptive computer-implemented method for creating a composite video. A corresponding exemplary system architecture is shown in FIG. 2.
At step 101 composite video server computing device 225 determines a list of potential invitees to record and submit time bound videos for the creation of a composite video and delivers the list to a user mobile computing device 201. In an embodiment, composite video server computing device 225 may use machine learning to determine or rank the list of potential invitees. Machine learning may be based on previous interactions with potential invitees, roles of potential invitees, social networking, previous composite videos, composite video submissions, feedback, taunt data, etc. After the list of potential invitees is received by the user mobile computing device 201, invitees are selected on the user mobile computing device 201 and the invitee selection data is delivered to the composite video server computing device 225. An exemplary user interface for selecting invitees is shown if FIG. 3. A list of potential participants 301 is provided on the user mobile computing device 201 and individual invitees are selected 302. The user interface in FIG. 3 is merely an example. Other user interfaces may be used.
At step 102 a video is recorded on the user mobile computing device 201 using a video recording unit 204 on the user mobile computing device 201. The user recorded video may be time bound or have no duration limitation. Time bound user submitted videos may have the same, longer, or shorter duration limits than invitee submitted videos. The user recorded video is then delivered to the composite video server computing device 225. The user recorded video may be stored in a media database 250.
At step 103 a time period to submit a video for use in the creation of the composite video is input and the time period data is delivered to the composite video server computing device 225. Time period data may be stored in a customization database 245. Optionally, a maximum duration for invitee submitted videos may be entered on the user mobile computing device 201 and delivered to the composite video server computing device 225. Duration data may be stored in a customization database 245.
At step 104 composite video server computing device 225 determines a list of themes and delivers the list to the user mobile computing device 201. In an embodiment, composite video server computing device 225 may use machine learning to determine or rank the list of themes. Machine learning may be based on previous interactions with potential invitees, roles of potential invitees, social networking, previous composite videos, video submissions, feedback, taunt data, etc. After the list of themes is received by the user mobile computing device 201, a theme is selected on the user mobile computing device 201 and the theme selection data is delivered to the composite video server computing device 225. Theme selection data may be stored in a customization database 245. Themes may include data relating to lead-in videos, lead-out videos, images, text, video, fonts, positive or negative reaction indicators, user interfaces, etc. Themes may comprise customizable template lead-in videos and template lead-out videos.
At step 105 composite video customization data is input on the user mobile computing device 201 and delivered to the composite video server computing device 225. Customization data may be stored in a customization database 245. Customization data may comprise video titles, subjects, dates, times, participants, images, audio, video, backgrounds, colors, logos, icons, positive or negative reaction indicators, user interface elements, etc. In an embodiment, customizations may be suggested by the composite video server computing device 225. Machine learning may be used to improve suggested customizations.
While steps 101 through 105 are depicted in a given order, any or all of these steps may take place in any order. Additionally, any or all of steps 101 through 105 may be performed sequentially or in parallel.
At step 106 a notification is sent to each invitee mobile computing device 214 based on the invitee selection data from step 101. The notification indicates that the invitee has been invited to record a video to be used in creating a composite video. The notification may comprise various data relating to the composite video such as titles, date of request, period to submit a video, subject of the video, requester, invitees, etc.
At step 107 invitee mobile computing devices 214 may receive further notifications or taunts from other invitee mobile computing devices 214 or the user mobile computing device 201 encouraging the invitee mobile computing device 214 to submit a video. Taunt notifications may be received at any point up until the invitee mobile computing device 214 submits the video.
At step 108, invitee mobile computing devices 214 receive and play the video recorded and submitted by the user mobile computing device 201. In an embodiment, the user submitted video is streamed from the composite video server computing device 225. In various embodiments, the user submitted video may be cached on the invitee mobile computing devices 214 for later use in creating the composite video.
At step 109 a list of invitees is displayed on the invitee mobile computing devices 214. An exemplary embodiment is show in FIG. 4. The user interface in FIG. 4 is merely an example. Other user interfaces may be used. Invitee list 401 may indicate each invitee, whether the invitee has submitted a video 402, a time or date of submission of the video 404, information relating to the invitee, etc. In an embodiment, invitee mobile computing devices 214 and/or user mobile computing device 201 may see whether an invitee has submitted a video but cannot view the submitted videos before all invitees have submitted a video or the time period for submitting a video has expired.
At step 110, invitee mobile computing devices 214 may send 403 taunt notifications to other invitees that have not submitted a video encouraging the invitee to record and submit a video. Taunt data is sent form the invitee mobile computing device 214 to the composite video server computing device 225. A taunt notification is then sent from the composite video server computing device 225 to the identified invitee mobile computing device 214 in step 107.
At step 111 a video is recorded on the invitee mobile computing device 214 using a video recording unit 215 on the invitee mobile computing device 214. The invitee recorded video may be time bound or have no duration limitation. Time bound invitee submitted videos may have the same, longer, or shorter duration limits than the user submitted video. In an embodiment, the invitee mobile computing device receives duration data from the composite video server device indicating a maximum duration for the invitee recorded video. The invitee recorded video is then delivered to the composite video server computing device 225. The invitee recorded video may be stored in the media database 243. The list of invitees in step 108 is then updated to indicate that the invitee mobile computing device 214 has submitted a video.
While steps 107 through 111 are depicted in a given order, any or all of these steps may take place in any order. Additionally, any or all of steps 108 through 111 may be performed sequentially or in parallel.
At step 112 the composite video server computing device 225 determines whether all the invitee mobile computing devices 214 have submitted a video. If all videos have been submitted, then a notification is sent to the user mobile computing device 201 and all invitee mobile computing devices 214 indicating that the composite video is available for viewing. If any of the videos have not been submitted, then the composite video server computing device 225 determines whether the time period for submitting a video has expired at step 113. While step 112 is depicted as occurring before step 113, alternatively step 113 may be performed before step 112. Steps 112 and 113 may be repeated until all videos have been submitted or the time period for submission has expired. At this point, composite video server computing device 225 delivers the notification indicating that the composite video is available for viewing to the user mobile computing device 201 and all invitee mobile computing devices 214. In an embodiment, the composite video then becomes available for creation and viewing.
In steps 114 through 119 creation and playback of a composite video takes place individually on invitee mobile computing devices. In an embodiment, videos may be streamed, edited, and played in real-time to create a seamless composite video.
At step 114 invitee mobile computing device receives composite video metadata. Composite video metadata may include theme selection data, composite video customization data, video submission data, playback order data, and/or positive reaction data.
At step 115 a template lead-in video 223 in an unedited form is edited on the invitee mobile computing device 214 based on the customization data and an edited version of the lead-in video is played. Editing of the lead-in video may include overlaying text such as titles, dates, subjects, inserting audio, overlaying images or icons, changing backgrounds or colors, inserting or overlaying video, or the like. Unedited template lead-in videos 223 are preloaded on invitee mobile computing devices 214 before submission of all videos so that editing and playback of the lead-in video can take place immediately without the need to stream the videos. Editing of the lead-in video may take place in real-time during playback of the video. Other video segments used to create the composite video may cache or buffer while the lead-in video is edited or played.
At step 116 the user recorded video is played on the invitee mobile computing device 214 after the edited lead-in video. In an embodiment, the user video may have been cached on the invitee mobile computing device 214 at step 108. In an alternative embodiment, the user recorded video may be restreamed to the invitee mobile computing device 214. Caching or buffering of the user recorded video may begin during editing or playback of the lead-in video. The user recorded video may be edited to indicate positive or negative reactions based on reaction data from previous viewers.
At step 117 invitee recorded videos are streamed and played on the invitee mobile computing devices 214. Caching of the invitee recorded videos may begin during editing or playback of the lead-in video, playback of the user recorded video, or playback of any previous invitee recorded video. Invitee recorded videos are played sequentially after the user recorded video in an order specified in the playback order data. Playback order may be based on submission date, invitee name, subject matter of the video, role of the invitee, previous submissions, social networking, an order specified by the user, etc. Invitee recorded videos may be edited to indicate positive or negative reactions based on reaction data from previous viewers.
At step 118 a template lead-out video in an unedited form is edited on the invitee mobile computing device 214 based on the customization data and the submission data and an edited version of the lead-out video is played after the invitee recorded videos. Editing of the lead-out video may include overlaying text, inserting audio, overlaying images or icons, changing backgrounds or colors, inserting or overlaying video, or the like. In an embodiment, lead-out videos are edited to overlay the names of invitees that did not submit a video. Unedited template lead-out videos are preloaded on invitee mobile computing devices 214 before submission of all videos so that editing and playback of the lead-out video can take place immediately without the need to stream the videos. In an embodiment, editing of the lead-out video may be performed while lead-in video, user video, or invitee videos are edited or played. In another embodiment, editing of the lead-out video takes place in real-time during playback of the video.
During playback of the user recorded video, any of the invitee recorded videos, the lead-in video, or the lead-out video, viewers may input positive or negative feedback. Positive or negative feedback may indicate the identity of the viewer, the time period of the video, and a specific location on the video. In an embodiment, pressing on the screen of the invitee mobile computing device while the video is playing registers a positive or negative response at the location pressed and the playback time of the video. At step 119 positive or negative reaction data is delivered to the composite video server computing device. Reaction data will be delivered to any later viewers of the composite video. The composite videos will then be edited to overlay a visual indicator of the positive or negative feedback at a specific location on the screen, at a specific time in the video, and by a specific viewer. FIG. 5 depicts an embodiment of a composite video with indicators 501 of positive reactions by multiple viewers at a specific time in the video and different locations on the screen. The user interface in FIG. 5 is merely an example. Other user interfaces may be used.
In steps 114 through 118 the edited lead-in video, the user recorded video, the individual invitee recorded videos, and the edited lead-out video are played sequentially as a seamless composite video without breaks, pauses, or loading between individual video segments. In an embodiment, the composite video appears as a single video with video progress bar, current time, remaining time, and/or total time elements representing the length of the composite video as a whole. Playback of the composite video may be paused, fast-forwarded, or rewound. In an embodiment, long pressing on the screen fast-forwards the composite video. A video segment navigation menu may be present to navigate to individual video segments used in the composite video. FIG. 6 depicts an exemplary embodiment of a video segment navigation menu. In an embodiment, swiping up on the screen brings up a navigation menu 601 with each of the video segments used to create the composite video. Clicking on a segment skips the composite video to the relevant section. The user interface in FIG. 5 is merely an example. Other user interfaces may be used.
At step 120 view status data may be delivered to the composite video server computing device indicating that the composite video has been viewed by the viewing device. In an embodiment, composite video view status for the user and/or invitees can be viewed on the user mobile computing device 201 or the invitee mobile computing devices 214. While steps 114 through 120 have been described as occurring on invitee mobile computing devices 214, these steps may also occur on the user mobile computing device 201.
Notifications and alerts may be sent to the user mobile computing devices 201 or invitee mobile computing devices 214 using short message service (SMS), multimedia message services (MMS), email, instant message (IM), calendar events or invites, mobile notifications, in app notifications, or the like. Notifications may be provided regarding invitations to submit a video, encouragement to submit a video, viewing of a video by others, positive or negative reactions by other viewers, time remaining to submit a video, submission of a video by others, and/or availability of a composite video for viewing.
In various embodiments, users and invitees may create custom themes, templates, user interfaces, text, images, audio clips, video clips, characters, themes, settings, objects, color schemes, layouts, etc. User submitted content may then be used in the creation of future composite videos. Gamification, points, awards, and rewards may be used to encourage user creation and submission of content for future use.
Any of the steps, operations, or processes described herein may be performed or implemented with one or more hardware or software modules, alone or in combination with other devices. In one embodiment, a software module is implemented with a computer program product comprising a computer-readable medium containing computer program code, which can be executed by a computer processor for performing any or all of the steps, operations, or processes described.
Embodiments of the invention may also relate to an apparatus or system for performing the operations herein. This apparatus or system may be specially constructed for the required purposes, and/or it may comprise a general-purpose computing device selectively activated or reconfigured by a computer program stored in a computer. Such a computer program may be stored in a non-transitory, tangible computer readable storage medium, or any type of media suitable for storing electronic instructions, which may be coupled to a computer system bus. Furthermore, any computing systems referred to in the specification may include a single processor or may be architectures employing multiple processor designs for increased computing capability.
FIG. 2 illustrates an exemplary system architecture according to one embodiment. The system 200 may comprise one or more user mobile computing devices 201, one or more invitee mobile computing devices 214, one or more composite video server computing devices 225, and one or more feedback server computing devices 237. The computing devices 201, 214, 225, 237 are configured to communicate over the network 256.
Computing devices 201, 214, 225, 237 may comprise various components including but not limited to one or more processing units 203, 216, 227, 239, memory units 205, 218, 228, 240, video or display interfaces, network interfaces 202, 215, 226, 238, input/output interfaces, video recording units 204, 217, and buses that connect the various units and interfaces. The network interfaces 202, 215, 226, 238 enable the computing devices 201, 214, 225, 237 to connect to the network 256. The memory units 205, 218, 228, 240 may comprise random access memory (RAM), read only memory (ROM), electronic erasable programmable read-only memory (EEPROM), and basic input/output system (BIOS). The memory units 205, 218, 228, 240 may further comprise other storage units such as non-volatile storage including magnetic disk drives, optical drives, flash memory and the like.
While FIG. 2 depicts one user mobile computing device 201, one invitee mobile computing device 214, one composite video server computing device 225, one feedback server computing device 237, seven databases 249, 250, 251, 252, 253, 254, 255, and one network 256, this is meant as merely exemplary. Alternatively, any number of computing devices 201, 214, 225, 237, databases 249, 250, 251, 252, 253, 254, 255, or networks 256 may be present. Some or all of the components of the computing devices 201, 214, 225, 237 and/or the databases 249, 250, 251, 252, 253, 254, 255 may be combined into a single component. Likewise, some or all of the components of the computing devices 201, 214, 225, 237 and/or the databases 242, 243, 244, 245, 246, 247, 248 may be separated into distinct components connected through the network 256.
Server computing devices 225, 237 are shown communicating with databases 249, 250, 251, 252, 253, 254, 255 over network 256. Alternatively, any or all of the databases may be located on the server computing devices 225, 237.
The modules of computing devices 201, 214, 225, 237 may be implemented as software code to be executed by a processing unit 203, 216, 227, 239 using any suitable computer language. The software code may be stored as a series of instructions or commands in a memory unit 205, 218, 228, 240. While specific modules are shown as part of specific computing devices 201, 214, 225, 237, modules may additionally or alternatively be integrated into any of the other computing devices 201, 214, 225, 237.
User mobile computing device 201 may comprise an invitation module 206, a recording module 207, a customization module 208, a composite video module 209, a taunt module 210, and a reaction module 211. User mobile computing device 201 may comprise locally cached template lead-in videos 212 and template lead-out videos 213.
Invitee mobile computing devices 214 may comprise a recording module 219, a composite video module 220, a taunt module 221, and a reaction module 222. Invitee mobile computing devices 214 are depicted as having different modules than the user mobile computing device 201. Alternatively, invitee mobile computing devices 214 may comprise the same modules as the user mobile computing device 201. Invitee mobile computing devices 214 may comprise locally cached template lead-in videos 223 and template lead-out videos 224.
Composite video server computing device 225 may comprise an invitation module 231, a notification module 232, a media module 233, a customization module 234, a taunt module 235, a reaction module 236, and a machine learning module 230.
System 200 may incorporate a feedback server computing device 237 configured to elicit feedback to identify and solve enterprise problems. Methods, systems, and devices for eliciting feedback have been described in U.S. patent application Ser. No. 14/871,793, the full disclosure of which is incorporated by reference. Feedback server computing device 237 may comprise a selection module 241, a ranking module 242, a video customization module 243, a UI customization module 244, a notification module 245, a social module 246, a gamification module 247, and a machine learning module 248.
In an embodiment, composite video creation may be integrated with feedback sessions. A feedback session may be launched as a result of a composite video. In an embodiment, feedback sessions may be launched to solve an issue discussed in a composite video. Problem categories, challenge questions, template question videos, template user interfaces, answers, solution questions, template solution videos, or template video customization may be determined or suggested based on the composite video. Feedback session may also use a composite video or portions of a composite video as a video segment for customizing a template question/solution video, as a template question/solution video, or as a question/solution video. Additionally or alternatively, creation of a composite video may be launched as a result of a feedback session. In an embodiment, a composite video may be created to discuss an issue from a feedback session. Videos from a feedback session may be used to create any portion of the composite video. Composite video server computing device 225 and feedback server computing device 237 may share the same profile database 249. In an embodiment, feedback session creators or participants may be the same as or be determined based on composite video users, invitees, or viewers. Likewise, composite video creation users, invitees, or viewers may be the same as or be determined based on feedback session creators or participants.
System 200 may comprise one or more profile databases 249 containing data relating to users, invitees, employees, and potential participants, one or more media databases 250 containing data relating to user recorded videos, invitee recorded videos, template lead-in videos, template lead-out videos, template question videos, template solution videos, customized videos, and video customization media, one or more UI databases 251 containing data relating to template user interfaces, customized user interfaces, and user interface customization media, one or more customization databases 252 containing video customization data, video metadata, video playback order data, reaction data, time period data, and duration data, one or more category databases 253 containing data relating to problem categories, one or more question databases 254 containing data relating to challenge questions, and one or more answer databases 255 containing data relating to answers to the question videos and solution videos.
Invitation modules 206, 231 are configured to suggest and select invitees to create and submit videos for the creation of a composite video. Recording modules 207, 219 are configured to record videos using video recording units 204, 217 and deliver recorded videos to the composite video server computing device 225. Customization modules 208, 234 may be configured to suggest composite video themes, select composite video themes, suggest composite video customization, and input and deliver composite video customization data. Composite video modules 209, 220 are configured to edit video segments and play video segments as a seamless composite video. Taunt modules 210, 221, 235 are configured to send and receive taunt data. Reaction modules 211, 222, 236 are configured to send and receive positive and negative reaction data relating to the composite videos. Notification module 232, 245 may be configured to provide notifications through SMS, MMS, email, IM, calendar events or invites, mobile notifications, in app notifications, or the like. Notifications may be push or pull notifications. Social module 246 is configured to determine and track social networking relationships. Medial module 233 may be configured to send and receive videos between media database 250 and computing devices 201, 214, 225, 237. Machine learning modules 230, 248 may connect to databases 249, 250, 251, 252, 253, 254, 255 and may be configured to improve any of the functions or modules of the system 200 through machine learning.
Selection module 241 may be configured to determine lists of problem categories, lists of challenge questions within the selected problem category, sets of template question videos, lists of answers, sets of solution template videos, or sets of template user interface skins. Ranking module 242 may be configured to process votes, likes, dislikes, ratings, or comments. Ranking module 242 may also be configured to rank, sort, or filter answers. Video customization module 243 is configured customize template question videos and template answer videos. UI customization module 244 is configured customize template user interfaces. Gamification module 247 may be configured to calculate, assign, and track points, prizes, awards, rewards, leaderboards, top ideas, tasks and/or challenges.
The various components depicted in FIG. 2 may comprise computing devices or reside on computing devices such as servers, desktop computers, laptop computers, tablet computers, personal digital assistants (PDA), smartphones, mobile phones, smart devices, appliances, sensors, or the like. Computing devices may comprise processors, memories, network interfaces, peripheral interfaces, and the like. Some or all of the components may comprise or reside on separate computing devices. Some or all of the components depicted may comprise or reside on the same computing device.
The various components in FIG. 2 may be configured to communicate directly or indirectly with a wireless network such as through a base station, a router, switch, or other computing devices. In an embodiment, the components may be configured to utilize various communication protocols such as Global System for Mobile Communications (GSM), General Packet Radio Services (GPRS), Enhanced Data GSM Environment (EDGE), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Bluetooth, High Speed Packet Access (HSPA), Long Term Evolution (LTE), and Worldwide Interoperability for Microwave Access (WiMAX).
The components may be further configured to utilize user datagram protocol (UDP), transport control protocol (TCP), Wi-Fi, satellite links and various other communication protocols, technologies, or methods. Additionally, the components may be configured to connect to an electronic network without communicating through a wireless network. The components may be configured to utilize analog telephone lines (dial-up connection), digital lines (T1, T2, T3, T4, or the like), Digital Subscriber lines (DSL), Ethernet, or the like. It is further contemplated that the components may be connected directly to a computing device through a USB port, Bluetooth, infrared (IR), Firewire port, thunderbolt port, ad-hoc wireless connection, or the like. Components may be configured to send, receive, and/or manage messages such as email, SMS, IM, MMS, or the like.
While the above is a complete description of the preferred embodiments of the invention, various alternatives, modifications, and equivalents may be used. Therefore, the above description should not be taken as limiting the scope of the invention which is defined by the appended claims.

## Claims

1. A computer-implemented method for dynamically creating a composite video comprising:
(a) receiving by a user mobile computing device a selectable list of potential invitees to create and submit time bound videos for creating a composite video from a server computing device;
delivering invitee selection data from the user mobile computing device to the server computing device;
recording a video using a video recording component on the user mobile computing device;
delivering the user recorded video from the user mobile computing device to the server computing device;
delivering time period data from the user mobile computing device to the server computing device, wherein the time period data indicates a time period to submit the time bound videos; and
delivering composite video customization data from the user computing device to the server computing device;
(b) receiving by multiple invitee mobile computing devices the user recorded video, invitee selection data, and time period data from the server computing device;
playing on the multiple invitee mobile computing devices the user recorded video;
displaying on the multiple invitee mobile computing devices a list of invitees selected by the user mobile computing device;
recording on the multiple invitee mobile computing devices the time bound videos using a video recording component on the multiple invitee mobile computing devices;
delivering the invitee recorded videos from the multiple invitee mobile computing devices to the server computing device; and
(c) dynamically creating and playing the composite video in real-time on the multiple invitee mobile computing devices, wherein dynamically creating and playing the composite video comprises:
receiving by the multiple invitee mobile computing devices the composite video customization data;
receiving by the multiple invitee mobile computing devices data indicating which invitee mobile devices did not submit a video from the server computing device;
receiving by the multiple invitee mobile computing devices data indicating a video playback order from the server computing device;
editing by the multiple invitee mobile computing devices a lead-in video based on the received composite video customization data;
playing on the multiple invitee mobile computing devices the edited lead-in video;
playing on the multiple invitee mobile computing devices the user recorded video after the edited lead-in video;
receiving by the multiple invitee mobile computing devices the invitee recorded videos individually from the server computing device;
playing on the multiple invitee mobile computing devices the invitee recorded videos after the user recorded video in an order based on the data indicating the video playback order;
editing by the multiple invitee mobile computing devices a lead-out video to indicate which invitees did not submit a video based on the data indicating which invitee mobile devices did not submit a video; and
playing on the multiple invitee mobile computing devices the edited lead-out video;
wherein the lead-in video is preloaded on the multiple invitee mobile computing devices in an unedited form before receiving the composite video customization data, data indicating which invitee mobile devices did not submit a video, data indicating a video playback order, and the invitee recorded videos, and wherein the invitee mobile computing devices are configured to individually edit the unedited lead-in video while the videos are being delivered;
wherein the lead-out video is preloaded on the multiple invitee mobile computing devices in an unedited form before receiving the composite video customization data, data indicating which invitee mobile devices did not submit a video, data indicating a video playback order, and the invitee recorded videos; and
wherein the multiple invitee mobile computing devices are configured to play the edited lead-in video, the user recorded video, the individual invitee recorded videos, and the edited lead-out video sequentially as a seamless composite video.

2. The method of claim 1, wherein step (a) further comprises delivering theme data from the user mobile computing device to the server computing device; and
step (c) further comprises receiving by the multiple invitee mobile computing devices the theme data from the server computing device; selecting by the multiple invitee mobile computing devices the preloaded unedited lead-in video based on the theme data; and selecting by the multiple invitee mobile computing devices the preloaded unedited lead-out video based on the theme data.

3. The method of claim 2, wherein the customization data comprises text data, and editing the lead-in video comprises inserting custom text into the lead-in video based on the customization data.

4. The method of claim 2, wherein the customization data comprises image data, and editing the lead-in video comprises inserting a custom image into the lead-in video based on the customization data.

5. The method of claim 2, wherein the customization data comprises audio data, and editing the question video comprises inserting custom audio into the lead-in video based on the customization data.

6. The method of claim 2, wherein the customization data comprises video data, and editing the question video comprises inserting custom video into the lead-in video based on the customization data.

7. The method of claim 1, further comprising providing notifications to the invitee mobile computing devices regarding the time period to submit the time bound videos.

8. The method of claim 1, further comprising providing a notification to the invitee mobile computing devices when time period to submit the videos has expired indicating that the composite video is available for viewing.

9. The method of claim 1, further comprising providing a notification to the invitee mobile computing devices after all invitees have submitted a video indicating that the composite video is available for viewing.

10. The method of claim 1, wherein step (a) further comprises delivering duration data from the user mobile computing device to the server computing device, wherein the duration data indicates a maximum duration for the invitee recorded videos; and
step (b) further comprises receiving by multiple invitee mobile computing devices the duration data;
wherein the time bound invitee recorded videos are limited to the maximum duration indicated in the duration data.

11. The method of claim 1, wherein step (b) further comprises delivering taunt data from one of the multiple invitee mobile computing devices to the server computing device, wherein the taunt data indicates an invitee that did not submit a video; and delivering a taunt notification from the server computing device to the invitee that did not submit a video based on the taunt data, wherein the taunt notification encourages the invitee that did not submit a video to submit a video.

12. The method of claim 9, wherein the customization data indicates a style for the taunt notification, and the taunt notification is created based on the indicated taunt style.

13. The method of claim 1, further comprising delivering positive reaction data from one of the multiple invitee mobile computing devices to the server computing device, wherein the positive reaction data indicates a playback time of the composite video, a location on the composite video, and an identity of the invitee mobile computing device delivering the positive reaction data;
delivering the positive reaction data to at least one of the multiple invitee mobile computing devices; and
editing the composite video on the at least one of the multiple invitee mobile computing devices to indicate a positive reaction by the identified invitee at the indicated playback time and the indicated location.

14. The method of claim 11, wherein the customization data indicates a style for the positive reaction indication, and the composite video is edited based on the indicated positive reaction style.

15. The method of claim 1, wherein the seamless composite video has a video progress bar and a time indicator representing the length of the composite video as a whole.

16. The method of claim 1, wherein the user recorded videos or the invitee recorded videos are cached or buffered while the lead-in video is editing or playing.

17. The method of claim 1, wherein the composite video comprises a navigation menu to skip to individual segments within the composite video.

18. The method of claim 1, further comprising:
receiving by the user mobile computing device a selectable set of template question videos;
delivering template question video selection data from the user mobile computing device to a feedback server computing device;
editing the template question video based on customization input from the user computing device to create a customized question video;
delivering the customized question video from the feedback server computing device to participant computing devices; and
receiving answers to the customized question video from the participant computing devices.

19. The method of claim 18, wherein the participant computing devices are the invitee mobile computing devices.