Song playing progress identification method, device, computer equipment and storage medium

By monitoring the song playback progress at the terminal and obtaining characteristic information, identifying the tone of the song paragraph, the problem that the electronic music processing software cannot obtain the progress of the third-party player is solved, real-time tone display and future tone prediction are achieved, and music processing effect is improved.

CN118312123BActive Publication Date: 2025-01-17GUANGZHOU ZIYUN TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202410460479.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-04-17
Publication Date
2025-01-17
Estimated Expiration
2044-04-17

AI Technical Summary

Technical Problem

When users use electronic music processing software, they cannot obtain the song playback progress of third-party players, resulting in the inability to predict the tone of future songs in advance, affecting the texture of the music.

Method used

By installing the target client and audio player in the terminal, we can monitor the song playback progress, obtain song feature information and paragraph tone information, identify the current playback progress, and dynamically display the tone of each paragraph to achieve real-time tone display.

Benefits of technology

It overcomes the problem that electronic music processing software cannot obtain the playback progress of third-party players. It does not need to listen to songs and recognize songs, and takes up less storage space. It supports predicting the tone of future songs in advance, improving the music processing effect.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118312123B_ABST
    Figure CN118312123B_ABST
Patent Text Reader

Abstract

The present application relates to a method, device, computer equipment and storage medium for identifying the progress of song playback. Applied to a terminal, the terminal is equipped with a target client and an audio player, and the method includes: in response to the operation of starting the target client to monitor the progress of song playback, obtaining the song currently played by the audio player as the song to be identified; obtaining the song feature information and song paragraph key information of the song to be identified from the preset database corresponding to the target client; identifying the current playback progress of the song to be identified based on the song feature information, and determining the song paragraph where the current playback progress is located as the target song paragraph; in the interface of the target client, locating and displaying the paragraph key of the target song paragraph, and dynamically displaying the paragraph key of each song paragraph based on the real-time playback progress of the song to be identified. The use of this method can identify the progress of song playback, providing support for predicting the key of future songs in advance.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a song playing progress identification method, apparatus, computer equipment, storage medium and computer program product. Background Art

[0002] With the development of sound card technology, users are increasingly inclined to use sound cards to produce effects, such as vocal processing, among which electronic sound effects can make up for slight vocal out-of-tune situations. Since different songs have different keys and scales, singing electronic sound effects without the user knowing the key of the song will cause the vocal to be out of tune. In addition, in order to improve the texture of the music, the melody and chorus of each song will also have different keys, that is, there are multiple keys in one song.

[0003] In order to solve the above problem, the keynote of the future song that the user is going to sing can be obtained by predicting in advance, and to achieve this goal, it is necessary to determine the real-time progress of the user's song playback. When a user uses a specific electronic music processing software, the electronic music processing software is usually used to play songs to obtain the playback progress based on the played song file. If the user uses a third-party player to play songs, the electronic music processing software cannot obtain the playback progress of the third-party player, nor can it predict the keynote of future songs in advance. Summary of the invention

[0004] Based on this, it is necessary to provide a song playback progress identification method, device, computer equipment, storage medium and computer program product to address the above technical problems.

[0005] In a first aspect, the present application provides a song playing progress identification method, which is applied to a terminal, wherein the terminal is installed with a target client and an audio player, including:

[0006] In response to starting the operation of monitoring the progress of song playing in the target client, obtaining the song currently played by the audio player as the song to be identified;

[0007] Acquire the song feature information and song paragraph key information of the song to be identified from the preset database corresponding to the target client; the song paragraph key information includes the paragraph key of different song paragraphs;

[0008] According to the song feature information, the current playing progress of the song to be identified is identified, and the song section where the current playing progress is located is determined as the target song section;

[0009] In the interface of the target client, the paragraph key of the target song paragraph is positioned and displayed, and the paragraph key of each song paragraph is dynamically displayed based on the real-time playback progress of the song to be identified.

[0010] In one embodiment, identifying the current playing progress of the song to be identified according to the song feature information includes:

[0011] Perform song feature conversion processing on the real-time recorded playback sound of the song to be identified to obtain feature information to be identified;

[0012] Compare the feature information to be identified with the song features corresponding to each song time point in the song feature information, and determine the song time point that matches the feature information to be identified as the target time point;

[0013] According to the target time point, obtaining the current playing progress of the song to be identified;

[0014] Among them, the song feature information includes at least one of song spectrum graph, song waveform graph, song chromaticity features, song Chroma features, music signal processing, song beat melody, song key per second, song acoustic features, song rhythm pattern, song music structure, song sound quality, song sound orientation, music emotional features, music vocal features, volume changes, high and low pitch positions, and song frequency per second.

[0015] In one embodiment, when a song spectrum graph is used as the song feature information, before the step of obtaining the song currently played by the audio player as the song to be identified in response to starting the operation of monitoring the song playing progress in the target client, the method further includes:

[0016] Importing sample song data of the sample song into a backend corresponding to the target client;

[0017] Performing Fourier transform on the sample song data, extracting the spectrum features of the sample song, and obtaining a song spectrum graph of the sample song; the song spectrum graph of the sample song includes a sample spectrum array, and the sample spectrum array is used to characterize the correlation between each song time point and the spectrum peak point in the song spectrum graph of the sample song;

[0018] The song spectrogram of the sample song is stored in the preset database.

[0019] In one embodiment, identifying the current playing progress of the song to be identified according to the song feature information includes:

[0020] Extracting and converting the spectrum features of the real-time recorded playing sound of the song to be identified to obtain a recorded spectrum array as the feature information to be identified;

[0021] Comparing the recorded spectrum array with the sample spectrum array in the song spectrum graph corresponding to the song to be identified, and determining the spectrum peak points that match the spectrum feature points contained in the recorded spectrum array;

