Methods for adjusting the display position of a text box control and display devices.

By adjusting the position of the text box control, the problem of list control obscuring the view was solved, improving the user experience of the display device, especially during virtual karaoke and chorus sessions.

CN116349231BActive Publication Date: 2025-10-31JUHAOKAN TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202180060962.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-05-29
Filing Date
2021-05-11
Publication Date
2025-10-31
Estimated Expiration
2041-05-11

AI Technical Summary

Technical Problem

In the karaoke mode of the display device, the list control often obscures the text box control when it is brought up, affecting the user's visual experience and user experience.

Method used

Through the coordinated operation of the controller and the lyrics control module, the position of the text box control is adjusted in real time, moving it vertically upwards on the screen to avoid being obscured by the list control, and displaying the list control below it.

Benefits of technology

This effectively prevents text box controls from being obscured by list controls, improving the user's visual experience and overall user experience, especially during virtual karaoke and group singing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116349231B_ABST
    Figure CN116349231B_ABST
Patent Text Reader

Abstract

A method for adjusting the display position of a text box control and a display device are disclosed. The display device (200) includes a monitor (280) and a controller (210) that are communicatively connected to each other. The monitor (280) is used to display a playback window, a list control (311), and a text box control. When executing the method for adjusting the display position of the text box control, the controller (210) is configured to: receive an input list control activation command when a video file is played in the playback window, so as to control the hidden list control (311) to be displayed on top of the playback window (S11); move the position of the text box control vertically upward along the monitor (280), and display the list control below the text box control vertically along the monitor (280) (S12). It can be seen that, with the provided method and display device, the display position of the text box control is adjusted according to the height of the list control (311) to display the list control (311) below the text box control. Different adjustment strategies are applied based on different list controls (311) so that the text box control is not obscured in any scenario, thereby improving the user's visual experience.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application claims priority to Chinese Patent Application No. 202010403108.0, filed on May 13, 2020, entitled "A Method for Adjusting the Display Position of a Text Box Control and a Display Device"; Chinese Patent Application No. 202010420359.X, filed on May 18, 2020, entitled "A Method for Adding Singing Tags, a Quick Listening Method, and a Display Device"; and Chinese Patent Application No. 202010477811.6, filed on May 29, 2020, entitled "A Display Device and a Method for Improving Choral Speed," the entire contents of which are incorporated herein by reference. Technical Field

[0002] This application relates to the field of software technology, and in particular to a method for adjusting the display position of a text box control and a display device. Background Technology

[0003] With the continuous development of communication technology, terminal devices such as computers, smartphones, and display devices have become increasingly popular. Among these, regarding the functionality of display devices, due to users' growing demands for application experience, various types of applications are typically installed on display devices.

[0004] In related technologies, devices can install music applications. When playing music files, including video information, the lyrics of the song are recorded / edited in each frame of the video, so the player can directly achieve synchronized control of the background image and lyrics. Summary of the Invention

[0005] In a first aspect, this application provides a display device, comprising:

[0006] The display is configured to present a display interface including a playback window, a hideable list control, and a text box control for displaying text of the video file being played in the playback window.

[0007] A controller connected to the display is configured to:

[0008] When a video file is playing in the playback window, an input list control activating command is received. The list control activating command is used to control the hidden list control to be displayed on top of the playback window.

[0009] Move the position of the text box control upwards along the vertical axis of the display, and display the list control below the text box control along the vertical axis of the display.

[0010] Secondly, this application also provides a method for adjusting the display position of a text box control, applied to a controller, comprising the following steps:

[0011] When a video file is playing in the playback window, an input list control activating command is received. The list control activating command is used to control the hidden list control to be displayed on top of the playback window.

[0012] Move the position of the text box control upwards along the vertical axis of the display, and display the list control below the text box control along the vertical axis of the display. Attached Figure Description

[0013] Figure 1 This is a schematic diagram illustrating an operational scenario between a display device and a control unit according to some embodiments;

[0014] Figure 2 This is a schematic diagram of the display interface of the list control in some embodiments;

[0015] Figure 3 This is a schematic diagram of the display interface in some embodiments where the list control is not shown;

[0016] Figure 4 This is a structural block diagram of the display device in some embodiments;

[0017] Figure 5 This is a control flowchart illustrating the method for adjusting the display position of a text box control in some embodiments;

[0018] Figure 6 This is a flowchart illustrating a method for adjusting the display position of a text box control in some embodiments;

[0019] Figure 7 This is a flowchart of a method for moving the position of a text box control in some embodiments;

[0020] Figure 8 This is a schematic diagram illustrating the initial display height of a text box control in some embodiments;

[0021] Figure 9 This is a schematic diagram illustrating the pop-up height of a list control in some embodiments;

[0022] Figure 10 This is a schematic diagram illustrating the adjustment height of a text box control in some embodiments;

[0023] Figure 11 This is a schematic diagram showing the adjusted text box control in some embodiments;

[0024] Figure 12 A flowchart illustrating the method for adding singing tags in some embodiments;

[0025] Figure 13 This is a flowchart illustrating the synchronization of data streams between the two parties during a chorus in some embodiments;

[0026] Figure 14 This is a flowchart of a method for determining the singing portion of a dual-user based on voiceprint in some embodiments;

[0027] Figure 15 This is a schematic diagram of the user interface of the display device in some embodiments;

[0028] Figure 16 This is a first flowchart of a rapid audition method in some embodiments;

[0029] Figure 17 This is a data flow diagram of the rapid audition method in some embodiments;

[0030] Figure 18 This is a schematic diagram illustrating the addition of lyric tags by color in some embodiments;

[0031] Figure 19 This is a second flowchart of a rapid audition method in some embodiments;

[0032] Figure 20 This is a flowchart illustrating a method for increasing choral speed in some embodiments;

[0033] Figure 21 A schematic diagram of recording a first chorus resource file for the inviter in some embodiments;

[0034] Figure 22 This is a flowchart illustrating another method for increasing choral speed in some embodiments;

[0035] Figure 23 This is a schematic diagram illustrating the recording of a second chorus resource file by the invitee in some embodiments;

[0036] Figure 24 This is a flowchart illustrating another method for increasing choral speed in some embodiments. Detailed Implementation

[0037] To make the objectives, technical solutions, and advantages of the exemplary embodiments of this application clearer, the technical solutions in the exemplary embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described exemplary embodiments are only some embodiments of this application, and not all embodiments.

[0038] It should be understood that the terms "first," "second," "third," etc., used in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such use of data can be interchanged where appropriate, for example, to allow implementation in orders other than those given in the embodiments illustrated or described in this application.

[0039] As used in this application, the term "module" means any known or subsequently developed hardware, software, firmware, artificial intelligence, fuzzy logic, or combination of hardware and / or software code capable of performing the functions associated with that element.

[0040] Figure 1 The diagram illustrates an operational scenario between a display device and a control device according to an embodiment. Figure 1 As shown, the user can operate the display device 200 through the mobile terminal 300 and the control device 100.

[0041] The control device 100 can be a remote control, including infrared or Bluetooth communication protocols, and other short-range communication methods, to control the display device 200 wirelessly or via wired means. Users can input commands through buttons on the remote control, voice input, control panel input, etc., to control the display device 200. For example, users can input corresponding control commands through volume up / down buttons, channel control buttons, up / down / left / right movement buttons, voice input buttons, menu buttons, power on / off buttons, etc., to achieve the functions of controlling the display device 200.

[0042] In some embodiments, mobile terminals, tablets, computers, laptops, and other smart devices can also be used to control the display device 200. For example, an application running on the smart device can be used to control the display device 200. This application can be configured to provide the user with various controls in an intuitive user interface (UI) on the screen associated with the smart device.

[0043] The mobile terminal 300 can install software applications with the display device 200 to establish a connection and communication via network communication protocols, enabling one-to-one control operations and data communication. For example, it can establish a control command protocol between the mobile terminal 300 and the display device 200, synchronize a remote control keyboard to the mobile terminal 300, and control the display device 200 by controlling the user interface on the mobile terminal 300. It can also transmit audio and video content displayed on the mobile terminal 300 to the display device 200 for synchronized display.

[0044] like Figure 1The diagram also shows that the display device 200 communicates with the server 400 via various communication methods. The display device 200 can communicate via a local area network (LAN), a wireless local area network (WLAN), and other networks. The server 400 can provide the display device 200 with various content and interactive features.

[0045] Display device 200 can be an LCD monitor, OLED monitor, or projection display device. The specific type, size, and resolution of the display device are not limited. Those skilled in the art will understand that display device 200 can be modified in terms of performance and configuration as needed.

[0046] In addition to providing broadcast television reception functionality, display device 200 can also be equipped with smart network television functionality that provides computer support. Examples include network television, smart television, and Internet Protocol Television (IPTV).

[0047] In some embodiments, karaoke is performed using a display device. Currently, common large-screen karaoke software generally has limited functions and independent gameplay, lacking interaction between users. The display device provided in this application embodiment provides a duet function based on a social system to deeply establish relationships between users, thereby enhancing user stickiness and activity.

[0048] In some embodiments, the display device can perform karaoke using only the local device. In some embodiments, the display device can also perform a duet with a peer device.

[0049] When singing karaoke, different singing modes can be selected. In one mode, the display device can simply play the song without collecting the user's audio input. In another mode, the display device can present a video window and a lyrics display list on the display interface, while simultaneously collecting local audio and video for recording. The recorded audio and video can be used for users to sing along. In some embodiments, the implementation of singing along between different terminals can be found in Chinese patent application CN202010127550.5. In yet another mode, when the terminal is recording audio and video, it can also display video information. The video information can be video data of the song resource or virtual scene data. For example, the display process of virtual scene data can be found in Chinese patent application CN202010193786.9.

[0050] In different karaoke modes, lyrics information needs to be displayed alongside video information. When the video is displayed in full-screen mode, a text box control can be set in the layer above the playback window to display the lyrics. The text box control can adjust the display of lyrics within the text box according to changes in the timeline of the playback window. Both the lyrics data and the audio / video data contain time reference parameters.

[0051] The display device presents a display interface, including a playback window, a hideable list control, and a text box control for displaying the text of the video file played in the playback window. The playback window displays the lyrics of the selected chorus song, a virtual avatar, and a virtual scene; the lyrics are displayed in the text box control. Simultaneously, the display device is equipped with a camera that captures the user's image and displays the user's image as a virtual avatar on the display interface. Since the display device provided in this embodiment can customize the virtual avatar and switch between virtual scenes, it includes a virtual avatar customization platform, displaying a list control for customization and scene switching on the display interface for user selection.

[0052] In some embodiments, karaoke refers to a display device playing audio and / or video information of multimedia resources, whereby a user inputs sound using a sound input unit, causing the display device to simultaneously output the sound of the multimedia resources and the collected user's sound using a sound output unit. Alternatively, when the display device is set not to output the sound of the multimedia resources, it only outputs the collected user's sound; or, when the display device is set to collect the user's sound, it only outputs the sound of the multimedia resources without outputting the multimedia resources.

[0053] In some embodiments, the multimedia resource may be a song resource, which may provide the user with music and / or lyrics information so that the user can input sound based on the music and / or lyrics information.

[0054] In some embodiments, the display device can provide song resources locally to the user, and the user can display the karaoke interface after selecting a song resource control on the selection interface. In some embodiments, the karaoke interface can be as follows: Figure 2 As shown, Figure 2 The diagram illustrates, by way of example, a display interface diagram of a list control according to an embodiment.

[0055] See Figure 2 The playback window plays the video data of the song resource in full screen. The layer above the playback window can display a list control. The target controls controlled in the list control 311 include beautification controls, AR transformation controls, and scene switching controls. The beautification control is used to beautify the user's image, such as beauty enhancement, acne removal, and skin smoothing. The AR transformation control provides various virtual avatars, such as cat, dog, rabbit, and elephant avatars, to transform the user's image into the avatar of the selected animal. The scene switching control is used to switch between virtual scenes, such as beach scenes, sports field scenes, and forest scenes. In some embodiments, the list control may also include target controls that control other functions.

[0056] In some embodiments, a text control for displaying lyrics is also displayed in the layer above the layer where the playback window is located.

[0057] Figure 3 The diagram illustrates a display interface without a list control according to an embodiment. Figure 3 This can be used to represent the interface before or after the list control is displayed, showing the state of the text box control relative to the text box control. Figure 2 Lower down. The text box control is used to display text data corresponding to the video file played in the underlying playback window. For example, when a TV series file is played in the underlying playback window, the text box control could be a control set in the upper layer above the underlying window that displays the dialogue of the corresponding TV series file; when a song file is played in the underlying playback window, the text box control could be a control set in the upper layer above the underlying window that displays the lyrics of the corresponding song file.

[0058] During the chorus, to indicate the song's progress and ensure users sing their assigned parts at the correct rhythm, lyrics can be displayed on the screen. The lyrics are displayed as text box controls on top of the virtual scene and change accordingly with the song's playback. To avoid obscuring the virtual avatar, the text box controls can be distributed on either side of the avatar for a more aesthetically pleasing presentation.

[0059] If a user needs to switch the current virtual scene of the chorus or enhance their appearance during choral recording, they can control the display device to invoke the list control. The list control can rise from the bottom of the display interface and appear there. Once invoked, the list control will obscure the text box control.

[0060] When a user selects a target list control based on the list controls, the different list controls have different heights, which can cause varying degrees of obstruction to the text box control. Therefore, to avoid obstruction of the text box control after the user invokes the list controls, the display device provided in this application allows the display position of the text box control to adjust with the height of the list controls during virtual avatar karaoke, ensuring that the lyrics text is not obstructed in any scenario, thereby improving the user's visual experience.

[0061] Figure 4 The diagram illustrates a structural block diagram of a display device according to an embodiment. For adjusting the display position of the text box control, see [link to relevant documentation]. Figure 4This application provides a display device 200, including a display 280 and a controller 210. The display 280 is configured to present a display interface, which includes a playback window, a hideable list control, and a text box control for displaying text of the video file played in the playback window. The controller 210 is configured with a service development platform 310 and a lyrics control module 211. The service development platform is configured to receive a list control activating command triggered by a user. The list control activating command is used to control the rise of the hidden list control and make the list control rise and display on top of the playback window.

[0062] When the display device 200 implements virtual karaoke, the controller interacts with the service development platform (Unity). Specifically, the controller and the service development platform are connected and can be configured within the controller, or they can be two independent modules. The virtual avatar customization platform is configured on the service development platform, meaning the list controls are activated and deactivated by the service development platform. The function of adjusting the position of text box controls is implemented by the controller; specifically, to solve the problem of lyrics being obscured, the controller 210 is equipped with a lyrics control module 211. The lyrics control module mainly receives message commands from the service development platform and executes them to control the display of lyrics, thereby adjusting the position of the text box controls.

[0063] Figure 5 The diagram illustrates a control flowchart of a method for adjusting the display position of a text box control according to an embodiment. See also... Figure 5 There are two main types of commands for users to control list controls on the service development platform. One type is the command to invoke the list control. In this scenario, the floating height of the text box control needs to be notified to the lyrics control module, and the lyrics control module will float the text box control according to the floating height. The other type is the command to disappear the list control. After receiving the command, the lyrics control module will restore the default display height of the text box control.

[0064] In some embodiments, a flowchart of a method for adjusting the display position of a text box control according to an embodiment is exemplarily shown. In some embodiments, the display device provided in this application is configured to perform the following steps when adjusting the display position of a text box control to follow different application scenarios:

[0065] S1001. When playing a video file in the playback window, receive an input list control activating command. The list control activating command is used to control the hidden list control to be displayed on top of the playback window.

[0066] When users need to switch virtual scenes or enhance their appearance during a chorus, they need to activate the playlist control. In this case, users can send a playlist control activation command to the controller via voice or remote control. The controller responds to the command, causing the hidden playlist control to rise from the bottom of the display and appear on top of the playback window.

[0067] In some embodiments, the user may also send a list control invocation command to the service development platform, and the service development platform shall respond to the list control invocation command by controlling the list control to rise from the bottom of the display interface and display the list control at the bottom position of the display interface.

[0068] S1002. Move the position of the text box control upwards along the vertical axis of the display, and display the list control below the text box control along the vertical axis of the display.

[0069] In some embodiments, after receiving a command to bring up a list control, the controller needs to adjust the display position of the text box control to prevent the raised list control from obscuring the text box control, so as to create an area between the text box control and the display border for displaying the list control.

[0070] In some embodiments, the text box control and the list control are on different layers. In related technologies, the list control layer is generally overlaid on top of the text box layer, usually directly overlaid on top of the text box control. In some embodiments of this application, the list control layer is overlaid on top of the text box control layer. By moving the position of the text box control and setting the area of ​​the list control layer other than the list control to transparent, the effect of the text box control and the list control being displayed to the user simultaneously is achieved.

[0071] In some embodiments, after the list control is invoked, the controller moves the position of the text box control upwards, and simultaneously displays the list control below the text box control as it moves. The upward and downward directions are based on the vertical orientation of the display screen in its normal viewing state, which conforms to user habits.

[0072] In other embodiments, the service development platform responds to the list control invocation command, activating the list control and then sending an adjustment signal to the lyrics control module in the controller. This adjustment signal instructs the lyrics control module to adjust the display position of the text box control. The lyrics control module responds to the adjustment signal, moving the text box control upwards and simultaneously displaying the list control below it.

[0073] Figure 7 The diagram illustrates a method flowchart for moving the position of a text box control according to an embodiment. In some embodiments, see [link to relevant documentation]. Figure 7 In the display device provided in this embodiment, when the position of the text box control is moved, the controller is further configured as follows:

[0074] S121. In response to the list control launch command, obtain the initial display height of the text box control and the rise height of the list control.

[0075] Upon receiving a command to activate the list control (or an adjustment signal from the lyrics control module), the controller adjusts the display position of the text box control. To accurately determine the adjusted height of the text box control, the obstruction height of the text box control by the raised list control must first be determined. Therefore, the controller (or lyrics control module) needs to obtain both the initial display height of the text box control and the raised height of the list control. The raised height of the selected list control can be determined based on the user's choice of it. Different list controls correspond to different raised heights.

[0076] The initial display height of a text box control refers to its height on the display screen when the list control is not invoked. The rise height of a list control refers to its height after being invoked, based on the user's selection.

[0077] The initial display height of a text box control refers to the distance between the bottom edge of the text box control and the bottom edge of the displayed page; that is, the bottom edge of the text box control is higher than the bottom edge of the displayed page. The initial display height of the text box control is a preset value of the controller, and the text box control is displayed at the position corresponding to the initial display height.

[0078] Figure 8 The diagram illustrates the initial display height of a text box control according to an embodiment.

[0079] In some embodiments, see Figure 8 When the controller presets the initial display height of the text box control, it can establish a two-dimensional coordinate system on the display interface and determine the bottom edge position of the text box control and the bottom edge position of the display page based on the coordinate system. The coordinate system has its origin at the bottom left corner of the display interface, with the positive X-axis pointing from left to right and the positive Y-axis pointing from bottom to top.

[0080] At this point, the bottom edge of the display page is the X-axis. Therefore, the coordinates of the bottom edge of the display page can be determined as (x1, 0), while the coordinates of the bottom edge of the text box control are (x2, y2). Based on these coordinates, the distance between the bottom edge of the display page and the bottom edge of the text box control is calculated, i.e., the first distance L1 = y2. The initial display height of the text box control is then set to the first distance L1.

[0081] The pop-up height of a list control refers to the distance between the top of the list control and the bottom edge of the displayed page; that is, the top of the list control is higher than the bottom edge of the displayed page. The pop-up height of the list control is a preset value of the controller, and when the list control is displayed in a pop-up position, its display position is the position corresponding to the pop-up height.

[0082] Figure 9 The diagram illustrates, by way of example, the rise height of a list control according to an embodiment.

[0083] In some embodiments, see Figure 9 When the list control rises to a certain height, the controller can establish a two-dimensional coordinate system on the display interface and determine the top position of the list control and the bottom position of the display page based on the coordinate system. The coordinate system has its origin at the bottom left corner of the display interface, with the positive X-axis pointing from left to right and the positive Y-axis pointing from bottom to top.

[0084] At this point, the bottom edge of the display page is the X-axis. Therefore, the coordinates of the bottom edge of the display page can be determined as (x1, 0), while the coordinates of the top edge of the list control are (x3, y3). Based on these coordinates, the distance between the bottom edge of the display page and the top edge of the list control is calculated, which is the second distance L2 = y3. The height of the list control is then set to the second distance L2.

[0085] S122. Determine the adjustable height of the text box control based on the initial display height of the text box control and the rising height of the list control.

[0086] The initial display position of the text box control and the rising position of the list control can be used to determine whether the list control obscures the text box control. If the initial display position of the text box control is higher than the rising position of the list control, it means that the rising list control does not obscure the text box control; if the initial display position of the text box control is lower than the rising position of the list control, it means that the rising list control obscures the text box control.

[0087] When a list control obscures a text box control, the adjustment height of the text box control is determined based on the degree of obstruction; that is, the height of the obscured area determines the adjustment height of the text box control.

[0088] In some embodiments, in the display device provided in this application, the lyrics control module, when determining the adjustment height of the text box control based on the initial display position of the text box control and the rising position of the list control, is further configured to perform the following steps: when the initial display height of the text box control is lower than the rising height of the list control, calculate the height difference between the initial display height of the text box control and the rising height of the list control, and use the height difference as the adjustment height of the text box control.

[0089] If the initial display height of the text box control is lower than the rising height of the list control, it indicates that there is currently obstruction. Therefore, the height difference between the two is calculated based on the initial display height of the text box control and the rising height of the list control.

[0090] Figure 10 The diagram illustrates, exemplarily, a schematic diagram of determining the adjusted height of a text box control according to an embodiment.

[0091] In some embodiments, see Figure 10 The height difference h = L2 - L1. To prevent the raised list control from obscuring the text box control, the text box control needs to be adjusted upwards to at least equal to the height difference. That is, the height difference is used as the adjustment height of the text box control. At this time, the bottom edge of the text box control coincides with the top edge of the list control.

[0092] In other embodiments, the height that the text box control needs to be adjusted upward can be greater than the height difference, so that there is a certain distance between the bottom edge of the text box control and the top edge of the list control.

[0093] S123. Based on the adjusted height of the text box control, move the display position of the text box control vertically upwards along the display screen.

[0094] Once the adjustment height of the text box control is determined, its display position can be adjusted according to that height value. In this embodiment, the list control obscures the text box control from bottom to top; therefore, the display position of the text box control can be adjusted upwards along the vertical direction of the display according to the adjustment height.

[0095] In some embodiments, in the display device provided in this embodiment, when the controller (or lyrics control module) moves the display position of the text box control vertically upward along the display according to the adjusted height of the text box control, it is further configured to perform the following steps:

[0096] Step 1231: Calculate the sum of the adjusted height and the initial display height of the text box control, and determine the final display height of the text box control.

[0097] Step 1232: Adjust the display position of the text box control vertically upwards along the screen to the height corresponding to the final display height.

[0098] Figure 11 The diagram illustrates a modified text box control display according to an embodiment.

[0099] The adjusted final display height of the text box control can be represented by the height between the bottom edge of the text box control and the bottom edge of the display interface. Therefore, the sum of the adjusted height and the initial display height of the text box control is first calculated. In some embodiments, see [link to relevant documentation]. Figure 11The height is H = h + L1.

[0100] Set the height as the final display height of the text box control, and adjust the display position of the text box control to the position corresponding to the final display height. That is, move the text box control upward by a distance h along the vertical direction of the display, so that the distance between the bottom edge of the adjusted text box control and the bottom edge of the display interface is H.

[0101] As can be seen, when adjusting the text box control, the height H can be equal to the second distance. That is to say, in other embodiments, the controller (lyrics control module) can also adjust the display position of the text box control upward according to the rising height of the list control, so that the bottom edge of the text box control coincides with or is higher than the top edge of the list control, thus avoiding the list control from obscuring the text box control.

[0102] When a user invokes the list control on the display device, the user sends an invocation command to the service development platform via voice or remote control. After the list control is invoked, the controller (or lyrics control module) adjusts the display position of the text box control accordingly based on the selected list control to prevent the selected list control from obscuring the text box control.

[0103] If the user completes the personalized settings based on the invocation, they can then control the list control to disappear from view. At this point, the controller is further configured to: respond to a list control restore command, control the list control to disappear from view, and restore the adjusted text box control to its initial display height.

[0104] After the user finishes operating the list control, they can send a restore command to the controller via voice or remote control. The controller responds to the restore command, causing the list control to disappear from the display screen, dropping downwards from the bottom and vanishing. Simultaneously, since the list control's disappearance does not obscure the text box control, the text box control, after its position has been adjusted, can be restored to its initial display height.

[0105] In some embodiments, if a user triggers the list control's launch operation, and the user does not perform personalized settings based on the target list control after the list control is launched, then the list control needs to be lowered again. The service development platform controls the rise and fall of the list control; therefore, in the display device provided in this application embodiment, the service development platform is further configured as follows:

[0106] Step 601: Obtain the interval duration of user operations.

[0107] Step 602: When the interval reaches the time threshold, generate a list control recovery instruction. The list control recovery instruction is used to control the list control to move vertically downwards along the display and disappear from the playback window.

[0108] If a user sends a command to the service development platform to invoke the list control, the list control will then appear and be displayed. If the user does not perform any personalized settings on the list control within the specified interval, such as changing the virtual background or virtual avatar, the operation to invoke the list control can be considered invalid.

[0109] The interval duration refers to the time interval between when the user triggers the command to invoke the list control and when the user performs an operation on the list control. If the interval duration exceeds the time threshold, the current operation to invoke the list control is considered invalid.

[0110] Therefore, upon determining that the current operation is invalid, a list control restore command is generated. The list control restore command instructs the service development platform to cancel the list control's display, meaning it moves vertically downwards from the bottom of the display interface and disappears from the playback window within the display interface.

[0111] In other embodiments, after the list control is displayed, if the user no longer needs to operate the list control for corresponding personalized device settings, they can actively control the list control to be dedisplayed. In this case, the service development platform is further configured as follows:

[0112] Step 701: Receive the list control restore command triggered by the user.

[0113] Step 702: In response to the list control restore command, control the list control to move vertically down the display and disappear from the playback window.

[0114] After the user finishes operating the list control, they can send a list control restore command to the service development platform via voice or remote control. The service development platform responds to the list control restore command by controlling the list control to be canceled from display, that is, it moves down the vertical direction of the display screen from the bottom of the display interface and disappears from the playback window in the display interface.

[0115] When a list control is launched, the text box control will also adjust its display position accordingly. If the list control is dropped, to improve the user experience and prevent the text box control from remaining in its adjusted position for an extended period, the text box control can be restored to its original position, i.e., its position before the adjustment.

[0116] In some embodiments, after the list control is canceled, the lyrics control module configured in the controller of the display device provided in this application embodiment is further configured to perform the following steps: in response to the text box recovery signal sent by the service development platform, the adjusted display height of the text box control is moved downward along the vertical direction of the display to the initial display height. The text box recovery signal refers to the signal generated by the service development platform after responding to the list control recovery instruction.

[0117] After the list control is dropped, the bottom of the display interface becomes empty. At this time, after the service development platform cancels the display of the list control, it generates a text box recovery signal and sends it to the lyrics control module. The text box recovery signal indicates that the list control has completed the cancellation operation and the text box control can restore its initial display height.

[0118] Once the lyrics control module receives the text box restore signal, it can control the text box control to restore its initial display position, that is, to move the previously adjusted text box control downwards along the vertical direction of the display to the initial display height.

[0119] As can be seen from the above technical solutions, the display device provided in this application embodiment includes a display and a controller that are communicatively connected to each other. The display is used to display a playback window, a list control, and a text box control. When adjusting the display position of the text box control, the controller is configured to: receive an input list control activation command when a video file is playing in the playback window, so as to control the hidden list control to be displayed on top of the playback window; move the position of the text box control upward along the vertical axis of the display, and display the list control below the text box control along the vertical axis of the display. It can be seen that in the display device provided in this application embodiment, the display position of the text box control is adjusted according to the height of the list control, so that the list control is displayed below the text box control. Furthermore, different adjustment strategies are applied based on different list controls, ensuring that the text box control is not obscured in any scenario, thereby improving the user's visual experience.

[0120] Figure 6 The flowchart of a method for adjusting the display position of a text box control according to an embodiment is illustrated. This application also provides a method for adjusting the display position of a text box control, applied to a controller, comprising the following steps:

[0121] S11. When playing a video file in the playback window, receive an input list control activating command, the list control activating command being used to control the hidden list control to be displayed on top of the playback window;

[0122] S12. Move the position of the text box control upward along the vertical direction of the display, and display the list control below the text box control along the vertical direction of the display.

[0123] Further, moving the text box control upwards along the vertical direction of the display includes: in response to the list control invocation command, obtaining the initial display height of the text box control and the rise height of the list control; determining the adjustment height of the text box control based on the initial display height of the text box control and the rise height of the list control; and moving the display position of the text box control upwards along the vertical direction of the display according to the adjustment height of the text box control.

[0124] Further, determining the adjustment height of the text box control based on the initial display height of the text box control and the rising height of the list control includes: when the initial display height of the text box control is lower than the rising height of the list control, calculating the height difference between the initial display height of the text box control and the rising height of the list control, and using the height difference as the adjustment height of the text box control.

[0125] Furthermore, the step of moving the display position of the text box control vertically upward along the display based on the adjusted height of the text box control includes: calculating the sum of the adjusted height and the initial display height of the text box control, determining the final display height of the text box control; and adjusting the display position of the text box control vertically upward along the display to the height corresponding to the final display height.

[0126] Furthermore, it also includes: responding to a list control restore command, controlling the list control to disappear from display, and restoring the adjusted text box control to its initial display height.

[0127] Furthermore, the controller is configured with a service development platform; the execution method of the service development platform includes: obtaining the interval duration of user operations; when the interval duration reaches a time threshold, generating a list control recovery instruction, the list control recovery instruction being used to control the list control to move vertically downward along the display and disappear in the playback window.

[0128] Furthermore, the controller is configured with a service development platform; the execution method of the service development platform includes: receiving a list control restoration command triggered by the user; and in response to the list control restoration command, controlling the list control to move vertically downward along the display and disappear in the playback window.

[0129] Furthermore, the controller is equipped with a lyrics control module; the execution method of the lyrics control module includes: in response to a text box recovery signal sent by the service development platform, moving the adjusted display height of the text box control downward along the vertical direction of the display to the initial display height, wherein the text box recovery signal refers to the signal generated by the service development platform after responding to the list control recovery command.

[0130] In some embodiments, the local device and the server / peer device can work together to provide chorus services to users. The local device and the peer device are two clients for the chorus.

[0131] In implementing the chorus function, the display device provided in this application embodiment provides a business subsystem and a message subsystem. The chorus process includes: User A first selects User B whom they want to chorus with. After selecting the friend, the display device A used by User A sends a chorus invitation to the business subsystem. The business subsystem first verifies the legitimacy of the display device A. If it is a legitimate user, it sends a room creation application to the message subsystem (carrying the account information transmitted by the display device A and the relevant information of the target account B).

[0132] After receiving the invitation, the messaging subsystem creates room information and returns it to the business subsystem. It also pushes an invitation message to display device B used by user B. Upon receiving the room information from the messaging subsystem, the business subsystem sends a message back to user A (display device A). User A, upon receiving the message, joins the corresponding room based on the returned room number. When user B receives the invitation to sing a duet with friends pushed by the messaging subsystem, if they choose to accept, they will join the room by calling Imservice (instant messaging service). If they do not accept, display device A will receive a notification message from user B via display device B indicating that they have declined the invitation.

[0133] Once users A and B enter the chorus room, communication is established, and the chorus logic begins. This requires each user to transmit their local video and audio streams to the other via a low-latency channel. Both users play their own accompaniment, and their local audio and video streams are superimposed on the other's for playback, thus enabling the chorus function. After the chorus is finished, a button prompts whether to save the work. If saved, the work is uploaded and saved accordingly; otherwise, a dialog box appears prompting the deletion of temporary files locally.

[0134] The display device provided in this application embodiment can adjust the position of the lyrics display during the process of two users singing together, and can listen to the chorus file after the chorus recording process is completed.

[0135] In some embodiments, different terminals can also sing in chorus asynchronously, that is, one terminal records audio and video data using song resource A, and another terminal can asynchronously record its own audio and video data on the basis of the audio and video data recorded by the above terminal.

[0136] To enable users to quickly locate their own singing part after the chorus recording is completed, this application provides a display device that uses a tagging method during the synthesis process to add corresponding singing tags to each user's singing part on the song's timeline, thus distinguishing the singing parts of different users in the chorus. During listening, the corresponding user's singing part is obtained by recognizing the singing tags; that is, the singing tags are used to quickly locate and listen to the singing part of a single user, allowing for a rapid completion of the song listening experience.

[0137] Figure 12 The flowchart of a method for adding singing tags according to an embodiment is illustrated below. Therefore, when adding singing tags during a chorus, this application embodiment provides a display device, including: a display and a controller connected to the display. The display is configured to display a song file, which is a chorus song selected by both users when implementing the chorus function using the display device. The controller is configured to execute the singing tag adding method; in some embodiments, see [link to relevant documentation]. Figure 12 The method includes the following steps:

[0138] S11A: Play the song file selected by the local user and the remote user when they sing together, and the chorus division information.

[0139] After both the local and remote users enter the duet room, they need to first determine the song they want to sing together. After selecting the song file for the duet, both devices will start playing the song file.

[0140] Figure 13 The diagram illustrates, exemplarily, the synchronization flowchart of the data streams of both parties during a chorus according to an embodiment. See also... Figure 13 During a duet, both the local user (client A) and the remote user (client B) need to transmit their local video and audio streams to each other via a low-latency network channel. The display device also includes a karaoke server to synchronize the data streams during the duet. Client A sends its data stream to the karaoke server via its low-latency network channel, and the karaoke server sends its data stream to client B via its low-latency network channel. Similarly, client B sends its data stream to the karaoke server via its low-latency network channel, and the karaoke server sends its data stream to client A via its low-latency network channel. The data streams include both audio and video streams.

[0141] The local user and the remote user play the instrumental version of the song file simultaneously. When recording a duet, the audio and video streams from the local user are superimposed on the audio and video streams from the remote user to obtain the duet file.

[0142] To accurately distinguish between the singing parts of the local user and the remote user, the display device provided in this embodiment can pre-divide the singing parts of the local user and the remote user. For this purpose, in some embodiments, the division can be based on the chorus division information of the song file.

[0143] The chorus segmentation information is used to indicate the singing time of different users during chorus. Based on the chorus segmentation information, the song segment in the song file corresponding to the singing time used to indicate the first user's singing time is taken as the singing part of the local user, and the song segment in the song file corresponding to the singing time used to indicate the second user's singing time is taken as the singing part of the remote user.

[0144] Each song file used for chorus is pre-set with chorus division information, indicating on the lyrics timeline which lines are sung by user one, which by user two, and which by both users together. Therefore, based on the pre-set chorus division information, the singing parts of the local user and the singing parts of the other user can be determined.

[0145] After dividing the performance into parts according to the lyrics, the appearance (time) and disappearance (time) of each lyric on the timeline determine the user's performance period. The performance period refers to the duration between the first and last appearance of the lyrics the user is responsible for. One performance period corresponds to a song segment in the song file, and multiple performance periods and interlude periods can form a complete timeline, while multiple song segments and interlude segments can form a song file.

[0146] Therefore, the multiple singing segments corresponding to the lyrics of the user on this end can be used as the singing parts of the user on this end when singing a duet song file, and the multiple singing segments corresponding to the lyrics of the user on the other end can be used as the singing parts of the user on the other end when singing a duet song file.

[0147] S12A: Obtain the timeline of the song file. In the timeline, the song file for a certain time period is marked as the singing part of the local user or the singing part of the remote user according to the chorus division information.

[0148] To differentiate each user's performance, the display device provided in this embodiment adds performance tags to the timeline of the song file.

[0149] When adding singing tags to the timeline, tags for a specific time period can be added to the timeline based on the chorus division information, which distinguishes between the singing parts performed by the local user and the singing parts performed by the other user. These tags can be used as markers for either the singing parts performed by the local user or the singing parts performed by the other user.

[0150] S13A. Based on the marking of the singing part of the local user, add a first singing tag to the timeline of the song file. The first singing tag is used to represent the start time and end time of the singing part of the song file corresponding to the local user on the timeline.

[0151] On the timeline of the song file, there are markers for the local user's singing parts based on the chorus division information. Therefore, during subsequent listening, to facilitate accurate location of the local user's singing parts, a first singing tag can be added at the position corresponding to the marker of the local user's singing parts on the timeline.

[0152] The markers on the timeline, based on the chorus segmentation information, can identify the start and end times of a user's performance. The corresponding song segments for each start and end time constitute the user's performance segment. Multiple performance segments corresponding to different time periods constitute the user's performance portion. Therefore, the start and end times of a user's performance portion can be determined by the first performance tag, with different performance segments corresponding to different start and end times.

[0153] S14A. Based on the markings of the singing parts of the peer user, add a second singing tag to the timeline of the song file. The second singing tag is used to represent the start and end times of the singing parts of the peer user on the timeline of the song file.

[0154] On the timeline of the song file, there are markers for the singing parts of the other user based on the chorus division information. Therefore, during subsequent listening, in order to facilitate accurate location of the singing parts of the other user, a second singing tag can be added at the position corresponding to the marker of the singing parts of the other user on the timeline.

[0155] The markers on the timeline, based on the chorus segmentation information, can identify the start and end times of the other user's performance. The corresponding song segments for each start and end time constitute the other user's performance segment. Multiple performance segments corresponding to different time periods constitute the other user's performance portion. Therefore, the start and end times of the other user's performance portion can be determined by the second performance tag, with different performance segments corresponding to different start and end times.

[0156] As can be seen, by adding a first singing tag and a second singing tag to the timeline of the song file, the singing parts of the local user and the remote user can be distinguished. Therefore, the first singing tag added to the timeline is used to identify the singing parts of the local user, and the second singing tag added to the timeline is used to identify the singing parts of the remote user.

[0157] The display device provided in the above embodiments can distinguish the singing parts of the local user and the singing parts of the remote user based on the preset chorus division information of the song file; in other embodiments, it can also be determined based on the changes in voiceprints during the chorus process.

[0158] Figure 14 The diagram illustrates a method flowchart for determining the singing portion of a dual-user device based on voiceprints according to an embodiment. See also... Figure 14 In the display device provided in this application embodiment, when using voiceprints to determine the singing parts of the local user and the remote user, the controller is further configured as follows:

[0159] S121A: After obtaining the timeline of the song file, receive sound data recorded from the local display device or the remote display device.

[0160] S122A. Identify the voiceprint characteristics of the sound data and determine whether the sound data matches the first voiceprint or the second voiceprint, wherein the first voiceprint is the voiceprint of the user of the local display device and the second voiceprint is the voiceprint of the user of the remote display device.

[0161] S123A, add a first singing tag to the file segment in the song file corresponding to the first voiceprint, and add a second singing tag to the file segment in the song file corresponding to the second voiceprint.

[0162] The local user sings using their local display device, and the remote user sings using their remote display device. This results in both devices recording a large amount of voiceprint data during the duet. Since the duet only involves the local and remote users, voiceprint identification will only recognize two types of voiceprints: a first voiceprint and a second voiceprint. The first voiceprint corresponds to one set of voiceprint characteristics, and the second voiceprint corresponds to another.

[0163] In some embodiments, the first voiceprint is used as the voiceprint of the local user using the local display device, and the second voiceprint is used as the voiceprint of the remote user using the remote display device. Therefore, the current voiceprint data when the two users sing together is detected in real time, and the voiceprint characteristics are identified to determine whether the current voiceprint data belongs to the first voiceprint or the second voiceprint.

[0164] If the voiceprint characteristics of the current voiceprint data belong to the first voiceprint category, then the song segment corresponding to the current voiceprint data is identified as the singing part of this user. If the current voiceprint data belongs to the second voiceprint category, then the song segment corresponding to the current voiceprint data is identified as the singing part of the other user.

[0165] Therefore, in some embodiments, the singing parts of the local user and the singing parts of the remote user can be determined based on the voiceprint characteristics corresponding to the voiceprint data.

[0166] After dividing the singing parts of the two users based on voiceprint characteristics, singing tags can also be added using voiceprints. In some embodiments, when adding singing tags on the timeline, if voiceprint data matching the first voiceprint is identified, the corresponding singing part belongs to the file segment sung by the local user, and therefore, the first singing tag is added to the song file timeline; if voiceprint data matching the second voiceprint is identified, the corresponding singing part belongs to the file segment sung by the remote user, and therefore, the second singing tag is added to the song file timeline.

[0167] The singing tags corresponding to a file segment sung by a user include a singing start tag and a singing end tag. Therefore, when adding tags on the timeline of a choral file using voiceprint characteristics, the singing start tag and singing end tag can be added based on the changes in the voiceprint characteristics of the identified voiceprint data.

[0168] For example, if the detected voiceprint data changes from conforming to the first voiceprint characteristic to conforming to the second voiceprint characteristic, then at the time of voiceprint switching, a singing end tag corresponding to the user with the first voiceprint characteristic is added, and at the time of voiceprint switching, a singing start tag corresponding to the user with the second voiceprint characteristic is added.

[0169] In some embodiments, singing tags are added to the timeline based on detected changes in voiceprints. To this end, the controller detects the voiceprint data of both users singing a song file in real time. If the detected current voiceprint data consistently belongs to one of the users, that is, if the current voiceprint data matches the characteristics of a first voiceprint, then the song segment corresponding to the current voiceprint data can be identified as the part sung by that user.

[0170] If a change in the voiceprint characteristics of the current voiceprint data is detected, for example, switching from characteristics matching the first voiceprint to characteristics matching the second voiceprint, it indicates that the user currently singing has changed; that is, the singing user has switched from the local user to the peer user. Therefore, to accurately identify the singing portion of the duet between the two users, a singing end tag for the previous singing user (the local user) and a singing start tag for the current singing user (the peer user) can be added simultaneously at the moment the voiceprint changes.

[0171] If a change in the voiceprint characteristics of the current voiceprint data is detected again, for example, switching from characteristics matching the second voiceprint to characteristics matching the first voiceprint, it indicates that the user currently singing has changed again, that is, the singing user has switched from the other user to the current user. Therefore, to accurately identify the singing portion of the duet between the two users, a singing end tag for the previous singing user (the other user) and a singing start tag for the current singing user (the current user) can be added simultaneously at the moment the voiceprint changes.

[0172] As can be seen, in some embodiments, the voiceprint data of both users are detected in real time. If a change in the voiceprint is detected, the ending tag of the previous singing user and the beginning tag of the current singing user are added to the timeline at the same time.

[0173] There is a one-to-one correspondence between the start and end tags of a song. Each user's performance corresponds to one start tag and one end tag. The song segment between the start and end tags constitutes the user's performance.

[0174] To differentiate the singing parts of the two users, singing tags are added to the timeline, including a first singing tag and a second singing tag. The first singing tag identifies the singing part of the user on the local end, and the second singing tag identifies the singing part of the user on the other end.

[0175] Since the start and end tags of a user's performance are corresponding, when adding the first performance tag on the timeline based on the performance of the user on this platform, the first performance tag can be divided into the first performance start tag and the first performance end tag.

[0176] On the same timeline, since the user on this device may be responsible for multiple singing parts, there will be multiple sets of corresponding "first singing start" and "first singing end" tags. The "first singing start" tag is used to identify the start time of the user's singing of the current song segment, and the "first singing end" tag is used to identify the end time of the user's singing of the current song segment.

[0177] In some embodiments, in step S13, the controller, when performing the marking of the user's singing portion and adding a first singing tag to the timeline of the song file, is further configured to: when the playback of the song file reaches the start time of the user's singing portion, add a first singing start tag to the timeline corresponding to the start time; and when the playback of the song file reaches the end time of the user's singing portion, add a first singing end tag to the timeline corresponding to the end time.

[0178] During the duet between the two users, the song file continues to play. When the song's timeline reaches the start of the user's part, a first "singing start" tag is added to the corresponding start point on the timeline. The user continues singing along, and a first "singing end" tag is added to the timeline corresponding to the end of their part.

[0179] For example, if the user on this device is responsible for singing the third and fourth lines of a song file, and the corresponding time period on the timeline is from 0:23 to 0:35, then the time to start singing the third line is at 23 seconds, and the time to finish singing the fourth line is at 35 seconds. Therefore, 23 seconds is taken as the start time of the user's singing part, and 35 seconds is taken as the end time. A first singing start tag is added at the 23-second position on the timeline, and a first singing end tag is added at the 35-second position.

[0180] Similarly, on the same timeline, since the other user may be responsible for multiple singing parts, there will be multiple sets of corresponding second singing start tags and second singing end tags. The second singing start tag is used to identify the start time of the other user's singing of the current song segment, and the second singing end tag is used to identify the end time of the other user's singing of the current song segment.

[0181] In some embodiments, in step S14A, the controller, when performing the tagging based on the peer user's singing portion and adding a second singing tag to the timeline of the song file, is further configured to: when the playback of the song file reaches the start time of the peer user's singing portion, add a second singing start tag to the timeline corresponding to the start time; and when the playback of the song file reaches the end time of the peer user's singing portion, add a second singing end tag to the timeline corresponding to the end time.

[0182] During the duet between the two users, the song file continues to play. When the song's timeline reaches the start of the other user's part, a second "start" tag is added to the corresponding start point on the timeline. The other user continues singing along with the song file, and a second "end" tag is added to the timeline corresponding to the end of their part.

[0183] For example, if the user on the other end is responsible for singing the fifth and sixth lines of a song file, and these lines correspond to the time period of 0:38 to 0:46 on the timeline, then the user would begin singing the fifth line at 38 seconds and finish singing the sixth line at 46 seconds. Therefore, we would use 38 seconds as the start time of the user's singing and 46 seconds as the end time, adding a second "singing start" label at 38 seconds and a second "singing end" label at 46 seconds on the timeline.

[0184] Based on the division of vocal parts in the song file, the local user is responsible for singing multiple adjacent or non-adjacent lines of lyrics, and similarly, the remote user is also responsible for singing multiple adjacent or non-adjacent lines of lyrics. Following the steps provided in the aforementioned embodiment, corresponding start and end tags are added to the timelines corresponding to the local user's and remote user's vocal parts, respectively. Therefore, on the same timeline, there will be multiple sets of mutually corresponding first start and end tags for the local user's vocal parts, and multiple sets of mutually corresponding second start and end tags for the remote user's vocal parts.

[0185] After the two users complete the recording of the duet, the timeline of the resulting duet file includes corresponding singing tags. The singing tags include a first singing tag and a second singing tag to distinguish the singing parts of the user on this end and the singing parts of the user on the other end.

[0186] Figure 15 The diagram illustrates, by way of example, an operating interface of a display device according to an embodiment. See also Figure 15 After the chorus recording is complete, the display device shows the operation interface. The interface includes listening controls, allowing users to preview the song. These controls include local preview, peer preview, and full-song preview controls. The local preview control allows the user to listen to their own performance; the peer preview control allows the user to listen to the peer's performance; and the full-song preview control allows the user to listen to the complete chorus.

[0187] This application provides a display device that utilizes singing tags added to the timeline of a song file during a duet, enabling users to accurately locate their own or the other person's singing portion when listening to the duet file, thus achieving rapid listening.

[0188] Figure 16 The diagram above exemplifies a first flowchart of a rapid audition method according to an embodiment; Figure 17The diagram illustrates a data flow diagram of a rapid audition method according to an embodiment. In some embodiments, see [link to relevant documentation]. Figure 16 and Figure 17 The display device provided in this application embodiment has a controller configured to perform the following steps when executing the fast listening method:

[0189] S21A: Generate chorus files and display the operation interface after the chorus ends.

[0190] S22A, Receive the operation command to trigger the audio-visual control.

[0191] After users on both ends complete the chorus recording using their respective display devices, they will receive the chorus file, which has labels on the timeline to identify each user's part.

[0192] After the chorus recording is completed, the chorus file is displayed on the monitor's operating interface. The chorus file is displayed on the operating interfaces of both display devices, so that users can perform subsequent operations based on the chorus file, such as saving the chorus file, re-recording the chorus, deleting the chorus file, and listening to the chorus file.

[0193] If a user wants to listen to a completed choral recording, they can trigger the listening control displayed on the user interface. If the user triggers the listening control displayed on the device's user interface, a corresponding operation command will be generated, which instructs the controller to complete the listening to of the choral file.

[0194] S23A: In response to the operation command, obtain the chorus file generated by the chorus.

[0195] When a user on this end triggers the listening control on the interface displayed on the monitor to listen to the duet file, an operation command is generated and sent to the controller. Upon receiving the operation command triggered by the user, the controller then retrieves the duet file obtained after the two users recorded their duet.

[0196] The operation command includes the listening type, which can be either listening to the local end, listening to the remote end, or listening to the entire song. Based on the listening type in the operation command, the controller can determine whether the file segment the local user wants to listen to is their own part, the remote end's part, or a duet.

[0197] S24A. Identify the singing labels on the timeline of the chorus file that correspond to the listening controls. The singing labels are used to represent the local user singing the corresponding file segment or the remote user singing the corresponding file segment.

[0198] To facilitate quick location of the section a user wants to listen to, the controller can detect the vocal tags on the timeline of the chorus file and retrieve the corresponding tags based on the user's input. The controller can then determine whether the segment of the chorus file to be listened to belongs to the local or remote user based on the identified vocal tags.

[0199] For example, if the operation command is a local listening command, it checks whether the first vocal tag on the chorus file's timeline is the first vocal tag. If it is, it starts playing the chorus file; otherwise, it continues checking. If the operation command is a remote listening command, it checks whether the first vocal tag on the chorus file's timeline is the second vocal tag. If it is, it starts playing the chorus file; otherwise, it continues checking.

[0200] S25A: Play the file segment corresponding to the singing tag in the chorus file.

[0201] Once the controller recognizes the required singing tag, it plays the song segment corresponding to that singing tag in the chorus file as a file segment. The file segment refers to the song segment corresponding to the singing start tag and singing end tag on the timeline.

[0202] The controller plays the corresponding file segments based on the identified singing tag type. For example, if the singing tag identifies the local user's singing portion, it plays multiple file segments corresponding to the local user's various sets of singing start tags and singing end tags. If the singing tag identifies the remote user's singing portion, it plays multiple file segments corresponding to the remote user's various sets of singing start tags and singing end tags. Each set of singing start tags and singing end tags corresponds to one file segment.

[0203] The type of singing tag can be determined based on the listening type carried by the operation command, and the listening type is determined based on the listening control triggered by the user.

[0204] In some embodiments, if a user triggers a local audition control, the generated operation instruction is a local audition instruction; that is, the controller receives the operation instruction that triggers the audition control as an operation instruction for auditing the local control. The audition type is auditing the local user's singing portion. Therefore, the controller identifies the singing tag corresponding to the audition control on the timeline of the chorus file specifically as follows: In response to the operation instruction generated by triggering the local audition control, the controller determines the first singing tag among the singing tags used to represent the file segment corresponding to the local user's singing. The controller plays the file segment in the chorus file corresponding to the singing tag, specifically by playing the file segment in the chorus file corresponding to the first singing tag.

[0205] In this embodiment, when the user triggers the local listening control, the user's singing part in the chorus file needs to be played. At this time, the controller is further configured to: when the listening instruction is a local listening instruction, determine whether the singing tag is the first singing tag used to identify the user's singing part. If the singing tag is the first singing tag used to identify the user's singing part, then execute the step of playing the file segment corresponding to the singing tag in the chorus file in response to the recognition of the singing tag.

[0206] When the user triggers the local control displayed in the operation interface, a local listening command is generated. The controller receives and responds to the local listening command, detects the first singing tag on the chorus file timeline, and determines whether the first singing tag is the first singing tag.

[0207] If the controller detects the first singing tag as the first singing tag, it means that the file segment corresponding to the currently detected singing tag is the singing part of the user on this end, and the file segment corresponding to the first singing tag can be played.

[0208] If the controller detects a second singing tag instead of the first singing tag, it means that the file segment corresponding to the currently detected singing tag is the singing part of the peer user. In this case, it will not play the song, but will continue to detect the next singing tag until the first singing tag is detected.

[0209] As can be seen, when the controller receives a local listening command, it only executes the playback operation if it determines that the singing tag on the timeline of the chorus file is the first singing tag, thus enabling accurate listening. If it is not determined to be the first singing tag, it continues to detect the next singing tag until the first singing tag is detected. This ensures that when the display device provides the listening function to the user, it can accurately locate the segment the user wants to listen to based on the singing tag, enabling fast listening.

[0210] After the controller determines that the detected singing tag is the first singing tag, it responds by playing the file segment corresponding to the first singing tag in the chorus file. The first singing tag includes a first singing start tag and a first singing end tag. The first singing start tag indicates the start time of the user's singing part, and the first singing end tag indicates the end time of the user's singing part. At this time, the song segment corresponding to the start time and end time in the chorus file is the file segment corresponding to the current first singing tag.

[0211] In some embodiments, during the playback of the file segment corresponding to the first vocal tag in the chorus file, the controller is further configured to:

[0212] Step 2511A: Detect singing tags.

[0213] Step 2512A: In response to the recognition of the first singing start tag, start playing the file segment based on the start time, wherein the song segment in the chorus file corresponding to the start time and the end time is the file segment.

[0214] Step 2513A: In response to the recognition of the first singing end tag, stop playing the file segment based on the end time and continue to detect singing tags.

[0215] Once the controller detects the singing tags on the timeline of the chorus file and detects the first singing start tag, it begins playing the chorus file. At this point, the starting playback position of the chorus file is the position corresponding to the beginning of the time, not the beginning position of the chorus file.

[0216] After the controller starts playing the chorus file, it continues to detect singing tags. Once it detects the first singing end tag corresponding to the first singing start tag, it stops playing the chorus file. At this point, the played song segment constitutes one file segment.

[0217] The controller then continues to detect the next "first vocal start" tag. If detected, it continues playing the chorus file until the next "first vocal end" tag is detected, at which point playback stops. At this point, the currently playing song segment becomes the next file segment.

[0218] The controller continues to detect the first start tag and the first end tag of the first performance based on this method, and plays the corresponding file segments until all the file segments corresponding to the local user's performance in the entire chorus file have been played.

[0219] In some embodiments, if a user triggers a preview of a peer-to-peer item, the generated preview instruction is a peer-to-peer preview instruction; that is, the controller receives the operation instruction that triggers the preview control as an operation instruction for previewing the peer-to-peer control. The preview type is previewing the peer user's singing portion. Therefore, the controller identifies the singing tag corresponding to the preview control on the timeline of the chorus file specifically as follows: In response to the operation instruction generated by triggering the peer-to-peer control, the controller determines a second singing tag in the singing tags that represents the file segment sung by the peer user. The controller plays the file segment in the chorus file corresponding to the singing tag specifically as follows: The controller plays the file segment in the chorus file corresponding to the second singing tag.

[0220] In this embodiment, when the user triggers the peer-to-peer control, the peer-to-peer user's singing portion in the chorus file needs to be played. At this time, the controller is further configured to: when the peer-to-peer listening instruction is a peer-to-peer listening instruction, determine whether the singing tag is a second singing tag used to identify the peer-to-peer user's singing portion. If the singing tag is a second singing tag used to identify the peer-to-peer user's singing portion, then execute the step of playing the file segment corresponding to the singing tag in the chorus file in response to recognizing the singing tag.

[0221] When the user on this end triggers the peer audition control displayed in the operation interface, a peer audition command is generated. The controller receives and responds to the peer audition command, detects the first singing tag on the chorus file timeline, and determines whether the first singing tag is the second singing tag.

[0222] If the controller detects the second singing tag as the first singing tag, it means that the file segment corresponding to the currently detected singing tag is the singing part of the peer user, and the file segment corresponding to the second singing tag can be played.

[0223] If the controller detects the first singing tag instead of the second singing tag, it means that the file segment corresponding to the currently detected singing tag is the singing part of the local user. In this case, it will not play the song, but will continue to detect the next singing tag until the second singing tag is detected.

[0224] As can be seen, when the controller receives a listening command from the other end, it only executes the playback operation if it determines that the singing tag on the timeline of the chorus file is the second singing tag, thus enabling accurate listening. If it is determined that it is not the second singing tag, it continues to detect the next singing tag until the second singing tag is detected. This ensures that when the display device provides the listening function to the user, it can accurately locate the segment the user wants to listen to based on the singing tag, enabling fast listening.

[0225] After the controller determines that the detected singing tag is the second singing tag, it responds by playing the file segment corresponding to the second singing tag in the chorus file. The second singing tag includes a second singing start tag and a second singing end tag. The second singing start tag is used to identify the start time of the other user's singing part, and the second singing end tag is used to identify the end time of the other user's singing part. At this time, the song segment corresponding to the start time and end time in the chorus file is the file segment corresponding to the current second singing tag.

[0226] In some embodiments, during the playback of the file segment corresponding to the second vocal tag in the chorus file, the controller is further configured to:

[0227] Step 2521A: Detect the singing tag.

[0228] Step 2522A: In response to the recognition of the second singing start tag, start playing the file segment based on the start time, wherein the song segment in the chorus file corresponding to the start time and the end time is the file segment.

[0229] Step 2523A: In response to the recognition of the second singing end tag, stop playing the file segment based on the end time and continue to detect singing tags.

[0230] Once the controller detects the singing tag on the timeline of the chorus file and detects the second singing start tag, it begins playing the chorus file. At this point, the starting playback position of the chorus file is the position corresponding to the beginning of the time, not the beginning position of the chorus file.

[0231] After the controller starts playing the chorus file, it continues to detect singing tags. Once it detects a second singing end tag corresponding to the previous second singing start tag, it stops playing the chorus file. At this point, the played song segment constitutes one file segment.

[0232] The controller then continues to detect the start tag of the next second vocal performance. If detected, it continues playing the chorus file until the end tag of the next second vocal performance is detected, at which point playback stops. At this point, the currently playing song segment becomes the next file segment.

[0233] The controller continues to detect subsequent second singing start tags and second singing end tags using this method, and plays the corresponding file segments until all file segments corresponding to the singing parts of the other user in the entire chorus file have been played.

[0234] In some embodiments, if a user triggers the full-track preview control, the generated preview instruction is a full-track preview instruction. The preview type is previewing the entire chorus file sung by both users. In this case, the controller can directly start playing the chorus file from its initial state without needing to detect the singing tag again.

[0235] In some embodiments, when adding singing tags to the timeline of a selected song file for a duet between two users, the display device provided in this application may also use the accompaniment section of the song file as the basis for adding tags.

[0236] The instrumental track in a song file can be freely divided into sections, rather than being assigned according to the lyrics. For example, a song might be divided into six sections: verse 1, verse 2, verse 3, verse 4, verse 5, and verse 6. Verses 1, 2, 4, and 5 are solo sections, while verses 3 and 6 are choral sections. In this case, all six sections would be used as instrumental tracks, with each instrumental track assigned to a different user for singing.

[0237] After dividing the song file into six accompaniment sections, a recording identifier is added to the timeline corresponding to each accompaniment section. The recording identifier is used to identify the user singing the accompaniment section and whether the user has sung the accompaniment section.

[0238] During the duet recording process between two users, if the user on this end sings the first and fourth accompaniment sections, a first recording marker is added to each of the first and fourth accompaniment sections respectively; if the user on the other end sings the second and fifth accompaniment sections, a second recording marker is added to each of the second and fifth accompaniment sections respectively. For the third and sixth chorus sections, both the first and second recording markers can be added to the accompaniment sections of the third and sixth sections.

[0239] The first recording identifier is used to identify the accompaniment segment of the user's own song, and the second recording identifier is used to identify the accompaniment segment of the user's own song.

[0240] If the original song file specifies that the first accompaniment section should be sung by the user on this end, but during the actual chorus recording, the user on this end does not sing when the song file plays the first accompaniment section, then the first recording marker will not be added to the timeline corresponding to the first accompaniment section.

[0241] As can be seen, the display device provided in this application adds a recording marker to the timeline of a song file, with each accompaniment segment corresponding to a recording marker. This differs from the method provided in the previous embodiments, which adds a set of singing tags (singing start tag and singing end tag) to the timeline of a song file.

[0242] After both users complete the duet recording, the resulting chorus file includes multiple recording markers on its timeline. Therefore, if a user wants to listen to the chorus file, they can precisely locate the user's singing position by detecting the recording markers before listening.

[0243] For example, if a user on this end triggers the "Listen to Local" control to preview their own vocal part, the system can detect whether a first recording marker exists on the timeline of the chorus file. If it does, all segments corresponding to the first recording marker are played consecutively. That is, after detecting the first first recording marker, the first segment begins playing until it finishes; then, after detecting the second first recording marker, the second segment begins playing until it finishes; if a second recording marker is detected, it is skipped. If both first and second recording markers are detected simultaneously, it indicates a harmony segment between users on both ends, and in this case, the corresponding segment is also played. This process continues until the preview of the user's vocal part in the chorus file is complete.

[0244] For example, if a user on this end triggers a preview control on the other end to preview the other end's vocals, the system can detect whether a second recording marker exists on the timeline of the chorus file. If it does, all segments corresponding to the second recording marker are played consecutively. That is, after detecting the first second recording marker, the first segment begins playing until it finishes; then, after detecting the second second recording marker, the second segment begins playing until it finishes. If the first recording marker is detected, it is skipped. If both the first and second recording markers are detected simultaneously, it indicates a harmony segment between the two users, and the corresponding segment is played. This process continues until the preview of the other end's vocals in the chorus file is complete.

[0245] For example, if a user on this end triggers the full-track preview control, the music will start playing from the initial moment according to the timeline of the chorus file until the entire chorus file has been played. During this process, the presence of a recording flag will no longer be checked.

[0246] In other embodiments, the display device provided in this application can also add singing tags to the timeline of a selected song file sung by two users in a duet, by using the lyrics of the song file according to pre-configured segments as the basis for adding singing tags. Here, the pre-configured lyric segments refer to the information obtained by dividing the song file according to preset lyric division rules, with different colors used to mark the lyrics sung by different users.

[0247] Figure 18 The diagram illustrates, for example, a display diagram showing the addition of lyric tags by color according to an embodiment. See, for example, [link to example]. Figure 18 The parts sung by the user on this end are marked with blue lyrics, such as in the song file "Old Dreams", the lyrics are "Old memories are like a window, once opened, they are hard to close again"; the parts sung by the user on the other end are marked with red lyrics, such as the lyrics "Who treads on the bare branches with a soft rustling sound, fireflies paint the fragrant screen".

[0248] When adding vocal tags, add the first vocal tag to all song segments marked in blue in the song file, and add the second vocal tag to all song segments marked in red in the song file. For example, the "blue circle" added before the lyrics marked in blue is the first vocal tag, and the "red circle" added before the lyrics marked in red is the second vocal tag.

[0249] At this point, a first singing tag corresponds to a song segment sung by the user on this end, and a second singing tag corresponds to a song segment sung by the user on the other end.

[0250] When a user listens to a choral file, if the user on this device triggers the local listening control, the system detects the first performance tag on the choral file's timeline and retrieves all file segments corresponding to that tag. Then, all the retrieved file segments are played in chronological order to allow the user on this device to listen to their own performance.

[0251] If the user on this end triggers the listen-to-the-other-end control, the second performance tag on the timeline of the chorus file is detected, and all file segments corresponding to the second performance tag in the chorus file are retrieved. Then, all the retrieved file segments are played in chronological order to complete the listen-to-the-other-end user's performance of the chorus.

[0252] This application also provides a display device that, by using singing tags added to the timeline of a song file during a duet, allows users to accurately locate their own or the other person's singing part when listening to the duet file, enabling quick listening.

[0253] Figure 19 A second flowchart of the rapid audition method according to an embodiment is illustrated in the figure. See also Figure 19 The display device provided in this application embodiment has a controller configured to perform the following steps when executing the fast listening method:

[0254] S31A. After the chorus ends, receive an operation command to trigger the listening to the chorus file, wherein the chorus file is a file generated during the chorus based on the audio data received by the display device, the audio data received by other display devices, and the accompaniment of the chorus song. Other display devices are other display devices that are performing the chorus with the display device.

[0255] S32A, in response to an operation command, plays a file segment in the chorus file that contains audio data received by the display device.

[0256] When two users record a duet using their respective display devices, the local user sings through their own display device, and that same display device receives the audio data from the local user's performance. Similarly, when the other user sings through their own display device, that display device receives the audio data from the other user's performance. The local display device and the other display device (or other display devices) constitute the dual-end display devices for the duet.

[0257] After the chorus recording is completed, the resulting chorus file includes the original audio data of the song file and the audio data input by both users through their respective display devices, namely the original audio data, the audio data input by the local user, and the audio data input by the other user.

[0258] After the chorus ends, the user triggers a preview control to listen to the chorus file. In some embodiments, the user triggers the preview operation and generates an operation command sent to the controller. The controller, based on the received operation command, plays the corresponding file segment containing the audio data received by the display device.

[0259] In some embodiments, when listening to a choral file, the file segment to be listened to can be accurately located according to the method of detecting singing tags in the choral file provided in the foregoing embodiments. Therefore, in response to the operation command, the controller plays a file segment in the choral file that contains audio data received by the display device, including:

[0260] Step 3211A: The controller responds to the operation command and determines the first singing tag on the timeline of the chorus file. The first singing tag is a tag set according to the time point of the file segment when the chorus file is generated. The file segment refers to the segment in the chorus file that contains audio data received by the display device.

[0261] Step 3212A: Play the file segment corresponding to the first vocal tag.

[0262] If a user on this end triggers the audition control in the operation interface of the local display device, specifically triggering the local audition control to audition their own singing segment, a local audition command is generated. The controller responds to the local audition command, detects the first singing tag on the chorus file timeline, and plays the file segment containing audio data corresponding to the first singing tag. The specific methods for identifying the singing tag and playing the corresponding file segment can be referred to in any of the foregoing embodiments, and will not be repeated here.

[0263] In other embodiments, the controller, in response to an operation command, plays a file segment of the chorus file containing audio data received by the display device, including:

[0264] Step 3221A: The controller responds to the operation command and determines the second singing tag on the timeline of the chorus file. The second singing tag is a tag set according to the time point of the file segment when the chorus file is generated. The file segment refers to the segment in the chorus file that contains audio data received by the display device.

[0265] Step 322A2: Play the file segment corresponding to the second vocal tag.

[0266] If a user on this end triggers the listening control in the operation interface of the local display device, specifically triggering the listening control on the other end to listen to a segment sung by the user on the other end, a listening command is generated on the other end. The controller responds to the listening command by detecting the second performance tag on the timeline of the chorus file and playing the file segment containing audio data corresponding to the second performance tag. The specific methods for identifying the performance tag and playing the corresponding file segment can be referred to in any of the foregoing embodiments, and will not be repeated here.

[0267] As can be seen from the above technical solutions, the display device provided in this application embodiment, during the recording of a duet between two users, plays the song file and duet segmentation information selected by the local user and the other user during the duet. Based on the marking of the local user's singing part, a first singing tag is added to the timeline of the selected song file; based on the marking of the other user's singing part, a second singing tag is added to the timeline. During the listening process, the controller receives and responds to the operation command generated when the local user triggers the listening control, obtains the duet file generated after the local user and the other user sing together; identifies the singing tag on the timeline of the duet file corresponding to the listening control, to determine the singing part of the target user that the local user wants to listen to. And based on the identified singing tag, plays the file segment in the duet file corresponding to the singing tag. It can be seen that the display device provided in this application obtains the singing part of the corresponding user by identifying the singing tag, that is, it quickly locates and listens to the singing part of a single user through the singing tag, so as to quickly complete the song listening.

[0268] In some embodiments, since the choir needs to utilize a network for communication between different devices, each device will also perform its own necessary processing. To improve the user experience, the speed of resource loading can be optimized.

[0269] Figure 20 The diagram illustrates a flowchart of a method for increasing choral speed according to some embodiments. Combined with... Figure 20 The method includes the following steps:

[0270] S610B: Receives input operation instructions, which are used to obtain the accompaniment of a choral song from the server.

[0271] In this embodiment, the inviter sends an operation command to the display device 200, which is used to obtain the accompaniment for the duet song from the server 400. In one implementation, the inviter, on the homepage interface of the display device 200, uses the up / down / left / right directional buttons on the remote control to move the focus to the "Karaoke" channel and presses the confirmation button to activate the karaoke function. From the "Karaoke" channel, the inviter can continue selecting the duet function using the directional buttons and the confirmation button on the remote control. In another implementation, the inviter presses the voice input button on the remote control and says "Select the duet function in 'Karaoke'". Upon receiving this voice command, the controller 250 controls the display 275 to jump to the display interface containing the duet function. The inviter can also continue to use the voice input button to say the specific duet song.

[0272] After the inviter sends an operation command to the display device 200, the controller 250 receives the operation command and uploads it to the server 400. The server 400 responds to the operation command by obtaining the accompaniment and lyrics of the chorus song corresponding to the operation command and sending them to the display device 200.

[0273] S620B: Based on the accompaniment of the chorus song, receive audio and video data input from the display device to begin recording the first chorus resource file.

[0274] In this embodiment, when the display device 200 receives data from the server 400, the controller 250 controls the speaker to play the accompaniment of the choral song and controls the display 275 to display the lyrics of the choral song. See also Figure 21 The illustration shows a schematic diagram of an inviter recording a first chorus resource file according to some embodiments. Figure 21 In the display interface, a lyrics display window is set on one side to show the lyrics, and an inviter's video window is displayed on the other side to show the inviter's camera footage. Based on the accompaniment of the chorus song, the inviter begins recording the first chorus resource file. The inviter inputs audio data through the microphone on the display device 200 and video data through the camera on the display device 200, and the camera recording is displayed in real time in the inviter's video window. The controller 250 generates the first chorus resource file based on the audio data received by the microphone and the video data received by the camera. The first chorus resource file includes a first audio file and a first video file, which are packaged separately.

[0275] The inviter records their individual chorus portion using a display device and uploads the resulting first chorus resource file to the server. In this embodiment, the first audio file and the first video file are stored independently in different files and under different paths on the server, so that the invitee can download the first audio file and the first video file independently.

[0276] In some embodiments, the first audio file includes a time-tracked accompaniment for a choral song and received input audio data, while the first video file includes received input video data with time parameters, wherein the time parameters are generated based on the timeline of the accompaniment during playback. That is, the first choral resource file in this application includes two audio tracks and one video track, where one audio track is audio data, the other is a time-tracked accompaniment for a choral song, and the video track is video data with time parameters. It should be noted that since the first audio file includes a time-tracked accompaniment, it contains time parameters based on the timeline. Furthermore, the first video file is generated during video recording, also while the time-tracked accompaniment is playing; therefore, the first video file also includes time parameters related to the timeline.

[0277] S630B: Upload the first audio file and the first video file to the server respectively, and send a request to the server to generate a song chorus request.

[0278] In this embodiment, the controller 250 uploads the first audio file and the first video file to the server 400 respectively, and sends a request to the server 400. After receiving these two separately packaged files from the first chorus resource file, the server stores the first audio file and the first video file accordingly, that is, it stores the first audio file and the first video file under different paths so that the invited user can download the first audio file and the first video file respectively. After storing the first chorus resource file, the server 400 generates a song chorus request according to the request sent by the controller 250.

[0279] The display device for the invitation terminal provided in this application can package the audio and video data recorded by the inviter into separate first audio files and first video files, and upload these two files to the server separately, thereby improving the upload speed of the first audio files and first video files, so as to save download time when the invitee downloads the two files separately.

[0280] To further illustrate the process of increasing choral speed in this application, an embodiment of this application also provides a display device. The process of increasing choral speed provided in this application embodiment will be described below with reference to the accompanying drawings and through the invited end display device.

[0281] Figure 22 The diagram illustrates a flowchart of another method for increasing choral speed according to some embodiments. Figure 22 As shown, the method includes the following steps:

[0282] S810B: Receives a song duet request, wherein the song duet request is generated by the server in response to a request sent by the inviting display device.

[0283] In this embodiment, the inviter records a first chorus resource file through the invitation terminal display device, uploads the first chorus resource file to the server 400, and sends a request to the server 400. The server 400 generates a song chorus request based on the request sent by the invitation terminal display device, sends the song chorus request to the controller 250 in the display device 200, and the controller 250 receives the song chorus request.

[0284] S820B: In response to the input operation of accepting the song chorus request, a first chorus resource request is sent to the server.

[0285] In this embodiment, after receiving a song duet request, the invitee accepts the request by inputting an operation to the display device. Based on this response, the controller 250 sends a first duet resource request to the server 400. For example, after the invitee opens the duet function in the "Karaoke" app on the display device using the directional buttons or voice input button on the remote control, a song duet request dialog box is displayed on the duet function display interface on the monitor 275. The invitee then selects the dialog box using the directional buttons or voice input button on the remote control and accepts the invitation to participate in the duet. After the invitee accepts the invitation, the controller 250 sends a first duet resource request to the server 400. This first duet resource request is used to prompt the server to provide a first duet resource file.

[0286] In some embodiments, the first chorus resource file includes a first audio file and a first video file, which are stored separately. After receiving a first chorus resource request, the server 400 sends the first audio file and the first video file corresponding to the first chorus resource request to the display device 200. The first audio file contains the accompaniment of the song corresponding to the chorus request and the audio data received by the inviting display device; the first video file contains the video data received by the inviting display device. It should be noted that since the first audio file includes an accompaniment with a timeline, it contains time parameters based on the timeline. Furthermore, when recording video data, the first video file is generated while playing the accompaniment with the timeline; therefore, the first video file also includes time parameters related to the timeline.

[0287] In some embodiments, the download priority of the first audio file is higher than that of the first video file. Since the invitee, after responding to the inviter's request to sing along, can complete the recording of the remaining chorus portion as long as they can obtain the first audio file from the first chorus resource file, downloading the first video file from the first chorus resource file would improve the invitee's chorus experience, allowing them to see the inviter recording the chorus. Even if the first video file downloads slowly, it won't delay the invitee's participation in the chorus. Therefore, the download priority of the first audio file is higher than that of the first video file. The controller 250 in the display device 200 first receives the first audio file from the server 400 in response to the first chorus resource request, and then receives the first video file from the server 400 after receiving the first audio file in response to the first chorus resource request.

[0288] In one implementation, when storing the first audio file and the first video file, the server 400 adds relevant fields to indicate that the download priority of the first audio file is higher than that of the first video file. The display device 200 can then determine which file to download first based on these added fields.

[0289] In another implementation, the display device 200 sets the download priority of audio data higher than that of video data. When the display device 200 downloads the first chorus resource file from the server 400, it will prioritize downloading the first audio file within the first chorus resource file according to the set download rules.

[0290] In this embodiment, when the invitee responds to the inviter's request for a duet via a display device and obtains the first duet resource file of the song indicated by the duet request, since the download priority of the first audio file is higher than that of the first video file, the display device 200 will download the first audio file and the second video file sequentially. That is, the first audio file is downloaded first, followed by the first video file. Because the invitee can begin recording the duet as soon as the first audio file is downloaded, the invitee does not need to wait for the first video file to finish downloading. During the download process, the controller 250 allows the first video file to be downloaded incompletely.

[0291] In this embodiment, once the first audio file is downloaded, the invitee can participate in the chorus recording. If the first video file has not yet been downloaded when the invitee participates in the chorus, the controller 250 can detect the time point on the timeline corresponding to the currently input audio data while playing the first audio file. Based on this time point and the time parameters in the first video file, the controller can download a video segment from the position corresponding to the time parameter at the time point in the first video file. The time parameters are generated by the inviting display device based on the timeline in the accompaniment during playback. See also... Figure 23 This example illustrates a schematic diagram of an invited participant recording a second chorus resource file according to some embodiments. Combined with... Figure 23 As shown, if the invitee (Huang Xiaoyu love) has finished singing "How I wish you were the last one", then the controller 250 will collect the time when the end of the lyrics is located on the timeline. The controller 250 will obtain this position from the server 400 in the second video file and use it as the starting point to start downloading the video segment in the second video file.

[0292] In this embodiment, the display device 200 further includes a microphone and a camera. The microphone is used to acquire audio data of the invitee, and the camera is used to acquire video data of the invitee. The controller 250 controls the speaker output and lyrics display based on the downloaded first audio file and the received local audio data input from the microphone. It also controls the display of a video window on the monitor based on the downloaded first video file and the received local video data input from the camera. Figure 23 As shown, the display interface includes a lyrics display window, an inviter's video window, and an invitee's video window. The lyrics display window controls the display of lyrics, the speaker controls the output of the first audio file and local data, the inviter's video window displays the first video file, and the invitee's video window displays the local video data. Since the playback of the first audio file and local audio data is controlled separately from the playback of the first video file, their playback processes do not interfere with each other. That is, even if the playback of the first video file experiences stuttering, it will not affect the smooth playback of the first audio file.

[0293] In some embodiments, because the controller 250 allows the first video file to be downloaded incompletely, there may be a problem of video display desynchronization on the display device's monitor 275 when the invitee participates in the chorus. Combined with Figure 23As shown, the content in the invitee's video window is local video data recorded in real time by the camera on the display device 200, while the content in the inviter's video window should display the first video file. If the video clip in the downloaded first video file is out of sync with the current singing position of the invitee, or if the download of the first video file is lagging, the controller 250 can generate a prompt overlay and push it to the inviter's video window for display. The prompt overlay indicates that the first video file is loading, and the invitee can know from the content in the prompt overlay that the first video file is being buffered and downloaded.

[0294] S830B: Download the first audio file and the first video file respectively, and start the chorus according to the downloaded first audio file.

[0295] In this embodiment, the controller 250 downloads a first audio file and a first video file. For the invitee, downloading the essential first audio file is sufficient to start the chorus. In this application, the first audio file includes an accompaniment with a timeline and audio data received by the inviting display device while playing the accompaniment; that is, the first audio file contains time parameters based on the timeline. The timeline is determined based on the downloaded first audio file. The controller 250 controls the playback of the first audio file via a speaker and receives local audio data input from the microphone in the display device. The controller 250 records a second audio file based on the downloaded first audio file and the received local audio data. The second audio file includes an accompaniment with a timeline, audio data received by the inviting display device while playing the accompaniment, and local audio data. It should be noted that when the controller receives local audio data input from the microphone, it is based on the timeline of the first audio file. Therefore, the local audio data in the second audio file in this application also includes time parameters based on the timeline. Since the accompaniment, the audio data from the invitation display device, and the local audio data in the second audio file all have time parameters based on the timeline, the synthesized second audio file also includes time parameters based on the timeline. The controller uploads 250 recorded second audio files to the server 400 for later synthesis of the final choral work by the server 400.

[0296] In some embodiments, the display device 200 further includes a camera for capturing the recording of the invited person. After downloading the first audio file and the first video file respectively, the controller 250 determines the timeline based on the downloaded first audio file. The controller 250 controls the playback of the first audio file through a speaker and receives local video data input from the camera in the display device 200. The controller 250 records a second video file containing time parameters based on the received local video data. The time parameters are generated by the display device 200 based on the timeline in the accompaniment when playing the accompaniment in the first audio file. It should be noted that when the controller 250 receives the local video data input from the camera, it is based on the timeline in the first audio file. Therefore, the local video data in the second video file in this application also contains time parameters based on the timeline, and thus the recorded second audio file also contains time parameters based on the timeline. The controller 250 uploads the recorded second video file to the server 400 for later synthesis of the final choral work by the server 400.

[0297] In some embodiments, server 400 contains a first audio file and a first video file uploaded by the inviting display device, and a second audio file and a second video file uploaded by the invited display device. Since the second audio file contains the time-tracked accompaniment from the first audio file and the audio data received by the inviting display device while playing the accompaniment, and since the first video file, the second audio file, and the second video file all contain time parameters based on the timeline, server 400 can synchronously synthesize the first video file, the second audio file, and the second video file based on the timeline to form a choral work.

[0298] In one implementation, server 400 can store the choral work in a database. The invitee and the inviter can send requests to server 400 to retrieve the choral work via their respective display devices. Server 400 responds to the requests and sends the choral work to both the invitee's and inviter's display devices. In another implementation, after synthesizing the choral work, server 400 can directly send the choral work back to both the invitee's and inviter's display devices for viewing.

[0299] In this application, the invitee can obtain the first audio file and the first video file separately. Upon obtaining the essential first audio file for the chorus—that is, the accompaniment of the song corresponding to the chorus request—and the audio data received by the inviting device, the invitee can ensure normal participation in subsequent chorus parts without needing to simultaneously download the first audio and video data. This significantly saves the invitee's waiting time for file downloads and improves the user experience. Furthermore, since the controller can download the first audio file and the first video file separately, and the first audio file is relatively small, the controller will not experience download failures due to file size, thus preventing delays in the invitee's participation in the chorus.

[0300] Based on the same inventive concept as the aforementioned display device, embodiments of this application also provide a server configured to execute another method for increasing chorus speed. Figure 24 The diagram illustrates a flowchart of another method for increasing choral speed according to some embodiments. Figure 24 The configuration process of the server includes the following steps:

[0301] S1010B: The receiving end displays the first chorus resource file uploaded by the device, the first chorus resource file including a first audio file and a first video file generated according to the accompaniment of the chorus song.

