Music score display method, device, server and storage medium

By distributing music scores in online ensembles and adjusting the notes display time, the problem of inconsistent pace caused by network delay is solved, and a more efficient ensemble synchronization effect is achieved.

CN111862912BActive Publication Date: 2025-04-01MIGU CO LTD +1
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202010662778.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-07-10
Publication Date
2025-04-01
Estimated Expiration
2040-07-10

AI Technical Summary

Technical Problem

In the prior art, network delay causes inconsistent pace of the performer in online ensembles, which seriously affects the ensemble effect.

Method used

By distributing the music score to multiple performance terminals and displaying notes in time sequence in each terminal, the delay between each terminal and the music score server is obtained, and the time at which each note starts to display is adjusted according to the delay to achieve synchronous display.

Benefits of technology

By adjusting the time when the notes start to display, ensure that the notes at each performance terminal are synchronized with the notes at other terminals, thereby maintaining the pace of each performer and improving the effect and smoothness of the ensemble.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN111862912B_ABST
    Figure CN111862912B_ABST
Patent Text Reader

Abstract

The embodiments of the present invention relate to the field of communication technology, and disclose a music score display method, including: distributing the music score to N performance terminals, and displaying each note in the music score at each performance terminal according to the time sequence of the music score, so that the user of the performance terminal can perform according to the currently displayed note, wherein N is a natural number greater than 1; obtaining the time delay between the kth performance terminal and the music score server as the first time delay, wherein k is a natural number from 1 to N; adjusting the time when each note in the kth performance terminal starts to be displayed according to the first time delay. The embodiments of the present invention also provide a music score display device, server and storage medium. The music score display method, device, server and storage medium provided by the embodiments of the present invention improve the synchronization effect of the ensemble during online ensemble, so that the ensemble can proceed smoothly.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of communication technology, and in particular to a music score display method, device, server and storage medium. Background Art

[0002] Music ensemble refers to the performance of a piece of music by multiple performers using the same or different instruments according to the same score. When performing an ensemble, it is usually necessary to gather all the performers at a designated venue at an agreed time. However, the cost of the venue is usually high, and it is also difficult to organize all the performers to arrive at the designated location at the agreed time, which makes this type of ensemble usually difficult to proceed smoothly.

[0003] At present, in order to break through the limitations of venue and time during ensemble, a technology similar to multi-party calling can be used to achieve this, that is, to allow all performers to perform on the Internet at the same time, thereby achieving the purpose of ensemble.

[0004] However, the inventors have found that there are at least the following problems in the prior art: there are generally time delays in the network. Although these time delays can be tolerated during multi-party calls, in an ensemble where each performer is required to play in unison, the time delays will cause the performance pace of each performer to be inconsistent, seriously affecting the effect of the ensemble and making it difficult for the ensemble to proceed smoothly. Summary of the invention

[0005] The purpose of the embodiments of the present invention is to provide a music score display method, device, server and storage medium, so that the synchronization effect of the ensemble is improved during online ensemble, so that the ensemble can proceed smoothly.

[0006] To solve the above technical problems, an embodiment of the present invention provides a music score display method, which is applied to a music score server, including: distributing the music score to N performance terminals, and displaying each note in the music score at each performance terminal according to the time sequence of the music score, so that the user of the performance terminal can perform according to the currently displayed notes, wherein N is a natural number greater than 1; obtaining the time delay between the kth performance terminal and the music score server as the first time delay, wherein k is a natural number from 1 to N; and adjusting the time when each note in the kth performance terminal starts to be displayed according to the first time delay.

[0007] An embodiment of the present invention also provides a music score display device, including: a distribution module, used to distribute the music score to N performance terminals, and display each note in the music score at each performance terminal according to the time sequence of the music score, so that the user of the performance terminal can perform according to the currently displayed notes, wherein N is a natural number greater than 1; an acquisition module, used to obtain the time delay between the kth performance terminal and the music score server as a first delay, wherein k is a natural number from 1 to N; an adjustment module, used to adjust the time when each note in the kth performance terminal starts to be displayed according to the first delay.

[0008] An embodiment of the present invention also provides a server, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the above-mentioned music score display method.

[0009] An embodiment of the present invention further provides a computer-readable storage medium storing a computer program, which implements the above-mentioned music score display method when executed by a processor.

[0010] Compared with the prior art, the embodiment of the present invention distributes the music score to N performance terminals, and displays each note in the music score in the time sequence of the music score at each performance terminal, so that the user of the performance terminal can perform according to the currently displayed note; obtains the time delay between the kth performance terminal and the music score server as the first time delay, and adjusts the time when each note in the kth performance terminal starts to be displayed according to the first time delay. The music score is distributed to multiple performance terminals through the music score server, and the time delay of each performance terminal is obtained after the music score is distributed, and the time when each note in each performance terminal starts to be displayed is adjusted according to the time delay, so that the notes played by each performance terminal can be synchronized with the notes played by other performance terminals, so that the performance pace of each performer is consistent, the effect of the ensemble is improved, and the ensemble can be carried out smoothly.

[0011] In addition, adjusting the time when each note in the kth performance terminal starts to be displayed according to the first time delay includes: obtaining the time delay between the kth performance terminal and the mixing server as the second time delay, wherein the mixing server is used to obtain the audio output of N performance terminals for mixing; adjusting the time when each note in the kth performance terminal starts to be displayed according to the first time delay and the second time delay. Since the second time delay between the performance terminal and the mixing server will also affect the effect of the final ensemble, when adjusting the time when the note in the performance terminal starts to be displayed, the adjustment is combined with the first time delay and the second time delay, so that the adjustment of the time when each note in the performance terminal starts to be displayed can be more accurate, and the synchronization effect of the ensemble can be further improved.

[0012] In addition, the time when each note in the kth performance terminal starts to be displayed is adjusted according to the first time delay, including: according to the formula Calculate the time when each note in the kth performance terminal starts to display, where T F (i) is the time when the i-th note starts to be displayed, T(i) is the expected time when the i-th note starts to be displayed without delay, Δt max is the largest first delay among N performance terminals, Δt k is the first delay; according to T F(i) Displaying the i-th note in the k-th performance terminal. By calculating and adjusting the time when the note starts to be displayed through a formula, the time when the note starts to be displayed in the performance terminal with a smaller delay can be delayed more, while the time when the note starts to be displayed in the performance terminal with a larger delay can be delayed less, thereby synchronizing the display of the notes in all performance terminals and improving the synchronization of the performance pace of each performance terminal.

[0013] In addition, the time delay between the kth performance terminal and the music score server is obtained as the first time delay, specifically: the time delay between the kth performance terminal and the music score server is obtained as the first time delay according to a preset period. By regularly obtaining the time delay according to the preset period, the dynamic change of the network speed can be known, which provides a basis for the subsequent real-time adjustment of the delay range of the note display, so that the adjustment effect of the note display is better.

[0014] In addition, the time when each note in the kth performance terminal starts to be displayed is adjusted according to the first time delay, specifically: the time when each note in the kth performance terminal starts to be displayed is adjusted according to the preset period and the first time delay. By adjusting the time when the note starts to be displayed by the preset period and the first time delay, the time when the note starts to be displayed can be dynamically adjusted following the dynamic changes in the network speed, so that the time when the note starts to be displayed is more in line with the actual network environment, and the synchronization effect of the ensemble is improved.

[0015] In addition, the time when each note in the kth performance terminal starts to be displayed is adjusted according to the preset cycle and the first delay, including: obtaining the size relationship between the first delay of the current preset cycle and the first delay of the previous preset cycle; adjusting the time when each note in the kth performance terminal starts to be displayed according to the above size relationship.

[0016] In addition, the time when each note in the kth performance terminal starts to be displayed is adjusted according to the size relationship, including: if the first delay of the previous preset cycle is greater than or equal to the first delay of the current preset cycle, then according to the formula T F (i)=(T L (i)-T C (i))*(1-R)+T C (i) adjusting the time when each note in the kth performance terminal starts to be displayed within the current preset cycle; if the first delay of the previous preset cycle is less than the first delay of the current preset cycle, then according to the formula T F (i)=(T C (i)-T L (i))*R+T L (i) adjusting the time when each note in the kth performance terminal starts to be displayed within the current preset period, where T F (i) is the adjusted time when the i-th note of the current preset cycle starts to be displayed, T C(i) is the time when the i-th note of the current preset cycle starts to be displayed before adjustment, T L (i) is the time when the i-th note in the previous preset cycle starts to be displayed, R is the adjustment ratio of the time when each note starts to be displayed, R = min (1, (T C (i)-T recv ) / ΔT), T recv is the start time of the current preset cycle, and ΔT is the duration of the preset cycle. By adjusting the start time of the note display through the result of the formula calculation, the start time of the note closer to the previous preset cycle can be closer to the start time of the note display in the previous preset cycle, and the start time of the subsequent note can be close to the start time of the current preset cycle before adjustment, so that when the preset cycle is switched, the adjustment of the start time of the note display is smoother. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] One or more embodiments are exemplarily described by the pictures in the corresponding drawings, and these exemplary descriptions do not constitute limitations on the embodiments.

[0018] Figure 1 This is an example diagram of an application scenario of the music score display method provided by the first embodiment of the present invention;

[0019] Figure 2 yes Figure 1 The corresponding timing flow example diagram;

[0020] Figure 3 is a schematic flow chart of a music score display method provided by a first embodiment of the present invention;

[0021] Figure 4 is a schematic flow chart of a music score display method provided by a second embodiment of the present invention;

[0022] Figure 5 is a schematic flow chart of a music score display method provided in a third embodiment of the present invention;

[0023] Figure 6 is a schematic diagram of the module structure of a music score display device provided in a fourth embodiment of the present invention;

[0024] Figure 7 It is a schematic diagram of the structure of a server provided by the fifth embodiment of the present invention. DETAILED DESCRIPTION

[0025] In order to make the purpose, technical scheme and advantages of the present invention clearer, the following will be described in detail with reference to the accompanying drawings. However, it will be appreciated by those skilled in the art that in the various embodiments of the present invention, many technical details are provided in order to enable the reader to better understand the present application. However, even without these technical details and various changes and modifications based on the following embodiments, the technical scheme claimed in the present application can be implemented.