[0022] The current playing progress of the song to be identified is determined according to the song time point associated with the spectrum peak point.

[0023] In one embodiment, before the step of obtaining the song currently played by the audio player as the song to be identified in response to starting the operation of monitoring the song playing progress in the target client, the method further includes:

[0024] In a manner of dividing the song key according to the beats, the sample song data of the sample song is subjected to key analysis and processing to obtain the first segmented key of a plurality of preset time periods; the number of beats in each of the preset time periods is the same;

[0025] Taking the first segment keynote of each preset time period as the paragraph keynote of each song paragraph, and obtaining the song paragraph keynote information of the sample song;

[0026] The song paragraph key information of the sample song is stored in the preset database.

[0027] In one embodiment, before the step of obtaining the song currently played by the audio player as the song to be identified in response to starting the operation of monitoring the song playing progress in the target client, the method further includes:

[0028] According to the method of dividing the song key in the spectrum graph, the time interval is divided according to the position of the peak point in the song spectrum graph of the sample song, and the key analysis processing is performed on the sample song data of each divided interval to obtain the second segmented key of each divided interval;

[0029] Using the second segment key of each of the divided intervals as the paragraph key of each of the song paragraphs, to obtain the song paragraph key information of the sample song;

[0030] The song paragraph key information of the sample song is stored in the preset database.

[0031] In one embodiment, the method further comprises:

[0032] Monitoring the progress of the audio player playing the song to be identified in real time through the target client;

[0033] When a change in the playing progress of the song to be identified is detected, determining a new song segment where the playing progress is located after the change;

[0034] In the interface of the target client, the keynote of the new song segment is updated and positioned to be displayed.

[0035] In a second aspect, the present application further provides a song playing progress identification device, which is applied to a terminal, wherein the terminal is installed with a target client and an audio player, including:

[0036] A song acquisition module to be identified, used for, in response to an operation of starting the target client to monitor the progress of song playback, acquiring the song currently played by the audio player as the song to be identified;

[0037] A song information acquisition module, used to obtain song feature information and song paragraph key information of the song to be identified from a preset database corresponding to the target client; the song paragraph key information includes paragraph keys of different song paragraphs;

[0038] A current playing progress identification module is used to identify the current playing progress of the song to be identified according to the song feature information, and determine the song section where the current playing progress is located as the target song section;

[0039] The paragraph key display module is used to locate and display the paragraph key of the target song paragraph in the interface of the target client, and dynamically display the paragraph key of each song paragraph based on the real-time playback progress of the song to be identified.

[0040] In a third aspect, the present application further provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:

[0041] In response to starting the operation of monitoring the progress of song playing in the target client, obtaining the song currently played by the audio player as the song to be identified;

[0042] Acquire the song feature information and song paragraph key information of the song to be identified from the preset database corresponding to the target client; the song paragraph key information includes the paragraph key of different song paragraphs;

[0043] According to the song feature information, the current playing progress of the song to be identified is identified, and the song section where the current playing progress is located is determined as the target song section;

[0044] In the interface of the target client, the paragraph key of the target song paragraph is positioned and displayed, and the paragraph key of each song paragraph is dynamically displayed based on the real-time playback progress of the song to be identified.

[0045] In a fourth aspect, the present application further provides a computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the following steps are implemented:

[0046] In response to starting the operation of monitoring the progress of song playing in the target client, obtaining the song currently played by the audio player as the song to be identified;

[0047] Acquire the song feature information and song paragraph key information of the song to be identified from the preset database corresponding to the target client; the song paragraph key information includes the paragraph key of different song paragraphs;

[0048] According to the song feature information, the current playing progress of the song to be identified is identified, and the song section where the current playing progress is located is determined as the target song section;

[0049] In the interface of the target client, the paragraph key of the target song paragraph is positioned and displayed, and the paragraph key of each song paragraph is dynamically displayed based on the real-time playback progress of the song to be identified.

[0050] In a fifth aspect, the present application further provides a computer program product, including a computer program, which implements the following steps when executed by a processor:

[0051] In response to starting the operation of monitoring the progress of song playing in the target client, obtaining the song currently played by the audio player as the song to be identified;

[0052] Acquire the song feature information and song paragraph key information of the song to be identified from the preset database corresponding to the target client; the song paragraph key information includes the paragraph key of different song paragraphs;

[0053] According to the song feature information, the current playing progress of the song to be identified is identified, and the song section where the current playing progress is located is determined as the target song section;

[0054] In the interface of the target client, the paragraph key of the target song paragraph is positioned and displayed, and the paragraph key of each song paragraph is dynamically displayed based on the real-time playback progress of the song to be identified.

[0055] The above-mentioned song playback progress identification method, device, computer equipment, storage medium and computer program product obtain the song currently played by the audio player as the song to be identified by responding to the operation of starting the monitoring of song playback progress in the target client, and then obtains the song feature information and song paragraph tone information of the song to be identified from the preset database corresponding to the target client, and the song paragraph tone information includes the paragraph tone of different song paragraphs, and then identifies the current playback progress of the song to be identified according to the song feature information, and determines the song paragraph where the current playback progress is located as the target song paragraph, in the interface of the target client, the paragraph tone of the target song paragraph is located and displayed, and the paragraph tone of each song paragraph is dynamically displayed based on the real-time playback progress of the song to be identified, thereby overcoming the problem that the electronic music processing software cannot obtain the playback progress of the third-party player, and there is no need to use the method of identifying songs by listening to them, which occupies less storage space and is convenient for storage and subsequent optimization. Identifying the song playback progress provides support for predicting the future song tone in advance. BRIEF DESCRIPTION OF THE DRAWINGS

[0056] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the related technologies, the drawings required for use in the embodiments or the related technical descriptions are briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0057] FIG1 is a schematic flow chart of a method for identifying a song playing progress in one embodiment;

[0058] FIG2 is a schematic diagram of a PC operation interface in one embodiment;

[0059] FIG3a is a schematic diagram of storing a song spectrum diagram in one embodiment;

[0060] FIG3 b is a schematic diagram of song feature comparison in one embodiment;

[0061] FIG4 is a schematic diagram of a spectrum diagram storing tones in segments according to an embodiment;

[0062] FIG5 is a schematic flow chart of a method for identifying a song playing progress in another embodiment;

[0063] FIG6 is a structural block diagram of a device for identifying song playing progress in one embodiment;

[0064] FIG. 7 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION

[0065] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0066] In one embodiment, as shown in FIG1 , a song playing progress identification method is provided, which can be applied to a terminal, which is equipped with a target client and an audio player, and the terminal can be, but is not limited to, various personal computers, laptops, smart phones, tablet computers, Internet of Things devices, and portable wearable devices. In this embodiment, the method includes the following steps 101 to 104. Among them:

[0067] Step 101, in response to starting the operation of monitoring the song playing progress in the target client, obtaining the song currently played by the audio player as the song to be identified;

[0068] As an example, the target client may include a song information collector. When a user uses a third-party player (i.e., an audio player) to play a song, the song information collector can enable the target client to identify the song playback progress of the third-party player without obtaining the song file of the played song. The target client can then determine the tone of the song for subsequent progress based on the identified song playback progress, such as further analyzing the tone of each playback progress.

[0069] In actual application, the target client can be opened to monitor the progress of the song playback.

[0070] The target client's function of monitoring the song playing progress is started, and when the user uses the audio player to play songs, the song currently played by the audio player is obtained as the song to be identified, so as to further identify the song playing progress of the song to be identified based on the target client.

[0071] In one example, as shown in FIG2 , taking the operation on the PC as an example, the client of the electronic music processing software (i.e., the target client) can be opened on the PC, and the user can trigger the start of the target client's function of monitoring the song playback progress by clicking the virtual control "Start monitoring the song playback progress" in the client interface. Then, when the user uses a third-party player (i.e., an audio player) to play songs, the client can use the song currently played by the third-party player as the song to be identified, and can play and record the song to be identified, as shown in FIG2 with the main sound capture driver as the recording channel.

[0072] Step 102, obtaining the song feature information and song paragraph key information of the song to be identified from the preset database corresponding to the target client; the song paragraph key information includes the paragraph key of different song paragraphs;

[0073] Among them, sample songs can be uploaded to the backend corresponding to the target client in advance, and the song information of each sample song can be stored in a preset database after being processed by the backend, such as song identification (such as song name), song paragraph tone information, song feature information, etc.

[0074] After obtaining the song to be identified, the target client can obtain the pre-stored song information of the song to be identified from the preset database by requesting the backend, and then receive the song information returned by the backend in response to the request to obtain the song feature information and song paragraph tone information of the song to be identified.

[0075] Exemplarily, the target client may send a song information acquisition request to the backend according to the song identifier of the song to be identified, and then may receive the song feature information and song paragraph key information of the song to be identified returned by the backend.

[0076] In one example, song feature information may include song spectrum graph, song waveform graph, song chromaticity features, song Chroma features, music signal processing, music fingerprint, song beat melody, song key per second, song acoustic features (such as volume, timbre, harmonic ratio), song rhythm pattern (such as beat type, beat frequency), song music structure (such as paragraphs, chorus, interlude), song sound quality (such as clarity, noise level, etc.), song sound orientation (such as perception of the location of the sound source), music emotional features, music vocal features, volume strength changes, high and low sound positions, song frequency per second, and other song parameters may also be obtained as song feature information; based on the song feature information, the song progress of the song played by the user using a third-party player may be identified. Compared with the traditional method of identifying songs by listening to them through audio fingerprints, since the audio fingerprint of each song can reach about 10Mb, the number of songs in the scenario of identifying songs by listening to them is huge, and there is a problem of difficulty in supporting the storage and optimization of a large number of audio fingerprints; the technical solution of this embodiment determines the song playback progress based on song features, does not need to occupy a large amount of storage space, and can select appropriate song features (such as song spectrograms) according to the music / acoustic properties of the song to identify the playback progress, which is convenient for calculating song features and storing them, as well as comparing features with locally recorded and played songs when applied.

[0077] In another example, the song identifier (such as the song name) of the song to be identified can be obtained by the target client by calling the terminal system API interface, such as based on the identifier provided by a third-party player or an open API interface, etc., and there is no need to determine the song name by listening to the song.

[0078] In an optional embodiment, the song information returned by the backend in response to the request may also include the overall key and scale information of the song (such as outputting a key and scale), which can be used to characterize the overall tonality of the song; if the paragraph key and song features of the song to be identified are not pre-stored, the overall key of the song to be identified can be displayed, such as performing a key analysis based on a locally recorded playing song.

[0079] Step 103, identifying the current playing progress of the song to be identified according to the song feature information, and determining the song section where the current playing progress is located as the target song section;

[0080] After obtaining the song feature information, the song feature information can be compared with the locally recorded playback song features to identify the current playback progress of the song to be identified, and the target song segment where the current playback progress is located can be determined to further locate the target song segment to display the corresponding segment tone.

[0081] For example, since each song segment has a corresponding time interval, the time interval in which the time point corresponds to the identified current playback progress can be determined to locate the target song segment in which the current playback progress is located.

[0082] Step 104, in the interface of the target client, the paragraph key of the target song paragraph is positioned and displayed, and the paragraph key of each song paragraph is dynamically displayed based on the real-time playback progress of the song to be identified.

[0083] In a specific implementation, as shown in FIG2 , based on the acquired song paragraph key information of the song to be identified, the target song paragraph where the current playback progress is located can be located among multiple song paragraphs, and the paragraph key of the target song paragraph can be located and displayed (for example, the color distinction method is used as shown in FIG2 , and other distinction methods can also be used, which are not specifically limited in this embodiment), and the paragraph key of each song paragraph subsequent to the target song paragraph can be dynamically displayed as the real-time playback progress of the song to be identified progresses.

[0084] Specifically, the client (i.e., target client) program of the electronic music processing software may have a timer. After locating the target song segment where the current playback progress is located, the program may automatically increase the timer according to the time point corresponding to the current playback progress, and then, as time increases, the keynote of each song segment may be dynamically displayed, such as the keynote of each time interval. For example, after recognizing that the time point corresponding to the current playback progress is 1:32, the song segment corresponding to 1:32 may be located, and the timer may be synchronously adjusted to 1:32, and then the program may automatically increase the timer, such as 1:33, 1:34, 1:35, etc.

[0085] In one example, as shown in FIG. 2 , the keynote of the song segment where the current playback progress is located can be positioned and displayed in the interface of the target client, and the start time of the time interval of the song segment where the current playback progress is located is 0:16.538 seconds, and the end time is 20538 seconds; the interface of the target client can also display “detected song playback progress 1 (such as 1 can correspond to the number of song segments that have been displayed, or other settings can be used): xx seconds, xx:xx (such as corresponding to the start time of the time interval of the song segment where the current playback progress is located, or other settings can be used).

[0086] In the above-mentioned song playback progress identification method, by responding to the operation of starting the target client to monitor the song playback progress, the song currently played by the audio player is obtained as the song to be identified, and then the song feature information and song paragraph key information of the song to be identified are obtained from the preset database corresponding to the target client, and then according to the song feature information, the current playback progress of the song to be identified is identified, and the song paragraph where the current playback progress is located is determined as the target song paragraph, and in the interface of the target client, the paragraph key of the target song paragraph is located and displayed, and the paragraph key of each song paragraph is dynamically displayed based on the real-time playback progress of the song to be identified, which overcomes the problem that the electronic music processing software cannot obtain the playback progress of a third-party player, does not need to use the method of identifying songs by listening to them, occupies less storage space, is convenient for storage and subsequent optimization, and identifies the song playback progress to provide support for predicting the key of future songs in advance.

[0087] In an exemplary embodiment, the step of identifying the current playing progress of the song to be identified according to the song feature information may include the following steps:

[0088] The playback sound of the song to be identified recorded in real time is processed by song feature conversion to obtain feature information to be identified; the feature information to be identified is compared with the song features corresponding to each song time point in the song feature information to determine the song time point that matches the feature information to be identified as the target time point; based on the target time point, the current playback progress of the song to be identified is obtained.

[0089] Among them, the song feature information may include at least one of the song spectrum graph, song waveform graph, song chromaticity features, song Chroma features, music signal processing, song beat melody, song key per second, song acoustic features (such as volume, timbre, harmonic ratio), song rhythm pattern (such as beat type, beat frequency), song music structure (such as paragraphs, chorus, interlude), song sound quality (such as clarity, noise level, etc.), song sound orientation (such as perception of the location of the sound source), music emotional features, music vocal features, volume strength changes, high and low pitch positions, and song frequency per second.

[0090] In practical applications, the playback sound of the song to be identified can be recorded in real time. For example, loopback can be used to capture the computer playback sound to obtain a locally recorded playback song segment. Then, song features can be extracted and converted based on the most recently recorded playback song segment, such as processing in the same manner as the song feature information. The obtained feature information to be identified can then be compared with the song feature information. By comparing the song features corresponding to each song time point in the feature information to be identified and the song feature information, the time point corresponding to the song feature matching the feature information to be identified can be used as the target time point, and the current playback progress can be identified based on the target time point.

[0091] In this embodiment, song feature conversion processing is performed on the playback sound of the song to be identified in real time, so as to obtain the feature information to be identified, and then the feature information to be identified is compared with the song features corresponding to each song time point in the song feature information, and the song time point matching the feature information to be identified is determined as the target time point, and then according to the target time point, the current playback progress of the song to be identified is obtained, which can realize the determination of the song playback progress based on the song features, facilitates the calculation and storage of song features, and performs feature comparison with locally recorded and played songs.

[0092] In an exemplary embodiment, in the case where a song spectrum graph is used as the song feature information, before the step of obtaining the song currently played by the audio player as the song to be identified in response to starting the operation of monitoring the song playing progress in the target client, the following steps may also be included:

[0093] Importing sample song data of sample songs into the backend corresponding to the target client; performing Fourier transform on the sample song data, extracting the spectrum features of the sample songs, and obtaining a song spectrum graph of the sample songs; the song spectrum graph of the sample songs comprises a sample spectrum array, and the sample spectrum array is used to characterize the correlation between each song time point and the spectrum peak point in the song spectrum graph of the sample songs; and storing the song spectrum graph of the sample songs in the preset database.

[0094] In one example, for the calculation and storage stage of song features, taking the song spectrum as the song feature information as an example, the song can be imported, such as uploading a sample song to the backend, and then the sample song can be short-time Fourier transformed to extract the spectrum features and obtain the song spectrum of the sample song. Then, the peak points can be extracted from the song spectrum, such as using the largest peak point in each column as the feature point for extraction, forming a nebula diagram based on the extracted peak points in each column, and determining the peak point array (i.e., the sample spectrum array) based on the nebula diagram, and storing it in the server, so that the peak point array can be obtained from the server when applied for comparison with the local recording conversion features, and the paragraph tone, the corresponding time interval of the song paragraph and other information can also be returned.

[0095] In another example, the peak points in the song spectrogram can be obtained for storage. For example, the song is converted into a song spectrogram for storage as shown in Figure 3a, wherein the song time points corresponding to the peak points (i.e., spectrum peak points) can be recorded after conversion to the song spectrogram, and the spectrogram per second or frame can also be recorded (each spectrogram is different). Then, a peak point array can be obtained according to the sample song conversion, as the spectrogram array (i.e., sample spectrum array) corresponding to the song spectrogram of the sample song, so as to realize the conversion of image information into storable information (such as peak points, the positions of feature points representing each frame) and store them in a database.

[0096] In this embodiment, sample song data of a sample song is imported into the backend corresponding to the target client, and then Fourier transform is performed on the sample song data to extract the spectral features of the sample song, thereby obtaining a song spectrum graph of the sample song, and then storing the song spectrum graph of the sample song in a preset database, thereby providing data support for further comparing song features based on the spectrum graph to identify the progress of song playback.

[0097] In an exemplary embodiment, the step of identifying the current playing progress of the song to be identified according to the song feature information may include the following steps:

[0098] Perform spectrum feature extraction and conversion processing on the real-time recorded playback sound of the song to be identified to obtain a recorded spectrum array as the feature information to be identified; compare the recorded spectrum array with the sample spectrum array in the song spectrum graph corresponding to the song to be identified to determine the spectrum peak points that match the spectrum feature points contained in the recorded spectrum array; determine the current playback progress of the song to be identified based on the song time point associated with the spectrum peak point.

[0099] In a specific implementation, the spectral features of the most recently recorded song being played can be extracted and converted to obtain a recorded spectrum array as feature information to be identified. The spectrum graph array (i.e., sample spectrum array) obtained from the server can then be compared with the recorded spectrum array. As shown in FIG3b , the song time point associated with the matching spectrum peak point (such as 1:25 in FIG3b ) can be determined as the current playback progress. The white box area in FIG3b is the sound captured by the client converted into a spectrum graph and compared with the entire spectrum graph to determine that the playback progress is 1:25.

[0100] In this embodiment, the spectral features of the playback sound of the song to be identified that is recorded in real time are extracted and converted to obtain a recorded spectrum array as the feature information to be identified. The recorded spectrum array is then compared with the sample spectrum array in the song spectrum graph corresponding to the song to be identified. The spectrum peak points that match the spectrum feature points contained in the recorded spectrum array are determined. Then, according to the song time point associated with the spectrum peak point, the current playback progress of the song to be identified is determined, thereby realizing song feature comparison based on the spectrum graph to identify the song playback progress.

[0101] In an exemplary embodiment, before the step of obtaining the song currently played by the audio player as the song to be identified in response to starting the operation of monitoring the song playing progress in the target client, the following steps may also be included:

[0102] The sample song data of the sample song are subjected to key analysis and processing in a manner of dividing the song key according to the beats, so as to obtain the first segmented key of multiple preset time periods; the number of beats in each of the preset time periods is the same; the first segmented key of each of the preset time periods is used as the paragraph key of each of the song paragraphs, so as to obtain the song paragraph key information of the sample song; the song paragraph key information of the sample song is stored in the preset database.

[0103] In one example, for the storage stage of song paragraph key information, the entire song can be analyzed according to the imported sample song by dividing the song key according to the beat, by dividing the time segment into fixed 8 beats, and then analyzing the key of each time segment (that is, the first segmented key of the preset time period) for storage, such as one key every 8 beats, and locating the time period of each key for storage, for example, 0:00-0:08 key A, 0:08-0:16 key C, 0:16-0:24 key E, that is, the first segmented key of each preset time period, to obtain the song paragraph key information of the sample song.

[0104] In this embodiment, by dividing the song key according to the beat, the sample song data of the sample song is analyzed and processed to obtain the first segmented key of multiple preset time periods, and then the first segmented key of each preset time period is used as the paragraph key of each song paragraph to obtain the song paragraph key information of the sample song, and then the song paragraph key information of the sample song is stored in a preset database, which provides data support for predicting the future song key in advance and helps to improve the electronic music processing effect.

[0105] In an exemplary embodiment, before the step of obtaining the song currently played by the audio player as the song to be identified in response to starting the operation of monitoring the song playing progress in the target client, the following steps may also be included:

[0106] According to the method of dividing the song key in the spectrum graph, the time period is divided according to the position of the peak point in the song spectrum graph of the sample song, and the sample song data of each divided interval is subjected to key analysis processing to obtain the second segmented key of each divided interval; the second segmented key of each divided interval is used as the paragraph key of each song paragraph to obtain the song paragraph key information of the sample song; the song paragraph key information of the sample song is stored in the preset database.

[0107] In one example, for the storage stage of the key information of the song paragraphs, the whole song can be analyzed according to the imported sample song and the method of dividing the song key according to the spectrum graph, as shown in Figure 4, by determining the specific points of the spectrum graph, the area can be divided according to the position of the point to obtain the divided intervals of different time periods, such as paragraph 1, paragraph 2, paragraph 3, paragraph 4, and paragraph 5 in Figure 4, and then the key of each divided interval (i.e., the second segment key) can be determined, such as the key of paragraph 1 in Figure 4 is Gb, the key of paragraph 2 is Gb, the key of paragraph 3 is Gb, the key of paragraph 4 is Ab, and the key of paragraph 5 is Bb. The starting time point of each key can also be displayed, such as the corresponding time point of each paragraph while displaying the key of each paragraph as shown in Figure 4, so that segmented storage can be achieved based on the spectrum graph similarity algorithm.

[0108] In this embodiment, the song key is divided according to the frequency spectrum, the time period is divided according to the position of the peak point in the song frequency spectrum of the sample song, and the sample song data of each divided interval is subjected to key analysis processing to obtain the second segmented key of each divided interval, and then the second segmented key of each divided interval is used as the paragraph key of each song paragraph to obtain the song paragraph key information of the sample song, and then the song paragraph key information of the sample song is stored in a preset database, which provides data support for predicting the future song key in advance and helps to improve the electronic music processing effect.

[0109] In an exemplary embodiment, the following steps may also be included:

[0110] The target client monitors the playback progress of the song to be identified by the audio player in real time; when a change in the playback progress of the song to be identified is detected, a new song segment where the playback progress is located after the change is determined; and in the interface of the target client, the paragraph tone of the new song segment is updated and positioned for display.

[0111] In actual applications, the target client can monitor the playback progress in real time and continuously capture and record the played songs. Then, when the playback progress of the song to be identified is detected to have changed, the playback progress after the change can be further determined. Based on the new song segment where the playback progress is located after the change, the tone of the new song segment can be updated and displayed, thereby realizing the recognition of the song playback progress as the playback progress changes.

[0112] In this embodiment, the target client monitors the playback progress of the song to be identified by the audio player in real time, and then when a change in the playback progress of the song to be identified is detected, the new song segment where the playback progress is located after the change is determined, and then in the interface of the target client, the paragraph tone of the new song segment is updated and positioned to display, thereby ensuring the immediacy and effectiveness of the song playback progress identification.

[0113] In one embodiment, as shown in FIG5 , a flow chart of another method for identifying the progress of song playback is provided. In this embodiment, the method includes the following steps:

[0114] In step 501, the sample song data of the sample song is imported into the backend corresponding to the target client, the sample song data is Fourier transformed, the spectral features of the sample song are extracted, and the song spectrum graph of the sample song is obtained, which is stored in the preset database as the song feature information. In step 502, in response to the operation of monitoring the song playback progress in the target client, the song currently played by the audio player is obtained as the song to be identified, and the song feature information and song paragraph key information of the song to be identified are obtained from the preset database corresponding to the target client. In step 503, the spectral feature extraction and conversion processing of the playback sound of the song to be identified recorded in real time are performed to obtain a recorded spectrum array as the feature information to be identified. In step 504, the recorded spectrum array is compared with the sample spectrum array in the song spectrum graph corresponding to the song to be identified, and the spectrum peak point matching the spectrum feature point contained in the recorded spectrum array is determined, and the current playback progress of the song to be identified is determined according to the song time point associated with the spectrum peak point. In step 505, the song segment where the current playback progress is located is determined as the target song segment. In the interface of the target client, the segment key of the target song segment is positioned and displayed, and the segment key of each song segment is dynamically displayed based on the real-time playback progress of the song to be identified. In step 506, the playback progress of the song to be identified by the audio player is monitored in real time by the target client. In step 507, when a change in the playback progress of the song to be identified is detected, the new song segment where the playback progress is located after the change is determined, and the segment key of the new song segment is updated and positioned and displayed in the interface of the target client. It should be noted that the specific limitations of the above steps can be found in the specific limitations of a song playback progress identification method mentioned above, which will not be repeated here.

[0115] It should be understood that, although the various steps in the flowcharts involved in the above-mentioned embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps does not have a strict order restriction, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments can include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.

[0116] Based on the same inventive concept, the embodiment of the present application also provides a song playing progress identification device for implementing the song playing progress identification method involved above. The implementation scheme for solving the problem provided by the device is similar to the implementation scheme recorded in the above method, so the specific limitations in one or more song playing progress identification device embodiments provided below can refer to the limitations of the song playing progress identification method above, and will not be repeated here.

[0117] In an exemplary embodiment, as shown in FIG6 , a song playing progress identification device is provided, which is applied to a terminal, wherein the terminal is installed with a target client and an audio player, and includes:

[0118] The song to be identified acquisition module 601 is used for acquiring the song currently played by the audio player as the song to be identified in response to the operation of starting the song playing progress monitoring operation in the target client;

[0119] The song information acquisition module 602 is used to obtain the song feature information and song paragraph key information of the song to be identified from the preset database corresponding to the target client; the song paragraph key information includes the paragraph key of different song paragraphs;

[0120] The current playing progress identification module 603 is used to identify the current playing progress of the song to be identified according to the song feature information, and determine the song section where the current playing progress is located as the target song section;

[0121] The paragraph key display module 604 is used to locate and display the paragraph key of the target song paragraph in the interface of the target client, and dynamically display the paragraph key of each song paragraph based on the real-time playback progress of the song to be identified.

[0122] In one embodiment, the current playback progress identification module 603 includes:

[0123] The submodule for obtaining the feature information to be identified is used to perform song feature conversion processing on the real-time recorded playback sound of the song to be identified to obtain the feature information to be identified;

[0124] A song feature comparison submodule, used for comparing the feature information to be identified with the song features corresponding to each song time point in the song feature information, and determining the song time point that matches the feature information to be identified as the target time point;

[0125] A current play progress obtaining submodule is used to obtain the current play progress of the song to be identified according to the target time point;

[0126] Among them, the song feature information includes at least one of song spectrum graph, song waveform graph, song chromaticity features, song Chroma features, music signal processing, song beat melody, song key per second, song acoustic features, song rhythm pattern, song music structure, song sound quality, song sound orientation, music emotional features, music vocal features, volume changes, high and low pitch positions, and song frequency per second.

[0127] In one embodiment, when the song spectrum diagram is used as the song feature information, the device further includes:

[0128] A sample song importing module, used to import sample song data of sample songs into a backend corresponding to the target client;

[0129] A spectrum feature extraction module is used to perform Fourier transform on the sample song data, extract the spectrum features of the sample song, and obtain a song spectrum graph of the sample song; the song spectrum graph of the sample song includes a sample spectrum array, and the sample spectrum array is used to characterize the correlation between each song time point and the spectrum peak point in the song spectrum graph of the sample song;

[0130] The sample spectrum graph storage module is used to store the song spectrum graph of the sample song in the preset database.

[0131] In one embodiment, the current playback progress identification module 603 includes:

[0132] The submodule for obtaining a recorded spectrum array is used to extract and convert the spectrum features of the real-time recorded playback sound of the song to be identified, and obtain a recorded spectrum array as the feature information to be identified;

[0133] A spectrum comparison submodule, used for comparing the recorded spectrum array with the sample spectrum array in the song spectrum graph corresponding to the song to be identified, and determining the spectrum peak points that match the spectrum feature points contained in the recorded spectrum array;

[0134] The current play progress determination submodule is used to determine the current play progress of the song to be identified according to the song time point associated with the spectrum peak point.

[0135] In one embodiment, the apparatus further comprises:

[0136] A beat division key module, used for performing key analysis and processing on the sample song data of the sample song in a manner of dividing the song key according to the beat, to obtain the first segmented key of multiple preset time periods; the number of beats in each of the preset time periods is the same;

[0137] A first song paragraph keynote information obtaining module, used to use the first segment keynote of each preset time period as the paragraph keynote of each song paragraph, to obtain the song paragraph keynote information of the sample song;

[0138] The first song paragraph key information storage module is used to store the song paragraph key information of the sample song into the preset database.

[0139] In one embodiment, the apparatus further comprises:

[0140] The spectrum graph division key module is used to divide the song key according to the spectrum graph, divide the time interval according to the position of the peak point in the song spectrum graph of the sample song, and perform key analysis on the sample song data of each divided interval to obtain the second segmented key of each divided interval;

[0141] A second song paragraph key information obtaining module, used for taking the second segment key of each of the divided intervals as the paragraph key of each of the song paragraphs, to obtain the song paragraph key information of the sample song;

[0142] The second song paragraph key information storage module is used to store the song paragraph key information of the sample song into the preset database.

[0143] In one embodiment, the apparatus further comprises:

[0144] A real-time monitoring module, used for monitoring the progress of the audio player playing the song to be identified in real time through the target client;

[0145] A changed section determination module, used for determining a new song section where the changed playing progress is located when a change in the playing progress of the song to be identified is detected;

[0146] The positioning display update module is used to update the positioning display of the paragraph key of the new song paragraph in the interface of the target client.

[0147] Each module in the above-mentioned song playing progress identification device can be implemented in whole or in part by software, hardware and their combination. Each module can be embedded in or independent of the processor in the computer device in the form of hardware, or can be stored in the memory of the computer device in the form of software, so that the processor can call and execute the corresponding operations of each module above.

[0148] In an exemplary embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be shown in FIG7. The computer device includes a processor, a memory, an input / output interface, a communication interface, a display unit, and an input device. The processor, the memory, and the input / output interface are connected via a system bus, and the communication interface, the display unit, and the input device are connected to the system bus via the input / output interface. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal in a wired or wireless manner, and the wireless manner may be implemented through WIFI, a mobile cellular network, NFC (near field communication) or other technologies. When the computer program is executed by the processor, a song playback progress recognition method is implemented. The display unit of the computer device is used to form a visually visible picture, which may be a display screen, a projection device, or a virtual reality imaging device. The display screen can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer device can be a touch layer covering the display screen, or a button, trackball or touchpad set on the computer device shell, or an external keyboard, touchpad or mouse.

[0149] Those skilled in the art will understand that the structure shown in FIG. 7 is merely a block diagram of a partial structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than shown in the figure, or combine certain components, or have a different arrangement of components.

[0150] In an exemplary embodiment, a computer device is provided, including a memory and a processor, wherein a computer program is stored in the memory, and when the processor executes the computer program, the following steps are implemented:

[0151] In response to starting the operation of monitoring the progress of song playing in the target client, obtaining the song currently played by the audio player as the song to be identified;

[0152] Acquire the song feature information and song paragraph key information of the song to be identified from the preset database corresponding to the target client; the song paragraph key information includes the paragraph key of different song paragraphs;

[0153] According to the song feature information, the current playing progress of the song to be identified is identified, and the song section where the current playing progress is located is determined as the target song section;

[0154] In the interface of the target client, the paragraph key of the target song paragraph is positioned and displayed, and the paragraph key of each song paragraph is dynamically displayed based on the real-time playback progress of the song to be identified.

[0155] In one embodiment, when the processor executes the computer program, it also implements the steps of the song playing progress identification method in the other embodiments mentioned above.

[0156] In one embodiment, a computer readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the following steps are implemented:

[0157] In response to starting the operation of monitoring the progress of song playing in the target client, obtaining the song currently played by the audio player as the song to be identified;

[0158] Acquire the song feature information and song paragraph key information of the song to be identified from the preset database corresponding to the target client; the song paragraph key information includes the paragraph key of different song paragraphs;

[0159] According to the song feature information, the current playing progress of the song to be identified is identified, and the song section where the current playing progress is located is determined as the target song section;

[0160] In the interface of the target client, the paragraph key of the target song paragraph is positioned and displayed, and the paragraph key of each song paragraph is dynamically displayed based on the real-time playback progress of the song to be identified.

[0161] In one embodiment, when the computer program is executed by a processor, the steps of the song playing progress identification method in the other embodiments described above are also implemented.

[0162] In one embodiment, a computer program product is provided, comprising a computer program, which, when executed by a processor, implements the following steps:

[0163] In response to starting the operation of monitoring the progress of song playing in the target client, obtaining the song currently played by the audio player as the song to be identified;

[0164] Acquire the song feature information and song paragraph key information of the song to be identified from the preset database corresponding to the target client; the song paragraph key information includes the paragraph key of different song paragraphs;

[0165] According to the song feature information, the current playing progress of the song to be identified is identified, and the song section where the current playing progress is located is determined as the target song section;

[0166] In the interface of the target client, the paragraph key of the target song paragraph is positioned and displayed, and the paragraph key of each song paragraph is dynamically displayed based on the real-time playback progress of the song to be identified.

[0167] In one embodiment, when the computer program is executed by a processor, the steps of the song playing progress identification method in the other embodiments described above are also implemented.

[0168] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant laws, regulations and standards of relevant countries and regions.

[0169] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, etc., but are not limited to this.

[0170] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0171] The above-described embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.

Claims

1. A song playing progress identification method, characterized in that: Applied to a terminal, the terminal is installed with a target client and an audio player, the method comprises: In response to starting the operation of monitoring the progress of song playing in the target client, obtaining the song currently played by the audio player as the song to be identified; Acquire the song feature information and song paragraph key information of the song to be identified from the preset database corresponding to the target client; the song paragraph key information includes the paragraph key of different song paragraphs; According to the song feature information, the current playing progress of the song to be identified is identified, and the song section where the current playing progress is located is determined as the target song section; In the interface of the target client, the paragraph key of the target song paragraph is positioned and displayed, and the paragraph key of each song paragraph is dynamically displayed based on the real-time playback progress of the song to be identified.

2. The method according to claim 1, characterized in that The step of identifying the current playing progress of the song to be identified according to the song feature information includes: Perform song feature conversion processing on the real-time recorded playback sound of the song to be identified to obtain feature information to be identified; Compare the feature information to be identified with the song features corresponding to each song time point in the song feature information, and determine the song time point that matches the feature information to be identified as the target time point; According to the target time point, obtaining the current playing progress of the song to be identified; Among them, the song feature information includes at least one of song spectrum graph, song waveform graph, song chromaticity features, song Chroma features, music signal processing, song beat melody, song key per second, song acoustic features, song rhythm pattern, song music structure, song sound quality, song sound orientation, music emotional features, music vocal features, volume changes, high and low pitch positions, and song frequency per second.

3. The method according to claim 2, characterized in that In the case where the song spectrum graph is used as the song feature information, before the step of obtaining the song currently played by the audio player as the song to be identified in response to the operation of starting the operation of monitoring the song playing progress in the target client, the method further includes: Importing sample song data of the sample song into a backend corresponding to the target client; Performing Fourier transform on the sample song data, extracting the spectrum features of the sample song, and obtaining a song spectrum graph of the sample song; the song spectrum graph of the sample song includes a sample spectrum array, and the sample spectrum array is used to characterize the correlation between each song time point and the spectrum peak point in the song spectrum graph of the sample song; The song spectrogram of the sample song is stored in the preset database.

4. The method according to claim 3, characterized in that The step of identifying the current playing progress of the song to be identified according to the song feature information includes: Extracting and converting the spectrum features of the real-time recorded playing sound of the song to be identified to obtain a recorded spectrum array as the feature information to be identified; Comparing the recorded spectrum array with the sample spectrum array in the song spectrum graph corresponding to the song to be identified, and determining the spectrum peak points that match the spectrum feature points contained in the recorded spectrum array; The current playing progress of the song to be identified is determined according to the song time point associated with the spectrum peak point.

5. The method according to claim 1, characterized in that Before the step of obtaining the song currently played by the audio player as the song to be identified in response to starting the operation of monitoring the song playing progress in the target client, the method further includes: In a manner of dividing the song key according to the beats, the sample song data of the sample song is subjected to key analysis and processing to obtain the first segmented key of a plurality of preset time periods; the number of beats in each of the preset time periods is the same; Taking the first segment keynote of each preset time period as the paragraph keynote of each song paragraph, and obtaining the song paragraph keynote information of the sample song; The song paragraph key information of the sample song is stored in the preset database.

6. The method according to claim 1, characterized in that Before the step of obtaining the song currently played by the audio player as the song to be identified in response to starting the operation of monitoring the song playing progress in the target client, the method further includes: According to the method of dividing the song key in the spectrum graph, the time interval is divided according to the position of the peak point in the song spectrum graph of the sample song, and the key analysis processing is performed on the sample song data of each divided interval to obtain the second segmented key of each divided interval; Using the second segment key of each of the divided intervals as the paragraph key of each of the song paragraphs, to obtain the song paragraph key information of the sample song; The song paragraph key information of the sample song is stored in the preset database.

7. The method according to claim 1, characterized in that The method further comprises: Monitoring the progress of the audio player playing the song to be identified in real time through the target client; When a change in the playing progress of the song to be identified is detected, determining a new song segment where the playing progress is located after the change; In the interface of the target client, the keynote of the new song segment is updated and positioned to be displayed.

8. A song playing progress recognition device, characterized in that: Applied to a terminal, the terminal is equipped with a target client and an audio player, and the device comprises: A song acquisition module to be identified, used for, in response to an operation of starting the target client to monitor the progress of song playback, acquiring the song currently played by the audio player as the song to be identified; A song information acquisition module, used to obtain song feature information and song paragraph key information of the song to be identified from a preset database corresponding to the target client; the song paragraph key information includes paragraph keys of different song paragraphs; A current playing progress identification module is used to identify the current playing progress of the song to be identified according to the song feature information, and determine the song section where the current playing progress is located as the target song section; The paragraph key display module is used to locate and display the paragraph key of the target song paragraph in the interface of the target client, and dynamically display the paragraph key of each song paragraph based on the real-time playback progress of the song to be identified.

9. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.

Citation Information

Patent Citations

  • Tune adjusting method and device and storage medium

    CN108074557A

  • Audio segmentation method and device, storage medium and electronic equipment

    CN111782863A