WO2021180174A1 - 歌曲播放方法、装置及系统、计算机存储介质 - Google Patents

歌曲播放方法、装置及系统、计算机存储介质 Download PDF

Info

Publication number
WO2021180174A1
WO2021180174A1 PCT/CN2021/080209 CN2021080209W WO2021180174A1 WO 2021180174 A1 WO2021180174 A1 WO 2021180174A1 CN 2021080209 W CN2021080209 W CN 2021080209W WO 2021180174 A1 WO2021180174 A1 WO 2021180174A1
Authority
WO
WIPO (PCT)
Prior art keywords
client
song
information
playing
server
Prior art date
Application number
PCT/CN2021/080209
Other languages
English (en)
French (fr)
Inventor
刘佳泽
陈普森
Original Assignee
广州酷狗计算机科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 广州酷狗计算机科技有限公司 filed Critical 广州酷狗计算机科技有限公司
Publication of WO2021180174A1 publication Critical patent/WO2021180174A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/242Synchronization processes, e.g. processing of PCR [Program Clock References]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation

Definitions

  • This application relates to the field of Internet technology, in particular to a method, device and system for playing songs, and computer storage media.
  • the embodiments of the present application provide a song playing method, device and system, and computer storage medium, which can solve the problem of a single way of sharing songs in related technologies.
  • the technical solution is as follows:
  • a method for playing a song is executed by a server, and the method includes: receiving song playing information sent by a first client, where the song playing information includes the first The song information of the song currently being played by the client; sending a synchronous play instruction to the second client, the synchronous play instruction includes the song play information, and the synchronous play instruction is used to instruct the second client based on the The song playback information plays the song synchronously.
  • a song playing method the method being executed by a first client, the method comprising: acquiring song playing information of the first client, the song playing information including all The song information of the song currently being played by the first client; sending the song playing information to the server, and the song playing information is sent by the server to the second client, so that the second client is based on the song The playback information plays the song synchronously.
  • a song playing device including:
  • a receiving module configured to receive song playback information sent by a first client, where the song playback information includes song information of a song currently played by the first client;
  • the sending module is configured to send a synchronous play instruction to a second client, the synchronous play instruction includes the song play information, and the synchronous play instruction is used to instruct the second client to play synchronously based on the song play information The song.
  • a song playing device including:
  • An obtaining module configured to obtain song playing information of the first client, where the song playing information includes song information of a song currently being played by the first client;
  • the sending module is configured to send the song playing information to the server, and the song playing information is sent by the server to the second client, so that the second client synchronously plays the song based on the song playing information.
  • a song playing device including a processor and a memory.
  • the memory is used to store a computer program, and the computer program includes program instructions
  • the processor is used to call the computer program to implement the song playing method on the server side as described above.
  • a song playing device including a processor and a memory.
  • the memory is used to store a computer program, and the computer program includes program instructions
  • the processor is configured to call the computer program to implement the song playing method on the first client side as described above.
  • a song playing system the system includes: a server and a terminal, the server includes a song playing device for performing the steps of the server-side method as above; the terminal includes the above for A song playing device that executes the steps of the first client-side method.
  • a computer storage medium with instructions stored on the computer storage medium, and when the instructions are executed by a processor of a terminal, the method for playing songs on the first client side as described above is implemented ; When the instructions are executed by the processor of the server, the method for playing songs on the server side as described above is realized.
  • a computer program product or computer program includes computer instructions, the computer instructions are stored in a computer-readable storage medium, and the processor receives The computer-readable storage medium reads and executes the computer instructions to implement the above-mentioned server-side song playing method or the above-mentioned first client-side song playing method.
  • the first client After acquiring the song playing information of the currently playing song, the first client sends the song playing information to the server; then the server sends a synchronous playing instruction containing the song playing information to the second client. Since the synchronous play instruction sent by the server to the second client is used to instruct the second client to play the above-mentioned song played by the first client based on the song play information, the second client can play according to the song after receiving the synchronous play instruction The information is synchronized with the first client to play songs, which enriches the way to share songs.
  • the technical solution of the present application can realize that two or more clients can play the same song synchronously, which ensures the synchronization and real-time performance of song playback between each client, thereby enabling multiple users to listen to the same song synchronously. Function.
  • the first client is the synchronization initiator
  • the second client is the synchronization receiver
  • the number of the second client can be multiple, so that the synchronization of the song initiated by one user can be realized, and multiple users can participate in the synchronization of the song. Listening to achieve the audio-visual experience similar to the real-life scene in a bar, karaoke or nightclub, etc., and enhance the realism and immersion of song listening.
  • Fig. 1 is a schematic structural diagram of a song playing system provided by an embodiment of the present application
  • FIG. 2 is a schematic flowchart of a song playing method provided by an embodiment of the present application
  • FIG. 3 is a schematic flowchart of another method for playing songs according to an embodiment of the present application.
  • FIG. 4 is a schematic flowchart of another song playing method provided by an embodiment of the present application.
  • FIG. 5 is a schematic flowchart of another song playing method provided by an embodiment of the present application.
  • FIG. 6 is a schematic diagram of an interface for displaying a list of access terminals on a first terminal according to an embodiment of the present application
  • FIG. 7 is a schematic diagram of an interface of a song playing method provided by an embodiment of the present application.
  • FIG. 8 is a schematic flowchart of another song playing method provided by an embodiment of the present application.
  • FIGS. 9 and 10 are schematic diagrams of the interface of another song playing method provided by an embodiment of the present application.
  • FIG. 11 is a schematic structural diagram of a song playing device provided by an embodiment of the present application.
  • Figure 12 is a schematic structural diagram of another song playing device provided by an embodiment of the present application.
  • FIG. 13 is a schematic structural diagram of another song playing device provided by an embodiment of the present application.
  • FIG. 14 is a schematic structural diagram of another song playing device provided by an embodiment of the present application.
  • FIG. 15 is a block diagram of a server provided by an embodiment of the present application.
  • FIG. 16 is a block diagram of a terminal provided by an embodiment of the present application.
  • Fig. 1 is a schematic structural diagram of a song playing system provided by an embodiment of the present application.
  • the system may include: a server 101 and terminals 102a-102c (collectively referred to as terminals 102).
  • terminals 102 The number of terminals in the above-mentioned song playing system is only used as an example, and not as a limitation on the structure of the song playing system provided in the embodiment of the present application.
  • the server 101 may be a server, or a server cluster composed of several servers, or a cloud computing service center, etc., which is not limited herein.
  • the terminal 102 refers to a terminal device with a song playing function, such as a mobile phone, a tablet computer, a computer, or a wearable device.
  • the terminal 102 provided in the embodiment of the present application can be installed and running with a client with a function of playing music (such as a song).
  • the client capable of playing music (such as a song) may be called a music client, and the music client corresponds to the server 101.
  • the server 101 may be a back-end server of the music client to provide back-end services for the music client.
  • a music client can refer to any application client with a music playback function. It can be an application client dedicated to music playback, or it can be social applications, instant messaging applications, live broadcast applications, and video playback applications. The client of other applications, and the other applications have music playing function.
  • the server 101 and the terminal 102 may establish a connection through a wired network or a wireless network for communication.
  • the server 101 and the terminal 102 may communicate based on the Transmission Control Protocol (TCP), or communicate based on other data transmission protocols, which is not limited in this application.
  • TCP Transmission Control Protocol
  • Fig. 2 is a schematic flowchart of a song playing method provided by an embodiment of the present application. This method can be applied to the server 101 in the system shown in FIG. 1, that is, the server 101 executes the method. As shown in Figure 2, the method may include the following steps (201-202):
  • Step 201 Receive song playback information sent by the first client.
  • the song playing information includes song information of the song currently being played by the first client. It is understandable that the song playing information may include song information of the song currently being played in the interactive interface created by the first client. Wherein, the interactive interface may include a song listening interface, but of course it is not limited to this. In addition, since the interactive interface created by the first client can distinguish the listening songs of the user of the first client from the listening songs of other users, that is, to form separate listening spaces, the songs created by the first client can also be separated. The interactive interface is considered to be a separate room. In other words, the song playing information may include song information of the song currently playing in the room created by the first client.
  • the song playback information further includes at least one of the following: playback progress, volume information, channel information, and function control information.
  • Step 202 Send a synchronous play instruction to the second client.
  • the synchronous play instruction includes song play information, and the synchronous play instruction is used to instruct the second client to play the song based on the song play information.
  • the synchronous playing instruction is used to instruct the second client to synchronously play the song based on the song playing information.
  • the synchronously played song is the song currently played in the first client terminal.
  • the so-called synchronized playback of songs by the first client and the second client means that the first client and the second client play the same song. The playback progress of the first song is the same.
  • both the first client and the second client may be the clients with music playing function described above, and the second client and the first client are different clients. , As a client that installs and runs the same application on different terminals.
  • the server sends a synchronous playing instruction to the second client after receiving the song playing information sent by the first client. Since the synchronous play instruction sent by the server to the second client includes the song play information sent by the first client, and the synchronous play instruction is used to instruct the second client to play the song based on the song play information, the second client receives After the synchronous playback instruction, the song can be played synchronously with the first client according to the song playback information, which enriches the way of sharing songs. Moreover, the technical solution of the present application can realize that two or more clients can play the same song synchronously, which ensures the synchronization and real-time performance of song playback between each client, so that multiple users can listen to the same song synchronously. Function.
  • Fig. 3 is a schematic flowchart of another song playing method provided by an embodiment of the present application. This method is applied to a first terminal, and the first terminal may be any terminal 102 in the system shown in FIG. 1.
  • the method may be executed by a first terminal (such as a first client installed and running in the first terminal).
  • the method may include the following steps (301-302):
  • Step 301 Obtain song playback information of the first client, where the song playback information includes song information of the song currently played by the first client.
  • the song playing information may include song information of the song currently playing in the interactive interface created by the first client.
  • the interactive interface may include a song listening interface, but of course it is not limited to this.
  • the songs created by the first client can also be separated.
  • the interactive interface is considered to be a separate room.
  • the song playing information may include song information of the song currently playing in the room created by the first client. That is, the first client can obtain the song playing information of the song currently playing in the room created by the first client.
  • the song playback information further includes at least one of the following: playback progress, volume information, channel information, and function control information.
  • Step 302 Send song playing information to the server.
  • the song playing information is sent by the server to the second client, so that the second client synchronously plays the song based on the song playing information.
  • the second client terminal plays the song synchronously with the first client terminal based on the song playback information.
  • the synchronously played song is the song currently played in the first client terminal.
  • the so-called synchronized playback of songs by the first client and the second client means that the first client and the second client play the same song. The playback progress of the first song is the same.
  • both the first client and the second client may be the clients with music playing function described above, and the second client and the first client are different clients. , As a client that installs and runs the same application on different terminals.
  • the first client after obtaining the song playing information of the currently playing song, the first client sends the song playing information to the server.
  • the server can send the song playing information to the second client, so that the second client can play the song synchronously with the first client according to the song playing information, which enriches the way of sharing songs.
  • the technical solution of the present application can realize that two or more clients can play the same song synchronously, which ensures the synchronization and real-time performance of song playback between each client, so that multiple users can listen to the same song synchronously. Function.
  • Fig. 4 is a schematic flowchart of another song playing method provided by an embodiment of the present application. This method can be used in the system shown in Figure 1. As shown in Figure 4, the method can include the following steps:
  • Step 401 The first client terminal obtains song playback information of the first client terminal, where the song playback information includes song information of a song currently played by the first client terminal.
  • Song information refers to the description information of the song. Based on the song information, the corresponding song can be determined.
  • the song information of the song currently played by the first client terminal refers to one or more of the song identification of the song, the song name of the song, the audio file of the song, and the file identification of the audio file of the song .
  • the song ID is used to uniquely identify the song, and different songs have different song IDs.
  • the song name can also play a role in distinguishing and identifying different songs to a certain extent. Generally, different songs have different names, but there are also multiple different songs with the same song name.
  • the audio file of the song is used to play the song, and different songs have different audio files.
  • the file identifier of the audio file of the song is used to uniquely identify the audio file. Different audio files have different file identifiers.
  • the file identifier can be the file name, file storage path, or other functions that can distinguish different audio files. This application does not limit this identifier.
  • the song playback information further includes at least one of the following: playback progress, volume information, channel information, and function control information.
  • the playback progress is used to indicate the time stamp to which the song is currently played.
  • the playback progress can be expressed in seconds or other time units, which is not limited in this application.
  • the volume information is used to indicate the playback volume of the song, and the playback volume can be represented by numbers. For example, the value range of the playback volume is 0-100.
  • the channel information is used to indicate the sound effect of the song.
  • the playing sound effects may include four types: front sound, rear sound, heavy bass, and center sound, and the first client may use any one of the sound effects to play the song.
  • Play sound effects can be represented by numbers, for example, 0 means front sound, 1 means rear sound, 2 means heavy bass, and 3 means center sound.
  • the function control information is used to indicate the control information of the related product function provided by the client, for example, it may include the switch value of one or more function switches.
  • the switch value of each function switch can be represented by numbers, for example, 0 means that the corresponding function switch is turned off, and 1 means that the corresponding function switch is turned on.
  • the function control information includes switch information of a one-key DJ (Disc Jockey, also known as a disc jockey) function.
  • the one-key DJ function includes speeding up the playback speed of the song and adding electronic music to the song.
  • the switch information of the one-key DJ function is used to indicate whether the one-key DJ function is turned on, such as the 0 or 1 switch value described above. If the one-key DJ function is enabled, when the client is playing a song, the playback speed of the song will be accelerated, and electronic music will be added to the song. Otherwise, if the one-key DJ function is turned off, the client will play the song in the default mode.
  • the function control information includes switch information of the rhythm flash function
  • the rhythm flash function includes a function of flashing on the terminal screen when the song is played to the rhythm point.
  • the switch information of the rhythm flash function is used to indicate whether the rhythm flash function is turned on, such as the switch value of 0 or 1 described above. If the rhythm flash function is turned on, the client extracts the rhythm point of the song when playing the song, and then controls the terminal screen to flash when the rhythm point is played, such as by controlling the screen brightness, the color of the displayed content, etc., to achieve the above flashing Effect.
  • the rhythm point refers to the time point that reflects the strong and weak rhythms such as the sound and the beat in the song. The rhythm point can be extracted from the beat of the song or the human voice of the song, which is not limited in this application.
  • Step 402 The first client sends song playback information to the server.
  • the server receives the song playing information sent by the first client.
  • the song playing information includes the song information of the song currently being played by the first client, so that the subsequent second client can learn which song is being played by the first client based on this, so as to achieve the same
  • the first client plays the same song.
  • the song playback information includes the playback progress
  • the first client and the second client can play the same song at the same progress to achieve synchronization of the playback progress
  • the song playback information includes volume information
  • the song playback information includes channel information
  • the first client and the second client can be realized at the same Channels play the same song to achieve channel synchronization
  • the song playback information includes function control information
  • the first client and the second client can be synchronized to turn on or off related product functions to achieve related product functions Switch synchronization.
  • it can achieve the audiovisual experience similar to the real-life scene in a bar, karaoke
  • Step 403 The server sends a synchronous play instruction to the second client.
  • the synchronous play instruction includes song play information, and the synchronous play instruction is used to instruct the second client to synchronously play the song based on the song play information.
  • the server After receiving the song playing information sent by the first client, the server sends a synchronous playing instruction to the second client.
  • the second client may be selected and determined by the first client, or may be determined by the server itself.
  • the first client may send one or Based on the identifiers of multiple second clients, the server determines the second client designated by the first client.
  • the first client obtains a candidate client list, and the candidate client list includes the identification of at least one candidate client; the first client determines a synchronized playlist based on the candidate client list, and the synchronized playlist includes One or more identifiers in the candidate client list; after that, the first client sends a synchronized playlist to the server. After receiving the synchronized playlist sent by the first client, the server determines the client corresponding to the identifier in the synchronized playlist as the second client.
  • the candidate client refers to a client for the first client to select.
  • the candidate client may be a client that has an association relationship with the first client (such as a client that has a follow, friend, or subscription relationship with the first client), or a client in a certain area.
  • a client in an area where the distance from the first client is less than a set threshold can also be a client with the same feature information, such as a client with the same preference feature information as the first client, it can also be All clients connecting to the server, and so on.
  • the first client may obtain the candidate client list from the server, or may determine the candidate client list by itself, which is not limited in this application.
  • the first client to determine the synchronized playlist based on the candidate client list may also include the following two methods.
  • the first client displays a list of candidate clients, and in response to receiving a selection instruction for one or more identifiers in the candidate client list, generates a synchronized playlist that includes the one or more identifiers, and The synchronized playlist is used to indicate the second client that plays the song synchronously with the first client.
  • the first client sends the synchronized playlist to the server.
  • the first client selects one or more identifiers from the candidate client list according to a predefined rule, and generates a synchronized playlist containing the one or more identifiers.
  • the predefined rule can be formulated by the first client or the server, which is not limited in this application.
  • the number of identifiers selected by the first client may or may not have a maximum threshold.
  • the server may determine at least one second client before receiving the song playing information or after receiving the song playing information.
  • the server obtains a candidate client list, and the candidate client list includes the identification of at least one candidate client; based on the candidate client list, the server determines the second client to which the synchronous play instruction is to be sent.
  • the server determines a synchronized playlist based on the candidate client list, and the synchronized playlist includes one or more identifiers in the candidate client list; after that, the server determines the client corresponding to the identifiers in the synchronized playlist as the first Two clients.
  • the candidate client refers to the client for the server to choose.
  • the candidate client may be a client that has an association relationship with the first client (such as a client that has a follow, friend, or subscription relationship with the first client), or a client in a certain area.
  • a client in an area where the distance from the first client is less than a set threshold can also be a client with the same feature information, such as a client with the same preference feature information as the first client, it can also be All clients connecting to the server, and so on.
  • the server may determine the candidate client list by itself, or obtain the candidate client list from the first client, which is not limited in this application.
  • the server determines the second client to which the synchronization play instruction is to be sent based on the candidate client list (or the server determines the synchronization playlist based on the candidate client list), which may also include the following manner: One or more clients corresponding to the identifiers are selected from the client list and determined as the second client.
  • the predefined rule can be formulated by the first client or the server, which is not limited in this application.
  • the number of identifiers selected by the server may have a maximum threshold or none.
  • the server may also determine the client corresponding to each identifier in the candidate client list as the second client.
  • the predefined rules involved in the above embodiments refer to the client selection rules formulated in advance. For example, it can be selected randomly, or the client identifiers in the candidate client list can be sorted according to a certain priority order, and then based on the priority. For selection, this application does not limit it.
  • the candidate client list involved in the above embodiment includes but is not limited to at least one of the following: an access client list, an associated client list, and a similar client list.
  • the access client list may also be referred to as an access terminal list, an access user list, or other names, and the access client list includes the identities of all clients accessing the room created by the first client.
  • the interactive interface displayed by the first client can be regarded as a room. Therefore, the access client list here can include access to the interactive interface created by the first client (such as listening Song interface) the identification of all clients.
  • the identification information (such as user account, avatar, etc.) corresponding to the client that accesses the interactive interface created by the first client (such as the listening interface) can be in the interactive interface (such as the listening interface) created by the first client To display.
  • the associated client list may also be referred to as an associated terminal list, an associated user list, or other names.
  • the associated client list includes the identification of the client that has an associated relationship with the first client, and the associated relationship includes but is not limited to at least one of the following: Friends relationship, follow relationship, subscription relationship.
  • the list of similar clients may also be referred to as a list of similar terminals, a list of similar users, or other names.
  • the list of similar clients includes the identifiers of clients that have the same characteristic information as the first client. For example, the same characteristic information mentioned above may be the same preference characteristic. information.
  • step 403 may include the following sub-steps:
  • the server determines a list of access clients, and the list of access clients includes the identities of all clients accessing the room created by the first client;
  • the server determines the second client to which the synchronous play instruction is to be sent based on the access client list.
  • a room refers to a virtual space for the client to play (or listen to) songs, and the room can be regarded as an interactive interface displayed by the client (such as a song listening interface) in terms of interface performance.
  • the room may also be called a group, a group, a live broadcast room, a music room, etc., which is not limited in this application.
  • the room can be used to easily and effectively record which clients are playing the same song synchronously.
  • the server can assign different room numbers to different rooms.
  • the server associates the room number with the client's identification, and the client's identification with a certain room number has an association relationship (or a correspondence relationship) , Can be considered as the identification of the client that has joined the same room (that is, the room identified by the room number).
  • clients joining the same room can play the same song synchronously. For example, all clients joining the same room can play the same song synchronously, or some clients joining the same room can play the same song synchronously.
  • the aforementioned room may exist in the form of a room number.
  • the server generates a room number, associates the room number with the identification of each client joining the room, and records the difference between the room number and the identification of the client. The relationship between them.
  • the client identifier associated with the room number of a certain room represents the client that has joined the room.
  • the above room can also exist in the form of no room number.
  • the server only needs to record the binding relationship between the identities of the clients joining the same room.
  • the server records the status of the first client who created the room.
  • the binding relationship between the identifier and the identifier of the second client joining the room Through the binding relationship, the server can also learn which clients belong to the same room.
  • the server sends the access client list to the first client, and accordingly, the first client receives the access client list sent by the server.
  • the first client displays a list of access clients; in response to receiving a selection instruction for one or more identifiers in the list of access clients, a synchronized playlist containing the one or more identifiers is generated, and the synchronized playlist is used to indicate and
  • the first client is the second client that plays the song synchronously; sends the synchronous playlist to the server.
  • the server determines the client corresponding to the identifier in the synchronized playlist as the second client. In this way, the user of the first client can select one or more clients as the second client from each client joining the room to play songs synchronously with the first client.
  • the server determines the client corresponding to the identifier in the access client list as the second client. For example, the server determines the client corresponding to all the identifiers in the access client list as the second client. In this way, the server will determine all the clients that join the same room as the first client as the second client that plays the song synchronously with the first client.
  • the server selects the client corresponding to the qualified identifier from the access client list based on the predefined rule, and determines it as the second client.
  • the predefined rule can be formulated by the first client or the server, which is not limited in this application.
  • the number of identifiers selected by the server may have a maximum threshold or none.
  • the identification of the client is used to distinguish different clients, and the identification may be a user identification (such as a user account) logging in to the client, or a device identification of the terminal where the client is located.
  • the device identifier of the terminal may specifically be a Media Access Control (MAC) address, an Internet Protocol (IP) address, or a hardware address of the terminal.
  • MAC Media Access Control
  • IP Internet Protocol
  • Step 404 After receiving the synchronous playing instruction, the second client synchronously plays the above-mentioned song based on the song playing information.
  • the second client terminal obtains the song information included in the song playing information, determines the song currently being played by the first client based on the song information, and then plays the song, so as to realize the synchronous playback of the same song with the first client terminal.
  • the second client may determine the playing progress of the second client with respect to the song based on the playing progress of the first client.
  • the playback progress of the second client for the above-mentioned songs may be the same as or different from the playback progress of the first client, which is not limited in this application.
  • the second client may determine the playback volume of the second client for the song based on the volume information of the first client.
  • the playback volume of the second client for the aforementioned song may be the same as or different from the playback volume of the first client, which is not limited in this application.
  • the second client may determine the playback channel of the second client for the song based on the channel information of the first client.
  • the playback channel of the second client for the above-mentioned song may be the same as or different from the playback channel of the first client, which is not limited in this application.
  • the second client may determine the control strategy of the second client for the above-mentioned related product functions based on the function control information of the first client.
  • Such as switch control strategy the control strategy of the second client for the above-mentioned related product functions may be the same as or different from the control strategy of the first client, which is not limited in this application.
  • the second client uses the same playback progress, playback volume, playback sound channel, and related product functions as the first client according to the above-mentioned song playback information.
  • the control strategy can realize the synchronous playback of a song initiated by one user, and multiple users can participate in the simultaneous listening of the song, achieving the audio-visual experience similar to the real-life scene of a bar, karaoke, or nightclub, and enhancing the realism and immersion of song listening feel.
  • by turning on the one-key DJ function and/or the rhythm flash function it helps to further enhance the rhythm and presence of the song.
  • the first client can choose to determine the second client, or the server can choose to determine the second client, thereby achieving more diverse Synchronous song playback program.
  • the candidate client corresponding to the second client may include a client accessing the room created by the first client, may also include a client associated with the first client, and may also include Clients with the same feature information, etc., this application provides a variety of ways to select the second client, so that the user of the first client can select other users who listen to the song synchronously according to actual needs, which fully improves the flexibility of selection and also makes Product features are more abundant.
  • the first client and the second client may also perform real-time chat interaction during the process of synchronously playing songs.
  • the first message sent by the first client can be sent to the second client participating in synchronization through the server relay; correspondingly, the second message sent by the second client can be sent to the first client through the server relay and participating in the synchronization The other second client.
  • the above message may be in the form of text, voice, picture, emoticon, etc., which is not limited in this application.
  • Fig. 5 is a schematic flowchart of another song playing method provided by an embodiment of the present application. This method can be used in the system shown in Figure 1. As shown in Figure 5, the method may include the following steps (501-513):
  • Step 501 The first client sends a room creation request to the server.
  • the request for creating a room includes the identification of the first client.
  • the identification of the first client can uniquely identify the first client in the song playing system.
  • the identification of the first client may be a user identification (such as a user account) logging in to the first client, or may be a device identification of the first terminal where the first client is located.
  • the device identifier of the first terminal may specifically be the MAC address, IP address, or hardware address of the first terminal.
  • the first client when it detects a trigger operation for creating a room, it sends a room creation request to the server.
  • the first client's detection of the trigger operation for creating a room includes: the first client detects a click operation on the button of creating a room displayed by the first client; and/or, the first client receives an instruction to create a room Voice commands.
  • Step 502 The server generates a room number corresponding to the first client.
  • the server may store the room number corresponding to the first client in correspondence with the identification of the first client.
  • Step 503 The server sends a room creation response to the first client.
  • the room creation response includes the room number corresponding to the first client, and the room number is used to identify the room.
  • Step 504 The first client creates a room in the first client based on the room creation response.
  • the operations that can be performed in the created room include playing songs, adjusting song playback progress, adjusting song playback volume, switching song playback channels, and turning on or off one of the function switches.
  • the function switch may include a one-key DJ function switch and a rhythm flash function switch.
  • the one-key DJ function is turned on, the first client can speed up the playback speed of the song, and at the same time add electronic music and other sounds to the song to play together with the song.
  • the rhythm flash function is turned on, the screen will flash correspondingly when the song currently playing on the first client reaches the rhythm point.
  • the first client may adjust the song playback progress, adjust the song playback volume, and/or switch the song playback channel according to the user's operation.
  • the first client can also turn on or off the function switch according to the user's operation to improve the flexibility of song playback.
  • Step 505 The first client obtains the song playing information of the song currently playing in the room created by the first client.
  • the song playback information includes one or more of song information, playback progress, volume information, channel information, and function control information.
  • the song information includes one or more of the song identifier, the song name, or the audio file corresponding to the song in the music client.
  • the unit of the playback progress can be seconds.
  • the volume information includes the playback volume of the song.
  • the playback volume can be represented by numbers, for example, the value of the playback volume is 0-100.
  • the channel information is used to indicate the sound effect of the song.
  • the playing sound effects may include four types: front sound, rear sound, heavy bass, and center sound, and the first client may use any one of the sound effects to play the song.
  • Play sound effects can be represented by numbers, for example, 0 means front sound, 1 means rear sound, 2 means heavy bass, and 3 means center sound.
  • the function control information includes switch values of one or more function switches.
  • the switch value of each function switch can be represented by numbers, for example, 0 means that the corresponding function switch is turned off, and 1 means that the corresponding function switch is turned on.
  • the song playing information acquired by the first client includes: "Song ID: 123456, Song Name: Motherland, Playing Progress: 02:15, Playing Volume: 48, Channel Information: 2, Rhythm Flash: 1", indicating The song ID of the song currently playing in the room created in the first client is 123456, the song name of the song is the motherland, the current playback progress of the song is 2 minutes and 15 seconds, the playback volume of the song is 48, and the song adopts The sound effect of heavy bass is played, and the rhythm flash function is turned on for the song.
  • Step 506 The server determines the client that accesses the room created by the first client.
  • the client accessing the room created by the first client is different from the first client.
  • a certain client can access the room created by the first client through an invitation initiated by the first client, or can search for and access the room created by the first client according to the room number of the room created in the first client .
  • Step 507 The server generates a list of access terminals.
  • the access terminal list includes the identities of all the clients accessing the room created by the first client.
  • the access terminal list may also be referred to as an access client list, an access user list, or other names, which is not limited in this application.
  • the server deletes the client from the access terminal list and synchronizes the updated access terminal list to the first client.
  • the identification of the client may be the user identification of the user logging in to the client, or the device identification of the client.
  • Step 508 The server sends the access terminal list to the first client.
  • the server may periodically send the access terminal list to the first client.
  • the server may also send the access terminal list to the first client when the client accessing the room created by the first client is updated. For example, when a new client accesses a room created by the first client or a client exits a room created by the first client, the server may update the access terminal list and send the updated access terminal list to the first client.
  • Step 509 The first client displays a list of access terminals.
  • FIG. 6 is a schematic diagram of an interface for displaying a list of access terminals on a first client according to an embodiment of the present application.
  • the room number of the room created in the first client is 9875
  • the display interface of the first client includes an access terminal list A
  • the access terminal list includes multiple terminal identifiers ae (the terminal identifier is equivalent to the customer Terminal ID), which means that 5 clients are currently accessing the room with the room number 9875.
  • Step 510 The server determines the second client.
  • the implementation manner for the server to determine the second client includes but is not limited to the following:
  • the first client when the first client receives a selection instruction for one or more identifiers in the access terminal list, the first client generates a synchronized playlist that includes the one or more identifiers.
  • the first client sends the synchronized playlist to the server.
  • the server determines the client corresponding to the identifier in the synchronized playlist as the second terminal.
  • the synchronized playlist is used to indicate a client that plays songs synchronously with the first client.
  • the first client when the first client detects a click operation for a certain identifier in the access terminal list, or when the first client detects a selection operation for a check box corresponding to a certain identifier in the access terminal list Or, when the first client receives a voice selection instruction for a certain identifier in the access terminal list, the first client determines to receive a selection instruction for the identifier in the access terminal list.
  • the synchronized playlist includes the identifiers of one or more clients accessing the room created by the first client.
  • the first client when the first client detects a selection instruction for the identifier b and the identifier c in the access terminal list A, the first client generates a synchronized playlist containing the identifier b and the identifier c, and The synchronized playlist is used to indicate that the client corresponding to the identifier b and the identifier c plays the song synchronously with the first client. Further, the server determines the client corresponding to the identifier b and the identifier c as the second client.
  • the user can determine on the first client the second client that plays the song synchronously with the first client, which improves the flexibility of song sharing.
  • the server determines each client that accesses the room created by the first client as the second client.
  • the second client may also be determined by the first client, or determined by the server in other ways.
  • Step 511 The first client sends song playback information to the server.
  • the first client terminal may periodically send song playback information to the server. It is also possible for the first client to select and send the moment when the song playing information is sent to the server. It is also possible to send the song playing information to the server when the song playing information on the first client changes, for example the song information, the channel information and/or the function control information changes.
  • the first client may send the song playback information and the synchronized playlist to the server when they are carried in a message.
  • Step 512 The server sends a synchronous play instruction to the second client.
  • the synchronous play instruction includes song play information, and the synchronous play instruction is used to instruct the second client to play the song based on the song play information.
  • the second client is a client accessing the room created by the first client, and the second client is different from the first client.
  • Step 513 The second client terminal plays the song based on the synchronous play instruction.
  • the second client terminal obtains the song playback information in the synchronous playback instruction, and automatically plays the same song with the first client terminal, synchronizes the playback progress of the song, plays the song at the same volume, plays the song with the same channel, and plays the same song with the first client.
  • a client synchronization function switch can also play the song according to part of the song playback information, for example, only the song information and playback progress are used, the same song is played with the first client and the song playback progress is synchronized, instead of using the song playback information in the song playback information. Play volume and other information.
  • the second client after receiving the synchronous play instruction, the second client can also choose whether to play the song synchronously. If the second client receives a selection instruction to play the song asynchronously, the second client can ignore the synchronous play instruction .
  • Fig. 7 exemplarily shows a schematic diagram of an interface corresponding to this embodiment.
  • the first client displays the main interface 70 of the "one-click party" function.
  • the main interface 70 includes a “create party” button 71 and a “join party” button 72.
  • the "create party” button 71 is used To trigger the creation of a party, the "Join Party” button 72 is used to trigger joining an already created party.
  • the first client may send a room creation request to the server, and the room creation request includes the identification of the first client.
  • the server generates a room number corresponding to the first client, and then sends a room creation response to the first client.
  • the room creation response includes the room number corresponding to the first client.
  • the first client creates a room in the first client based on the room creation response, and displays a corresponding song listening interface 73, which can be regarded as a room created by the first client.
  • the song listening interface 73 may display identification information 74 (such as an avatar) of other client users who are listening to songs synchronously with the first client user, and may also display a playback progress adjustment control 75 and a volume adjustment control 76. , Channel setting control 77 and function control control (such as the switch control 78 including the rhythm flash function and the switch control 79 of the one-key DJ function) and so on.
  • the first client can send the song information of the currently playing song, and the corresponding information such as the playback progress, volume information, channel information, and function control information to the second client participating in the party, so as to realize the synchronized playback of the song.
  • the first client displays a synchronization user invitation interface in response to a trigger signal for the first function control in the song listening interface, and the synchronization user invitation interface includes the identification of at least one candidate client;
  • the first client sends a synchronous user invitation request including the target identifier to the server, and the synchronous user invitation request is used to invite the client corresponding to the target identifier to synchronously play the song with the first client.
  • the server After receiving the aforementioned synchronization user invitation request, the server sends corresponding invitation information to the client corresponding to the target identifier.
  • the invitation information may include a join link and/or room number. The client corresponding to the target identifier can join the room created by the first client through the joining link and/or room number, so as to realize the synchronization of playing songs with the first client.
  • the first client after the first client obtains the song playing information of the song currently playing in the room created by the first client, it sends the song playing information to the server; then the server sends the song to the first client.
  • the client sends a synchronous play instruction that includes the play information of the song. Since the synchronous play instruction sent by the server to the second client is used to instruct the second client to play the song based on the song play information, the second client can play the song synchronously with the first client according to the song play information after receiving the synchronous play instruction Songs enrich the way to share songs.
  • the technical solution of multiple clients joining the same room and synchronously playing songs realizes the product function of an online virtual party, which helps to enhance the user's sense of immersion and experience when listening to songs.
  • Fig. 8 is a schematic flowchart of another song playing method provided by an embodiment of the present application. This method can be used in the system shown in Figure 1. As shown in Figure 8, the method may include the following steps (801-811):
  • Step 801 The first client terminal displays a song listening interface.
  • the song’s listening interface can display related information about the song, such as song name, lyrics, playback progress, etc., and can also display related operation controls, such as pause/start control, progress bar control, next/previous switch control Etc., this application does not limit this.
  • Step 802 In response to the trigger signal for the first function control in the song listening interface, the first client displays a synchronous user invitation interface, and the synchronous user invitation interface includes an identifier of at least one candidate client.
  • the first function control is used to trigger the display of the synchronous user invitation interface.
  • the synchronization user invitation interface includes the identification of at least one candidate client.
  • the candidate client refers to a client for the first client to select.
  • the candidate client may be a client that has an association relationship with the first client (such as a client that has a follow, friend, or subscription relationship with the first client), or a client in a certain area.
  • a client in an area where the distance from the first client is less than a set threshold can also be a client with the same feature information, such as a client with the same preference feature information as the first client, it can also be All clients connecting to the server, and so on.
  • the first client may obtain the candidate client list from the server, or may determine the candidate client list by itself, which is not limited in this application.
  • Step 803 In response to receiving a selection instruction for the target identifier in the synchronization user invitation interface, the first client sends a synchronization user invitation request including the target identifier to the server.
  • the target identifier may be the identifier of one or more clients in the synchronization user invitation interface, that is, the user of the first client may simultaneously initiate an invitation to simultaneously play songs to one or more target users.
  • the synchronous user invitation request is used to invite the client corresponding to the target identifier to synchronously play the song with the first client.
  • the synchronization user invitation request includes the identification of the first client and the target identification.
  • Step 804 The server determines the client corresponding to the target identifier as the second client, and sends a synchronous song listening request to the second client.
  • the synchronous listening song request is used to request confirmation whether to participate in synchronous listening to the song played by the first client.
  • the request for synchronously listening to the song includes the identification of the first client, so that the second client can know who sent the invitation.
  • Step 805 Based on the request for synchronous listening to the song, the second client displays the synchronous listening confirmation message.
  • the synchronous listening confirmation information is used to send a prompt to the user of the second client terminal to inform that the first client terminal has issued an invitation to listen to the song synchronously.
  • the synchronous listening confirmation message also includes a confirmation control and a cancellation control.
  • the confirmation control is used to trigger the confirmation instruction, which means confirming to participate in the synchronous listening of the song played by the first client
  • the cancel control is used to trigger the cancellation command, which means that the participation is refused. Synchronously listen to the songs played by the first client.
  • the user of the second client can choose to confirm participation or refuse to participate in accordance with his own needs.
  • Step 806 In response to receiving the confirmation instruction for the synchronous listening confirmation information, the second client sends a synchronous listening confirmation response to the server.
  • the synchronous listening confirmation response is used to instruct the second client to confirm to participate in synchronous listening of the song played by the first client.
  • the synchronization listening confirmation response includes the identification of the second client, and optionally the identification of the first client.
  • Step 807 The server establishes a binding relationship between the identity of the first client and the identity of the second client.
  • the binding relationship indicates which clients are playing songs synchronously. Since the first client may send an invitation to one or more second clients, there may be one or more second client identifiers that have a binding relationship with the identifier of the first client. In addition, the server may mark the identity of the synchronization initiator (that is, the identity of the first client) to record that it is the synchronization initiator.
  • Step 808 The server sends a synchronization user invitation success response to the first client.
  • the synchronized user invitation success response is used to indicate that the user successfully invited to the second client to participate in the synchronized song playback.
  • the synchronization user invitation success response includes the identifier of the second client.
  • Step 809 The first client sends song playback information to the server.
  • the song playing information includes song information of the song currently being played by the first client.
  • the song playback information further includes at least one of the following: playback progress, volume information, channel information, and function control information.
  • Step 810 The server sends a synchronous play instruction to the second client.
  • the synchronous play instruction includes song play information, and the synchronous play instruction is used to instruct the second client to synchronously play the song based on the song play information.
  • Step 811 After receiving the synchronous play instruction, the second client side synchronously plays the above-mentioned song based on the song play information.
  • Figures 9 and 10 exemplarily show schematic diagrams of interfaces corresponding to this embodiment.
  • the first client terminal displays a song listening interface 90, and the listening interface 90 includes a "follow me” function button 91.
  • the first client displays a synchronization user invitation interface 92, and the synchronization user invitation interface 92 includes the identities (such as avatars) of multiple candidate users.
  • the first client user can select one or more target users among them and send out a synchronization invitation.
  • the first client sends a synchronous user invitation request including the target identification (ie identification information of the target user) to the server, and switches back to displaying the song.
  • the listening interface 90 (as shown in FIG. 10).
  • a prompt message 94 indicating that the target user is waiting to join may be displayed in the song listening interface 90.
  • the target user's identification 95 (such as an avatar) is displayed in the song listening interface 90 of the first client, and reflects the first
  • the first client can send the song information of the currently playing song to the second client through the server, optionally including information such as playback progress, volume information, channel information, and function control information. Achieve synchronized listening.
  • the first client initiates an invitation to the second client, and invites the second client to play songs synchronously with the first client.
  • the second client can accept the invitation to The song playing information of the first client is acquired, and then based on the song playing information, the song is played synchronously with the first client to realize a song following function.
  • the technical solution of the present application is introduced and explained only from the perspective of the interaction of the first client, the server, and the second client.
  • the steps performed by the first client mentioned above can be implemented separately as the song playing method on the first client side; the steps performed by the server mentioned above can be implemented separately as the song playing method on the server side; the above steps performed by the second client can be implemented separately. Steps can be implemented separately as a song playing method on the second client side.
  • Fig. 11 is a schematic structural diagram of a song playing device provided by an embodiment of the present application. This device can be used for the server 101 in the system as shown in FIG. 1. As shown in FIG. 11, the device 110 may include: a receiving module 111 and a sending module 112.
  • the receiving module 111 is configured to receive song playback information sent by the first client, where the song playback information includes song information of the song currently played by the first client.
  • the sending module 112 is configured to send a synchronous play instruction to a second client, the synchronous play instruction includes the song play information, and the synchronous play instruction is used to instruct the second client to synchronize based on the song play information Play the song.
  • the server sends a synchronous playing instruction to the second client after receiving the song playing information sent by the first client. Since the synchronous play instruction sent by the server to the second client includes the song play information sent by the first client, and the synchronous play instruction is used to instruct the second client to play the song based on the song play information, the second client receives After the synchronous playback instruction, the song can be played synchronously with the first client according to the song playback information, which enriches the way of sharing songs.
  • the technical solution of the present application can realize that two or more clients can play the same song synchronously, which ensures the synchronization and real-time performance of song playback between each client, thereby enabling multiple users to listen to the same song synchronously. Function.
  • the song playback information further includes at least one of the following: playback progress, volume information, channel information, and function control information.
  • the function control information includes: switch information of the one-key DJ function, and the one-key DJ function includes the function of accelerating the playback speed of the song and adding electronic music to the song; and/or,
  • the switch information of the rhythm flash function, the rhythm flash function includes the function of corresponding flashing on the terminal screen when the song is played to the rhythm point.
  • the song playing information includes song information of a song currently playing in the room created by the first client.
  • the device 110 further includes a first generating module 113.
  • the receiving module 111 is further configured to receive a room creation request sent by the first client, where the room creation request includes the identifier of the first client.
  • the first generating module 113 is configured to generate a room number corresponding to the first client.
  • the sending module 112 is further configured to send a room creation response to the first client, where the room creation response includes the room number, and the room number is used to identify the room.
  • the device 110 further includes a second generating module 114 and a first determining module 115.
  • the second generating module 114 is configured to determine a candidate client list, and the candidate client list includes an identifier of at least one candidate client.
  • the first determining module 115 is configured to determine the second client to which the synchronous play instruction is to be sent based on the candidate client list.
  • the sending module 112 is further configured to send the candidate client list to the first client.
  • the receiving module 111 is further configured to receive a synchronized playlist sent by the first client, where the synchronized playlist includes one or more identifiers in the candidate client list.
  • the first determining module 115 is configured to determine the client corresponding to the identifier in the synchronized playlist as the second client.
  • the first determining module 115 is further configured to determine the client corresponding to each identifier in the candidate client list as the second client; or, according to a predefined rule, One or more clients corresponding to the identifiers are selected from the candidate client list and determined as the second client.
  • the candidate client list includes at least one of the following:
  • An access client list where the access client list includes the identities of all clients accessing the room created by the first client;
  • a list of associated clients where the list of associated clients includes identifiers of clients that have an associated relationship with the first client, and the associated relationship includes at least one of the following: a friend relationship, a follow relationship, and a subscription relationship;
  • a list of similar clients where the list of similar clients includes identifiers of clients that have the same feature information as the first client.
  • Fig. 13 is a schematic structural diagram of a song playing device provided by another embodiment of the present application.
  • the device is applied to a first terminal, and the first terminal may be any terminal 102 in the system shown in FIG. 1.
  • the first client can run in the first terminal.
  • the apparatus 130 may include: an obtaining module 131 and a sending module 132.
  • the obtaining module 131 is configured to obtain song playing information of the first client, where the song playing information includes song information of a song currently being played by the first client.
  • the sending module 132 is configured to send the song playing information to the server, and the song playing information is sent by the server to the second client, so that the second client synchronously plays the song based on the song playing information .
  • the first client after obtaining the song playing information of the currently playing song, the first client sends the song playing information to the server.
  • the server can send the song playing information to the second client, so that the second client can play the song synchronously with the first client according to the song playing information, which enriches the way of sharing songs.
  • the technical solution of the present application can realize that two or more clients can play the same song synchronously, which ensures the synchronization and real-time performance of song playback between each client, thereby enabling multiple users to listen to the same song synchronously. Function.
  • the sending module 132 is configured to periodically send the song playing information to the server; or, when the song playing information changes, send the song playing information to the server.
  • the acquiring module 131 is configured to acquire song playing information in the room created by the first client.
  • the device 130 further includes a receiving module 133 and a creating module 134.
  • the sending module 132 is configured to send a room creation request to the server, where the room creation request includes the identifier of the first client.
  • the receiving module 133 is configured to receive a room creation response sent by the server, where the room creation response includes the room number corresponding to the first client.
  • the creation module 134 is configured to create the room in the first client based on the room creation response, and the room number is used to identify the room.
  • the device 130 further includes a display module 135 and a generating module 136.
  • the receiving module 133 is configured to receive a list of candidate clients sent by the server, where the list of candidate clients includes an identifier of at least one candidate client.
  • the display module 135 is configured to display the candidate client list.
  • the generating module 136 is configured to generate a synchronous playlist containing the one or more identifiers in response to receiving a selection instruction for one or more identifiers in the candidate client list, and the synchronous playlist is used to indicate The second client that plays the song synchronously with the first client.
  • the sending module 132 is configured to send the synchronized playlist to the server.
  • the candidate client list includes at least one of the following:
  • An access client list where the access client list includes the identities of all clients accessing the room created by the first client;
  • a list of associated clients where the list of associated clients includes identifiers of clients that have an associated relationship with the first client, and the associated relationship includes at least one of the following: a friend relationship, a follow relationship, and a subscription relationship;
  • a list of similar clients where the list of similar clients includes identifiers of clients that have the same feature information as the first client.
  • the device 130 further includes a display module 135.
  • the display module 135 is used to display the listening interface of the song.
  • the display module 135 is further configured to display a synchronization user invitation interface in response to a trigger signal for the first function control in the song listening interface, and the synchronization user invitation interface includes an identification of at least one candidate client.
  • the sending module 132 is further configured to send a synchronous user invitation request including the target identifier to the server in response to receiving a selection instruction for the target identifier in the synchronous user invitation interface, where the synchronous user invitation request is used for The client corresponding to the target identifier is invited to play the song synchronously with the first client.
  • the song listening interface further includes at least one of the following: a playback progress adjustment control, a volume adjustment control, a sound channel setting control, and a function control control.
  • the function control controls include: a one-key DJ function switch control, the one-key DJ function includes the function of accelerating the playback speed of the song and adding electronic music to the song; and/or,
  • the switch control of the rhythm flash function, the rhythm flash function includes the function of corresponding flashing on the terminal screen when the song is played to the rhythm point.
  • the embodiment of the present application also provides a song playing device.
  • the device includes a processor and a memory.
  • the memory is used to store a computer program, and the computer program includes program instructions; the processor is used to call the computer program to implement the steps executed by the server in the above-mentioned song playing method.
  • Fig. 15 is a block diagram of a server provided by an embodiment of the present application.
  • the server 150 includes: a processor 1501 and a memory 1502;
  • the memory 1502 is configured to store a computer program, and the computer program includes program instructions;
  • the processor 1501 is configured to call the computer program to implement the above-mentioned method for playing songs on the server side.
  • the server 150 further includes a communication bus 1503 and a communication interface 1504.
  • the processor 1501 includes one or more processing cores, and the processor 1001 executes various functional applications and data processing by running a computer program.
  • the memory 1502 may be used to store computer programs.
  • the memory may store an operating system and at least one application program unit required by the function.
  • the operating system can be a real-time operating system (Real Time eXecutive, RTX), LINUX, UNIX, WINDOWS, or OS X.
  • the communication interface 1504 is used to communicate with other storage devices or network devices.
  • the communication interface 1504 may be used to receive song playback information sent by the first terminal.
  • the memory 1502 and the communication interface 1504 are respectively connected to the processor 1501 through a communication bus 1503.
  • the embodiment of the present application also provides a song playing device. It is used for a first terminal (a terminal running a first client).
  • the first terminal may be any terminal 102 in the system as shown in FIG. 1.
  • the device includes a processor and a memory.
  • the memory is used to store a computer program, and the computer program includes program instructions; the processor is used to call the computer program to implement the steps performed by the first client in the above-mentioned song playing method.
  • Fig. 16 shows a block diagram of a terminal provided by an exemplary embodiment of the present application.
  • the terminal 1600 includes a processor 1601 and a memory 1602.
  • the processor 1601 may include one or more processing cores, such as a 4-core processor, an 8-core processor, and so on.
  • the processor 1601 can adopt at least one hardware form among DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), and PLA (Programmable Logic Array, Programmable Logic Array). accomplish.
  • the processor 1601 may also include a main processor and a coprocessor.
  • the main processor is a processor used to process data in the awake state, also called a CPU (Central Processing Unit, central processing unit); the coprocessor is A low-power processor used to process data in the standby state.
  • the processor 1601 may be integrated with a GPU (Graphics Processing Unit, image processor), and the GPU is used to render and draw content that needs to be displayed on the display screen.
  • the processor 1601 may further include an AI (Artificial Intelligence) processor, and the AI processor is used to process computing operations related to machine learning.
  • AI Artificial Intelligence
  • the memory 1602 may include one or more computer-readable storage media, which may be non-transitory.
  • the memory 1602 may also include high-speed random access memory and non-volatile memory, such as one or more magnetic disk storage devices and flash memory storage devices.
  • the non-transitory computer-readable storage medium in the memory 1602 is used to store at least one instruction, and the at least one instruction is used to be executed by the processor 1601 to implement the above-mentioned first client-side song playback method .
  • the terminal 1600 optionally further includes: a peripheral device interface 1603 and at least one peripheral device.
  • the processor 1601, the memory 1602, and the peripheral device interface 1603 may be connected by a bus or a signal line.
  • Each peripheral device can be connected to the peripheral device interface 1603 through a bus, a signal line, or a circuit board.
  • the peripheral device includes: at least one of a radio frequency circuit 1604, a display screen 1605, a camera component 1606, an audio circuit 1607, a positioning component 1608, and a power supply 1609.
  • FIG. 16 does not constitute a limitation on the terminal 1600, and may include more or fewer components than shown, or combine certain components, or adopt different component arrangements.
  • the embodiment of the present application also provides a song playing system, which includes a server and a terminal.
  • the server includes a song playing device as shown in FIG. 11-12 or a song playing device as shown in FIG. 15 for executing the server side
  • the terminal includes the song playing device as shown in Figure 13-14 or the song playing device as shown in Figure 16, which is used to perform the song playing method on the first client side.
  • the embodiment of the present application also provides a computer storage medium (or referred to as a computer-readable storage medium).
  • the computer storage medium stores instructions.
  • the instructions are executed by the processor of the terminal, the above-mentioned first client side is implemented.
  • the aforementioned computer-readable storage medium may be ROM (Read-Only Memory), RAM (Random Access Memory, random access memory), CD-ROM (Compact Disc Read-Only Memory, CD-ROM) ), magnetic tapes, floppy disks and optical data storage devices.
  • ROM Read-Only Memory
  • RAM Random Access Memory, random access memory
  • CD-ROM Compact Disc Read-Only Memory
  • magnetic tapes magnetic tapes
  • floppy disks and optical data storage devices.
  • a computer program product or computer program includes computer instructions, the computer instructions are stored in a computer-readable storage medium, and the processor receives The readable storage medium reads and executes the computer instructions to implement the song playing method on the server side or the song playing method on the first client side.
  • the "plurality” mentioned herein means two or more.
  • “And/or” describes the association relationship of the associated objects, indicating that there can be three types of relationships, for example, A and/or B, which can mean: A alone exists, A and B exist at the same time, and B exists alone.
  • the character “/” generally indicates that the associated objects before and after are in an "or” relationship.
  • the numbering of the steps described in this article only exemplarily shows a possible order of execution among the steps. In some other embodiments, the above steps may also be executed out of the order of numbers, such as two differently numbered ones. The steps are executed at the same time, or the two steps with different numbers are executed in the reverse order from the figure, which is not limited in the embodiment of the present application.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Reverberation, Karaoke And Other Acoustics (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本申请公开了一种歌曲播放方法、装置及系统、计算机存储介质,属于互联网技术领域。所述方法包括:服务器接收第一客户端发送的歌曲播放信息,之后向第二客户端发送同步播放指令。由于服务器向第二客户端发送的同步播放指令中包括第一客户端发送的歌曲播放信息,且该同步播放指令用于指示第二客户端基于该歌曲播放信息播放歌曲,因此第二客户端接收到同步播放指令后可根据歌曲播放信息与第一客户端同步播放歌曲,丰富了分享歌曲的方式。而且,本申请能够实现两个或者两个以上的客户端同步播放同一首歌曲,保证了各个客户端之间歌曲播放的同步性和实时性,从而能够实现多个用户同步收听同一歌曲的功能。

Description

歌曲播放方法、装置及系统、计算机存储介质
本申请要求于2020年03月11日提交的申请号为202010167411.5、发明名称为“歌曲播放方法、装置及系统、计算机存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及互联网技术领域,特别涉及一种歌曲播放方法、装置及系统、计算机存储介质。
背景技术
随着生活节奏的加快,听歌成为一种常见的舒压娱乐方式。用户可以根据需求,播放自己喜欢的歌曲,还可以将该歌曲分享给其他用户。
目前,用户听歌时一般都是使用设备播放自己喜欢的歌曲,当用户想要将歌曲分享给其他用户时,一般将该歌曲的链接发送给其他用户,其他用户使用该歌曲的链接在自己的设备上播放歌曲。目前分享歌曲的方式较单一。
发明内容
本申请实施例提供了一种歌曲播放方法、装置及系统、计算机存储介质,可以解决相关技术中分享歌曲的方式较单一的问题。所述技术方案如下:
根据本申请实施例的一个方面,提供了一种歌曲播放方法,所述方法由服务器执行,所述方法包括:接收第一客户端发送的歌曲播放信息,所述歌曲播放信息包括所述第一客户端当前播放的歌曲的歌曲信息;向第二客户端发送同步播放指令,所述同步播放指令中包括所述歌曲播放信息,所述同步播放指令用于指示所述第二客户端基于所述歌曲播放信息同步播放所述歌曲。
根据本申请实施例的一个方面,提供了一种歌曲播放方法,所述方法由第一客户端执行,所述方法包括:获取所述第一客户端的歌曲播放信息,所述歌曲播放信息包括所述第一客户端当前播放的歌曲的歌曲信息;向服务器发送所述歌曲播放信息,所述歌曲播放信息由所述服务器发送给第二客户端,以使得所述第二客户端基于所述歌曲播放信息同步播放所述歌曲。
根据本申请实施例的一个方面,提供了一种歌曲播放装置,所述装置包括:
接收模块,用于接收第一客户端发送的歌曲播放信息,所述歌曲播放信息包括所述第一客户端当前播放的歌曲的歌曲信息;
发送模块,用于向第二客户端发送同步播放指令,所述同步播放指令中包括所述歌曲播放信息,所述同步播放指令用于指示所述第二客户端基于所述歌曲播放信息同步播放所述歌曲。
根据本申请实施例的一个方面,提供了一种歌曲播放装置,所述装置包括:
获取模块,用于获取所述第一客户端的歌曲播放信息,所述歌曲播放信息包括所述第一客户端当前播放的歌曲的歌曲信息;
发送模块,用于向服务器发送所述歌曲播放信息,所述歌曲播放信息由所述服务器发送给第二客户端,以使得所述第二客户端基于所述歌曲播放信息同步播放所述歌曲。
根据本申请实施例的一个方面,提供了一种歌曲播放装置,包括:处理器和存储器。
所述存储器,用于存储计算机程序,所述计算机程序包括程序指令;
所述处理器,用于调用所述计算机程序,实现如上服务器侧的歌曲播放方法。
根据本申请实施例的一个方面,提供了一种歌曲播放装置,包括:处理器和存储器。
所述存储器,用于存储计算机程序,所述计算机程序包括程序指令;
所述处理器,用于调用所述计算机程序,实现如上第一客户端侧的歌曲播放方法。
根据本申请实施例的一个方面,提供了一种歌曲播放系统,所述系统包括:服务器和终 端,所述服务器包括如上用于执行服务器侧方法步骤的歌曲播放装置;所述终端包括如上用于执行第一客户端侧方法步骤的歌曲播放装置。
根据本申请实施例的一个方面,提供了一种计算机存储介质,所述计算机存储介质上存储有指令,当所述指令被终端的处理器执行时,实现如上第一客户端侧的歌曲播放方法;当所述指令被服务器的处理器执行时,实现如上服务器侧的歌曲播放方法。
根据本申请实施例的一个方面,提供了一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中,处理器从所述计算机可读存储介质读取并执行所述计算机指令,以实现上述服务器侧的歌曲播放方法,或上述第一客户端侧的歌曲播放方法。
本申请实施例提供的技术方案带来的有益效果包括:
第一客户端在获取当前播放歌曲的歌曲播放信息后,向服务器发送该歌曲播放信息;然后服务器向第二客户端发送包含该歌曲播放信息的同步播放指令。由于服务器向第二客户端发送的同步播放指令用于指示第二客户端基于该歌曲播放信息播放第一客户端所播放的上述歌曲,因此第二客户端接收到同步播放指令后可根据歌曲播放信息与第一客户端同步播放歌曲,丰富了分享歌曲的方式。而且,本申请技术方案能够实现两个或者两个以上的客户端同步播放同一首歌曲,保证了各个客户端之间歌曲播放的同步性和实时性,从而能够实现多个用户同步收听同一歌曲的功能。
进一步地,第一客户端作为同步发起方,第二客户端作为同步接收方,且第二客户端的数量可以是多个,从而能够实现一方用户发起歌曲的同步播放,多方用户参与该歌曲的同步收听,达到类似于现实场景中酒吧、歌厅或者夜店等环境下的视听感受,提升歌曲收听的真实感和沉浸感。
附图说明
图1是本申请实施例提供的一种歌曲播放系统的结构示意图;
图2是本申请实施例提供的一种歌曲播放方法的流程示意图;
图3是本申请实施例提供的另一种歌曲播放方法的流程示意图;
图4是本申请实施例提供的另一种歌曲播放方法的流程示意图;
图5是本申请实施例提供的另一种歌曲播放方法的流程示意图;
图6是本申请实施例提供的在第一终端上显示访问终端列表的界面示意图;
图7是本申请实施例提供的一种歌曲播放方法的界面示意图;
图8是本申请实施例提供的另一种歌曲播放方法的流程示意图;
图9和图10是本申请实施例提供的另一种歌曲播放方法的界面示意图;
图11是本申请实施例提供的一种歌曲播放装置的结构示意图;
图12是本申请实施例提供的另一种歌曲播放装置的结构示意图;
图13是本申请实施例提供的另一种歌曲播放装置的结构示意图;
图14是本申请实施例提供的另一种歌曲播放装置的结构示意图;
图15是本申请实施例提供的一种服务器的框图;
图16是本申请实施例提供的一种终端的框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
图1是本申请实施例提供的一种歌曲播放系统的结构示意图,如图1所示,该系统中可以包括:服务器101以及终端102a-102c(统称为终端102)。上述歌曲播放系统中终端的数量仅用作示例,不作为对本申请实施例提供的歌曲播放系统的结构的限定。
可选地,服务器101可以是一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务中心等等,在此不作限定。终端102指具有歌曲播放功能的终端设备,例 如可以是手机、平板电脑、电脑或可穿戴设备等。本申请实施例中提供的终端102上可以安装运行有具备音乐(如歌曲)播放功能的客户端。该具备音乐(如歌曲)播放功能的客户端可以称为音乐客户端,该音乐客户端与服务器101对应,例如服务器101可以是该音乐客户端的后台服务器,用于为音乐客户端提供后台服务,包括但不限于信息中转、音乐资源提供等服务。另外,音乐客户端可以是指任何具备音乐播放功能的应用程序客户端,其可以是专用于音乐播放的应用程序客户端,也可以是诸如社交应用、即时通信应用、直播类应用、视频播放应用等其他应用程序的客户端,且该其他应用程序具备音乐播放功能。
服务器101和终端102之间可以通过有线网络或无线网络建立连接,以进行通信。可选地,服务器101和终端102之间可基于传输控制协议(Transmission Control Protocol,TCP)进行通信,或者基于其他数据传输协议进行通信,本申请对此不作限定。
图2是本申请实施例提供的一种歌曲播放方法的流程示意图。该方法可以应用于如图1所示的系统中的服务器101,即由服务器101执行该方法。如图2所示,该方法可以包括如下几个步骤(201~202):
步骤201、接收第一客户端发送的歌曲播放信息。
该歌曲播放信息包括第一客户端当前播放的歌曲的歌曲信息。可以理解的是,该歌曲播放信息可以包括第一客户端创建的交互界面内当前播放歌曲的歌曲信息。其中,该交互界面可以包括听歌界面,当然并不局限于此。另外,由于第一客户端创建的交互界面可以将第一客户端用户的听歌与其他用户的听歌区分开来,即形成各自独立的听歌空间,因而也可将第一客户端创建的交互界面认为是一个独立房间。换句话说,该歌曲播放信息可以包括第一客户端创建的房间当前播放歌曲的歌曲信息。
可选地,该歌曲播放信息还包括以下至少一项:播放进度、音量信息、声道信息和功能控制信息。
步骤202、向第二客户端发送同步播放指令。
该同步播放指令中包括歌曲播放信息,该同步播放指令用于指示第二客户端基于歌曲播放信息播放歌曲。可选地,该同步播放指令用于指示第二客户端基于歌曲播放信息同步播放歌曲。可选地,该同步播放的歌曲,即为上述第一客户端中当前播放的歌曲。所谓第一客户端和第二客户端同步播放歌曲,是指第一客户端和第二客户端播放同一首歌曲,可选地,同步播放歌曲还要求第一客户端和第二客户端针对同一首歌曲的播放进度相同。
需要说明的是,在本申请实施例中,第一客户端和第二客户端均可以是上文介绍的具有音乐播放功能的客户端,第二客户端与第一客户端是不同的客户端,如同一应用程序在不同终端上安装运行的客户端。
综上所述,本申请实施例提供的歌曲播放方法,服务器在接收第一客户端发送的歌曲播放信息后,向第二客户端发送同步播放指令。由于服务器向第二客户端发送的同步播放指令中包括第一客户端发送的歌曲播放信息,且该同步播放指令用于指示第二客户端基于该歌曲播放信息播放歌曲,因此第二客户端接收到同步播放指令后可根据歌曲播放信息与第一客户端同步播放歌曲,丰富了分享歌曲的方式。而且,本申请技术方案能够实现两个或者两个以上的客户端同步播放同一首歌曲,保证了各个客户端之间歌曲播放的同步性和实时性,从而能够实现多个用户同步收听同一歌曲的功能。
图3是本申请实施例提供的另一种歌曲播放方法的流程示意图。该方法应用于第一终端,该第一终端可以是如图1所示的系统中的任一终端102。例如,该方法可以由第一终端(如第一终端中安装运行的第一客户端)来执行。如图3所示,该方法可以包括如下几个步骤(301~302):
步骤301、获取第一客户端的歌曲播放信息,该歌曲播放信息包括第一客户端当前播放的歌曲的歌曲信息。
可以理解的是,该歌曲播放信息可以包括第一客户端创建的交互界面内当前播放歌曲的 歌曲信息。其中,该交互界面可以包括听歌界面,当然并不局限于此。另外,由于第一客户端创建的交互界面可以将第一客户端用户的听歌与其他用户的听歌区分开来,即形成各自独立的听歌空间,因而也可将第一客户端创建的交互界面认为是一个独立房间。换句话说,该歌曲播放信息可以包括第一客户端创建的房间当前播放歌曲的歌曲信息。也即,第一客户端可以获取该第一客户端创建的房间内当前播放歌曲的歌曲播放信息。
可选地,该歌曲播放信息还包括以下至少一项:播放进度、音量信息、声道信息和功能控制信息。
步骤302、向服务器发送歌曲播放信息。
该歌曲播放信息由服务器发送给第二客户端,以使得第二客户端基于歌曲播放信息同步播放歌曲。例如,第二客户端基于歌曲播放信息,与第一客户端同步播放歌曲。可选地,该同步播放的歌曲,即为上述第一客户端中当前播放的歌曲。所谓第一客户端和第二客户端同步播放歌曲,是指第一客户端和第二客户端播放同一首歌曲,可选地,同步播放歌曲还要求第一客户端和第二客户端针对同一首歌曲的播放进度相同。
需要说明的是,在本申请实施例中,第一客户端和第二客户端均可以是上文介绍的具有音乐播放功能的客户端,第二客户端与第一客户端是不同的客户端,如同一应用程序在不同终端上安装运行的客户端。
综上所述,本申请实施例提供的歌曲播放方法,第一客户端在获取当前播放歌曲的歌曲播放信息后,向服务器发送该歌曲播放信息。服务器可将该歌曲播放信息发送至第二客户端,使得第二客户端可根据该歌曲播放信息与第一客户端同步播放歌曲,丰富了分享歌曲的方式。而且,本申请技术方案能够实现两个或者两个以上的客户端同步播放同一首歌曲,保证了各个客户端之间歌曲播放的同步性和实时性,从而能够实现多个用户同步收听同一歌曲的功能。
图4是本申请实施例提供的另一种歌曲播放方法的流程示意图。该方法可以用于如图1所示的系统。如图4所示,该方法可以包括如下几个步骤:
步骤401、第一客户端获取第一客户端的歌曲播放信息,该歌曲播放信息包括第一客户端当前播放的歌曲的歌曲信息。
歌曲信息是指歌曲的描述信息,基于歌曲信息能够确定出相应的歌曲是什么。可选地,第一客户端当前播放的歌曲的歌曲信息,是指该歌曲的歌曲标识、该歌曲的歌曲名称、该歌曲的音频文件、该歌曲的音频文件的文件标识中的一个或多个。歌曲标识用于对歌曲起到唯一标识作用,不同歌曲具有不同的歌曲标识。歌曲名称在一定程度上也能起到对不同歌曲的区分标识的作用,通常情况下,不同歌曲具有不同的名称,但也存在具有相同歌曲名称的多个不同歌曲的情况。歌曲的音频文件用于播放该歌曲,不同的歌曲具有不同的音频文件。歌曲的音频文件的文件标识,用于对音频文件起到唯一标识作用,不同音频文件具有不同的文件标识,文件标识可以是文件名、文件存储路径或者其他能够对不同音频文件起到区分标识作用的标识符,本申请对此不作限定。
可选地,歌曲播放信息还包括以下至少一项:播放进度、音量信息、声道信息和功能控制信息。播放进度用于指示歌曲当前播放至的时间戳,播放进度可以按秒为单位来表示,也可以按照其他时间单位来表示,本申请对此不作限定。音量信息用于指示歌曲的播放音量,播放音量可以采用数字表示,例如播放音量的取值范围为0-100。声道信息用于指示歌曲的播放音效。例如,播放音效可以包括前置声、后置声、重低音和中央音这四种,第一客户端可以采用任一种播放音效播放歌曲。播放音效可以采用数字表示,例如,0表示前置声,1表示后置声,2表示重低音,3表示中央音。功能控制信息用于指示客户端提供的相关产品功能的控制信息,如可以包括一个或多个功能开关的开关值。每个功能开关的开关值可以采用数字表示,例如0表示对应的功能开关关闭,1表示对应的功能开关开启。
在一个示例中,功能控制信息包括一键DJ(Disc Jockey,唱片骑师,也称为唱片主持人)功能的开关信息。一键DJ功能包括加快歌曲的播放速度,以及在歌曲中加入电音的功能。一 键DJ功能的开关信息用于指示该一键DJ功能是否开启,如可以是上文介绍的0或1开关值。如果一键DJ功能开启,那么客户端在播放歌曲时,加快歌曲的播放速度,并在歌曲中加入电音。否则,如果一键DJ功能关闭,那么客户端按照默认模式播放该歌曲。
在另一个示例中,功能控制信息包括节奏闪光功能的开关信息,节奏闪光功能包括歌曲在播放到节奏点时终端屏幕对应闪烁的功能。节奏闪光功能的开关信息用于指示该节奏闪光功能是否开启,如可以是上文介绍的0或1开关值。如果节奏闪光功能开启,那么客户端在播放歌曲时,提取歌曲的节奏点,然后在播放到节奏点时控制终端屏幕对应闪烁,如通过控制屏幕亮度、显示内容颜色等的改变,来达到上述闪烁效果。另外,节奏点是指体现歌曲中声音、节拍等强弱节奏的时间点,节奏点可以从歌曲的节拍中提取,也可以从歌曲的人声中提取,本申请对此不作限定。
步骤402、第一客户端向服务器发送歌曲播放信息。
相应地,服务器接收第一客户端发送的歌曲播放信息。
在本申请实施例中,歌曲播放信息中包括第一客户端当前播放的歌曲的歌曲信息,以使得后续第二客户端能够据此获知第一客户端播放的是哪一首歌曲,从而实现与第一客户端播放同一首歌曲。另外,在歌曲播放信息中包括播放进度的情况下,可以实现第一客户端和第二客户端以相同进度播放同一歌曲,实现播放进度的同步;在歌曲播放信息中包括音量信息的情况下,可以实现第一客户端和第二客户端以相同音量播放同一歌曲,实现播放音量的同步;在歌曲播放信息中包括声道信息的情况下,可以实现第一客户端和第二客户端以相同声道播放同一歌曲,实现声道的同步;在歌曲播放信息中包括功能控制信息的情况下,可以实现第一客户端和第二客户端间同步开启或关闭相关产品功能,实现相关产品功能的开关同步。这样能够达到类似于现实场景中酒吧、歌厅或者夜店等环境下的视听感受,即一人控制歌曲播放,其他多人同步收听的效果。
步骤403、服务器向第二客户端发送同步播放指令,该同步播放指令中包括歌曲播放信息,该同步播放指令用于指示第二客户端基于歌曲播放信息同步播放上述歌曲。
服务器在接收到第一客户端发来的歌曲播放信息之后,向第二客户端发送同步播放指令。其中,第二客户端可以由第一客户端选择确定,也可以由服务器自行选择确定。
在第二客户端由第一客户端选择确定的情况下,第一客户端可以在发送歌曲播放信息之前,或者在发送歌曲播放信息的同时,或者在发送歌曲播放信息之后,向服务器发送一个或者多个第二客户端的标识,服务器据此确定出第一客户端指定的第二客户端。
在一个示例中,第一客户端获取候选客户端列表,该候选客户端列表中包括至少一个候选客户端的标识;第一客户端基于候选客户端列表,确定同步播放列表,该同步播放列表中包括候选客户端列表中的一个或多个标识;之后,第一客户端向服务器发送同步播放列表。服务器接收到第一客户端发送的同步播放列表之后,将同步播放列表中的标识对应的客户端确定为第二客户端。
其中,候选客户端是指供第一客户端选择的客户端。示例性地,候选客户端可以是与第一客户端具有关联关系的客户端(如与第一客户端具有关注、好友或订阅关系的客户端),也可以是某一区域内的客户端,如与第一客户端之间的距离小于设定阈值的区域内的客户端,还可以是具有相同特征信息的客户端,如与第一客户端具有相同的偏好特征信息的客户端,还可以是连接服务器的所有客户端,等等。另外,第一客户端可以从服务器获取候选客户端列表,也可以自行确定出候选客户端列表,本申请对此不作限定。
另外,第一客户端基于候选客户端列表确定同步播放列表,也可以包括如下两种方式。在一种方式中,第一客户端显示候选客户端列表,响应于接收到针对候选客户端列表中的一个或多个标识的选择指令,生成包含该一个或多个标识的同步播放列表,该同步播放列表用于指示与第一客户端同步播放歌曲的第二客户端,之后,第一客户端向服务器发送该同步播放列表。在另一种方式中,第一客户端按照预定义规则,从候选客户端列表中选择一个或多 个标识,并生成包含该一个或多个标识的同步播放列表。该预定义规则可以由第一客户端制定,也可以由服务器制定,本申请对此不作限定。另外,第一客户端选择的标识数量,可以有最大门限值,也可以没有。
在第二客户端由服务器选择确定的情况下,服务器可以在接收到歌曲播放信息之前,或者在接收到歌曲播放信息之后,确定出至少一个第二客户端。
在一个示例中,服务器获取候选客户端列表,该候选客户端列表中包括至少一个候选客户端的标识;服务器基于候选客户端列表,确定同步播放指令所要发送至的第二客户端。可选地,服务器基于候选客户端列表确定同步播放列表,该同步播放列表中包括候选客户端列表中的一个或多个标识;之后,服务器将同步播放列表中的标识对应的客户端确定为第二客户端。
在此示例中,候选客户端是指供服务器选择的客户端。示例性地,候选客户端可以是与第一客户端具有关联关系的客户端(如与第一客户端具有关注、好友或订阅关系的客户端),也可以是某一区域内的客户端,如与第一客户端之间的距离小于设定阈值的区域内的客户端,还可以是具有相同特征信息的客户端,如与第一客户端具有相同的偏好特征信息的客户端,还可以是连接服务器的所有客户端,等等。另外,服务器可以自行确定出候选客户端列表,也可以从第一客户端获取候选客户端列表,本申请对此不作限定。
另外,服务器基于候选客户端列表确定同步播放指令所要发送至的第二客户端(或者说服务器基于候选客户端列表确定同步播放列表),也可以包括如下方式:服务器按照预定义规则,从候选客户端列表中选择一个或多个标识对应的客户端,确定为第二客户端。该预定义规则可以由第一客户端制定,也可以由服务器制定,本申请对此不作限定。另外,服务器选择的标识数量,可以有最大门限值,也可以没有。或者,服务器还可以将候选客户端列表中的每个标识对应的客户端均确定为第二客户端。
上文实施例中涉及的预定义规则是指预先制定的客户端选取规则,例如可以随机选取,也可以按照一定的优先级顺序对候选客户端列表中的客户端标识进行排序,然后基于优先级进行选取,本申请对此不作限定。
在示例性实施例中,上文实施例涉及的候选客户端列表包括但不限于以下至少一项:访问客户端列表、关联客户端列表、相似客户端列表。其中,访问客户端列表也可以称为访问终端列表、访问用户列表或者其他名称,访问客户端列表中包括访问第一客户端创建的房间的所有客户端的标识。在上文已经介绍,可以将第一客户端显示的交互界面(如听歌界面)看作是一个房间,因此这里的访问客户端列表中可以包括访问第一客户端创建的交互界面(如听歌界面)的所有客户端的标识。上述访问第一客户端创建的交互界面(如听歌界面)的客户端对应的标识信息(如用户帐号、头像等信息),可以在第一客户端创建的交互界面(如听歌界面)中进行显示。关联客户端列表也可以称为关联终端列表、关联用户列表或者其他名称,关联客户端列表中包括与第一客户端具有关联关系的客户端的标识,该关联关系包括但不限于以下至少一项:好友关系、关注关系、订阅关系。相似客户端列表也可以称为相似终端列表、相似用户列表或者其他名称,相似客户端列表中包括与第一客户端具有相同特征信息的客户端的标识,例如上述相同特征信息可以是相同的偏好特征信息。
在示例性实施例中,步骤403可以包括如下子步骤:
1、服务器确定访问客户端列表,该访问客户端列表中包括访问第一客户端创建的房间的所有客户端的标识;
2、服务器基于访问客户端列表,确定同步播放指令所要发送至的第二客户端。
在本申请实施例中,房间是指供客户端播放(或者说供客户端用户收听)歌曲的虚拟空间,该房间从界面表现上可以看做是客户端显示的交互界面(如听歌界面)。在一些实施例中,房间也可以称为群组、小组、直播间、听歌空间等,本申请对此不作限定。同时,在服务器端,可以利用该房间,实现简单有效地记录哪些客户端正在同步播放同一歌曲。在一个示例 中,服务器可以为不同房间分配不同的房间号,与此同时,服务器将房间号与客户端的标识相关联,与某一房间号具有关联关系(或称为对应关系)的客户端的标识,可以认为是加入同一房间(即该房间号所标识的房间)的客户端的标识。在一些实施例中,加入同一房间的客户端可以同步播放同一歌曲,例如加入同一房间的所有客户端可以同步播放同一歌曲,或者加入同一房间的部分客户端可以同步播放同一歌曲。
需要说明的是,为了实现为用户营造出一个房间,以便多个用户在该房间内同步收听歌曲。在一个示例中,上述房间可以通过有房间号的形式存在,例如,由服务器生成一个房间号,将该房间号与加入该房间的各个客户端的标识关联起来,并记录房间号与客户端的标识之间的关联关系。与某个房间的房间号具有关联关系的客户端标识,即代表了加入该房间的客户端。在另一个示例中,上述房间也可以通过无房间号的形式存在,例如,服务器仅需记录加入同一房间的各个客户端的标识之间的绑定关系,比如服务器记录创建该房间的第一客户端的标识与加入该房间的第二客户端的标识之间的绑定关系,通过该绑定关系,服务器同样可以获知哪些客户端属于同一房间。
在一个示例中,服务器向第一客户端发送访问客户端列表,相应地,第一客户端接收服务器发送的访问客户端列表。第一客户端显示访问客户端列表;响应于接收到针对访问客户端列表中的一个或多个标识的选择指令,生成包含一个或多个标识的同步播放列表,该同步播放列表用于指示与第一客户端同步播放歌曲的第二客户端;向服务器发送同步播放列表。服务器接收到第一客户端发送的同步播放列表之后,将同步播放列表中的标识对应的客户端确定为第二客户端。在这种方式下,能够实现由第一客户端的用户从加入房间的各个客户端中,选择一个或多个客户端作为第二客户端,来与第一客户端同步播放歌曲。
在另一个示例中,服务器将访问客户端列表中的标识对应的客户端确定为第二客户端。如,服务器将访问客户端列表中的所有标识对应的客户端确定为第二客户端。在这种方式下,服务器将与第一客户端加入同一房间的所有客户端,确定为与第一客户端同步播放歌曲的第二客户端。
在另一个示例中,服务器基于预定义规则,从访问客户端列表中选取符合条件的标识对应的客户端,确定为第二客户端。该预定义规则可以由第一客户端制定,也可以由服务器制定,本申请对此不作限定。另外,服务器选择的标识数量,可以有最大门限值,也可以没有。
在本申请实施例中,客户端的标识用于对不同客户端起到区分作用,该标识可以是登录客户端的用户标识(如用户帐号),也可以是客户端所在的终端的设备标识。终端的设备标识具体可以是终端的媒体访问控制(Media Access Control,MAC)地址、互联网协议(Internet Protocol,IP)地址或硬件地址等。
步骤404、第二客户端在接收到同步播放指令之后,基于歌曲播放信息同步播放上述歌曲。
可选地,第二客户端获取歌曲播放信息中包含的歌曲信息,基于该歌曲信息确定出第一客户端当前播放的歌曲,然后播放该歌曲,从而实现与第一客户端同步播放同一歌曲。
可选地,在歌曲播放信息还包括第一客户端的播放进度的情况下,第二客户端可以基于该第一客户端的播放进度,确定第二客户端针对上述歌曲的播放进度。其中,第二客户端针对上述歌曲的播放进度,可以和第一客户端的播放进度相同,也可以不同,本申请对此不作限定。
可选地,在歌曲播放信息还包括第一客户端的音量信息的情况下,第二客户端可以基于该第一客户端的音量信息,确定第二客户端针对上述歌曲的播放音量。其中,第二客户端针对上述歌曲的播放音量,可以和第一客户端的播放音量相同,也可以不同,本申请对此不作限定。
可选地,在歌曲播放信息还包括第一客户端的声道信息的情况下,第二客户端可以基于该第一客户端的声道信息,确定第二客户端针对上述歌曲的播放声道。其中,第二客户端针 对上述歌曲的播放声道,可以和第一客户端的播放声道相同,也可以不同,本申请对此不作限定。
可选地,在歌曲播放信息还包括第一客户端的功能控制信息的情况下,第二客户端可以基于该第一客户端的功能控制信息,确定第二客户端针对上述相关产品功能的控制策略,如开关控制策略。其中,第二客户端针对上述相关产品功能的控制策略,可以和第一客户端的控制策略相同,也可以不同,本申请对此不作限定。
在一个示例中,第二客户端在与第一客户端同步播放同一歌曲的过程中,按照上述歌曲播放信息,与第一客户端采用相同的播放进度、播放音量、播放声道和相关产品功能的控制策略,从而能够实现一方用户发起歌曲的同步播放,多方用户参与该歌曲的同步收听,达到类似于现实场景中酒吧、歌厅或者夜店等环境下的视听感受,提升歌曲收听的真实感和沉浸感。另外,通过开启一键DJ功能和/或节奏闪光功能,有助于进一步提升歌曲播放的节奏感和临场感。
另外,在本实施例中,提供了多种确定第二客户端的方式,可以由第一客户端选择确定第二客户端,也可以由服务器选择确定第二客户端,从而实现更具多样性的歌曲同步播放方案。另外,第二客户端所对应的候选客户端可以包括访问第一客户端创建的房间的客户端,也可以包括与第一客户端具有关联关系的客户端,还可以包括与第一客户端具有相同特征信息的客户端等等,本申请提供了多种选择第二客户端的方式,使得第一客户端用户能够按照实际需求,选择同步收听歌曲的其他用户,充分提升了选择灵活性,也使得产品功能更加丰富。在可能的示例中,第一客户端和第二客户端在同步播放歌曲的过程中,还可以进行实时的聊天互动。第一客户端发送的第一消息,可以通过服务器中转发送给参与同步的第二客户端;相应地,第二客户端发送的第二消息,可以通过服务器中转发送给第一客户端以及参与同步的其他第二客户端。上述消息可以是文字、语音、图片、表情等形式,本申请对此不作限定。通过上述方式,能够实现歌曲同步收听的过程中,进行实时的聊天互动,交流收听感受,提升用户之间交流的便捷性和实时性。
图5是本申请实施例提供的另一种歌曲播放方法的流程示意图。该方法可以用于如图1所示的系统。如图5所示,该方法可以包括如下几个步骤(501~513):
步骤501、第一客户端向服务器发送创建房间请求。
该创建房间请求中包括第一客户端的标识。该第一客户端的标识能够在歌曲播放系统中唯一标识该第一客户端。可选地,第一客户端的标识可以是登录第一客户端的用户标识(如用户帐号),也可以是第一客户端所在的第一终端的设备标识。第一终端的设备标识具体可以是第一终端的MAC地址、IP地址或硬件地址等。
可选地,当第一客户端检测到创建房间的触发操作时,向服务器发送创建房间请求。示例地,第一客户端检测到创建房间的触发操作包括:第一客户端检测到对第一客户端显示的创建房间按钮的点击操作;和/或,第一客户端接收到指示创建房间的语音指令。
步骤502、服务器生成第一客户端对应的房间号。
服务器在生成第一客户端对应的房间号后,可以将第一客户端对应的房间号与第一客户端的标识对应存储。
步骤503、服务器向第一客户端发送创建房间响应。
该创建房间响应中包括第一客户端对应的房间号,房间号用于标识房间。
步骤504、第一客户端基于创建房间响应在第一客户端中创建房间。
可选地,第一客户端在创建房间后,可以在创建的房间中执行的操作包括播放歌曲、调整歌曲播放进度、调整歌曲播放音量、切换歌曲播放声道以及打开或关闭功能开关中的一个或多个。其中,功能开关可以包括一键DJ功能的开关和节奏闪光功能的开关等。当一键DJ功能打开后,第一客户端可加快歌曲播放速度,同时在歌曲中加入电音等声音与歌曲一同播放。当节奏闪光功能打开后,第一客户端当前播放的歌曲播放到节奏点时,屏幕会对应闪烁。
示例地,当第一客户端在创建的房间内播放歌曲时,第一客户端可根据用户的操作调整歌曲播放进度、调整歌曲播放音量和/或切换歌曲播放声道。第一客户端还可以根据用户的操作打开或关闭功能开关,提高歌曲播放的灵活性。
步骤505、第一客户端获取第一客户端创建的房间内当前播放歌曲的歌曲播放信息。
该歌曲播放信息包括歌曲信息、播放进度、音量信息、声道信息和功能控制信息中的一个或多个。其中,歌曲信息包括该歌曲在音乐客户端中对应的歌曲标识、歌曲名称或该歌曲对应的音频文件中的一个或多个。播放进度的单位可以是秒。音量信息包括歌曲的播放音量。播放音量可以采用数字表示,例如播放音量的取值为0-100。声道信息用于指示歌曲的播放音效。例如,播放音效可以包括前置声、后置声、重低音和中央音这四种,第一客户端可以采用任一种播放音效播放歌曲。播放音效可以采用数字表示,例如,0表示前置声,1表示后置声,2表示重低音,3表示中央音。功能控制信息包括一个或多个功能开关的开关值。每个功能开关的开关值可以采用数字表示,例如0表示对应的功能开关关闭,1表示对应的功能开关开启。
示例地,第一客户端获取的歌曲播放信息包括:“歌曲标识:123456,歌曲名称:祖国,播放进度:02:15,播放音量:48,声道信息:2,节奏闪光:1”,表示第一客户端中创建的房间内当前播放的歌曲的歌曲标识为123456,该歌曲的歌曲名称为祖国,该歌曲的当前播放进度为2分15秒,该歌曲的播放音量为48,该歌曲采用重低音的播放音效,且该歌曲开启节奏闪光功能。
步骤506、服务器确定访问第一客户端创建的房间的客户端。
该访问第一客户端创建的房间的客户端与第一客户端不同。可选地,某一客户端可以通过第一客户端发起的邀请访问第一客户端创建的房间,也可以根据第一客户端中创建的房间的房间号查找并访问第一客户端创建的房间。
步骤507、服务器生成访问终端列表。
该访问终端列表中包括访问第一客户端创建的房间的所有客户端的标识。该访问终端列表也可以称为访问客户端列表、访问用户列表或者其他名称,本申请对此不作限定。可选地,当某一客户端退出第一客户端创建的房间后,服务器从访问终端列表中删除该客户端并将更新后的访问终端列表同步至第一客户端。可选地,客户端的标识可以是登录该客户端的用户标识,也可以是该客户端的设备标识。
步骤508、服务器向第一客户端发送访问终端列表。
可选地,服务器可以周期性地向第一客户端发送访问终端列表。或者,服务器也可以当访问第一客户端创建的房间的客户端更新时向第一客户端发送访问终端列表。例如,有新的客户端访问第一客户端创建的房间或有客户端退出第一客户端创建的房间时,服务器可以更新访问终端列表并向第一客户端发送更新后的访问终端列表。
步骤509、第一客户端显示访问终端列表。
示例地,图6是本申请实施例提供的在第一客户端上显示访问终端列表的界面示意图。如图6所示,第一客户端中创建的房间的房间号为9875,第一客户端的显示界面上包括访问终端列表A,访问终端列表中包括多个终端标识a-e(终端标识即相当于客户端的标识),表示当前有5个客户端正在访问房间号为9875的房间。
步骤510、服务器确定第二客户端。
在示例性实施例中,服务器确定第二客户端的实现方式包括但不限于如下:
在第一种实现方式中,当第一客户端接收到针对访问终端列表中的一个或多个标识的选择指令时,第一客户端生成包含该一个或多个标识的同步播放列表。第一客户端向服务器发送该同步播放列表。服务器将同步播放列表中的标识对应的客户端确定为第二终端。该同步播放列表用于指示与第一客户端同步播放歌曲的客户端。
可选地,当第一客户端检测到针对访问终端列表中的某个标识的点击操作时,或者,当 第一客户端检测到针对访问终端列表中的某个标识对应的选择框的选中操作时,又或者,当第一客户端接收到针对访问终端列表中的某个标识的语音选择指令时,第一客户端确定接收到针对访问终端列表中的该标识的选择指令。该同步播放列表中包括访问第一客户端创建的房间的一个或多个客户端的标识。
示例地,请继续参见图6,当第一客户端检测到针对访问终端列表A中的标识b和标识c的选择指令时,第一客户端生成包含标识b和标识c的同步播放列表,该同步播放列表用于指示标识b和标识c对应的客户端与第一客户端同步播放歌曲。进一步的,服务器将标识b和标识c对应的客户端确定为第二客户端。
本申请实施例中,用户可在第一客户端上确定与第一客户端同步播放歌曲的第二客户端,提高了歌曲分享的灵活性。
在第二种实现方式中,服务器将访问第一客户端创建的房间的每个客户端均确定为第二客户端。
当然在一些其他实施例中,第二客户端还可以由第一客户端确定,或者由服务器采用其他方式确定,具体可参见上文图4实施例中的介绍说明,此处不再赘述。
步骤511、第一客户端向服务器发送歌曲播放信息。
可选地,第一客户端可以周期性地向服务器发送歌曲播放信息。也可以由第一客户端选择发送向服务器发送歌曲播放信息的时刻。还可以在当第一客户端上的歌曲播放信息发生改变,例如歌曲信息、声道信息和/或功能控制信息发生改变时,向服务器发送歌曲播放信息。
可选地,当服务器采用上述第一种实现方式确定第二客户端时,第一客户端可以将歌曲播放信息以及同步播放列表承载在一条消息中时发送至服务器。
步骤512、服务器向第二客户端发送同步播放指令。
该同步播放指令中包括歌曲播放信息,该同步播放指令用于指示第二客户端基于歌曲播放信息播放歌曲。第二客户端为访问第一客户端创建的房间的客户端,该第二客户端与第一客户端不同。
步骤513、第二客户端基于同步播放指令播放歌曲。
可选地,第二客户端获取该同步播放指令中的歌曲播放信息,自动与第一客户端播放相同的歌曲、同步歌曲播放进度、以相同音量播放歌曲、以相同声道播放歌曲以及与第一客户端同步功能开关。或者,第二客户端也可以根据歌曲播放信息的部分信息播放歌曲,例如只采用歌曲信息和播放进度,与第一客户端播放相同的歌曲且同步歌曲播放进度,而不使用歌曲播放信息中的播放音量等信息。又或者,第二客户端在接收到同步播放指令后,还可以自行选择是否同步播放歌曲,若第二客户端接收到不同步播放歌曲的选择指令时,第二客户端可以忽略该同步播放指令。
需要说明的是,本申请实施例提供的歌曲播放方法步骤的先后顺序可以进行适当调整,步骤也可以根据情况进行相应增减,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本申请的保护范围之内,因此不再赘述。
图7示例性示出了本实施例对应的界面示意图。如图7所示,第一客户端显示“一键派对”功能的主界面70,在该主界面70中包括“创建派对”按钮71和“加入派对”按钮72,“创建派对”按钮71用于触发创建派对,“加入派对”按钮72用于触发加入一个已创建的派对。用户点击“创建派对”按钮71之后,第一客户端可以向服务器发送创建房间请求,该创建房间请求中包括第一客户端的标识。服务器生成第一客户端对应的房间号,然后向第一客户端发送创建房间响应,该创建房间响应中包括第一客户端对应的房间号。第一客户端基于创建房间响应在第一客户端中创建房间,并显示相应的听歌界面73,该听歌界面73可以看作为第一客户端创建的房间。如图7所示,听歌界面73中可以显示有与第一客户端用户同步听歌的其他客户端用户的标识信息74(如头像),还可以显示播放进度调节控件75、音量调节控件76、声道设置控件77和功能控制控件(如包括节奏闪光功能的开关控件78和一键 DJ功能的开关控件79)等。第一客户端可以向参与派对的第二客户端发送当前播放歌曲的歌曲信息,以及相应的播放进度、音量信息、声道信息和功能控制信息等信息,从而实现歌曲同步播放。
可选地,第一客户端响应于针对听歌界面中的第一功能控件的触发信号,显示同步用户邀请界面,该同步用户邀请界面中包括至少一个候选客户端的标识;响应于接收到针对同步用户邀请界面中的目标标识的选择指令,第一客户端向服务器发送包括目标标识的同步用户邀请请求,该同步用户邀请请求用于邀请目标标识对应的客户端与第一客户端同步播放歌曲。服务器在接收到上述同步用户邀请请求之后,向目标标识对应的客户端发送相应的邀请信息。可选地,该邀请信息中可以包括加入链接和/或房间号。目标标识对应的客户端,可以通过该加入链接和/或房间号,加入第一客户端创建的房间,从而实现和第一客户端同步播放歌曲。
综上所述,本申请实施例提供的歌曲播放方法,第一客户端在获取第一客户端创建的房间内当前播放歌曲的歌曲播放信息后,向服务器发送该歌曲播放信息;然后服务器向第二客户端发送包含该歌曲播放信息的同步播放指令。由于服务器向第二客户端发送的同步播放指令用于指示第二客户端基于该歌曲播放信息播放歌曲,因此第二客户端接收到同步播放指令后可根据歌曲播放信息与第一客户端同步播放歌曲,丰富了分享歌曲的方式。而且,该多个客户端加入同一房间并同步播放歌曲的技术方案,实现了线上虚拟派对的产品功能,有助于提升用户收听歌曲时的沉浸感和体验感。
图8是本申请实施例提供的另一种歌曲播放方法的流程示意图。该方法可以用于如图1所示的系统。如图8所示,该方法可以包括如下几个步骤(801~811):
步骤801、第一客户端显示歌曲的听歌界面。
歌曲的听歌界面中可以显示该歌曲的相关信息,如歌曲名称、歌词、播放进度等,还可以显示相关操作控件,如暂停/开始控件、进度条控件、下一首/上一首切换控件等,本申请对此不作限定。
步骤802、响应于针对听歌界面中的第一功能控件的触发信号,第一客户端显示同步用户邀请界面,该同步用户邀请界面中包括至少一个候选客户端的标识。
第一功能控件用于触发显示同步用户邀请界面。同步用户邀请界面中包括至少一个候选客户端的标识。候选客户端是指供第一客户端选择的客户端。示例性地,候选客户端可以是与第一客户端具有关联关系的客户端(如与第一客户端具有关注、好友或订阅关系的客户端),也可以是某一区域内的客户端,如与第一客户端之间的距离小于设定阈值的区域内的客户端,还可以是具有相同特征信息的客户端,如与第一客户端具有相同的偏好特征信息的客户端,还可以是连接服务器的所有客户端,等等。另外,第一客户端可以从服务器获取候选客户端列表,也可以自行确定出候选客户端列表,本申请对此不作限定。
步骤803、响应于接收到针对同步用户邀请界面中的目标标识的选择指令,第一客户端向服务器发送包括目标标识的同步用户邀请请求。
目标标识可以是同步用户邀请界面中的一个或者多个客户端的标识,也即,第一客户端的用户可以同时向一个或多个目标用户发起同步播放歌曲的邀请。
同步用户邀请请求用于邀请目标标识对应的客户端与第一客户端同步播放歌曲。可选地,同步用户邀请请求中包括第一客户端的标识和目标标识。
步骤804、服务器将目标标识对应的客户端确定为第二客户端,并向第二客户端发送同步收听歌曲请求。
同步收听歌曲请求用于请求确认是否参与同步收听第一客户端所播放的歌曲。可选地,同步收听歌曲请求中包括第一客户端的标识,以便于第二客户端能够获知是谁发出的邀请。
步骤805、第二客户端基于同步收听歌曲请求,显示同步收听确认信息。
同步收听确认信息用于向第二客户端的用户发出提示,告知有第一客户端发出同步收听歌曲的邀请。可选地,同步收听确认信息中还包括确认控件和取消控件,确认控件用于触发 确认指令,表示确认参与同步收听第一客户端所播放的歌曲,取消控件用于触发取消指令,表示拒绝参与同步收听第一客户端所播放的歌曲。第二客户端的用户可以结合自身需求,选择确认参与还是拒绝参与。
步骤806、响应于接收到针对同步收听确认信息的确认指令,第二客户端向服务器发送同步收听确认响应。
同步收听确认响应用于指示第二客户端确认参与同步收听第一客户端所播放的歌曲。可选地,同步收听确认响应中,包括第二客户端的标识,可选地还包括第一客户端的标识。
步骤807、服务器建立第一客户端的标识与第二客户端的标识之间的绑定关系。
该绑定关系表示哪些客户端正在同步播放歌曲。由于第一客户端可以向一个或者多个第二客户端发出邀请,因此与第一客户端的标识具有绑定关系的第二客户端的标识的数量可以有一个或多个。另外,服务器可以对同步发起方的标识(也即第一客户端的标识)进行标记,以记录其是同步发起方。
步骤808、服务器向第一客户端发送同步用户邀请成功响应。
同步用户邀请成功响应用于指示成功邀请到第二客户端的用户参与同步歌曲播放。可选地,同步用户邀请成功响应中包括第二客户端的标识。
步骤809、第一客户端向服务器发送歌曲播放信息。
歌曲播放信息包括第一客户端当前播放的歌曲的歌曲信息。
可选地,该歌曲播放信息还包括以下至少一项:播放进度、音量信息、声道信息和功能控制信息。
步骤810、服务器向第二客户端发送同步播放指令,该同步播放指令中包括歌曲播放信息,该同步播放指令用于指示第二客户端基于歌曲播放信息同步播放上述歌曲。
步骤811、第二客户端在接收到同步播放指令之后,基于歌曲播放信息同步播放上述歌曲。
上述步骤809~811的介绍说明,可参见上文图4实施例中的介绍说明,此处不再赘述。
需要说明的是,本申请实施例提供的歌曲播放方法步骤的先后顺序可以进行适当调整,步骤也可以根据情况进行相应增减,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本申请的保护范围之内,因此不再赘述。
图9和10示例性示出了本实施例对应的界面示意图。如图9和10所示,第一客户端显示歌曲的听歌界面90,该听歌界面90中包括“跟我听”功能按钮91,第一客户端用户点击该“跟我听”功能按钮91之后,第一客户端显示同步用户邀请界面92,该同步用户邀请界面92中包括多个候选用户的标识(如头像)。第一客户端用户可以从中选择一个或多个目标用户并发出同步邀请。例如,假设第一客户端用户点击某一个目标用户对应的邀请控件93之后,第一客户端向服务器发送包括目标标识(即目标用户的标识信息)的同步用户邀请请求,并切换回显示歌曲的听歌界面90(如图10所示)。此时,在歌曲的听歌界面90中可以显示该目标用户等待加入的提示信息94。在目标用户基于服务器发来的请求,并选择确认参与同步收听第一客户端所播放的歌曲之后,第一客户端的听歌界面90中显示目标用户的标识95(如头像),并体现第一用户和目标用户正在同步听歌的状态。在同步听歌的过程中,第一客户端可以通过服务器向第二客户端发送当前播放歌曲的歌曲信息,可选地还包括播放进度、音量信息、声道信息和功能控制信息等信息,从而实现同步跟听。
在本实施例中,实现了第一客户端向第二客户端发起邀请,邀请第二客户端与第一客户端同步播放歌曲,第二客户端在接收到上述邀请之后,可以接受该邀请从而获取第一客户端的歌曲播放信息,然后基于该歌曲播放信息与第一客户端同步播放歌曲,实现了一种歌曲跟听功能。
需要说明的是,在上述实施例中,仅从第一客户端、服务器和第二客户端交互的角度,对本申请技术方案进行了介绍说明。上述有关第一客户端执行的步骤,可以单独实现成为第 一客户端侧的歌曲播放方法;上述有关服务器执行的步骤,可以单独实现成为服务器侧的歌曲播放方法;上述有关第二客户端执行的步骤,可以单独实现成为第二客户端侧的歌曲播放方法。
图11是本申请实施例提供的一种歌曲播放装置的结构示意图。该装置可以用于如图1所示的系统中的服务器101。如图11所示,该装置110可以包括:接收模块111和发送模块112。
接收模块111,用于接收第一客户端发送的歌曲播放信息,所述歌曲播放信息包括所述第一客户端当前播放的歌曲的歌曲信息。
发送模块112,用于向第二客户端发送同步播放指令,所述同步播放指令中包括所述歌曲播放信息,所述同步播放指令用于指示所述第二客户端基于所述歌曲播放信息同步播放所述歌曲。
综上所述,本申请实施例提供的歌曲播放装置,服务器在接收第一客户端发送的歌曲播放信息后,向第二客户端发送同步播放指令。由于服务器向第二客户端发送的同步播放指令中包括第一客户端发送的歌曲播放信息,且该同步播放指令用于指示第二客户端基于该歌曲播放信息播放歌曲,因此第二客户端接收到同步播放指令后可根据歌曲播放信息与第一客户端同步播放歌曲,丰富了分享歌曲的方式。而且,本申请技术方案能够实现两个或者两个以上的客户端同步播放同一首歌曲,保证了各个客户端之间歌曲播放的同步性和实时性,从而能够实现多个用户同步收听同一歌曲的功能。
可选地,所述歌曲播放信息还包括以下至少一项:播放进度、音量信息、声道信息和功能控制信息。
可选地,所述功能控制信息包括:一键DJ功能的开关信息,所述一键DJ功能包括加快所述歌曲的播放速度,以及在所述歌曲中加入电音的功能;和/或,节奏闪光功能的开关信息,所述节奏闪光功能包括所述歌曲在播放到节奏点时终端屏幕对应闪烁的功能。
可选地,所述歌曲播放信息包括所述第一客户端创建的房间当前播放的歌曲的歌曲信息。
可选地,如图12所示,所述装置110还包括第一生成模块113。
接收模块111,还用于接收所述第一客户端发送的创建房间请求,所述创建房间请求中包括所述第一客户端的标识。
第一生成模块113,用于生成所述第一客户端对应的房间号。
发送模块112,还用于向所述第一客户端发送创建房间响应,所述创建房间响应中包括所述房间号,所述房间号用于标识所述房间。
可选地,如图12所示,所述装置110还包括第二生成模块114和第一确定模块115。
第二生成模块114,用于确定候选客户端列表,所述候选客户端列表中包括至少一个候选客户端的标识。
第一确定模块115,用于基于所述候选客户端列表,确定所述同步播放指令所要发送至的所述第二客户端。
可选地,所述发送模块112,还用于向所述第一客户端发送所述候选客户端列表。
所述接收模块111,还用于接收所述第一客户端发送的同步播放列表,所述同步播放列表中包括所述候选客户端列表中的一个或多个标识。
所述第一确定模块115,用于将所述同步播放列表中的标识对应的客户端确定为所述第二客户端。
可选地,所述第一确定模块115,还用于将所述候选客户端列表中的每个标识对应的客户端均确定为所述第二客户端;或者,按照预定义规则,从所述候选客户端列表中选择一个或多个标识对应的客户端,确定为所述第二客户端。
可选地,所述候选客户端列表包括以下至少一项:
访问客户端列表,所述访问客户端列表中包括访问所述第一客户端创建的房间的所有客户端的标识;
关联客户端列表,所述关联客户端列表中包括与所述第一客户端具有关联关系的客户端的标识,所述关联关系包括以下至少一项:好友关系、关注关系、订阅关系;
相似客户端列表,所述相似客户端列表中包括与所述第一客户端具有相同特征信息的客户端的标识。
图13是本申请另一实施例提供的一种歌曲播放装置的结构示意图。该装置应用于第一终端,该第一终端可以是如图1所示的系统中的任一终端102。该第一终端中可运行第一客户端。如图13所示,装置130可以包括:获取模块131和发送模块132。
获取模块131,用于获取所述第一客户端的歌曲播放信息,所述歌曲播放信息包括所述第一客户端当前播放的歌曲的歌曲信息。
发送模块132,用于向服务器发送所述歌曲播放信息,所述歌曲播放信息由所述服务器发送给第二客户端,以使得所述第二客户端基于所述歌曲播放信息同步播放所述歌曲。
综上所述,本申请实施例提供的歌曲播放装置,第一客户端在获取当前播放歌曲的歌曲播放信息后,向服务器发送该歌曲播放信息。服务器可将该歌曲播放信息发送至第二客户端,使得第二客户端可根据该歌曲播放信息与第一客户端同步播放歌曲,丰富了分享歌曲的方式。而且,本申请技术方案能够实现两个或者两个以上的客户端同步播放同一首歌曲,保证了各个客户端之间歌曲播放的同步性和实时性,从而能够实现多个用户同步收听同一歌曲的功能。
可选地,所述发送模块132,用于周期性地向所述服务器发送所述歌曲播放信息;或者,在所述歌曲播放信息发生改变时,向所述服务器发送所述歌曲播放信息。
可选地,所述获取模块131,用于获取所述第一客户端创建的房间内的歌曲播放信息。
可选地,如图14所示,所述装置130还包括接收模块133和创建模块134。
发送模块132,用于向所述服务器发送创建房间请求,所述创建房间请求中包括所述第一客户端的标识。
接收模块133,用于接收所述服务器发送的创建房间响应,所述创建房间响应中包括所述第一客户端对应的房间号。
创建模块134,用于基于所述创建房间响应在所述第一客户端中创建所述房间,所述房间号用于标识所述房间。
可选地,如图14所示,所述装置130还包括显示模块135和生成模块136。
接收模块133,用于接收所述服务器发送的候选客户端列表,所述候选客户端列表中包括至少一个候选客户端的标识。
显示模块135,用于显示所述候选客户端列表。
生成模块136,用于响应于接收到针对所述候选客户端列表中的一个或多个标识的选择指令,生成包含所述一个或多个标识的同步播放列表,所述同步播放列表用于指示与所述第一客户端同步播放所述歌曲的所述第二客户端。
发送模块132,用于向所述服务器发送所述同步播放列表。
可选地,所述候选客户端列表包括以下至少一项:
访问客户端列表,所述访问客户端列表中包括访问所述第一客户端创建的房间的所有客户端的标识;
关联客户端列表,所述关联客户端列表中包括与所述第一客户端具有关联关系的客户端的标识,所述关联关系包括以下至少一项:好友关系、关注关系、订阅关系;
相似客户端列表,所述相似客户端列表中包括与所述第一客户端具有相同特征信息的客户端的标识。
可选地,如图14所示,所述装置130还包括显示模块135。
显示模块135,用于显示所述歌曲的听歌界面。
显示模块135,还用于响应于针对所述听歌界面中的第一功能控件的触发信号,显示同步用户邀请界面,所述同步用户邀请界面中包括至少一个候选客户端的标识。
发送模块132,还用于响应于接收到针对所述同步用户邀请界面中的目标标识的选择指令,向所述服务器发送包括所述目标标识的同步用户邀请请求,所述同步用户邀请请求用于邀请所述目标标识对应的客户端与所述第一客户端同步播放所述歌曲。
可选地,所述听歌界面中还包括以下至少一项:播放进度调节控件、音量调节控件、声道设置控件和功能控制控件。
可选地,所述功能控制控件包括:一键DJ功能的开关控件,所述一键DJ功能包括加快所述歌曲的播放速度,以及在所述歌曲中加入电音的功能;和/或,节奏闪光功能的开关控件,所述节奏闪光功能包括所述歌曲在播放到节奏点时终端屏幕对应闪烁的功能。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本申请实施例还提供了一种歌曲播放装置。用于如图1所示的系统中的服务器101,该装置包括:处理器和存储器。存储器,用于存储计算机程序,所述计算机程序包括程序指令;处理器,用于调用所述计算机程序,实现上述歌曲播放方法中服务器执行的步骤。
图15是本申请实施例提供的一种服务器的框图。如图15所示,该服务器150包括:处理器1501和存储器1502;
所述存储器1502,用于存储计算机程序,所述计算机程序包括程序指令;
所述处理器1501,用于调用所述计算机程序,实现上述服务器侧的歌曲播放方法。
可选地,该服务器150还包括通信总线1503和通信接口1504。
其中,处理器1501包括一个或者一个以上处理核心,处理器1001通过运行计算机程序,从而执行各种功能应用以及数据处理。
存储器1502可用于存储计算机程序。可选地,存储器可存储操作系统和至少一个功能所需的应用程序单元。操作系统可以是实时操作系统(Real Time eXecutive,RTX)、LINUX、UNIX、WINDOWS或OS X之类的操作系统。
通信接口1504可以为多个,通信接口1504用于与其它存储设备或网络设备进行通信。例如在本申请实施例中,通信接口1504可以用于接收第一终端发送的歌曲播放信息。
存储器1502与通信接口1504分别通过通信总线1503与处理器1501连接。
本申请实施例还提供了一种歌曲播放装置。用于第一终端(运行第一客户端的终端),该第一终端可以是如图1所示的系统中的任一终端102,该装置包括:处理器和存储器。存储器,用于存储计算机程序,所述计算机程序包括程序指令;处理器,用于调用所述计算机程序,实现上述歌曲播放方法中第一客户端执行的步骤。
图16示出了本申请一个示例性实施例提供的终端的框图。
通常,终端1600包括有:处理器1601和存储器1602。
处理器1601可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1601可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1601也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central Processing Unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1601可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1601还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1602可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1602还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1602中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1601所执行以实现上述第一客户 端侧的歌曲播放方法。
在一些实施例中,终端1600还可选包括有:外围设备接口1603和至少一个外围设备。处理器1601、存储器1602和外围设备接口1603之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1603相连。具体地,外围设备包括:射频电路1604、显示屏1605、摄像头组件1606、音频电路1607、定位组件1608和电源1609中的至少一种。
本领域技术人员可以理解,图16中示出的结构并不构成对终端1600的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
本申请实施例还提供了一种歌曲播放系统,该系统包括:服务器和终端,服务器包括如图11-12所示的歌曲播放装置或如图15所示的歌曲播放装置,用于执行服务器侧的歌曲播放方法;终端包括如图13-14所示的歌曲播放装置或如图16所示的歌曲播放装置,用于执行第一客户端侧的歌曲播放方法。
本申请实施例还提供了一种计算机存储介质(或称为计算机可读存储介质),该计算机存储介质上存储有指令,当该指令被终端的处理器执行时,实现上述第一客户端侧的歌曲播放方法;当该指令被服务器的处理器执行时,实现上述服务器侧的歌曲播放方法。
可选地,上述计算机可读存储介质可以是ROM(Read-Only Memory,只读存储器)、RAM(Random Access Memory,随机存取存储器)、CD-ROM(Compact Disc Read-Only Memory,只读光盘)、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中,处理器从所述计算机可读存储介质读取并执行所述计算机指令,以实现上述服务器侧的歌曲播放方法,或上述第一客户端侧的歌曲播放方法。
应当理解的是,上文介绍的各个实施例,均是基于同一发明构思提供的多种可能实现方式。并且,上文介绍的各个实施例,仅是对本申请技术方案的示例性和解释性说明。上述各个实施例之间,可以相互结合和参考,以重组出更多的实施例,这都应当在本申请保护范围之内。
另外,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。另外,本文中描述的步骤编号,仅示例性示出了步骤间的一种可能的执行先后顺序,在一些其它实施例中,上述步骤也可以不按照编号顺序来执行,如两个不同编号的步骤同时执行,或者两个不同编号的步骤按照与图示相反的顺序执行,本申请实施例对此不作限定。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的构思和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (24)

  1. 一种歌曲播放方法,其特征在于,所述方法由服务器执行,所述方法包括:
    接收第一客户端发送的歌曲播放信息,所述歌曲播放信息包括所述第一客户端当前播放的歌曲的歌曲信息;
    向第二客户端发送同步播放指令,所述同步播放指令中包括所述歌曲播放信息,所述同步播放指令用于指示所述第二客户端基于所述歌曲播放信息同步播放所述歌曲。
  2. 根据权利要求1所述的方法,其特征在于,所述歌曲播放信息还包括以下至少一项:播放进度、音量信息、声道信息和功能控制信息。
  3. 根据权利要求2所述的方法,其特征在于,所述功能控制信息包括:
    一键唱片骑师DJ功能的开关信息,所述一键DJ功能包括加快所述歌曲的播放速度,以及在所述歌曲中加入电音的功能;和/或,
    节奏闪光功能的开关信息,所述节奏闪光功能包括所述歌曲在播放到节奏点时终端屏幕对应闪烁的功能。
  4. 根据权利要求1所述的方法,其特征在于,所述歌曲播放信息包括所述第一客户端创建的房间当前播放的歌曲的歌曲信息。
  5. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    确定候选客户端列表,所述候选客户端列表中包括至少一个候选客户端的标识;
    基于所述候选客户端列表,确定所述同步播放指令所要发送至的所述第二客户端。
  6. 根据权利要求5所述的方法,其特征在于,所述基于所述候选客户端列表,确定所述同步播放指令所要发送至的所述第二客户端,包括:
    向所述第一客户端发送所述候选客户端列表;
    接收所述第一客户端发送的同步播放列表,所述同步播放列表中包括所述候选客户端列表中的一个或多个标识;
    将所述同步播放列表中的标识对应的客户端确定为所述第二客户端。
  7. 根据权利要求5所述的方法,其特征在于,所述基于所述候选客户端列表,确定所述同步播放指令所要发送至的所述第二客户端,包括:
    将所述候选客户端列表中的每个标识对应的客户端均确定为所述第二客户端;或者,
    按照预定义规则,从所述候选客户端列表中选择一个或多个标识对应的客户端,确定为所述第二客户端。
  8. 根据权利要求5所述的方法,其特征在于,所述候选客户端列表包括以下至少一项:
    访问客户端列表,所述访问客户端列表中包括访问所述第一客户端创建的房间的所有客户端的标识;
    关联客户端列表,所述关联客户端列表中包括与所述第一客户端具有关联关系的客户端的标识,所述关联关系包括以下至少一项:好友关系、关注关系、订阅关系;
    相似客户端列表,所述相似客户端列表中包括与所述第一客户端具有相同特征信息的客户端的标识。
  9. 根据权利要求1至8任一项所述的方法,其特征在于,所述接收第一客户端发送的歌曲播放信息之前,所述方法还包括:
    接收所述第一客户端发送的创建房间请求,所述创建房间请求中包括所述第一客户端的标识;
    生成所述第一客户端对应的房间号;
    向所述第一客户端发送创建房间响应,所述创建房间响应中包括所述房间号,所述房间号用于标识所述房间。
  10. 一种歌曲播放方法,其特征在于,所述方法由第一客户端执行,所述方法包括:
    获取所述第一客户端的歌曲播放信息,所述歌曲播放信息包括所述第一客户端当前播放的歌曲的歌曲信息;
    向服务器发送所述歌曲播放信息,所述歌曲播放信息由所述服务器发送给第二客户端,以使得所述第二客户端基于所述歌曲播放信息同步播放所述歌曲。
  11. 根据权利要求10所述的方法,其特征在于,所述向服务器发送所述歌曲播放信息包括:
    周期性地向所述服务器发送所述歌曲播放信息;或者,在所述歌曲播放信息发生改变时,向所述服务器发送所述歌曲播放信息。
  12. 根据权利要求10所述的方法,其特征在于,所述获取所述第一客户端的歌曲播放信息,包括:
    获取所述第一客户端创建的房间内的歌曲播放信息。
  13. 根据权利要求10所述的方法,其特征在于,所述方法还包括:
    接收所述服务器发送的候选客户端列表,所述候选客户端列表中包括至少一个候选客户端的标识;
    显示所述候选客户端列表;
    响应于接收到针对所述候选客户端列表中的一个或多个标识的选择指令,生成包含所述一个或多个标识的同步播放列表,所述同步播放列表用于指示与所述第一客户端同步播放所述歌曲的所述第二客户端;
    向所述服务器发送所述同步播放列表。
  14. 根据权利要求13所述的方法,其特征在于,所述候选客户端列表包括以下至少一项:
    访问客户端列表,所述访问客户端列表中包括访问所述第一客户端创建的房间的所有客户端的标识;
    关联客户端列表,所述关联客户端列表中包括与所述第一客户端具有关联关系的客户端的标识,所述关联关系包括以下至少一项:好友关系、关注关系、订阅关系;
    相似客户端列表,所述相似客户端列表中包括与所述第一客户端具有相同特征信息的客户端的标识。
  15. 根据权利要求10至14任一项所述的方法,其特征在于,所述方法还包括:
    向所述服务器发送创建房间请求,所述创建房间请求中包括所述第一客户端的标识;
    接收所述服务器发送的创建房间响应,所述创建房间响应中包括所述第一客户端对应的房间号;
    基于所述创建房间响应在所述第一客户端中创建所述房间,所述房间号用于标识所述房间。
  16. 根据权利要求10至14任一项所述的方法,其特征在于,所述方法还包括:
    显示所述歌曲的听歌界面;
    响应于针对所述听歌界面中的第一功能控件的触发信号,显示同步用户邀请界面,所述同步用户邀请界面中包括至少一个候选客户端的标识;
    响应于接收到针对所述同步用户邀请界面中的目标标识的选择指令,向所述服务器发送包括所述目标标识的同步用户邀请请求,所述同步用户邀请请求用于邀请所述目标标识对应的客户端与所述第一客户端同步播放所述歌曲。
  17. 根据权利要求16所述的方法,其特征在于,所述听歌界面中还包括以下至少一项:播放进度调节控件、音量调节控件、声道设置控件和功能控制控件。
  18. 根据权利要求17所述的方法,其特征在于,所述功能控制控件包括:
    一键唱片骑师DJ功能的开关控件,所述一键DJ功能包括加快所述歌曲的播放速度,以及在所述歌曲中加入电音的功能;和/或,
    节奏闪光功能的开关控件,所述节奏闪光功能包括所述歌曲在播放到节奏点时终端屏幕 对应闪烁的功能。
  19. 一种歌曲播放装置,其特征在于,所述装置包括:
    接收模块,用于接收第一客户端发送的歌曲播放信息,所述歌曲播放信息包括所述第一客户端当前播放的歌曲的歌曲信息;
    发送模块,用于向第二客户端发送同步播放指令,所述同步播放指令中包括所述歌曲播放信息,所述同步播放指令用于指示所述第二客户端基于所述歌曲播放信息同步播放所述歌曲。
  20. 一种歌曲播放装置,其特征在于,所述装置包括:
    获取模块,用于获取所述第一客户端的歌曲播放信息,所述歌曲播放信息包括所述第一客户端当前播放的歌曲的歌曲信息;
    发送模块,用于向服务器发送所述歌曲播放信息,所述歌曲播放信息由所述服务器发送给第二客户端,以使得所述第二客户端基于所述歌曲播放信息同步播放所述歌曲。
  21. 一种歌曲播放装置,其特征在于,包括:处理器和存储器;
    所述存储器,用于存储计算机程序,所述计算机程序包括程序指令;
    所述处理器,用于调用所述计算机程序,实现如权利要求1至9任一所述的歌曲播放方法。
  22. 一种歌曲播放装置,其特征在于,包括:处理器和存储器;
    所述存储器,用于存储计算机程序,所述计算机程序包括程序指令;
    所述处理器,用于调用所述计算机程序,实现如权利要求10至18任一所述的歌曲播放方法。
  23. 一种歌曲播放系统,其特征在于,所述系统包括:服务器和终端,所述服务器包括如权利要求19所述的歌曲播放装置或如权利要求21所述的歌曲播放装置;所述终端包括如权利要求20所述的歌曲播放装置或如权利要求22所述的歌曲播放装置。
  24. 一种计算机存储介质,其特征在于,所述计算机存储介质上存储有指令,当所述指令被终端的处理器执行时,实现如权利要求10至18任一所述的歌曲播放方法;当所述指令被服务器的处理器执行时,实现如权利要求1至9任一所述的歌曲播放方法。
PCT/CN2021/080209 2020-03-11 2021-03-11 歌曲播放方法、装置及系统、计算机存储介质 WO2021180174A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010167411.5 2020-03-11
CN202010167411.5A CN111327928A (zh) 2020-03-11 2020-03-11 歌曲播放方法、装置及系统、计算机存储介质

Publications (1)

Publication Number Publication Date
WO2021180174A1 true WO2021180174A1 (zh) 2021-09-16

Family

ID=71167480

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/080209 WO2021180174A1 (zh) 2020-03-11 2021-03-11 歌曲播放方法、装置及系统、计算机存储介质

Country Status (2)

Country Link
CN (1) CN111327928A (zh)
WO (1) WO2021180174A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113766340A (zh) * 2021-09-27 2021-12-07 广州方硅信息技术有限公司 连麦直播下的舞曲互动方法、系统、装置及计算机设备
CN116456022A (zh) * 2023-04-19 2023-07-18 东莞恒泰数字技术有限公司 基于物联网的设备控制方法、装置、设备及存储介质

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111327928A (zh) * 2020-03-11 2020-06-23 广州酷狗计算机科技有限公司 歌曲播放方法、装置及系统、计算机存储介质
CN111797271A (zh) * 2020-07-08 2020-10-20 杭州网易云音乐科技有限公司 多人听音乐实现方法、装置、存储介质及电子设备
CN112464019A (zh) * 2020-12-03 2021-03-09 广州酷狗计算机科技有限公司 音频播放方法、装置、终端及存储介质
CN113259041B (zh) * 2021-05-08 2023-04-28 广州酷狗计算机科技有限公司 多终端之间播放进度同步的方法、装置及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104284200A (zh) * 2014-08-21 2015-01-14 杨兵 多屏同步播放方法、系统及相关装置
CN105376591A (zh) * 2015-12-17 2016-03-02 Tcl集团股份有限公司 一种远程控制共享文件同步执行的方法及系统
US20160142490A1 (en) * 2011-01-07 2016-05-19 Samsung Electronics Co., Ltd. Content synchronization apparatus and method
CN106358051A (zh) * 2015-07-14 2017-01-25 安富科技股份有限公司 应用于多媒体同步播放中数据校正的方法
CN109194572A (zh) * 2018-10-18 2019-01-11 腾讯音乐娱乐科技(深圳)有限公司 音频文件播放方法、装置、终端及存储介质
CN110234036A (zh) * 2019-06-19 2019-09-13 广州酷狗计算机科技有限公司 一种播放多媒体文件的方法、装置及系统
CN111327928A (zh) * 2020-03-11 2020-06-23 广州酷狗计算机科技有限公司 歌曲播放方法、装置及系统、计算机存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104484190A (zh) * 2014-12-31 2015-04-01 广东欧珀移动通信有限公司 音量调节方法及音频设备
US9635131B2 (en) * 2015-02-05 2017-04-25 Qwire Inc. Media player distribution and collaborative editing
CN106303648A (zh) * 2015-06-11 2017-01-04 阿里巴巴集团控股有限公司 一种同步播放多媒体数据的方法及装置
CN105872261B (zh) * 2016-06-15 2017-09-26 维沃移动通信有限公司 一种音频播放方法及移动终端
CN106603870B (zh) * 2017-01-10 2019-12-10 Oppo广东移动通信有限公司 播放设备的控制方法、装置及播放设备和移动终端
CN110267081B (zh) * 2019-04-02 2021-01-22 北京达佳互联信息技术有限公司 直播流处理方法、装置、系统、电子设备及存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160142490A1 (en) * 2011-01-07 2016-05-19 Samsung Electronics Co., Ltd. Content synchronization apparatus and method
CN104284200A (zh) * 2014-08-21 2015-01-14 杨兵 多屏同步播放方法、系统及相关装置
CN106358051A (zh) * 2015-07-14 2017-01-25 安富科技股份有限公司 应用于多媒体同步播放中数据校正的方法
CN105376591A (zh) * 2015-12-17 2016-03-02 Tcl集团股份有限公司 一种远程控制共享文件同步执行的方法及系统
CN109194572A (zh) * 2018-10-18 2019-01-11 腾讯音乐娱乐科技(深圳)有限公司 音频文件播放方法、装置、终端及存储介质
CN110234036A (zh) * 2019-06-19 2019-09-13 广州酷狗计算机科技有限公司 一种播放多媒体文件的方法、装置及系统
CN111327928A (zh) * 2020-03-11 2020-06-23 广州酷狗计算机科技有限公司 歌曲播放方法、装置及系统、计算机存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113766340A (zh) * 2021-09-27 2021-12-07 广州方硅信息技术有限公司 连麦直播下的舞曲互动方法、系统、装置及计算机设备
CN113766340B (zh) * 2021-09-27 2023-03-31 广州方硅信息技术有限公司 连麦直播下的舞曲互动方法、系统、装置及计算机设备
CN116456022A (zh) * 2023-04-19 2023-07-18 东莞恒泰数字技术有限公司 基于物联网的设备控制方法、装置、设备及存储介质
CN116456022B (zh) * 2023-04-19 2024-02-23 东莞恒泰数字技术有限公司 基于物联网的设备控制方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN111327928A (zh) 2020-06-23

Similar Documents

Publication Publication Date Title
WO2021180174A1 (zh) 歌曲播放方法、装置及系统、计算机存储介质
WO2022143182A1 (zh) 用于多用户交互的视频信号播放方法、装置及设备
CN110910860B (zh) 线上ktv实现方法、装置、电子设备及存储介质
WO2020134841A1 (zh) 一种直播互动方法、装置、系统、设备和存储介质
US20150172843A1 (en) Multi-terminal cooperative play method for multimedia file, and related apparatus and system
CN107360440B (zh) 基于直播流中引入游戏进程的深度交互系统及交互方法
CN102185862B (zh) 网络游戏系统的通信方法、装置及系统
JP2005346705A (ja) 通信システムにおける多感覚エモティコン
US20170289608A1 (en) Message sharing method, client, and computer storage medium
EP2349514B1 (en) Data stream processing
US20230001308A1 (en) Methods, systems, and media for coordinating multiplayer game sessions
CN113163223A (zh) 直播互动方法、装置、终端设备及存储介质
US20200014949A1 (en) Synchronizing session content to external content
CN113329236B (zh) 直播的方法、直播的装置、介质及电子设备
CN114026640A (zh) 用于提供动态媒体会话的方法、系统和介质
CN117221615A (zh) 直播互动方法、装置、设备及存储介质
CN112188223A (zh) 直播视频播放方法、装置、设备及介质
US20220394067A1 (en) System and method for facilitating interaction among users at real-time
JP2024519375A (ja) 音声再生方法及び音声伝送方法、装置、電子機器及びプログラム
JP5629047B2 (ja) ゲーム実況解説制御プログラム、記録媒体、ゲーム実況解説制御方法、及びプレイヤ端末
WO2024055326A1 (zh) 直播互动方法、装置、设备及存储介质
CN113516974A (zh) 用于提供交互服务的方法和装置
US11871208B2 (en) Methods and systems for spatial rendering of multi-user voice communication
CN117955945B (zh) 同场景下用户间的多音频线路同步方法、系统及存储介质
KR102669170B1 (ko) 멀티플레이어 게임 세션들을 조정하기 위한 방법들, 시스템들, 및 매체

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21768136

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21768136

Country of ref document: EP

Kind code of ref document: A1