Cloud-based shareable media platform

JP2025519677A5Pending Publication Date: 2026-06-05TIMECAP LLC

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
TIMECAP LLC
Filing Date
2023-06-12
Publication Date
2026-06-05

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A method of providing a hosting platform for all possible media includes recording, by a user device, a plurality of video segments corresponding to a user's story. The method further includes storing the plurality of video segments in a memory. The method also includes combining, by a processor, the plurality of video segments into a single video stream that conveys the user's story in response to a request from the user device.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Cross - reference to Related Applications This application claims the benefit and priority of U.S. Provisional Patent Application No. 63 / 351,744, filed on June 13, 2022, entitled "Social Media Platform in Story Form", the entire content of which is incorporated herein by reference.

[0002] 1. Field

[0003] The present disclosure is directed to systems and methods related to at least one of creating or sharing documentary videos.

Background Art

[0004] 2. Description of Related Art

[0005] The invention of the smartphone camera has enabled a large number of people to take photos and videos of their daily experiences. Such photos and videos can be stored in chronological order in the phone's memory (e.g., in the phone library) and can be compiled into albums by the user. This media can be sent to family and friends as text messages and emails, shared on social media sites, or the like. However, these photos and videos are each separate media that can only be viewed one at a time, and the entire photo library can have a large number of irrelevant photos or videos that are not related to a person's life.

[0006] There are options that allow users to create home videos using video editing software or tools available via social media applications, but none of these options automatically edit and aggregate videos in real time. Creating a fully narrated video using photos and videos (optionally including stock footage) as input generally requires the user to hire a professional videographer or gain experience operating complex video editing software or social media applications on their own.

[0007] Therefore, in this technical field, there is a need for systems and methods for generating and sharing stories of media in story form.

Summary of the Invention

[0008] A method for providing a hosting platform for shareable videos is described herein. The method includes recording, by a user device, a plurality of video segments corresponding to a user's story. The method further includes storing the plurality of video segments in a memory. The method further includes combining, by a processor, the plurality of video segments into a single video stream that tells the user's story in response to a request from the user device.

[0009] Any of the above embodiments may further include storing, by a server, a single video stream; associating, by the server, the single video stream with a specific hyperlink; and generating, by a processor, a quick response (QR) code including information corresponding to the specific hyperlink associated with the single video stream.

[0010] Any of the above embodiments may further include detecting image data corresponding to a QR code from a user device or another user device, decoding a specific hyperlink from the QR code by the user device or another user device, accessing the Internet location of the specific hyperlink by the user device or another user device, and displaying a single video stream in response to accessing the Internet location using the specific hyperlink by the user device or another user device.

[0011] Any of the above embodiments may further include automatically editing the single video stream by a processor to improve the quality of the single video stream.

[0012] In any of the above embodiments, automatically editing the single video stream may include reducing the delay between at least two of a plurality of video segments, adjusting at least one of contrast, brightness, or color saturation for at least one of a plurality of video segments, adjusting at least one of audio volume, compression, or equalization for at least one of a plurality of video segments, performing speech-to-text transcription on speech from at least one of the video segments and creating a time-synchronized video caption based on the text, adjusting the volume of at least one of speech or music for at least one of a plurality of video segments, or adding at least one of a map view or a street view of a location mentioned in at least one of a plurality of video segments.

[0013] In any of the above embodiments, automatically editing a single video stream includes identifying an emotion corresponding to at least one of a plurality of video segments, and selecting and inserting music into the single video stream based on the identified emotion.

[0014] In any of the above embodiments, the processor is at least one of a processor of a user device or a processor of a server communicating with the user device.

[0015] Any of the above embodiments may further include storing, by the server, a profile corresponding to the user of the user device, linking, by the server, a profile to another profile of another user based on a request from a user device or another user device associated with the other profile, and facilitating, by the server, viewing of a single video stream by another user device based on a link between the profile and the other profile.

[0016] Any of the above embodiments may further include determining, based on information received from at least one of the user device or another user device, that the user is related to another user, determining, based on information received from the user device, that a single video stream is approved to be viewed only by family members, and enabling, by the server, viewing of the single video stream by another user device in response to the determination that the user is related to another user.

[0017] Any of the above embodiments may further include: determining, by a processor, a theme of a user's story in response to a user input; accessing, by the processor, a list of prompts associated with the determined theme; and outputting, by a user device, a prompt associated with the determined theme such that each of a plurality of video segments is recorded in response to one of the prompts.

[0018] Any of the above embodiments may further include: receiving, by a processor, additional media associated with a user's story; and combining, by the processor, the additional media with a plurality of video segments such that a single video stream includes the plurality of video segments and the additional media.

[0019] Any of the above embodiments may further include: outputting, by a user device, a list of manual video editing functions available for manual editing of a single video stream; receiving, by the user device, information corresponding to manual editing of a single video stream; and editing, by a processor, the single video stream based on the information corresponding to manual editing of the single video stream.

[0020] A system for providing a hosting platform for shareable videos is also described. The system includes a user device having a camera configured to capture image data, the user device being configured to record a plurality of video segments each corresponding to a user's story. The system further includes a memory configured to store the plurality of video segments. The system further includes a processor configured to combine the plurality of video segments into a single video stream that conveys the user's story in response to a request from the user device.

[0021] Any of the above embodiments may further include a server configured to store a single video stream and associate the single video stream with a specific hyperlink, and the processor is further configured to generate a QR code including information corresponding to the specific hyperlink associated with the single video stream.

[0022] In any of the above embodiments, the processor is further configured to automatically edit the single video stream so as to improve the quality of the single video stream.

[0023] In any of the above embodiments, automatically editing the single video stream may include reducing the delay between at least two of a plurality of video segments, adjusting at least one of contrast, brightness, or color saturation for at least one of a plurality of video segments, adjusting at least one of audio volume, compression, or equalization for at least one of a plurality of video segments, transcribing spoken words from at least one of the video segments into text and creating a time-synchronized video caption based on the text, adjusting the volume of at least one of speech or music for at least one of a plurality of video segments, or adding at least one of a map view or a street view of a location mentioned in at least one of a plurality of video segments.

[0024] In any of the above embodiments, automatically editing the single video stream includes identifying an emotion corresponding to at least one of a plurality of video segments and selecting inserted music into the single video stream based on the identified emotion.

[0025] In any of the above embodiments, the processor is further configured to determine a theme of the user's story based on user input received by the user device and access a list of prompts associated with the determined theme, and the user device is further configured to output a prompt associated with the determined theme such that each of the plurality of video segments is recorded in response to one of the prompts.

[0026] A method of providing a hosting platform for all possible videos is also disclosed. The method includes outputting, by a user device, a plurality of prompts each associated with a selected theme. The method further includes recording, by the user device, a plurality of video segments corresponding to the user's story, wherein each of the plurality of video segments is provided in response to one of the plurality of prompts. The method further includes storing the plurality of video segments in a memory. The method further includes combining, by a processor, the plurality of video segments into a single video stream that tells the user's story in response to a request from the user device. The method also includes automatically editing, by the processor, the single video stream to improve the quality of the single video stream. Automatically editing includes at least one of reducing a delay between at least two of the plurality of video segments, adjusting at least one of contrast, brightness, or color saturation for at least one of the plurality of video segments, adjusting at least one of audio volume, compression, or equalization for at least one of the plurality of video segments, transcribing spoken words from at least one of the video segments into text and creating time-synchronized video captions based on the text, adjusting at least one of the volume of speech or music for at least one of the plurality of video segments, or adding at least one of a map view or a street view of a location mentioned in at least one of the plurality of video segments.

[0027] Any of the above embodiments may further include outputting, by the user device, a list of manual video editing functions available for manual editing of the single video stream, receiving, by the user device, information corresponding to the manual editing of the single video stream, and editing, by the processor, the single video stream based on the information corresponding to the manual editing of the single video stream.

Brief Description of the Drawings

[0028] Other systems, methods, features, and advantages of the present disclosure will be apparent or will become apparent to those skilled in the art upon consideration of the following figures and detailed description. All such additional systems, methods, features, and advantages are included within this specification, are within the scope of the present disclosure, and are intended to be protected by the appended claims. The component parts shown in the figures are not necessarily to scale and may be exaggerated to more fully illustrate important features of the present disclosure. In the figures, like reference numerals designate like parts throughout the various figures.

[0029]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6A

Figure 6B

Figure 6C

DETAILED DESCRIPTION OF THE INVENTION

[0030] The present disclosure describes a system and method for providing a new type of hosting platform for sharable videos that enables users to communicate and share life information and other events (e.g., related to pregnancy, autobiographies, messages from a grandfather to a future grandchild, or the like) (which may include features of social media platforms). The system and method provide an automatic video editing function so that professional videographer or video editing skills are not required to generate high-quality videos. As part of the hosting platform for sharable videos, by utilizing the automatic editing video capture package of the present disclosure with built-in guide prompts, users of the present disclosure can easily create professional-grade videos that can be shared on a hosting platform for sharable videos, separate social media platforms, the Internet, a decentralized web, a metaverse application, or the like.

[0031] To start the process, the user may select a theme associated with a particular story they want to tell (e.g., the theme could be related to pregnancy, a story about how a family business started, a story about a family's move to a new country, or something similar or inclusive). The platform may generate or obtain a specific list of questions associated with the theme. The user may answer the questions with video, still images, audio, text, or the like, and the platform may store the answers. After the user has answered all the questions, the platform may aggregate all the answers into a video format. Such aggregation may be done automatically without user feedback, but the user may also edit the aggregated video to incorporate their preferences. The platform may provide specific video, image, and audio processing functions that allow the user to edit the aggregated video.

[0032] After the video has been aggregated and edited, the platform may generate a unique Quick Response (QR) code linked to the video. The QR code operates similarly to a barcode to identify the video or the storage location of the video. The user may share the QR code to enable others (e.g., family or friends) to immediately access and view the video. The unique QR associated with the video may be placed on tombstones, programs (e.g., brochures or software), business cards, advertisements, and many more. After (or before) the aggregation of the video, the user may return to answer more questions or more complete answers at any time. The user may add more content (i.e., video, still images, audio, text, or the like) at any point, and the video may be re-aggregated (and / or re-edited) to incorporate the new answers and content.

[0033] The systems and methods disclosed herein provide advantages over conventional social media platforms. For example, the shareable video hosting platform disclosed herein provides a collection of media that tells an entire story, which conventional social media platforms cannot do. This beneficially enables an encompassing story to be told in a single media file. Further, the platform can automatically aggregate and edit various media into a single video that provides a high-quality video output that flows from one media to the next. Advantageously, this automatic aggregation enables users to present polished stories even if they have no media editing experience. Users can also select from a preset list regarding the aggregation function to have the platform edit the story based on the users' preferences (e.g., background music, colors, photo montage patterns, etc.).

[0034] Advantageously, the platform provides a mechanism for family stories to continue beyond the life of any person telling the story so that family lore is never lost with a person's death. This provides the advantage of fostering and strengthening family bonds. The platform can further provide a video editing function that enables users to adjust their videos to their own unique preferences. The platform enables users to create a fully linked family tree by designating their relatives (e.g., a person can tag and link family members such as parents, children, nephews, and nieces), thus enabling family members to share their stories with the entire family. Advantageously, the ability to share the aggregated video story using only a QR code enables users to share their stories immediately without requiring the recipient to click through the user's profile or write down a long Uniform Resource Locator (URL).

[0035] Referring to FIG. 1, the features of the present disclosure can be implemented using a system 100 that includes a network of electronic devices. For example, the system 100 can include a server 102 that hosts a shareable video hosting platform. The server 102 can include any one or more computing servers (e.g., a distributed server system having separate individual parts connected by a network), and can include a controller and a memory. The controller can include any controller, processor, or other individual logic device. The controller is capable of performing a specific operation on a given data. The server 102 can also include a non-transitory local memory that stores information, such as information that can be used by the controller. The stored information can be used by the controller to perform various functions. The local memory can further store data as required by the controller. The server 102 can further include a network access device (e.g., a communication port such as a Wi-Fi port, a Bluetooth® port, an Ethernet port, an optical fiber port, or any other communication port).

[0036] The system 100 can further include a database 104 connected to the server 102. The database 104 can include one or more non-transitory memory devices (e.g., a hard disk drive), and can receive, store, and transmit information. For example, the server 102 can generate video or other data, can request storage of the data in the database 104, and can be capable of retrieving or otherwise accessing the stored data from the database 104.

[0037] System 100 may further include a plurality of user devices 106. The user devices 106 may include any computing device such as a laptop, desktop, mobile phone, tablet, or any other device. Each of the user devices 106 may include a controller capable of performing logical functions, and a non-transitory local memory capable of storing instructions and additional information (e.g., account information associated with the user of the device) usable by the controller. The user devices 106 may further include one or more input devices (e.g., keyboard, mouse, camera, microphone, touch screen, input / output ports such as universal serial bus (USB) ports, or the like), and one or more output devices (e.g., display, speaker, touch screen, input / output port, or the like). The user devices 106 may further include a network access device (e.g., a communication port such as a Wi-Fi port, Bluetooth port, Ethernet port, fiber optic port, or any other communication port). In that regard, the user device may communicate with the server 102 via the network access device of the user device 106 and the network access device of the server 102.

[0038] In some embodiments, each user device 106 may correspond to a separate user. In some embodiments, two or more user devices 106 may each correspond to a single user. In some embodiments, two or more users may access the platform using a single user device 106. In that regard, as long as the user's account is verified by the server 102, the user may access the platform hosted by the server 102 using the user device 106. In some embodiments, three-factor authentication may be required by the server 102 to authenticate a particular user. In some embodiments, a user without an account may access the platform using the user device 106, but may have access to fewer features than a full user. For example, if a non-user has a specific uniform resource locator (URL) associated with a saved video or a QR code (registered trademark) associated with a saved video, the non-user may view the video hosted by the platform and saved by the server 102.

[0039] The system 100 may also include or be connected to one or more social media servers 108. The social media server 108 may be associated with the server 102 or may be separate from the server 102. The social media server 108 may host, for example, social media accounts of various users. The server 102 (optionally, the user device 106) may communicate with the social media server 108 to access information stored in the server 108. For example, the social media accounts hosted by the social media server 108 may include accounts associated with social media platforms separate from the platform hosted by the server 102, such as Facebook (registered trademark), Instagram (registered trademark), Twitter (registered trademark), or the like.

[0040] System 100 may also include or be connected to one or more third - party servers 110. For example, the third - party server 110 may include an artificial intelligence tool, a machine learning tool, cloud - based storage or functionality, or any other functionality provided by an entity separate from the operator of server 102. For example, the platform may provide certain artificial - intelligence - based features, and in this example, server 102 may access the artificial - intelligence functionality via communication with the third - party server 110. As another example, the third - party server 110 may assist with functions related to third - party authentication. As yet another example, the third - party server 110 may correspond to cloud - based data storage (e.g., photo storage), and server 102 may access the third - party server 102 to obtain media to be added to a video (e.g., as B - roll footage). B - roll footage may include any media that is not primary media and can be added to a video created using the platform. For example, a video recorded in response to a prompt regarding a particular theme may be considered primary media, and any additional media (e.g., photos stored on a social - media account) may be added to the video as secondary or B - roll footage.

[0041] Referring to FIGS. 1 and 2, a preferred device 150 is shown. Any one or more of server 102, database 104, one or more user devices 106, social - media server 108, third - party server 110, or any additional or alternative hardware device may include some or all of the features of the preferred device 150. Device 150 may include more or fewer components than shown in FIG. 2, may include duplicates of some components (e.g., device 150 may be a dual - processor device), or may include homogeneous components.

[0042] Device 150 may include a controller or processor 152. Processor 152 may include any controller or processor capable of performing logical functions. For example, processor 152 may include an application-specific integrated circuit (ASIC), a general-purpose processor, a field-programmable gate array (FPGA), any combination of individual logic devices performing logical functions, or the like. In some embodiments, processor 152 may further include a memory (e.g., cache memory, RAM, or the like) that stores instructions that can be used by processor 152 to perform logical functions. Processor 152 may be housed within device 150, may include remote functions (e.g., by providing cloud-based processing), or may be any combination thereof.

[0043] Device 150 may further include a memory 154. Memory 154 may include any non-transitory memory such as random access memory (RAM), dynamic random access memory (DRAM), read-only memory (ROM), or any other type of memory. Memory 154 may be housed within device 150, may include remote memory (e.g., cloud-based memory or an external database), may be external to device 150 (e.g., may be an external hard drive), or may be any combination thereof. The memory may store information that can be used by processor 152 to perform logical functions, may store information that is requested by processor 152 for later acquisition, or may store the like.

[0044] Device 150 may further include an input device 156. Input device 156 may include any one or more input devices such as a mouse, keyboard, touch screen, microphone, or the like. Input device 156 may receive input from a user and convert the input into a digital signal that can be used by processor 152.

[0045] Device 150 may further include an output device 158. The output device 158 may include any one or more output devices such as a display, a touch screen, a printer, a speaker, or the like. The output device 158 may receive a digital signal from the processor 152 and convert the digital signal into a format (e.g., text or image on a screen, audio data, or the like) that can be interpreted by a user.

[0046] Device 150 may also include a network access device 160. The network access device 160 may include one or more devices capable of communicating with external elements via any wired or wireless protocol. For example, the network access device 160 may be or include a network card or adapter and ports that facilitate communication via one or more protocols such as Ethernet, Bluetooth®, Wi-Fi, Universal Serial Bus (USB), cellular protocol (e.g., 5G), or the like. In that regard, the network access device 160 may communicate with the processor 152, communicate information from the processor 152 to a remote device as required by the processor 152, and transmit information from the remote device to the processor 152. The network access device 160 may communicate with a remote device (e.g., communicate with a remote server via the Internet), communicate with a local device (e.g., communicate with a local printer), or communicate with the like. In that regard, the server 102 and the user device 106 may communicate with each other via their respective network access devices 160 and external communication means (e.g., an Ethernet cable, a Wi-Fi router, a 5G router, or the like).

[0047] Device 150 may further include a power supply 162. The power supply 162 is designed to provide electricity to the components of device 150 to provide power to device 150 and enable the components to operate. The power supply 162 may include any power supply such as cables and transformers designed to receive alternating current (AC) power from a wall socket, battery, supercapacitor, or any alternative or additional power supply.

[0048] Device 150 may also include a connection or bus 164. The connection or bus 164 may be connected to some or all of the components of device 150 and may transmit at least one of a power signal or a data signal between the components of the SCO device. For example, the power from the power supply 162 may be transmitted to various components via the connection or bus 164, or the processor may control the output device 158 by issuing commands to the connection or bus 164, or the like. In some embodiments, a single bus may transmit power and data signals, and in some embodiments, the connection or bus 164 may include two or more separate buses that transmit power and data signals separately.

[0049] Here, referring to FIGS. 1 and 3, server 102 can be designed to perform various functions 200-226. Functions 200-226 can be performed by dedicated hardware, by software, by firmware, or by any combination of dedicated hardware, software, or firmware. For example, server 102 can include a general-purpose processor that operates software designed to achieve each of functions 200-226. As another example, server 102 can include dedicated processing units, each of which is designed to perform one or more of functions 200-226. In some embodiments, server 102 can be designed to achieve one or more of functions 200-226 by accessing third-party server 110. For example, server 102 can send recorded data to a machine learning server capable of performing artificial intelligence (AI) functions, receive and retrieve processed data, and as a result, the communication with third-party server 110 can be regarded as machine learning function 226. In some embodiments, server 102 can perform additional functions other than those shown in FIG. 4.

[0050] In some embodiments, a shareable video hosting platform can have certain features that are available only to registered users. User account function 200 can process user sign-ups, maintain records of registered users, and delete user information after membership is no longer required. A user can register by providing server 102 with certain information such as name, contact information, and payment information. When the user provides the information, server 102 can generate a username or other identifier related to the user, and server 102 can assign or the user can select a password associated with the username. In future communications with server 102, the user can prove registration by providing the username and password to server 102.

[0051] In some embodiments regarding hosting platforms for shareable videos, some functions may be available only to registered users having a specific subscription to the hosting platform for shareable videos. One or more of the subscriptions may have a one-time or periodic fee associated with the subscription. In that regard, the subscription function 202 may process subscriptions related to the hosting platform for shareable videos. For example, the subscription function 202 may collect payments related to the subscription and may maintain a record of which registered users are subscribed to one or more of the subscription plans. The subscription function 202 may also maintain a record of which subscription plan each registered user is subscribed to. Specific functions of the platform may be available only to users at a specific subscription level for which payment has been made, and the server may restrict use of the function to only those users having the subscription. A user may also be able to sign up for automatic renewal of the subscription plan, and the function 202 may process periodic billing based on the subscription plan and the automatic renewal. When a user no longer wishes to subscribe, the subscription function 202 may remove the subscription from the associated user account. When a user attempts to perform a specific function of the hosting platform for shareable videos, the subscription function may, if any, notify other functions of the server 102 of which subscription level the user account has purchased.

[0052] The user may be able to use their user device 106 to navigate to a web page on the platform to view their current subscription level. The page may also list alternative subscription types and features associated with the subscription that enable the user to select a new subscription level. The user may further use this page to make payments for their new or upgraded subscription and may set up automatic payments or automatic renewal of their subscription (e.g., using credit card or bank account information). The user may also be able to cancel their subscription on this page. The subscription page may also include the user's preferences and may enable the user to change their preferences. For example, the user may desire that only family members view their videos, the user may indicate this preference, and the server 102 may restrict viewing of the user's videos to only family members.

[0053] A hosting platform for shareable videos may assist registered users with the creation of media (e.g., video recordings) regarding any of several themes. In that regard, the theme / prompt function 204 may provide specific functions related to various themes. For example, themes may include "heritage", "autobiography", "engagement", "pregnancy", "life story", "résumé", or the like. After a theme is selected, the function 204 may provide the user with a plurality of prompts related to the selected theme so that the user may record video responses to the specific prompts. For example, if the engagement theme is selected, the function 204 may provide the user with prompts such as "How long were you dating before you got engaged?", "Where was your engagement held?", "Show me your engagement ring", or the like. After a particular theme is selected, the theme / prompt function 204 may store an ordered set of prompts for each of the themes so that the server 102 may send the associated prompts to the user device 106.

[0054] After a user (i.e., the posting user) creates a video using a shareable video hosting platform, the video can be hosted by server 102 and made available for viewing by other users, possibly non-users. The hosting user can set specific permissions regarding who can view the posted video. The sharing permission function 206 can store data regarding at least one of the specific users or types of users who can view the posted video. For example, the posting user can set a rule that any registered member can view the video. As another example, the posting user can set a rule that only those with at least one of a quick response (QR) code linking to the video or a uniform resource locator (URL) of a website linking to the video can view the video. In that regard, the URL can function as a hyperlink or link to the generated video. As yet another example, the posting user can set a rule that any person having a relationship with the posting user can view the posted video. Which rule applies to which registered user can be determined by the sharing permission function 206.

[0055] After the user records a response to a prompt and provides any additional media (e.g., B-roll from the memory of user device 106), various options for automatically editing the video can become available. The automatic video editing function 208 can perform functions related to this automatic editing. Additional details regarding the automatic editing are described below.

[0056] In some embodiments, in addition to or instead of automatic editing, a user may wish to perform some manual editing. In this regard, server 102 may provide some or all of this manual editing in manual editing function 210. For example, the manual editing tool may remove a portion of the video, adjust the length of the video, adjust the order in which various segments of the video are presented, adjust the theme or sentiment of at least a portion of the video, edit the captions associated with a particular portion of the video, cause the server 102 to re-edit the video using the automatic video editing function 208, or include functions to do the like. In some embodiments, some or all of the tool may be performed by software or hardware in user device 106. In some embodiments, some or all of the function may be performed by server 102. For example, when manual editing is selected in user device 106, server 102 may cause user device 106 to output options for manual editing. After the user selects a manual editing tool in user device 106, the actual editing may be performed by server 102 (in some embodiments, may be performed by user device 106).

[0057] Server 102 may also include an input / output function 212. The input / output function 212 may handle communication between server 102 and various external devices (e.g., user device 106, social media server 108, third-party server 110, or the like). For example, the input / output function 212 may package and transmit any data processed by the third-party server 110 and may receive processing results from the third-party server 110. As another example, the input / output function 212 may handle communication between various user devices 106 and server 102, such as receiving login information, streaming a selected video to one or more user devices 106, or the like. As yet another example, the input / output function 212 may also send login information related to a third-party social media site to the social media server 108 and, in return, receive information for verifying a user account based on the login information. The input / output function 212 may also manage communication between server 102 and database 104 to ensure proper storage of data by database 104 and proper retrieval of data from database 104.

[0058] Server 102 may also perform a video storage function 214. The videos stored by function 214 may include fully edited posted videos, aggregated but unedited videos, segments of videos (e.g., responses to prompts or B-roll videos or other media) that will later be aggregated into complete videos. The video storage function 214 may also store other types of media, such as music added to the videos, photos used as B-roll, or the like. In some embodiments, the video storage function 214 may compress and decompress the media stored by database 104. The video storage function 214 may also determine which user accounts (e.g., registered users) are associated with each stored video, which links are associated with each video, which QR codes are associated with each video, or the like.

[0059] Server 102 may also perform a video streaming function 216. The video streaming function 216 may aggregate any segments of a video together to facilitate streaming of the entire video. The video streaming function 216 may also perform certain compression and decompression algorithms to facilitate relatively rapid upload, download, and streaming of the video, and may perform any additional or alternative processes related to video streaming.

[0060] A particular user account may be associated with a moderator account or an administrator account, and server 102 may be designed to provide a moderation / administration function 218. For example, function 218 may determine which registered users are associated with a moderator or administrator account, and may facilitate actions that can be taken by a moderator or administrator. For example, a moderator may be able to view all content shared on a video hosting platform for shareable videos, regardless of the sharing permissions associated with the video. A moderator may also receive the display of any video reported by other users (e.g., for inappropriate behavior), and in addition, may be able to view the name of the user who reported the content, the reason the content was reported, and information associated with the account that posted or shared the content. A moderator may also be able to case-by-case invalidate the sharing of any content or delete the content from the platform based on an analysis of the video itself and whether the video violates any rules of the video hosting platform for shareable videos. A moderator may also be able to report the account associated with the invalidated / deleted content for further actions regarding the account.

[0061] An administrator may be able to perform some, some different, or similar functions of a moderator. For example, an administrator may be able to view basic account information about users such as name, email address, subscription status, payment status, age of the account, quality of videos created, shared, or reported, or the like. An administrator may also be able to search for users by name (e.g., actual name or username) or by email address. An administrator may also be able to view the accounts of users reported by moderators, filter the list of users by reporting status, and select whether a user's account is to be enabled or disabled. An administrator may also be able to filter the list of users by subscription status (e.g., subscribed, unsubscribed, cancelled) to view only the reported users. An administrator may also have the function of enabling or disabling user accounts, for example, based on reports by moderators and the administrator's determination as to whether the platform rules are being violated. If an administrator disables a user account, that user can no longer access their account or the content of that account, including any videos created or shared by the user, and platform users or viewers can no longer view videos created and posted by the user. An administrator may also be able to create, remove, and invalidate moderator accounts, for example, to enable new users to become moderators. A moderator may also be able to manage pre-set decks of prompts and associated themes that are available for user selection. The moderator may also be able to add a new deck of prompts or questions, and add, remove, or edit prompts or questions in an existing deck. In some embodiments, an administrator may also be able to perform any function assigned to a moderator.

[0062] After the user creates and posts a video, server 102 may identify or generate a link corresponding to a URL where the video can be viewed. For example, the URL may be related to the username of the posting user or the actual name of the posting user. Additionally, server 102 may generate a QR code associated with a particular user or a particular video. In that regard, QR code generation function 220 may generate or identify a link and generate a unique QR code associated with the video. Function 220 may also generate or identify a URL. Function 220 may store information that links the URL and the QR code to a particular video or content. In that regard, in response to the user device 106 scanning the QR code, function 220 may identify the location of the associated video and function with video streaming function 216 to enable the user device 106 to stream the associated video.

[0063] In some embodiments, users of a hosting platform for shareable videos may be able to communicate with each other in a manner similar to social media sites (e.g., by comments on other users' posts, direct messages between users, group messages between identified users, or the like). Social interaction / comment function 222 may facilitate these types of communications. For example, when a user comments on a video, function 222 may cause a particular comment to appear that is associated with the video and (based on rules set by the posting user) appears when other people view the video.

[0064] In some embodiments, server 102 may assist a user in determining relationships among users (such as in a family tree) or may store data related to such relationships. In that regard, relationship / tree function 224 may assign relationships among users based on received user input (such as when a user identifies another user as an uncle or a brother) and may store information related to the relationships. In some embodiments, function 224 may also automatically determine relationships among users based on, for example, existing known relationships. For example, if server 102 is notified that user A is the brother of user B and is notified that users C and D are the parents of user B, function 224 may automatically determine that users C and D are also the parents of user A.

[0065] In some embodiments, server 102 may be capable of performing artificial intelligence or machine learning functions that may be carried out by machine learning function 226. For example, server 102 may be trained to identify speech patterns based on a plurality of training data and may use the learned function to transcribe speech data into text. As another example, server 102 may be trained to identify objects in an image and may use this learned function to identify specific objects within the image or video data (such as when a user desires to identify and flag any football in a generated video to server 102).

[0066] Here, referring to FIGS. 1, 3, and 4, server 102 can be designed to perform certain functions 300-318 as part of an automatic video editing function 208. In some embodiments, server 102 can be programmed with target values for specific features of the video (e.g., a desired ratio of speaker volume to background volume, or a desired color warmth for an identified emotion or mood). In some embodiments, server 102 can utilize a machine learning algorithm to determine optimal values for specific features of the video. For example, server 102 can be trained on professional videos to determine a preferred color warmth for an identified emotion and can use machine learning to determine the identified emotion and the target color warmth for the emotion.

[0067] In some embodiments, server 102 can perform an automatic contrast / brightness / coloring function 300. Using this function, server 102 can automatically adjust at least one of contrast, brightness, saturation, or color warmth for a video or a specific segment of the video. For example, server 102 can reduce variations between multiple video segments, achieve a specific mood based on a selected theme or identified content (e.g., make the color darker when the speaker is talking about death), or perform similar things by adjusting contrast, brightness, and / or coloring.

[0068] Server 102 can also perform a volume / compression / equalization adjustment function 302. For example, function 302 can automatically adjust the audio track of a recorded or uploaded video to normalize the volume level from one clip to another in an aggregated video. Function 302 can also automatically apply compression or equalization to the audio to improve the clarity of the spoken voice and reduce or minimize background noise in the recorded video.

[0069] Server 102 may also perform a silence / interruption shortening function 304. Using this function 304, Server 102 may be able to detect silences and interruptions in a recorded video track and automatically reduce or remove the silence or interruption. For example, Server 102 may be trained to recognize that silences longer than 2 seconds are undesirable and shorten any longer silences to 2 seconds or less.

[0070] Server 102 may also perform a video content speech-to-text function 306. Using this function 306, Server 102 may be able to identify spoken words in a video or a segment of a video and generate text associated with the spoken words. In that regard, Server 102 may automatically generate closed captions for any video, enabling a person with a hearing impairment to understand what is being said in any video segment.

[0071] In connection with function 306, Server 102 may also be able to create time-synchronized video captions for a video using a time-synchronized video captioning function 308. In addition to identifying spoken words and generating text corresponding to the spoken words, function 308 may be able to determine when each word is spoken and superimpose the text on the video at the timing corresponding to the spoken version of the word. In some embodiments, function 308 may cause a block of related text to be output as soon as the first word of the text is spoken. In some embodiments, function 308 may output each word in the text as the word is spoken. In some embodiments, the user may be able to identify their preferences regarding how and when the text is displayed, and Server 102 may display the text based on the user's preferences.

[0072] Server 102 may be able to perform sentiment analysis using the sentiment analysis execution function 310. For example, for each segment of a video, Server 102 may be able to identify the sentiment associated with the segment of the video. For example, Server 102 may perform this analysis by analyzing the transcribed text associated with the speech. Server 102 may segment the video into segments based on separate segments provided by the user, based on when the sentiment changes, or based on the same type. In that regard, Server 102 may determine a specific sentiment for each segment of the video. For example, the sentiment may include happy, glad, enjoyable, sad, longing, proud, or the like.

[0073] Server 102 may be able to add music to the video segment based on the identified sentiment using the music addition function 312 based on sentiment. For example, Server 102 may have access to a royalty-free music library, and for each track of music in the music library, may be provided with or may determine the sentiment. Server 102 may select separate music for each video segment based on the identified sentiment and may play the music together with the video segment. In some embodiments, if the user indicates that they do not like the selected music, the user may change the determination of the sentiment for the segment, simply request a selection of a new track, or indicate a specific track required for the segment.

[0074] Server 102 may also be able to adjust the volume of the music and recorded audio using the music / recorded audio volume adjustment function 314. This may be done in a similar manner to the volume / compression / equalization adjustment function 302. For example, Server 102 may automatically adjust at least one of the volume of the music or the volume of the recorded audio to ensure that the spoken voice can be clearly heard and is not quieter than any simultaneous music playback. Function 314 may operate in cooperation with function 302 to ensure that the spoken words are loud and clear and that the music does not drown out the spoken words.

[0075] Server 102 can also be designed to combine the B-roll media with the primary media using the B-roll combination function 316 with the primary media. The primary media can be regarded as video recorded by the user in response to a specific prompt (e.g., video of the user answering the question "How did you feel when you first saw your son?"). For example, the user can provide a plurality of B-roll materials (e.g., video, photo, audio track, or the like). In some embodiments, the user can determine where the B-roll material is added. In some embodiments, the user can identify the emotion of the B-roll material, and the server 102 can automatically select a location for the B-roll media. In some embodiments, the server 102 can automatically determine the emotion of the B-roll media and determine the placement for the B-roll material. In some embodiments, the server 102 can be based on additional elements such as identified people in the B-roll material (e.g., showing a photo of a baby after the speaker mentions the baby in the audio data), based on identified objects in the B-roll material (e.g., showing a signed baseball when mentioned in the audio data), or the like, to determine the placement for the B-roll material.

[0076] Server 102 may also be able to add a map / street view of the location described in the video using the additional feature 318 of the location map / street view. For example, server 102 may analyze the transcribed words to determine whether any location (e.g., the Statue of Liberty, or the intersection of the Beach Boulevard Bird at the Pacific Coast Highway and Huntington Beach) is mentioned. Then, server 102 may obtain an image related to the map view of a specific location, an image related to the street view of a specific location, or a royalty-free public image related to a specific location. Next, server 102 may superimpose the map / street view on the video or display the map / street view as part of the video (e.g., in the lower right corner as a picture-in-picture view).

[0077] Referring now to FIGS. 1 and 5, user device 106 may also be designed to perform certain functions. For example, the function may be performed by using the hardware of the user device, by using software installed on user device 106 (e.g., downloaded software associated with a hosting platform for shareable videos), or by accessing a specific function on the server (in a manner similar to when accessing software as a service).

[0078] The function may include a user interface function 400. The user interface function 400 may provide a function for the user to interact with a hosting platform for shareable videos. For example, the user may use the function 400 to view posted videos, make selections within the platform (such as the selection to create a new video with a specific theme), or perform similar operations. The user interface function 400 may be achieved using any one or more input or output devices (such as a touch screen, speaker, mouse, keyboard, display, or the like). The user interface may be designed by an operator of the hosting platform for shareable videos and may be included in a downloadable version of the software associated with the hosting platform for shareable videos, or may be accessed when the user accesses the platform on server 102.

[0079] The user device 106 may also include a video editing tool function 402. The video editing function 402 may provide various tools that a user can use to manually adjust the recorded video. The user may use the function 402 to make changes to the video before, after, or at any other time than the automatic processing by the server 102. The user may also choose to not perform any manual editing beyond the automatic editing by the server 102. The video editing tools provided by the function 402 may include functions to adjust the theme or sentiment of the video. For example, the user may use a slider, dial, button, knob, or the like to select a theme and / or sentiment from a list of available options. By adjusting the sentiment of the video or video segment, the server 102 may change the selected music or editing style of the edited video according to the selected option. The manual editing tools may also include options for adjusting the length of the edited video. For example, if the server 102 automatically edits the video to a length of one hour, the user may select a shorter or longer period so that the server 102 includes more or less of the recorded video and / or B-roll media. The user may also be able to remove a part or segment of the edited video. For example, if the user does not prefer the addition of a particular B-roll material, the user may have this material removed. The user may also select a prompt that is removed so that the prompt and the response thereto are not included in the edited video. The user may also request that the server 102 re-edit the video. For example, after indicating a particular segment to be removed, the user may make this request so that the video is re-condensed and edited without using the indicated segment. As another example, the user may change the sentiment of a particular segment and have the server re-edit the segment to select new music. The user may also edit video captions using the user device 106. For example, if the server 102 incorrectly transcribes speech, the user may use the user device 106 to correct the transcribed speech. The user may also use the user device 106 to approve or authorize the edited video.By accepting the edited video, the hosting platform for shareable videos can proceed to the sharing process regarding sharing of the video (as well as generation of links and QR codes).

[0080] The user device 106 can also perform a video recording function 404. This function can cause the camera and microphone of the user device 106 to detect image and audio data, and store the recorded image and audio data in the memory of the user device 106 (or can cause the image and audio data to be sent to the server for storage).

[0081] The user device 106 can also use the user account information function 406 to store user account information associated with the user. For example, the user can request that the user device 106 store user login and password information, so that as a result, the user does not need to type them each time the user logs in to the hosting platform for shareable videos. The user device 106 can also store information such as the type of membership the user has, family tree or relationship information, or the like.

[0082] The user device 106 can also have a saved video / photo / audio function 408. This function 408 enables the user device to access videos, photos, and audio recorded using the user device 106 (or otherwise sent to the user device). This function 408 also facilitates the transmission of storage media to the server 102 for use in aggregated videos. The function 408 can also save a local copy of videos created by the user or created by other users and shared with the user.

[0083] User device 106 may also perform input / output function 410. Input / output function 410 may handle communication between user device 106 and various additional devices (e.g., server 102, social media server 108, third-party server 110, or the like). For example, input / output function 410 may package and transmit any data processed by server 102 (e.g., media used as B-roll, primary media, login and password information, or the like), and may receive data (e.g., edited video, videos posted by other users, or the like) from server 102. As another example, input / output function 410 may also send login information related to a third-party social media site to social media server 108 and, in return, may receive information for verifying a user account based on the login information.

[0084] User device 106 may also perform video playback function 412. Function 412 may enable user device 106 to output any video or other media (e.g., audio or photos) stored on user device 106 to the output device of user device 106. Function 412 may also enable user device 106 to output video streamed to user device 106 by server 102. Video playback function 412 may facilitate features related to playback, such as start, stop, pause, jump, fast forward, rewind, or the like.

[0085] Referring now to FIGS. 6A - 6C, a preferred method 500 is shown. Method 500 can be used to provide a shareable video hosting platform that implements the features disclosed herein. The various blocks of method 500 can be performed serially, out of order, simultaneously, or in any other manner. Additionally, some examples of method 500 may skip certain blocks, some blocks may be added, some blocks may be repeated multiple times, or the like may occur. Method 500 can be implemented using the system described herein that is similar to system 100 of FIG. 1, or any other system that includes two or more electronic devices (e.g., a user device and a server). In some embodiments, any block of method 500 performed by the server can also be performed by or instead of the user device, and any block performed by the user device can also be performed by or instead of the server.

[0086] At block 502, a user may create an account on a shareable video hosting platform. The platform can be hosted on a server or a group of servers (e.g., server 102 of FIG. 1). The user may create the account using a user device (e.g., a smartphone, laptop, tablet, or the like), and during account creation, the user may provide information such as a name, occupation, identification information of family members, or the like to the shareable video hosting platform. For example, the user may download a mobile application (e.g., an app) on their user device or access a web - based interface with the platform, and the app or interface may provide the option for the user to create a new account. The user may select the new account option, and the app or interface may cause entry fields (e.g., a name field, an occupation field, etc.) to be created on the screen of the user device.

[0087] After an account is created, the user can sign in to the shared video hosting platform using the username (e.g., email address) and password set when establishing the account. The user can also use the platform to reset or change their password at any time. In some embodiments, two-factor authentication may be required before the user can log in. For example, the user may be required to provide a username and password, and may also be required to enter a separate string sent to the account (e.g., email or smartphone) provided by the user.

[0088] The user can provide pre-recorded media such as photos, videos, audio, text, or the like to the shared video hosting platform, and as a result, the media is available for use on the platform to be associated with the newly created account. The user can also provide the identifier of the social media account on a separate social media platform (e.g., hosted on another social media server such as Facebook (registered trademark) or Instagram (registered trademark) by Meta (registered trademark)). The server can utilize all the received information along with the information associated with the account on other platforms and create an account for the user. In some embodiments, the user can create a new account by simply providing the identifier and password of a separate social media platform (e.g., Facebook (registered trademark)), and the shared video hosting platform can obtain all the information required for account setup from the separate social media platform. The newly created account can be associated with the family members and friends of the new user and allow other users to view the information associated with the account. In some embodiments, the user can further make posts to upload additional media (e.g., photos, videos, audio, text, check-ins, or the like).

[0089] In some embodiments, various subscription levels may be available for purchase from the platform. For example, under a free subscription, it may be free to create an account, and the free subscription may provide access to some basic features of the platform. Additional levels of paid subscriptions may be available for purchase (e.g., a one-time payment or recurring payments), and each paid subscription level may provide a greater amount (or better quality) of features. For example, a free subscription may enable a user to create videos about a particular theme, but may not provide access to automatic video editing. A first paid subscription level may provide access to basic automatic video editing (e.g., shortening of silences and interruptions, and combination of uploaded B-roll with recorded video responses), while a second paid subscription level may provide access to advanced video editing (e.g., sentiment analysis, and addition of music based on determined sentiment). A user may select a subscription level when first creating an account on the platform and, after the initial account creation, may sometimes upgrade or downgrade the subscription level.

[0090] At block 504, the user can select a theme or template for the story they want to create (via the user device). For example, the platform can list multiple themes and the user can select from the list. As another example, the user can speak or type the name of a theme, and the server can select the most appropriate theme and ask the user to confirm that the selected theme is correct. For example, the user can say "I am pregnant", and the platform can determine that the user has selected a theme such as pregnancy and identify that theme as the selected theme. The theme can be associated with a specific life event (e.g., engagement, pregnancy, message for previous or future generations, resume, or the like), or can be a general theme (e.g., autobiography or general story). In some embodiments, the user can generate a story without selecting a specific theme. Each theme can include associated materials, such as a list of questions or prompts related to the theme. In some embodiments, the platform can add specific features (e.g., music style, text color, royalty-free images such as stock B-roll footage, or the like) to the video based on the selected theme. The user may be able to view the prompts associated with each theme before selecting a theme. The user may also be able to search for themes by keyword (e.g., the user can search for "pregnancy" for pregnancy or childbirth themes). The user may further be able to search for themes by searching for specific prompts. For example, the user can type a question (e.g., "How do you feel about your child?"), and the server can provide a list of all themes that include the prompt or a similar prompt.

[0091] In some embodiments, the user may also select an overall emotion or atmosphere for the story. For example, if the story is centered around the death of a family member, the atmosphere may be a sad atmosphere, while a story centered around the birth of a child may have a happy atmosphere. When the user selects an atmosphere for the story, the server may include this selection when automatically editing the story. For example, for a sad atmosphere, the server may use dark features for the transcribed speech and may darken the video, while for a happy atmosphere, the server may add random happy features (e.g., balloons or a birthday cake) to the screen as B-roll footage.

[0092] After identifying the theme of the story, at block 506, the server may generate or obtain a list of questions or prompts associated with the theme. The server may send the list of questions to the user device for output on the user device. For example, the server may be programmed to associate specific questions with specific themes (e.g., by a moderator or administrator account, or when the software for the platform is developed). For example, questions or prompts associated with the pregnancy theme may include "Why do you want a child?", "What is the most important thing you would like to teach your child?", "What should your child know about you?", or the like.

[0093] In some embodiments, a user may view a list of questions or prompts on a user device and may edit the list of questions or prompts. For example, the user may type in additional prompts related to a theme and may select a particular prompt for removal. Additionally, the user may rearrange the list of prompts so that it makes sense for the story the user wants to tell. In some embodiments, the server may learn which additional prompts are popular for a particular theme (e.g., by using an artificial intelligence algorithm) and may add such popular prompts to the list of prompts for the particular theme (e.g., if 10 users add similar questions, the server may add a similar version of the prompt to the list of prompts for the evolving theme). After generating a list of questions, the server may enable the user to select which questions to answer, may enable the user to arrange the prompts in a preferred order, add questions, remove questions, or do the like. In some embodiments, the server may propose additional new prompts to the user based on the prompts selected by the user.

[0094] After generation and modification of the list of prompts by the user, unless a desired order for the prompts has been provided by the user, the server may aggregate the prompts in a particular order. In some embodiments, after the prompts have been aggregated by the server in a particular order, the user may modify the list of prompts. If the user does not provide a desired order of the questions, the server may utilize a function of ordering the questions in a logical order (e.g., by chronological order or by asking related questions together) or otherwise in an order programmed into the server (e.g., by an administrator). In some embodiments, the server may include an artificial intelligence or neural network to facilitate continuous learning by the server such that the server can improve after multiple iterations. That is, if a significant number of users arrange the prompts in a particular order, the server may learn the particular order using artificial intelligence and may arrange the prompts in the particular order as it evolves.

[0095] In some embodiments, the user may select a specific recording mode for recording the user's response to the prompt. For example, the recording mode may include an interview mode and a self - interview mode. In the interview mode, the user device may activate a camera on the back of the mobile device (e.g., on the side opposite the touch screen in a mobile phone). In the self - interview mode, the user device may activate a camera on the front of the mobile device (e.g., on the same side as the location of the touch screen in a mobile phone). In some embodiments, the user may select a speaking question mode, where the voice generated by the platform or recorded for such use is for the user to speak the question out loud before responding to the prompt. In that regard, the user device functions as a moderator or interviewer by the user speaking the question out loud before responding to it.

[0096] After the list of questions has been aggregated and modified by the user and the desired recording mode, at block 508, the user may indicate that they are ready to start the recording. For example, the user may use the input device of the user device (e.g., by saying "Let's go", clicking a "Record" button, or the like) to start the recording process.

[0097] At block 510, the server may then instruct the user device to start outputting the questions in the determined order, or the user device may start outputting the questions in the determined order without server input. The questions may be displayed on a visual output device (e.g., a touch screen), or may be output one by one via the speakers of the user device, and may function as a guide prompt that enables the user to record their video by responding to one question at a time. In some embodiments, the prompt may be output once at a time, and the video response to the prompt may be recorded before the next prompt is output by the user device. In this way, the user may record a specific response to each prompt such that each specific response can be combined together within the story.

[0098] At block 512, the user device may use a camera of the user device (or connected to the user device) to record a video response to the prompt. The video response may be stored on the local memory of the user device, or may be sent to the server and stored remotely by the server (e.g., in the database 104 of FIG. 1 or in cloud storage). In some embodiments, the video response may be sent to the server while it is being recorded, and in some embodiments, the video response may be packaged and uploaded after each recording is completed. If the user is not satisfied with the answer they provided, the user may request to redo the answer. In such a situation, the stored video answer may be deleted, and the user device may start recording a new response to the question.

[0099] The operation of the camera and related devices of the user device may vary based on the selected recording mode. For example, if the self - interview mode is selected, the user device (in the case of a mobile phone) may cause the camera facing the same direction as the display to record video. If the interview mode is selected, the user device (in the case of a mobile phone) may cause the camera facing the opposite direction of the display to record video.

[0100] In some embodiments, user software (e.g., software of a sharable video hosting platform running on a user device) can detect the photographic quality, lighting, or other effects of the recording environment based on sensor data of the user device (e.g., camera data, inertial measurement unit (IMU) data, or the like). The software can then adjust various features of the mobile device to enhance the quality of the recorded video. For example, if the video is dark and thus difficult to see the user, the user software can turn on the lighting function of the mobile device to illuminate the area in front of the operating camera. As another example, if the user's image is blurred, the software can adjust the focus of the operating camera to obtain a higher quality recording. As yet another example, if the user is unintentionally shaking while holding the user device, the software can adjust the orientation of the camera to remove the outer edges of the video so as to keep the user centered in the recording.

[0101] In some embodiments, at block 514, the user may add additional media as part of the response to the prompt. This additional media may include any previous or current recorded media, such as images, videos, text, audio, or the like, and any media that is not a direct response by the user to the prompt may be considered "B-roll" material. For example, the user may upload a photo or video stored on a mobile device as B-roll material and indicate which prompt the photo or video is associated with. As another example, the user may indicate certain media stored on a social media account (e.g., a video previously posted by the user) and indicate which prompt the media is associated with. As yet another example, the user may provide text or audio as B-roll material and, similarly, indicate which prompt the text or audio is associated with. The server (or user device) may store the additional media as part of the response to the specific prompt with which the media is associated. As the user responds to each prompt, the user may add additional media or may add additional media at any time (before, during, or after the response to the prompt). In some embodiments, the user may upload all of the B-roll material at once, and the software of the user device may prompt the user to indicate which prompt each piece of B-roll material is associated with. In some embodiments, after recording the response to each prompt, the platform may prompt the user to upload any B-roll material, such as videos, images, audio, music, text, or the like.

[0102] In some embodiments, the server may provide suggestions for possible B-roll materials. For example, the server may cause the user device to output a display of themes that are popular B-roll materials for a particular prompt or theme. As another example, the server may learn features about the user (e.g., hobbies) and suggest B-roll materials based on the learned features (e.g., if football is the user's hobby, the server may suggest that the user record videos of users playing football).

[0103] After answering each prompt, the user may indicate that they are ready to proceed to the next question. The user may be able to review the recorded answer to the prompt. In some embodiments, the user may determine that the recorded answer is insufficient. In these situations, the user may notify the platform that they want to re-record their answer to the prompt, and the server may delete the previous recording and allow the user to create a new response to the prompt.

[0104] The user may provide an answer to each successive question as described above and may further add additional media associated with each question at any point before, during, or after the recording process. The server (or the user device) may store the recording and other media in memory or in an associated database.

[0105] In some embodiments, the user may add additional media (i.e., B-roll material) after answering all questions. In that regard, the user may provide the media via the user device (or a link to the media if hosted online) and indicate which question or questions the media is associated with. In some embodiments, the hosting platform for the shareable video may prompt the user to add any additional media to the answer (e.g., by outputting a prompt to the user device). As referred to above, the additional media may include photos, videos, or audio from the memory of the user device, media from a hosting platform for shareable videos or a separate social media platform, new media recorded by the user device, media stored on another user device, or stock media (e.g., photos, videos, audio) provided by the platform. The user may indicate which media belongs to each prompt. The server (or the user device) may store the additional media in local or remote memory or a database.

[0106] After an answer is provided and any additional media is provided, at block 516, the user may request the aggregation of media into a story. For example, the story may include a single video that includes recorded answers to all prompts, and in addition includes B-roll footage. The server may aggregate the story in the order of the prompts as identified by the user. In some embodiments, the server may utilize artificial intelligence to determine a logical order for the media. The logical order may be based on the order in which events typically occur, the order of the prompts, or the like. In some embodiments, the user may not provide a prompt to which at least a portion of the B-roll footage is associated. In that regard, the server may analyze the B-roll footage to identify where in the primary media (recorded answers to the prompts) the B-roll footage makes sense. The server may insert each B-roll footage at a location where the content of the B-roll footage makes sense (e.g., the theme of the B-roll is similar to the theme described in the primary video).

[0107] At block 518, the server may aggregate all of the primary media and B-roll material into a story as described above. In some embodiments, the server may be able to automatically edit the story (automatically editable). A list of the automatic editing functions was described above with reference to FIG. 4. In that regard, the server may perform any of the automatic editing functions described with reference to FIG. 4. For example, the server may remove any delays between segments of media (e.g., can remove delays between responses to consecutive prompts), may combine each segment into one, may add music that is selected or otherwise royalty-free to the story, or may do the like. In some embodiments, the server may be able to time the changes between segments to match the changes in the music so that dramatic images are in sync with the crescendo of the music. The server may also cause dramatic B-roll material to be displayed or output during emotional peaks. The server may also reduce the volume of the music when voice is present in the video and increase the volume of the music when voice is not present. The resulting story may include or be presented as a video montage that includes all of the media (video, photos, audio, text, or the like) combined into one in the order of the prompts.

[0108] As described above, the server may be able to perform sentiment analysis on various segments of the story. In some embodiments, the server may have access to a library of royalty-free music (i.e., music that can be used without payment of royalties) and may select music that matches the identified sentiment. That is, the server may identify the sentiment for a particular part of the story, select some royalty-free music that matches the identified sentiment, and may combine the royalty-free song with the recorded video. In some embodiments, the user may pay an additional fee to access music that has royalties. In such embodiments, the server may select music that requires payment of the associated royalty fees, such that the user pays additional money to cover the payment of royalties and is then provided access to a larger music library. In some embodiments, the user may upload music in their preferred style, and the server may add music from the user's uploaded music to the story. In such embodiments, the server may analyze whether such specific music can be used without payment of royalties before adding the music to the story, and if royalties should be paid, the server may notify the user and select similar royalty-free music. In some embodiments, the user may provide the server with identification information for the desired genre of music or favorite band, and the server may still select the royalty-free music that best matches the user's preferred genre or favorite band while still matching the identified sentiment.

[0109] As shown above, the server can aggregate and edit story tales using algorithms such as artificial intelligence algorithms. For example, as part of sentiment analysis, the server can determine the location of the peak sentiment in the story tale and align the music to gradually increase with the emotional peak of the video. As another example, as part of sentiment analysis, the server can learn when the story switches from a first theme or topic (e.g., gender reveal party) to a second theme or topic (e.g., childbirth), and based on the change in theme or topic, change the background color, music, or the like. In this way, the server is instructed to add artistic elements to the story tale, and thus can generate a story with a professionalism that is better than what the server could do otherwise.

[0110] In some embodiments, the user may request that a particular speech be output as text (in a manner similar to closed captions). In that regard, the server can perform a speech-to-text algorithm on the speech in the media to generate the text corresponding to the speech and add the text to the video at the time corresponding to the speech. This feature enables the viewer of the story to read along with the spoken story, thereby reducing the possibility of misunderstanding and increasing the ease of understanding for those with hearing impairments.

[0111] Additional automatic editing functions can be provided by the server as described above with reference to FIG. 4. When editing the video, the server can perform any one or more of these operations (accompanying the operations corresponding to each function in FIG. 4). In some embodiments, the user may request that a particular function not be performed during automatic editing. For example, the user may want to select the music for the story tale himself and request that the server not add music during automatic editing.

[0112] After viewing the automatically edited story, at block 520, the user may determine that a different atmosphere fits the story better. For example, the user may have selected a serious atmosphere at the beginning of story creation but determine that a brighter or more playful atmosphere is more appropriate. In that regard, the user may select a different atmosphere for the story (using the user device). In some embodiments, the user may select the level of each type of atmosphere to better fit the story. For example, the user may select a value between 1 and 10 for a happy atmosphere, or a different value between 1 and 10 for a serious atmosphere, or do the same for other similar atmospheres. The server may then aggregate the story using the new atmosphere selected by the user and provide the updated story to the user for approval (e.g., by streaming the video to the user device). The characteristics of each atmosphere may include anything that changes the feel of the story, such as the color of one or more backgrounds, background music, lighting (e.g., brighter or darker lighting), sound effects (e.g., a serious atmosphere may include dramatic sound effects while a playful atmosphere may include cheerful sounds), or the like.

[0113] After reviewing the story, at block 522, the user may want to add additional media to the story. In that regard, the user may request the addition of new media to the story and indicate the type of new media. For example, the user may request the addition of a new prompt and provide the location in the order of prompts where the new prompt will be added. The user may then record an answer to the new prompt using the user device. As another example, the user may upload new B-roll footage and notify the server which prompt the new B-roll footage corresponds to. The user may start recording an answer to the additional prompt and provide any additional B-roll media corresponding to the additional prompt.

[0114] At block 524, the server may store new recording media or upload media in local or remote memory. At block 526, the server may re - aggregate and re - edit the story narrative to include the new answers and new media in specific locations within the story. In some embodiments, the new material may be edited within the story narrative, and in some embodiments, the entire story narrative may be re - edited.

[0115] In some embodiments, a hosting platform for shareable videos may include features for manual video editing (i.e., video editing by the user) that can be utilized by users of the platform. At block 528, the user may further edit the story narrative using the platform's manual editing tools. The tools provided by the platform can be used relatively easily such that prior video - editing experience is not required for the user to perform additional edits. In that regard, the platform may provide features such as drag - and - drop of photos and videos, selection of specific periods within the story for editing or deletion, or the like. For example, if a user wishes to superimpose a photo over a particular video segment, the user can drag the photo to a location within the video and specify the period during which the photo is to be displayed. Similarly, the user can select new music for a particular portion of the video and instruct the server regarding the timing at which the new audio should be output. The user can further measure the timing of the audio so that a particular portion of the audio reaches a particular time in the video in order to synchronize the video with the music. The user may also be able to further edit the video using external video - editing software. For example, the user can download the story to their user device, use editing software on the user device to manipulate the video, and re - upload the edited version to the server. As another example, the user can use the user device to access the video on the server and edit the saved version of the story on the server.

[0116] Certain manual video editing tools provided by the platform may be provided by the server as a software service model so that users can utilize the tools from their user devices, may be installed on the user device as part of the platform software, or any combination thereof may be performed. Certain manual video editing tools may include a function to adjust the atmosphere or emotion regarding a specific section of the story. For example, the server may split the story into separate sections (e.g., where each section corresponds to a separate prompt), and the user may adjust the atmosphere or emotion of each section. For example, the user may be able to adjust the emotion for a section of the video using a slider, a dial, a selection from a list of available options, or the like. Adjusting the emotion or atmosphere of a video section may change the music selection or the editing style of the edited video according to the options selected by the user.

[0117] Another manual editing tool available to the user is to adjust the length of the story. In that regard, the user may select a target length for the story for the server to include more or fewer recorded video responses and more or fewer additional B-roll media. In some embodiments, adjusting the length of the story may cause the server to extend or shorten the breaks between video sections.

[0118] Another manual editing tool may include enabling the user to select a portion of the edited video for removal. For example, the user may select a specific prompt from a list of prompts associated with the story, which may cause the server to remove all associated recorded responses and B-roll material. As another example, the user may select one or more sections of the edited video for removal and cause a specific segment to be removed.

[0119] Another manual editing tool available to the user is the ability to edit video captions. That is, the user can perform at least one of adding or deleting text created as closed captions by automatic video editing. For example, if the speech is mis-transcribed, the user can correct the transcription. As another example, the user can delete text that the user does not want to be visually displayed.

[0120] Another manual editing tool available to the user is to trigger the server to re-edit the video using an automatic video editing tool. In some embodiments, the server can re-edit the video using an automatic editing tool after any changes have been made to the video using manual video editing.

[0121] Another manual editing tool available to the user is the ability to approve or authorize an automatically edited video. The user can indicate whether the edited video is approved after viewing the edited video. Such approval or authorization ends the video adjustment process and advances the method to the shared portion of the process.

[0122] After the story is approved, method 500 can proceed to steps associated with sharing the video. The step can include, at block 530, the user requesting the creation of a link or quick response (QR) code associated with the video. This response can be created, for example, by approving the edited video.

[0123] In response to this request, at block 532, the platform can generate a link where the video can be viewed, along with a Quick Response (QR) code associated with the link. For example, the server can host a website that at least partially functions as a social media platform, and each user can have their own page with various posts. Each post on the user's page can correspond to a story created by the user using tools provided by the platform, and a separate link can be assigned to each post / video. The platform can also generate a QR code associated with the link, such that scanning the QR code provides an option to directly proceed to the video at the link. That is, User 1 can create a story and request that a link / QR code be generated and associated with the story. User 1 can share the QR code with their family members, and the family can scan the QR code using their respective user devices and view User 1's aggregated and edited video.

[0124] As described above, the QR code can be associated with a link where the story can be viewed such that a QR code reader can decode the link and direct a viewer to the video stored at the link. That is, the QR code can be a specific QR code that links to a unique video created by a user. In that regard, the user can share the QR code with others. For example, the QR code can be placed on a tombstone, added to a photo book, included in a handout at a ceremony (such as a wedding, baptism, funeral, or the like), sent via email, or the like. Any person accessing the QR code can scan the QR code using an imaging device (such as a camera on a smartphone), and the QR code can then direct the user's browser to the video. For example, scanning the QR code by a user device can open the internet location where the video is stored, such that the story can be output by the user device.

[0125] After creating the video, the user may also be prompted to share the video on a hosting platform for shareable videos, and the video may remain as a post on the user's page. For example, the user may include multiple stories on their user page, along with an explanation of each story (e.g., the birth of the first child, a wedding, or the like). Another user of the platform may visit the user page and select and view one or more videos based on the explanation. In some embodiments, the user may set a particular video such that only certain people can access it (e.g., shared only with verified family members, only with children, or the like). In that regard, only identified and verified people can access and view the particular video.

[0126] The user may further download a copy of the video (e.g., for storage on the user device), add the video to another location on the Internet (e.g., the user's homepage or another social media site), share the video on a decentralized web, share the video in a metaverse application, or do the like. Another user device accessing the video (e.g., via a social media connection to the user, use of a QR code, or the like) may want to view the video, and the server may facilitate streaming of the video to other users' user devices or facilitate downloading of a copy of the video to other users' user devices. In some embodiments, a person without an account on the hosting platform for shareable videos can view a video for which a particular link or QR code associated with the video is provided to that person, as long as the person has the link or QR code.

[0127] In block 534, the user can read through a list of options related to video sharing and select values and options related to video sharing. For example, the user can restrict a particular video so that it can be viewed publicly (e.g., any user with a link or QR code to the video can view it) or privately (e.g., only the user's family members can view it). Some of the options related to sharing may be available only to users of a particular membership or subscription level, while other options may be available to any user regardless of membership or subscription level. In some embodiments, the user can sign up for various membership or subscription levels that can affect who can view the story (e.g., a legacy membership may allow the user to specify that only certain family or friends can view the video, indicating the user's family and friends).

[0128] Some share options that may be available include the ability to customize the link address (e.g., by selecting a customized uniform resource locator, i.e., URL). Using this option, the user may be able to select any URL not already in use by a system user or another user. For example, the platform may assign the following URL, i.e., http: / / www.platform / user1 / video1, to a particular user video. The user can then modify the URL to http: / / www.platform / user1 / babybirth. In some embodiments, the platform may reserve or restrict certain URLs or paths for platform functionality and content moderation. For example, the platform may restrict URLs that include words such as share, admin, moderator, <name of platform>, or the like.

[0129] Another sharing option that may be available in some cases is a feature where the platform generates a QR code for each specific video or story. In that regard, users for whom this feature is available can request the generation of a unique QR code for each story generated using the platform. The platform then generates a unique QR code for each specific story. The user can then view, download, print, or otherwise act on the QR code and share it with others. The recipient of the QR code can detect the QR code using an image capture device (e.g., a smartphone camera), and the QR code then links to a specific URL where the video is available. In this way, the user can share their video by sharing only the specific QR code associated with the video. As a note, the platform can be designed to maintain the association between the generated QR code and the URL link throughout the operation of the platform. That is, once a QR code is generated for a specific story, the QR code can continue to indicate the URL as long as the platform is operating.

[0130] Another share option that may be available in the case of a user is the ability to customize the content of the page where the story is shared. For example, the user's homepage may include links to all of the user's stories. The user may be able to customize this page, for example, by adding a text description for each video, adding music or images to the page, adjusting the coloring or lighting of the page, or the like. In some embodiments, the user may also be able to adjust the characteristics of each page where the video is stored. For example, the user may be able to add additional personalized messages that the video viewer can see when viewing the story. This customization may include any type of customization, such as rearranging objects on the page, adding or removing text or images, adding or removing music, adjusting coloring or lighting, or the like.

[0131] In some embodiments, each story may function as a shared post in a social media context. In that regard, users who are able to view the story may be able to add comments to each story. Users at a particular subscription level may be able to enable or disable comments for each particular shared video. For example, a user may want to enable comments for a story related to the birth of a child but may want to disable comments for a story related to a disliked member of the family.

[0132] Another option available to a particular user is the ability to share a story with an external social media platform. For example, the user may have an account on a third-party social media platform (e.g., Facebook (registered trademark)). The user can utilize the features of this platform to share a story on their wall on the third-party social media platform. In a similar manner, the user may be able to disable sharing for any of their videos on the platform or on a third-party social media platform.

[0133] In some embodiments, the user may share their video via a sharing function located on the user device. For example, the user may utilize a share sheet on a smartphone user device to share the video with other users.

[0134] In some situations, the user may be able to specify who the story is shared with. For example, the user may make a selection to allow the public at large to view their video. In that regard, anyone with access to the link or QR code for a particular video will be able to view the video, and others may be able to view the video by navigating to the page associated with the user on the hosting platform of the shareable video. The user may make a selection to limit viewing to only those people who have the password assigned to the video, in which case a person will only be able to view the video if that person has access to the link or QR code and also has the provided password. The user may identify when choosing who to share the password with to limit the number of views of the video. The user may also limit access to the video to only those people who have received a specific invitation from the user. The user may send the invitation through the platform, and only the recipients of the invitation will be able to view the video.

[0135] The user may also restrict sharing to people who are "friends" with the user on the hosting platform for shareable videos, such that no one can view the video if the user has not approved that person to be connected with on the platform. A user who wishes to invite viewers who are not members of the platform may send an invitation to the non-member viewer to create an account (which may be free in some cases) and enable viewing of the video after the account is created. Similarly, the user may restrict sharing to people who are members of the user's family. The platform may enable the user to add information about the user's family members (such as siblings, parents, grandparents, aunts, uncles, children, grandchildren, etc.) and create connections with the user's family members on the platform. In some situations, the platform may determine at least one of the family relationships or possible family trees of the user based on information provided to the platform, information shared with other platforms (such as social media networks), information obtained from a family tree platform (such as family tree data imported from the platform), or the like. In these embodiments, the user may have the option to review each member of the family tree and confirm or reject them. In some embodiments, only the administrative user may add members to the family tree, and in such embodiments, the user may provide a display of the user's family members, but the administrator needs to approve the family link before anyone can be added to the family tree. In some situations, the user may decide to share the video only with family members, and only the approved members of the family tree can view the video. In some embodiments, the user may be able to set the types of relatives who are permitted access (e.g., only direct family members including parents, grandparents, children, siblings, and grandchildren can view, while aunts and uncles cannot).

[0136] At block 536, a person connected to the user on a hosting platform for shareable videos (e.g., a "friend" on the platform) may receive a notification that the user has new videos available for viewing. For example, the platform may output the notification to all of the user's "friends" or family to notify the "friends" or family that the videos are available for viewing. As another example, the user may send a link or a QR code associated with the link to a person via email, text, or other messaging means. As yet another example, the user may post information about their new videos on a social media network, and a person may notice the social media post and visit the user's account on the hosting platform for shareable videos to view the videos.

[0137] At block 538, another person (i.e., a user not linked to the sharing user on the hosting platform for shareable videos as a friend, family member, or the like) may recognize that the user has posted new videos. For example, that person may receive a link or a QR code associated with the link from the sharing user. As another example, the person may become aware of the sharing on another social media network by the user notifying others that the new videos are available for viewing.

[0138] At block 540, the server may facilitate the output of the video by the user device to those who are aware of the new video and have the right to view it. For example, a friend or family member of the user who shared the video may be connected to the user on the hosting platform of the sharable video, may select a link on the user device of the friend or family member, and the link is sent by the sharing user. In these situations, the server of the hosting platform of the sharable video may facilitate the streaming of the video using the latest web browser on the user device. As another example, an unrelated person may receive a QR code associated with the link to the video from the user. The unrelated person may use the user device to scan the QR code to access a website, and from that website, the video may be streamed by the server of the hosting platform of the sharable video.

[0139] If the right is limited (by password or relationship), the server may request additional information from the viewer before facilitating the streaming of the video. For example, if the right is limited by password, the server may facilitate the streaming only if the correct password is entered. If the right is limited to those having a specific connection with the user (e.g., family), the server may verify the relationship (e.g., by the viewer logging in to the hosting platform of the sharable video) before facilitating the streaming of the video. If the right is limited to only those who receive a specific invitation, the server may enable the streaming of the video only for those who received the invitation (e.g., the server may maintain a list of permitted persons and may stream the video only to those persons). If the invited person does not yet have an account on the hosting platform of the sharable video, the person may use the link provided by the sharing user to create a profile or account on the hosting platform of the sharable video, and once the account is created, the server may then facilitate the streaming for that person.

[0140] Users of a hosting platform for shared videos may have the function of commenting on the shared videos when comments are enabled for a specific video. In that regard, the viewing user may type a comment to leave on the video while watching the video or after watching the video. The comment may include any topic, and the sharing user may receive a notification of the comment and the function of viewing the comment. The comment may include text, video, photo, audio, or any other type of data.

[0141] A particular topic may not be permitted by the policies of the hosting platform for shareable videos (e.g., nudity, threat of harm, or the like). Any viewer of a video may have the function of reporting the content of a video or comment that violates the platform's policies. As part of the report, the reporting user may select a reason for reporting the content (from a list including, for example, nudity, vulgarity, threat, or the like). When a video is reported for its content, the moderator may receive a notification of the report along with the reason provided by the reporting user. The moderator then determines whether the content violates any rules and, in that case, has the function of removing the content from the platform. The moderator may take other measures in addition to or instead of content removal, such as canceling the user's membership, sending a warning to the user, or the like.

[0142] In some embodiments, a person may want to create a video about a relative or person whose body is disabled or who has passed away. In that regard, at block 542, the user may provide to the server of a hosting platform for a shareable video the media and other information about the person. This information may include media associated with the person (e.g., a video or photo including the person), a link to the person's social media account (e.g., a link to the person's Facebook page), a recorded story by the user about the person, or the like. In some embodiments, the user may select a theme for the story that the user would like the platform to generate about the person. The server may receive and store all received media. The server may also access (block 544) the person's third-party social media account and download and store information from the social media account (e.g., any information, such as a nickname, likes and dislikes, the person's friends, media posted on the person's page, or the like).

[0143] Along with the selected theme, based on the received and accessed information, at block 546, the server may generate a story narrative. For example, the server may aggregate all of the received and accessed media into a story narrative in a manner similar to that described above. For example, if the theme is selected by the user, the server may use a tool (e.g., an artificial intelligence tool) to identify media that conforms to the selected theme for the video. For example, if the theme is the migration of people to a new country, the server may utilize an algorithm (which may include artificial intelligence) to select only the media associated with the migration. For example, the server may select media associated with a flight to a new country, a post regarding the migration, a post regarding a person obtaining citizenship, or the like. The server may also use a similar tool to determine the order in which the media is presented in the resulting story narrative based on the selected theme. In some embodiments, the server may identify the theme that best fits the media provided to the server and adapt the story narrative to the identified theme. For example, if most of the videos of people are regarding people getting married, the server may select a wedding or marriage theme.

[0144] Furthermore, the server may perform an automatic editing of the story narrative as described above. A manual editing tool may similarly be available for the user to manually edit the story narrative. After editing and approval by the user, the server may then generate the revised or edited narrative and associate it with the name of the person. The server may also automatically share the narrative with the person's friends and family.

[0145] At block 548, the server can create a link where the video is stored and a QR code indicating the link. The server can enable a user (or additional or alternative users) to share the link and / or the QR code. The server can also facilitate the streaming or viewing of the video based on the set permissions as described above. For example, the user who provided the media may desire that only family members can view the story, and in this situation, the server enables only the verified family members to view the story.

[0146] In summary, the shareable video hosting platform disclosed herein enables a user to create a personalized long-form video montage that aggregates videos, photos, and other media from the user's camera roll, social media sites, and / or stock footage in real time. The videos are shareable, can be created in a timeline format, and are perpetual. Each person's video is linked to a customizable QR code that can be used in business cards, advertisements, tombstones, and many more.

[0147] The sharable video hosting platform described in this specification is a long-form video option centered around life events that are truly important, using guide prompts and API integrations. The users can include anyone with a camera-equipped smartphone who doesn't know how to capture memories by taking photos and videos and create an edited video. Examples of users include pregnant women who want to capture the timeline story of their own pregnancy and include the life of their growing child. Another style of user could be a grandfather who wants to leave a video for his unborn granddaughter. A highly anticipated user group is businesses that desire an easier and more affordable way to create videos so that they can market their products and services. Using API integrations, the sharable video hosting platform can link to the social media profiles of deceased people, import the videos and photos stored in the accounts, and automatically generate a rich content story about that person's life, which can be shared as a video montage, linked to the family's legacy tree, and linked as a QR code installed on that person's gravestone.

[0148] Regardless of whether a person desires a video of their autobiography, capturing a special timeline throughout their pregnancy, marketing their business, and many more situations, the software disclosed in this specification enables users to easily create high-end videos by utilizing an automated video editing package with guide prompts incorporated. The software creates intentional videos that capture the true essence of a person's life. The software can create videos with rich content without the need to know how to edit videos for all special moments in real-time or for the entire timeline of special moments. The videos can be shared on the sharable video hosting platform and uploaded to other social media sites. Each video is assigned a unique QR code that is specifically linked to that video.

[0149] People die every day, and the life stories of those who have passed away are taken with them. Often, family members and friends regret not asking their loved ones about their lives. After one or two generations, the memory of that person fades from existence, and future generations wonder what kind of people their family ancestors were. Relatives may be able to sift through family photo albums or, if they have access, random content on the social media profiles of the family, but this does not provide the complete story of the person.

[0150] Another advantage of the software described herein over current technology is that conventional platforms do not allow users to specify relationships such as mother or grandmother. The platform described herein enables users to specify and link the entire family tree so that a person can leave stories and final comments for specific individuals. As a result, future generations will have the ability to explore not only a small part or portion but the entire story of their ancestors' lives. The platform can further incorporate a third-party family tree platform to automatically identify family members and their specific relationships.

[0151] There are also numerous social media accounts of people who have passed away. By linking an account to the application programming interface associated with this platform, the platform can capture the videos and photos stored on the account and automatically generate a rich content story about the person's life. This story can be shared as a video montage, linked to the family's legacy tree, and linked to a QR code that can be installed on the family's gravestone.

[0152] As used throughout the specification and the claims, "at least one of A or B" includes only "A", only "B", or "A and B". Preferred embodiments of the method / system are disclosed in an exemplary style. Accordingly, the terms employed throughout should be read as non-limiting. Those skilled in the art will doubtless conceive of minor modifications to the teachings herein, but it is intended that all embodiments that reasonably fall within the scope of the advancement to the art contributed by this specification, except as viewed from the perspective of the appended claims and their equivalents, should not be limited in scope, it being understood that the scope should not be so limited.

Claims

1. A method for providing a hosting platform for shareable media, wherein the method is The user device records multiple video segments corresponding to the user's story, The steps include storing the plurality of video segments in memory, The processor combines the multiple video segments into a single video stream that tells the user's story, in response to a request from the user device. Methods that include...

2. The server stores the single video stream, The server associates the single video stream with a specific hyperlink. The processor generates a quick response (QR) code containing information corresponding to the specific hyperlink associated with the single video stream. The method according to claim 1, further comprising:

3. The steps include detecting image data corresponding to the QR code from the aforementioned user device or another user device, The steps include: decoding the specific hyperlink from the QR code using the user device or another user device; The steps include: accessing the Internet location of the specific hyperlink using the user device or another user device; The steps include displaying the single video stream in response to the user device or another user device accessing the Internet location using the specific hyperlink, The method according to claim 2, further comprising:

4. The method according to claim 1, further comprising the step of automatically editing the single video stream with the processor to improve the quality of the single video stream.

5. The step of automatically editing the aforementioned single video stream is: A step of reducing the delay between at least two of the plurality of video segments, A step of adjusting at least one of the contrast, brightness, or color of at least one of the plurality of video segments, A step of adjusting at least one of the audio volume, compression, or equalization for at least one of the plurality of video segments, A step of transcribing spoken language from at least one of the video segments into text and creating time-synchronized video captions based on the text, A step of adjusting the volume of at least one of the speech or music for at least one of the plurality of video segments, or The method according to claim 4, comprising at least one of the steps of adding at least one map view or street view relating to a location mentioned in at least one of the plurality of video segments.

6. The step of automatically editing the aforementioned single video stream is: The steps include identifying an emotion corresponding to at least one of the plurality of video segments, The steps include selecting music based on the identified emotion and inserting it into the single video stream, The method according to claim 4, including the method described in claim 4.

7. The method according to claim 1, wherein the processor is at least one of the processors of the user device or the processor of a server that communicates with the user device.

8. The server stores a profile corresponding to the user on the user device. The steps include: linking the profile to another profile of another user based on a request from the user device or another user device associated with the other profile; The server facilitates viewing of the single video stream by the other user device based on the link between the profile and the other profile, The method according to claim 1, further comprising:

9. A step of determining that the user is related to the other user based on information received from at least one of the user device or the other user device, A step of determining, based on information received from the user device, that the single video stream should be approved to be viewed only by family members, The steps include enabling the server to view the single video stream on the other user's device, in accordance with the determination that the user is related to the other user, The method according to claim 8, further comprising:

10. The processor performs the steps of determining the theme of the user's story in response to user input, The processor accesses a list of prompts associated with the determined theme, The steps include outputting the prompt associated with the determined theme so that each of the plurality of video segments is recorded in accordance with one of the prompts by the user device, The method according to claim 1, further comprising:

11. The processor receives additional media associated with the user's story, The processor performs the steps of combining the additional media with the plurality of video segments such that the single video stream includes the plurality of video segments and the additional media, The method according to claim 1, further comprising:

12. The user device outputs a list of manual video editing functions available for manual editing of the single video stream. The user device receives information corresponding to manual editing of the single video stream, The processor performs the steps of editing the single video stream based on the information corresponding to the manual editing of the single video stream, The method according to claim 1, further comprising:

13. A system that provides a hosting platform for shareable media, wherein the system is A user device having a camera configured to capture image data, wherein the user device is configured to record a plurality of video segments, each corresponding to a user's story, A memory configured to store the plurality of video segments, A processor configured to combine the multiple video segments into a single video stream that tells the user's story, in response to a request from the user device, A system that includes these features.

14. The system according to claim 13, further comprising a server configured to store the single video stream and associate the single video stream with a specific hyperlink, wherein the processor is further configured to generate a QR code containing information corresponding to the specific hyperlink associated with the single video stream.

15. The system according to claim 13, wherein the processor is further configured to automatically edit the single video stream to improve the quality of the single video stream.

16. Automatically editing the aforementioned single video stream is To reduce the delay between at least two of the aforementioned multiple video segments, Adjusting at least one of the contrast, brightness, or color of at least one of the plurality of video segments, Adjusting at least one of the audio volume, compression, or equalization for at least one of the aforementioned multiple video segments, Transcribing spoken language from at least one of the aforementioned video segments into text, and creating time-synchronized video captions based on the text, Adjusting the volume of at least one of the speech or music for at least one of the plurality of video segments, or The system according to claim 15, further comprising adding at least one of a map view or street view relating to a location mentioned in at least one of the plurality of video segments.

17. Automatically editing the aforementioned single video stream is Identifying an emotion corresponding to at least one of the aforementioned multiple video segments, Based on the identified emotion, select music to be inserted into the single video stream, The system according to claim 15, including the system described in claim 15.

18. The system according to claim 13, wherein the processor is further configured to determine the theme of the user's story based on user input received by the user device and to access a list of prompts associated with the determined theme, and the user device is further configured to output the prompts associated with the determined theme such that each of the plurality of video segments is recorded in accordance with one of the prompts.

19. A method for providing a hosting platform for shareable media, wherein the method is The steps include outputting multiple prompts associated with the selected theme, depending on the user device, A step of recording a plurality of video segments corresponding to the user's story using the user device, wherein each of the plurality of video segments is provided in response to one of the plurality of prompts, The steps include storing the plurality of video segments in memory, The processor combines the multiple video segments into a single video stream that tells the user's story, in response to a request from the user device. The step of automatically editing the single video stream using the processor to improve the quality of the single video stream, wherein the automatic editing is performed A step of reducing the delay between at least two of the plurality of video segments, A step of adjusting at least one of the contrast, brightness, or color of at least one of the plurality of video segments, A step of adjusting at least one of the audio volume, compression, or equalization for at least one of the plurality of video segments, A step of transcribing spoken language from at least one of the video segments into text and creating time-synchronized video captions based on the text, A step of adjusting the volume of at least one of the speech or music for at least one of the plurality of video segments, or A step including at least one of the steps of adding at least one map view or street view relating to a location mentioned in at least one of the plurality of video segments, Methods that include...

20. The user device outputs a list of manual video editing functions available for manual editing of the single video stream. The user device receives information corresponding to manual editing of the single video stream, The processor performs the steps of editing the single video stream based on the information corresponding to the manual editing of the single video stream, The method according to claim 19, further comprising: