CN109587176B - Multi-user voice communication control method and device, storage medium and electronic equipment - Google Patents

Multi-user voice communication control method and device, storage medium and electronic equipment Download PDF

Info

Publication number
CN109587176B
CN109587176B CN201910060308.8A CN201910060308A CN109587176B CN 109587176 B CN109587176 B CN 109587176B CN 201910060308 A CN201910060308 A CN 201910060308A CN 109587176 B CN109587176 B CN 109587176B
Authority
CN
China
Prior art keywords
voice
sender
weight value
candidate list
voice packet
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN201910060308.8A
Other languages
Chinese (zh)
Other versions
CN109587176A (en
Inventor
陈海齐
陈金霞
林婷婷
陈厚勇
陈健生
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network Co Ltd
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 Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN201910060308.8A priority Critical patent/CN109587176B/en
Publication of CN109587176A publication Critical patent/CN109587176A/en
Application granted granted Critical
Publication of CN109587176B publication Critical patent/CN109587176B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • H04L65/4038Arrangements for multi-party communication, e.g. for conferences with floor control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1827Network arrangements for conference optimisation or adaptation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Telephonic Communication Services (AREA)

Abstract

The embodiment of the disclosure provides a multi-user voice communication control method and device, a storage medium and an electronic device, wherein the multi-user voice communication control method comprises the following steps: receiving a voice packet, and judging whether a sender corresponding to the voice packet is in a voice candidate list or not; if the sender corresponding to the voice packet is in the voice candidate list, reading a weight value corresponding to the sender; and judging whether to send the voice packet or not according to the weight value. According to the technical scheme of the embodiment of the disclosure, the number of sending operations executed by the server at the same time is reduced by selectively sending the voice packets, the network flow is reduced, the number of the voice packets received by the sender at the same time is also reduced, and the network flow of the data received by the sender is reduced. Because the number of the received voice packets is reduced, the number of the voice packets played simultaneously is also reduced, and the noise degree of the voice playing is reduced.

Description

Multi-user voice communication control method and device, storage medium and electronic equipment
Technical Field
The present disclosure relates to the field of voice communication technologies, and in particular, to a multi-user voice communication control method and apparatus, a computer-readable storage medium, and an electronic device.
Background
With the development of voice communication technology, multi-player voice communication software has been widely used in networks, such as teleconferencing, remote communication of team-type games, and the like. In the current multi-user voice communication, after receiving a voice packet, a server forwards the voice packet to other participating sender clients, so as to realize the function of multi-user voice. However, if a plurality of senders send voices simultaneously in the process of multi-person voice communication, the server needs to receive a plurality of voice packets simultaneously and send the plurality of voice packets to other senders participating in multi-person voice, which may cause the problem of increased sending operation of the server and increased network flow. Meanwhile, the sender can receive and play a plurality of voice packets sent by the server at the same time, so that the problems of large data receiving quantity and disordered voice playing are caused.
It is to be noted that the information disclosed in the above background section is only for enhancement of understanding of the background of the present disclosure, and thus may include information that does not constitute prior art known to those of ordinary skill in the art.
Disclosure of Invention
The present disclosure is directed to a method and an apparatus for controlling multi-user voice communication, a computer-readable storage medium, and an electronic device, so as to overcome, at least to a certain extent, the problems of increased voice server sending operations and increased network traffic caused when multiple senders send voices simultaneously.
Additional features and advantages of the disclosure will be set forth in the detailed description which follows, or in part will be obvious from the description, or may be learned by practice of the disclosure.
According to a first aspect of the present disclosure, there is provided a multi-person voice communication control method including: receiving a voice packet, and judging whether a sender corresponding to the voice packet is in a voice candidate list or not; if the sender corresponding to the voice packet is in the voice candidate list, reading a weight value corresponding to the sender; and judging whether to send the voice packet or not according to the weight value.
In an exemplary embodiment of the present disclosure, based on the foregoing scheme, determining whether a sender corresponding to a voice packet is in a voice candidate list further includes: if the sender is not in the list, judging whether the sender can join the list or not; and if the sender can be added into the list, adding the sender into the list, and configuring the weight value of the sender according to the voice parameters of the voice packet.
In an exemplary embodiment of the present disclosure, based on the foregoing scheme, configuring a weight value of the sender according to a voice parameter of the voice packet includes: calculating the proportion of the voice parameters of the voice packet in the maximum value corresponding to the voice parameters; and calculating and configuring the weight value of the sender according to the proportion and a preset weight maximum value.
In an exemplary embodiment of the present disclosure, based on the foregoing scheme, the method further includes: and if the sender cannot join the list, not executing operation on the sender and the voice packet sent by the sender.
In an exemplary embodiment of the present disclosure, based on the foregoing scheme, the determining whether to send the voice packet according to the weight value includes: sorting according to the weight value of each sender in the voice candidate list; if the number of the sender is N, determining that the sender has sending rights; if the sender has the sending right, the sending operation is executed to the voice packet; wherein N is a positive integer.
In an exemplary embodiment of the present disclosure, based on the foregoing scheme, the determining whether to send the voice packet according to the weight value includes: resetting the weight value according to the weight value of each sender in the voice candidate list and the voice parameter of the voice packet, and sorting according to the reset weight value; if the number of the sender is N, determining that the sender has sending rights; if the sender has the sending right, the sending operation is executed to the voice packet; wherein N is a positive integer.
In an exemplary embodiment of the disclosure, based on the foregoing scheme, after the voice packet is transmitted, the method further includes: and expanding the weight value of the voice packet corresponding to the sender by a preset multiple.
In an exemplary embodiment of the present disclosure, based on the foregoing solution, the method further includes: resetting the weight value of the sender in the voice candidate list according to a preset proportion in a preset period; and judging whether the corresponding weight value after the sender is reset is smaller than a first threshold value or not, and removing the sender from the voice candidate list when the weight value of the sender is smaller than the first threshold value.
In an exemplary embodiment of the present disclosure, based on the foregoing scheme, after reading a weight value corresponding to a sender if the sender corresponding to the voice packet is in the voice candidate list, the method further includes: and resetting the time to be spoken corresponding to the sender to an initial value.
In an exemplary embodiment of the present disclosure, based on the foregoing scheme, the method further includes: reducing the waiting time of the sender in the voice candidate list by preset time in a preset period; and judging whether the updated waiting time of the sender is smaller than a second threshold value or not, and removing the sender from the voice candidate list when the waiting time of the sender is smaller than the second threshold value.
In an exemplary embodiment of the present disclosure, based on the foregoing scheme, the method further includes: clearing the voice candidate list according to a preset period; adding a sender corresponding to a currently received voice packet into a voice candidate list, and configuring a weight value of the sender according to voice parameters of the voice packet.
According to a second aspect of the present disclosure, there is provided a multi-person voice communication control apparatus including: the judging unit is used for receiving the voice packet and judging whether a sender corresponding to the voice packet is in a voice candidate list or not; the reading unit is used for reading a weight value corresponding to a sender when the sender corresponding to the voice packet is in the voice candidate list; and the sending unit is used for judging whether to send the voice packet according to the weight value.
In some embodiments of the present disclosure, based on the foregoing scheme, the determining unit is configured to: if the sender is not in the list, judging whether the sender can join the list or not; and if the sender can be added into the list, adding the sender into the list, and configuring the weight value of the sender according to the voice parameters of the voice packet.
In some embodiments of the present disclosure, based on the foregoing scheme, the determining unit is configured to: calculating the proportion of the voice parameters of the voice packet in the maximum value corresponding to the voice parameters; and calculating and configuring the weight value of the sender according to the proportion and a preset weight maximum value.
In some embodiments of the present disclosure, based on the foregoing scheme, the determining unit is configured to: and if the sender cannot join the list, not executing operation on the sender and the voice packet sent by the sender.
In some embodiments of the present disclosure, based on the foregoing scheme, the configuration of the sending unit is: sorting according to the weight value of each sender in the voice candidate list; if the number of the sender is N, determining that the sender has sending rights; if the sender has the sending right, the sending operation is executed to the voice packet; wherein N is a positive integer.
In some embodiments of the present disclosure, based on the foregoing scheme, the configuration of the sending unit is: resetting the weight value according to the weight value of each sender in the voice candidate list and the voice parameter of the voice packet, and sorting according to the reset weight value; if the number of the sender is N, determining that the sender has sending rights; if the sender has the sending right, the sending operation is executed to the voice packet; wherein N is a positive integer.
In some embodiments of the present disclosure, based on the foregoing solution, the multi-person voice communication control apparatus further includes: and the weight expanding unit is used for expanding the weight value of the sender corresponding to the voice packet by a preset multiple.
In some embodiments of the present disclosure, based on the foregoing solution, the multi-person voice communication control apparatus further includes: the first resetting unit is used for resetting the weight value of the sender in the voice candidate list according to a preset proportion in a preset period; the first processing unit is used for judging whether the corresponding weight value after the sender is reset is smaller than a first threshold value or not, and removing the sender from the voice candidate list when the weight value of the sender is smaller than the first threshold value.
In some embodiments of the present disclosure, based on the foregoing solution, the multi-person voice communication control apparatus further includes: and the initialization unit is used for resetting the time to be spoken corresponding to the sender to an initial value.
In some embodiments of the present disclosure, based on the foregoing solution, the multi-person voice communication control apparatus further includes: the second resetting unit is used for reducing the time to be voiced of the sender in the voice candidate list by preset time in a preset period; and the second processing unit is used for judging whether the updated waiting time of the sender is less than a second threshold value or not and removing the sender from the voice candidate list when the waiting time of the sender is less than the second threshold value.
In some embodiments of the present disclosure, based on the foregoing solution, the multi-person voice communication control apparatus further includes: the emptying unit is used for regularly emptying the voice candidate list according to a preset period; and the adding unit is used for adding a sender corresponding to the currently received voice packet into the voice candidate list and configuring the weight value of the sender according to the voice parameters of the voice packet.
According to a third aspect of the present disclosure, there is provided a computer-readable medium having stored thereon a computer program which, when executed by a processor, implements the multi-person voice communication control method according to the first aspect in the above-described embodiments.
According to a fourth aspect of the embodiments of the present disclosure, there is provided an electronic apparatus including: one or more processors; a storage device for storing one or more programs which, when executed by the one or more processors, cause the one or more processors to implement the multi-person voice communication control method as described in the first aspect of the above embodiments.
The technical scheme provided by the embodiment of the disclosure can have the following beneficial effects:
in the technical solutions provided in some embodiments of the present disclosure, after receiving a voice packet sent by a sender, a server determines whether to send the voice packet according to a weight value corresponding to the sender in a voice candidate list, so that selective sending of the voice packet is achieved, the number of sending operations executed by the server at the same time is reduced, network traffic is reduced, the number of voice packets received by other senders participating in multi-person voice is also reduced, and network traffic of data received by other senders participating in multi-person voice is reduced. Because the number of the received voice packets is reduced, the number of the voice packets played simultaneously is also reduced, and the noise degree of the voice playing is also reduced.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and together with the description, serve to explain the principles of the disclosure. It is to be understood that the drawings in the following description are merely exemplary of the disclosure, and that other drawings may be derived from those drawings by one of ordinary skill in the art without the exercise of inventive faculty. In the drawings:
fig. 1 schematically shows a flow chart of a multi-person voice communication control method according to an embodiment of the present disclosure;
fig. 2 is a flowchart schematically illustrating a processing method for determining that a sender corresponding to a voice packet is not in a voice candidate list according to an embodiment of the present disclosure;
fig. 3 is a flow chart schematically illustrating a method for configuring a weight value of the sender according to voice parameters of the voice packet according to an embodiment of the present disclosure;
fig. 4 is a flow chart schematically illustrating a method for determining whether to send the voice packet according to the weight value according to an embodiment of the present disclosure;
fig. 5 is a flow chart schematically illustrating a method for determining whether to transmit the voice packet according to the weight value according to another embodiment of the present disclosure;
FIG. 6 schematically illustrates a flow chart of a method of removing the sender from the list of speech candidates according to one embodiment of the present disclosure;
FIG. 7 schematically illustrates a flow chart of a method of removing the sender from the list of speech candidates according to another embodiment of the present disclosure;
FIG. 8 schematically illustrates a flow chart of a method of resetting a sender in a voice candidate list according to one embodiment of the present disclosure;
fig. 9 schematically illustrates a simulated block diagram of a multi-person voice communication control apparatus in an exemplary embodiment of the present disclosure;
FIG. 10 illustrates a schematic structural diagram of a computer system suitable for use in implementing an electronic device of an embodiment of the present disclosure.
Detailed Description
Example embodiments will now be described more fully with reference to the accompanying drawings. Example embodiments may, however, be embodied in many different forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of example embodiments to those skilled in the art.
Furthermore, the described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to give a thorough understanding of embodiments of the disclosure. One skilled in the relevant art will recognize, however, that the subject matter of the present disclosure can be practiced without one or more of the specific details, or with other methods, components, devices, steps, and so forth. In other instances, well-known methods, devices, implementations, or operations have not been shown or described in detail to avoid obscuring aspects of the disclosure.
The block diagrams shown in the figures are functional entities only and do not necessarily correspond to physically separate entities. I.e. these functional entities may be implemented in the form of software, or in one or more hardware modules or integrated circuits, or in different networks and/or processor means and/or microcontroller means.
The flow charts shown in the drawings are merely illustrative and do not necessarily include all of the contents and operations/steps, nor do they necessarily have to be performed in the order described. For example, some operations/steps may be decomposed, and some operations/steps may be combined or partially combined, so that the actual execution sequence may be changed according to the actual situation.
Fig. 1 schematically shows a flowchart of a multi-person voice communication control method according to an embodiment of the present disclosure, which can be applied to a server having a multi-person voice communication function. For example, a server for a multi-person voice conference.
Referring to fig. 1, a multi-person voice communication control method according to an embodiment of the present disclosure includes the following steps S110 to S130, which are explained in detail as follows:
in step S110, a voice packet is received, and it is determined whether a sender corresponding to the voice packet is in a voice candidate list.
In an embodiment of the present disclosure, the voice packet is a voice packet sent by all senders currently participating in multi-person voice, and after receiving the voice packet, the sender corresponding to the voice packet is determined to determine whether the sender is already in a list of voice candidates. For example, currently, 8 sending parties participate in multi-person voice, the server needs to receive voice packets sent by the participating 8 sending parties, wherein 3 sending parties are currently in the voice candidate list, and at this time, the server needs to judge whether any voice packet in the voice packets sent by the 8 sending parties corresponds to one of the 3 sending parties.
In step S120, if the sender corresponding to the voice packet is in the voice candidate list, a weight value corresponding to the sender is read.
In an embodiment of the present disclosure, the voice candidate list includes a sender and a weight value corresponding to the sender, so that if the sender corresponding to the voice packet is in the voice candidate list, the weight value corresponding to the sender may be directly read from the voice candidate list.
In an embodiment of the present disclosure, when determining whether the sender corresponding to the voice packet is in the voice candidate list, referring to fig. 2, the method further includes steps S210 to S220, which are described in detail below:
in step S210, if the sender is not in the list, it is determined whether the sender can join the list.
In one embodiment of the present disclosure, whether the sender can join the list may be determined according to various parameters. For example, the determination may be performed according to the number of the senders in the current voice candidate list, and if the number of the senders in the current voice candidate list is smaller than a preset number of the senders, it may be determined that the sender can join the list; for another example, the determination may be performed according to a voice parameter of a voice packet sent by a sender, and if the parameter of the voice packet sent by the sender is greater than a preset parameter threshold, it may be determined that the sender can join the list.
In step S220, if it is determined that the sender can join the list, the sender is joined to the list, and a weight value of the sender is configured according to the voice parameter of the voice packet.
In an embodiment of the present disclosure, configuring a weight value of the sender according to a voice parameter of the voice packet, as shown in fig. 3, further includes:
step S310, calculating the proportion of the voice parameters of the voice packet to the maximum value corresponding to the voice parameters;
step S320, calculating and configuring a weight value of the sender according to the ratio and a preset maximum weight value.
In one embodiment of the present disclosure, the voice parameters of the voice packet may include parameters such as volume, amplitude, frequency, and the like of the voice packet, and the weight value of the sender is configured according to the voice parameters. For example, the volume parameter of the voice packet is read, the proportion of the volume parameter to the maximum value of the preset volume is calculated, and the proportion is multiplied by the maximum value of the preset weight, so that the weight value of the sender can be obtained. Specifically, assuming that the preset maximum volume value is 100, the preset maximum weight value is 8, and the volume parameter of the current voice packet is 60, the weight value of the sender is 4.8.
In an embodiment of the present disclosure, if it is determined that the sender cannot join the list, no operation is performed on the sender and a voice packet sent by the sender.
Referring to fig. 1, in step S130, it is determined whether to transmit the voice packet according to the weight value.
In an embodiment of the present disclosure, when determining whether to send the voice packet according to the weight value, the weight value may be a current weight value of the sender in a voice candidate list as shown in fig. 4, and the method includes the following steps S410 to S430, which are described in detail below:
in step S410, sorting is performed according to the weight value of each sender in the voice candidate list.
In an embodiment of the present disclosure, the senders are sorted according to the weight values of the senders in the voice candidate list, so as to obtain a sort order of the senders in the voice candidate list. The method can obtain the weighted value sequencing of the voice packets sent by the senders before the sender sends the voice packets, and can obtain the voice parameter sequencing of the voice packets sent by the senders before the sender because the weighted values are configured according to the voice packet parameters, thereby achieving the purpose of selecting the senders.
In step S420, if the current sequence of the sender is N previous, it is determined that the sender has a sending right.
In one embodiment of the disclosure, the sending right of the sender is determined according to the position of the sender in the sequence, and the sending right is associated with the sequence, so that all senders obtaining the sending right can be senders which often send high-quality voice packets, and the quality of the sent voice packets is improved.
In an embodiment of the present disclosure, N is a positive integer and is a preset parameter. The N is the preset total number of the senders with the sending rights, the problem of flow increase caused by sending voice packets of a plurality of senders at the same time is solved by setting the total number of the senders with the sending rights, and meanwhile, the setting of the parameter N also limits the number of the voice packets sent at the same time to be N at most, and the sending operation of the server is reduced.
In step S430, if the sender has a sending right, sending the voice packet.
In an embodiment of the present disclosure, if it is determined that the sender has a sending right through the sorting of the weight values, the voice packet is sent to other senders participating in the voice of multiple persons and played. The screened voice packets are sent to other senders participating in multi-person voice, so that the number of the voice packets received by the other senders is reduced, and further the use of flow is reduced. Meanwhile, because the number of the voice packets received at the same time is small, and the quality is high, the noise degree when other senders participating in the voice of multiple persons play the voice packets is also reduced.
In an embodiment of the disclosure, when determining whether to send the voice packet according to the weight value, the weight value may also be a weight value reset according to a weight value of each sender in the voice candidate list and a voice parameter of a current voice packet to be sent, referring to fig. 5, the method includes the following steps:
step S510, resetting the weight value according to the weight value of each sender in the voice candidate list and the voice parameter of the voice packet, and sorting according to the reset weight value;
step S520, if the number of the sender is the first N, determining that the sender has a sending right;
step S530, if the sender has the sending right, then sending the voice packet.
In an embodiment of the present disclosure, if the weight value may also be a weight value reset according to a weight value of each sender in the voice candidate list and a voice parameter of a current voice packet to be sent, sorting the senders according to the reset weight value to obtain an arrangement order of the senders in the voice candidate list. The parameter N is the same as the parameter N in step S420, is a preset parameter, and is a positive integer. The method has the advantages that the weighted values of the senders are reset together according to the current weighted value of the sender and the voice parameter of the voice packet sent this time, then the weighted values are sequenced, the voice packets can be screened under the condition that the two aspects of the past voice quality and the current voice quality of the sender are considered, and therefore screening of the senders is more accurate.
In one embodiment of the present disclosure, after transmitting the voice packet, the method further comprises: and expanding the weight value of the voice packet corresponding to the sender by a preset multiple. The process of increasing the weight value of the sender corresponding to the voice packet by a preset multiple may be executed after the voice packet needs to be sent, or may be executed after the voice packet is sent. The weight value of the voice packet corresponding to the sender is enlarged by a preset multiple, so that the possibility that the weight values of the senders are sequenced in the first N times and obtain the sending right can be increased, the continuity of the contents of the sent voice packets is ensured, and the experience of the senders is improved.
In an embodiment of the present disclosure, the multiple value of the preset multiple may be set in a direct proportion or an inverse proportion according to a maximum value of a sender participating in the multi-person voice communication, and a specific multiple value may be a real number greater than 1. For example, in the process of multi-person voice communication, at most 10 persons can be accommodated for voice communication, and the preset multiple may be a larger value, for example, 2.5; if a maximum of 50 persons can be accommodated for voice communication during multi-person voice communication, the preset multiple may be configured to be a smaller value, for example, 1.2. The preset multiple is configured according to the maximum value of the sender participating in the multi-person voice communication, so that the weight value of the sender can be reduced more quickly, and more senders have an opportunity to send voice packets; or the weighted value of the sender can be reduced slowly, so that the consistency of sending voice by the sender with better voice packet quality is better ensured.
In one embodiment of the present disclosure, referring to fig. 6, the method further includes the following steps S610 to S620, which are explained in detail below:
in step S610, at a preset period, a weight value is reset for the sender in the voice candidate list according to a preset ratio.
In an embodiment of the present disclosure, in a preset period, the weight value of the sender in the voice candidate list is reset to a preset proportion of the original weight value, and the weight value of the sender is reduced.
In step S620, it is determined whether the weight value corresponding to the sender after being reset is smaller than a first threshold, and the sender is removed from the voice candidate list when the weight value of the sender is smaller than the first threshold.
In an embodiment of the present disclosure, since the weight value of the sender is reduced to a preset proportion of the original weight value in a preset period, the weight value is continuously reduced. And when the weight value is reduced to a first threshold value, removing the voice candidate list from the sender corresponding to the weight value smaller than the first threshold value. For example, the first threshold is set to 1, and when the weight value is less than 1, the sender corresponding to the first threshold is removed. By removing the sender with the smaller weight value from the voice candidate list, the vacancy in the voice list is increased, so that other senders participating in the voice of multiple persons have the opportunity to join the voice candidate list.
In an embodiment of the present disclosure, after reading a weight value corresponding to a sender if the sender corresponding to the voice packet is in the voice candidate list, the method further includes: and resetting the time to be spoken corresponding to the sender to an initial value.
In an embodiment of the present disclosure, the voice candidate list may further include a time to be voiced. The function of the waiting speech time is as follows: and if the sender does not send a voice packet within the voice waiting time after adding the voice candidate list, removing the sender from the voice candidate list. When the server receives a voice packet sent by a sender in the voice candidate list every time, the server resets the voice waiting time to an initial value after reading a weight value corresponding to the sender, and after the reset, if the voice packet is not sent in the voice waiting time, the voice packet is still removed from the voice candidate list.
In an embodiment of the present disclosure, referring to fig. 7, the method further includes the following steps S710 to S720:
step S710, reducing the waiting time of the sender in the voice candidate list by preset time in a preset period;
step S720, judging whether the updated waiting time of the sender is less than a second threshold value, and removing the sender from the voice candidate list when the waiting time of the sender is less than the second threshold value.
In one embodiment of the disclosure, when the time to speak corresponding to the sender is less than a second threshold, the sender is removed from the voice candidate list. For example, the second threshold may be set to 0, and when the waiting time of the sender is less than 0, the second threshold is removed. The number of people in the voice candidate list is controlled through the voice waiting time, and the vacancy in the voice list is increased, so that other senders participating in the voice of multiple people have the opportunity of joining the voice candidate list.
In one embodiment of the present disclosure, referring to fig. 8, the method further includes the following steps S810 to S820, which are explained in detail below:
in step S810, the voice candidate list is emptied periodically according to a preset period.
In one embodiment of the present disclosure, the voice candidate list is emptied periodically at a preset period. If the sender in the voice candidate list continuously sends the voice packet to cause that the voice candidate list has no vacancy all the time, and other senders participating in the multi-person voice can not join the voice candidate list all the time, a method for regularly emptying the voice candidate list is added, so that other senders participating in the multi-person voice have the opportunity of joining the voice candidate list.
In step S820, a sender corresponding to a currently received voice packet is added to a voice candidate list, and a weight value of the sender is configured according to a voice parameter of the voice packet.
In an embodiment of the present disclosure, after the voice candidate list is empty, the server adds a sender corresponding to a currently received voice packet into the voice candidate list, and configures a weight value of the sender according to a voice parameter of the voice packet. After the voice candidate list is emptied regularly according to a preset period, when a new voice packet is received, a sender corresponding to the currently received voice packet can be added into the voice candidate list, at this time, a weighted value of the sender needs to be configured, the sender can be configured according to a voice parameter of the voice packet, and a specific configuration mode is the same as the configuration mode when the sender can be added into the voice candidate list.
The following describes an embodiment of the apparatus of the present disclosure, which can be used to execute the above-mentioned multi-user voice communication control method of the present disclosure.
Fig. 9 schematically illustrates a simulated block diagram of a multiplayer voice communication control apparatus in an exemplary embodiment of the present disclosure, which may be provided in a server having a multiplayer voice communication function, for example, in a server of a team game, so that a sender in a team can perform multiplayer voice communication during the course of the team game.
Referring to fig. 9, a multi-person voice communication control apparatus 900 according to an embodiment of the present disclosure includes: a judging unit 901, a reading unit 902 and a transmitting unit 903.
The determining unit 901 is configured to receive a voice packet, and determine whether a sender corresponding to the voice packet is in a voice candidate list; the reading unit 902 is configured to read a weight value corresponding to a sender when the sender corresponding to the voice packet is in the voice candidate list; the sending unit 903 is configured to determine whether to send the voice packet according to the weight value.
In some embodiments of the present disclosure, based on the foregoing scheme, the determining unit 901 is configured to: if the sender is not in the list, judging whether the sender can join the list or not; and if the sender can be added into the list, adding the sender into the list, and configuring the weight value of the sender according to the voice parameters of the voice packet.
In some embodiments of the present disclosure, based on the foregoing scheme, the determining unit 901 is configured to: calculating the proportion of the voice parameters of the voice packet in the maximum value corresponding to the voice parameters; and calculating and configuring the weight value of the sender according to the proportion and a preset weight maximum value.
In some embodiments of the present disclosure, based on the foregoing scheme, the determining unit 901 is configured to: and if the sender cannot join the list, not executing operation on the sender and the voice packet sent by the sender.
In some embodiments of the present disclosure, based on the foregoing scheme, the transmitting unit 903 is configured to: sorting according to the weight value of each sender in the voice candidate list; if the number of the sender is N, determining that the sender has sending rights; if the sender has the sending right, the sending operation is executed to the voice packet; wherein N is a positive integer.
In some embodiments of the present disclosure, based on the foregoing scheme, the transmitting unit 903 is configured to: resetting the weight value according to the weight value of each sender in the voice candidate list and the voice parameter of the voice packet, and sorting according to the reset weight value; if the number of the sender is N, determining that the sender has sending rights; if the sender has the sending right, the sending operation is executed to the voice packet; wherein N is a positive integer.
In some embodiments of the present disclosure, based on the foregoing solution, the multi-person voice communication control apparatus 900 further includes: and the weight expanding unit is used for expanding the weight value of the sender corresponding to the voice packet by a preset multiple.
In some embodiments of the present disclosure, based on the foregoing solution, the multi-person voice communication control apparatus 900 further includes: the first resetting unit is used for resetting the weight value of the sender in the voice candidate list according to a preset proportion in a preset period; the first processing unit is used for judging whether the corresponding weight value after the sender is reset is smaller than a first threshold value or not, and removing the sender from the voice candidate list when the weight value of the sender is smaller than the first threshold value.
In some embodiments of the present disclosure, based on the foregoing solution, the multi-person voice communication control apparatus 900 further includes: and the initialization unit is used for resetting the time to be spoken corresponding to the sender to an initial value.
In some embodiments of the present disclosure, based on the foregoing solution, the multi-person voice communication control apparatus 900 further includes: the second resetting unit is used for reducing the time to be voiced of the sender in the voice candidate list by preset time in a preset period; and the second processing unit is used for judging whether the updated waiting time of the sender is less than a second threshold value or not and removing the sender from the voice candidate list when the waiting time of the sender is less than the second threshold value.
In some embodiments of the present disclosure, based on the foregoing solution, the multi-person voice communication control apparatus 900 further includes: the emptying unit is used for regularly emptying the voice candidate list according to a preset period; and the adding unit is used for adding a sender corresponding to the currently received voice packet into the voice candidate list and configuring the weight value of the sender according to the voice parameters of the voice packet.
For details not disclosed in the embodiments of the apparatus of the present disclosure, please refer to the embodiments of the multi-person voice communication control method of the present disclosure for the details not disclosed in the embodiments of the apparatus of the present disclosure.
Referring now to FIG. 10, shown is a block diagram of a computer system 1000 suitable for use in implementing the electronic devices of embodiments of the present disclosure. The computer system 1000 of the electronic device shown in fig. 10 is only an example, and should not bring any limitation to the function and the scope of use of the embodiments of the present disclosure.
As shown in fig. 10, the computer system 1000 includes a Central Processing Unit (CPU)1001 that can perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM)1002 or a program loaded from a storage section 1008 into a Random Access Memory (RAM) 1003. In the RAM 1003, various programs and data necessary for system operation are also stored. The CPU 1001, ROM 1002, and RAM 1003 are connected to each other via a bus 1004. An input/output (I/O) interface 1005 is also connected to bus 1004.
The following components are connected to the I/O interface 1005: an input section 1006 including a keyboard, a mouse, and the like; an output section 1007 including a display such as a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, and a speaker; a storage portion 1008 including a hard disk and the like; and a communication section 1009 including a network interface card such as a LAN card, a modem, or the like. The communication section 1009 performs communication processing via a network such as the internet. The driver 1010 is also connected to the I/O interface 1005 as necessary. A removable medium 1011 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 1010 as necessary, so that a computer program read out therefrom is mounted into the storage section 1008 as necessary.
In particular, according to an embodiment of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method illustrated in the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network through the communication part 1009 and/or installed from the removable medium 1011. The computer program executes the above-described functions defined in the system of the present application when executed by the Central Processing Unit (CPU) 1001.
It should be noted that the computer readable media shown in the present disclosure may be computer readable signal media or computer readable storage media or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present disclosure, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In contrast, in the present disclosure, a computer-readable signal medium may include a propagated data signal with computer-readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units described in the embodiments of the present disclosure may be implemented by software, or may be implemented by hardware, and the described units may also be disposed in a processor. Wherein the names of the elements do not in some way constitute a limitation on the elements themselves.
As another aspect, the present application also provides a computer-readable medium, which may be contained in the electronic device described in the above embodiments; or may exist separately without being assembled into the electronic device. The above-mentioned computer-readable medium carries one or more programs which, when executed by one of the electronic devices, cause the electronic device to implement the multi-person voice communication control method as described in the above-mentioned embodiments.
For example, the electronic device may implement the following as shown in fig. 1: step S110, receiving a voice packet, and judging whether a sender corresponding to the voice packet is in a voice candidate list; step S120, if the sender corresponding to the voice packet is in the voice candidate list, reading a weight value corresponding to the sender; step S130, judging whether to send the voice packet according to the weight value.
As another example, the electronic device may implement the steps shown in fig. 2 to 8.
It should be noted that although in the above detailed description several modules or units of the device for action execution are mentioned, such a division is not mandatory. Indeed, the features and functionality of two or more modules or units described above may be embodied in one module or unit, according to embodiments of the present disclosure. Conversely, the features and functions of one module or unit described above may be further divided into embodiments by a plurality of modules or units.
Through the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein may be implemented by software, or by software in combination with necessary hardware. Therefore, the technical solution according to the embodiments of the present disclosure may be embodied in the form of a software product, which may be stored in a non-volatile storage medium (which may be a CD-ROM, a usb disk, a removable hard disk, etc.) or on a network, and includes several instructions to enable a computing device (which may be a personal computer, a server, a touch terminal, or a network device, etc.) to execute the method according to the embodiments of the present disclosure.
Other embodiments of the disclosure will be apparent to those skilled in the art from consideration of the specification and practice of the disclosure disclosed herein. This application is intended to cover any variations, uses, or adaptations of the disclosure following, in general, the principles of the disclosure and including such departures from the present disclosure as come within known or customary practice within the art to which the disclosure pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the disclosure being indicated by the following claims.
It will be understood that the present disclosure is not limited to the precise arrangements described above and shown in the drawings and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.

Claims (13)

1. A multi-person voice communication control method, comprising:
receiving a voice packet, and judging whether a sender corresponding to the voice packet is in a voice candidate list or not;
if the sender corresponding to the voice packet is in the voice candidate list, reading a weight value corresponding to the sender;
judging whether to send the voice packet according to the weight value;
when a preset period is reset, resetting a weight value for a sender in the voice candidate list according to a preset proportion;
and judging whether the corresponding weight value after the sender is reset is smaller than a first threshold value or not, and removing the sender from the voice candidate list when the weight value of the sender is smaller than the first threshold value.
2. The multi-user voice communication control method according to claim 1, wherein determining whether a sender corresponding to the voice packet is in a voice candidate list further comprises:
if the sender is not in the list, judging whether the sender can join the list or not;
and if the sender can be added into the list, adding the sender into the list, and configuring the weight value of the sender according to the voice parameters of the voice packet.
3. The multi-person voice communication control method according to claim 2, wherein configuring the weight value of the sender according to the voice parameters of the voice packet comprises:
calculating the proportion of the voice parameters of the voice packet in the maximum value corresponding to the voice parameters;
and calculating and configuring the weight value of the sender according to the proportion and a preset weight maximum value.
4. The multi-person voice communication control method according to claim 2, characterized in that the method further comprises:
and if the sender cannot join the list, not executing operation on the sender and the voice packet sent by the sender.
5. The multi-person voice communication control method according to claim 1, wherein said determining whether to send the voice packet according to the weight value comprises:
sorting according to the weight value of each sender in the voice candidate list;
if the number of the sender is N, determining that the sender has sending rights;
if the sender has the sending right, the sending operation is executed to the voice packet;
wherein N is a positive integer.
6. The multi-person voice communication control method according to claim 1, wherein said determining whether to send the voice packet according to the weight value comprises:
resetting the weight value according to the weight value of each sender in the voice candidate list and the voice parameter of the voice packet, and sorting according to the reset weight value;
if the number of the sender is N, determining that the sender has sending rights;
if the sender has the sending right, the sending operation is executed to the voice packet;
wherein N is a positive integer.
7. The multi-person voice communication control method according to claim 1, wherein after transmitting the voice packet, the method further comprises:
and expanding the weight value of the voice packet corresponding to the sender by a preset multiple.
8. The method of claim 1, wherein after reading a weight value corresponding to the sender if the sender corresponding to the voice packet is in the voice candidate list, the method further comprises:
and resetting the time to be spoken corresponding to the sender to an initial value.
9. The multi-person voice communication control method according to claim 8, characterized in that the method further comprises:
when the preset period is reduced, reducing the time of waiting for voice of the sender in the voice candidate list by preset time;
and judging whether the updated waiting time of the sender is smaller than a second threshold value or not, and removing the sender from the voice candidate list when the waiting time of the sender is smaller than the second threshold value.
10. The multi-person voice communication control method according to claim 1, characterized in that the method further comprises:
clearing the voice candidate list according to a preset clearing period;
adding a sender corresponding to a currently received voice packet into a voice candidate list, and configuring a weight value of the sender according to voice parameters of the voice packet.
11. A multi-person voice communication control apparatus, comprising:
the judging unit is used for receiving the voice packet and judging whether a sender corresponding to the voice packet is in a voice candidate list or not;
the reading unit is used for reading a weight value corresponding to a sender when the sender corresponding to the voice packet is in the voice candidate list;
the sending unit is used for judging whether to send the voice packet according to the weight value;
the first resetting unit is used for resetting the weight value of the sender in the voice candidate list according to a preset proportion when a preset period is reset;
the first processing unit is used for judging whether the corresponding weight value after the sender is reset is smaller than a first threshold value or not, and removing the sender from the voice candidate list when the weight value of the sender is smaller than the first threshold value.
12. A computer-readable medium on which a computer program is stored, the program realizing the multi-person voice communication control method according to any one of claims 1 to 10 when executed by a processor.
13. An electronic device, comprising:
one or more processors;
storage means for storing one or more programs which, when executed by the one or more processors, cause the one or more processors to implement the multi-person voice communication control of any one of claims 1 to 10.
CN201910060308.8A 2019-01-22 2019-01-22 Multi-user voice communication control method and device, storage medium and electronic equipment Active CN109587176B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910060308.8A CN109587176B (en) 2019-01-22 2019-01-22 Multi-user voice communication control method and device, storage medium and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910060308.8A CN109587176B (en) 2019-01-22 2019-01-22 Multi-user voice communication control method and device, storage medium and electronic equipment

