A computing system that applies an editing model to a second video from a publicly released video.
The computing system enables users to apply editing models from a first video to a second video, addressing derivative content issues and supporting users in creating engaging videos while crediting the original creator and providing editing assistance.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- LEMON CO LTD
- Filing Date
- 2023-05-08
- Publication Date
- 2026-05-21
AI Technical Summary
Users on social media platforms face issues with derivative content reproduction leading to original creators feeling their ideas have been stolen, and new users lack the skills or confidence to create original content due to high entry barriers and limited editing options.
A computing system that allows users to apply editing models from a first video to a second video, enabling users to reuse editing operations while crediting the original creator and providing a graphical user interface for easy editing and sharing.
Facilitates the creation of derivative content while ensuring credit to the original creator and supporting users in creating engaging videos, even if they lack editing skills, by allowing the reuse of editing models with proper permissions and synchronization features.
Smart Images

Figure 0007863634000001 
Figure 0007863634000002 
Figure 0007863634000003
Abstract
Description
Background Art
[0001] [Cross - reference to Related Applications] This application claims priority to U.S. Application No. 17 / 804,277, filed on May 26, 2022 (invention name: Computing System for Applying an Editing Model from a Published Video to a Second Video), the entire contents of which are hereby incorporated by reference in their entirety.
[0002] In social media platforms where users upload original content and are provided to interact with each other's content, various users often attempt to reproduce popular trends with original ideas, sometimes with their own modifications. Derivative versions of original ideas may become popular thanks to the user who provided the original idea and may even be more popular than the original idea. In such cases, the original user may feel that their original idea has been stolen. Furthermore, platforms hosting such uploaded content may have high entry barriers for new users who are not yet familiar with the various editing options available for content generation, or may not feel creative enough to develop their own ideas into original content.
Summary of the Invention
Means for Solving the Problems
[0003] To address these issues, this specification provides a computing system comprising a client computing device having a processor. The processor may be configured to run a client program to display a first video, published on a video server platform by a first user, to a second user viewing the first video. The processor may be configured to run a client program to display a graphical user interface. The graphical user interface may include selectable input components configured to allow selection of an editing model for the first video. The editing model may include a set of editing operations applied to the first video. The processor may be configured to run a client program to apply the editing operations to a second video, depending on the selection of the selectable input components. The processor may be configured to run a client program to publish the second video, made available to other users on the video server platform by the second user.
[0004] This summary is provided to present a simplified excerpt of the concept, which will be further described in the embodiments for carrying out the invention described below. This summary is not intended to identify the main or basic features of the claimed subject matter, nor to limit the scope of the claimed subject matter. Furthermore, the claimed subject matter is not limited to an implementation that solves any or all of the defects described in any part of this disclosure. [Brief explanation of the drawing]
[0005] [Figure 1] This is a schematic diagram showing an exemplary computing system according to an embodiment of the present disclosure.
[0006] [Figure 2] This is another schematic diagram of the computing system shown in Figure 1.
[0007] [Figure 3] Figure 1 is a schematic diagram illustrating the communication between the application server program and the client program in the computing system shown.
[0008] [Figure 4] This figure shows an exemplary editing model used in the computing system shown in Figure 1.
[0009] [Figure 5] Figure 1 shows an example video publishing screen of the graphical user interface (GUI) of the computing system.
[0010] [Figure 6] This figure shows an example video viewing screen of the GUI of the computing system in Figure 1, over time.
[0011] [Figure 7] This figure shows an example of a video sharing screen in the GUI of the computing system shown in Figure 1.
[0012] [Figure 8] This diagram shows an exemplary inspired screen of the GUI of the computing system shown in Figure 1.
[0013] [Figure 9] This figure shows an example video editing screen of the computing system GUI in Figure 1, over time.
[0014] [Figure 10] This figure shows a further modified example of the video editing screen in Figure 10.
[0015] [Figure 11] Figure 1 shows an example video viewing screen of the GUI of the computing system.
[0016] [Figure 12] An exemplary flowchart of a method according to one example of the present disclosure.
[0017] [Figure 13] FIG. 1 is a schematic diagram showing an exemplary computing environment capable of implementing the computing system of FIG. 1.
Mode for Carrying Out the Invention
[0018] To address the above problems, FIG. 1 shows an exemplary computing system 100. The computing system 100 includes a video server platform 10 including at least one server computing device 12. The video server platform 10 may be a social media platform where users can upload and view videos, browse and search for viewable videos, and leave comments. The server computing device 12 may include a processing circuit (e.g., a logic processor 1302 described later) configured to execute a database program 14 that stores and holds data in the server computing device 12, and an application server program 16 that may be a server-side program executed to implement the server-side functions of the video server platform 10.
[0019] On the client side of the computing system 100, a first client computing device 18A, a second client computing device 18B, and other client computing devices 18C may be used by the associated user to interact with the application server program 16. Each client computing device 18A-C may be any suitable type, such as a smartphone, tablet, personal computer, laptop, or wearable electronic device, that can access the video server platform 10 via an internet connection. The first client computing device 18A may include a processor 20A configured to execute various client-side functions of the video server platform 10 on behalf of the first user by running a client program 22. The first client computing device 18A may further include associated memory 24A for storing data and instructions, a display 26A, and any suitable type of input device 28A for receiving user input from the first user, such as a touchscreen, keyboard, buttons, accelerometer, microphone, camera, etc. In this example, the first user is a content provider who provides new original content on the video server platform 10 for consumption by other users.
[0020] First, a first user creates a first video 30 published on the video server platform 10. The processor 20A may be configured to present a graphical user interface (GUI) 32 to the first user on the display 26A by executing the client program 22. The GUI 32 may include a plurality of pages, screens, windows, or sub-interfaces that provide various functions. For example, the video publishing screen 34 may be used to finalize details and settings before publishing the completed video, the video viewing screen 36 may be used to select and view published videos of other users, and a plurality of options may be provided for interacting with the viewed video, such as adding the video to a list or favorite collection, reacting to the video, sharing the video via a connected social media or communication account with a link to the video, downloading the video, etc. The video sharing screen 38 may be used to present these options to the viewing user, and the video editing screen 40 may be used to shoot and / or edit the video to be published. Additional screens may be provided to offer additional functions.
[0021] The first client computing device 18A may prepare the first video 30 using the video editing screen 40. The first video 30 may be packaged within a first video object 42 having metadata 44 such as the location, model, and operating system of the first client computing device 18A, and sharing permissions 46. The sharing permissions 46 may apply to all options on the video sharing screen 38, or to any individual options. The sharing permissions 46 may be an account-wide setting or a setting for an individual video. The first user may be able to set the sharing permissions 46 via selectable GUI components such as switches, checkboxes, or drop-down menus (see Figure 5). The sharing permissions 46 may be set when the first video 30 is published, modified after publication for future sharing activities, or set for the entire account at any time on the account settings screen. The server computing device 12 may be configured to receive the sharing permissions 46 from the first user and enable or disable sharing accordingly. The first video object 42 may further include an editing model 48 which includes a set of editing operations 50 applied to the first video 30. In this disclosure, a sharing permission 46 applies to at least the editing sharing functionality described herein, and for the first video 30, the sharing permission 46 indicates that the editing model 48 of the first video 30 is available for sharing and use with other users of the video server platform 10. The first client computing device 18A may send the first video object 42 to the server computing device 12 in a public request 52. The application server program 16 may include a number of handlers that process data transfer requests. A handler 54 may receive the public request 52 and store the first video object 42 together with other videos 56 from other users in the video data store 54A.
[0022] Figures 1 and 2 differ in that the database program 14 in Figure 1 includes a separate editing model data store 54B that stores editing models for various users, including the editing model 48, and a sharing permission 46 that allows or denies sharing the editing model 48 with other users. The first video 30 is associated with the stored editing model 48 by an editing model identifier 58, which may be a pointer or URL that refers to the stored location of the editing model 48 within the first video object 42. In contrast, as shown in Figure 2, the video server platform 10 may be configured to store the editing model 48 within the first video object 42, including the first video 30, in, for example, a single data store 54.
[0023] The second client computing device 18B, like the first client computing device 18A, may include a processor 20B configured to display a GUI 32, which includes at least a video viewing screen 36, a video sharing screen 38, and a video editing screen 40, by executing a client program 22, as well as associated memory 24B, a display 26B, and at least one input device 28B. Each of these components corresponds to a component of the same name in the first client computing device 18A, so the same description is omitted. More screens than those shown in Figures 1 and 2 may be presented within the GUI 32 for the first client computing device 18A. When the server computing device 12 publishes the first video 30 on the video server platform 10, a user of the second client computing device 18B may be inspired by the first video 30 and want to participate in the trend. Therefore, the second client computing device 18B may send a viewing request 60 to the video server platform 10 via a handler 62 of the application server program 16. Accordingly, the handler 62 may send data to the second client computing device 18B for displaying the first video 30, which has been published on the video server platform 10 by the first user, to the second user who is viewing the first video 30. The application server program 16 may send the first video object 42 together with the first video 30 and the editing model 48, or it may send the editing model identifier 58 first. The metadata 44 may be omitted from the first video object 42 sent to the second client computing device 18B in order to protect the user's privacy. Using the editing model identifier 58 instead of sending the editing model 48 in advance can reduce the amount of data transferred, especially if the editing model 48 is a large file.However, if, for example, the first video 30 is a high-conversion video that inspires many viewers to reuse the editing model 48 to create their own videos, then it may be advantageous to send the editing model 48 in advance.
[0024] If the editing model 48 is not included with the first video 30, the second user may send an editing model request 64 indicating the editing model identifier 58 to the handler 62, for example, by selecting a GUI component on the video sharing screen 38, as shown in more detail in Figure 3. In response, the handler 62 may send the editing model 48 to the second client computing device 18B so that the second user can reuse the editing model 48 in the new video. Regardless of data packaging, selecting a GUI component causes the client program 22 to apply the editing operations 50 in the editing model 48 to the second video 66. At this point, the second user may start shooting the second video 66 or select existing material on the video editing screen 40.
[0025] The second user may complete the second video 66 with editing operations 50 identical to those of editing model 48, in which case, if necessary, editing model 48 may be omitted from the publication request 68, and the already stored editing model 48 may be associated with the second video 66 on the server computing device 12 using the editing model identifier 58. Alternatively, in some implementations, the second user may be permitted to further modify one or more of the editing operations 50 and send the modified editing model 70 back to the handler 62 of the application server program 16. The modified editing model 70 may be associated with the original editing model 48, so that the first user can be credited for the inspiration of the second video 66. That is, the editing model 48 of the second video 66 may be identical to, or partially different from, the editing model 48 of the first video 30. As described above, by sending a publish request 68 that includes metadata 74, the second video 66, a sharing permission 76, and a second video object 72 including an editing model identifier 58 and / or editing model 48, the client program 22 may cause the application server program 16 to publish the second video 66 by the second user on the video server platform 10 for viewing by other users. Other users may be able to view the second video 66 provided by the handler 78 of the application server program 16 via their other client computing device 18C that provides a video viewing screen 36.
[0026] Figure 4 shows an exemplary editing model 48 used within the first video 30. The editing operations 50 may include timed operations performed at predetermined timestamps along the first video 30 and / or audiovisual effects that persist throughout the entire first video 30. Many of the editing operations 50 may affect the position of visual edits in the first video 30. For example, as shown, the editing operations 50 may include at least one of the following: adding a text box, formatting a text box, applying a filter, adding a sticker, adding or modifying an audio track, setting the coordinates of a text box or sticker, or setting the timing of a text box or sticker. In the illustrated example, a visual filter 80A that modifies the appearance of the first video 30 is added as one of a series of editing operations 50 for the entire time interval of the first video 30. An audio filter 80B that modifies the audio track of the first video 30 is added as one of a series of editing operations 50, starting at a 2-second mark and ending at the end of the first video 30. As an alternative or addition, an audio track, such as a song, may be selected from a catalog of audio files. A first text box 80C labeled "HOW HIGH?" is added as editing operation 50 at a specified coordinate point for a specified period of time. The font, text color, and text box color are further specified as editing operation 50. A second text box 80D labeled "WHEELIE HIGH!" is added as editing operation 50 at the start and end coordinate points for a specified period of time. The font, text color, slant angle, and whether or not the text box is filled are further specified as editing operation 50. In some cases, modifications such as stickers may be added to the video. A sticker is a graphic that may be part of an illustration or image that may be stamped onto the video, and may be an animation, a video, or a still image. Here, a "THINKING_FACE_EMOJI" sticker 80E is added at a specified period and specified coordinates, although it is not included in the illustration of the first video 30.Stickers may be selected from an existing catalog or created by the first user. The example in Figure 4 is for illustrative purposes only, and many other editing operations 50 may be available.
[0027] Figure 5 shows an example of the video publishing screen 34 of GUI 32. Here, the first user may enter a description 82, select a hashtag component 84 to add hashtags, or select an @mention component 86 to mention another user's account. When viewing the video, the user may select a cover image 88, which may be used, for example, when presenting search results or a collection of videos on the first user's profile page. The video publishing screen 34 may further include a GUI component 90 for tagging other users, a GUI component 92 for adding hyperlinks, a GUI component 94 for setting viewing permissions for the first video 30, a GUI component 96 for allowing or denying the addition of comments depending on the first video 30, and a GUI component 98 for viewing more options. The video publishing screen 34 may further include a GUI component 102 for setting sharing permissions 46 for the first video 30. The GUI component 102 is shown as a toggle switch as an example, but may take other forms such as a dropdown menu, a virtually pressable button, or a checkbox. The default setting may be either enabled or disabled. Furthermore, permission settings may reside not within the video publishing screen 34 for a specific video, but within the account-level settings page. Here, the first user has enabled sharing of the first video 30 in editable sharing ("Inspire") mode. Finally, the first user may save the first video as a draft by selecting GUI component 106, or publish the first video 30 on the video server platform 10 by selecting GUI component 104.
[0028] Figure 6 shows an example of a video viewing screen 36 that displays the first video 30 to a second user. As shown, the first video 30 includes many of the exemplary editing operations 50 listed in the exemplary editing model 48 of Figure 4, for example, a first text box 80C and a second text box 80D. The timestamp 108 indicates the time of each frame 110A-D shown herein. Information 112 about the first video 30 may be shown, for example, the first user's user account (@USER1), the time elapsed since the first video 30 was published, and the title and artist of the song used in the first video 30. The visual content of the first video 30 includes a motorcycle rider running across the camera's field of view from left to right after the first text box 80C ends, with the second text box 80D pinned above the motorcycle at approximately the same angle as the motorcycle and following its position across the screen. The video viewing screen 36 may include selectable GUI components 114 for accepting user input so that a second user can interact with the first video 30, such as by ending viewing, searching for other videos or user accounts, adding the first video 30 to a list, accessing the first user's profile page, or liking the first video 30. To launch the video sharing screen 38, the sharing component 116 may be selected by the second user, for example, by tapping on a touchscreen or clicking with a mouse, an example of which is shown in Figure 7. The second user may select the inspire component 118 to launch an inspire screen 120 that presents other viewing videos, an example of which is shown in Figure 8, created using the same editing model 48 as the first video 30.
[0029] Moving to Figure 7, the video sharing screen 38 may include several options for sharing the first video 30. A contact pane 122 may be included for sending a link to the first video 30 to a known contact on the first client computing device 18A. An application pane 124 may be included for sending a link to promote the first video 30 or creating a post to promote the first video 30 via a common application such as social media or a messaging application. An action pane 126 may be included to provide actions that a second user can perform with respect to the first video 30, such as downloading the video. Specifically, the GUI 32 may include a selectable input component 128 configured to enable the selection of an editing model 48 for the first video 30 by engaging the second user in “Inspire Mode”. The selectable input component 128 is shown as a selectable virtual button, but may take any form. The video sharing screen 38 of GUI 32 may include a selectable input component 128, or another suitable screen of GUI 32 may include a selectable input component 128. For example, a component on the video viewing screen 36 of Figure 6 can be used as a selectable input component 128 for entering INSPIRE MODE, or as a component in a browseable list of selectable editing models from one or more users.
[0030] Moving to Figure 8, the second client computing device 18B may also be configured to display the inspired screen 120 by executing the client program 22. The inspired screen 120 may include suggestions for videos to watch or user accounts to follow for the second user. The inspired pane 130 may display multiple videos 132, including the editing model 48 of the first video 30. Data 134 for each video 132 is related to the first user's achievements 136. table In addition to the indication, the data may also include, for example, the posting user account, the number of likes, and a text description. The data 134 may form a list of user accounts that have published the multiple videos 130. The similar inspirations pane 138 may include videos 140 that are determined by an algorithm to be similar to the first video 30 or editing model 48 and are displayed to the second user. The inspiration screen 120 may include a search bar 142 and a filter control component 144 for narrowing down desired videos and accounts within the inspiration screen 120.
[0031] As described above, GUI 32 may further include a video editing screen 40. Figure 9 shows an example of the video editing screen 40 of GUI 32 over time as a second user creates a second video 66. The video editing screen 40 may already be launched after the second user has selected a selectable input component 128. In Figure 6, the timestamp 146 indicates the time of each corresponding frame 148A to D shown therein. The processor 20B may be configured to apply editing operations 50 to the second video 66 in accordance with the selection of the selectable input component 128 by executing the client program 22. Furthermore, the client program 22 may be permitted to apply editing operations 50 to the second video 66 based on at least the first user's sharing permission 46. Since the first user has enabled sharing of the editing model 48, the second user can reuse the editing model 48 when creating the second video 66. As illustrated, the series of editing operations 50 from the first video 30, including text boxes 80C and 80D, are preloaded onto the second video 66. The editing operations 50 may be displayed during shooting or may appear during the editing stage after shooting is complete.
[0032] In some examples, the video editing screen 40 further includes a reference video 150 of the first video 30, which is displayed on top of the second video 66. Here, the reference video 150 is shown as a thumbnail, but may also be a full-size overlay or displayed in a split-screen format. Thus, the second user can easily create the second video 66 so that it has the appropriate content at the appropriate time in order to follow the flow of the series of editing operations 50. If necessary, the reference video 150 may be closed by selecting the GUI component 152. As can be seen by comparing the corresponding frames 110A-D and 148A-D at the same timestamp, the reference video 150 may be set to play and pause in sync with the second video 66 while the second video 66 is being recorded and / or edited. Thus, if the second user pauses recording of the second video 66 via the play / pause button 154, the reference video 150 may also pause at the same time, and the two videos 66, 150 will no longer be synchronized. Therefore, the reference video 150 may be a useful aid for a second user to view when creating a second video 66. The reference video 150 may be adjustable by a second user in the video editing screen 40 in terms of at least one of its transparency, size, and position. For example, the second user may drag the reference video 150 across the screen to a new position in frame 148A by applying input 156. The second user may increase the size of the reference video by applying input 158 in frame 148C, and conversely, decrease its size in the reverse direction. The second user may also be able to adjust the transparency of the reference video 150 by accessing the opacity pane and adjusting a selectable GUI component 160, which may be a slider bar or up / down arrows, etc.
[0033] On the editing screen, the second user may have access to many editing functions. Multiple selectable GUI components 162 may be displayed for switching between the front and rear cameras, adjusting the recording speed, adjusting shooting settings, applying filters, setting a shooting delay timer, etc. An effects component 164 may be selectable to access a catalog of available effects to be applied to the second video 66. An upload component 166 may be selectable to retrieve material stored on the camera reel or remote storage of the second client computing device 18B, rather than recording within the client program 22 using the camera. The audio description 168 may include information about an audio track used with the second video 66, which may be the original or selected from a catalog of available tracks. The default audio track may be the same audio track used in the first video 30 as part of the editing model 48 applied to the second video 66. Once the second user has completed the second video 66, they may cancel the prepared video using the cancel button 170 or proceed to final touches before publication using the accept button 172.
[0034] The second user may use the same editing model 48 as the first video 30 when publishing the second video 66. Alternatively, referring to Figure 10, the GUI 32 is configured to allow the second user to make one or more modifications to the editing operations 50 after the editing operations 50 have been applied but before the second video 66 is published. For example, the person riding the bicycle in the second video 66 may be riding at a different angle than the motorcycle rider in the first video 30, and the second user may decide that the second text box 80D should be positioned at a matching angle. Therefore, selecting the accept button 172 may lead to a video editing subscreen 174 that provides more options for editing the second video 66. Multiple selectable GUI components 176 may provide, for example, access to filters, video clip adjustments, voice effects, voiceovers, and subtitles. Another set of multiple selectable GUI components 178 may provide, for example, access to additional sounds, effects, text boxes, or stickers. The video editing subscreen 174 may receive an input 180 from a second user to rotate a second text box 80D, for example, by a rotation input with one or two fingers. As shown in the figure, the second user adjusted the second text box 80D to an angle of 52 degrees. The second user may save the changes and proceed to the same video publishing screen 34 described above, referring to the first video 30 by selecting GUI component 182. In this example, if the second user further modifies the editing model 70, the editing model 70 may be updated to reflect the new angle and any other modifications or additions to the editing operation 50 and sent to the video server platform 10 along with the publishing request 68. A new editing model identifier may be created to correspond to the modified editing model 70.
[0035] Figure 11 shows another example of a video viewing screen 36 that displays a second video 66 for other users to view. For example, similar functionality can be presented to display the first video 30 via a selectable GUI component 114. Here, after the editing operation 50 is applied as described above, the second video 66 is the first user's achievement 184 table This may include the indication. table The indication may include one or more of the following: the account name of the first user, the profile of the first user and / or a link to the first video 30, and a phrase such as "INSPIRED BY" indicating that the second user is not the original creator. In this way, the first user can be assured that their contribution to the video server platform 10 is not being claimed by others. Furthermore, in some implementations, if the second user receives a reward for success (e.g., the number of views or the number of videos subsequently inspired), a portion of the reward may be transferred to the first user for inspiration.
[0036] Figure 12 shows a flowchart of Method 1200 according to the present disclosure. Method 1200 may be implemented by the computing system 100 shown in Figures 1 and 2. In 1202, Method 1200 may optionally include, in the video server platform, storing an editing model within a video object containing the first video, or including an editing model identifier in the video object that references the location where the editing model is stored. As described above, the editing model identifier may be used to reduce the amount of data transmitted. In block 1204, Method 1200 includes displaying a first video, published on the video server platform by a first user, to a second user who is viewing the first video. In 1206, Method 1200 may include displaying a graphical user interface having selectable input components configured to allow selection of an editing model for the first video, which includes a set of editing operations to be applied to the first video. In 1208, Method 1200 may include applying the editing operations to a second video, depending on the selection of the selectable input components. Therefore, the selectable input components of the GUI are available to the second user, allowing them to easily reuse the editing operations selected by the first user, and providing them with interesting concepts that have already been created to try out. This may be particularly useful for inexperienced users who may enjoy using the video server platform but do not yet have the skills to compose their own original videos.
[0037] In some implementations, editing operations may include at least one of the following: adding text boxes, formatting text boxes, applying filters, adding stickers, adding or modifying audio tracks, setting the coordinates of text boxes or stickers, or setting the timing of text boxes or stickers. More types of editing operations may also be included. Thus, the first user has many options available for creating creative videos that other users can follow. In some implementations, applying editing operations to a second video is permitted based on at least the first user's sharing permission. Such sharing permission may be set at the video level or the account level. This allows the first user to have creative control over the first video, and other users are allowed to copy the editing model only if the first user willingly gives permission to do so.
[0038] In 1210, method 1200 is the first user's contribution after the editing operation has been applied. tableThe method may also include including the reference in the second video. Thus, the first user is assured that any particular ideas for their video editing will not be unfairly attributed to anyone who has copied them. Furthermore, the credit may, in some cases, include a portion of the revenue earned from the second video. In 1212, the method 1200 may also include displaying a reference video of the first video on the second video within the video editing screen of a graphical user interface. The reference video may be made available to the second user as they create the second video to ensure that the material and editing operations are well matched. In 1214, the method 1200 may also include playing and pausing the reference video in sync with the second video while the second video is being filmed and / or edited. Thus, the second user can pause and resume filming or playback as needed without worrying about finding the same timestamps on the reference video. In 1216, method 1200 may include adjusting the reference video in terms of transparency, size, and position in response to input from a second user on the video editing screen. Therefore, the reference video may be flexibly modified to suit any individual video and user circumstances. Finally, in 1218, method 1200 may include publishing the second video created by the second user on a video server platform. Once published, the second video may be viewed by other users who wish to try the same editing model.
[0039] In some embodiments, the methods and processes described herein may be linked to a computing system of one or more computing devices. Specifically, such methods and processes may be implemented as computer application programs or services, application programming interfaces (APIs), libraries, and / or other computer program products.
[0040] Figure 13 schematically illustrates a non-limiting embodiment of a computing system 1300 capable of implementing one or more of the methods and processes described above. The computing system 1300 is shown in a simplified form. The computing system 1300 may embody the computing system 100 shown in Figures 1 and 2 described above. The computing system 1300 may take the form of one or more personal computers, server computers, tablet computers, home entertainment computers, network computing, game devices, mobile computing devices, mobile communication devices (e.g., smartphones) and / or other computing devices, and wearable computing devices, such as smart watches and head-mounted augmented reality devices.
[0041] The computing system 1300 comprises a logical processor 1302, a volatile memory 1304, and a non-volatile storage device 1306. The computing system 1300 may optionally include a display subsystem 1308, an input subsystem 1310, a communication subsystem 1312, and / or other components not shown in Figure 13.
[0042] The logical processor 1302 includes one or more physical devices configured to execute instructions. For example, the logical processor may be configured to execute instructions that are part of one or more applications, programs, routines, libraries, objects, components, data structures, or other logical structures. Such instructions may be implemented to perform tasks, realize data types, transform the state of one or more components, achieve technical effects, or achieve desired results.
[0043] A logical processor may include one or more physical processors (hardware) configured to execute software instructions. Additionally or alternatively, a logical processor may include one or more hardware logic circuits or firmware devices configured to execute hardware-implemented logic or firmware instructions. The processor of the logical processor 1302 may be single-core or multi-core, and the instructions executed thereon may be configured for sequential, parallel, and / or distributed processing. Individual components of the logical processor may optionally be distributed across two or more separate devices located remotely and / or configured for coordinated processing. Embodiments of the logical processor may be virtualized and executed by computing devices connected to a remotely accessible network configured in a cloud computing setup. In such cases, it should be understood that these virtualized embodiments run on different physical logical processors on various different machines.
[0044] The non-volatile storage device 1306 includes one or more physical devices configured to hold instructions executable by a logical processor in order to implement the methods and processes described herein. When such methods and processes are implemented, the state of the non-volatile storage device 1306 may be transformed, for example, to hold different data.
[0045] The non-volatile storage device 1306 may include removable and / or built-in physical devices. The non-volatile storage device 1306 may include optical memory (e.g., CD, DVD, HD-DVD, Blu-ray disc, etc.), semiconductor memory (e.g., ROM, EPROM, EEPROM, flash memory, etc.), and / or magnetic memory (e.g., hard disk drive, floppy disk drive, tape drive, MRAM, etc.), or other mass storage technology. The non-volatile storage device 1306 may include non-volatile, dynamic, static, read / write, read-only, sequential access, position-addressable, file-addressable, and / or content-addressable devices. It will be understood that the non-volatile storage device 1306 is configured to retain instructions even when power to the non-volatile storage device 1306 is cut off.
[0046] The volatile memory 1304 may include a physical device that has random access memory. The volatile memory 1304 is typically used by the logical processor 1302 to temporarily store information during the processing of software instructions. If power to the volatile memory 1304 is cut off, it is understood that the volatile memory 1304 will not continue to store instructions.
[0047] The logic processor 1302, the volatile memory 1304, and the non-volatile storage device 1306 may be integrated together into one or more hardware logic components. Such hardware logic components may include, for example, field-programmable gate arrays (FPGAs), programmatic and application-oriented integrated circuits (PASICs / ASICs), programmatic and application-oriented standard products (PSSPs / ASSPs), systems-on-a-chip (SOCs), and complex programmatic logic devices (CPLDs).
[0048] The term “program” may be used to describe a mode of computing system 1300, typically implemented in software, to execute a specific function, which involves a conversion process that specially configures the program to perform a certain function using a portion of volatile memory. Thus, a program may be instantiated using a portion of volatile memory 1304 via a logical processor 1302 that executes instructions held by a non-volatile memory 1306. It will be understood that different modules, programs, and / or engines may be instantiated from the same application, service, code block, object, library, routine, API, function, etc. Similarly, the same program may be instantiated by different applications, services, code block, object, routine, API, function, etc. The term “program” may include individuals or groups such as executable files, data files, libraries, drivers, scripts, database records, etc.
[0049] The display subsystem 1308, if included, may be used to present a visual representation of the data held by the non-volatile memory 1306. This visual representation may take the form of a GUI. Since the methods and processes described herein modify the data held by the non-volatile memory and transform the state of the non-volatile memory, the state of the display subsystem 1308 may also be transformed to visually represent the changes in the underlying data. The display subsystem 1308 may include one or more display devices utilizing substantially any type of technology. Such display devices may be combined with the logical processor 1302, volatile memory 1304 and / or non-volatile memory 1306 within a shared enclosure, or such display devices may be peripheral display devices.
[0050] The input subsystem 1310 may include, if included, one or more user input devices, such as a keyboard, mouse, touchscreen, or game controller, and may interact with them. In some embodiments, the input subsystem may include, and interact with, selected natural user input (NUI) components. These components may be integrated or peripheral, and the transmission and / or processing of input actions may be handled onboard or offboard. Exemplary NUI components may include a microphone for speech and / or voice recognition, an infrared camera, color camera, stereo camera, and / or depth camera for machine vision and / or gesture recognition, a head tracker, eye tracker, accelerometer, and / or gyroscope for motion detection and / or intent recognition, an electric field sensing component for evaluating brain activity, and / or any other suitable sensors.
[0051] The communication subsystem 1312, if included, may be configured to enable communication between the various computing devices described herein and other devices. The communication subsystem 1312 may include wired and / or wireless communication devices compatible with one or more different communication protocols. In a non-limiting example, the communication subsystem may be configured to communicate via a wireless telephone network, or via a wired or wireless local or wide area network, such as HDMI® over a Wi-Fi® connection. In some embodiments, the communication subsystem may enable the computing system 1300 to send and receive messages with other devices over a network such as the Internet.
[0052] The following paragraphs provide additional support to the claims of this application. One embodiment provides a computing system, comprising a client computing device having a processor, the processor executing a client program to display a first video published on a video server platform by a first user to a second user viewing the first video, displaying a graphical user interface having an edit model of the first video, the edit model comprising a set of edit operations to be applied to the first video, the edit operations to be applied to the second video in accordance with the selection of the selectable input component, and the edit operations to be applied to the second video, the edit operations to be published on the video server platform by the second user for viewing by other users. In this embodiment, additionally or alternatively, the edit operations include at least one of adding a text box, formatting the text box, applying a filter, adding a sticker, adding or modifying an audio track, setting the coordinates of the text box or sticker, or setting the timing of the text box or sticker. In this embodiment, additionally or alternatively, the client program is permitted to apply editing operations to the second video based on sharing permissions of at least the first user. In this embodiment, additionally or alternatively, the video server platform is configured to store the editing model within a video object containing the first video, or to include an editing model identifier within the video object that references the location where the editing model is stored. In this embodiment, additionally or alternatively, after the editing operations are applied, the second video is credited to the first user. tableThis includes the following. In this embodiment, as an addition or alternative, the graphical user interface is configured to allow the second user to make one or more modifications to the editing operations after the editing operations have been applied and before the second video is published. In this embodiment, as an addition or alternative, the graphical user interface further comprises a video editing screen in which a reference video of the first video is displayed on the second video. In this embodiment, as an addition or alternative, the reference video is configured to play and pause in sync with the second video during video recording and / or editing of the second video. In this embodiment, as an addition or alternative, the reference video is adjustable by the second user on the video editing screen in at least one of transparency, size, and position. In this embodiment, as an addition or alternative, the client computing device is configured to display a plurality of videos, including the editing model of the first video, or a list of user accounts that have published the plurality of videos, by running the client program.
[0053] Another embodiment provides a method, which includes displaying a first video, published on a video server platform by a first user, to a second user viewing the first video. The method includes displaying a graphical user interface comprising an editing model of the first video, the editing model comprising a set of editing operations to be applied to the first video, and a selectable input component configured to allow selection of the editing model. The method includes applying the editing operations to a second video in accordance with the selection of the selectable input component. The method includes publishing the second video to the video server platform by the second user. In this embodiment, additionally or alternatively, the editing operations include at least one of adding a text box, formatting a text box, applying a filter, adding a sticker, adding or modifying an audio track, setting the coordinates of a text box or sticker, or setting the timing of a text box or sticker. In this embodiment, additionally or alternatively, applying the editing operations to the second video is permitted based on at least the sharing permission of the first user. In this embodiment, additionally or alternatively, the method further includes, in the video server platform, storing the editing model within a video object containing the first video, or including an editing model identifier within the video object that references the location where the editing model is stored. In this embodiment, additionally or alternatively, the method, after the editing operation has been applied, the first user's credit tableThe method further includes including the reference video in the second video. In this embodiment, as an addition or alternative, the method further includes displaying the reference video of the first video on the second video within the video editing screen of the graphical user interface. In this embodiment, as an addition or alternative, the method further includes playing and pausing the reference video in sync with the second video while the second video is being filmed and / or edited. In this embodiment, as an addition or alternative, the method further includes adjusting the reference video in at least one of transparency, size and position in response to input from the second user on the video editing screen.
[0054] Another embodiment provides a computing system comprising a server computing device of a video server platform. The server computing device receives a first video from a first user of a first client computing device, receives a sharing permission from the first user of the first client computing device indicating that the edited model of the first video can be shared and used by other users of the video server platform, and is configured to publish the first video on the video server platform. The server computing device is configured to transmit the first video to a second user of a second client computing device for viewing in response to a viewing request from the second user. The server computing device is configured to transmit the edited model of the first video, which includes a set of editing operations applied to the first video, to the second user, and to publish a second video by the second user on the video server platform, with the editing operations already applied in response to the second user selecting selectable input components within a graphical user interface. In this embodiment, additionally or alternatively, the editing operation includes at least one of the following: adding a text box, formatting a text box, applying a filter, adding a sticker, adding or modifying an audio track, setting the coordinates of a text box or sticker, or setting the timing of a text box or sticker.
[0055] It will be understood that the configurations and / or approaches described herein are illustrative in nature and are subject to numerous modifications, and therefore these specific embodiments or examples should not be considered restrictively. The specific routines or methods described herein may represent one or more of any number of processing strategies. For this reason, the various operations illustrated and / or described may be performed in parallel, in any other order, or omitted, in the order illustrated and / or described. Similarly, the order of the processes described above may be changed. Where used herein, the phrase "and / or" means any or all of the multiple possibilities stated.
[0056] The subject matter of this disclosure includes novel and non-obvious combinations and subcombinations of the various processes, systems, configurations, and other features, functions, operations, and / or characteristics disclosed herein, as well as all equivalents thereof.
Claims
1. A computing system, A client computing device is provided with a processor, and the processor executes a client program, The first video, published on the video server platform by the first user, is displayed to the second user who is viewing the first video. Displaying a graphical user interface comprising a first video editing model, the editing model having selectable input components configured to allow selection of the editing model, which includes a set of editing operations applied to the first video, Depending on the selection of the selectable input component, the editing operation is applied to the second video. The second user's second video is configured to be made public on the video server platform for viewing by other users. The graphical user interface further comprises a video editing screen in which a reference video of the first video is displayed on the second video. If the second user pauses recording the second video via the play / pause button, the reference video is paused at the same time. Computing system.
2. The editing operation includes at least one of the following: adding a text box, formatting the text box, applying a filter, adding a sticker, adding or modifying an audio track, setting the coordinates of the text box or sticker, or setting the timing of the text box or sticker. The computing system according to claim 1.
3. The client program is permitted to apply the editing operation to the second video, at least based on the sharing permission of the first user. The computing system according to claim 1.
4. The video server platform is configured to store the editing model within a video object containing the first video, or to include an editing model identifier within the video object that references the location where the editing model is stored. The computing system according to claim 1.
5. After the editing operation is applied, the second video includes a display of the first user's achievements. The computing system according to claim 1.
6. The graphical user interface is configured to allow the second user to make one or more modifications to the editing operations after the editing operations have been applied and before the second video is published. The computing system according to claim 1.
7. The aforementioned reference video is set to play and pause in sync with the second video while the second video is being filmed and / or edited. The computing system according to claim 1.
8. The reference video is adjustable by the second user in the video editing screen in terms of at least one of transparency, size, and position. The computing system according to claim 1.
9. The client computing device is configured to either display a plurality of videos, including the editing model of the first video, or display a list of user accounts that have published the plurality of videos, by executing the client program. The computing system according to claim 1.
10. It is a method, Displaying a first video published on the video server platform by a first user to a second user who is viewing the first video, Displaying a graphical user interface comprising a first video editing model, the editing model having selectable input components configured to allow selection of the editing model, which includes a set of editing operations applied to the first video; Depending on the selection of the selectable input component, the editing operation is applied to the second video, The second video by the second user is made public on the video server platform, The video editing screen of the graphical user interface displays the reference video of the first video on the second video, Includes, If the second user pauses recording the second video via the play / pause button, the reference video is paused at the same time. method.
11. The editing operation includes at least one of the following: adding a text box, formatting the text box, applying a filter, adding a sticker, adding or modifying an audio track, setting the coordinates of the text box or sticker, or setting the timing of the text box or sticker. The method according to claim 10.
12. Applying the aforementioned editing operations to the second video is permitted at least based on the sharing permission of the first user. The method according to claim 10.
13. In the video server platform, the editing model is stored within a video object containing the first video, or an editing model identifier that references the location where the editing model is stored is included within the video object. The method according to claim 10, further comprising:
14. After the editing operation is applied, include the display of the first user's achievements in the second video. The method according to claim 10, further comprising:
15. During the video recording and / or editing of the second video, the reference video is played and paused in sync with the second video. The method according to claim 11, further comprising:
16. In response to the input from the second user on the video editing screen, the reference video is adjusted in at least one of the following ways: transparency, size, and position. The method according to claim 11, further comprising:
17. A computing system, A server computing device for a video server platform, The first video is received from the first user of the first client computing device. The first user of the first client computing device receives a sharing permission indicating that the first video editing model can be shared and used by other users of the video server platform. The first video is made public on the aforementioned video server platform. In response to a viewing request from a second user of a second client computing device, the first video is transmitted to the second user for viewing. The editing model of the first video, which includes a series of editing operations applied to the first video, is transmitted to the second user. A server computing device configured to publish a second video by the second user on the video server platform, which has already had the editing operation applied in response to the second user selecting an input component selectable within the graphical user interface. Includes, The graphical user interface further comprises a video editing screen in which a reference video of the first video is displayed on the second video. If the second user pauses recording the second video via the play / pause button, the reference video is paused at the same time. Computing system.
18. The editing operation includes at least one of the following: adding a text box, formatting the text box, applying a filter, adding a sticker, adding or modifying an audio track, setting the coordinates of the text box or sticker, or setting the timing of the text box or sticker. The computing system according to claim 17.