Spatial audio adjustment for audio devices
By measuring and predicting the user's head position in the audio device and post-processing of spatial audio data, the problem of inaccurate head position due to delay in the prior art is solved, and the accuracy and user experience of spatial audio are improved.
Patent Information
- Application Number
- CN202380063980.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2022-09-12
- Filing Date
- 2023-08-09
- Publication Date
- 2025-04-15
AI Technical Summary
The prior art causes inaccurate head position of the user due to communication delays and processing delays when outputting spatial audio, which reduces the accuracy and user experience of spatial audio.
By measuring the user's head position in the audio device and predicting the head position when outputting spatial audio, the spatial audio data is post-processed using the predicted head position or the latest head position to improve the spatial audio accuracy of the output.
By processing spatial audio data using predicted head positions or the latest head positions, the accuracy and user experience of spatial audio can be significantly improved, making spatial audio appear to come from the expected source location in 3D space more accurately.
Smart Images

Figure CN119836793A_ABST
Abstract
Description
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This patent application claims priority to U.S. non-provisional patent application No. 17 / 931,156, filed on September 12, 2022, entitled “SPATIAL AUDIO ADJUSTMENT FOR AN AUDIO DEVICE,” which is hereby expressly incorporated herein by reference. Technical Field
[0003] Aspects of the present disclosure relate generally to audio devices, and, for example, to spatial audio adjustments for audio devices. Background Art
[0004] Spatial audio is a three-dimensional (3D) audio processing technology for manipulating the sound output by an audio device. Spatial audio is a technology by which the sound is processed so that the sound appears to come from a real position in 3D space for the listener when the sound is actually emitted from two or more speakers. For example, using head-related transfer functions or reverberation, the change of sound from the source (including reflections from walls, floors and / or other objects) to the listener's ears can be simulated. These effects can include simulating sound sources behind, above and / or below the listener. For example, spatial audio (sometimes referred to as 3D audio processing) can process or render the audio output by an audio device to simulate natural sound waves emitted from a point in 3D space (for example, even if the audio can be output only via two speakers of an audio device). For example, spatial audio processing can generate audio containing audio cues that enable the listener to "locate" the sound in 3D space. Audio cues (such as interaural time differences and level differences) indicate that the user is in an actual 3D environment, thereby strongly contributing to immersion. Summary of the invention
[0005] In some aspects, an audio device includes: two or more speakers configured to output spatial audio; one or more sensors; a memory; and one or more processors coupled to the memory, configured to cause the audio device to: measure a first head position of a user of the audio device via the one or more sensors; send an indication of the first head position or a second head position of the user to the device, wherein the second head position is based at least in part on the first head position, and wherein the second head position is the head position of the user at a time when spatial audio is to be output by the two or more speakers; receive spatial audio data based on the first head position or the second head position from the device; process the spatial audio data to obtain spatial audio, wherein the spatial audio is based at least in part on the second head position; and output the spatial audio via the two or more speakers.
[0006] In some aspects, a method performed by an audio device includes: measuring a first head position of a user of the audio device; sending an indication of the first head position or a second head position of the user to the device, wherein the second head position is based at least in part on the first head position, and wherein the second head position is the head position of the user at a time when spatial audio is to be output by the audio device; receiving spatial audio data based on the first head position or the second head position from the device; processing the spatial audio data to obtain spatial audio, wherein the spatial audio is based at least in part on the second head position; and outputting the spatial audio.
[0007] In some aspects, a non-transitory computer-readable medium storing an instruction set includes one or more instructions that, when executed by one or more processors of an audio device, cause the audio device to: measure a first head position of a user of the audio device; send an indication of the first head position or a second head position of the user to the device, wherein the second head position is based at least in part on the first head position, and wherein the second head position is the head position of the user at a time when spatial audio is to be output by the audio device; receive spatial audio data based on the first head position or the second head position from the device; process the spatial audio data to obtain spatial audio, wherein the spatial audio is based at least in part on the second head position; and output the spatial audio.
[0008] In some aspects, an apparatus may include components for measuring a first head position of a user of the apparatus. The apparatus may include components for sending an indication of the first head position or a second head position of the user to a device, wherein the second head position is based at least in part on the first head position, and wherein the second head position is the head position of the user at a time when spatial audio is to be output by the apparatus. The apparatus may include components for receiving spatial audio data based on the first head position or the second head position from the device. The apparatus may include components for processing the spatial audio data to obtain spatial audio, wherein the spatial audio is based at least in part on the second head position. The apparatus may include components for outputting spatial audio.
[0009] Aspects generally include methods, apparatuses, systems, computer program products, non-transitory computer-readable media, user devices, user equipment, wireless communication devices, and / or processing systems as substantially described with reference to and as illustrated in the accompanying drawings and description.
[0010] The features and technical advantages of the examples according to the present disclosure have been outlined quite extensively above so that the following detailed description may be better understood. Additional features and advantages will be described below. The disclosed concepts and specific examples may be easily used as the basis for modifying or designing other structures for performing the same purpose of the present disclosure. Such equivalent constructions do not depart from the scope of the appended claims. When considered in conjunction with the accompanying drawings, the characteristics of the concepts disclosed herein (both their organization and methods of operation) and the associated advantages will be better understood according to the following description. Each of the accompanying drawings is provided for the purpose of illustration and description, and not as a definition of limitations to the claims. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] In order that the above-mentioned features of the present disclosure may be understood in detail, a more specific description briefly summarized above may be obtained by reference to various aspects, some of which are illustrated in the accompanying drawings. However, it should be noted that the accompanying drawings illustrate only certain typical aspects of the present disclosure and therefore should not be considered as limiting the scope thereof, as the description may allow for other equally effective aspects. The same reference numerals in different drawings may identify the same or similar elements.
[0012] Figure 1 is a diagram illustrating an example environment in which spatial audio adjustments of audio devices described herein may be implemented in accordance with the present disclosure.
[0013] Figure 2 is a diagram illustrating example components of a device according to the present disclosure.
[0014] Figure 3A and Figure 3B is a diagram illustrating an example associated with spatial audio adjustments of an audio device according to the present disclosure.
[0015] Figure 4 is a flow chart of an example process associated with spatial audio adjustments for an audio device in accordance with the present disclosure. DETAILED DESCRIPTION
[0016] Various aspects of the present disclosure are described more fully below with reference to the accompanying drawings. However, the present disclosure can be embodied in many different forms, and should not be interpreted as being limited to any specific structure or function given throughout the present disclosure. On the contrary, these aspects are provided so that the present disclosure will be thorough and complete, and the scope of the present disclosure will be fully conveyed to those skilled in the art. It should be understood by those skilled in the art that the scope of the present disclosure is intended to cover any aspect of the present disclosure disclosed herein, whether it is realized independently of any other aspect of the present disclosure or realized in combination with any other aspect of the present disclosure. For example, any number of aspects set forth herein can be used to implement a device or practice method. In addition, the scope of the present disclosure is intended to cover such a device or method practiced using other structures, functions, or structures and functions other than the various aspects of the present disclosure set forth herein or different from the various aspects of the present disclosure set forth herein. It should be understood that any aspect of the present disclosure disclosed herein can be embodied by one or more elements of the claims.
[0017] A listener may be able to perceive the direction and distance of a sound source. There are two main cues used in the human auditory system to achieve this perception. These cues are generally referred to as interaural time difference (ITD) and interaural level difference (ILD), which are caused by the distance between the position of the listener's ears and the shadow caused by the listener's head. In addition to the ITD and ILD cues, the head-related transfer function (HRTF) can be used to localize the sound source in three-dimensional (3D) space. HRTF can also be called anatomical transfer function (ATF). HRTF can be the frequency response from the sound source to each ear, and the HRTF may be affected by the diffraction and reflection of the sound waves as they propagate in space and bypass the listener's torso, shoulders, head and / or pinnae. Therefore, the HRTF of a sound source usually varies from person to person.
[0018] For example, an HRTF can be a response that characterizes how an ear receives sound from a point in space. When sound strikes a listener, the head, ears, size and shape of the ear canal, density of the head, size and shape of the nasal and oral cavities all transform the sound and affect how the sound is perceived, boosting some frequencies and attenuating other frequencies. A pair of HRTFs for two ears can be used to synthesize spatial audio that appears (e.g., to a listener) to come from a specific point in 3D space (e.g., binaural audio). Audio processing can include HRTF processing to generate spatial audio that is output via two or more speakers of an audio device to mimic natural sound waves emanating from a point in 3D space (e.g., even though the spatial audio can be output via two or more speakers of an audio device).
[0019] In some cases, the audio device may be associated with another device that performs audio processing on the audio device. For example, the other device may be a user device, a mobile device and / or a companion device, as well as other examples. For example, the audio device may measure the head position of the user. For example, the audio device may use one or more sensors and / or cameras to measure the head position of the user (for example, as described in more detail elsewhere herein). The audio device may use measurement to determine the head posture of the user (for example, at the first time). The audio device may send head posture data indicating the head posture of the user (for example, at the first time) to another device. Other devices may use head posture data, the current orientation of the audio device and / or other factors to process multi-channel audio data to obtain spatial audio data of the head posture of the user. For example, other devices may use HRTF processing to generate spatial audio data to simulate audio from a given point in 3D space for the current head posture of the user and / or the current orientation of the audio device. Another device may send spatial audio data, and the audio device may receive spatial audio data. The audio device may process (for example, render) spatial audio data. The audio device may output spatial audio via two or more speakers of the audio device. Spatial audio that is processed to be output via two channels (eg, via two speakers) may be referred to as binaural audio.
[0020] However, the process may be associated with a delay or latency that degrades the spatial audio output by the audio device. For example, the audio device may communicate with other devices via wireless or wired connections. These communications may be associated with a communication delay, which is associated with the amount of time from the time when the communication is sent by a sending device (e.g., an audio device or another device) to the time when the communication is received by a receiving device (e.g., another device or an audio device). For example, the transmission of head posture data from an audio device to another device may be associated with a first communication delay. The transmission of processed spatial audio data from another device to the audio device may be associated with a second communication delay. Additionally or alternatively, there may be processing delays associated with determining head posture data (e.g., by an audio device) and / or with processing multi-channel audio data to obtain spatial audio data of the user's head posture (e.g., by another device). The user's head may change between the time when the head position is measured by the audio device (e.g., T1) and the time when the spatial audio is output by the audio device (e.g., T2, where T2=T1+the above (multiple) delays). Such delays can be as long as 300 milliseconds or longer. Therefore, because the head posture for processing spatial audio (e.g., the head posture at T1) may be different from the actual head posture of the user when the audio device outputs the spatial audio (e.g., the head posture at T2), the spatial audio may be inaccurate for the user's actual head posture, thereby reducing the accuracy of the spatial audio and degrading the user experience.
[0021] Some embodiments described herein implement spatial audio adjustments for audio devices. For example, spatial audio can be processed and / or rendered (e.g., by an audio device and / or user device) using the user's head position when the spatial audio will be output by the audio device (e.g., rather than the time when the head position is initially measured before communication delays and / or processing delays). For example, the audio device can measure a first head position of a user of the audio device. The audio device can send an indication of the user's first head position or second head position (e.g., to the user device). In some aspects, the second head position can be based at least in part on the first head position and / or can be the user's head position at the time when the spatial audio will be output by the audio device. For example, the second head position can be a predicted head position (e.g., predicted by the audio device using the user's historical head position measurement and the average delay associated with processing spatial audio). The audio device can receive spatial audio data based on the first head position (e.g., if the first head position is sent by the audio device) or the second head position (e.g., if the second head position is sent by the audio device). The audio device can process the spatial audio data to obtain spatial audio.
[0022] The spatial audio may be based at least in part on a second head position. For example, the user device may process or spatialize spatial audio data using the second head position (e.g., a predicted head position) and provide spatial audio data processed using the second head position. As another example, the user device may process or spatialize spatial audio data using the first head position. The audio device may process spatial audio data based at least in part on the first head position to obtain spatial audio based at least in part on the second head position. In other words, the audio device may perform audio post-processing of the spatial audio data received from the user device to obtain spatial audio of the user's latest head position. The audio device may output spatial audio (e.g., via two or more speakers).
[0023] Thus, delays associated with processing spatial audio (e.g., communication delays and / or processing delays) can be taken into account. For example, by using a predicted head position of a user (e.g., at the time of outputting the spatial audio) and / or by performing post-processing of the spatial audio data based at least in part on the user's latest head position (e.g., after the spatial audio data has been spatialized using the user's previous head position), the audio device can be enabled to output the spatial audio to the user's current head position with improved accuracy. This can increase the accuracy of the spatial audio and / or improve the user experience because the spatial audio may appear to the listener to be coming from a location in 3D space that is closer to the expected source location in 3D space.
[0024] Figure 11 is a diagram illustrating an example environment 100 in which spatial audio adjustments of an audio device as described herein may be implemented in accordance with the present invention. Figure 1 As shown, environment 100 may include an audio device 110 (e.g., including a head position tracker 115 and an audio rendering component 120), a user device 125 (e.g., including an audio processor 130), and a network 135. The devices of environment 100 may be interconnected via a wired connection, a wireless connection, or a combination of wired and wireless connections.
[0025] The audio device 110 may include one or more devices capable of receiving, generating, storing, processing and / or providing information associated with audio adjustments of the audio device 110, as described elsewhere herein. The audio device 110 may include a communication device and / or a computing device. In some aspects, the audio device may include one or more speakers configured to output sound (e.g., spatial audio). For example, the audio device 110 may include one or more devices configured to reproduce, record and / or output sound. For example, the audio device 110 may include headphones, earphones, one or more speakers, headphones, wireless communication devices, mobile phones, user devices, laptop computers, tablet computers, desktop computers, game consoles, wearable communication devices (e.g., a pair of smart glasses, head-mounted displays or virtual reality headsets), sound systems (e.g., surround sound systems), stereos and / or similar types of devices. In some aspects, the audio device 110 may include one or more sensors configured to measure and / or track the head position of a user (e.g., a user wearing the audio device 110 and / or listening to the sound output by the audio device 110). For example, the one or more sensors may include a gyroscope, an accelerometer, a magnetometer, one or more cameras, and / or an inertial measurement unit (IMU) sensor (e.g., a 3-axis IMU sensor, a 6-axis IMU sensor, and / or a 9-axis IMU sensor), among other examples.
[0026] The audio device 110 may include a head position tracker 115. The head position tracker 115 may include one or more components and / or one or more devices configured to measure and / or track the head position of a user (e.g., a user wearing the audio device 110 and / or listening to sounds output by the audio device 110). For example, the head position tracker 115 may include one or more sensors (e.g., as described above). Additionally or alternatively, the head position tracker 115 may include one or more components configured to determine the user's head position based on measurement data obtained via one or more sensors.
[0027] The audio device 110 may include an audio rendering component 120. The audio rendering component 120 may include one or more components and / or one or more devices configured to process audio data (e.g., spatial audio data) to be output by the audio device 110 (e.g., via one or more speakers of the audio device 110). For example, the audio rendering component 120 may be configured to obtain audio data to be output via a given speaker of the audio device 110 from a plurality of audio channels associated with the spatial audio data.
[0028] The user device 125 may include one or more devices capable of receiving, sending, generating, storing, processing, and / or providing information associated with audio adjustments of the audio device 110, as described elsewhere herein. The user device 125 may include a communication device and / or a computing device. For example, the user device 125 may include a wireless communication device, a mobile phone, a user device, a laptop computer, a tablet computer, a desktop computer, a gaming console, a wearable communication device (e.g., a smart watch, a pair of smart glasses, a head mounted display, or a virtual reality headset), or a similar type of device.
[0029] The user device 125 may include an audio processor 130. The audio processor 130 may include one or more components and / or one or more devices configured to process audio data to generate spatial audio based on the user's head position. For example, the audio processor 130 may be configured to output spatial audio data based on input of multi-channel audio, the user's head position and / or the orientation of the audio device 110, as well as other examples.
[0030] The network 135 may include one or more wired and / or wireless networks. For example, the network 135 may include a wireless wide area network (e.g., a cellular network or a public land mobile network), a local area network (e.g., a wired local area network or a wireless local area network (WLAN), such as a Wi-Fi network), a personal area network (e.g., a Bluetooth network), a near field communication network, a telephone network, a private network, the Internet, and / or a combination of these or other types of networks. The network 135 enables communication between devices of the environment 100.
[0031] Figure 1 The number and arrangement of devices and components shown in the figure are provided as one or more examples. In practice, there may be Figure 1 The devices and / or components shown in FIG. 1 include additional devices and / or components, fewer devices and / or components, different devices and / or components, or differently arranged devices and / or components. In addition, Figure 1 Two or more devices and / or components shown in the figure may be implemented in a single device, or Figure 1The single device and / or component shown in the environment 100 may be implemented as multiple distributed devices. Additionally or alternatively, a set of devices and / or components (e.g., one or more devices and / or components) of the environment 100 may perform one or more functions described as being performed by another set of devices and / or components of the environment 100.
[0032] Figure 2 2 is a diagram illustrating example components of a device 200 according to the present disclosure. The device 200 may correspond to the audio device 110, the head position tracker 115, the audio rendering component 120, the user device 125, and / or the audio processor 130. In some aspects, the audio device 110, the head position tracker 115, the audio rendering component 120, the user device 125, and / or the audio processor 130 may include one or more devices 200 and / or one or more components of the device 200. Figure 2 As shown, device 200 may include a bus 205 , a processor 210 , a memory 215 , a storage component 220 , an input component 225 , an output component 230 , a communication interface 235 , one or more sensors 240 , and / or one or more speakers 245 .
[0033] The bus 205 includes components that allow communication between components of the device 200. The processor 210 is implemented in hardware, firmware, or a combination of hardware and software. The processor 210 is a central processing unit (CPU), a graphics processing unit (GPU), an accelerated processing unit (APU), a microprocessor, a microcontroller, a digital signal processor (DSP), a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), or another type of processing component. In some aspects, the processor 210 includes one or more processors that can be programmed to perform functions. The memory 215 includes a random access memory (RAM), a read-only memory (ROM), and / or another type of dynamic or static storage device (e.g., flash memory, magnetic memory, and / or optical memory) that stores information and / or instructions for use by the processor 210.
[0034] Storage component 220 stores information and / or software related to the operation and use of device 200. For example, storage component 220 may include a hard disk (e.g., a magnetic disk, an optical disk, a magneto-optical disk, and / or a solid-state disk), a compact disk (CD), a digital versatile disk (DVD), a floppy disk, a cassette, a magnetic tape, and / or another type of non-transitory computer-readable medium and a corresponding drive.
[0035] Input components 225 include components that allow device 200 to receive information, such as via user input (e.g., a touch screen display, a keyboard, a keypad, a mouse, buttons, switches, and / or a microphone). Additionally or alternatively, input components 225 may include components for determining the location or position of device 200 (e.g., a global positioning system (GPS) component or a global navigation satellite system (GNSS) component) and / or sensors for sensing information (e.g., an accelerometer, a gyroscope, an actuator, or another type of position or environmental sensor). Output components 230 include components that provide output information from device 200 (e.g., a display, a speaker, a tactile feedback component, and / or an audio or visual indicator).
[0036] The communication interface 235 includes a transceiver-like component (e.g., a transceiver and / or a separate receiver and transmitter) that enables the device 200 to communicate with other devices, for example, via a wired connection, a wireless connection, or a combination of wired and wireless connections. The communication interface 235 can allow the device 200 to receive information from another device and / or provide information to another device. For example, the communication interface 235 may include an Ethernet interface, an optical interface, a coaxial interface, an infrared interface, a radio frequency interface, a universal serial bus (USB) interface, a wireless local area interface (e.g., a Wi-Fi interface), and / or a cellular network interface.
[0037] Sensor 240 may be configured to measure and / or track the head position of a user (e.g., a user wearing audio device 110 and / or listening to the sound output by audio device 110). For example, sensor 240 may include a position sensor, a position sensor, a gyroscope, an accelerometer, a magnetometer, one or more cameras and / or an inertial measurement unit (IMU) sensor (e.g., a 3-axis IMU sensor, a 6-axis IMU sensor, and / or a 9-axis IMU sensor), among other examples. Speaker 245 may include one or more components configured to output sound. For example, speaker 245 may include an audio speaker, a loudspeaker, a woofer, a tweeter, a midrange speaker, a sound bar, a smart speaker, and / or a driver, among other examples.
[0038] Device 200 may perform one or more processes described herein. Device 200 may perform these processes based on processor 210 executing software instructions stored by non-transitory computer-readable media (such as memory 215 and / or storage component 220). Computer-readable media is defined herein as non-transitory memory devices. Memory devices include memory space within a single physical storage device or memory space distributed across multiple physical storage devices.
[0039] The software instructions may be read into the memory 215 and / or storage component 220 from another computer-readable medium or from another device via the communication interface 235. When executed, the software instructions stored in the memory 215 and / or storage component 220 may cause the processor 210 to perform one or more processes described herein. Additionally or alternatively, hardwired circuitry may be used in place of or in combination with software instructions to perform one or more processes described herein. Thus, the aspects described herein are not limited to any specific combination of hardware circuitry and software.
[0040] In some aspects, device 200 includes components for performing one or more processes described herein and / or components for performing one or more operations of processes described herein. For example, device 200 may include components for measuring a first head position of a user of an audio device; components for sending an indication of the first head position or a second head position of the user; components for receiving spatial audio data based on the first head position or the second head position; components for processing the spatial audio data to obtain spatial audio; and / or components for outputting spatial audio; as well as other examples. In some aspects, such components may include components in conjunction with Figure 2 One or more components of device 200 are depicted, such as bus 205 , processor 210 , memory 215 , storage component 220 , input component 225 , output component 230 , communication interface 235 , sensor 240 , and / or speaker 245 .
[0041] Figure 2 The number and arrangement of components shown in the figure are provided as examples. In practice, the device 200 may include Figure 2 Components shown in the figure may be additional components, fewer components, different components, or differently arranged components than those shown in the figure. Additionally or alternatively, a set of components (e.g., one or more components) of the device 200 may perform one or more functions described as being performed by another set of components of the device 200.
[0042] Figure 3A and Figure 3B is a diagram illustrating an example 300 associated with spatial audio adjustments of an audio device according to the present disclosure. FIG. 3A to FIG. 3B As shown, example 300 includes communication between user equipment and audio equipment. In some aspects, user equipment and audio equipment can communicate via wireless connection and / or wired connection. In some aspects, user equipment and audio equipment can be included in a single device (for example, and communication can be inside the device). For example, the audio equipment can be configured as a device to output sound for the user. In other aspects, the user equipment and audio equipment can be separate devices.
[0043] like Figure 3AIn and shown by reference numeral 305, the audio device can measure a first head position of a user of the audio device. For example, the audio device can measure the first head position at a first time. In some aspects, the audio device can measure the first head position via one or more sensors associated with the audio device. For example, the audio device can use head tracking technology to determine the first head position. In some aspects, the audio device can use a head position tracker (e.g., head position tracker 115) to measure and / or determine the first head position.
[0044] In some aspects, the audio device may measure and / or determine the first head position based on position data captured by one or more sensors. Additionally or alternatively, the audio device may measure and / or determine the first head position based on one or more images captured by one or more cameras associated with the audio device. For example, the one or more sensors may capture data indicating the position of the user's head at a first time (e.g., a head pose).
[0045] In some aspects, the audio device may use an IMU to track and / or determine the first head position. For example, an IMU may be an electronic device that uses data from a combination of sensors (such as accelerometers, gyroscopes, and / or magnetometers, as well as other examples) to measure and report a specific force, angular rate, and / or orientation of an object (e.g., a unit). For example, an IMU sensor may work by detecting linear acceleration using one or more accelerometers and detecting rotation rate using one or more gyroscopes. Some IMU sensors include a magnetometer that may be used as a heading reference. Some IMU sensor configurations may include an accelerometer, gyroscope, and magnetometer for each of the three main axes: pitch, roll, and yaw. For example, an audio device may use raw measurements (e.g., sensor data) to calculate a user's head relative to a global reference frame (e.g., a reference point) posture (e.g., pitch angle or attitude angle), angular rate, linear velocity, and / or position. Data from one or more sensors may be combined to determine the first head position.
[0046] Additionally or alternatively, the audio device (or another device) may capture one or more images. For example, the one or more images may be images of the user (e.g., images of the user's head) and / or may be images of the user's surroundings. The audio device may process the one or more images to determine the first head position. For example, the audio device may use image analysis techniques (e.g., computer vision techniques or another technique) to determine the first head position in one or more images of the user's head and / or may compare images of the user's surroundings to reference images.
[0047] The first head position may indicate a position that uses Euler angles (e.g., yaw, pitch, and roll) to define the orientation of the head in 3D space. For example, the audio device may be calibrated using a reference point and / or a reference frame. The audio device may obtain sensor data and / or images (e.g., via one or more sensors). The audio device may use the sensor data and / or images and a reference point and / or a reference system to determine the first head position. For example, the audio device may determine one or more angle values (e.g., a yaw angle value, a pitch angle value, and a roll angle value) to define a first head position relative to a reference point and / or a reference system.
[0048] In some aspects, as shown in reference numeral 310, the audio device may determine a second head position of the user. For example, the audio device may predict the second head position of the user (e.g., the head position of the user at a future time). For example, the second head position may be based at least in part on the first head position. The second head position may be the predicted head position of the user when spatial audio is to be output by the audio device (e.g., by two or more speakers of the audio device). For example, the second head position may be the head position of the user at a second time. The difference between the first time and the second time may be based at least in part on communication delays and / or processing delays associated with outputting spatial audio.
[0049] For example, the audio device and / or user device may determine an average delay between the time (e.g., a first time) at which the user's head position is measured and / or determined and the time at which the audio device outputs spatial audio (e.g., based at least in part on the head position). The audio device and / or user device may determine the average delay based at least in part on communication delays between the audio device and the user device and / or processing delays associated with processing and / or rendering spatial audio. For example, the audio device and / or user device may determine the average delay based at least in part on previous timing of spatial audio output by the audio device. The second time may be based at least in part on the average delay. For example, the second time may be the first time (e.g., the time at which the audio device measures and / or determines the first head position, as described above in conjunction with reference numeral 305) plus the average delay.
[0050] The audio device may predict the head position of the user at a second time. For example, the audio device may determine the predicted head position of the user (e.g., at the second time) based at least in part on the first head position and at least in part on historical head position measurements. For example, the user's head movements may follow a pattern and / or may be predictable. Therefore, the audio device may utilize historical head position measurements (e.g., performed and / or obtained by the audio device prior to the first time) to determine the future head position of the user (e.g., at the second time).
[0051] For example, the audio device may use a machine learning model or a prediction filter to determine the predicted head position. For example, the machine learning model may include a neural network, a linear regression model, a logistic regression model, a decision tree, an analysis of variance model, a regularized regression model (e.g., lasso regression, ridge regression, or elastic net regression), a random forest model, and / or another type of machine learning model trained to predict the user's head position or head posture. The prediction filter may include a linear prediction filter, a Kalman filter, and / or another type of prediction filter.
[0052] For example, a set of observations can be used to train a machine learning model and / or a prediction filter. The set of observations can be obtained and / or input from training data (e.g., historical data), such as data collected during one or more processes described herein. For example, the set of observations can include data collected from previous samples of measurements of the user's head position, as described elsewhere herein. In some aspects, the machine learning system can receive the set of observations (e.g., as input) from an audio device. Based at least in part on the historical data and / or the set of observations, the machine learning model and / or the prediction filter can be trained to predict the user's head position or head posture.
[0053] Among other examples, the audio device may input a second time (e.g., to predict the future and / or average delay of a head position, as described above), one or more historical head position measurements of the user, and / or the orientation (or position) of the audio device as inputs to a machine learning model and / or a prediction filter. For example, the one or more historical head position measurements of the user may be a measurement sample of the user's head position taken slightly before (e.g., within a certain amount of time) a first time (e.g., the time at which the audio device measures and / or determines the user's head position, as described above in conjunction with reference numeral 305). The one or more historical head position measurements of the user may include a measurement of a first head position of the user at a first time. The machine learning model and / or the prediction filter may output a predicted head position of the user at a second time (e.g., using Euler angles (e.g., yaw, pitch, and roll) to define the orientation of the head).
[0054] As shown in reference numeral 315, the audio device may send, and the user device may receive, an indication of a first head position or a second head position (e.g., a predicted head position of the user) of the user. For example, the user device may receive data indicating the head position of the user (e.g., an indication of Euler angles (e.g., yaw, pitch, and roll)). The head position of the user may be a first head position (e.g., measured and / or determined by the audio device at a first time), or may be a second head position (e.g., predicted by the audio device based at least in part on the first head position). For example, in some aspects, the audio device may send an indication of the predicted head position of the user at a second time, and the user device may receive an indication of the predicted head position of the user at the second time. In other aspects, the audio device may send an indication of a first head position, and the user device may receive an indication of the first head position.
[0055] As indicated by reference numeral 320, the user device may process audio data (e.g., multi-channel audio data) to obtain spatial audio based at least in part on a head position (e.g., a first head position or a second head position) indicated by the audio device. For example, the user device may spatialize the multi-channel audio data based at least in part on the head position indicated by the audio device. In some aspects, the spatial audio data generated by the user device may be associated with a plurality of channels. The number of the plurality of channels may be based at least in part on a number of speakers associated with the audio device (e.g., the number of speakers to be used to output the spatial audio).
[0056] For example, if the head position indicated by the audio device is a first head position, the spatial audio data may be based at least in part on the first head position. Alternatively, if the head position is a second head position (e.g., a predicted head position), the spatial audio data may be based at least in part on the second (e.g., predicted) head position. In some aspects, the user device may use an audio spatializer to obtain the spatial audio data from the multi-channel audio data.
[0057] For example, to spatialize multi-channel audio data, the user device may modify time delays between channels of the multi-channel audio data and / or may modify the frequencies of the audio based at least in part on the head position indicated by the audio device (e.g., the time delays and / or frequencies may be modified based on the location where the sound should originate relative to the head position). For example, a sound originating from 3D space may arrive at a first ear of the user at a different time than the sound arrives at a second ear of the user. Thus, to create this effect in spatial audio, the user device may introduce time delays between the various channels of the spatial audio to simulate the different times at which the sound would arrive at different ears of the user if the sound originated from a location in 3D space (e.g., rather than from a speaker of the audio device).
[0058] Additionally, for sounds originating from 3D space, different frequencies of the sound may be shifted differently for each direction in 3D space that the sound may be coming from. The user's brain may be able to recognize the changes in frequency to identify the direction the sound is coming from. For example, the higher frequencies of sounds coming from behind the user may be more difficult to hear because the higher frequencies may be muted by the pinna of the user's ear (e.g., the sound must pass through to reach the user's ear). Therefore, in order to achieve this effect in spatial audio, the user device may modify the frequencies of the multi-channel audio data based on the position from which the sound should appear to originate relative to the user's head position (e.g., appear to originate from the user listening to the spatial audio).
[0059] In some aspects, the user device may process the multi-channel audio data using a transfer function. For example, the transfer function may be a head-related transfer function (HRTF). Among other examples, the transfer function may be associated with one or more fast Fourier transforms and / or convolutions to modify the multi-channel audio data based at least in part on the user's head position to obtain spatial audio data. For example, the HRTF may enable the user device to modify the multi-channel audio data to produce spatial audio data that results in spatial audio that appears (e.g., to the user) to originate from a point in 3D space (e.g., rather than from two or more speakers of an audio device).
[0060] like Figure 3B In the example and indicated by reference numeral 325, the user device may send, and the audio device may receive, spatial audio data based on a head position indicated by the device to the user (e.g., a first head position or a second head position, as described above in connection with reference numeral 315). For example, the spatial audio data may be multi-channel audio data that is spatialized based at least in part on the indicated head position (e.g., a head pose) of the user.
[0061] In some aspects, as shown in reference numeral 330, the audio device can measure and / or determine a third head position of the user (e.g., after receiving the spatial audio data). For example, after the device receives the spatial audio data from the user, the audio device can measure and / or determine the third head position of the user to determine the user's head position that is closer in time to the time when the spatial audio will be output by the audio device. In some aspects, the audio device can measure the third head position via one or more sensors associated with the audio device. For example, the audio device can use head tracking technology to determine the third head position. In some aspects, the audio device can use a head position tracker (e.g., head position tracker 115) to measure and / or determine the third head position.
[0062] In some aspects, the audio device may measure and / or determine a third head position based on position data captured by one or more sensors. Additionally or alternatively, the audio device may measure and / or determine a third head position based on one or more images captured by one or more cameras associated with the audio device. For example, one or more sensors may capture data indicating the position of the user's head (e.g., head posture). In some aspects, the audio device may use an IMU sensor to track and / or determine the third head position. The audio device may measure and / or determine the third head position in a similar manner as described in more detail elsewhere herein (such as in conjunction with reference numeral 305).
[0063] In some aspects, such as where the audio device sends an indication of a second (e.g., predicted) head position to the user device (e.g., as described above in conjunction with reference numeral 315), the audio device may determine whether the predicted head position (e.g., on which the spatial audio received from the user device is based) satisfies an accuracy threshold (e.g., based at least in part on a third head position). For example, the audio device may determine an error value associated with the predicted head position based at least in part on the third head position. The error value may be based at least in part on a difference between an angular value (e.g., a yaw, pitch, and / or roll angular value) of the predicted head position and the third head position.
[0064] In some aspects, the error value may be the maximum value of the difference between the angle values (e.g., yaw, pitch, and / or roll angle values) of the predicted head position and the third head position. As another example, the error value may be a combination of the difference between the angle values of the predicted head position and the third head position. The audio device may determine whether the error value meets a threshold value (e.g., an accuracy threshold). If the error value meets the threshold value, the audio device may perform processing on the received spatial audio data using the third head position. If the error value does not meet the threshold value, the audio device may use the received spatial audio data to output spatial audio via two or more speakers of the audio device. In other words, if the actual head position (e.g., the third head position) of the user is close to the predicted head position, the audio device may not perform additional processing to modify the received spatial audio data. However, if the difference (e.g., error) between the actual head position (e.g., the third head position) of the user and the predicted head position is high, the audio device may perform additional processing to modify the received spatial audio data based at least in part on the actual head position of the user.
[0065] In some aspects, as indicated by reference numeral 335, the audio device may process spatial audio data (e.g., spatial audio data received from a user device). For example, the audio device may process the spatial audio data based at least in part on transmitting a first head position to the user device (e.g., based at least in part on the spatial audio data being based at least in part on the first head position). As another example, the audio device may process the spatial audio data based at least in part on an error value of a predicted head position that satisfies an accuracy threshold (e.g., as described above). For example, the audio device may process the spatial audio data (e.g., spatial audio data received from a user device) to modify the spatial audio data so that the spatial audio data is based at least in part on a third head position (e.g., rather than the first head position or the predicted head position).
[0066] For example, the audio device may process spatial audio data based at least in part on a first head position to obtain spatial audio based at least in part on a third head position (e.g., a measured head position determined after receiving the spatial audio data from the user device). For example, the audio device may process first spatial audio data (e.g., spatial audio data received from a user device) to obtain second spatial audio data. The second spatial audio data may be based at least in part on the third head position.
[0067] For example, the audio device may apply a transfer function (e.g., an HRTF or another transfer function) to the received spatial audio data to obtain spatial audio data that is based at least in part on an actual head position (e.g., a third head position) of the user at or near the time when the audio device outputs the spatial audio. For example, the audio device may modify one or more time delays between channels of the spatial audio data so that the spatial audio (e.g., when output by the audio device) appears to originate from a given point in 3D space relative to the actual head position (e.g., a third head position) of the user at or near the time when the audio device outputs the spatial audio (e.g., to the user). Additionally or alternatively, the audio device may modify the frequency of the spatial audio data so that the spatial audio (e.g., when output by the audio device) appears to originate (e.g., to the user) from a given point in 3D space relative to the actual head position (e.g., a third head position) of the user at or near the time when the audio device outputs the spatial audio. This can improve the accuracy of the spatial audio (e.g., can improve the effect of causing the user to perceive the audio as originating from a given point in 3D space relative to the user's actual head position) and / or can improve the user's user experience by ensuring that the spatial audio is processed based on the user's head position at or close to the time when the audio device outputs the spatial audio.
[0068] As shown in reference numeral 340, the audio device may render spatial audio data (e.g., spatial audio data received from a user device as described in conjunction with reference numeral 325, or spatial audio data processed by the audio device as described in conjunction with reference numeral 335). For example, the audio device may process the spatial audio data to obtain spatial audio. For example, the audio device may determine information or data to be provided to two or more speakers of the audio device so that the spatial audio is output by the two or more speakers. For example, the audio device may process (e.g., render) the spatial audio data to obtain data of two or more channels (e.g., where a given channel is associated with a given speaker of the audio device). In some aspects, the audio device may render spatial audio data (e.g., which includes multiple channels or multiple files) to obtain one or more signals to be provided to the speakers of the audio device.
[0069] As shown at 345, the audio device may output spatial audio. Figure 3B As shown, the audio device can output spatial audio via two or more speakers of the audio device. For example, the spatial audio can be associated with two or more channels. As described elsewhere herein, because the spatial audio is processed using the user's head position (e.g., the second (predicted) head position or the third head position) at or near the time when the audio device outputs the spatial audio, the accuracy of the point in 3D space from which the spatial audio appears to originate (e.g., to the user) can be improved.
[0070] For example, delays associated with processing spatial audio (e.g., communication delays and / or processing delays) can be taken into account. For example, by using a predicted head position of a user (e.g., at the time of outputting the spatial audio) and / or by performing post-processing of the spatial audio data based at least in part on the user's latest head position (e.g., after the spatial audio data has been spatialized using the user's previous head position), the audio device can be enabled to output the spatial audio to the user's current head position with improved accuracy. This can increase the accuracy of the spatial audio and / or improve the user experience because the spatial audio may appear to the listener to be coming from a location in 3D space that is closer to the expected source location in 3D space.
[0071] As mentioned above, FIG. 3A to FIG. 3B are provided as examples. Other examples can be found in the FIG. 3A to FIG. 3B The examples described are different.
[0072] Figure 4 is a flow chart of an example process 400 associated with spatial audio adjustments of an audio device. Figure 4 One or more processing blocks of are performed by an audio device (e.g., audio device 110). In some implementations, Figure 4 One or more processing blocks of may be performed by another device or a group of devices separate from or including the audio device, such as the user device 125, the head position tracker 115, the audio rendering component 120, and / or the audio processor 130. Additionally or alternatively, Figure 4 One or more processing blocks may be performed by one or more components of device 200 (e.g., processor 210, memory 215, storage component 220, input component 225, output component 230, communication interface 235, sensor 240, and / or speaker 245).
[0073] like Figure 4 As shown, process 400 may include measuring a first head position of a user of an audio device (block 410). For example, the audio device may measure a first head position of a user of the audio device, as described above.
[0074] like Figure 4 As further shown in , process 400 may include sending an indication of a first head position or a second head position of a user to a device, wherein the second head position is based at least in part on the first head position, and wherein the second head position is the head position of the user at a time when the audio device is to output spatial audio (box 420). For example, the audio device may send an indication of a first head position or a second head position of a user to a device, wherein the second head position is based at least in part on the first head position, and wherein the second head position is the head position of the user at a time when spatial audio is to be output by the audio device, as described above. In some aspects, the second head position is based at least in part on the first head position. In some aspects, the second head position is the head position of the user at the time when the audio device is to output spatial audio. In some aspects, the second head position may be a second head position (e.g., a predicted head position) or a third head position, as described above in conjunction with Figure 3A and Figure 3B As described.
[0075] like Figure 4 As further shown in FIG. 4 , process 400 may include receiving spatial audio data based on the first head position or the second head position from a device (block 430). For example, an audio device may receive spatial audio data based on the first head position or the second head position from a device, as described above.
[0076] like Figure 4 As further shown in , process 400 may include processing the spatial audio data to obtain spatial audio, wherein the spatial audio is based at least in part on the second head position (block 440). For example, the audio device may process the spatial audio data to obtain spatial audio, as described above. In some aspects, the spatial audio is based at least in part on the second head position.
[0077] like Figure 4 As further shown in FIG. 4 , process 400 may include outputting spatial audio (block 450 ). For example, an audio device may output spatial audio, as described above.
[0078] Process 400 may include additional implementations, such as any single embodiment or any combination of implementations described below and / or any combination of implementations described in conjunction with one or more other processes described elsewhere herein.
[0079] In a first embodiment, the first head position is a head position of a user at a first time, wherein the second head position is a head position of the user at a second time, and wherein the difference between the first time and the second time is based at least in part on at least one of a communication delay or a processing delay associated with the output spatial audio.
[0080] In a second embodiment, either alone or in combination with the first embodiment, the second head position is a predicted head position of the user when spatial audio is to be output, and the method further comprises determining the predicted head position of the user based at least in part on the first head position and at least in part on historical head position measurements.
[0081] In a third embodiment, alone or in combination with one or more of the first and second implementations, sending an indication of the first head position or the second head position of the user includes sending an indication of a predicted head position to the device, and wherein the spatial audio data is based at least in part on the predicted head position.
[0082] In a fourth embodiment, alone or in combination with one or more of the first to third implementations, determining the predicted head position includes using a machine learning model or a prediction filter to determine the predicted head position.
[0083] In a fifth embodiment, alone or in combination with one or more of the first to fourth embodiments, sending an indication of a first head position or a second head position of a user comprises sending an indication of the first head position to a device, and wherein the spatial audio data is based at least in part on the first head position, and wherein processing the spatial audio data comprises processing the spatial audio data based at least in part on the first head position. Spatial audio based at least in part on the second head position is obtained.
[0084] In a sixth implementation, alone or in combination with one or more of the first to fifth implementations, process 400 includes measuring a second head position after receiving the spatial audio data.
[0085] In a seventh embodiment, alone or in combination with one or more of the first to sixth implementations, the spatial audio data is first spatial audio data, and wherein processing the spatial audio data includes processing the first spatial audio data to obtain second spatial audio data, wherein the second spatial audio data is at least partially based on the second head position.
[0086] In an eighth embodiment, either alone or in combination with one or more of the first to seventh implementations, the second head position is a predicted head position of a user when spatial audio is to be output, wherein the spatial audio data is based at least in part on the predicted head position, and the method further comprises determining an error value associated with the predicted head position based at least in part on a third head position, determining that the error value satisfies a threshold, and wherein processing the spatial audio data comprises: based at least in part on the error value satisfying the threshold, the spatial audio data is used to obtain spatial audio based at least in part on the third head position.
[0087] In a ninth embodiment, alone or in combination with one or more of the first to eighth, process 400 includes measuring a third head position after receiving the spatial audio data.
[0088] although Figure 4 An example block diagram of process 400 is shown, but in some implementations, process 400 includes Figure 4 Additional blocks, fewer blocks, different blocks, or differently arranged blocks than those depicted in the process 400. Additionally or alternatively, two or more blocks of the blocks of process 400 may be performed in parallel.
[0089] The following provides an overview of some aspects of the disclosure:
[0090] Aspect 1: A method performed by an audio device, comprising: measuring a first head position of a user of the audio device; sending an indication of the first head position or a second head position of the user to the device, wherein the second head position is based at least in part on the first head position, and wherein the second head position is the head position of the user at a time when spatial audio is to be output by the audio device; receiving spatial audio data based on the first head position or the second head position from the device; processing the spatial audio data to obtain spatial audio, wherein the spatial audio is based at least in part on the second head position; and outputting the spatial audio.
[0091] Aspect 2: A method according to Aspect 1, wherein the first head position is the head position of the user at a first time, wherein the second head position is the head position of the user at a second time, and wherein the difference between the first time and the second time is at least partially based on at least one of a communication delay or a processing delay associated with the output spatial audio.
[0092] Aspect 3: A method according to any one of Aspects 1-2, wherein the second head position is a predicted head position of the user when spatial audio is to be output, the method further comprising: determining the predicted head position of the user based at least in part on the first head position and at least in part on historical head position measurements.
[0093] Aspect 4: A method according to Aspect 3, wherein sending an indication of the first head position or the second head position of the user includes: sending an indication of the predicted head position to the device; and wherein the spatial audio data is at least partially based on the predicted head position.
[0094] Aspect 5: The method according to any one of Aspects 3-4, wherein determining the predicted head position comprises: using a machine learning model or a prediction filter to determine the predicted head position.
[0095] Aspect 6: A method according to any one of Aspects 1-5, wherein sending an indication of a first head position or a second head position of a user includes: sending an indication of the first head position to the device; and wherein the spatial audio data is based at least in part on the first head position; and wherein processing the spatial audio data includes: processing the spatial audio data based at least in part on the first head position to obtain spatial audio based at least in part on the second head position.
[0096] Aspect 7: The method according to Aspect 6 further includes: measuring a second head position after receiving the spatial audio data.
[0097] Aspect 8: A method according to any one of Aspects 6-7, wherein the spatial audio data is first spatial audio data, and wherein processing the spatial audio data includes: processing the first spatial audio data to obtain second spatial audio data, wherein the second spatial audio data is at least partially based on the second head position.
[0098] Aspect 9: A method according to any one of Aspects 1-8, wherein the second head position is a predicted head position of a user when spatial audio is to be output, wherein the spatial audio data is based at least in part on the predicted head position, and the method further comprises: determining an error value associated with the predicted head position based at least in part on a third head position; determining that the error value satisfies a threshold; and wherein processing the spatial audio data comprises: processing the spatial audio data based at least in part on the error value satisfying the threshold to obtain spatial audio based at least in part on the third head position.
[0099] Aspect 10: The method according to Aspect 9, further comprising: measuring a third head position after receiving the spatial audio data.
[0100] Aspect 11: An apparatus at a device, comprising: a processor; a memory coupled to the processor; and instructions stored in the memory and executable by the processor to cause the apparatus to perform the method of one or more of aspects 1-10.
[0101] Aspect 12: A device comprising a memory and one or more processors coupled to the memory, the one or more processors configured to perform the method of one or more of aspects 1-10.
[0102] Aspect 13: An apparatus comprising at least one component for performing the method of one or more of aspects 1-10.
[0103] Aspect 14: A non-transitory computer-readable medium storing code, the code comprising instructions executable by a processor to perform the method of one or more of aspects 1-10.
[0104] Aspect 15: A non-transitory computer-readable medium storing an instruction set, the instruction set comprising one or more instructions that, when executed by one or more processors of a device, cause the device to perform the method of one or more of aspects 1-10.
[0105] The foregoing disclosure provides illustration and description, but is not intended to be exhaustive or to limit the various aspects to the precise forms disclosed. Modifications and variations may be made in light of the foregoing disclosure, or may be acquired from the practice of various aspects.
[0106] As used herein, the term "component" is intended to be broadly interpreted as a combination of hardware and / or hardware and software. Whether referred to as software, firmware, middleware, microcode, hardware description language or other terms, "software" should be broadly interpreted as meaning instructions, instruction sets, codes, code segments, program codes, programs, subroutines, software modules, applications, software applications, software packages, routines, subroutines, objects, executable files, execution threads, processes and / or functions, and other examples. As used herein, a "processor" is implemented with a combination of hardware and / or hardware and software. It is obvious that the system and / or method described herein can be implemented with a combination of hardware and / or hardware and software in different forms. The actual dedicated control hardware or software code used to implement these systems and / or methods does not limit these aspects. Therefore, the operation and behavior of the system and / or method are described herein without reference to specific software codes, because those skilled in the art will understand that software and hardware can be designed to implement the system and / or method based at least in part on the description herein.
[0107] As used herein, "satisfying a threshold" may refer to a value greater than a threshold, greater than or equal to a threshold, less than a threshold, less than or equal to a threshold, equal to a threshold, not equal to a threshold, etc., depending on the context.
[0108] Even if a specific combination of features is described in the claims and / or disclosed in the specification, these combinations are not intended to limit the disclosure of each aspect. Many of these features can be combined in a manner not specifically described in the claims and / or not disclosed in the specification. The disclosure of each aspect includes the combination of each dependent claim with each other claim in the claim set. As used herein, the phrase "at least one" mentioned in the project list refers to any combination of these projects, including a single member. As an example, "at least one of a, b or c" is intended to cover a, b, c, a+b, a+c, b+c and a+b+c, and any combination with multiple identical 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 ordering of a, b and c).
[0109] Unless explicitly described as such, the elements, actions, or instructions used herein should not be interpreted as critical or essential. Furthermore, as used herein, the articles "a" and "an" are intended to include one or more items and can be used interchangeably with "one or more." Furthermore, as used herein, the article "the" is intended to include one or more items referenced in conjunction with the article "the" and can be used interchangeably with "one or more." Furthermore, as used herein, the terms "set" and "group" are intended to include one or more items and can be used interchangeably with "one or more." Figure 1 In the case of multiple items, the phrase "only one" or similar language is used. In addition, as used herein, the terms "has," "have," "having," and the like are intended to be open-ended terms that do not limit the elements they modify (e.g., an element "having" A may also have B). In addition, unless expressly stated otherwise, the phrase "based on" is intended to mean "based at least in part on." In addition, as used herein, the term "or" when used in series is intended to be inclusive and may be used interchangeably with "and / or" unless expressly stated otherwise (e.g., if used in combination with "either" or "only one of").
Claims
1. An audio device, comprising: two or more speakers configured to output spatial audio; one or more sensors; Memory; as well as One or more processors coupled to the memory, the one or more processors configured to cause the audio device to: measuring, via the one or more sensors, a first head position of a user of the audio device; sending an indication of the first head position or the second head position of the user to a device, wherein the second head position is based at least in part on the first head position, and wherein the second head position is the head position of the user when the spatial audio is to be output by the two or more speakers; receiving, from the device, spatial audio data based on the first head position or the second head position; processing the spatial audio data to obtain the spatial audio, wherein the spatial audio is based at least in part on the second head position; and The spatial audio is output via the two or more speakers.
2. The audio device according to claim 1, wherein The first head position is the head position of the user at a first time, wherein the second head position is the head position of the user at a second time, and Wherein a difference between the first time and the second time is based at least in part on at least one of a communication delay or a processing delay associated with outputting the spatial audio.
3. The audio device according to claim 1, wherein The second head position is a predicted head position of the user when the spatial audio is to be output, and The one or more processors are further configured to cause the audio device to: The predicted head position of the user is determined based at least in part on the first head position and at least in part on historical head position measurements.
4. The audio device according to claim 3, wherein: To cause the audio device to send the indication of the first head position or the second head position of the user, the one or more processors are configured to cause the audio device to: sending an indication of the predicted head position to the device; and Wherein the spatial audio data is based at least in part on the predicted head position.
5. The audio device according to claim 3, wherein: In order for the audio device to determine the predicted head position of the user, the one or more processors are configured to cause the audio device to: The predicted head position is determined using a machine learning model or a predictive filter.
6. The audio device according to claim 1, wherein To cause the audio device to send the indication of the first head position or the second head position of the user, the one or more processors are configured to cause the audio device to: sending an indication of the first head position to the device; and wherein the spatial audio data is based at least in part on the first head position; and Wherein, in order to enable the audio device to process the spatial audio data, the one or more processors are configured to enable the audio device to: The spatial audio data based at least in part on the first head position is processed to obtain the spatial audio based at least in part on the second head position.
7. The audio device according to claim 6, wherein: The spatial audio data is first spatial audio data, and wherein, in order for the audio device to process the spatial audio data, the one or more processors are configured to cause the audio device to: The first spatial audio data is processed to obtain second spatial audio data, wherein the second spatial audio data is based at least in part on the second head position.
8. The audio device according to claim 1, wherein The second head position is a predicted head position of the user when the spatial audio is to be output, wherein the spatial audio data is based at least in part on the predicted head position, and wherein the one or more processors are further configured to cause the audio device to: determining an error value associated with the predicted head position based at least in part on the third head position; and determining that the error value satisfies a threshold; and Wherein, in order to enable the audio device to process the spatial audio data, the one or more processors are configured to enable the audio device to: The spatial audio data is processed based at least in part on the error value satisfying the threshold to obtain the spatial audio based at least in part on the third head position.
9. A method performed by an audio device, comprising: measuring a first head position of a user of the audio device; sending an indication of the first head position or the second head position of the user to a device, wherein the second head position is based at least in part on the first head position, and The second head position is the head position of the user when the audio device is to output spatial audio; receiving, from the device, spatial audio data based on the first head position or the second head position; processing the spatial audio data to obtain the spatial audio, wherein the spatial audio is based at least in part on the second head position; and The spatial audio is output.
10. The method according to claim 9, wherein: The second head position is a predicted head position of the user when the spatial audio is to be output, and the method further includes: The predicted head position of the user is determined based at least in part on the first head position and at least in part on historical head position measurements.
11. The method according to claim 10, wherein: Sending the indication of the first head position or the second head position of the user comprises: sending an indication of the predicted head position to the device; and Wherein the spatial audio data is based at least in part on the predicted head position.
12. The method according to claim 9, wherein: Sending the indication of the first head position or the second head position of the user comprises: sending an indication of the first head position to the device; and wherein the spatial audio data is based at least in part on the first head position; and Wherein, processing the spatial audio data comprises: The spatial audio data based at least in part on the first head position is processed to obtain the spatial audio based at least in part on the second head position.
13. The method according to claim 12, further comprising: The second head position is measured after receiving the spatial audio data.
14. The method according to claim 9, wherein: The second head position is a predicted head position of the user when the spatial audio is to be output, wherein the spatial audio data is based at least in part on the predicted head position, and the method further comprises: determining an error value associated with the predicted head position based at least in part on a third head position; determining that the error value satisfies a threshold; and Wherein, processing the spatial audio data comprises: The spatial audio data is processed based at least in part on the error value satisfying the threshold to obtain the spatial audio based at least in part on the third head position.
15. The method according to claim 14, further comprising: The third head position is measured after receiving the spatial audio data.
16. A non-transitory computer-readable medium storing a set of instructions, the set of instructions comprising: One or more instructions that, when executed by one or more processors of an audio device, cause the audio device to: measuring a first head position of a user of the audio device; sending an indication of the first head position or the second head position of the user to a device, wherein the second head position is based at least in part on the first head position, and The second head position is the head position of the user when the audio device is to output spatial audio; receiving, from the device, spatial audio data based on the first head position or the second head position; processing the spatial audio data to obtain the spatial audio, wherein the spatial audio is based at least in part on the second head position; and The spatial audio is output.
17. The non-transitory computer readable medium of claim 16, wherein: The second head position is a predicted head position, and wherein the one or more instructions further cause the audio device to: The predicted head position of the user is determined based at least in part on the first head position and at least in part on historical head position measurements.
18. The non-transitory computer readable medium of claim 17, wherein: The one or more instructions that cause the audio device to send the indication of the first head position or the second head position of the user cause the audio device to: sending an indication of the predicted head position to the device; and Wherein the spatial audio data is based at least in part on the predicted head position.
19. The non-transitory computer readable medium of claim 16, wherein: The one or more instructions that cause the audio device to send the indication of the first head position or the second head position of the user cause the audio device to: sending an indication of the first head position to the device; and wherein the spatial audio data is based at least in part on the first head position; and The one or more instructions causing the audio device to process the spatial audio data cause the audio device to: The spatial audio data based at least in part on the first head position is processed to obtain the spatial audio based at least in part on the second head position.
20. The non-transitory computer readable medium of claim 16, wherein: The second head position is a predicted head position of the user when the spatial audio is to be output, wherein the spatial audio data is based at least in part on the predicted head position, and wherein the one or more instructions further cause the audio device to: determining an error value associated with the predicted head position based at least in part on the third head position; and determining that the error value satisfies a threshold; and The one or more instructions causing the audio device to process the spatial audio data cause the audio device to: The spatial audio data is processed based at least in part on the error value satisfying the threshold to obtain the spatial audio based at least in part on the third head position.