Queue-based audio playing method, device and equipment and storage medium
By randomly shuffling the playlist on the audio device and generating a target playback queue based on user profiles, the problem of playlists not being able to be dynamically adjusted in existing technologies is solved, thus improving user experience and personalized services.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-26
- Publication Date
- 2026-04-07
AI Technical Summary
Existing audio playlists cannot be dynamically adjusted according to playback mode, and users need to manually create and manage playlists. They cannot automatically generate or optimize playlists based on users' listening habits and preferences, which reduces the user experience.
By responding to playback operations on the user interface, the original playlist is randomly shuffled and the probability of being played is calculated using a uniformly distributed random number generator. User profiles are constructed by combining user behavior habits, and target audio is extracted from the new playlist using a content recommendation algorithm. The target playback queue is generated by sorting the audio according to the probability of being played.
It enables dynamic adjustments to playlists based on user preferences, enhancing the user experience and providing personalized and intelligent audio services.
Smart Images

Figure CN119166092B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of audio device control, in particular to an audio playing method and device based on a queue, an audio playing device, and a storage medium. BACKGROUND
[0002] With the development of intelligent audio control technology, most intelligent audio devices and streaming media platforms can achieve basic intelligent audio playing, for example, by providing a play list function and setting multiple playing modes for the list to realize automatic playing control of audio, such as sequential playing and random playing modes.
[0003] For the random playing mode, it is currently set by a developer and cannot be changed after the device is shipped. During the playing process, the display order of the audio list does not change, and only the audio is randomly selected by the background for playing. This method does not meet the usage habits of many users and reduces the user experience. In addition, the audio list needs to be manually created and managed by the user, and the system cannot automatically generate or optimize the list according to the user's listening habits and preferences. SUMMARY
[0004] The main purpose of the present application is to solve the problem that the existing audio playing list cannot be dynamically adjusted according to the playing mode.
[0005] The first aspect of the present application provides an audio playing method based on a queue, applied to an audio device with a user interface. The method comprises: determining a corresponding playing mode in response to a playing operation on a playing control on the user interface; randomly disturbing each audio in an original playing list on the audio device, inputting the disturbed playing list into a random number generator based on uniform distribution to calculate a playing probability, and constructing a new playing list based on the playing probability; obtaining user information of a user logged into the user interface, and constructing a user portrait based on user behavior habits in the user information; extracting target audios matching the user portrait from the new playing list by using a content recommendation algorithm; sorting all target audios in descending order of the playing probability, generating a target playing queue, and playing.
[0006] Optionally, the step of randomly shuffling each audio item in the original playlist on the audio device, inputting the shuffled playlist into a uniformly distributed random number generator to calculate the probability of being played, and constructing a new playlist based on the probability of being played, includes: constructing a pseudo-random number generator using a random algorithm; sequentially inputting each audio item in the original playlist on the audio device into the pseudo-random number generator to generate corresponding pseudo-random numbers, and reordering each audio item in the original playlist based on the pseudo-random numbers to obtain a shuffled playlist; inputting the shuffled playlist into the uniformly distributed random number generator to calculate the probability of being played; and randomly selecting two audio items from the shuffled playlist and swapping them according to a preset step size using a random forward traversal iteration method to generate a new playlist, wherein the difference in the probability of being played between the two randomly selected audio items is less than a preset threshold.
[0007] Optionally, the step of randomly selecting two audio elements from the shuffled playlist and swapping them according to a preset step size to generate a new playlist includes: using each audio element in the shuffled playlist as a matrix element and constructing an audio matrix according to the sorting order; based on the random forward traversal iteration, selecting two matrix elements from the audio matrix whose probability difference in playing time is less than a preset threshold and swapping them according to a one-to-one combination method, until the first matrix element is reached, thereby generating a new playlist; wherein, the one-to-one combination method means that one matrix element is sorted first and the other matrix element is sorted last, and the sorting distance between the two matrix elements is equal to the preset step size.
[0008] Optionally, the step of constructing a user profile based on user behavior habits in the user information includes: extracting user playback data from the audio database corresponding to the user interface based on the user information, wherein the playback data includes at least the audio playback history, playback count, collection history, comment history, and playback length; extracting profile features from the playback data using a pre-trained user preference model; and constructing a user profile based on the profile features using a matrix factorization collaborative filtering algorithm.
[0009] Optionally, the step of using matrix factorization collaborative filtering algorithm to construct user profiles based on the profile features includes: clustering the extracted profile features and constructing a user-item rating matrix based on the clustering results; performing factorization on the user-item rating matrix using singular value decomposition to obtain a user factor matrix and a song factor matrix; predicting user behavior corresponding to the user information based on the user factor matrix and the song factor matrix, and selecting corresponding profile features based on the predicted ratings to construct user profiles.
[0010] Optionally, the step of extracting target audio matching the user profile from the new playlist using a content recommendation algorithm includes: extracting song features of each audio in the new playlist, wherein the song features include at least song style and song description; calculating the similarity between the song style and the song description and the user profile, respectively, and determining the target audio based on the similarity.
[0011] Optionally, calculating the similarity between the song style and the song description and the user profile, and determining the target audio based on the similarity, includes: calculating the cosine similarity between the song style and the song description and the user profile; and selecting the N audios with the highest cosine similarity from the new playlist as the target audios.
[0012] Optionally, the step of sorting all target audios in descending order of their probability of being played to generate a target playback queue and then playing them includes: sorting all target audios in descending order of their probability of being played to generate a target playback queue; extracting playback display effects from the list based on the user profile; synchronizing the target playback queue to the user interface, and identifying the audio being played based on the playback display effects during playback.
[0013] Optionally, after sorting all target audios in descending order of their probability of being played to generate a target playback queue, the method further includes: constructing an initial population based on the target playback queue, wherein the initial population includes multiple playlist seeds, each playlist seed containing multiple audio styles; using a genetic algorithm to select parent seeds from the multiple playlist seeds in the initial population, and iterating based on the parent seeds with other playlist seeds to optimize the target playback queue.
[0014] Optionally, the step of using a genetic algorithm to select parent seeds from multiple playlist seeds in the initial population, and iterating based on the parent seeds with other playlist seeds to optimize the target playback queue, includes: calculating the fitness of each playlist seed based on the similarity between each playlist seed and the user profile and the factors to be optimized; selecting parent seeds from multiple playlist seeds based on the fitness; using a genetic algorithm to perform crossover and mutation processing on the parent seeds with other playlist seeds, and selecting new parent seeds based on the results of the crossover and mutation processing, until the similarity of each playlist seed satisfies the constraint conditions corresponding to the factors to be optimized, and outputting the optimized target playback queue.
[0015] Optionally, after sorting all target audios in descending order of their probability of being played to generate a target playback queue and then playing them, the method further includes: monitoring the playback progress of the audios in the target playback queue in real time and determining whether the playback progress has reached a preset threshold, which is the number of remaining unplayed audios; if so, using a list completion tool to filter target online audios that meet the user profile from the online audio database and updating the target online audios to the target playback queue.
[0016] Optionally, the step of using a list completion tool to filter target online audio that matches the user profile from an online audio database includes: using a list completion tool, searching for online audio in the online audio database using features in the user profile as indexes; extracting song features of each online audio, and clustering all the online audio based on the song features; calculating the similarity between the song features of each clustered online audio and the features in the user profile, and determining the target online audio based on the similarity.
[0017] A second aspect of this application provides a queue-based audio playback device for use with an audio device displaying a user interface, the device comprising:
[0018] The response module is used to respond to playback operations on the playback controls on the user interface and determine the corresponding playback mode;
[0019] The playlist generation module is used to randomly shuffle each audio in the original playlist on the audio device, input the shuffled playlist into a random number generator based on uniform distribution to calculate the probability of being played, and construct a new playlist based on the probability of being played.
[0020] The profile generation module is used to obtain user information that logs into the user interface and to construct a user profile based on the user behavior habits in the user information.
[0021] The recommendation module is used to extract target audio that matches the user profile from the new playlist using a content recommendation algorithm;
[0022] The playback module is used to sort all target audio in descending order of their probability of being played, generate a target playback queue, and then play them.
[0023] A third aspect of this application provides an audio device including a memory and at least one processor, the memory storing instructions; the at least one processor invokes the instructions in the memory to cause the audio device to perform the queue-based audio playback method as described above.
[0024] A fourth aspect of this application provides a computer-readable storage medium storing instructions that, when executed by a processor, implement the queue-based audio playback method described above.
[0025] The beneficial effects of this application are:
[0026] The technical solution provided in this application determines the corresponding playback mode by responding to the user's playback operation on the playback control on the user interface; randomly shuffles each audio in the original playlist on the audio device, and inputs the shuffled playlist into a random number generator based on uniform distribution to calculate the probability of being played, and constructs a new playlist based on the probability of being played; obtains user information from the logged-in user interface, and constructs a user profile based on the user's behavioral habits in the user information; uses a content recommendation algorithm to extract target audio that matches the user profile from the new playlist; sorts all target audio in descending order of the probability of being played, generates a target playback queue, and then plays it. This implementation scheme, by randomly shuffling the audio in the original playlist, calculating the probability of each audio being played based on a random number generator, and combining this with the constructed user profile to select matching target audio to generate a target playback queue, achieves a correlation between the playlist and the user's preferences. It also dynamically readjusts and reorders the audio in the original playlist based on the playback mode, which is more in line with user habits, improves the user experience of the audio device, and provides users with a more personalized and intelligent audio service. Attached Figure Description
[0027] Figure 1 A schematic diagram of the first embodiment of the queue-based audio playback method provided in this application;
[0028] Figure 2 A schematic diagram of a second embodiment of the queue-based audio playback method provided in this application;
[0029] Figure 3 A schematic diagram of the original playlist provided in an embodiment of this application;
[0030] Figure 4 A schematic diagram of a target playback queue provided in an embodiment of this application;
[0031] Figure 5 A schematic diagram of a queue-based audio playback device provided in an embodiment of this application;
[0032] Figure 6 Another schematic diagram of the structure of the queue-based audio playback device provided in the embodiments of this application;
[0033] Figure 7 This is a schematic diagram of the structure of an audio device provided in an embodiment of this application. Detailed Implementation
[0034] To address the shortcomings of existing technologies, this application proposes a queue-based audio playback method, comprising: in random playback mode, using a high-quality random algorithm to generate and display a shuffled playlist to the user, rather than the original order; and introducing an intelligent playlist generation algorithm to automatically create personalized playlists based on the user's historical playback data and preferences, thereby solving the problem that existing audio playlists cannot be dynamically adjusted according to the playback mode.
[0035] The terms “first,” “second,” “third,” “fourth,” etc. (if present) in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments described herein can be implemented in a sequence other than that illustrated or described herein. Furthermore, the terms “comprising” or “having,” and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, apparatus, product, or device that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or devices.
[0036] For ease of understanding, the specific process of the embodiments of this application is described below. Please refer to [link / reference]. Figure 1 The first embodiment of the queue-based audio playback method provided in this application is illustrated in the schematic diagram. This method is applied to an audio device displaying a user interface, which is the operation interface of an audio playback APP. Based on this, the method specifically includes the following steps:
[0037] 101. Respond to playback operations on the playback controls on the user interface and determine the corresponding playback mode.
[0038] In this embodiment, the audio device should be understood as a mobile terminal, such as a mobile phone or tablet. By monitoring in real time whether there is a touch operation on the touch screen of the audio device, such as a click or a long press, when a touch operation is detected, the coordinates of the touch operation are determined, and it is determined whether the coordinates are the position of the audio playback control. If so, it is determined to be an audio playback operation. Based on the triggering of the playback control, the corresponding playback mode is determined, which includes sequential playback and random playback modes.
[0039] 102. Randomly shuffle each audio item in the original playlist on the audio device, and input the shuffled playlist into a random number generator based on a uniform distribution to calculate the probability of it being played. Construct a new playlist based on the probability of it being played.
[0040] In this embodiment, after determining the playback mode, the original playlist of the audio device is obtained in response to the playback operation. The original playlist refers to an audio queue containing multiple audio files created in advance by the user. Each audio file in the audio queue has a certain sorting order. The sorting order can be set manually or automatically sorted according to various time nodes, such as the time when the audio was collected, the time when the audio was released, the sorting of the audio names, etc.
[0041] After obtaining the original playlist, all audios in the original playlist are reordered based on the default sorting in the playback mode. Then, a random algorithm is used to shuffle the order of each audio in the reordered original playlist. This shuffling is achieved by using a random algorithm to generate a corresponding random number for each audio according to its sorting, and then sorting the audios in the original playlist based on this random number.
[0042] Furthermore, after random shuffling, the audio files are input into a uniformly distributed random number generator based on the shuffled order. The random number generator performs feature analysis on each audio file and generates random numbers based on the analyzed features, thus obtaining the probability of each audio file being played. This probability can also be understood as the probability of the random number being called. Finally, the audio files are reordered based on their play probabilities to obtain a new playlist.
[0043] 103. Obtain user information from the login user interface and build user profiles based on user behavior habits in the user information.
[0044] In this embodiment, the audio device retrieves the corresponding user information from the audio backend by collecting the user account on the user interface. The user information refers to the user's identity information and the playback data of the user's historical audio playback. The playback data includes at least the audio playback history, number of playbacks, collection history, comment history, and playback length, etc.
[0045] By analyzing the features of playback data, a correlation matrix is constructed. Then, matrix decomposition and collaborative filtering are used to decompose the correlation matrix to obtain key information such as user preferences. Finally, based on the key information obtained from the decomposition, a corresponding user profile is constructed. This user profile should be understood as reflecting the user's audio preferences and playback control habits.
[0046] 104. Use content recommendation algorithms to extract target audio that matches the user profile from the new playlist.
[0047] In this embodiment, a content recommendation algorithm is used to extract features from each audio in the new playlist. Specifically, the rhythm, emotion, lyrics keywords, and song description of each audio are extracted. Then, based on the rhythm, emotion, lyrics keywords, and song description, the corresponding song profile is abstracted using entity abstraction. Finally, the similarity between the song profile and the user profile is calculated, thereby selecting target audio based on the similarity.
[0048] In practical applications, when abstracting a song profile, a pre-trained melody recognition model is used to combine and identify rhythm and emotion to determine the musical style of the audio. A pre-trained lyric recognition model is used to identify the lyric style of lyrics by identifying lyric keywords and song descriptions to determine the lyric style of the audio. Finally, the combination of musical style and lyric style is used to determine the specific music type of the audio, and the target audio is determined based on this music type.
[0049] Furthermore, in the lyric style identification, a semantic combination identification model is also used. That is, the keywords of each lyric are sorted by similar and related semantics through semantic recognition to obtain a vector relationship graph of each lyric keyword. Based on the vector relationship graph, all lyric keywords are sorted and combined to obtain semantics. Based on semantics and song description, the existing lyric database is matched to find similar or identical lyrics, thereby obtaining the lyric style.
[0050] 105. Sort all target audios in descending order of their probability of being played, generate a target playback queue, and then play them.
[0051] In this embodiment, after selecting the target audio that satisfies the user profile, that is, the user's preferences, the previously calculated probability of being played is obtained and the audio is sorted to obtain the target playback queue. After obtaining the target playback queue, it replaces the original playlist and is displayed on the user interface.
[0052] In another embodiment, after obtaining the target playback queue, the number of target audios in the target playback queue is compared with the number of audios in the original playlist. If the two are not equal, the audios in the original playlist are marked based on the target playback queue, that is, the audios in the original playlist that are the same as those in the target playback queue are marked. Then, the marked audios are sorted to the front of the queue according to their order in the target playback queue, and the unmarked audios in the original playlist are sorted to the back of the target playback queue according to their original order.
[0053] The audio is played in top-to-bottom order based on the adjusted original playlist.
[0054] Furthermore, while playing audio, the system also includes: extracting playback display effects based on the user profile list; synchronizing the target playback queue to the user interface; and identifying the audio being played based on the playback display effects during playback.
[0055] This embodiment shuffles the audio order in the original playlist after determining the playback mode, then uses a random number generator to estimate the probability of playing the shuffled audio, and combines this with a constructed user profile to filter target audio, thereby constructing a target playback queue. Based on this audio playback scheme, the audio playback queue is not based on the original order, but rather on a real-time order related to user preferences. This solves the problem of existing technologies where audio playlists cannot be dynamically adjusted according to playback modes, improving the user experience of smart audio devices and providing users with more personalized and intelligent audio services.
[0056] Please see Figure 2 The second embodiment of the queue-based audio playback method provided in this application is illustrated in the following diagram. This method is applied to a mobile phone, which has an audio playback application installed on it. The user performs audio playback operations through the user interface of the application. The method specifically includes the following steps:
[0057] 201. Respond to playback operations on the playback controls on the user interface and determine the corresponding playback mode.
[0058] The user determines the playback mode by clicking on the playback control area of the user interface. If the selected playback mode is shuffle mode, step 202 is executed. That is, the phone triggers the application to play audio shuffled in response to the user's touch operation on the shuffle mode button on the user interface.
[0059] 202. Randomly shuffle each audio item in the original playlist on the audio device, and input the shuffled playlist into a random number generator based on a uniform distribution to calculate the probability of it being played. Construct a new playlist based on the probability of it being played.
[0060] Specifically, a pseudo-random number generator is constructed using a random algorithm; each audio item in the original playlist on the audio device is sequentially input into the pseudo-random number generator to generate a corresponding pseudo-random number, and the audio items in the original playlist are reordered based on the pseudo-random numbers to obtain a shuffled playlist; the shuffled playlist is input into a uniformly distributed random number generator to calculate the probability of being played; using a random forward traversal iteration method, two audio items are randomly selected from the shuffled playlist and swapped according to a preset step size to generate a new playlist, wherein the difference in the probability of being played between the two randomly selected audio items is less than a preset threshold.
[0061] The original playlist is a queue of audio files that the user has manually added, matching their preferences. Figure 3 As shown, a random algorithm is then called to shuffle the audio sequences in the original playlist. This shuffling is truly random; it primarily utilizes a random algorithm that uses the order of each audio sequence as a condition for generating a random number, producing a pseudo-random number. This pseudo-random number is then used as the new order for the corresponding audio sequence. Using this pseudo-random number and the audio sequence itself as input to a random number generator, a random number is calculated to obtain the probability of that audio sequence being played. A new playlist is then constructed based on this probability. To use a high-quality random algorithm to shuffle the original playlist and generate a new random playback sequence, this method employs the `std::shuffle` algorithm from the modern C++ standard library. This algorithm is based on a uniformly distributed random number generator, ensuring that each permutation has an equal probability of occurrence.
[0062] In practical applications, when using a random number generator to calculate the probability of each audio file being played, the shuffled order of each audio file and its brief description are extracted as input. The random number generator uses the shuffled order and the brief description as random number factors to calculate the probability of each audio file being played.
[0063] Furthermore, after extracting key information from the audio description, a semantic vector is output based on the key information. This semantic vector and the sorting order are then input into a random number generator to calculate a random number for the audio. This random number is used as the probability that the audio will be played.
[0064] In another embodiment, the step of randomly selecting two audio elements from the shuffled playlist and swapping them according to a preset step size to generate a new playlist includes: using each audio element in the shuffled playlist as a matrix element and constructing an audio matrix according to its sorting; based on the random forward traversal iteration, selecting two matrix elements from the audio matrix whose probability difference in playing time is less than a preset threshold and swapping them according to a one-to-one combination method, until the first matrix element is reached, thereby generating a new playlist; wherein, the one-to-one combination method means that one matrix element is sorted first and the other matrix element is sorted last, and the sorting distance between the two matrix elements is equal to the preset step size.
[0065] For example, when shuffling an original playlist of length n to build a new playlist, start from i = n-1 and traverse backwards to i = 1. Each time, randomly select an index j in the range [0, i] and then swap the elements at positions i and j.
[0066] If the order of the audio files in the original playlist is shuffled and converted into a matrix [A,B,C,D,E], where A,B,C,D,E represent audio files, then by traversing backward from E to A, selecting one file as the swapping object at each traversal, and repeating this iteratively until all audio files have been traversed, the process ends.
[0067] Taking matrix [A,B,C,D,E] as an example, the first iteration is: select E and swap it with C → [A,B,E,D,C]; the second iteration is: select D and swap it with A → [D,B,E,A,C]; the third iteration is: select B and swap it with E → [D,E,B,A,C]; the fourth iteration is: select E and swap it with D → [E,D,B,A,C]; the final new playlist is [E,D,B,A,C].
[0068] Furthermore, after obtaining the new playlist, the generated playlist is updated on the user interface, allowing users to visually see the actual playback order in the shuffle mode. Based on this, users can continue to operate on the updated playlist, such as skipping songs or returning to the previous track.
[0069] In this embodiment, while updating the playlist, the relevant information of the original playlist, such as the original audio order, can be retained in the background of the application. This allows the original playlist to be automatically restored and updated to the user interface after the user cancels the random playback mode.
[0070] 203. Obtain user information from the login user interface and build a user profile based on user behavior habits in the user information.
[0071] In this embodiment, the user information may be the user's account information, identity information, etc. when logging into the user interface. Based on the user information, playback data is extracted from the background. The playback data includes playback history information and user operation records of the user interface. The user profile is obtained by analyzing the features in the playback data.
[0072] Specifically, based on the user information, the user's playback data is extracted from the audio database corresponding to the user interface, wherein the playback data includes at least the audio playback history, number of plays, collection history, comment history, and playback length; using a pre-trained user preference model, profile features are extracted from the playback data; and a matrix factorization collaborative filtering algorithm is used to construct a user profile based on the profile features.
[0073] In practical applications, the process of building user profiles can be summarized in the following four steps:
[0074] Step 1: Collect user playback data, which includes, but is not limited to: playback history, favorite songs, likes / dislikes, skip actions, number of repeated playbacks, and playback duration.
[0075] Step 2, data preprocessing, involves cleaning and preprocessing the collected raw playback data, including removing outliers and formatting.
[0076] Step 3, feature extraction: Extract user preference features from the preprocessed data, such as: most frequently listened music styles, favorite artists, frequently listened time periods, and audio duration preferences.
[0077] Step 4: Build user profiles. Based on the extracted features, use machine learning algorithms to build user profile models.
[0078] Optionally, the user profile is constructed using a matrix factorization collaborative filtering algorithm. Specifically, the algorithm, based on the profile features, includes: clustering the extracted profile features and constructing a user-item rating matrix based on the clustering results; performing factorization on the user-item rating matrix using singular value decomposition to obtain a user factor matrix and a song factor matrix; predicting user behavior corresponding to the user information based on the user factor matrix and the song factor matrix; and selecting corresponding profile features based on the predicted ratings to construct the user profile.
[0079] In practical applications, all extracted profile features are clustered to output multiple profile features of different categories. Then, each profile feature is estimated to obtain the song preference level. The preference level is used as matrix elements to construct a user-item rating matrix. Based on the user-item rating matrix, singular value decomposition is used to extract the user factor matrix and the song factor matrix.
[0080] Furthermore, before constructing the user profile, the process includes optimizing the user factor matrix and song factor matrix using an optimization function, and then scoring user behavior based on the optimized user factor matrix and song factor matrix to obtain the user profile. The optimization function is as follows:
[0081] Σ(r_ui-p_u·q_i^T)^2+λ(||p_u||^2+||q_i||^2)
[0082] Where r_ui is the actual rating of user u for item i, p_u is the factor vector of user u, q_i is the factor vector of item i, and λ is the regularization parameter.
[0083] Assuming there are 3 users and 4 songs, the user-item rating matrix R is:
[0084]
[0085] The user factor matrix P and song factor matrix Q are obtained through matrix factorization, thereby predicting unknown ratings and constructing user profiles.
[0086] 204. Extract the song features of each audio file in the new playlist. These song features should include at least the song style and a brief description.
[0087] In this step, when extracting song features, a semantic analysis model is used to identify semantic, emotional, and melodic information such as the melody and lyrics in the audio. Then, the identified information is combined into a directed graph, specifically converting semantic, emotional, and melodic information into vectors. A directed graph is then constructed based on these vectors, and finally, graph matching is performed to obtain the song style. The song description is searched from the internet using information from the audio. The vector conversion here can be achieved using existing conventional conversion algorithms.
[0088] 205. Calculate the similarity between the song style and song description and the user profile, and determine the target audio based on the similarity.
[0089] Specifically, the cosine similarity between the song style and the song description and the user profile is calculated; the N audios with the highest cosine similarity are selected from the new playlist as target audios.
[0090] The formula for cosine similarity is: cos(θ)=(A·B) / (||A||||B||), where A and B represent the user profile vector and the item feature vector, respectively.
[0091] For example, user profile: [0.8, 0.2, 0.6, 0.4]; song 1 feature: [0.9, 0.1, 0.8, 0.3]; song 2 feature: [0.2, 0.7, 0.3, 0.8].
[0092] After calculating the similarity between the user profile and each song, the songs with high similarity are selected as the target audio to recommend to the user.
[0093] 206. Sort all target audios in descending order of their probability of being played, generate a target playback queue, and then play them.
[0094] In this embodiment, all target audio files are sorted in descending order of their probability of being played to generate a target playback queue, such as... Figure 4 As shown; extract playback display effects based on the user profile list; synchronize the target playback queue to the user interface, and identify the audio being played based on the playback display effects during playback.
[0095] In another embodiment, after sorting all target audios in descending order of their probability of being played to generate a target playback queue, the method further includes:
[0096] An initial population is constructed based on the target playback queue, wherein the initial population includes multiple playlist seeds, each playlist seed containing multiple different styles of audio; a genetic algorithm is used to select parent seeds from the multiple playlist seeds of the initial population, and the target playback queue is optimized based on the parent seeds and other playlist seeds iteratively.
[0097] The step of using a genetic algorithm to select a parent seed from multiple playlist seeds in the initial population, and then optimizing the target playback queue based on the parent seed and other playlist seeds through iteration, includes:
[0098] Based on the similarity between each playlist seed and the user profile, and the factors to be optimized, the fitness of each playlist seed is calculated. A parent seed is selected from multiple playlist seeds based on the fitness. A genetic algorithm is used to cross-fertilize and mutate the parent seed with other playlist seeds, and a new parent seed is selected based on the results of the cross-fertilization and mutation. This process continues until the similarity of each playlist seed satisfies the constraints corresponding to the factors to be optimized, and the optimized target playback queue is output.
[0099] Specifically, during crossover and mutation processing, a hierarchical elite selection operator is used to select the parent seed for the next iteration, and a crossover algorithm is used to perform seed gene recombination; an iteration termination condition is set, and when the population of the iteration meets the iteration termination condition, the optimized target playback queue is output.
[0100] For example, optimizing the generated recommendation list can take into account factors such as the diversity of music styles, the proportion of new content introduced, and at least one of the following: recent changes in user preferences.
[0101] The process of optimizing the target playback queue using a genetic algorithm includes the following steps:
[0102] 1) Initialize the playlist population;
[0103] 2) Evaluate the suitability of each playlist;
[0104] 3) Select outstanding individuals as parents;
[0105] 4) Crossover operation: Generate offspring from parent generation;
[0106] 5) Mutation operation: Randomly altering a portion of the genes;
[0107] 6) Repeat steps 2-5 until the termination condition is met;
[0108] The function for calculating fitness is:
[0109] f(playlist)=Σw_i*score_i(playlist)
[0110] Where w_i is the weight of each evaluation metric, and score_i is the score of the playlist on each metric.
[0111] Assuming the target playback queue is [1,2,3,4,5], after crossover it becomes [1,2,6,4,5], and after mutation it becomes [1,7,6,4,5]. Through multiple generations of evolution, the optimized target playback queue is finally obtained.
[0112] During the playback of the target playback queue, the system also monitors the user's real-time actions on the audio in the target playback queue, such as skipping tracks or going to the next track. The duration of the actions is used to determine the user's preference for the audio being played and the data is recorded in the user's playback data. This data is then used to update the user profile or adjust the recommended target audio.
[0113] 207. Monitor the playback progress of audio in the target playback queue in real time and determine whether the playback progress has reached a preset threshold, which is the number of remaining unplayed audio.
[0114] By monitoring the progress of the target playback queue in real time, the playlist completion function is triggered when the playback progress reaches a preset threshold (e.g., 3 songs remaining).
[0115] 208. If so, use the list completion tool to filter target online audio that matches the user profile from the online audio database, and update the target online audio to the target playback queue.
[0116] In this embodiment, a list completion tool is used to search for online audio in the online audio database using the features in the user profile as indexes; song features of each online audio are extracted, and all online audio are clustered based on the song features; the similarity between the song features of each clustered online audio and the features in the user profile is calculated, and the target online audio is determined based on the similarity.
[0117] Specifically, by performing feature analysis on the target playback queue currently in play, key information such as: main music style, frequently appearing artists, song emotional characteristics, and audio duration distribution can be extracted.
[0118] The specific steps for using the K-means clustering algorithm to analyze the features in the queue are as follows:
[0119] 1) Randomly select K center points;
[0120] 2) Assign each data point to the nearest center point;
[0121] 3) Recalculate the center point of each cluster;
[0122] 4) Repeat steps 2-3 until convergence.
[0123] Assume the characteristics of the songs in the playlist are:
[0124] Song 1: [0.8, 0.1, 0.1] (Popularity, Dance Level, Ballad Level)
[0125] Song 2: [0.2, 0.7, 0.1]
[0126] Song 3: [0.5, 0.2, 0.3]
[0127] K-means clustering can be used to obtain the main feature clusters, such as [0.7, 0.2, 0.1], which represents that this queue is mainly based on popular styles.
[0128] Furthermore, after analyzing the features, an intelligent completion strategy is constructed based on the extracted features and user profiles. This strategy considers factors such as maintaining list style consistency, introducing an appropriate number of new elements, and conforming to the user's current context (e.g., time, location, activity type).
[0129] Based on the completion strategy, candidate audio that meets the conditions is retrieved from the audio library. When selecting candidate audio, the cosine similarity mentioned above can be used to calculate the matching degree between the candidate audio and the target feature.
[0130] For example, target features: [0.7, 0.2, 0.1]
[0131] Candidate audio 1: [0.8, 0.1, 0.1], similarity = 0.99
[0132] Candidate audio 2: [0.2, 0.7, 0.1], similarity = 0.45
[0133] Select audio with high similarity as completion candidates and update it after the audio in the target playback queue.
[0134] In this embodiment, to ensure the balance and diversity of the overall list during the completion process, a Markov chain model can be used. Specifically, the probability of each audio file in the audio library being transferred to the target playback queue is calculated based on the Markov chain model, generating a Markov chain transition probability matrix: P = [p_ij], where p_ij represents the probability of transitioning from state i to state j, and its state transition equation is: π(t+1) = π(t) * P, where π(t) is the state distribution vector at time t. Candidate audio files are selected based on the probability and updated to the queue.
[0135] Suppose there are 3 music genres (pop, rock, classical), the transition probability matrix is:
[0136]
[0137] If the current song is a pop song, the probability of selecting rock music next is 0.2, and the probability of selecting classical music is 0.1. In this way, the system can introduce a certain degree of diversity while maintaining stylistic consistency.
[0138] Furthermore, after the completion update, the completed queue is displayed to the user, allowing them to make adjustments and provide feedback. The system records this feedback to continuously optimize the completion algorithm.
[0139] This application employs a high-quality std::shuffle algorithm to generate truly random playback sequences, which are then intuitively displayed on the user interface, aligning with user habits and enhancing the operational experience. Secondly, the method introduces an intelligent playlist generation function, utilizing a matrix factorization-based collaborative filtering algorithm to construct user profiles, combined with content-based recommendation algorithms and genetic algorithms for optimization, to create personalized playlists for users, significantly improving recommendation accuracy and user satisfaction. Finally, this invention also develops an innovative playlist completion function, using K-means clustering to analyze the features of the current playlist, cosine similarity to retrieve candidate audio, and introducing a Markov chain model to dynamically adjust the completed content, ensuring the coherence and diversity of the playlist. The organic combination of these three functions not only optimizes the user interaction experience but also achieves intelligent and personalized audio playback services, significantly enhancing product competitiveness. Furthermore, the modular design of this method makes it easy to implement and expand on different smart audio devices, offering broad application prospects. In summary, this invention, through advanced algorithms and intelligent design, comprehensively improves the user experience of smart audio devices, providing users with more personalized and intelligent audio services.
[0140] The above describes the queue-based audio playback method in the embodiments of this application. The following describes the queue-based audio playback device in the embodiments of this application from the perspective of modular functional entities. Please refer to [link / reference]. Figure 5This application provides a schematic diagram of a queue-based audio playback device, applicable to an audio device displaying a user interface. The device includes:
[0141] The response module 510 is used to respond to playback operations on the playback control on the user interface and determine the corresponding playback mode.
[0142] The playlist generation module 520 is used to randomly shuffle each audio in the original playlist on the audio device, input the shuffled playlist into a random number generator based on uniform distribution to calculate the probability of being played, and construct a new playlist based on the probability of being played.
[0143] The profile generation module 530 is used to obtain user information that logs into the user interface and to construct a user profile based on the user behavior habits in the user information.
[0144] Recommendation module 540 is used to extract target audio that matches the user profile from the new playlist using a content recommendation algorithm;
[0145] The playback module 550 is used to sort all target audio in descending order of their probability of being played, generate a target playback queue, and then play them.
[0146] This solution randomly shuffles the audio in the original playlist, calculates the probability of each audio being played using a random number generator, and combines this with user profiling to select matching target audio to generate a target playback queue. This associates the playlist with user preferences and dynamically reorders the audio in the original playlist based on playback modes, making it more in line with user habits, improving the user experience of audio devices, and providing users with more personalized and intelligent audio services.
[0147] Please see Figure 6 Another schematic diagram of the queue-based audio playback device provided in this application embodiment, applied to an optical sensing communication base station, includes:
[0148] The response module 510 is used to respond to playback operations on the playback control on the user interface and determine the corresponding playback mode.
[0149] The playlist generation module 520 is used to randomly shuffle each audio in the original playlist on the audio device, input the shuffled playlist into a random number generator based on uniform distribution to calculate the probability of being played, and construct a new playlist based on the probability of being played.
[0150] The profile generation module 530 is used to obtain user information that logs into the user interface and to construct a user profile based on the user behavior habits in the user information.
[0151] Recommendation module 540 is used to extract target audio that matches the user profile from the new playlist using a content recommendation algorithm;
[0152] The playback module 550 is used to sort all target audio in descending order of their probability of being played, generate a target playback queue, and then play them.
[0153] In this embodiment, the list generation module 520 includes:
[0154] The first building unit 521 is used to build a pseudo-random number generator using a random algorithm;
[0155] The shuffling unit 522 is used to input each audio in the original playlist on the audio device into the pseudo-random number generator in sequence to generate corresponding pseudo-random numbers, and reorder each audio in the original playlist based on the pseudo-random numbers to obtain a shuffled playlist.
[0156] The first calculation unit 523 is used to input the shuffled playlist into a random number generator based on uniform distribution to calculate the probability of it being played.
[0157] The list generation unit 524 is used to randomly select two audio files from the shuffled playlist and swap them according to a preset step size using a random forward traversal iteration method to generate a new playlist, wherein the probability difference between the two randomly selected audio files being played is less than a preset threshold.
[0158] In this embodiment, the list generation unit 524 is specifically used for:
[0159] Using each audio item in the shuffled playlist as a matrix element, construct an audio matrix according to the sorting order;
[0160] Based on a random forward traversal iteration, two matrix elements with a probability difference of less than a preset threshold are selected from the audio matrix and swapped in a one-to-one combination manner until the first matrix element is reached, thus generating a new playlist; wherein, the one-to-one combination manner means that one matrix element is sorted first and the other matrix element is sorted last, and the sorting distance between the two matrix elements is equal to a preset step size.
[0161] In this embodiment, the portrait generation module 530 includes:
[0162] The first extraction unit 531 is used to extract the user's playback data from the audio database corresponding to the user interface based on the user information, wherein the playback data includes at least the audio playback history, number of playbacks, collection history, comment history and playback length;
[0163] The second extraction unit 532 is used to extract profile features from the playback data using a pre-trained user preference model;
[0164] The second construction unit 533 is used to construct a user profile based on the profile features using a matrix factorization collaborative filtering algorithm.
[0165] In this embodiment, the second building unit 533 is specifically used for:
[0166] The extracted profile features are clustered, and a user-item rating matrix is constructed based on the clustering results for all profile features.
[0167] The user-item rating matrix is factorized using singular value decomposition to obtain the user factor matrix and the song factor matrix.
[0168] Based on the user factor matrix and the song factor matrix, a rating prediction is made for the user behavior corresponding to the user information, and a user profile is constructed by selecting the corresponding profile features based on the predicted rating.
[0169] In this embodiment, the recommendation module 540 includes:
[0170] The third extraction unit 541 is used to extract the song features of each audio in the new playlist, wherein the song features include at least the song style and song description;
[0171] The second calculation unit 542 is used to calculate the similarity between the song style and the song description and the user profile, respectively, and to determine the target audio based on the similarity.
[0172] In this embodiment, the third extraction unit 541 is specifically used for:
[0173] Calculate the cosine similarity between the song style and the song description and the user profile, respectively;
[0174] Select the N audios with the highest cosine similarity from the new playlist as the target audios.
[0175] In this embodiment, the playback module 550 includes:
[0176] The sorting unit 551 is used to sort all target audio in descending order of their probability of being played, and to generate a target playback queue.
[0177] The fourth extraction unit 552 is used to extract playback display effects from the list based on the user profile;
[0178] The playback unit 553 is used to synchronize the target playback queue to the user interface and, during playback, identify the audio being played based on the playback display effects.
[0179] In this embodiment, the audio playback device further includes an optimization module 560, which is used for:
[0180] An initial population is constructed based on the target playback queue, wherein the initial population includes multiple playlist seeds, and each playlist seed contains multiple different styles of audio.
[0181] A genetic algorithm is used to select a parent seed from multiple playlist seeds in the initial population, and the target playback queue is optimized by iterating between the parent seed and other playlist seeds.
[0182] In this embodiment, the optimization module 560 includes:
[0183] The third calculation unit 561 is used to calculate the fitness of each playlist seed based on the similarity between each playlist seed and the user profile and the factors to be optimized.
[0184] Selection unit 562 is used to select a parent seed from multiple playlist seeds based on the fitness;
[0185] The optimization unit 563 is used to perform crossover and mutation processing on the parent seed and other playlist seeds using a genetic algorithm, and select a new parent seed based on the results of the crossover and mutation processing, until the similarity of each playlist seed meets the constraint conditions corresponding to the factor to be optimized, and output the optimized target playback queue.
[0186] In this embodiment, the audio playback device further includes: a completion module 570, which is used for:
[0187] The playback progress of audio in the target playback queue is monitored in real time, and it is determined whether the playback progress has reached a preset threshold, which is the number of remaining unplayed audio.
[0188] If so, the list completion tool is used to filter target online audio that matches the user profile from the online audio database, and the target online audio is updated to the target playback queue.
[0189] In this embodiment, the completion module 570 includes:
[0190] Search unit 571 is used to search for online audio from the online audio database using a list completion tool and the features in the user profile as an index.
[0191] Clustering unit 572 is used to extract song features of each of the online audio files and cluster all the online audio files based on the song features;
[0192] The determining unit 573 is used to calculate the similarity between the song features of each clustered online audio category and the features in the user profile, and to determine the target online audio based on the similarity.
[0193] This application's embodiments shuffle the audio order in the original playlist after determining the playback mode, then use a random number generator to estimate the probability of playing the shuffled audio, and combine this with a constructed user profile to filter target audio, thereby constructing a target playback queue. Based on this audio playback scheme, the audio playback queue is not based on the original order, but rather on a real-time order related to user preferences. This solves the problem in existing technologies where audio playlists cannot be dynamically adjusted according to the playback mode, improving the user experience of smart audio devices and providing users with more personalized and intelligent audio services.
[0194] above Figure 5 and 6 The queue-based audio playback device in this application embodiment is described in detail from the perspective of modular functional entities. The audio device in this application embodiment is described in detail from the perspective of hardware processing.
[0195] See Figure 7 As shown, the audio device includes a processor 700 and a memory 701. The memory 701 stores machine-executable instructions that can be executed by the processor 700. The processor 700 executes the machine-executable instructions to implement the above-described queue-based audio playback method.
[0196] Furthermore, Figure 7 The audio device shown also includes a bus 702 and a communication interface 703. The processor 700, the communication interface 703, and the memory 701 are connected via the bus 702.
[0197] The memory 701 may include high-speed random access memory (RAM) and may also include non-volatile memory, such as at least one disk storage device. Communication between this system network element and at least one other network element is achieved through at least one communication interface 703 (which can be wired or wireless), such as the Internet, wide area network, local area network, metropolitan area network, etc. The bus 702 may be an ISA bus, PCI bus, or EISA bus, etc. The bus can be divided into address bus, data bus, control bus, etc. For ease of representation, Figure 7The symbol is represented by a single double-headed arrow, but this does not mean that there is only one bus or one type of bus.
[0198] The processor 700 may be an integrated circuit chip with signal processing capabilities. In implementation, each step of the above method can be completed by the integrated logic circuitry in the hardware of the processor 700 or by instructions in software form. The processor 700 may be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it may also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this disclosure. The general-purpose processor may be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this disclosure can be directly embodied in the execution of a hardware decoding processor, or executed by a combination of hardware and software modules in the decoding processor. The software modules may reside in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. The storage medium is located in memory 701. Processor 700 reads the information in memory 701 and, in conjunction with its hardware, completes the steps of the queue-based audio playback method provided in the foregoing embodiments.
[0199] This application also provides a computer-readable storage medium, which can be a non-volatile computer-readable storage medium or a volatile computer-readable storage medium, wherein the computer-readable storage medium stores instructions that, when executed on a computer, cause the computer to perform the various steps of the queue-based audio playback method provided in the above embodiments.
[0200] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working process of the above-described equipment or apparatus / unit can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.
[0201] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0202] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application.
Claims
1. A queue-based audio playback method, applied to an audio device displaying a user interface, characterized in that, The method includes: In response to a playback operation on the playback control on the user interface, determine the corresponding playback mode; The audio files in the original playlist on the audio device are randomly shuffled, and the shuffled playlist is input into a random number generator based on uniform distribution to calculate the probability of being played. A new playlist is then constructed based on the probability of being played. Obtain user information that is logged into the user interface, and construct a user profile based on the user behavior habits in the user information; The target audio that matches the user profile is extracted from the new playlist using a content recommendation algorithm. All target audio files are sorted in descending order of their probability of being played to generate a target playback queue, and then played.
2. The queue-based audio playback method according to claim 1, characterized in that, The process of randomly shuffling each audio item in the original playlist on the audio device, inputting the shuffled playlist into a uniformly distributed random number generator to calculate the probability of it being played, and constructing a new playlist based on the probability of it being played includes: Construct a pseudo-random number generator using random algorithms; Each audio item in the original playlist on the audio device is sequentially input into the pseudo-random number generator to generate a corresponding pseudo-random number, and the audio items in the original playlist are reordered based on the pseudo-random number to obtain a shuffled playlist. The shuffled playlist is input into a uniformly distributed random number generator to calculate the probability of it being played. Using a random forward traversal iteration method, two audio files are randomly selected from the shuffled playlist and swapped according to a preset step size to generate a new playlist, wherein the probability difference between the two randomly selected audio files being played is less than a preset threshold.
3. The queue-based audio playback method according to claim 2, characterized in that, The method of randomly selecting two audio files from the shuffled playlist and swapping them according to a preset step size to generate a new playlist includes: Using each audio item in the shuffled playlist as a matrix element, construct an audio matrix according to the sorting order; Based on a random forward traversal iteration, two matrix elements with a probability difference of less than a preset threshold are selected from the audio matrix and swapped in a one-to-one combination manner until the first matrix element is reached, thus generating a new playlist; wherein, the one-to-one combination manner means that one matrix element is sorted first and the other matrix element is sorted last, and the sorting distance between the two matrix elements is equal to a preset step size.
4. The queue-based audio playback method according to claim 1, characterized in that, The process of constructing a user profile based on user behavior habits in the user information includes: Based on the user information, the user's playback data is extracted from the audio database corresponding to the user interface, wherein the playback data includes at least the audio playback history, number of plays, collection history, comment history, and playback length; Using a pre-trained user preference model, profile features are extracted from the playback data; A matrix factorization collaborative filtering algorithm is used to construct user profiles based on the profile features.
5. The queue-based audio playback method according to claim 4, characterized in that, The method of constructing a user profile based on the profile features using a matrix factorization collaborative filtering algorithm includes: The extracted profile features are clustered, and a user-item rating matrix is constructed based on the clustering results for all profile features. The user-item rating matrix is factorized using singular value decomposition to obtain the user factor matrix and the song factor matrix. Based on the user factor matrix and the song factor matrix, a rating prediction is made for the user behavior corresponding to the user information, and a user profile is constructed by selecting the corresponding profile features based on the predicted rating.
6. The queue-based audio playback method according to claim 1, characterized in that, The step of extracting target audio that matches the user profile from the new playlist using a content recommendation algorithm includes: Extract the song features of each audio file in the new playlist, wherein the song features include at least the song style and song description; Calculate the similarity between the song style and the song description and the user profile, and determine the target audio based on the similarity.
7. The queue-based audio playback method according to claim 6, characterized in that, The step of calculating the similarity between the song style and the song description and the user profile, and determining the target audio based on the similarity, includes: Calculate the cosine similarity between the song style and the song description and the user profile, respectively; Select the N audios with the highest cosine similarity from the new playlist as the target audios.
8. The queue-based audio playback method according to claim 1, characterized in that, The step of sorting all target audio files according to their probability of being played from highest to lowest, generating a target playback queue, and then playing them includes: Sort all target audios in descending order of their probability of being played to generate a target playback queue; Playback display effects based on the user profile extraction list; The target playback queue is synchronized to the user interface, and during playback, the audio being played is identified based on the playback display effects.
9. The queue-based audio playback method according to any one of claims 1-8, characterized in that, After sorting all target audios in descending order of their probability of being played to generate a target playback queue, the process further includes: An initial population is constructed based on the target playback queue, wherein the initial population includes multiple playlist seeds, and each playlist seed contains multiple different styles of audio. A genetic algorithm is used to select a parent seed from multiple playlist seeds in the initial population, and the target playback queue is optimized by iterating between the parent seed and other playlist seeds.
10. The queue-based audio playback method according to claim 9, characterized in that, The step of using a genetic algorithm to select a parent seed from multiple playlist seeds in the initial population, and then optimizing the target playback queue based on the parent seed and other playlist seeds through iteration, includes: The fitness of each playlist seed is calculated based on the similarity between each playlist seed and the user profile, as well as the factors to be optimized. A parent seed is selected from multiple playlist seeds based on the fitness; A genetic algorithm is used to cross-fertilize and mutate the parent seed with other playlist seeds, and a new parent seed is selected based on the results of the cross-fertilization and mutation processes. This process continues until the similarity of each playlist seed satisfies the constraints corresponding to the factors to be optimized, and the optimized target playback queue is output.
11. The queue-based audio playback method according to any one of claims 1-8, characterized in that, After sorting all target audios in descending order of their probability of being played, generating a target playback queue, and then playing them, the process further includes: The playback progress of audio in the target playback queue is monitored in real time, and it is determined whether the playback progress has reached a preset threshold, which is the number of remaining unplayed audio. If so, the list completion tool is used to filter target online audio that matches the user profile from the online audio database, and the target online audio is updated to the target playback queue.
12. The queue-based audio playback method according to claim 11, characterized in that, The step of using a list completion tool to filter target online audio from an online audio database that matches the user profile includes: Using a list completion tool, and indexed by the features in the user profile, online audio is searched from the online audio database; Extract song features from each of the online audio files, and cluster all the online audio files based on the song features; Calculate the similarity between the song features of each clustered online audio category and the features in the user profile, and determine the target online audio based on the similarity.
13. A queue-based audio playback device, applied to an audio device displaying a user interface, characterized in that, The device includes: The response module is used to respond to playback operations on the playback controls on the user interface and determine the corresponding playback mode; The playlist generation module is used to randomly shuffle each audio item in the original playlist on the audio device, input the shuffled playlist into a random number generator based on uniform distribution to calculate the probability of being played, and construct a new playlist based on the probability of being played. The profile generation module is used to obtain user information that logs into the user interface and to construct a user profile based on the user behavior habits in the user information. The recommendation module is used to extract target audio that matches the user profile from the new playlist using a content recommendation algorithm; The playback module is used to sort all target audio in descending order of their probability of being played, generate a target playback queue, and then play them.
14. An audio device, characterized in that, The audio device includes a memory and at least one processor, the memory storing instructions; the at least one processor invokes the instructions in the memory to cause the audio device to perform the queue-based audio playback method as described in any one of claims 1-12.
15. A computer-readable storage medium storing instructions thereon, characterized in that, When the instructions are executed by the processor, they implement the queue-based audio playback method as described in any one of claims 1-12.
Citation Information
Patent Citations
Music playing method and apparatus, and intelligent terminal
CN104835516A
Method for controlling playback of audio file and audio playback apparatus
CN108352173A