[0026] The first embodiment of the present invention relates to a music score display method, which distributes the music score to N performance terminals, and displays each note in the music score in the time sequence of the music score at each performance terminal, so that the user of the performance terminal can perform according to the currently displayed note; obtains the time delay between the kth performance terminal and the music score server as the first time delay; and adjusts the time when each note in the kth performance terminal starts to be displayed according to the first time delay. The music score is distributed to multiple performance terminals through the music score server, and each note in the music score is displayed in the time sequence of the music score at each performance terminal, so that the user of the performance terminal can perform according to the currently displayed note, thereby controlling the performance rhythm of each performer; and after the music score is distributed, the time delay of each performance terminal is obtained, and the time when each note in each performance terminal starts to be displayed is adjusted according to the time delay, so that the notes played by each performance terminal can be synchronized with the notes played by other performance terminals, so that the performance pace of each performer is kept consistent, the effect of the ensemble is improved, and the ensemble can be carried out smoothly.

[0027] It should be noted that the music score display method provided in the embodiment of the present invention is applied to a music score server (ie, a music library), that is, the executor of the music score display method is the music score server.

[0028] Please refer to Figure 1, which is an example diagram of an application scenario of the music score display method provided by an embodiment of the present invention. Specifically, the music score server sends the music score to N performance terminals, and the performance terminal sends the audio output of the performer during the performance to the mixing server. The mixing server mixes the audio output of the performance terminal and distributes it to each performance terminal or the audience terminal through the distribution system. The music score server, the performance terminal and the mixing server are connected through a network. In order to improve the effect of the ensemble, the network used for connection should use a low-latency network, such as a 5G network, WIFI or ZigBee network, etc., which can be selected according to actual needs, and no specific restrictions are made here. For example, when the music score server sends the music score to the performance terminal, a network channel with a high quality of service (QOS) priority can be used, that is, channel 1 in the figure uses a network channel with a high QOS priority. It should be understood that channel 2 in the figure is a network channel from the performance terminal to the mixing server, which is an uplink channel, and channel 3 in the figure is a network channel from the mixing server to the performance terminal, which is a downlink channel; the first performance terminal to the Nth performance terminal in the two places in the figure are the same group of performance terminals. In order to further improve the synchronization effect of the ensemble, the performance terminal group can use the NTP (Network Time Protocol) system to ensure that each performance terminal uses the same local clock. Optionally, the performance terminal group can use a high-precision NTP system.

[0029] Please refer to Figure 2 , which is Figure 1 Corresponding timing flow example diagram. Specifically, 1. The performer accesses the music score server to select the music score and initiates an ensemble request; 2. After receiving the ensemble request, the music score server responds to the ensemble request and distributes the selected music score to each performance terminal; 3. The user (performer) of the performance terminal performs according to the music score of the performance terminal; 4. The music score server detects the delay from the music score server to the performance terminal; 5. The music score server notifies the performance terminal of the detected delay; 6. The time when the notes of the performance terminal start to be displayed is adjusted according to the delay; 7. The mixing server obtains the audio output of each performance terminal for mixing; 8. The mixing server distributes the mix to each performance terminal or the listener's client through the distribution service.

[0030] The specific process of the music score display method provided by the embodiment of the present invention is as follows: Figure 3 As shown, the specific steps include:

[0031] S101: Distribute the music score to N performance terminals, and display each note in the music score in the time sequence of the music score at each performance terminal, so that the user of the performance terminal can perform according to the currently displayed notes, wherein N is a natural number greater than 1.

[0032] It should be understood that when each performance terminal displays notes according to the timing of the score, the total display time of the notes is determined according to the score. For example, if note A is 1 beat in the score, the total display time of note A is 1 beat.

[0033] Optionally, when the performance terminal displays the notes, the notes that need to be played can be displayed in a preset format, such as highlighted, and the user (performer) of the performance terminal can perform according to the currently highlighted notes. Optionally, when the performance terminal displays the notes that need to be played in a preset format, several notes before and after the notes that need to be played can be displayed on the performance terminal at the same time, and the display format is different from the preset format, so as to prompt or help the performer to perform, such as displaying them in gray.

[0034] Optionally, when distributing the music score to N performance terminals, the music score server divides the music score into multiple data packets, and distributes the same data packet to the N performance terminals at the same time, thereby facilitating the control of the performance rhythm of all performance terminals.

[0035] S102: Obtain the time delay between the k-th performance terminal and the music score server as the first time delay, where k is a natural number from 1 to N.

[0036] Optionally, the music score server may send a ping packet to the kth performance terminal, and measure the time delay between the kth performance terminal and the music score server as the first delay based on the difference between the time when the music score server receives a response to the ping packet and the time when the ping packet is sent.

[0037] Optionally, the music score server may obtain the time delay between the kth performance terminal and the music score server before or after distributing the music score to the performance terminal. The specific timing of obtaining the time delay may be set according to actual needs and is not specifically limited here. In addition, the music score server may obtain the first time delay only once or multiple times. For example, after distributing the music score to the performance terminal, the first time delay may be obtained once at regular intervals. The specific number of times of obtaining may also be set according to actual needs and is not specifically limited here.

[0038] S103: adjusting the start time of displaying each note in the kth performance terminal according to the first time delay.

[0039] Among them, the time when the note starts to be displayed refers to the time when the note starts to be displayed in the performance terminal. If the note to be played currently is set with a preset format, the time when the note starts to be displayed is the time when the note starts to be displayed in the performance terminal in the preset format.

[0040] It is understandable that in order to achieve a synchronous effect for the ensemble, when adjusting the time at which each note in the kth performance terminal starts to be displayed according to the first time delay, the first time delays of other performance terminals can be combined to keep the performance pace of each performance terminal consistent with the performance pace of other performance terminals. Specifically, if the first time delay of the kth performance terminal is larger among all performance terminals, the time at which each note in the kth performance terminal starts to be displayed will be delayed less; if the first time delay of the kth performance terminal is smaller among all performance terminals, the time at which each note in the kth performance terminal starts to be displayed will be delayed more.

[0041] Optionally, when the music score server adjusts the time when each note in the kth performance terminal starts to be displayed according to the first time delay, the adjustment is made in combination with at least part of the first time delays in all performance terminals. For example, the maximum value of the first time delay of 80% of the performance terminals is selected as a reference to adjust the time when each note in the kth performance terminal starts to be displayed. Optionally, the maximum value of the first time delay of all (100%) performance terminals can be selected as a reference.

[0042] In a specific example, S103 may specifically include:

[0043] The time when each note starts to be displayed in the kth performance terminal is calculated according to the following formula (1):

[0044]

[0045] Among them, T F (i) is the time when the i-th note starts to be displayed in the k-th performance terminal, T(i) is the expected time when the i-th note starts to be displayed without delay, Δt max is the largest first delay among N performance terminals, Δt k is the first delay of the kth performance terminal;

[0046] According to T F (i) Display the i-th note in the k-th performance terminal.

[0047] In formula (1), T(i) is the time point when the note appears in the score, which can be determined according to the content of the score. For example, note A appears at the 10th second in the score, and note B appears at the 12th second in the score.

[0048] Since the music score server detects the first delay based on the time from when the ping packet is sent to when the response is received, which is a two-way delay, and the music score server only involves a one-way delay from the music score server to the performance terminal when distributing the music score to the performance terminal, therefore, formula (1) is Expressed as one-way delay.

[0049] It can be seen from formula (1) that if the first time delay of the kth performance terminal is larger, the time when each note starts to be displayed in the kth performance terminal will be delayed less; if the first time delay of the kth performance terminal is smaller, the time when each note starts to be displayed in the kth performance terminal will be delayed more, so that the notes displayed by each performance terminal can be synchronized with the notes displayed by other performance terminals, so that the performance pace of all performance terminals is consistent.

[0050] Compared with the prior art, the music score display method provided by the embodiment of the present invention distributes the music score to N performance terminals, and displays each note in the music score in the time sequence of the music score at each performance terminal, so that the user of the performance terminal can perform according to the currently displayed note; obtains the time delay between the kth performance terminal and the music score server as the first time delay, and adjusts the time when each note in the kth performance terminal starts to be displayed according to the first time delay. The music score is distributed to multiple performance terminals through the music score server, and the time delay of each performance terminal is obtained after the music score is distributed, and the time when each note in each performance terminal starts to be displayed is adjusted according to the time delay, so that the notes played by each performance terminal can be synchronized with the notes played by other performance terminals, so that the performance pace of each performer is consistent, the effect of the ensemble is improved, and the ensemble can be carried out smoothly.

[0051] The second embodiment of the present invention relates to a music score display method. The second embodiment is substantially the same as the first embodiment, with the main difference being that: adjusting the time when each note in the kth performance terminal starts to be displayed according to the first time delay, including: obtaining the time delay between the kth performance terminal and the mixing server as the second time delay, and adjusting the time when each note in the kth performance terminal starts to be displayed according to the first time delay and the second time delay. Since the time delay between the performance terminal and the mixing server will also affect the effect of the ensemble, when adjusting the time when the note starts to be displayed, the first time delay and the second time delay are combined for adjustment, so that the performance effect can be more synchronized.

[0052] The specific process of the music score display method provided by the embodiment of the present invention is as follows: Figure 4 As shown, the specific steps include:

[0053] S201: Distribute the music score to N performance terminals, and display each note in the music score in the time sequence of the music score at each performance terminal, so that the user of the performance terminal can perform according to the currently displayed notes, wherein N is a natural number greater than 1.

[0054] S202: Obtain the time delay between the kth performance terminal and the music score server as the first time delay, where k is a natural number from 1 to N.

[0055] S203: Obtaining the time delay between the kth performance terminal and the mixing server as a second time delay, wherein the mixing server is used to obtain the audio outputs of N performance terminals for mixing.

[0056] S204: Adjust the time when each note starts to be displayed in the kth performance terminal according to the first delay and the second delay.

[0057] Among them, S201-S202 are the same as S101-S102 in the first embodiment. For details, please refer to the description in the first embodiment. In order to avoid repetition, they are not repeated here.

[0058] For S203-S204, specifically, the music server obtains the second delay between the kth performance terminal and the mixing server, and can send a request to the mixing server. After the mixing server obtains the second delay by sending a ping or other method, it sends the obtained second delay to the music server.

[0059] If the music server and the mixing server are physically located close to each other, for example, in the same computer room, the second delay can be considered equal to the first delay, that is, the second delay = the first delay = Δt k , so it can be considered that the influence of the second delay on the time when each note starts to be displayed in the kth performance terminal is also In this way, when it is necessary to adjust the time when each note starts to be displayed in the kth performance terminal by combining the first delay and the second delay, the influence of the second delay on the time when the note starts to be displayed can be added to the formula (1), that is:

[0060]

[0061] Thus, the following formula (2) is obtained:

[0062] T F (i) = T (i) + (Δt max -Δt k ) (2);

[0063] Since (Δt max -Δt k ) combines the first delay and the second delay. Therefore, by adjusting the time when each note in the k-th performance terminal starts to be displayed according to formula (2), the purpose of adjusting the time when each note in the k-th performance terminal starts to be displayed according to the first delay and the second delay can be achieved.

[0064] Compared with the prior art, the music score display method provided by the embodiment of the present invention obtains the time delay between the kth performance terminal and the mixing server as the second time delay, and adjusts the time when each note in the kth performance terminal starts to be displayed according to the first time delay and the second time delay. Since the time delay between the performance terminal and the mixing server will also affect the effect of the final ensemble, when adjusting the time when the note in the performance terminal starts to be displayed, the adjustment is combined with the first time delay and the second time delay, so that the adjustment of the time when each note in the performance terminal starts to be displayed can be more accurate, and the synchronization effect of the ensemble can be further improved.

[0065] The third embodiment of the present invention relates to a music score display method. The third embodiment is substantially the same as the first embodiment, with the main difference being that: the time delay between the kth performance terminal and the music score server is obtained as the first time delay, specifically: the time delay between the kth performance terminal and the music score server is obtained as the first time delay according to a preset period; and the time when each note in the kth performance terminal starts to be displayed is adjusted according to the first time delay, specifically: the time when each note in the kth performance terminal starts to be displayed is adjusted according to the preset period and the first time delay. By regularly obtaining the time delay according to the preset period, the dynamic changes in the network speed can be known, providing a basis for the subsequent real-time adjustment of the delay amplitude of the note display, so that the adjustment effect of the note display is better; and by adjusting the time when the note starts to be displayed by the preset period and the first time delay, the time when the note starts to be displayed can be dynamically adjusted following the dynamic changes in the network speed, so that the time when the note starts to be displayed is more in line with the actual network environment, and the synchronization effect of the ensemble is improved.

[0066] The specific process of the music score display method provided by the embodiment of the present invention is as follows: Figure 5 As shown, the specific steps include:

[0067] S301: Distribute the music score to N performance terminals, and display each note in the music score in the time sequence of the music score at each performance terminal, so that the user of the performance terminal can perform according to the currently displayed notes, wherein N is a natural number greater than 1.

[0068] S301 is the same as S101 in the first embodiment. For details, please refer to the description in the first embodiment. In order to avoid repetition, it will not be described again here.

[0069] S302: Obtaining the time delay between the kth performance terminal and the music score server as the first time delay according to a preset period.

[0070] The duration of the preset period can be set according to actual conditions, for example, it can be 10 seconds, 15 seconds or 20 seconds, etc., and there is no specific limitation here. It is understandable that when the preset period is longer, the user of the performance terminal can feel the change of rhythm less, and the adjustment tends to be smoother; but if the preset period is too long, it may cause the display of the notes in the performance terminal to fail to reflect the change of delay in time, resulting in poor synchronization effect of the ensemble. Therefore, the preset period should be reasonably set.

[0071] Optionally, when the music score server obtains the first delay of the kth performance terminal according to a preset period, it can detect the delay multiple times within the preset period, and take the average or extreme value of the delays detected multiple times as the first delay; it can also detect the delay only once within the preset period, and take the delay as the first delay. The specific setting can be based on actual needs and is not specifically limited here.

[0072] S303: adjusting the time when each note in the kth performance terminal starts to be displayed according to the preset period and the first time delay.

[0073] Since the music score server needs to obtain the first delay before making the current adjustment when adjusting the time when the note starts to be displayed according to the preset period and the first delay, the first delay of the current preset period should be obtained before the adjustment is implemented. Optionally, the first delay of the current preset period can be the delay detected at the beginning of the current preset period, or the delay detected at the end of the previous preset period, or the average value of the delays detected multiple times in the previous preset period. It can be set according to actual needs and is not specifically limited here.

[0074] It can be understood that adjusting the start time of each note in the kth performance terminal according to the preset cycle and the first delay means that the first delay obtained in the current preset cycle is adjusted in each preset cycle, so that the start time of the note is consistent with the current network environment.

[0075] However, when the first delays detected by the adjacent preset cycles differ greatly, if the time at which the note starts to be displayed is adjusted directly according to formula (1), the adjustment of the next preset cycle will appear abrupt, which is not conducive to the performance of the performer. For example, if the difference between the first delays of the adjacent preset cycles is 1 second, the time at which the note starts to be displayed in the next preset cycle may need to be adjusted by 1 second. The performer can clearly feel the change in rhythm, and the adjustment is not smooth enough.

[0076] In order to make the adjustment of the time when the note starts to be displayed smoother, in a specific example, the time when each note starts to be displayed in the kth performance terminal is adjusted according to the preset cycle and the first time delay, including: obtaining the size relationship between the first time delay of the current preset cycle and the first time delay of the previous preset cycle, and adjusting the time when each note starts to be displayed in the kth performance terminal according to the above size relationship.

[0077] According to formula (1), the greater the delay, the less the time when the note starts to be displayed will be postponed; the smaller the delay, the more the time when the note starts to be displayed will be postponed. Therefore, if the delay of the current preset cycle is greater than the delay of the previous preset cycle, the time when the note starts to be displayed should be advanced on the basis of the adjustment of the previous preset cycle when the current preset cycle is adjusted; if the delay of the current preset cycle is less than the delay of the previous preset cycle, the time when the note starts to be displayed should be postponed on the basis of the adjustment of the previous preset cycle when the current preset cycle is adjusted; if the two are equal, the adjustment of the previous preset cycle is maintained unchanged.

[0078] In a specific example, adjusting the start time of displaying each note in the kth performance terminal according to the above magnitude relationship may specifically include:

[0079] If the first delay of the previous preset cycle is greater than or equal to the first delay of the current preset cycle, the time when each note starts to be displayed in the kth performance terminal in the current preset cycle is adjusted according to the following formula (3):

[0080] T F (i)=(T L (i)-T C (i))*(1-R)+T C (i) (3);

[0081] If the first delay of the previous preset cycle is less than the first delay of the current preset cycle, the time when each note starts to be displayed in the kth performance terminal in the current preset cycle is adjusted according to the following formula (4):

[0082] T F (i)=(T C (i)-T L (i))*R+T L (i) (4);

[0083] Among them, T F (i) is the adjusted time when the i-th note of the current preset cycle starts to be displayed, T C (i) is the time when the i-th note of the current preset cycle starts to be displayed before adjustment, T L (i) is the time when the i-th note in the previous preset cycle starts to be displayed, R is the adjustment ratio of the time when each note starts to be displayed, R = min (1, (TC (i)-T recv ) / ΔT), T recv is the time when the current preset cycle starts, and ΔT is the duration of the preset cycle.

[0084] It should be understood that T C (i) and T L (i) can be T calculated by using formula (1) according to the first delay in the preset period. F (i).

[0085] Specifically, in the formula R = min(1,(T C (i)-T recv ) / ΔT), (T C (i)-T recv ) means the difference between the time when the note of the current preset cycle starts to be displayed and the time when the current preset cycle starts. The earlier the note, the shorter the time (T C (i)-T recv ) is smaller, the later the note, (T C (i)-T recv ) is larger.

[0086] When (T C (i)-T recv ) is less than ΔT, (T C (i)-T recv ) / ΔT is less than 1, then R=(T C (i)-T recv ) / ΔT, in particular, when T C (i) = T recv When R=0; when (T C (i)-T recv ) is greater than ΔT, (T C (i)-T recv ) / ΔT is greater than 1, then R = 1. In particular, when (T C (i)-T recv )=ΔT, (T C (i)-T recv ) / ΔT is equal to 1, then R=1.

[0087] When adjusting the time when the note starts to be displayed according to formula (3), there are the following cases:

[0088] 1. The note at the beginning of the current preset cycle, T C (i) = T recv , R=0, then T F (i) = T L (i) means that the time when the note starts to be displayed will not be adjusted;

[0089] 2. The note between the beginning of the current preset cycle and the end of the preset cycle, for example, R = 0.5, then T F (i) = 0.5T L (i)+0.5T C (i), indicating that the note start display time is the combined effect of the first delay of the previous preset cycle and the first delay of the current preset cycle;

[0090] 3. The note just after or after the current preset cycle ends, R = 1, T F (i) = T C (i) indicates that the following note is the time when the note of the current preset cycle starts to be displayed before adjustment.

[0091] From the analysis of formula (3), it can be seen that the start display time of the note closer to the previous preset cycle is closer to the start display time of the note in the previous preset cycle, and the start display time of the subsequent note is close to the start display time of the current preset cycle before adjustment, so that when the preset cycle is switched, the adjustment of the start display time of the note is smoother.

[0092] Similarly, it can be proved that formula (4) can also achieve the same adjustment effect.

[0093] It should be noted that the first delay of the current preset period is equal to the first delay of the current preset period, and can also be adjusted according to formula (4).

[0094] Compared with the prior art, the music score display method provided in the embodiment of the present invention can obtain the delay regularly according to a preset period, so as to know the dynamic changes of the network speed, provide a basis for the subsequent real-time adjustment of the delay amplitude of the note display, and make the adjustment effect of the note display better; and by adjusting the time when the note starts to be displayed through the preset period and the first delay, the time when the note starts to be displayed can be dynamically adjusted following the dynamic changes of the network speed, so that the time when the note starts to be displayed is more in line with the actual network environment, thereby improving the synchronization effect of the ensemble.

[0095] The step division of the above methods is only for the purpose of clear description. When implemented, they can be combined into one step or some steps can be split and decomposed into multiple steps. As long as they contain the same logical relationship, they are all within the scope of protection of this patent; adding insignificant modifications to the algorithm or process or introducing insignificant designs without changing the core design of the algorithm and process are all within the scope of protection of this patent.

[0096] The fourth embodiment of the present invention relates to a music score display device 400, such as Figure 6As shown, it includes: a distribution module 401, an acquisition module 402 and an adjustment module 403. The functions of each module are described in detail as follows:

[0097] The distribution module 401 is used to distribute the music score to N performance terminals, and display each note in the music score in the time sequence of the music score at each performance terminal, so that the user of the performance terminal can perform according to the currently displayed notes, wherein N is a natural number greater than 1;

[0098] The acquisition module 402 is used to acquire the time delay between the kth performance terminal and the music score server as a first time delay, where k is a natural number from 1 to N;

[0099] The adjustment module 403 is used to adjust the time when each note in the kth performance terminal starts to be displayed according to the first time delay.

[0100] Furthermore, the adjustment module 403 is also used for:

[0101] Obtaining the time delay between the kth performance terminal and the mixing server as the second time delay, wherein the mixing server is used to obtain the audio outputs of the N performance terminals for mixing;

[0102] The time when each note in the kth performance terminal starts to be displayed is adjusted according to the first delay and the second delay.

[0103] Furthermore, the adjustment module 403 is also used for:

[0104] According to the formula Calculate the time when each note in the kth performance terminal starts to display, where T F (i) is the time when the i-th note starts to be displayed, T(i) is the expected time when the i-th note starts to be displayed without delay, Δt max is the largest first delay among N performance terminals, Δt k is the first delay;

[0105] According to T F (i) Display the i-th note in the k-th performance terminal.

[0106] Furthermore, the acquisition module 402 is also used for:

[0107] The time delay between the kth performance terminal and the music score server is obtained as the first time delay according to a preset period.

[0108] Furthermore, the adjustment module 403 is also used for:

[0109] The time when each note in the kth performance terminal starts to be displayed is adjusted according to the preset cycle and the first time delay.

[0110] Furthermore, the adjustment module 403 is also used for:

[0111] Obtaining a magnitude relationship between a first time delay of a current preset cycle and a first time delay of a previous preset cycle;

[0112] The time when each note in the kth performance terminal starts to be displayed is adjusted according to the above-mentioned size relationship.

[0113] Furthermore, the adjustment module 403 is also used for:

[0114] If the first delay of the previous preset cycle is greater than or equal to the first delay of the current preset cycle, then according to the formula T F (i)=(T L (i)-T C (i))*(1-R)+T C (i) adjusting the time at which each note in the kth performance terminal starts to be displayed within the current preset period;

[0115] If the first delay of the previous preset cycle is less than the first delay of the current preset cycle, then according to the formula T F (i)=(T C (i)-T L (i))*R+T L (i) adjusting the time at which each note in the kth performance terminal starts to be displayed within the current preset period,

[0116] Among them, T F (i) is the adjusted time when the i-th note of the current preset cycle starts to be displayed, T C (i) is the time when the i-th note of the current preset cycle starts to be displayed before adjustment, T L (i) is the time when the i-th note in the previous preset cycle starts to be displayed, R is the adjustment ratio of the time when each note starts to be displayed, R = min (1, (T C (i)-T recv ) / ΔT), T recv is the time when the current preset cycle starts, and ΔT is the duration of the preset cycle.

[0117] It is not difficult to find that this embodiment is a device embodiment corresponding to the first embodiment, the second embodiment and the third embodiment, and this embodiment can be implemented in conjunction with the first embodiment, the second embodiment and the third embodiment. The relevant technical details mentioned in the first embodiment, the second embodiment and the third embodiment are still valid in this embodiment, and in order to reduce repetition, they are not repeated here. Accordingly, the relevant technical details mentioned in this embodiment can also be applied in the first embodiment, the second embodiment and the third embodiment.

[0118] It is worth mentioning that all modules involved in this embodiment are logic modules. In practical applications, a logic unit can be a physical unit, a part of a physical unit, or a combination of multiple physical units. In addition, in order to highlight the innovative part of the present invention, this embodiment does not introduce units that are not closely related to solving the technical problem proposed by the present invention, but this does not mean that there are no other units in this embodiment.

[0119] A fifth embodiment of the present invention relates to a server, such as Figure 7 As shown, it includes at least one processor 501; and a memory 502 that is communicatively connected to the at least one processor 501; wherein the memory 502 stores instructions that can be executed by the at least one processor 501, and the instructions are executed by the at least one processor 501 so that the at least one processor 501 can execute the above-mentioned music score display method.

[0120] The memory 502 and the processor 501 are connected in a bus manner, and the bus may include any number of interconnected buses and bridges, and the bus connects various circuits of one or more processors 501 and the memory 502 together. The bus can also connect various other circuits such as peripheral devices, voltage regulators, and power management circuits, which are well known in the art and are therefore not further described herein. The bus interface provides an interface between the bus and the transceiver. The transceiver can be one element or multiple elements, such as multiple receivers and transmitters, providing a unit for communicating with various other devices on a transmission medium. The data processed by the processor 501 is transmitted on a wireless medium via an antenna, and further, the antenna also receives data and transmits the data to the processor 501.

[0121] The processor 501 is responsible for managing the bus and general processing, and can also provide various functions, including timing, peripheral interfaces, voltage regulation, power management and other control functions. The memory 502 can be used to store data used by the processor 501 when performing operations.

[0122] The sixth embodiment of the present invention relates to a computer-readable storage medium storing a computer program, which implements the above method embodiment when executed by a processor.

[0123] That is, those skilled in the art can understand that all or part of the steps in the above-mentioned embodiment method can be completed by instructing the relevant hardware through a program, and the program is stored in a storage medium, including a number of instructions to enable a device (which can be a single-chip microcomputer, chip, etc.) or a processor to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk and other media that can store program codes.

[0124] Those skilled in the art will appreciate that the above-mentioned embodiments are specific examples for implementing the present invention, and in actual applications, various changes may be made thereto in form and detail without departing from the spirit and scope of the present invention.

Claims

1. A music score display method, characterized in that: Applied to music score servers, including: Distribute the music score to N performance terminals, and display each note in the music score at each performance terminal according to the time sequence of the music score, so that the user of the performance terminal can perform according to the currently displayed notes, wherein N is a natural number greater than 1; Obtaining the time delay between the kth performance terminal and the music score server as a first time delay, wherein k is a natural number from 1 to N; Adjusting the time at which each note in the kth performance terminal starts to be displayed according to the first time delay; The step of adjusting the start time of displaying each note in the k-th performance terminal according to the first time delay includes: Obtaining the time delay between the kth performance terminal and the mixing server as a second time delay, wherein the mixing server is used to obtain the audio outputs of the N performance terminals for mixing; adjusting the time at which each note in the kth performance terminal starts to be displayed according to the first time delay and the second time delay; The step of obtaining the time delay between the kth performance terminal and the music score server as the first time delay is specifically as follows: obtaining the time delay between the kth performance terminal and the music score server as the first time delay according to a preset period; The step of adjusting the time when each note in the k-th performance terminal starts to be displayed according to the first time delay is specifically: adjusting the time when each note in the k-th performance terminal starts to be displayed according to the preset period and the first time delay; The step of adjusting the time when each note in the kth performance terminal starts to be displayed according to the preset period and the first time delay comprises: Obtaining a magnitude relationship between a first time delay of a current preset cycle and a first time delay of a previous preset cycle; Adjusting the start time of displaying each note in the kth performance terminal according to the size relationship; The step of adjusting the start time of displaying each note in the kth performance terminal according to the size relationship includes: If the first delay of the previous preset cycle is greater than or equal to the first delay of the current preset cycle, then according to formula T F (i)=(T L (i)-T C (i))*(1-R)+T C (i) adjusting the time at which each note in the kth performance terminal starts to be displayed within the current preset period; If the first delay of the previous preset cycle is less than the first delay of the current preset cycle, then according to the formula T F (i)=(T C (i)-T L (i))*R+T L (i) adjusting the time at which each note in the kth performance terminal starts to be displayed within the current preset period, Among them, the T F (i) is the adjusted time when the i-th note of the current preset cycle starts to be displayed, and T C (i) is the time when the i-th note starts to be displayed in the current preset cycle before adjustment, and T L (i) is the time when the i-th note starts to be displayed in the previous preset period, and R is the adjustment ratio of the time when each note starts to be displayed, and R=min(1,(T C (i)-T recv ) / DT), the T recv is the time when the current preset cycle starts, and DT is the duration of the preset cycle.

2. A music score display device, characterized in that: include: a distribution module, used for the music score server to distribute the music score to N performance terminals, and display each note in the music score at each performance terminal according to the time sequence of the music score, so that the user of the performance terminal can perform according to the currently displayed notes, wherein N is a natural number greater than 1; An acquisition module, used for acquiring the time delay between the kth performance terminal and the music score server as a first time delay, wherein k is a natural number from 1 to N; An adjustment module, used for adjusting the time when each note in the kth performance terminal starts to be displayed according to the first time delay; The step of adjusting the start time of displaying each note in the k-th performance terminal according to the first time delay includes: Obtaining the time delay between the kth performance terminal and the mixing server as a second time delay, wherein the mixing server is used to obtain the audio outputs of the N performance terminals for mixing; adjusting the time at which each note in the kth performance terminal starts to be displayed according to the first time delay and the second time delay; The step of obtaining the time delay between the kth performance terminal and the music score server as the first time delay is specifically as follows: obtaining the time delay between the kth performance terminal and the music score server as the first time delay according to a preset period; The step of adjusting the time when each note in the k-th performance terminal starts to be displayed according to the first time delay is specifically: adjusting the time when each note in the k-th performance terminal starts to be displayed according to the preset period and the first time delay; The step of adjusting the time when each note in the kth performance terminal starts to be displayed according to the preset period and the first time delay comprises: Obtaining a magnitude relationship between a first time delay of a current preset cycle and a first time delay of a previous preset cycle; Adjusting the start time of displaying each note in the kth performance terminal according to the size relationship; The step of adjusting the start time of displaying each note in the kth performance terminal according to the size relationship includes: If the first delay of the previous preset cycle is greater than or equal to the first delay of the current preset cycle, then according to formula T F (i)=(T L (i)-T C (i))*(1-R)+T C (i) adjusting the time at which each note in the kth performance terminal starts to be displayed within the current preset period; If the first delay of the previous preset cycle is less than the first delay of the current preset cycle, then according to the formula T F (i)=(T C (i)-T L (i))*R+T L (i) adjusting the time at which each note in the kth performance terminal starts to be displayed within the current preset period, Among them, the T F (i) is the adjusted time when the i-th note of the current preset cycle starts to be displayed, and T C (i) is the time when the i-th note starts to be displayed in the current preset cycle before adjustment, and T L (i) is the time when the i-th note starts to be displayed in the previous preset period, and R is the adjustment ratio of the time when each note starts to be displayed, and R=min(1,(T C (i)-T recv ) / DT), the T recv is the time when the current preset cycle starts, and DT is the duration of the preset cycle.

3. A server, characterized in that: include: at least one processor; as well as, a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the music score display method according to claim 1.

4. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the music score display method according to claim 1 is implemented.

Citation Information

Patent Citations

  • Electronically guided music score set device based on synchronous-domain self-broadcasting

    CN108962202A

  • Network based music playing / song accompanying service system and method

    CN1433548A

  • Delay control electronic musical instrument and playing in concert system

    JP2005195982A