Language Communication in a Virtual World

The method automatically adjusts communication modes in virtual worlds based on voice intensity and user context, ensuring private conversations and improving communication accuracy and realism.

JP2025518191AActive Publication Date: 2025-06-12QUALCOMM INC
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2024570536
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-06-10
Filing Date
2023-03-29
Publication Date
2025-06-12
Estimated Expiration
2043-03-29

AI Technical Summary

Technical Problem

In virtual worlds, users face challenges in maintaining private conversations as their voice data can be inadvertently heard by multiple avatars, even if they do not intend to share it with them.

Method used

A method that automatically switches between unicast, multicast, and broadcast communication in a virtual world based on factors such as voice data intensity, avatar position, proximity, and user intent, ensuring that voice data is only communicated to intended recipients.

Benefits of technology

This solution enhances communication privacy in virtual worlds by accurately determining the intended audience for voice data, reducing interference with other users and providing a more realistic communication experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025518191000001_ABST
    Figure 2025518191000001_ABST
Patent Text Reader

Abstract

Some aspects of the present disclosure present a method for providing communication in a virtual world. The method generally includes receiving voice data of a user corresponding to an avatar in the virtual world via one or more microphones, selecting at least one device from a plurality of other devices associated with a plurality of other avatars in the virtual world based at least in part on the intensity of the user's voice data, and communicating the voice data to the selected at least one device.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Cross - reference to Related Applications

[0001] This application claims the benefit and priority of U.S. Patent Application No. 17 / 806,422, filed on June 10, 2022, which is hereby incorporated by reference in its entirety.

[0002] Field of Disclosure

[0002] Aspects of the present disclosure relate to techniques for communicating in a virtual world.

Background Art

[0003] Description of Related Art

[0003] The term "metaverse" is widely used to describe a fully immersive 3D virtual world that includes virtual spaces represented by different avatars for users. In this way, users can interact socially and / or economically with others using software agents within cyberspace via their respective avatars. The virtual spaces within the metaverse are constructed to represent the real world, but in some cases, they are not accompanied by the physical limitations of the real world. In metaverse applications such as Second Life (registered trademark), users can connect, play, work, fly, teleport, communicate, and interact with other avatars, for example, via their own avatars.

[0004]

[0004] Similar to the real world, interactions between avatars in the metaverse can include both verbal and non-verbal communication. Non-verbal communication can include, for example, sending messages through an avatar's eye contact, facial expressions, gestures, postures, and / or body language. On the other hand, verbal communication can be achieved through speech to convey messages. Specifically, one or more microphones can capture the voice data of a user corresponding to an avatar in the metaverse and play this sound within the metaverse to communicate with other avatars. Unfortunately, the speech of a user played within the metaverse may be heard by multiple avatars even if the user does not intend for the speech to be heard by multiple avatars.

[0005]

[0005] For example, a user corresponding to a first avatar in the metaverse may wish to have a private conversation with a second avatar in the metaverse. The first avatar and the second avatar may be at a location with a plurality of other avatars. Thus, when the first avatar starts talking to the second avatar, not only can the second avatar hear what the first avatar is saying, but other nearby avatars can also hear it. This can be true even if the first avatar is whispering to the second avatar. In some cases, the speech directed at the second avatar may include private information and / or confidential information that the first avatar does not wish to be shared with other avatars. In some cases, the speech directed at the second avatar but heard by other avatars may interfere with other avatars who are not communicating with the first avatar.

[0006]

[0006] In some cases, in order to enable private communication between a first avatar and a second avatar, the first avatar and the second avatar can choose to communicate in a private mode. Such private mode conversations may require user selection prior to such conversations. Since a selection may not be required in the real world to communicate privately with another user, the communication selection by the user may not mimic the real world experience of a user who desires to have a private conversation with another user.

Summary of the Invention

[0007]

[0007] In the following, a simplified summary of such aspects is presented to provide a basic understanding of one or more aspects. This summary is not an extensive overview of all contemplated aspects, nor does it identify all important elements of all aspects, nor does it delimit the scope of any or all aspects. Its sole purpose is to present some concepts of one or more aspects in a simplified form as an introduction to the more detailed description that follows.

[0008]

[0008] In some aspects, a method of providing communication in a virtual world is disclosed. The method includes receiving voice data of a user corresponding to an avatar within the virtual world via one or more microphones, selecting at least one device from a plurality of other devices associated with a plurality of other avatars within the virtual world based at least in part on the intensity of the user's voice data, and communicating the voice data to the selected at least one device.

[0009]

[0009] Another aspect provides an apparatus, a non-transitory computer-readable medium comprising instructions for causing the apparatus to execute the methods described above and elsewhere in this specification when executed by a processor of the apparatus, the computer-readable medium being operable, configured, or adapted to execute the methods described above and elsewhere in this specification, a computer program product embodied on a computer-readable storage medium comprising code for executing the methods described above and elsewhere in this specification, and / or an apparatus comprising means for executing the methods described above and elsewhere in this specification. By way of example, the apparatus may comprise a processing system, a device having the processing system, or a processing system cooperating via one or more networks.

Brief Description of the Drawings

[0010]

[0010] The following description and the accompanying drawings describe some features for illustrative purposes.

Figure 1

[0011] FIG. 1 is a block diagram showing an exemplary computer network system according to some aspects of the present disclosure.

Figure 2

[0012] FIG. 2 is a block diagram showing components of an exemplary computing device according to some aspects of the present disclosure.

Figure 3

[0013] FIG. 3 is a workflow showing exemplary operations for providing communication in a virtual world according to some aspects of the present disclosure.

Figure 4

[0014] FIG. 4 shows an exemplary group communication scenario between multiple avatars according to some aspects of the present disclosure.

Figure 5

[0015] FIG. 5 shows an exemplary private communication scenario between two avatars according to some aspects of the present disclosure.

Figure 6

[0016] FIG. 6 is a flowchart showing exemplary operations for providing communication in a virtual world according to some aspects of the present disclosure.

Mode for Carrying Out the Invention

[0011]

[0017] The present disclosure provides a technique for providing communication in a virtual world, and more specifically, provides a technique for automatically switching between unicast communication, multicast communication, and / or broadcast communication with other avatars in the virtual world. As used herein, automatic switching may refer to switching between unicast communication, multicast communication, and / or broadcast communication with little or no direct human control or operation.

[0012]

[0018] Unicast communication can involve communication from one device associated with an avatar to another device associated with another avatar within the virtual world. Multicast communication can involve communication from one device associated with an avatar to many, but not all, of the devices associated with other avatars within the virtual world. Broadcast communication can involve communication from one device associated with an avatar to all devices, or to more devices within the virtual world than multicast communication. For example, a private conversation between two avatars within the virtual world may represent a unicast communication scenario, a work meeting between six avatars may represent a multicast communication scenario, and a wireless communication to a large number (or all) of avatars within the virtual world may represent a broadcast communication scenario.

[0013]

[0019] Today, in a virtual world, in order to change between private communication (e.g., unicast communication), smaller group communication (e.g., multicast communication), and / or larger group communication (e.g., broadcast communication), a user of an avatar in the virtual world may need to manually select a communication mode, and in some cases, may need to manually select one or more avatars that the user desires to communicate with using this selected communication mode. For example, a user in a classroom of 20 avatars may wish to speak only to an adjacent avatar sitting next to the user's avatar in the virtual world. In order to communicate privately with the adjacent avatar so that only the adjacent avatar can receive the user's verbal communication, the user may need to manually select the private communication mode and further select the adjacent avatar as the avatar with which the user desires to communicate. After such a selection, the user can communicate with the adjacent avatar. If the user no longer wishes to communicate only with the adjacent avatar and instead wishes to speak to all 20 avatars sitting in the classroom, the user can change their communication mode again. Therefore, considering that no selection in the real world is required for a user to communicate privately and / or publicly with other users, communication in the virtual world may not mimic communication in the real world.

[0014]

[0020] Accordingly, aspects of the present disclosure provide techniques for automatically switching between unicast communication, multicast communication, and / or broadcast communication in a virtual world based on one or more factors. For example, in response to capturing voice data of a user corresponding to an avatar within the virtual world, one or more devices associated with other avatars within the virtual world can be automatically selected to receive the voice data. The number of devices (corresponding to other avatars) selected, and in some cases, specifically which devices are selected, can be based on (1) the strength of the user's voice data, (2) the position of the user's avatar within the virtual world, (3) the proximity of the user's avatar to other avatars within the virtual world, (4) the orientation of the user's head, (5) the orientation of the user's avatar relative to other avatars within the virtual world, (6) the position of the user's eyes, (7) the avatar type selected by the user, and / or (8) the communication model selected by the user. As a result, language communication in the virtual world can more accurately mimic communication in the real world. Additionally, communication privacy can be enhanced while reducing interference to other users when private communication is desired.

[0015]

[0021] Various aspects of a system, apparatus, computer program product, and method are further described below with respect to image processing. However, the present disclosure can be embodied in many different forms and should not be construed as limited to any particular structure or function presented throughout the present disclosure. Rather, these aspects are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art. Based on the teachings herein, it should be understood by those skilled in the art that the scope of the present disclosure, whether implemented independently of other aspects of the present disclosure or in combination with other aspects of the present disclosure, encompasses any aspect of the system, apparatus, computer program product, and method disclosed herein. For example, an apparatus can be implemented or a method can be practiced using any number of the aspects described herein. Further, the scope of the present disclosure is intended to cover such apparatus or methods implemented using other structures, functions, or a combination of structures and functions in addition to or other than the various aspects of the present disclosure described herein. Any aspect disclosed herein can be embodied by one or more elements of a claim.

[0016]

[0022] Although various aspects are described herein, many variations and substitutions of these aspects fall within the scope of the present disclosure. Some potential benefits and advantages of aspects of the present disclosure are described, but the scope of the present disclosure is not limited to particular benefits, uses, or purposes. Rather, aspects of the present disclosure are intended to be widely applicable to different graphics technologies, system configurations, etc., some of which are shown by way of example in the figures and the following description. The detailed description and drawings are illustrative only and not limiting, and the scope of the present disclosure is defined by the appended claims and their equivalents.

[0017]

[0023] Some aspects are presented with reference to various apparatuses and methods. These apparatuses and methods are described in the following detailed description and are illustrated in the accompanying drawings by various blocks, components, circuits, processes, algorithms, etc. (collectively referred to as "elements"). These elements can be implemented using electronic hardware, computer software, or any combination thereof. Whether such elements are implemented as hardware or as software depends on the specific application and the design constraints imposed on the overall system.

[0018]

[0024] As an example, an element, or any part of an element, or any combination of elements, may be implemented as a "processing system" (which may also be referred to as a processing unit) that includes one or more processors. Examples of processors include microprocessors, microcontrollers, graphics processing units (GPUs), general-purpose GPUs, central processing units (CPUs), application processors, digital signal processors (DSPs), reduced instruction set computing (RISC) processors, systems-on-chip (SOCs), baseband processors, application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), programmable logic devices (PLDs), state machines, gate logic, discrete hardware circuits, and other suitable hardware configured to perform the various functions described throughout this disclosure. One or more processors within the processing system can execute software. Software can be broadly interpreted to mean instructions, instruction sets, code, code segments, program code, programs, subprograms, software components, applications, software applications, software packages, routines, subroutines, objects, executable files, execution threads, procedures, functions, etc., regardless of whether it is called software, firmware, middleware, microcode, hardware description language, or otherwise. The term application may refer to software. As described herein, one or more techniques may refer to an application, i.e., software configured to perform one or more functions.In such examples, the application can be stored in memory, such as the processor's on-chip memory, system memory, or any other memory. Hardware described herein, such as a processor, can be configured to execute the application. For example, an application, when executed by hardware, may be described as including code that causes the hardware to execute one or more techniques described herein. As an example, the hardware can access the code from memory and execute the code accessed from memory to execute one or more techniques described herein. In some examples, components are identified in the present disclosure. In such examples, the components can be hardware, software, or a combination thereof. The components can be separate components or sub-components of a single component.

[0019]

[0025] Thus, in one or more examples described herein, the functions described can be implemented in hardware, software, or any combination thereof. When implemented in software, the functions can be stored or encoded on a computer-readable medium as one or more instructions or code. A computer-readable medium includes a computer storage medium. The storage medium can be any available medium that can be accessed by a computer. By way of example and not limitation, such computer-readable media can comprise random access memory (RAM), read-only memory (ROM), electrically erasable programmable ROM (EEPROM (registered trademark)), optical disk storage, magnetic disk storage, other magnetic storage devices, combinations of the above types of computer-readable media, or any other medium that can be used to store computer-executable code in the form of instructions or data structures that can be accessed by a computer.

[0020]

[0026] FIG. 1 is a block diagram showing an exemplary computer network system 100 configured to implement one or more techniques of the present disclosure. The computer network system 100 includes computing devices 104(1), 104(2), and 104(3) (collectively referred to as computing devices 104 and individually referred to herein as computing device 104), a virtual world server 102, and a network 106. Although FIG. 1 shows three computing devices 104 connected to the virtual world server 102, it should be noted that the number of computing devices 104 connected to the virtual world server 102 may be different from that shown.

[0021]

[0027] The computing device 104 manages the interface between the system user and the virtual world server 102. The computing device 104 can be connected to the virtual world server 102 via the network 106. Although some aspects are described with respect to the computing device 104 connected to the virtual world server 102 via the network 106, in some other aspects, the computing device 104 can be directly connected to the virtual world server 102 via a backplane or a system bus.

[0022]

[0028] Computing device 104 may refer to any device, apparatus, or system configured to execute one or more of the techniques described herein. For example, the device may be a server, base station, user equipment, client device, station, access point, computer, such as a personal computer, desktop computer, laptop computer, tablet computer, computer workstation, or mainframe computer, end product, apparatus, telephone, smartphone, server, video game platform or console, handheld device, such as a portable video game device or personal digital assistant (PDA), wearable computing device, such as a smartwatch, augmented reality device, or virtual reality device, non-wearable device, display or display device, television, television set-top box, intermediate network device, digital media player, video streaming device, content streaming device, in-vehicle computer, any mobile device, any device configured to generate graphical content, or any device configured to execute one or more of the techniques described herein. In some aspects, computing device 104 can include one or more microphones for capturing voice data of a user using computing device 104.

[0023]

[0029] Network 106 may be an external network. Network 106 may be a layer 3 (L3) physical network. Network 106 may be a public network, a wide area network (WAN) such as the Internet, a direct link, a local area network (LAN), another type of network, or a combination thereof.

[0024]

[0030] The virtual world server 102 hosts a simulated metaverse for a plurality of computing devices 104. In some embodiments, the virtual world server 102 includes an array of servers. In some embodiments, a designated area of the metaverse is simulated by a single server instance, and multiple server instances are executed on a single virtual world server 102.

[0025]

[0031] In some embodiments, the virtual world server 102 includes a plurality of simulation servers dedicated to physical simulation (e.g., reproduction of real-world events) to manage interactions and handle collisions between characters and objects within the metaverse. In some embodiments, the virtual world server 102 includes, separate from the plurality of simulation servers, a plurality of storage servers dedicated to storing data related to objects and / or avatars within the metaverse. The data stored in the plurality of storage servers can include object shapes, avatar shapes and appearances, audio clips, metaverse-related scripts, and other metaverse-related objects.

[0026]

[0032] Figure 2 is a block diagram showing an exemplary computing device 104 configured to implement one or more techniques of the present disclosure. The computing device 104 can include one or more components or circuits for performing various functions described herein. In some embodiments, one or more components of the computing device 104 may be components of a system on a chip (SOC) or an integrated circuit (IC). The computing device 104 can include one or more components configured to execute one or more techniques of the present disclosure. In the illustrated embodiment, the computing device 104 can include one or more displays 202, a graphical processing unit (GPU) 204, a central processing unit (CPU) 210, a system memory 206, and a communication interface 212. In some aspects, the communication interface 212 includes a transceiver 214 (e.g., including a receiver 216 and a transmitter 218) for communicating with the virtual world server 102 via the network 106.

[0027]

[0033] In some aspects, the components of the computing device 104 are communicatively connected to each other by one or more buses 150. Although some connections are shown between the components of FIG. 1, it should be noted that the connections between the components may be different from those shown. For example, all components can be coupled to a shared bus 150, different components can be coupled to different buses, and so on. In some aspects, one or more buses 150 facilitate communication related to software associated with the virtual world server 102 that executes on the computing device 104, including processing virtual world application commands and storing, transmitting, and receiving data packets associated with virtual world application software.

[0028]

[0034] References to display 202 may refer to one or more displays 202. For example, display 202 can include a single display or multiple displays. GPU 204 can be configured to perform graphics processing. One or more displays 202 can be configured to display or otherwise present frames processed by GPU 204 and / or CPU 210. In some embodiments, one or more displays 202 can include one or more of a liquid crystal display (LCD), a plasma display, an organic light emitting diode (OLED) display, a projection display device, a metaverse display device, a head-mounted display, or any other type of display device. In some aspects, display 202 is configured to convey a visual representation of the metaverse.

[0029]

[0035] Memories external to GPU 204 and CPU 210, such as system memory 206 (described in more detail below), may be accessible to GPU 204 and CPU 210. For example, GPU 204 and CPU 210 can be configured to read from and / or write to an external memory such as system memory 206. GPU 204 and CPU 210 can be communicatively coupled to system memory 206 via a bus. In some embodiments, GPU 204 and CPU 210 can be communicatively coupled to each other via a bus or different connections.

[0030]

[0036] The GPU 204 may be a general-purpose GPU or any other processing unit configured to perform graphics processing. In some embodiments, the GPU 204 may be integrated into the motherboard of the computing device 104. In other embodiments, the GPU 204 may be present on a graphics card installed in a port within the motherboard of the computing device 104, or alternatively, may be integrated within a peripheral device configured to interoperate with the computing device 104. The GPU 204 can include one or more processors, such as one or more microprocessors, GPUs, application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), arithmetic logic units (ALUs), digital signal processors (DSPs), discrete logic, software, hardware, firmware, other equivalent integrated logic circuits or discrete logic circuits, or any combination thereof. When the technology is implemented partially in software, the GPU 204 can store instructions for the software in a suitable non-transitory computer-readable storage medium, such as the system memory 206, and can execute the instructions in hardware using one or more processors to perform the technology of the present disclosure. Any of the above, including hardware, software, combinations of hardware and software, etc., can be considered to be one or more processors.

[0031]

[0037] The CPU 210 may be any processing unit configured to send instructions to the GPU 204 and execute general computing processes (e.g., non-graphical processing). In some embodiments, the CPU 210 may be incorporated into the motherboard of the computing device 104. The CPU 210 may include one or more processors, such as one or more microprocessors, ASICs, FPGAs, ALUs, DSPs, video processors, discrete logic, software, hardware, firmware, other equivalent integrated logic circuits or discrete logic circuits, or any combination thereof. When the technology is implemented partially in software, the CPU 210 can store instructions for the software in a suitable non-transitory computer-readable storage medium, such as the system memory 206, and can execute the instructions in hardware using one or more processors to implement the technology of the present disclosure. Any of the above, including hardware, software, combinations of hardware and software, etc., may be regarded as one or more processors.

[0032]

[0038] The system memory 206 can include one or more volatile or non-volatile memories or storage devices. In some embodiments, the system memory 206 can include RAM, static RAM (SRAM), dynamic RAM (DRAM), erasable programmable ROM (EPROM), EEPROM, flash memory, magnetic data media or optical storage media, or any other type of memory.

[0033]

[0039] According to some embodiments, the system memory 206 may be a non-transitory storage medium. The term "non-transitory" may indicate that the storage medium is not embodied in a carrier wave or a propagated signal. However, the term "non-transitory" should not be construed to mean that the system memory 206 is non-removable or that its contents are static. As one example, the system memory 206 may be removed from the computing device 104 and moved to another device. As another example, the system memory 206 may be non-removable from the computing device 104.

[0034]

[0040] In some aspects, the system memory 206 includes a virtual world client 208. The virtual world client 208 is stored in the system memory 206 as computer-readable instructions. The virtual world client 208 can include processes and functions that are executed on the CPU 210 within the computing device 104. FIG. 2 shows the virtual world client 208 stored in the system memory 206, but note that in some other embodiments, the virtual world client 208 can be stored in a storage device such as within the computing device 104.

[0035]

[0041] In some aspects, the virtual world client 208 is a client program that is executed on the computing device 104. The virtual world client 208 can enable a user of the computing device 104 to connect to the virtual world server 102 via the network 106. The virtual world client 208 can be further configured to enable a user of the computing device 104 to interact with other users on other computing devices 104 that are also connected to the virtual world server 102.

[0036]