Publications (2)

Publication Number Publication Date
CN109587176A CN109587176A (en) 2019-04-05
CN109587176B true CN109587176B (en) 2021-08-10

Family

ID=65917737

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910060308.8A Active CN109587176B (en) 2019-01-22 2019-01-22 Multi-user voice communication control method and device, storage medium and electronic equipment

Country Status (1)

Country Link
CN (1) CN109587176B (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8036899B2 (en) * 2006-10-20 2011-10-11 Tal Sobol-Shikler Speech affect editing systems
CN103384235A (en) * 2012-05-04 2013-11-06 腾讯科技(深圳)有限公司 Method, server and system used for data presentation during conversation of multiple persons
CN106445654A (en) * 2016-08-31 2017-02-22 北京康力优蓝机器人科技有限公司 Method and device for determining response priorities of control commands
CN107808668A (en) * 2017-09-14 2018-03-16 成都晓懋科技有限公司 A kind of control method of smart home
CN108259618A (en) * 2018-01-30 2018-07-06 北京泰尔英福网络科技有限责任公司 The data interactive processing method and device of a kind of synchronization
CN109151565A (en) * 2018-09-04 2019-01-04 北京达佳互联信息技术有限公司 Play method, apparatus, electronic equipment and the storage medium of voice

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170034707A1 (en) * 2015-07-27 2017-02-02 Qualcomm Incorporated Intelligent dynamic frequency selection techniques

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8036899B2 (en) * 2006-10-20 2011-10-11 Tal Sobol-Shikler Speech affect editing systems
CN103384235A (en) * 2012-05-04 2013-11-06 腾讯科技(深圳)有限公司 Method, server and system used for data presentation during conversation of multiple persons
CN106445654A (en) * 2016-08-31 2017-02-22 北京康力优蓝机器人科技有限公司 Method and device for determining response priorities of control commands
CN107808668A (en) * 2017-09-14 2018-03-16 成都晓懋科技有限公司 A kind of control method of smart home
CN108259618A (en) * 2018-01-30 2018-07-06 北京泰尔英福网络科技有限责任公司 The data interactive processing method and device of a kind of synchronization
CN109151565A (en) * 2018-09-04 2019-01-04 北京达佳互联信息技术有限公司 Play method, apparatus, electronic equipment and the storage medium of voice

Also Published As

Publication number Publication date
CN109587176A (en) 2019-04-05

Similar Documents

Publication Publication Date Title
CN111773667B (en) Live game interaction method and device, computer readable medium and electronic equipment
US20200016495A1 (en) System and method for enhancing participation in online multiplayer sessions
CN111265886B (en) Game team forming method and device, electronic equipment and storage medium
CN110166791B (en) Connection establishing method, device, equipment and storage medium
US11185781B2 (en) Cognitive user experience optimization
CN110070878B (en) Decoding method of audio code stream and electronic equipment
CN111760295A (en) Information processing method and device, computer readable medium and electronic equipment
CN113157418A (en) Server resource allocation method and device, storage medium and electronic equipment
CN110517692A (en) Hot word audio recognition method and device
CN109033285A (en) Information-pushing method and device
CN111276152A (en) Audio processing method, terminal and server
CN112337101A (en) Live broadcast-based data interaction method and device, electronic equipment and readable medium
CN109939436A (en) Game video-recording and playback method, apparatus, computer storage medium and electronic equipment
CN109701278A (en) Game teaching method, device, equipment and storage medium
CN108235075A (en) Video quality grade matching process, computer readable storage medium and terminal
CN109587176B (en) Multi-user voice communication control method and device, storage medium and electronic equipment
CN109499070A (en) Download management method, device and storage medium
CN117453396A (en) Task data processing method and device based on edge calculation and electronic equipment
CN108854062B (en) A kind of voice-enabled chat module of moving game
CN114422844B (en) Barrage material generation method, recommendation method, device, equipment, medium and product
CN110267051A (en) A kind of method and device of data processing
CN110544480B (en) Voice recognition resource switching method and device
CN110251943B (en) Game player matching method, device, equipment and storage medium
CN107424620B (en) Audio decoding method and device
CN113230661A (en) Data synchronization method and device, computer readable medium and electronic equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant