Video marking method, device, terminal, storage medium and program product
By introducing the function of users to add video nodes and notes in the video player, the problem of being unable to independently mark video focus in the prior art is solved, improving user experience and reducing operating costs.
Patent Information
- Application Number
- CN202210400152.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-04-15
- Publication Date
- 2025-05-16
- Estimated Expiration
- 2042-04-15
AI Technical Summary
The existing video player platform cannot configure video nodes for all videos, resulting in users being unable to independently mark video focus and operating costs are high.
Provides a video dot method, allowing users to add target node marks in the video playback interface, and supports users to add notes to nodes, displaying a preview window to display video thumbnails and notes.
It improves the autonomy and operational convenience of users' video management, improves user experience, and reduces operating costs to a certain extent.
Smart Images

Figure CN116962793B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of human-computer interaction technology, and in particular to a video marking method, device, terminal, storage medium and program product. Background Art
[0002] Video dotting refers to marking the playback time corresponding to important video content in the progress bar of the video player. Users can quickly jump to the key content for viewing by clicking the nodes in the progress bar.
[0003] In the related art, the video player platform will mark the hot segments for popular videos, and the progress bar with nodes is generated by the platform's backend operators through background configuration. Users can click on the node position to jump the video to the progress corresponding to the node for playback, but cannot perform other related operations based on the node.
[0004] However, due to operational cost constraints, not all videos can be configured with video nodes for viewers, and operators mark possible hot spots in the video based on experience, which cannot meet the video viewing and marking needs of various users. Summary of the invention
[0005] The embodiments of the present application provide a video marking method, device, terminal, storage medium and program product, which can improve the autonomy of user video marking, facilitate operation, improve user experience, and reduce operating costs to a certain extent. The technical solution is as follows:
[0006] On the one hand, an embodiment of the present application provides a video marking method, the method comprising:
[0007] In response to a dot operation in the video playback interface, a target node mark corresponding to the target node is added to the video progress bar based on the video playback progress;
[0008] In response to a note adding operation on the target node, generating note content corresponding to the target node;
[0009] In response to a first trigger operation on the target node mark, a preview window is displayed at the target node mark, wherein the preview window includes a thumbnail of the video screen corresponding to the target node and the note content.
[0010] On the other hand, an embodiment of the present application provides a video dotting device, the device comprising:
[0011] A node adding module, for responding to a dot operation in the video playback interface, and adding a target node mark corresponding to the target node in the video progress bar based on the video playback progress;
[0012] A note adding module, configured to generate note content corresponding to the target node in response to a note adding operation on the target node;
[0013] The preview module is used to respond to a first trigger operation on the target node mark and display a preview window at the target node mark, wherein the preview window includes a thumbnail of the video screen corresponding to the target node and the note content.
[0014] On the other hand, an embodiment of the present application provides a terminal, including a processor and a memory; the memory stores a computer program, and when the processor executes the computer program, the steps of the video dotting method described in the above aspects are implemented.
[0015] On the other hand, an embodiment of the present application provides a computer-readable storage medium on which a computer program is stored. When the computer program is loaded and executed by a processor, the steps of the video dotting method described in the above aspects are implemented.
[0016] According to one aspect of the present application, a computer program product is provided, including a computer program, and when the computer program is executed by a processor, the steps of the video dotting method provided in various optional implementations of the above aspects are implemented.
[0017] The technical solution provided by the embodiment of the present application includes at least the following beneficial effects:
[0018] In the embodiment of the present application, a video marking method is provided, which allows users to mark the key points of the video by themselves when watching the video, so that users can quickly find the key points when watching it later. In addition, users are supported to add notes to the video and record their thoughts on the video content. Compared with the platform's unified marking method, personalized video marking and note adding can improve the user's autonomy in video marking, so that the video marking meets the user's own needs, is easy to operate, and can improve the user experience. And the user's own marking and recording can reduce operating costs to a certain extent. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] Figure 1 is a schematic diagram of a real-time environment shown in an exemplary embodiment of the present application;
[0020] Figure 2 is a flow chart of a video dotting method shown in an exemplary embodiment of the present application;
[0021] Figure 3 is a schematic diagram of a video playback interface shown in an exemplary embodiment of the present application;
[0022] Figure 4 is a schematic diagram of a preview window shown in an exemplary embodiment of the present application;
[0023] Figure 5 is a flow chart of a video dotting method shown in another exemplary embodiment of the present application;
[0024] Figure 6 is a schematic diagram of a video playback interface shown in another exemplary embodiment of the present application;
[0025] Figure 7 is a schematic diagram of a node movement trajectory shown in an exemplary embodiment of the present application;
[0026] Figure 8 is a schematic diagram of a video playback interface shown in another exemplary embodiment of the present application;
[0027] Fig. 9 is a schematic diagram of a preview window shown in another exemplary embodiment of the present application;
[0028] Fig.10 is a schematic diagram of a node editing interface shown in an exemplary embodiment of the present application;
[0029] Fig.11 is a schematic diagram of a node adjustment operation shown in an exemplary embodiment of the present application;
[0030] Fig.12 is a schematic diagram of a node sharing interface shown in an exemplary embodiment of the present application;
[0031] Fig.13 is a schematic diagram of comment content shown in an exemplary embodiment of the present application;
[0032] Fig.14 is an architectural diagram of a node editing interface shown in an exemplary embodiment of the present application;
[0033] Fig.15 is a schematic diagram of a note viewing operation shown in an exemplary embodiment of the present application;
[0034] Fig.16 is a flow chart of a video dotting method shown in another exemplary embodiment of the present application;
[0035] Fig.17 is a schematic diagram of data types shown in an exemplary embodiment of the present application;
[0036] Fig.18 is a data acquisition flow chart shown in an exemplary embodiment of the present application;
[0037] Fig.19 is an architectural diagram of a video playback interface shown in an exemplary embodiment of the present application;
[0038] Fig. 20is a node rendering flow chart shown in an exemplary embodiment of the present application;
[0039] Fig.21 is a flow chart of a video dotting method shown in another exemplary embodiment of the present application;
[0040] Fig. 22 is a structural block diagram of a video dotting device shown in an exemplary embodiment of the present application;
[0041] Fig.23 It is a structural block diagram of a terminal shown in an exemplary embodiment of the present application. DETAILED DESCRIPTION
[0042] In order to make the objectives, technical solutions and advantages of the present application clearer, the implementation methods of the present application will be further described in detail below with reference to the accompanying drawings.
[0043] The term "multiple" as used herein refers to two or more than two. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the related objects are in an "or" relationship.
[0044] Figure 1 A schematic diagram of an implementation environment provided by an embodiment of the present application is shown. The implementation environment may include: a terminal 110 and a backend server 120, wherein a client with a video playback function is installed in the terminal 110. Only one terminal 110 is shown in the figure, and in an actual application environment, more terminals may be included to interact with the backend server.
[0045] Terminal 110 is used to display a video playback interface, which includes a dot control and a video progress bar. When a trigger operation on the dot control is received, terminal 110 creates a target node based on the video playback progress and adds a target node mark at the corresponding position of the video progress bar. In addition, the user can add note content to the target node through terminal 110. Terminal 110 sends the target node data containing information such as note content and node corresponding time to the background server 120. The background server is used to associate and store the target node data, video identifier and user account identifier. When the user closes the video and plays it again through terminal 110, terminal 110 obtains the historical node data from the background server 120 and displays the node mark corresponding to the historical node in the video playback interface, so that the user can view the previously added nodes and note content.
[0046] Please refer to Figure 2, which shows a flow chart of a video dotting method provided by an exemplary embodiment of the present application. This embodiment is described by taking the method executed by a terminal with a video playback function as an example, and the method includes the following steps:
[0047] Step 201, in response to a dot operation in the video playback interface, a target node mark corresponding to the target node is added to the video progress bar based on the video playback progress.
[0048] The terminal plays the video content through the video playback interface. When receiving the user's dotting operation, the terminal creates a new video node (i.e., the target node) based on the current video playback progress, and displays the target node mark corresponding to the target node on the interface, so that the user knows that the playback progress corresponds to the node. In one possible implementation, the target node mark is displayed corresponding to the video playback progress corresponding to the target node. For example, the terminal overlays the target node mark on the video progress bar based on the progress bar position corresponding to the video playback progress, or displays it on one side of the video progress bar and points to the progress bar position corresponding to the video playback progress. Later, when the user closes the video playback interface and triggers the playback of the video again, the terminal automatically displays the target node mark.
[0049] For example, when the terminal receives a dot operation when the video is played to 00:58, the terminal creates a target node with the play time point being 00:58, and adds a target node mark at the position corresponding to 00:58 in the video progress bar.
[0050] Optionally, the tapping operation may be a triggering operation on a specific control in the video playback interface, or may be a quick operation that meets preset conditions (eg, a long press operation, a double-click operation, etc.).
[0051] Indicatively, Figure 3 As shown, a video progress bar 301 is displayed in the video playback interface. As the video is played, the terminal continuously updates the playback progress indicated by the progress bar. When a dot operation is received, the terminal adds a target node mark 302 at the position corresponding to the current video playback progress in the video progress bar 301.
[0052] Step 202, in response to the note adding operation on the target node, generate the note content corresponding to the target node.
[0053] In a possible implementation, the video node supports adding notes. By adding notes to the node, the user can record his or her thoughts on the video content corresponding to the target node while watching the video, so as to facilitate quick review or sharing later.
[0054] Illustratively, the note content may include text, pictures, animations, video clips and other information.
[0055] If there are other nodes in the currently playing video (such as nodes added when watching the video last time), the user can also add notes or modify notes for other nodes.
[0056] Step 203, in response to the first trigger operation of marking the target node, a preview window is displayed at the target node mark, and the preview window includes a video screen thumbnail and note content corresponding to the target node.
[0057] The nodes and notes of the video are the user's record of the key content or interesting content of the video. Therefore, in order to facilitate the user to view the video content and note content at the node, in a possible implementation, when the first trigger operation of marking the target node is received, the terminal marks the target node to display a preview window. For example, when the first trigger operation of marking the target node at 00:58 of the video playback time is received, the terminal displays a thumbnail of the video screen at 00:58 and the note content through the preview window.
[0058] Optionally, the node mark corresponding to the video node with the note content added is different from the node mark corresponding to the video node without the note content added. For example, a pencil image is additionally displayed in the node mark corresponding to the video node with the note content added.
[0059] Optionally, the preview window is displayed overlaid on the video playback interface. In order to reduce the impact on the video content, the preview window size is smaller than the video playback window size and is displayed near the target node mark.
[0060] When the terminal screen is a touch screen, the first trigger operation may be a pressing operation, a clicking operation or a dragging operation on the target node mark; when the terminal screen is a non-touch screen, the first trigger operation may be a hovering operation of the input device pointer (such as a mouse pointer) on the target node mark, a clicking operation, a pressing operation or a dragging operation on the target node mark by the input device, etc. And the terminal continues to display the preview window within a preset time (such as 1s) after the first trigger operation ends. Optionally, the first trigger operation is different from the operation type of the playback progress adjustment operation, for example, the first trigger operation is a mouse hovering operation, and the playback progress adjustment operation is a mouse click operation. Or, the first trigger operation is the same as the operation type of the playback progress adjustment operation, for example, when a single-click operation on the target node mark is received, the terminal displays an operation prompt pop-up window, and the operation prompt pop-up window contains a note viewing control for triggering the display of the preview window and a progress adjustment control for triggering the adjustment of the playback progress. Then, the first trigger operation is a single-click operation on the target node mark and a single-click operation on the note viewing control, and the playback progress adjustment operation is a single-click operation on the target node mark and a single-click operation on the progress adjustment control. The embodiment of the present application does not limit this.
[0061] Indicatively, Figure 4 As shown, when receiving the first trigger operation of marking the target node 401, the terminal displays a preview window 402. The preview window 402 displays a video screen thumbnail corresponding to the target node and part or all of the note content.
[0062] In summary, in the embodiments of the present application, a video marking method is provided, which allows users to mark the key points of the video by themselves when watching the video, so that users can quickly find the key points when watching it later. In addition, users are supported to add notes to the video and record their thoughts on the video content. Compared with the platform's unified marking method, personalized video marking and note adding can improve the user's autonomy in video marking, make video marking meet the user's own needs, easy to operate, and can improve the user experience. And the user's own marking and recording can reduce operating costs to a certain extent.
[0063] The nodes in the embodiment of the present application are video nodes added by the user. In a possible implementation, the user can add and modify notes, adjust the node position, and share the node on the node added by the user.
[0064] Please refer to Figure 5 , which shows a flow chart of a video dotting method provided by another exemplary embodiment of the present application. This embodiment takes the method executed by a terminal with a video playback function as an example for explanation, and the method includes the following steps:
[0065] Step 501, in response to a dot operation in the video playback interface, a target node mark corresponding to the target node is added to the video progress bar based on the video playback progress.
[0066] In a possible implementation, the video playback interface includes a dot-marking control, and the user adds a node by triggering the dot-marking control.
[0067] The terminal displays the dotting prompt information around the dotting control. Optionally, the terminal displays the dotting prompt information when it detects that the video playback interface is displayed for the first time in the user's life cycle, or the terminal displays the dotting prompt information every time the video playback interface is displayed. After the terminal displays the dotting prompt information, the timer is started, and the prompt information is automatically stopped when the timer duration is reached, or the terminal stops displaying the prompt information after receiving a trigger operation on the dotting control. This embodiment of the present application is not limited to this.
[0068] like Figure 6As shown, a dot control 601 is displayed in the video playback interface. When the terminal displays the video playback interface, it first determines the user life cycle and whether it is the first time to enter the video playback interface. Specifically, the terminal determines whether it is the first time to enter the video playback interface based on the local storage value localstroge used to indicate the floating state. If it is determined that the current login account enters the video playback interface for the first time, a prompt message 602 is displayed through the video playback interface, such as "make a label, quickly mark the key points".
[0069] Step 501 specifically includes the following steps 501a to 501b (not shown in the figure):
[0070] Step 501a, in response to a triggering operation on the dot control, determining a mark movement trajectory.
[0071] The starting point of the mark moving track is the display position of the dot control or the progress bar position indicated by the dot control, and the end point of the mark moving track is the progress bar position corresponding to the video playback progress.
[0072] In a possible implementation, a dot-marking animation is provided for the video, and the animation content is that the node mark jumps from the dot-marking control or the progress bar position indicated by the dot-marking control to the current playback position of the video progress bar. The progress bar position indicated by the dot-marking control can be the progress bar position with the same horizontal coordinate as the dot-marking control in the video playback interface, or other preset progress bar positions pointed to by the dot-marking control.
[0073] Optionally, the marker movement track is a straight line, a curve or other preset shape track connecting the dot control and the progress bar position. The marker movement track is invisible, or the terminal displays the marker movement track.
[0074] Illustratively, when a trigger operation on a dot control is received, the terminal generates a Bezier curve based on the display position of the dot control and the position of the progress bar corresponding to the video playback progress, and determines the calculated Bezier curve as the marker movement trajectory. Figure 7 A third-order Bezier curve is shown. The terminal can form a more complex marker movement trajectory by connecting multiple Bezier curves to achieve complex animation effects. The cubie-bezier function in the terminal Cascading Style Sheets (CSS) writes the Bezier curve, without the need for developers to manually calculate. After the node marker moves, the terminal can set the css-keyframes keyframe to describe the state of the node marker at different display positions, and set a timer to control the floating window to display the node marker.
[0075] Step 501b, controlling the target node marker to move along the marker movement trajectory to the end point.
[0076] Indicatively, Figure 8 As shown, when a trigger operation is received on the dot control 801, the terminal determines the mark moving track 802 based on the position of the dot control 801 and the position of the progress bar corresponding to the current video playback progress, and then controls the target node mark 803 to move along the mark moving track. After the mark moving track 803 moves to the end point, the terminal displays the target node mark 803 at the position.
[0077] Step 502: In response to a second trigger operation of marking a target node, a preview window is displayed, wherein the preview window includes a video screen thumbnail and a node editing control.
[0078] In a possible implementation, the user adds notes to the node through the preview window. The second trigger operation may be a press operation, a click operation, or a drag operation on the target node mark; when the terminal screen is a non-touch screen, the second trigger operation may be a hover operation of controlling the input device pointer (such as a mouse pointer) on the target node mark, a click operation, a press operation, or a drag operation on the target node mark through the input device. And the terminal continues to display the preview window within a preset time (such as 1s) after the second trigger operation ends. Optionally, the operation type of the first trigger operation is different from that of the second trigger operation, or the operation type of the first trigger operation is the same as that of the second trigger operation. This embodiment of the present application is not limited to this.
[0079] like Fig. 9 As shown, when receiving the second trigger operation of marking the target node, the terminal displays a preview window 901. The preview window 901 displays a video screen thumbnail and a preset text content "No thoughts and notes yet~". In addition, the preview window 901 also displays a node editing control 902, such as "Go to add". The user triggers the node editing control 902 to display the node editing interface, and edits the target node from the node editing interface. The editing operation includes the note adding operation.
[0080] Step 503: In response to the triggering operation on the node editing control, a node editing interface corresponding to the target node is displayed.
[0081] Optionally, the node editing interface is displayed in an overlay on the upper layer of the video playback interface, and the overlaid video playback interface pauses the video. Step 503 specifically includes the following steps 503a to 503b (not shown in the figure):
[0082] Step 503a: in response to a triggering operation on a node editing control, pausing the video content in the video playback interface.
[0083] Before the terminal displays the node editing interface, the player in the video playback interface is paused. After the user's editing or sharing operation is completed and the node editing interface is closed, the terminal continues to play the video through the video playback interface. This prevents the user from missing part of the video content when performing editing and sharing operations. In order to ensure that the terminal can continue to play the video based on the progress when the playback is paused after the user closes the interface editing interface, in response to the triggering operation of the node editing control, the terminal pauses the video content in the video playback interface and records the video playback progress. The video playback can be resumed later based on the recorded video playback progress.
[0084] Step 503b, displaying the node editing interface overlaid on the video playback interface.
[0085] Optionally, the display size of the node editing interface is smaller than the display size of the video playing interface, or the display size of the node editing interface is consistent with the display size of the video playing interface.
[0086] Indicative, Fig.10 A node editing interface 1001 is shown. The left side of the node editing interface 1001 is used to loop the video clips before and after the target node, the right side is used to generate note content, and the bottom contains a sharing control for triggering a sharing operation.
[0087] Step 504: Determine the preview period based on the play time corresponding to the target node and the preview duration.
[0088] In a possible implementation, the terminal also plays video clips before and after the target node through the node editing interface to facilitate the user to adjust the node.
[0089] The terminal first determines the preview period based on the play time and preview duration corresponding to the target node. Schematically, the terminal determines the 30 seconds before and after the play time corresponding to the target node as the preview period. For example, if the play time corresponding to the target node is 00:58, the preview period is 00:28 to 01:28.
[0090] Step 505: Play the video content corresponding to the preview period in the video preview area of the node editing interface.
[0091] A preview progress bar corresponding to the preview period is displayed in the video preview area, and the preview progress bar includes a target node mark.
[0092] like Fig.10 As shown, the left side of the node editing interface 1001 includes a video preview area, in which a video preview window 1005 and a preview progress bar 1006 are displayed, and a target node mark 1007 is displayed in the preview progress bar 1006 .
[0093] In another possible implementation, the size of the video preview window is adjustable. For example, the terminal can collapse the note editing area and adjust the video preview window to play the video in full screen.
[0094] Step 505 includes the following steps:
[0095] In the video preview area, the video content of the preview period is played through the player instance of the multiplexed video playback interface.
[0096] Due to the limitation of the player software development kit (SDK), the terminal needs to upload a complete video identifier (vid) before it can play the corresponding video. The preview clip is generated based on the user's target node, and there is no corresponding vid. The terminal cannot obtain the video content corresponding to the preview period from the background server alone. Therefore, the node editing interface reuses the current player instance and customizes the display method of the progress bar.
[0097] However, since the terminal plays the video content corresponding to the preview period by reusing the player instance of the video playback interface, if the player instance is reused directly, the video playback progress of the video playback interface will be confused after the user closes the node editing interface. For example, after the terminal displays the node editing interface, it automatically loops and plays the video content of the preview period. If the terminal continues to play the video through the player SDK after the user closes the node editing interface, the corresponding playback time at this time is not the video playback time when the user triggers the node editing control, which may cause the user to manually return to the original video playback progress. The solution to this problem is: the terminal records the video playback progress when entering the node editing interface, and notifies the player SDK to jump to the corresponding progress when exiting the node editing interface.
[0098] In a possible implementation, the terminal automatically loops and plays the video content of the preview period through node editing and clicking, and the user can trigger the pause control in the video preview area to pause the video. In addition, after the user closes the node editing interface, the terminal returns to the player of the video playback interface and automatically resumes playing the video. Step 505 may also include the following steps 1 and 2 (not shown in the figure):
[0099] Step 1: In response to a triggering operation on a play pause control in a video preview area, pausing the video content in the video preview area.
[0100] like Fig.10 As shown, the video preview area also displays a play pause control 1008. When a trigger operation on the play pause control 1008 is received, the terminal pauses playing the video content in the video preview area.
[0101] Step 2: In response to a closing operation on the node editing interface, the node editing interface is closed and video playback on the video playback interface is resumed.
[0102] Specifically, in response to a closing operation on the node editing interface, the terminal closes the node editing interface and starts playing the video from the recorded video playing progress in the video playing interface.
[0103] The terminal records the video playback progress when entering the node editing interface, and notifies the player SDK to jump to the corresponding progress when exiting the node editing interface, so that the playback progress of the two interfaces does not interfere with each other and the video continues to play automatically. For example, when the video plays to 00:58 in the video playback interface, the user triggers the node editing control, and when the preview clip in the node editing interface plays to 01:10, the user closes the node editing interface, then the terminal can continue to play the video from 00:58 in the video playback interface.
[0104] Step 506 , in response to the position adjustment operation on the target node mark in the preview progress bar, updating the target node based on the node position indicated by the position adjustment operation.
[0105] In a possible implementation, the user may adjust the display position of the target node mark by dragging the target node mark in the preview progress bar, thereby updating the playback time corresponding to the target node.
[0106] Optionally, when receiving a position adjustment operation on the target node mark, the terminal automatically pauses the playback of the preview video. The position adjustment operation may be a drag operation on the target node mark, a click operation on the preview progress bar, or a manual input operation of the node playback time. Fig.11 As shown in the figure, when the mouse hovers over the target node mark, a prompt bubble "You can drag to adjust the mark position" appears. The bubble disappears after the mouse is not removed for 3 seconds, and disappears immediately after the mouse is removed. The user can drag the target node mark by pressing the mouse, and the video window screen will pause and switch to the video screen corresponding to the position of the target node mark. The video window will not resume playing after the dragging ends.
[0107] Therefore, when the position of the target node is not appropriate, the user does not need to delete the target node and add it again, but only needs to adjust it through the node editing interface.
[0108] Step 507, generating note content in response to a text input operation in the text editing area of the node editing interface.
[0109] A text editing area is displayed in the node editing interface, and users can add note content or modify existing note content in the text editing area.
[0110] In a possible implementation, the text editing area is two-way bound through the V-model (V-model) to obtain the note content input by the user.
[0111] Schematic. As Fig.10 shown, a text editing area 1002 is displayed on the right side in the node editing interface 1001. When the user has not added a node note, a prompt message for adding a note, such as "Write down your thoughts at this moment", is displayed in the text editing area 1002. Below the text editing area 1002, a tag adding control 1003 and a historical tag adding control 1004 are also displayed. The user can manually enter a topic tag by triggering the tag adding control 1003, or quickly insert a previously used topic tag, such as "#Good memory is not as good as a rotten pen", by triggering the historical tag adding control 1004. If there is no historical tag, the terminal displays the topic tags of the recommended topics.
[0112] The topic tags can be used for other users to search for notes. The display of the topics can determine whether the user uses the topic function for the first time by reading localstroge. If so, the terminal stores the current topic in localstroge. For the topic manually entered by the user, the regular expression (#\s.+$) is used for matching and replaced with the corresponding topic.
[0113] It is worth mentioning that in the implementation shown in the figure, the terminal first executes steps 504 to 506, and then executes step 507. In other possible implementations, the terminal can also first execute step 507 and then execute steps 504 to 506, or the terminal does not execute the content of steps 504 to 506 (that is, directly execute step 507 and subsequent steps after step 503). This application does not make any restrictions on this.
[0114] Step 508, in response to the triggering operation on the sharing control in the node editing interface, display the node sharing interface.
[0115] In a possible implementation, the node editing operation further includes a sharing operation. Among them, the node sharing interface includes a node sharing diagram and at least one method selection control. The node sharing diagram includes at least one of the following: a thumbnail of the video screen, the note content, the moment corresponding to the target node, the video title, a graphic code (such as a QR code), and the account identifier of the currently logged-in account. Different method selection controls correspond to different sharing methods. Specifically, the terminal generates the node sharing diagram through the htmlTocanvas framework. Among them, the size of the sharing diagram is related to the note content. The more the note content, the larger the size of the sharing diagram (for example, the higher the height).
[0116] Schematic. As Fig.12As shown, it shows a node sharing interface. It includes a node sharing diagram and 5 mode selection controls below the node sharing diagram. The node sharing diagram includes a video screen thumbnail, note content "I saw what the teacher said and was inspired~ The art of speaking is the art of thinking, the art of living, and only by loving life can you treat others well~", account identification (user avatar and nickname), and the time corresponding to the target node "0 minutes and 58 seconds". Users can share the information in the node sharing diagram by selecting controls in a triggering manner.
[0117] Step 509 , in response to the triggering operation of the target mode selection control, share the node information according to the target sharing mode and target sharing object corresponding to the target mode selection control.
[0118] Different sharing methods corresponding to different mode selection controls, and the specific sharing content may also be different. In a possible implementation, step 509 includes the following steps:
[0119] Step 509a, in response to the triggering operation of the comment sharing control, a video comment is published in the comment area of the current video, and the video comment includes a video screen thumbnail and note content.
[0120] In a possible implementation, the mode selection control includes a comment sharing control. When a trigger operation on the comment sharing control is received, the terminal shares the video screen thumbnail and the note content to the comment area in the form of a video comment. Fig.13 The effect of sharing a node note to the comment area is shown. Other users can jump to the corresponding video playback progress for viewing by triggering the link in the node sharing comment in the comment area. Specifically, the terminal quickly shares the note content to the comment area by calling the interface provided by the iframe in the comment area.
[0121] Step 509b, in response to the triggering operation of the local save control, the node sharing graph is saved to a local folder.
[0122] When receiving a trigger operation for the local save control, the terminal calls up the local folder of the video playback client to save the image. Specifically, the terminal obtains a blob temporary link and uses a file input stream (FileReader) to save the node sharing graph to a local folder.
[0123] Step 509c, in response to the triggering operation of the communication application control, the node sharing map is sent to the target terminal of the target sharing object by calling the login account in the communication application. The target terminal is used to obtain the link of the current video by scanning the graphic code and start playing the video from the target node in the video playback interface.
[0124] The terminal also provides a control for sharing nodes through other applications, namely, a communication application control. The node sharing diagram shared by the terminal in this way contains graphic code information. Specifically, the terminal generates a QR code through a QR code library (Quick Response Code, QR Code).
[0125] In another possible implementation, when the touch position is located on the communication application control (such as mouse hovering or finger pressing), the terminal displays a picture at the communication application control to obtain a graphic code. The user can scan the picture through other devices to obtain the graphic code to obtain the node sharing map and share it, which solves the problem that the current login device is not convenient for logging into the communication application control.
[0126] In addition, the node sharing interface also includes a link copy control. When receiving a trigger operation on the link copy control, the terminal obtains the current video playback link and adds sharing parameters, as well as records the link source, and generates a node sharing link.
[0127] In summary, the node editing interface contains three main areas, such as Fig.14 As shown, it includes a video preview area, a text editing area, and a control display area (including a sharing control and a saving control). The video preview area also displays a custom progress bar, and the text editing area is composed of a multi-line text input control (textarea) as the main body, which also includes a topic selection and recommendation area.
[0128] Step 510, in response to the first trigger operation of marking a target node, a preview window is displayed at the target node mark, and the preview window includes a video screen thumbnail and note content corresponding to the target node.
[0129] Specifically, step 510 includes the following steps:
[0130] In response to a first trigger operation of marking a target node, part of the note content or all of the note content is displayed in the preview window.
[0131] In a possible implementation, the terminal may display the entire note content through a preview window. The display size of the preview window may vary with the amount of information in the note content, for example, the size of the preview window increases as the note content increases, and the size of the preview window decreases as the note content decreases. Alternatively, the note format such as the font size and image size of the note content in the preview window may vary with the amount of information in the note content, for example, when the note content is large, the terminal may reduce the font size of the note text or reduce the image size accordingly, and when the note content is small, the terminal may enlarge the font size or enlarge the image size, etc.
[0132] In another possible implementation, the note content may have a large number of words. If all of them are displayed, the preview window will be too large and affect the display of the video content. Therefore, the terminal displays the preview window based on the number of preview words (for example, 10 words) or the number of pictures, picture size and other parameters, that is, only part of the note content (for example, the first 10 words of the note content) is displayed. Optionally, in this case, the terminal can also adjust the display size of the preview window based on the note content. This embodiment of the application is not limited to this.
[0133] The video marking method provided in the embodiment of the present application also includes the following steps:
[0134] In response to a trigger operation on a node editing control, the complete note content is displayed through the text editing area of the node editing interface.
[0135] like Fig.15 As shown, since the preview window cannot display detailed content, only part of the note content "Seeing what the teacher said, I was inspired ~ the art of speaking..." is displayed. Therefore, the user can enter the node editing interface by triggering the node editing control in the preview window to view the complete note content.
[0136] In an embodiment of the present application, the node editing interface supports note editing operations, node position adjustment operations, and node information sharing operations. Users can personalize the added nodes, modify or supplement the note content, accurately adjust the node position, and share the nodes and notes with others, thereby giving full play to the role of video nodes and helping users mark and share key content of the video.
[0137] In a possible implementation, in terms of the technical implementation of video marking, compared with the method in the related art in which the player SDK pulls the background marking data, the embodiment of the present application decouples the node data from the player SDK, and the node data is obtained separately by the page rendering tool.
[0138] Please refer to Fig.16 , which shows a flow chart of a video dotting method provided by another exemplary embodiment of the present application. This embodiment takes the method executed by a terminal with a video playback function as an example for explanation, and the method includes the following steps:
[0139] Step 1601, displaying a video playback interface based on historical dot data.
[0140] Among them, the historical dot data is used to indicate the historical nodes added by the currently logged-in account in the current video, and the node marks corresponding to the historical nodes are displayed in the video progress bar.
[0141] In a possible implementation, after the user adds a video node, the terminal sends the corresponding node information to the background or saves it locally and records it as a historical node, and its corresponding node information is the historical dotting data. When the terminal receives an operation to play a video, before displaying the video playback interface, the terminal first obtains the current login account and the historical dotting data corresponding to the video, and displays the historical node in the video playback interface for the user to view.
[0142] Indicative, Fig.17 It shows the relevant data sent by the terminal to the backend server after creating a new node. vuid represents the user identity, timePoint represents the time, notes represents the note content, theme represents the note theme, and vid represents the ID of the video to which the node belongs. The data in the figure only represents all the data that may be used in the development process, and does not represent the specific data class definition.
[0143] In a possible implementation, step 1601 includes the following steps 1601a to 1601c (not shown in the figure):
[0144] Step 1601a, in response to the video playback operation on the current video, controls the player SDK to initialize the player, and controls the page rendering tool to obtain historical dot data.
[0145] The video nodes in the related technology are created by the backend operators, and all users who watch the video can view the nodes of the video, that is, the node data belongs to the backend operation data, and the video nodes are deeply coupled with the player SDK. Because when displaying the video playback interface, the terminal first obtains the interface-related data (such as video frame data, control data, and dot data) through the player SDK. After the player SDK is initialized, the player SDK sends the relevant data to the page rendering tool through the internal interface for interface rendering. Therefore, the method in the related technology will cause the page to wait for the player SDK to be initialized before it can start to obtain node data, and then render the page, resulting in slow rendering.
[0146] The dotting data in the embodiment of the present application belongs to user data, which is associated with the user account and stored in the background server, so it can be decoupled from the player SDK. In one possible implementation, another interface is provided in the client, so that the page rendering tool can directly obtain the historical dotting data from the background server through the interface. After the player SDK is initialized, the page rendering tool can directly render the historical nodes. Step 1601a specifically includes the following steps 3 to 5:
[0147] Step 3: Control the page rendering tool to obtain the account ID of the currently logged-in account and the video ID of the current video.
[0148] Step 4: Based on the account ID and the video ID, the page rendering tool is controlled to send a data acquisition request to the background server through the second interface, and the background server is used to feed back the historical dot data based on the data acquisition request.
[0149] In a possible implementation, since the node created by the user belongs to user data, the background server associates and stores the historical dotting data with the user's account ID and video ID. The terminal obtains the historical dotting data by sending the account ID and the video ID. Specifically, the terminal controls the page rendering tool to send a data acquisition request to the background server through the second interface and receive the historical dotting data.
[0150] Step 5: Control the page rendering tool to receive the historical dot data sent by the background server through the second interface.
[0151] In addition to the interfaces in the player SDK, the client also contains other interfaces for providing authentication services and data query services. The terminal first configures the interface service in the unified access layer. When receiving the data acquisition request from the browser, the unified access layer extracts the data (cookie) stored on the user's local terminal carried in the request and verifies the cookie. If the authentication fails, the unified access layer rejects the request to the browser; if the authentication passes, the unified access layer forwards the request to the background server. The background server will extract the corresponding account ID, video ID, etc. from the cookie, query the user's node and note information, and splice it back to the client. Fig.18 The process of the client requesting historical dotting data from the background server is shown: step 1801, the client receives the video playback operation; step 1802, the client performs authentication based on the cookie; step 1803, if the authentication fails, the client returns empty data; step 1804, if the authentication is successful, the client queries the background server for the union declaration and the union variable definition (union) data to obtain the video information, and combines the user-defined historical dotting data; step 1805, the background server responds to the client with the historical dotting data.
[0152] Step 1601b, in response to completion of player initialization, controls the player SDK to send video playback data to the page rendering tool through the first interface.
[0153] The video playback data includes background data such as video frame data and control data. This type of data needs to be sent from the player SDK to the page rendering tool after the player SDK is initialized.
[0154] Step 1601c, based on the video playback data and historical dot data, control the page rendering tool to render and display the video playback interface.
[0155] After the player SDK is initialized, the video playback data is sent to the page rendering tool, and the page rendering tool is notified to start rendering. At this time, the page rendering tool renders the underlying content based on the video playback data and renders the upper content based on the historical dot data. In a possible implementation, step 1601c specifically includes the following steps six to seven:
[0156] Step six: Control the page rendering tool to render the player container layer based on the video playback data. The player container layer is used to display the video content.
[0157] Step seven, in response to the completion of the rendering of the player container layer, the control page rendering tool overlays and renders a dot mask layer on the player container layer based on the historical dot data, and the dot mask layer is used to display the node marks added by the current login account.
[0158] like Fig.19 As shown, the dot mask is located above the player container layer. The preview mask used to display the preview window is located in the same layer as the dot mask.
[0159] In one possible implementation, when a user makes marks and notes on a certain video, there may be too many notes. After the player SDK has loaded the video, it notifies the page to render all document object models (DOM). At the same time, a large number of rendering tasks will cause the page to freeze briefly. In order to solve this difficulty, the embodiment of the present application provides two rendering methods: one is to record the time node of all note information when the page obtains all note data, and only render all the mark DOM on the progress bar, and render the note preview DOM of the corresponding time when the player SDK notifies the page of the progress time; the second is to only render the mark DOM after the page obtains the note data, and only render the corresponding note preview DOM when the user hovers over the corresponding node mark. Fig. 20 As shown, the rendering process includes: step 2001, requesting node information; step 2002, recording the playback time corresponding to each historical node; step 2003, the player SDK progress notification page renders the note DOM, or, step 2004, rendering the corresponding note DOM when the first trigger operation for the node mark is received.
[0160] Step 1602, in response to the third trigger operation of marking the target historical node, start playing the video from the video playback progress corresponding to the target historical node.
[0161] In a possible implementation, the node mark displayed by the terminal through the video playback interface can be used to preview the video screen and note content and also to jump to the corresponding video playback progress. The user can quickly jump to the video playback progress corresponding to the target historical node through the third trigger operation.
[0162] Illustratively, when the terminal screen is a touch screen, the third trigger operation may be a pressing operation, a clicking operation, or a dragging operation on the target node mark; when the terminal screen is a non-touch screen, the third trigger operation may be a hovering operation of controlling the input device pointer (such as a mouse pointer) on the target node mark, a clicking operation, a pressing operation, or a dragging operation on the target node mark through the input device, etc.
[0163] Optionally, the third trigger operation has the same operation type as the first trigger operation. For example, when a single-click operation on the target node mark is received, the terminal displays an operation prompt pop-up window, and the operation prompt pop-up window includes a note viewing control for triggering the display of a preview window and a progress adjustment control for triggering the adjustment of the playback progress. The first trigger operation is a single-click operation on the target node mark and a single-click operation on the note viewing control, and the third trigger operation is a single-click operation on the target node mark and a single-click operation on the progress adjustment control. Alternatively, the third trigger operation has a different operation type from the first trigger operation. For example, the first trigger operation is a long press operation, and the third trigger operation is a single-click operation. That is, the operation types of the first trigger operation, the second trigger operation, and the third trigger operation are all different, or the operation types of the three are all the same, or the operation types of some of the three are the same. This embodiment of the present application is not limited to this.
[0164] Step 1603, in response to the dot operation in the video playback interface, a target node mark corresponding to the target node is added to the video progress bar based on the video playback progress.
[0165] Step 1604, in response to the note adding operation on the target node, generate the note content corresponding to the target node.
[0166] Step 1605, in response to the first trigger operation of marking the target node, a preview window is displayed at the target node mark, and the preview window includes a video screen thumbnail and note content corresponding to the target node.
[0167] The specific implementation of steps 1603 to 1605 can refer to the above steps 201 to 203, and the embodiments of the present application will not be repeated again.
[0168] In an embodiment of the present application, the dot data is decoupled from the player SDK, and the page rendering tool obtains the historical dot data directly from the background server through the second interface, without waiting for the player SDK to be initialized to obtain the data, which can improve the interface rendering efficiency.
[0169] In combination with the above embodiments, Fig.21 Provides a complete process of video marking:
[0170] Step 2101, receiving a video playback operation.
[0171] Step 2102, read local storage and determine the life cycle.
[0172] Step 2103, request historical management data from the background.
[0173] Step 2104: If the dot control is displayed for the first time, a prompt message is displayed and the floating layer state is recorded in the local storage.
[0174] Step 2105, setting a timer to control the display duration of the prompt information.
[0175] Step 2106, formatting the historical dot data through the data processing module and rendering the video playback interface.
[0176] Step 2107, receiving a trigger operation on the dot control.
[0177] Step 2108, add the target node mark through CSS animation, and synchronize the node data to the background.
[0178] Step 2109, receiving a first trigger operation for marking a target node.
[0179] Step 2110, display the preview window, and set a timer to control the display duration of the preview window.
[0180] Step 2111, receiving a trigger operation on a node editing control.
[0181] Step 2112, capture the preview clip through the player SDK, and render the node editing interface through the vue component.
[0182] Step 2113, the player SDK controls the playback of the preview clip and detects the node adjustment operation.
[0183] Step 2114, receiving a trigger operation for saving the control.
[0184] Step 2115, let QR Code generate a graphic code.
[0185] Step 2116, perform two-way data binding through v-model to obtain the note content.
[0186] Step 2117, display optional topic tags.
[0187] Step 2118, receiving a topic adding operation.
[0188] Step 2119, in response to the node sharing operation, generating a node sharing graph according to the DOM structure.
[0189] Fig. 22 It is a structural block diagram of a video dotting device provided by an exemplary embodiment of the present application, and the device includes the following structure.
[0190] The node adding module 2201 is used to respond to the dot operation in the video playing interface and add a target node mark corresponding to the target node in the video progress bar based on the video playing progress;
[0191] A note adding module 2202, configured to generate note content corresponding to the target node in response to a note adding operation on the target node;
[0192] The preview module 2203 is used to respond to the first trigger operation of marking the target node and display a preview window at the target node mark, wherein the preview window includes a thumbnail of the video screen corresponding to the target node and the note content.
[0193] Optionally, the note adding module 2202 is further used to:
[0194] In response to a second trigger operation of marking the target node, displaying the preview window, wherein the preview window includes a thumbnail of the video screen and a node editing control;
[0195] In response to a triggering operation on the node editing control, displaying a node editing interface corresponding to the target node;
[0196] In response to a text input operation in a text editing area in the node editing interface, the note content is determined.
[0197] Optionally, the note adding module 2202 is further used to:
[0198] In response to the first trigger operation of marking the target node, displaying part of the note content or all of the note content in the preview window;
[0199] In response to a triggering operation on the node editing control, the complete note content is displayed through the text editing area of the node editing interface.
[0200] Optionally, the device further includes a node editing module, which is used to:
[0201] Determine a preview period based on the playback time and preview duration corresponding to the target node;
[0202] Play the video content corresponding to the preview period in the video preview area of the node editing interface, wherein a preview progress bar corresponding to the preview period is displayed in the video preview area, and the preview progress bar includes the target node mark;
[0203] In response to a position adjustment operation on the target node mark in the preview progress bar, the target node is updated based on the node position indicated by the position adjustment operation.
[0204] Optionally, the node editing module is further used to:
[0205] In response to a triggering operation on the node editing control, pausing the playing of the video content in the video playing interface;
[0206] Overlaying and displaying the node editing interface on top of the video playback interface;
[0207] In response to a triggering operation on a play pause control in the video preview area, pausing the playing of the video content in the video preview area;
[0208] In response to a closing operation on the node editing interface, the node editing interface is closed and the video playing on the video playing interface is resumed.
[0209] Optionally, the node editing module is further used to:
[0210] In response to a triggering operation on the node editing control, pausing the video content in the video playback interface and recording the video playback progress;
[0211] In the video preview area, the video content of the preview period is played by reusing the player instance of the video playback interface;
[0212] In response to a closing operation on the node editing interface, closing the node editing interface;
[0213] In the video playback interface, the video is played starting from the recorded video playback progress.
[0214] Optionally, the node editing module is further used to:
[0215] In response to a triggering operation on a sharing control in the node editing interface, a node sharing interface is displayed, wherein the node sharing interface includes a node sharing diagram and at least one mode selection control, wherein the node sharing diagram includes at least one of the following: a thumbnail of the video screen, the note content, the time corresponding to the target node, a video title, a graphic code, and an account ID of a currently logged-in account, and different mode selection controls correspond to different sharing modes;
[0216] In response to a triggering operation on a target mode selection control, node information is shared according to a target sharing mode and a target sharing object corresponding to the target mode selection control.
[0217] Optionally, the node editing module is further used to:
[0218] In response to a triggering operation on a comment sharing control, posting a video comment in a comment area of the current video, wherein the video comment includes a thumbnail of the video screen and the note content;
[0219] In response to a triggering operation on a local save control, saving the node sharing graph to a local folder;
[0220] In response to the triggering operation of the communication application control, the node sharing map is sent to the target terminal of the target sharing object by calling the login account in the communication application. The target terminal is used to obtain the link of the current video by scanning the graphic code, and start playing the video from the target node in the video playback interface.
[0221] Optionally, the video playback interface includes a dot control;
[0222] The node adding module 2201 is further used for:
[0223] In response to a triggering operation on the dot control, a marker movement trajectory is determined, wherein the starting point of the marker movement trajectory is the display position of the dot control or the position of the progress bar indicated by the dot control, and the end point of the marker movement trajectory is the position of the progress bar corresponding to the video playback progress;
[0224] Control the target node mark to move along the mark movement trajectory to the end point.
[0225] Optionally, the device further comprises a display module, which is used to:
[0226] Displaying the video playback interface based on the historical dotting data, wherein the historical dotting data is used to indicate the historical nodes added by the current login account in the current video, and the node marks corresponding to the historical nodes are displayed in the video progress bar;
[0227] In response to a third trigger operation of marking a target historical node, the video is played starting from the video playback progress corresponding to the target historical node.
[0228] Optionally, the display module is further used for:
[0229] In response to a video playback operation on the current video, controlling a player software development kit SDK to initialize the player, and controlling a page rendering tool to obtain the historical dotting data;
[0230] In response to completion of player initialization, controlling the player SDK to send video playback data to the page rendering tool through the first interface;
[0231] Based on the video playback data and the historical dot data, the page rendering tool is controlled to render and display the video playback interface.
[0232] Optionally, the display module is further used for:
[0233] Controlling the page rendering tool to obtain the account ID of the currently logged-in account and the video ID of the current video;
[0234] Based on the account identifier and the video identifier, controlling the page rendering tool to send a data acquisition request to the background server through the second interface, the background server being used to feed back the historical dotting data based on the data acquisition request;
[0235] The page rendering tool is controlled to receive the historical dotting data sent by the background server through the second interface.
[0236] Optionally, the display module is further used for:
[0237] Control the page rendering tool to render a player container layer based on the video playback data, wherein the player container layer is used to display video content;
[0238] In response to the completion of rendering of the player container layer, the page rendering tool is controlled to render a dot mask layer on the player container layer based on the historical dot data, wherein the dot mask layer is used to display the node mark added by the current login account.
[0239] In summary, a video marking method is provided, which allows users to mark the key points of the video by themselves when watching the video, so that users can quickly find the key points when watching it later. In addition, users are supported to add notes to the video to record their thoughts on the video content. Compared with the platform's unified marking method, personalized video marking and note adding can improve the user's autonomy in video marking, make video marking meet the user's own needs, easy to operate, and can improve the user experience. And the user's own marking and recording can reduce operating costs to a certain extent.
[0240] Please refer to Fig.23 , which shows a structural block diagram of a terminal 2300 provided by an exemplary embodiment of the present application.
[0241] Typically, the terminal 2300 includes: a processor 2301 and a memory 2302 .
[0242] The processor 2301 may include one or more processing cores, such as a 4-core processor, an 8-core processor, etc. The processor 2301 may be implemented in at least one hardware form of digital signal processing (DSP), field-programmable gate array (FPGA), and programmable logic array (PLA). The processor 2301 may also include a main processor and a coprocessor. The main processor is a processor for processing data in the awake state, also known as a central processing unit (CPU); the coprocessor is a low-power processor for processing data in the standby state. In some embodiments, the processor 2301 may be integrated with a graphics processing unit (GPU), which is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, the processor 2301 may also include an artificial intelligence (AI) processor, which is used to process computing operations related to machine learning.
[0243] The memory 2302 may include one or more computer-readable storage media, which may be tangible and non-transitory. The memory 2302 may also include a high-speed random access memory, and a non-volatile memory, such as one or more disk storage devices, flash memory storage devices. In some embodiments, the non-transitory computer-readable storage medium in the memory 2302 is used to store at least one instruction, which is used to be executed by the processor 2301 to implement the method provided in the embodiment of the present application.
[0244] In some embodiments, the terminal 2300 may optionally further include: a peripheral device interface 2303 .
[0245] The peripheral device interface 2303 may be used to connect at least one peripheral device related to input / output (I / O) to the processor 2301 and the memory 2302. In some embodiments, the processor 2301, the memory 2302, and the peripheral device interface 2303 are integrated on the same chip or circuit board; in some other embodiments, any one or two of the processor 2301, the memory 2302, and the peripheral device interface 2303 may be implemented on a separate chip or circuit board, which is not limited in this embodiment.
[0246] An embodiment of the present application further provides a computer-readable storage medium, which stores a computer program. When the computer program is loaded and executed by a processor, the steps of the video dotting method described in the above embodiments are implemented.
[0247] According to one aspect of the present application, a computer program product is provided, including a computer program, which, when executed by a processor, implements the steps of the video dotting method provided in various optional implementations of the above aspects.
[0248] Those skilled in the art should be aware that in one or more of the above examples, the functions described in the embodiments of the present application can be implemented with hardware, software, firmware, or any combination thereof. When implemented using software, these functions can be stored in a computer-readable storage medium or transmitted as one or more instructions or codes on a computer-readable storage medium. Computer-readable storage media include computer storage media and communication media, wherein the communication media include any media that facilitates the transmission of a computer program from one place to another. The storage medium can be any available medium that a general or special-purpose computer can access.
[0249] It should be noted that the information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data used for analysis, stored data, displayed data, etc.) and signals involved in this application are all authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with the relevant laws, regulations and standards of relevant countries and regions. For example, the account identification, note content, historical node data, etc. involved in this application are all obtained with full authorization.
[0250] The above description is only an optional embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present application shall be included in the protection scope of the present application.
Claims
1. A video marking method, characterized in that: The method comprises: When the viewer user is watching a video, in response to a dot operation in the video playback interface, a target node mark corresponding to the target node is added to the video progress bar based on the video playback progress; the dot data corresponding to the dot operation belongs to the user data, and the dot data is associated with the user account and stored; In response to a note adding operation on the target node, displaying a node editing interface corresponding to the target node; In response to a text input operation in the node editing interface, generating note content corresponding to the target node; In response to a triggering operation on a sharing control in the node editing interface, a node sharing interface is displayed, wherein the node sharing interface includes a node sharing diagram and at least one mode selection control, wherein the node sharing diagram includes at least one of the following: a video screen thumbnail corresponding to the target node, a note content corresponding to the target node, a time corresponding to the target node, a video title, a graphic code, and an account ID of a currently logged-in account, and different mode selection controls correspond to different sharing modes; In response to a triggering operation on a target mode selection control, sharing node information according to a target sharing mode and a target sharing object corresponding to the target mode selection control; In response to a first trigger operation on the target node mark, displaying a first preview window at the target node mark, wherein the first preview window includes a video screen thumbnail corresponding to the target node and the note content; The step of responding to the triggering operation of the target mode selection control and sharing the node information according to the target sharing mode and the target sharing object corresponding to the target mode selection control includes: In response to a triggering operation on the comment sharing control, the video screen thumbnail and the note content are shared in the form of a video comment to the comment area of the current video, wherein the video comment includes a link that supports jumping to the corresponding video playback progress for viewing after being triggered; In response to a triggering operation on a local save control, saving the node sharing graph to a local folder; In response to the triggering operation of the communication application control, the node sharing map is sent to the target terminal of the target sharing object by calling the login account in the communication application. The target terminal is used to obtain the link of the current video by scanning the graphic code, and start playing the video from the target node in the video playback interface.
2. The method according to claim 1, characterized in that In response to the note adding operation on the target node, displaying a node editing interface corresponding to the target node; In response to a text input operation in the node editing interface, generating note content corresponding to the target node includes: In response to a second trigger operation on marking the target node, displaying a second preview window, wherein the second preview window includes a thumbnail of the video screen and a node editing control; In response to a triggering operation on the node editing control, displaying a node editing interface corresponding to the target node; In response to a text input operation in a text editing area in the node editing interface, the note content is determined.
3. The method according to claim 2, characterized in that The step of displaying a first preview window at the target node mark in response to a first triggering operation on the target node mark comprises: In response to the first trigger operation of marking the target node, displaying part of the note content or all of the note content in the first preview window; The method further comprises: In response to a triggering operation on the node editing control, the complete note content is displayed through the text editing area of the node editing interface.
4. The method according to claim 2, characterized in that: After the node editing interface corresponding to the target node is displayed in response to the triggering operation on the node editing control, the method further includes: Determine a preview period based on the playback time and preview duration corresponding to the target node; Play the video content corresponding to the preview period in the video preview area of the node editing interface, wherein a preview progress bar corresponding to the preview period is displayed in the video preview area, and the preview progress bar includes the target node mark; In response to a position adjustment operation on the target node mark in the preview progress bar, the target node is updated based on the node position indicated by the position adjustment operation.
5. The method according to claim 4, characterized in that The step of displaying a node editing interface corresponding to the target node in response to a triggering operation on the node editing control includes: In response to a triggering operation on the node editing control, pausing the playing of the video content in the video playing interface; Overlaying and displaying the node editing interface on top of the video playback interface; After playing the video content corresponding to the preview period in the video preview area of the node editing interface, the method further includes: In response to a triggering operation on a play pause control in the video preview area, pausing the playing of the video content in the video preview area; In response to a closing operation on the node editing interface, the node editing interface is closed and the video playing on the video playing interface is resumed.
6. The method according to claim 5, characterized in that The step of pausing the video content in the video playback interface in response to the triggering operation on the node editing control includes: In response to a triggering operation on the node editing control, pausing the video content in the video playback interface and recording the video playback progress; Playing the video content corresponding to the preview period in the video preview area of the node editing interface includes: In the video preview area, the video content of the preview period is played by reusing the player instance of the video playback interface; In response to the closing operation on the node editing interface, closing the node editing interface and resuming the video playing of the video playing interface includes: In response to a closing operation on the node editing interface, closing the node editing interface; In the video playback interface, the video is played starting from the recorded video playback progress.
7. The method according to any one of claims 1 to 6, characterized in that: The video playback interface includes a dot control; In response to the dotting operation in the video playback interface, adding a target node mark corresponding to the target node in the video progress bar based on the video playback progress includes: In response to a triggering operation on the dot control, a marker movement trajectory is determined, wherein the starting point of the marker movement trajectory is the display position of the dot control or the position of the progress bar indicated by the dot control, and the end point of the marker movement trajectory is the position of the progress bar corresponding to the video playback progress; Control the target node mark to move along the mark movement trajectory to the end point.
8. The method according to any one of claims 1 to 6, characterized in that: In response to the dotting operation in the video playback interface, before adding a target node mark corresponding to the target node in the video progress bar based on the video playback progress, the method further includes: Displaying the video playback interface based on the historical dotting data, wherein the historical dotting data is used to indicate the historical nodes added by the current login account in the current video, and the node marks corresponding to the historical nodes are displayed in the video progress bar; The method further comprises: In response to the third trigger operation of marking the target historical node, the video is played starting from the video playback progress corresponding to the target historical node.
9. The method according to claim 8, characterized in that The video playback interface is displayed based on historical dot data, including: In response to a video playback operation on the current video, controlling a player software development kit SDK to initialize the player, and controlling a page rendering tool to obtain the historical dotting data; In response to completion of player initialization, controlling the player software development kit SDK to send video playback data to the page rendering tool through the first interface; Based on the video playback data and the historical dot data, the page rendering tool is controlled to render and display the video playback interface.
10. The method according to claim 9, characterized in that The control page rendering tool obtains the historical dot data, including: Controlling the page rendering tool to obtain the account ID of the currently logged-in account and the video ID of the current video; Based on the account identifier and the video identifier, controlling the page rendering tool to send a data acquisition request to the background server through the second interface, the background server being used to feed back the historical dotting data based on the data acquisition request; The page rendering tool is controlled to receive the historical dotting data sent by the background server through the second interface.
11. The method according to claim 9, characterized in that The controlling the page rendering tool to render and display the video playback interface based on the video playback data and the historical dot data includes: Control the page rendering tool to render a player container layer based on the video playback data, wherein the player container layer is used to display video content; In response to the completion of rendering of the player container layer, the page rendering tool is controlled to render a dot mask layer on the player container layer based on the historical dot data, wherein the dot mask layer is used to display the node mark added by the current login account.
12. A video marking device, characterized in that: The device comprises: A node adding module is used to respond to a dotting operation in a video playback interface when a viewer user is watching a video, and to add a target node mark corresponding to a target node in a video progress bar based on the video playback progress; the dotting data corresponding to the dotting operation belongs to user data, and the dotting data is stored in association with a user account; A note adding module, for displaying a node editing interface corresponding to the target node in response to a note adding operation on the target node; and generating note content corresponding to the target node in response to a text input operation in the node editing interface; A node editing module, for displaying a node sharing interface in response to a triggering operation on a sharing control in the node editing interface, wherein the node sharing interface includes a node sharing diagram and at least one mode selection control, wherein the node sharing diagram includes at least one of the following: a video screen thumbnail corresponding to the target node, a note content corresponding to the target node, a time corresponding to the target node, a video title, a graphic code, and an account ID of a currently logged-in account, wherein different mode selection controls correspond to different sharing modes; in response to a triggering operation on a target mode selection control, node information is shared according to a target sharing mode and a target sharing object corresponding to the target mode selection control; A preview module, configured to display a first preview window at the target node mark in response to a first trigger operation on the target node mark, wherein the first preview window includes a video screen thumbnail corresponding to the target node and the note content; The node editing module is also used for: In response to a triggering operation on the comment sharing control, the video screen thumbnail and the note content are shared in the form of a video comment to the comment area of the current video, wherein the video comment includes a link that supports jumping to the corresponding video playback progress for viewing after being triggered; In response to a triggering operation on a local save control, saving the node sharing graph to a local folder; In response to the triggering operation of the communication application control, the node sharing map is sent to the target terminal of the target sharing object by calling the login account in the communication application. The target terminal is used to obtain the link of the current video by scanning the graphic code, and start playing the video from the target node in the video playback interface.
13. The device according to claim 12, characterized in that The note adding module is also used for: In response to a second trigger operation on marking the target node, displaying a second preview window, wherein the second preview window includes a thumbnail of the video screen and a node editing control; In response to a triggering operation on the node editing control, displaying a node editing interface corresponding to the target node; In response to a text input operation in a text editing area in the node editing interface, the note content is determined.
14. The device according to claim 13, characterized in that The note adding module is also used for: In response to the first trigger operation of marking the target node, displaying part of the note content or all of the note content in the first preview window; In response to a triggering operation on the node editing control, the complete note content is displayed through the text editing area of the node editing interface.
15. The device according to claim 13, characterized in that The node editing module is also used for: Determine a preview period based on the playback time and preview duration corresponding to the target node; Play the video content corresponding to the preview period in the video preview area of the node editing interface, wherein a preview progress bar corresponding to the preview period is displayed in the video preview area, and the preview progress bar includes the target node mark; In response to a position adjustment operation on the target node mark in the preview progress bar, the target node is updated based on the node position indicated by the position adjustment operation.
16. The device according to claim 15, characterized in that The node editing module is also used for: In response to a triggering operation on the node editing control, pausing the playing of the video content in the video playing interface; Overlaying and displaying the node editing interface on top of the video playback interface; In response to a triggering operation on a play pause control in the video preview area, pausing the playing of the video content in the video preview area; In response to a closing operation on the node editing interface, the node editing interface is closed and the video playing on the video playing interface is resumed.
17. The device according to claim 16, characterized in that The node editing module is also used for: In response to a triggering operation on the node editing control, pausing the video content in the video playback interface and recording the video playback progress; In the video preview area, the video content of the preview period is played by reusing the player instance of the video playback interface; In response to a closing operation on the node editing interface, closing the node editing interface; In the video playback interface, the video is played starting from the recorded video playback progress.
18. The device according to any one of claims 12 to 17, characterized in that The video playback interface includes a dot control; The node adding module is further used for: In response to a triggering operation on the dot control, a marker movement trajectory is determined, wherein the starting point of the marker movement trajectory is the display position of the dot control or the position of the progress bar indicated by the dot control, and the end point of the marker movement trajectory is the position of the progress bar corresponding to the video playback progress; Control the target node mark to move along the mark movement trajectory to the end point.
19. The device according to any one of claims 12 to 17, characterized in that The device also includes a display module, which is used for: Displaying the video playback interface based on the historical dotting data, wherein the historical dotting data is used to indicate the historical nodes added by the current login account in the current video, and the node marks corresponding to the historical nodes are displayed in the video progress bar; In response to the third trigger operation of marking the target historical node, the video is played starting from the video playback progress corresponding to the target historical node.
20. The device according to claim 19, characterized in that The display module is also used for: In response to a video playback operation on the current video, controlling a player software development kit SDK to initialize the player, and controlling a page rendering tool to obtain the historical dotting data; In response to completion of player initialization, controlling the player software development kit SDK to send video playback data to the page rendering tool through the first interface; Based on the video playback data and the historical dot data, the page rendering tool is controlled to render and display the video playback interface.
21. The device according to claim 20, characterized in that The display module is also used for: Controlling the page rendering tool to obtain the account ID of the currently logged-in account and the video ID of the current video; Based on the account identifier and the video identifier, controlling the page rendering tool to send a data acquisition request to the background server through the second interface, the background server being used to feed back the historical dotting data based on the data acquisition request; The page rendering tool is controlled to receive the historical dotting data sent by the background server through the second interface.
22. The device according to claim 20, characterized in that The display module is also used for: Control the page rendering tool to render a player container layer based on the video playback data, wherein the player container layer is used to display video content; In response to the completion of rendering of the player container layer, the page rendering tool is controlled to render a dot mask layer on the player container layer based on the historical dot data, wherein the dot mask layer is used to display the node mark added by the current login account.
23. A terminal comprising a processor and a memory; the memory stores a computer program, characterized in that: When the processor executes the computer program, the steps of the video dotting method according to any one of claims 1 to 11 are implemented.
24. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is loaded and executed by a processor, the steps of the video dotting method according to any one of claims 1 to 11 are implemented.
25. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the video dotting method according to any one of claims 1 to 11 are implemented.
Citation Information
Patent Citations
Video hot spot marking method and apparatus
CN104967908A
Video processing method and device
CN106303723A
Marking method applied to medical video
CN111866548A