[0042] Computing device 104 can communicate with virtual world server 102 connected by network 106 using communication interface 212. Communication interface 212 can include receiver 216 and transmitter 218. Receiver 216 can be configured to perform any receiving function described herein with respect to computing device 104. Additionally, receiver 216 can be configured to receive information from another device or virtual world server 102. Transmitter 218 can be configured to perform any transmitting function described herein with respect to computing device 104. For example, transmitter 218 can be configured to transmit information to another device or virtual world server 102. Receiver 216 and transmitter 218 may be combined in transceiver 214. In such an embodiment, transceiver 214 can be configured to perform any receiving function and / or transmitting function described herein with respect to computing device 104.

[0037]

[0043] The processes described herein can be described as being performed by specific hardware components (e.g., GPUs), but in further embodiments, other hardware components (e.g., CPUs) can be used to perform them in accordance with the disclosed embodiments.

[0038]

[0044] Accordingly, aspects of the present disclosure provide techniques for automatically switching between unicast communication, multicast communication, and / or broadcast communication in a virtual world based on one or more factors. Specifically, the number of devices automatically selected to receive communication from a user in a virtual world can be based on one or more factors including: (1) the strength of the user's voice data, (2) the position of the user's avatar within the virtual world, (3) the proximity of the user's avatar to other avatars within the virtual world, (4) the orientation of the user's head, (5) the orientation of the user's avatar relative to other avatars within the virtual world, (6) the position of the user's eyes, (7) the avatar type selected by the user, and / or (8) the communication model selected by the user. The selection of one or more devices can be described in more detail with respect to FIG. 3.

[0039]

[0045] FIG. 3 is a workflow showing an exemplary operation 300 for providing communication in a virtual world according to some aspects of the present disclosure. The operation 300 of FIG. 3 can be performed, for example, by components of the computer network system 100 shown in FIG. 1. The operation 300 can be used to select at least one device from a plurality of devices associated with a plurality of avatars within the virtual world to receive communication from a user (e.g., also represented as an avatar within the virtual world). In other words, the operation 300 can be used to automatically switch between unicast communication, multicast communication, and / or broadcast communication for the user.

[0040]

[0046] Operation 300 is initiated, in operation 302, by a computing device such as computing device 104 shown in FIGS. 1 and 2, and receives voice data of a user corresponding to an avatar in a virtual world via one or more microphones on the computing device 104. In some aspects, a voice activity detection (VAD) algorithm can be used to detect whether a signal received by one or more microphones contains speech (e.g., voice data) from the user. In some aspects, the VAD algorithm can periodically (e.g., every 20 milliseconds (ms)) detect whether a signal captured by one or more microphones contains voice data. An exemplary VAD function can be included in Qualcomm Fluence (trademark) Pro voice input technology commercially available from Qualcomm, Inc. (San Diego, California).

[0041]

[0047] In operation 304, the computing device 104 determines the intensity of the user's voice data. To determine the intensity of the voice, voice input technology can be implemented in the computing device 104. An exemplary voice input technology for determining the intensity of the voice may be Qualcomm Fluence (trademark) Pro voice input technology.

[0042]

[0048] Measuring the intensity of sound can be useful in determining the dynamics of a user's voice. For example, the intensity of sound can be correlated with the perception of the loudness of the voice. Thus, when the intensity of the sound in the voice data is high, the user can be considered to be speaking loudly, and when the intensity of the sound in the voice data is low, the user can be considered to be speaking more quietly. In some embodiments, the fact that the user is speaking loudly can indicate that the user intends to speak publicly (e.g., to a group of avatars), and the fact that the user is speaking more quietly can indicate that the user intends to speak privately (e.g., to only one other avatar). Therefore, the intensity of the voice data measured in operation 304 can help determine whether the user intends to speak to a single avatar in the virtual world or to a larger group of avatars, thereby eliminating the need for user input indicating such intent.

[0043]

[0049] In operation 306, the intensity of the voice data is compared to a first threshold. The first threshold can indicate the intensity level of the voice that must be exceeded to determine that the user intends to speak to two or more avatars. In other words, the first threshold may be the intensity boundary between communication with one avatar and communication with two or more avatars. For example, if the intensity of the voice data does not meet the first threshold, the user may be intending to communicate with only one avatar. On the other hand, if the intensity of the voice data meets the first threshold, the user may be intending to communicate with two or more avatars.

[0044]

[0050] In some embodiments, the first threshold is the same for multiple users. In some embodiments, the first threshold is configured for each user and / or learned for each user based on the intensity of voice data received over time for the user via one or more microphones. Thus, the first threshold for a first user may be different from the first threshold for a second user.

[0045]

[0051] In some embodiments, determining whether to communicate with one avatar or with two or more avatars can be based solely on the intensity of the voice data determined in operation 304. Thus, in such embodiments, after determining whether the intensity of the voice data is greater than a first threshold in operation 306, one device or two or more devices associated with different avatars can be selected to receive the voice data.

[0046]

[0052] However, in some other embodiments, other factors can be considered when determining whether the user actually intends to communicate with one avatar or two or more avatars. For example, in operation 306, if it is determined that the intensity of the voice data is not greater than (e.g., is less than) the first threshold and it is assumed that the user intends to speak privately to only one other avatar, any optional other factors can be considered to confirm this assumption.

[0047]

[0053] In some embodiments, the other factors can include (1) the position of the user's avatar within the virtual world, (2) the proximity of the user's avatar to other avatars within the virtual world, (3) the orientation of the user's head, (4) the orientation of the user's avatar relative to other avatars within the virtual world, and / or (5) the position of the user's eyes. Thus, in operation 308, various information can be collected by the computing device 104, and the information includes at least one factor.

[0048]

[0054] In some embodiments, the position of a user's avatar within a virtual world can be useful in determining whether the user intends to communicate with one avatar or with two or more avatars. For example, when the user's avatar is located in a small room within an office in the virtual world, it can be assumed that the user intends to communicate with only one other avatar, while when the user's avatar is located in a classroom in the virtual world, it can be assumed that the user intends to communicate with two or more avatars.

[0049]

[0055] In some embodiments, the proximity of a user's avatar to other avatars within a virtual world can be useful in determining whether the user intends to communicate with one avatar or with two or more avatars. Specifically, an avatar determined to be in close proximity to the user's avatar may be an avatar that the user intends to communicate with. Alternatively, an avatar determined to be at a greater distance from the user's avatar may not be an avatar that the user intends to communicate with. For example, in a park with five avatars including the user's avatar, one avatar may be standing near (e.g., a short distance away from) the user's avatar within a first section of the park, and three other avatars may be standing within a second section of the park. The second section of the park may be on the opposite side of the first section of the park. Thus, the computing device 104 can determine that the user's avatar is in proximity to one avatar within the first section of the park and not in proximity to the other three avatars within the second section of the park. Based on this determination, it can be assumed that the user intends to communicate with only one avatar, e.g., the avatar within the first section of the park, as opposed to multiple avatars (e.g., does not intend to communicate with the three other avatars within the second section of the park).

[0050]

[0056] In some embodiments, the position of each avatar can be determined by calculating the coordinates of each avatar within the virtual world. The coordinates of each avatar may be re-determined periodically or aperiodically to account for the movement of each avatar within the virtual world (even if the avatar remains in a fixed position). The proximity of the user's avatar to other avatars within the virtual world can be determined based on such coordinates.

[0051]

[0057] In some embodiments, the orientation of the user's head can be useful in determining whether the user intends to communicate with one avatar or with more than one avatar. Further, in some embodiments, the orientation of the user's head can be useful in determining which avatar(s) the user intends to communicate with. For example, if the user's head is directed towards the position of another avatar within the virtual world, the user may intend to communicate with this other avatar. As another example, if the user is surrounded by multiple avatars and the user is speaking without turning the user's head towards a particular avatar in the room, the user may intend to communicate with more than one avatar (e.g., more than one avatar in the room). As another example, if the user's avatar is sitting next to two avatars (e.g., one avatar is to the left of the user's avatar and one avatar is to the right of the user's avatar) and the orientation of the user's head is changing from left to right, the user may intend to switch the user's communication from the avatar on the user's left to the avatar on the user's right.

[0052]

[0058] In some embodiments, the orientation of the user's head can be determined using an inertial measurement unit (IMU). In some embodiments, computing device 104 can include an IMU. The IMU represents a set of measurement tools. When installed in computing device 104, the measurement tools of the IMU can capture data about the movement of computing device 104. The IMU may include sensors such as an accelerometer, a gyroscope, and a magnetometer. Thus, the IMU may be capable of measuring various factors including velocity, direction, acceleration, specific forces, angular velocity, and / or the magnetic field surrounding computing device 104. In some embodiments, the data collected by the IMU can include the user's head movement. The user's head movement can be used to identify the direction of the user's head when voice data is captured for the user (e.g., indicating in which direction the user intends for speech to be communicated). In some embodiments, the IMU data can include three degrees of freedom (3DoF) data that includes information about the rotational movement of computing device 104 (e.g., the rotational movement of the user's head if computing device 104 is a headset). In some embodiments, the IMU data can include field of view (FoV) data. The FoV is the extent of the observable virtual world that can be seen through a human eye at any given time. The FoV data can change as the user rotates and / or changes the orientation of the user's head.

[0053]

[0059] In some embodiments, the orientation of the user's avatar relative to other avatars within the virtual world can be useful in determining whether the user intends to communicate with one avatar or with two or more avatars. For example, if the user is oriented towards another avatar within the virtual world and the other avatar is oriented towards the user's avatar, the user may intend to communicate with this other avatar. As another example, if the user is not oriented towards a specific avatar but multiple avatars are oriented towards the user's avatar (e.g., at different angles), the user may intend to communicate with all of these other avatars that are oriented towards the user's avatar.

[0054]

[0060] In some embodiments, the position of the user's eyes can be useful in determining whether the user intends to communicate with one avatar or with two or more avatars. Generally, eye contact is maintained between the avatars involved in the conversation. Thus, the position of the user's eyes can be useful in identifying with whom the user intends to communicate.

[0055]

[0061] In some embodiments, at least one factor determined in operation 308 (described in detail above) can be used to confirm whether the user actually intends to communicate with one avatar (e.g., assuming that in operation 306 it was determined that the voice intensity is below a first threshold).

[0056]

[0062] In some other embodiments, other factors than the information collected in operation 308 can be considered when determining whether the user actually intends to communicate with one avatar or intends to communicate with more than one avatar. For example, in operation 306, if it is determined that the intensity of the voice data is not greater than a first threshold value (e.g., less than the first threshold value) and it is assumed that the user intends to privately talk to only one other avatar, to confirm this assumption, optional other factors can be considered (e.g., in addition to, or instead of, the information collected in operation 308).

[0057]

[0063] In some embodiments, the other factors can include (1) the communication mode selected by the user, and / or (2) the avatar type selected by the user. Thus, in some cases, in operation 310, the communication mode selected by the user can be determined. Further, in some cases, in operation 312, the avatar type of the user can be determined.

[0058]

[0064] In other words, the user input can be considered when determining whether the user intends to communicate with one or more avatars. As described herein, in some cases, the user can choose to communicate in a private mode with another avatar within the virtual world. The user can, in some cases, select the private mode and / or a specific avatar with whom the user wants to talk privately via gesture control. Thus, this selection can be considered when determining whether the communication should be unicast, multicast, or broadcast to other avatar(s) within the virtual world.

[0059]

[0065] In some embodiments, an avatar selected by the user can also be considered. For example, in some cases, the user can select an avatar having a microphone. Microphones are used in many applications such as concert halls, public events, etc. to amplify the voice of the speaker. Thus, when the user selects an avatar having a microphone, the user may intend to emphasize the user's voice so as to be able to communicate with a larger crowd. Therefore, the user's selection of an avatar having a microphone can indicate that the user does not intend to speak privately (e.g., to only one other avatar), but instead intends to communicate with multiple avatars within the virtual world.

[0060]

[0066] In operation 314, using at least one factor determined in operation 308, the communication mode determined in operation 310, and / or the avatar type determined in operation 312, it can be verified whether the user actually intends to communicate with only one avatar (e.g., assuming that the voice intensity is determined to be below the first threshold in operation 306). If it is verified that the user is communicating with only one other avatar within the virtual world, in operation 316, the user's voice data is communicated to the device of this other avatar. The voice data can be communicated to the device of this one other avatar without communicating the voice data to the devices of other avatars within the virtual world.

[0061]

[0067] If, on the other hand, it is not confirmed that the user is communicating with only one other avatar in the virtual world, in operation 324, using at least one factor determined in operation 308, the communication mode determined in operation 310, and / or the avatar type determined in operation 312, it is possible to confirm whether the user intends to communicate with a limited number of avatars or a larger audience within the group. In some cases, it may be determined that the user intends to communicate with a limited number of avatars within the group. Thus, in operation 326, the user's voice data is communicated to the devices of the avatars within the group without communicating the voice data to the devices of other avatars not within the group in the virtual world. In some cases, it can be determined that the user intends to communicate with a larger audience (e.g., a larger number of avatars). Thus, in operation 328, the user's voice data is communicated to a plurality of devices corresponding to the avatars within the larger audience (e.g., broadcast communication).

[0062]

[0068] Return to operation 306. If the intensity of the voice data (e.g., determined in operation 304) meets the first threshold, the user may intend to communicate with two or more avatars. In some aspects, determining whether to communicate with one avatar or two or more avatars can be based only on the intensity of the voice data determined in operation 304. Thus, in such an aspect, after determining in operation 306 that the intensity of the voice data is greater than the first threshold, two or more devices associated with different avatars can be selected to receive the voice data.

[0063]

[0069] However, in some other aspects, other factors can be considered when determining whether the user actually intends to communicate with more than one avatar. For example, in operation 306, if it is determined that the intensity of the voice data is greater than a first threshold and it is assumed that the user intends to speak to more than one avatar, other optional factors can be considered to confirm this assumption.

[0064]

[0070] In some aspects, the other factors can include: (1) the position of the user's avatar within the virtual world, (2) the proximity of the user's avatar to other avatars within the virtual world, (3) the orientation of the user's head, (4) the orientation of the user's avatar with respect to other avatars within the virtual world, and / or (5) the position of the user's eyes. Thus, in operation 318, various information can be collected by computing device 104, and the information includes at least one factor.

[0065]

[0071] In some aspects, the other factors can include: (1) the communication mode selected by the user, and / or (2) the avatar type selected by the user. Thus, in some cases, in operation 320, the communication mode selected by the user can be determined. Further, in some cases, in operation 322, the avatar type of the user can be determined.

[0066]

[0072] In operation 324, it can be determined whether the user intends to communicate with a limited number of avatars or a larger audience within the group, using at least one factor determined in operation 308, the communication mode determined in operation 310, and / or the avatar type determined in operation 312. In some cases, it may be determined that the user intends to communicate with a limited number of avatars within the group. Thus, in operation 326, the user's voice data is communicated to the devices of the avatars within the group without communicating the voice data to the devices of other avatars not within the group in the virtual world. In some cases, it can be determined that the user intends to communicate with a larger audience (e.g., a larger number of avatars). Thus, in operation 328, the user's voice data is communicated to a plurality of devices corresponding to avatars within the larger audience (e.g., broadcast communication).

[0067]

[0073] Although not shown in FIG. 3, in some embodiments, after determining that the intensity of the voice data is greater than (e.g., meets) a first threshold, the intensity of the voice data can be compared to a second threshold. The second threshold can indicate the intensity level of the voice that the user must exceed in order to be determined to intend to speak to a larger audience of avatars as opposed to a limited number of avatars. In other words, the second threshold may be the intensity boundary between communication with a limited number of avatars within the group and communication with a larger audience of avatars. For example, if the intensity of the voice data does not meet the second threshold, the user may intend to communicate with a limited number of avatars within the group (e.g., multicast communication). On the other hand, if the intensity of the voice data meets the second threshold, the user may intend to communicate with a larger audience of avatars (e.g., broadcast communication).

[0068]

[0074] Further, FIG. 3 shows comparing the intensity of the voice data with a first threshold to determine whether the user intends to communicate with one avatar or two or more avatars. However, in some other embodiments, without determining whether the user's voice intensity meets the first threshold, one or more other factors described herein can be used to determine whether the user intends to communicate with one avatar or two or more avatars.

[0069]

[0075] FIG. 4 shows an exemplary group communication scenario 400 among multiple avatars according to some embodiments of the present disclosure. The exemplary group communication scenario 400 can be described with respect to operation 300 of FIG. 3.

[0070]

[0076] As shown in FIG. 4, a user (referred to herein as user 402) represented by avatar 402 in a virtual world (of computing device 104) can be located in a classroom with a plurality of other avatars 404(1) - 404(10) (collectively referred to herein as other avatars 404). User 402 may desire to communicate with other avatars 404.

[0071]

[0077] According to operation 300 shown in FIG. 3, in operation 302, computing device 104 receives voice data of user 402 via one or more microphones on computing device 104. In operation 304, computing device 104 determines the intensity of the voice data of user 402. In operation 306, the intensity of the voice data is compared with a first threshold. In scenario 400, user 402 intends to speak loudly enough so that avatar 404 can hear that user 402 is speaking. Therefore, the intensity of the voice data of user 402 can satisfy (e.g., can exceed) the first threshold. Therefore, it can be assumed that user 402 is trying to communicate with more than one avatar. However, this assumption can be confirmed based on one or more other factors.

[0072]

[0078] Specifically, in operation 318, various information can be collected by computing device 104. For example, computing device 104 may determine that user 402 is in a classroom environment. Computing device 104 can identify the positions of each of user 402 and other avatars 404 within the virtual world and determine that user 402 is close to each of avatars 404. Computing device 104 can determine that user 402 is not directed at any particular avatar 404. Computing device 104 can determine that the position of user 402's eyes is changing continuously so that user 402 can make eye contact with each avatar 404 during the conversation.

[0073]

[0079] In some cases, in operation 320, computing device 104 may determine that user 402 has not selected a private communication mode. Further, in some cases, in operation 322, computing device 104 may determine that user 402 has not selected an avatar with a microphone.

[0074]

[0080] Based on one or more of the factors / information collected / judged in operation 318, operation 320, and / or operation 322, computing device 104 can determine that user 402 intends to communicate with a limited number of avatars within the group, more specifically, 10 avatars 404 in the classroom. Accordingly, computing device 104 can select 10 devices associated with 10 avatars in the virtual world and communicate the voice data from user 402 to the selected 10 devices.

[0075]

[0081] FIG. 5 shows an exemplary private communication scenario 500 between two avatars according to some aspects of the present disclosure. The exemplary private communication scenario 500 can be described with respect to operation 300 of FIG. 3.

[0076]

[0082] As shown in FIG. 5, a user (referred to herein as user 502) of (computing device 104) represented by avatar 502 in the virtual world can be located in a room with five other avatars, such as avatar 504 and other avatars 506(1)-506(4) (collectively referred to herein as other avatars 506). User 502 may desire to communicate only with avatar 504 and not with other avatars 506.

[0077]

[0083] According to operation 300 shown in FIG. 3, in operation 302, computing device 104 receives voice data of user 502 via one or more microphones on computing device 104. In operation 304, computing device 104 determines the intensity of the voice data of user 502. In operation 306, the intensity of the voice data is compared with a first threshold. In scenario 500, user 502 intends to speak loudly enough so that only avatar 504 can hear the user speaking. Thus, the intensity of the voice data of user 502 may not meet the first threshold (e.g., may be below the first threshold). Thus, it can be assumed that user 502 is trying to communicate with only one avatar. However, this assumption can be verified based on one or more other factors.

[0078]

[0084] Specifically, in operation 308, various information can be collected by computing device 104. For example, computing device 104 can determine that user 402 is in a room with sufficient accommodation capacity for, for example, 20 avatars. Computing device 104 can identify the positions of each of user 502, avatar 504, and other avatars 506 in the virtual world and determine that user 502 is closer to avatar 504 than to any one of other avatars 506. Computing device 104 may determine that user 502 is directed towards avatar 504 (e.g., the head of user 502 is directed towards avatar 504). Computing device 104 can determine that the position of the eyes of user 502 is concentrated on avatar 504 while user 502 is speaking.

[0079]

[0085] In some cases, in operation 310, computing device 104 may determine that user 502 has selected the private communication mode. Further, in some cases, in operation 322, computing device 104 may determine that user 502 has not selected an avatar with a microphone.

[0080]

[0086] Based on one or more of the factors / information collected / determined in operation 308, operation 310, and / or operation 312, computing device 104 can confirm that user 502 intends to communicate with only one avatar, more specifically avatar 504. Accordingly, computing device 104 can select the device associated with avatar 504 and communicate the voice data from user 502 to the selected device. The voice data may not be communicated to the devices associated with other avatars 506. Accordingly, the communication between user 502 and avatar 504 can remain private and does not interfere with other avatars 506.

[0081]

[0087] FIG. 6 is a flowchart showing an exemplary operation 600 for image processing according to some aspects of the present disclosure. Operation 600 can be performed, for example, by a computing device (e.g., computing device 104 of FIG. 1).

[0082]

[0088] Operation 600 begins in a first block 602 by receiving voice data of a user corresponding to an avatar within a virtual world via one or more microphones.

[0083]

[0089] Operation 600 continues in a second block 604 by selecting at least one device from a plurality of devices associated with a plurality of other avatars within the virtual world, based at least in part on the intensity of the user's voice data.

[0084]

[0090] In some embodiments, selecting at least one device is based on whether the intensity meets a first threshold. In some embodiments, when the intensity does not meet the first threshold, the at least one device is a single device among a plurality of devices. In some embodiments, when the intensity meets the first threshold, the at least one device includes a plurality of devices among the plurality of devices. The first threshold may be learned about the user based on the intensity of audio data received over time about the user via one or more microphones.

[0085]

[0091] In some embodiments, selecting at least one device is further based on whether the intensity meets a second threshold.

[0086]

[0092] In some embodiments, selecting at least one device is further based on at least one of the position of the avatar within the virtual world, the proximity of the avatar to each of a plurality of other avatars within the virtual world, the orientation of the user's head, the orientation of the avatar within the virtual world relative to each of the plurality of other avatars, and the position of the user's eyes.

[0087]

[0093] In some embodiments, selecting at least one device is further based on the avatar type of the avatar corresponding to the user.

[0088]

[0094] In some embodiments, selecting at least one device is further based on the communication mode selected by the user.

[0089]

[0095] Operation 600 continues in block 606 by communicating the audio data to the selected at least one device. The audio data can be communicated to the selected at least one device without communicating the audio data to other unselected devices from among the plurality of devices.

[0090] Exemplary clauses

[0096] In the following numbered clauses, implementation examples will be described.

[0091]

[0097] Clause 1: A method for providing communication in a virtual world, comprising receiving voice data of a user corresponding to an avatar in the virtual world via one or more microphones, selecting at least one device from a plurality of devices associated with a plurality of other avatars in the virtual world based at least in part on the intensity of the user's voice data, and communicating the voice data to the selected at least one device.

[0092]

[0098] Clause 2: The method according to clause 1, wherein the voice data is communicated to the selected at least one device without communicating the voice data to other unselected devices from the plurality of devices.

[0093]

[0099] Clause 3: The method according to clause 1 or 2, wherein selecting at least one device is based on whether the intensity meets a first threshold.

[0094]

[0100] Clause 4: The method according to clause 3, wherein when the intensity does not meet the first threshold, the at least one device is a single device among the plurality of devices.

[0095]

[0101] Clause 5: The method according to clause 4, wherein when the intensity meets the first threshold, the at least one device includes a plurality of devices among the plurality of devices.

[0096]

[0102] Clause 6: The method according to any one of clauses 3 to 5, wherein selecting at least one device is further based on whether the intensity meets a second threshold.

[0097]

[0103] Clause 7: The method according to any one of clauses 3 to 6, wherein the first threshold is learned for the user based on the intensity of voice data received over time for the user via one or more microphones.

[0098]

[0104] Clause 8: The method according to any one of Clauses 1 to 7, wherein selecting at least one device is further based on at least one of the position of the avatar in the virtual world, the proximity of the avatar to each of a plurality of other avatars in the virtual world, the orientation of the user's head, the orientation of the avatar in the virtual world with respect to each of the plurality of other avatars, or the position of the user's eyes.

[0099]

[0105] Clause 9: The method according to any one of Clauses 1 to 8, wherein selecting at least one device is further based on the avatar type of the avatar corresponding to the user.

[0100]

[0106] Clause 10: The method according to any one of Clauses 1 to 9, wherein selecting at least one device is further based on the communication mode selected by the user.

[0101]

[0107] Clause 11: An apparatus comprising a memory having executable instructions and a processor configured to execute the executable instructions to cause the apparatus to perform the method according to any one of Clauses 1 to 10.

[0102]

[0108] Clause 12: An apparatus comprising means for performing the method according to any one of Clauses 1 to 10.

[0103]

[0109] Clause 13: A non-transitory computer-readable medium comprising executable instructions that, when executed by a processor of an apparatus, cause the apparatus to perform the method according to any one of Clauses 1 to 10.

[0104]

[0110] Clause 14: A computer program product embodied on a computer-readable storage medium comprising code for performing the method according to any one of Clauses 1 to 10.

[0105] Additional Considerations

[0111] The foregoing description has been provided to enable any person skilled in the art to make and use the various aspects described herein. The examples described herein are not intended to limit the scope, applicability, or aspects of the claims. Various modifications to these aspects will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other aspects as well. For example, changes may be made to the functions and arrangements of the elements described without departing from the scope of the present disclosure. Various examples may omit, substitute, or add various procedures or components as necessary. For example, the methods described may be performed in an order different from the order described, various actions may be added, omitted, or combined. Also, the features described with respect to some examples may be combined in some other examples. For example, any number of the aspects described herein may be used to implement an apparatus or practice a method. In addition, the scope of the present disclosure is intended to include, in addition to or other than the various aspects of the present disclosure described herein, apparatus or methods practiced using other structures, functions, or combinations of structures and functions. It should be understood that any aspect of the present disclosure disclosed herein can be embodied by one or more elements of the claims.

[0106]

[0112] The various illustrative logical blocks, modules, and circuits described in connection with the present disclosure may be implemented or executed using a general-purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device (PLD), discrete gates or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general-purpose processor may be a microprocessor, but in the alternative, the processor may be any commercially available processor, controller, microcontroller, or state machine. The processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, a system-on-chip (SoC), or any other such configuration.

[0107]

[0113] As used herein, the phrase referring to an enumeration of items “at least one of” refers to any combination of those items including a single member. By way of example, “at least one of a, b, or c” is intended to include a, b, c, a-b, a-c, b-c, and a-b-c, as well as any combination having multiple of the same elements (e.g., a-a, a-a-a, a-a-b, a-a-c, a-b-b, a-c-c, b-b, b-b-b, b-b-c, c-c, and c-c-c, or any other order of a, b, and c).

[0108]

[0114] As used herein, the term "determining" encompasses a wide variety of actions. For example, "determining" may include calculating, computing, processing, deriving, investigating, looking up (e.g., looking up in a table, database, or another data structure), ascertaining, etc. Further, "determining" may include receiving (e.g., receiving information), accessing (e.g., accessing data in a memory), etc. Still further, "determining" may include solving, selecting, choosing, establishing, etc.

[0109]

[0115] The methods disclosed herein include one or more actions for achieving the methods. The actions of those methods can be interchanged with each other without departing from the scope of the claims. In other words, unless a specific order of actions is specified, the order and / or use of specific actions can be modified without departing from the scope of the claims. Furthermore, the various operations of the methods described above can be implemented by any suitable means capable of performing the corresponding functions. Those means can include, but are not limited to, circuits, application specific integrated circuits (ASICs), or processors, and can include various hardware components and / or software components (singular or plural), and / or various hardware modules and / or software modules (singular or plural).

[0110]

[0116] The following claims are not intended to be limited to the aspects shown in this specification, but rather the full scope consistent with the language of the claims should be recognized. In the claims, a reference to an element in the singular is not intended to mean "one and only one" unless expressly so stated, but rather is intended to mean "one or more." Unless otherwise expressly stated, the term "some" refers to one or more. Claim elements should not be construed under the provisions of 35 U.S.C. § 112(f) unless the element is expressly recited using the phrase "means for." All structural and functional equivalents of the elements of the various aspects described throughout this disclosure that are known or later come to be known to those of ordinary skill in the art are expressly incorporated herein by reference and are intended to be encompassed by the claims. Further, nothing disclosed herein is intended to be dedicated to the public regardless of whether such disclosure is expressly recited in the claims.

Claims

Claim 1 A method for providing communication in a virtual world, comprising: receiving, via one or more microphones, voice data of a user corresponding to an avatar within the virtual world; selecting at least one device from a plurality of devices associated with a plurality of other avatars within the virtual world, based at least in part on the intensity of the voice data of the user; communicating the voice data to the selected at least one device; and a method comprising the steps of: Claim 2 The method according to claim 1, wherein the voice data is communicated to the selected at least one device without communicating the voice data to other unselected devices from the plurality of devices. Claim 3 The method according to claim 1, wherein selecting the at least one device is based on whether the intensity meets a first threshold. Claim 4 The method according to claim 3, wherein when the intensity does not meet the first threshold, the at least one device is a single device among the plurality of devices. Claim 5 The method according to claim 4, wherein when the intensity meets the first threshold, the at least one device includes a plurality of devices among the plurality of devices. Claim 6 The method according to claim 3, wherein selecting the at least one device is further based on whether the intensity meets a second threshold. Claim 7 The method according to claim 3, wherein the first threshold is learned for the user based on the intensity of voice data received over time for the user via the one or more microphones. Claim 8 Selecting the at least one device is based at least in part on the position of the avatar within the virtual world, the proximity of the avatar to each of the plurality of other avatars within the virtual world, the orientation of the user's head, the orientation of the avatar within the virtual world relative to each of the plurality of other avatars, or the position of the user's eyes, and further based on at least one of the above; The method according to claim 1. Claim 9 The method according to claim 1, wherein selecting the at least one device is further based on the avatar type of the avatar corresponding to the user. Claim 10 The method according to claim 1, wherein selecting the at least one device is further based on a communication mode selected by the user.

11. An apparatus configured to provide communication in a virtual world, comprising: a memory comprising computer-executable instructions; a processor that executes the computer-executable instructions to cause the apparatus to: receive voice data of a user corresponding to an avatar within the virtual world via one or more microphones; select at least one device from a plurality of devices associated with a plurality of other avatars within the virtual world, based at least in part on the strength of the voice data of the user; communicate the voice data to the selected at least one device. The apparatus further comprises a processor configured as described above. An apparatus comprising the above components.

12. The apparatus according to claim 11, wherein the voice data is communicated to the selected at least one device without communicating the voice data to other unselected devices from the plurality of devices.

13. The apparatus according to claim 11, wherein the processor is configured to execute the computer-executable instructions to cause the apparatus to select the at least one device based on whether the strength meets a first threshold.

14. The apparatus according to claim 13, wherein when the strength does not meet the first threshold, the at least one device is a single device among the plurality of devices.

15. The apparatus according to claim 14, wherein when the strength meets the first threshold, the at least one device includes a plurality of devices among the plurality of devices.

16. The apparatus according to claim 13, wherein the processor is configured to execute the computer-executable instructions to cause the apparatus to further select the at least one device based on whether the strength meets a second threshold.

17. The apparatus according to claim 13, wherein the first threshold is learned for the user based on the strength of voice data received over time for the user via the one or more microphones.

18. The processor is configured to execute the computer-executable instructions to cause the apparatus to: determine the position of the avatar within the virtual world; determine the proximity of the avatar to each of the plurality of other avatars within the virtual world; determine the orientation of the user's head; determine the orientation of the avatar within the virtual world with respect to each of the plurality of other avatars, or the position of the user's eyes, further based on at least one of, configured to cause the at least one device to be selected, The apparatus according to claim 11.

19. The processor is configured to execute the computer-executable instructions to cause the apparatus to select the at least one device further based on the avatar type of the avatar corresponding to the user. The apparatus according to claim 11.

20. The processor is configured to execute the computer-executable instructions to cause the apparatus to select the at least one device further based on the communication mode selected by the user. The apparatus according to claim 11.

21. An apparatus for providing communication in a virtual world, means for receiving voice data of a user corresponding to an avatar in the virtual world via one or more microphones; means for selecting at least one device from a plurality of devices associated with a plurality of other avatars in the virtual world based at least in part on the intensity of the voice data of the user; means for communicating the voice data to the selected at least one device; An apparatus comprising:

22. The apparatus according to claim 21, wherein the voice data is communicated to the selected at least one device without communicating the voice data to other non-selected devices from the plurality of devices.

23. The apparatus according to claim 21, wherein selecting the at least one device is based on whether the intensity meets a first threshold.

24. The apparatus according to claim 23, wherein when the intensity does not meet the first threshold, the at least one device is a single device among the plurality of devices.

25. The apparatus according to claim 24, wherein when the intensity meets the first threshold, the at least one device includes a plurality of devices among the plurality of devices.

26. A non-transitory computer-readable medium comprising computer-executable instructions, which when executed by a processor of a device, cause the device to execute a method for providing communication in a virtual world, the method comprising: Receiving, via one or more microphones, voice data of a user corresponding to an avatar within the virtual world; Selecting at least one device from a plurality of devices associated with a plurality of other avatars within the virtual world, based at least in part on the intensity of the voice data of the user; Communicating the voice data to the selected at least one device; comprising; A non-transitory computer-readable medium.

27. The non-transitory computer-readable medium according to claim 26, wherein the voice data is communicated to the selected at least one device without communicating the voice data to other unselected devices from the plurality of devices.

28. The non-transitory computer-readable medium according to claim 26, wherein selecting the at least one device is based on whether the intensity meets a first threshold.

29. The non-transitory computer-readable medium according to claim 28, wherein when the intensity does not meet the first threshold, the at least one device is a single device among the plurality of devices.

30. The non-transitory computer-readable medium according to claim 29, wherein when the intensity meets the first threshold, the at least one device includes a plurality of devices among the plurality of devices.

Citation Information

Patent Citations

  • Virtual space sharing system and terminal equipment and repeater system and server and computer readable record medium for recording program for terminal equipment and child information relay program

    JP1999175450A

  • Data transmission apparatus and program

    JP2020003876A

  • A spectator view of an interactive game world shown at a live event held in a real-world venue

    JP2020534952A

  • Video game voice chat with amplitude-based virtual ranging

    US20060025216A1