[0302] In this embodiment, the inviter creates a first chorus resource file using an invitation display device. Audio data from the inviter is captured via a microphone on the invitation display device, and this audio data, along with the accompaniment of the song corresponding to the chorus request, forms the first audio file. Video data from the inviter is captured via a camera on the invitation display device, and this video data constitutes the first video file.

[0303] In some embodiments, the server 400 can review the first chorus resource file uploaded by the inviter. By checking whether there are sensitive words in the first chorus resource file, it can determine whether there is inappropriate content. It can also check the size to determine the integrity of the first chorus resource file and avoid uploading the first chorus resource file incompletely.

[0304] S1020B: Stores the first audio file and the first video file respectively.

[0305] In this embodiment, the inviting display device uploads a first audio file and a first video file respectively. The first audio file and the first video file are stored independently in different files and stored under different paths on the server 400, so that the invited display device can download the first audio file and the first video file respectively.

[0306] In some embodiments, the download priority of the first audio file is higher than that of the first video file. Since the invitee, after responding to the inviter's request to sing along, can complete the recording of the remaining chorus portion as long as they can obtain the first audio file from the first chorus resource file, downloading the first video file from the first chorus resource file would improve the invitee's chorus experience, allowing them to see the inviter recording the chorus. Even if the first video file downloads slowly, it won't delay the invitee's participation in the chorus. Therefore, the download priority of the first audio file is higher than that of the first video file.

[0307] In some embodiments, when storing the first audio file and the first video file, the server 400 adds relevant fields to indicate that the download priority of the first audio file is higher than that of the first video file. The invited display device can determine which one to download first based on the added relevant fields.

[0308] S1030B: Sends a song chorus request to the invited display device.

[0309] In this embodiment, after receiving the first audio file and the first video file, the server 400 stores the first audio file and the first video file respectively. That is, the first audio file and the first video file are stored under different paths so that the invitee can download the first audio file and the first video file respectively. After storing the first chorus resource file, the server 400 generates a song chorus request according to the request sent by the inviting end display device, and sends the song chorus request to the invited end display device.

[0310] S1040B: Receive the second chorus resource file generated by the invited terminal display device according to the song chorus request. The second chorus resource file includes a second audio file and a second video file generated according to the accompaniment of the chorus song.

[0311] In this embodiment, after downloading the first audio file, the invitee can participate in the chorus recording and generate a second chorus resource file. When recording the second chorus resource file, the invitee's local audio data is captured through a microphone on the display device. This data includes the accompaniment along a timeline, audio data received by the display device while playing the accompaniment, and the local audio data, forming the second audio file. Local video data is also captured through a camera on the display device, forming the second video file. The invitee then uploads the completed second chorus resource file to the server, which receives and saves it.

[0312] S1050B: Based on the timeline of the accompaniment of the choral song, the first choral resource file and the second choral resource file are synthesized to generate a choral file for display on the display device.

[0313] In this embodiment, based on a timeline, server 400 can synchronously synthesize the first chorus resource file uploaded by the inviter and the second chorus resource file uploaded by the invitee to form a chorus work. In one implementation, the server can store the chorus work in a database. The invitee and the inviter can send chorus work retrieval requests to the server through their respective display devices. The server responds to the chorus work retrieval requests and sends the chorus work to the invitee's display device and the inviter's display device. In another implementation, after synthesizing the chorus work, server 400 can directly feed the chorus work back to the invitee's display device and the inviter's display device for viewing.

[0314] The server in this application can independently save the first audio file and the first video file uploaded by the inviter, allowing the invitee to download the first audio file and the first video file separately. Once the invitee completes the second chorus resource file, the server can synchronously synthesize the first and second chorus resource files based on a timeline. In this application, the server ensures that the invitee can perform normal subsequent recording based on the first audio file without needing to simultaneously download the first audio and first video data uploaded by the inviter, thus greatly saving the invitee's waiting time for file downloads and improving the user experience.

[0315] Corresponding to the aforementioned invited display device, this application embodiment also provides a method for increasing the speed of chorus singing. The method includes: the invited party receiving a song chorus request through a controller in the display device, wherein the song chorus request is generated by the server in response to a request sent by the inviting display device. In response to an input operation accepting the song chorus request, the controller sends a first chorus resource request to the server, wherein the first chorus resource request is used to cause the server to send a first audio file and a first video file corresponding to the first chorus resource request to the display device. The first audio file contains the accompaniment of the song corresponding to the song chorus request and the received audio data uploaded by the inviting display device; the first video file contains the video data received by the inviting display device. The controller downloads the first audio file and the first video file respectively, and starts the chorus singing based on the downloaded first audio file.

[0316] In some embodiments, the download priority of the first audio file is higher than that of the first video file. Since the invitee, after responding to the inviter's request to sing along, can complete the recording of the remaining chorus portion as long as they can obtain the first audio file from the first chorus resource file, downloading the first video file from the first chorus resource file would improve the invitee's chorus experience, allowing them to see the inviter recording the chorus. Even if the first video file downloads slowly, it won't delay the invitee's participation in the chorus. Therefore, the download priority of the first audio file is higher than that of the first video file. The controller first receives the first audio file from the server in response to the first chorus resource request, and then receives the first video file from the server after receiving the first audio file in response to the first chorus resource request.

[0317] Corresponding to the aforementioned invitation terminal display device, this application embodiment also provides a method for improving choral singing speed. The method includes: a controller in the display device receiving an operation command input by a user, the operation command being used to obtain the accompaniment of a choral song from a server. Based on the accompaniment of the choral song, the controller receives audio data and video data input from the display device to begin recording a first choral resource file. The first choral resource file includes a first audio file and a first video file, respectively packaged. The first audio file contains the accompaniment of the choral song with a timeline and the received input audio data. The first video file contains the received input video data with time parameters, wherein the time parameters are generated based on the timeline in the accompaniment during playback. The controller uploads the first audio file and the first video file to the server and sends a request to the server to generate a song choral singing request.

[0318] For ease of explanation, the above description has been provided in conjunction with specific embodiments. However, the above exemplary discussion is not intended to be exhaustive or to limit the embodiments to the specific forms disclosed above. Various modifications and variations can be obtained based on the above teachings. The selection and description of the above embodiments are for the purpose of better explaining the principles and practical applications, thereby enabling those skilled in the art to better utilize the described embodiments and various different variations of embodiments suitable for specific use considerations.

Claims

1. A display device, characterized in that, include: The monitor is configured to display a user interface. The controller, which is communicatively connected to the display, is configured to: When the song mode corresponding to the received karaoke request is duet mode, in response to the karaoke request, the resource file of the song corresponding to the karaoke request is obtained, and the resource file includes the accompaniment and lyrics of the song; Play the resource file and start the chorus; During the playback of the resource file, in response to receiving a list control invocation command, the position of the text box control used to display the lyrics is moved upward along the vertical axis of the display, and the list control is displayed below the text box control along the vertical axis of the display, wherein the list control invocation command is used to control the display of the hidden list control on the display; After the chorus ends, a chorus file is generated, and a preview control for the chorus file is displayed on the monitor. In response to the operation command generated by the audio control, the chorus file generated by the chorus is obtained; Identify the singing tags on the timeline of the chorus file that correspond to the listening control. The singing tags are tags used to represent the local user singing the corresponding file segment or tags used to represent the remote user singing the corresponding file segment. Play the file segment corresponding to the singing tag in the chorus file.

2. The display device according to claim 1, characterized in that, In response to a received karaoke request, the controller is configured to retrieve the resource file of the song corresponding to the karaoke request from the resource file. In response to a received karaoke request, the system obtains the first audio file of the song corresponding to the karaoke request. The first audio file includes the accompaniment of the song, the lyrics of the song, and the audio data received by the invitation display device. or, In response to a received karaoke request, the first audio file and the first video file of the song corresponding to the karaoke request are obtained respectively. The first audio file includes the accompaniment of the song, the lyrics of the song and the audio data received by the inviting end display device. The first video file includes the video data received by the inviting end display device. During the playback of the resource file and the initiation of the chorus, the controller is configured as follows: Based on the obtained first audio file, play the first audio file and start the chorus.

3. The display device according to claim 2, characterized in that, The display device further includes a microphone, and after playing the first audio file based on the obtained first audio file and initiating the chorus, the controller is further configured to: The timeline is determined based on the first audio file, the playback of the first audio file is controlled, and local audio data input from the microphone is received. The first audio file includes an accompaniment containing the timeline and audio data received by the invitation display device when the accompaniment is played. A second audio file is recorded based on the first audio file and the received local audio data, wherein the second audio file includes an accompaniment with a timeline, audio data received by the invitation display device when playing the accompaniment, and the local audio data.

4. The display device according to claim 3, characterized in that, The display device further includes a camera. After playing the first audio file based on the obtained first audio file and starting the chorus, the controller is further configured to: Based on the first audio file, a timeline is determined, and the playback of the first audio file is controlled to receive local video data input from the camera; Record a second video file containing time parameters based on the received local video data, wherein the time parameters are generated by the display device according to the timeline in the accompaniment when playing the accompaniment in the first audio file.

5. The display device according to claim 1, characterized in that, The controller is also configured to: Plays the song file selected by the local user and the user on the other end when they sing together, and displays the chorus division information; Obtain the timeline of the song file, and mark the song file in a certain time period as the singing part of the local user or the singing part of the remote user according to the chorus division information in the timeline; Based on the markings of the singing parts of the local user, a first singing tag is added to the timeline of the song file. The first singing tag is used to represent the start time and end time of the singing part of the song file corresponding to the local user on the timeline. Based on the markings of the singing parts of the peer user, a second singing tag is added to the timeline of the song file. The second singing tag is used to characterize the start and end times of the singing parts of the peer user on the timeline of the song file.

6. The display device according to claim 1, characterized in that, In response to receiving a list control invocation command, the controller is configured to move the position of the text box control for displaying the lyrics vertically upward along the display, wherein the text box control is moved vertically upward along the display. In response to the list control launch command, obtain the initial display height of the text box control and the rise height of the list control; The adjusted height of the text box control is determined based on the initial display height of the text box control and the rising height of the list control; Based on the adjusted height of the text box control, move the display position of the text box control vertically upward along the display.

7. The display device according to claim 1, characterized in that, The controller is also configured to: In response to the list control restore command, the list control is made to disappear from display, and the adjusted text box control is restored to its initial display height.

8. The display device according to claim 7, characterized in that, The controller is equipped with a service development platform; the service development platform is configured as follows: Get the interval duration of user actions; When the interval reaches a time threshold, a list control recovery instruction is generated. The list control recovery instruction is used to control the list control to move vertically downward along the display and disappear from the playback window.

9. A method for adjusting the display position of a text box control, characterized in that, include: When the song mode corresponding to the received karaoke request is duet mode, in response to the karaoke request, the resource file of the song corresponding to the karaoke request is obtained, and the resource file contains the accompaniment and lyrics of the song; Play the resource file and start the chorus; During the playback of the resource file, if a list control invocation command is received, the position of the text box control used to display lyrics is moved upward along the vertical axis of the display, and the list control is displayed below the text box control along the vertical axis of the display. The list control invocation command is used to control the display of the hidden list control on the display. After the chorus ends, a chorus file is generated, and a preview control for the chorus file is displayed on the monitor. In response to the operation command generated by the audio control, the chorus file generated by the chorus is obtained; Identify the singing tags on the timeline of the chorus file that correspond to the listening control. The singing tags are tags used to represent the local user singing the corresponding file segment or tags used to represent the remote user singing the corresponding file segment. Play the file segment corresponding to the singing tag in the chorus file.

Citation Information

Patent Citations

  • Methods for displaying the status of audio and video recordings, servers, and terminal devices

    CN112073826B

  • Singing interface display method, display equipment and server

    CN112533030A

  • Video playing method, device and client

    CN105872710A

  • Online KTV singing device and method, and computer readable storage medium

    CN110264986A