Cloud Byte Stream Alignment Method
The method addresses latency and time deviation challenges in cloud-based echo noise cancellation systems by using loopback, timestamp, or ping methods to select and process audio signals, achieving effective echo and noise cancellation in vehicle environments.
Patent Information
- Application Number
- JP2022523594
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2019-12-26
- Filing Date
- 2020-12-23
- Publication Date
- 2025-05-19
- Estimated Expiration
- 2040-12-23
AI Technical Summary
Cloud-based echo noise cancellation systems face challenges in managing latency and time deviation between audio streams, which complicates echo and noise cancellation in vehicle environments.
A method for selecting and processing audio signals using loopback, timestamp, or ping methods to adjust for latency and time deviation, ensuring accurate echo noise cancellation in cloud-based systems.
The method effectively reduces latency and time deviation, enabling precise echo and noise cancellation in cloud-based systems, even in vehicle environments with varying network conditions.
Smart Images

Figure 0007679367000001 
Figure 0007679367000002 
Figure 0007679367000003
Abstract
Description
[Technical field]
[0001] The present disclosure relates to a method for selecting signals to be processed in a cloud component and resynchronized between the cloud component and an end device. [Background technology]
[0002] Echo Noise Cancellation Reduction (ECNR) improves the performance of telephony, conferencing, voice recognition, mobile devices, and smart speaker systems. This is especially true for hands-free audio in a vehicle environment where audio noise coupling may include noise from the vehicle audio system, engine noise, road noise, noise from the air conditioning system, wind noise, voice from hands-free phone conversations, and other cabin noise, to name just a few. A computational component for processing audio in this way requires both input and output streams to perform its function. Only limited misalignment between the input and output streams can be tolerated. For example, within a co-located ECNR system in a vehicle, a 5 ms delay between the speaker stream and the microphone stream associated with the delivery / reception of these audio streams is manageable. When ECNR or other processing is performed in the cloud, the delivery / reception of these streams may be significantly delayed than what typically occurs in a vehicle, as the streams are transmitted over a network to a cloud-based processor. The latency introduced by moving the processing components to the cloud is not only larger, but also variable, complicating, for example, the determination of the audio signals to be processed by the cloud-based ECNR block.
[0003] The time skew of the streams going to and from the cloud-based ECNR needs to be resolved so that the ECNR can perform its functions of detecting and cancelling echo and noise. Summary of the Invention [Means for solving the problem]
[0004] The subject of the present invention relates to a method for selecting an audio stream for adjusting the compensation of latency caused by content transmitted from a vehicle, an Internet Protocol phone, or an intelligent speaker through a network, and processing it in an ECNR block of a cloud or some other computing environment located outside the vehicle. Also, the audio signal processed by the ECNR block of the cloud is sent back to an end device of the vehicle. The selection of the appropriate audio signal to be processed can be realized using a loopback method, a time stamp (TS) method, or a ping method. The ping method also allows the selection of the incoming and outgoing audio signals in the ECNR block for processing. The present specification also provides, for example, the following items: (Item 1) A method for cloud-based echo noise cancellation and reduction (ECNR) of an audio signal originating from an audio system and played back at an end device, comprising: receiving an uplink audio signal at a microphone of the audio system; transmitting the uplink audio signal to a cloud-based ECNR through a network; transmitting the uplink audio signal from the ECNR to a content cloud; receiving, at the ECNR, a downlink audio signal from the content cloud; buffering and ordering the uplink and downlink audio signals; identifying a suitable uplink audio signal from said buffer; transmitting an appropriate uplink audio signal over the network for playback on a speaker of the end device; The method comprising: (Item 2) The step of identifying a suitable uplink audio signal further comprises: looping the downlink audio signal back to the ECNR through the network together with the uplink audio signal; selecting, from the buffered and ordered audio signals entering and leaving the ECNR, the audio signal that matches the looped back downlink audio signal as the appropriate uplink audio signal; The method according to item 1, comprising: (Item 3) and wherein the step of identifying a suitable uplink audio signal further comprises: combining the uplink audio signal with the timestamp of the downlink audio signal; selecting, from the buffered and ordered audio signals entering and leaving the ECNR, the audio signal that matches the timestamp of the downlink audio signal as the appropriate uplink audio signal; The method according to item 1, comprising: (Item 4) The step of identifying the appropriate uplink audio signal to process further comprises: looping pings between the audio system and the cloud to measure a time delay; continuously adjusting the ping with the uplink audio signal; selecting, from the buffered and ordered audio signals entering and leaving the ECNR, the audio signal that matches the time delay of the ping as the appropriate uplink audio signal; The method according to item 1, comprising: (Item 5) The step of receiving a downlink audio signal at the ECNR further comprises: continuously adjusting the ping with the downlink audio signal; processing the downlink audio signal in the ECNR; transmitting the processed downlink audio signal to the audio system; The method according to item 4, comprising: (Item 6) 1. A system for canceling echo noise in an audio signal, comprising: an audio system having a microphone and a loudspeaker; an uplink audio signal received at the microphone; A cloud-based processor; a communications link between the audio system and the cloud-based processor for transmitting the uplink audio signal between the audio system and the cloud-based processor; the cloud based processor identifying and selecting a suitable uplink audio signal from the uplink audio signals, the cloud based processor processing the suitable uplink audio signal for echo noise cancellation reduction; The appropriate uplink audio signal is sent back to the audio system and played on the loudspeaker. (Item 7) 7. The system of claim 6, further comprising a downlink audio signal generated in a content cloud that is looped back with the uplink signal, the appropriate uplink audio signal being selected by detecting an audio signal that matches the looped back downlink audio signal. (Item 8) A downlink audio signal; a time stamp of the downlink audio signal; 7. The system of claim 6, wherein the appropriate uplink audio signal further includes an audio signal that causes a combined uplink audio signal to match the timestamp of the downlink audio signal. (Item 9) A downlink audio signal; and a ping for measuring the time delay. the ping is looped between the audio system and the cloud-based processor and is continuously coordinated with the uplink audio signal; 7. The system of claim 6, wherein the appropriate uplink audio signal is identified as the audio signal that matches the time delay of the ping. (Item 10) 10. The system of claim 9, wherein the ping is continuously coordinated with the downlink audio signal, and the appropriate uplink audio signal is identified as the audio signal that matches the time delay of the ping. [Brief description of the drawings]
[0005] [Figure 1] FIG. 1 is a flow diagram of a method for selecting audio samples for cloud-based ECNR of uplink and downlink audio streams. [Diagram 2]FIG. 1 is a system block diagram showing data streams flowing between a vehicle's audio system and a cloud-based ECNR block. [Diagram 3] FIG. 1 is a system block diagram showing data streams flowing between a vehicle's audio system and a cloud-based ECNR block incorporating time stamps (TS). [Figure 4] FIG. 1 is a system block diagram showing data streams flowing between a vehicle's audio system and a cloud-based ECNR block incorporating pin groups.
[0006] Elements and steps in the figures are illustrated for simplicity and clarity and have not necessarily been provided according to any particular order, for example, steps that may be performed simultaneously or in different orders are shown in the figures to help improve understanding of embodiments of the present disclosure. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0007] Although various aspects of the present disclosure have been described with reference to certain exemplary embodiments, the present disclosure is not limited to such embodiments, and additional modifications, applications, and embodiments may be implemented without departing from the present disclosure. In the figures, the same reference numerals are used to indicate the same components. Those skilled in the art will recognize that the various components described herein may be modified without departing from the scope of the present disclosure.
[0008] Any one or more of the servers, receivers, or devices described herein include computer executable instructions that may be compiled or interpreted from computer programs created using various programming languages and / or technologies. Generally, a processor (such as a microprocessor) receives instructions from, for example, a memory, a computer readable medium, etc., and executes the instructions. A processing unit includes a non-transitory computer readable storage medium capable of executing instructions of a software program. The computer readable storage medium may be, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination thereof. Any one or more of the devices herein may rely on firmware, which may require updates from time to time to ensure compatibility with operating systems, improvements and additional features, security updates, etc. Connectivity and network servers, receivers, or devices may include, but are not limited to, SATA, Wi-Fi, Lightning connector, USB, Ethernet, UFS, 5G, etc. One or more servers, receivers, or devices may operate using multiple software programs and / or platforms for interfacing with proprietary operating systems, graphics, audio, wireless networks, just to name a few, to enable applications and integrate with vehicle components, system hardware, and external devices such as smartphones, tablets, and other systems.
[0009] FIG. 1 shows a flow diagram of a method 100 for cloud-based echo noise cancellation reduction (ECNR) of an audio signal. The description herein applies to a vehicle-based audio system that is connected to a cloud provider and a telephony and content cloud provider through a network. However, it should be noted that the subject matter of the present invention is not limited to in-vehicle applications, but may also be applied to smart speakers, IP conferencing systems, etc. In either case, audio signal processing is performed in the cloud. Speech, echo, and noise signals are received, for example, by a microphone in the vehicle cabin (102). Processed uplink audio samples are created from the received speech, echo, and noise signals (104). The processed uplink audio samples are transmitted through a network to the cloud (106). In the cloud, the processed uplink audio samples are ordered, time-stamped, and buffered.
[0010] Throughout the process up to this point, latency is incurred as the uplink audio is transmitted to the cloud. This latency varies and is affected by network speed, the distance the signal travels, and other factors. Thus, from the buffer, the appropriate uplink audio sample to be processed is identified (110), selected, and sent to the ECNR block for processing (112). Any one of methods 200, 300, and 400 may be used to resolve the time skew of the audio streams entering and leaving the ECNR and to identify the appropriate uplink audio sample to be processed in the ECNR. Method 200 applies a loopback scheme to step 110 of identifying the appropriate uplink audio sample to be processed, and will be described later herein with reference to the system shown in FIG. 2. Method 300 applies a timestamp scheme to step 110 of identifying the appropriate uplink audio sample to be processed, and will be described later herein with reference to the system shown in FIG. 3. Method 400 applies a ping scheme to step 110 of identifying the appropriate uplink audio sample to be processed, and will be described later herein with reference to the system shown in FIG. 4.
[0011] 1, appropriate uplink audio samples to be processed are identified by the ECNR block (110), processed (112), and the processed uplink audio samples are transmitted to the telephony and content cloud (114). Downlink audio samples are received from the telephony and content cloud (116). The downlink audio samples are time-stamped and transmitted over the network (118), again with an additional time delay, and the downlink audio samples are output on a speaker (e.g., a speaker in a vehicle audio system) (120).
[0012] An audio computation component requires both output and input streams to perform its function. In many cases, only a limited time skew between the streams can be tolerated. This coordination is difficult to achieve when the processing is done remotely, such as on a cloud-based processor, and the delivery and / or reception of the streams occurs in a vehicle that may be hundreds of miles away from the cloud-based processor.
[0013] 2 is a block diagram of a system 200 showing audio data streams flowing between an audio system 202 (such as a vehicle audio system, a smart speaker, or an IP conferencing system) and a cloud-based ECNR 204. Loopback audio 214 is used by the method of FIG. 1 and is applied in step 110 to identify appropriate uplink audio samples 220 from a buffer, sequencer, and time adjustment block 218 to be processed in the cloud-based ECNR 204. An uplink audio signal 222 is created from voice, echo, and noise signals received at a microphone 224. A downlink audio signal 206 is sent back to the audio system 202 from a telephony and content cloud 208 through a network 210, where the downlink audio signal 206 is output at a speaker 212, looped back 214, and routed through the network 210 to the cloud 216 along with the uplink audio samples to be processed. In the method 200 shown in FIG. 2, an uplink audio signal 222 along with a looped back downlink audio signal 214 are both time aligned and transmitted over a network 210 .
[0014] When the audio signals 222, 214 arrive at the cloud 216 for processing, they are buffered, ordered and time-stamped in block 218 with respect to a time reference 219 before being selected. According to the loop-back time, the appropriate uplink audio sample 220 to be processed is identified and then selected from the buffer. The selected uplink audio sample is processed in the ECNR 204. The processed signal 226 is transmitted to the telephony and content cloud 208 and the downlink audio 206 is returned to the ECNR 204, where it is time-stamped in block 218, transmitted over the network 210 and played on the speaker 212 of the audio system 202.
[0015] 3 is a block diagram of a system 300 showing an audio data stream flowing between an audio system 302 (such as a vehicle audio system, a smart speaker, or an IP conferencing system) and a cloud-based ECNR block 304. The time stamp system shown in FIG. 3 is used by the method of FIG. 1 and is applied in step 110 to identify appropriate uplink audio samples 320 from the buffer of block 318 to be processed in the cloud-based ECNR block 304. An uplink audio signal 322 is created and time stamped 314 from the voice, echo, and noise signals received by a microphone 324. The uplink signal time stamp Tu is added to the uplink audio signal 322 transmitted through the network 310.
[0016] The downlink audio signal 306 is transmitted from the telephony and content cloud 308 back to the vehicle audio system 302 through a network 310, where the downlink audio signal 306 is output on a speaker 312. The downlink audio samples are also time stamped 314. The downlink signal time stamp Td is combined with the uplink signal time stamp Tu and the uplink audio signal 322 transmitted through the network 310.
[0017] When the uplink audio signal 322 and timestamps Tu and Td arrive at the cloud 316, they are again buffered, ordered and time-stamped in block 318 with respect to a time reference 319 before being selected. The appropriate uplink audio sample 320 to be processed is identified and selected from the buffer in block 318 by aligning the timestamps Tu, Td with the time reference Tr, which are processed in the ECNR block 304. The processed signal 326 is transmitted to the telephony and content cloud 308, and the downlink audio signal 306 is again returned to the ECNR block 304 and time-stamped in block 318 before being transmitted through the network 310 and played on the speakers 312 of the audio system 302.
[0018] The time stamp scheme described with reference to Figure 3 provides the advantage that only the time stamp Td associated with the downlink audio signal is looped back and transmitted through the network 310, rather than the entire downlink audio signal. This has the advantage that less data is streamed, which is transmitted in a faster and more cost-effective manner than the loopback scheme described with reference to Figure 2.
[0019] Figure 4 is a block diagram of a system 400 showing an audio data stream flowing between an audio system 402 (such as a vehicle audio system, a smart speaker, or an IP conferencing system) and a cloud-based ECNR block 404. The pin group system shown in Figure 4 is used by the method of Figure 1 and is applied to identify appropriate uplink audio samples 420 from the buffer (418) to be processed in the cloud-based ECNR 404.
[0020] The uplink audio signal 422 is created from the voice, echo, and noise signals received by the microphone 424 at the audio system 402. A ping 430 is looped through the network 410 between a ping client 428 at the audio system 402 and a buffer at block 418 at the cloud 416. Instead of time stamping the audio signal as described above, the time it takes to send the uplink audio signal 422 to the cloud 416 is the amount of time delay used to identify and select the audio signal 420 from the buffer at block 418 to be processed at the ECNR block 404. The processed signal 426 is transmitted to the telephony and content cloud 408, and the downlink audio signal 406 is again transmitted back to the ECNR block 404, transmitted through the network 410, and time stamped at block 418 before being played on the speaker 412 at the audio system 402.
[0021] The downlink audio signal 406 is sent back from the telephony and content cloud 408 to the vehicle audio system 402 through the network 410, where the downlink audio signal 406 is output on the speaker 412. A distinct advantage of the pin group approach is that the pings can be continuously adjusted to accommodate changes in latency. Also, the pings are universal. They are not specific to a cloud provider. Thus, the pings can be used to resolve time skews between the uplink and downlink audio signals. Thus, before sending the downlink audio signal 406 back through the network 410 to the audio system 402 for playback on the speaker 412, ECNR can clean up the downlink signal in a manner similar to the processed uplink signal 420.
[0022] In the foregoing specification, the present disclosure has been described with reference to certain exemplary embodiments. However, various modifications and changes can be made without departing from the scope of the present disclosure as set forth in the claims. The present specification and figures are illustrative rather than restrictive, and modifications are intended to be included within the scope of the present disclosure. Thus, the scope of the present disclosure should be determined by the claims and their legal equivalents, and not merely by the examples described.
[0023] For example, the steps recited in any method or process claim may be performed in any order and are not limited to the particular order presented in the claims. Averaging may be performed with a filter to minimize the effects of signal noise. Furthermore, the components and / or elements recited in any apparatus claim may be assembled or otherwise operatively configured in various permutations and are therefore not limited to the particular configuration recited in the claims.
[0024] Benefits, other advantages, and solutions to problems have been described above with respect to exemplary embodiments. However, any benefit, advantage, solution to a problem, or any element that may cause or make more pronounced any particular benefit, advantage, or solution, is not to be construed as a critical, required, or essential feature or component of any or all of the claims.
[0025] The terms "comprise," "comprises," "comprising," "having," "including," "includes," or any variation thereof, are intended to refer to a non-exclusive inclusion, whereby a process, method, article, composition, or apparatus that includes a list of elements may include not only those elements that are listed, but may include other elements that are not expressly listed or that are not inherent to such process, method, article, composition, or apparatus. Other combinations and / or modifications of the above-described structure, arrangement, application, proportions, elements, materials, or components used in the practice of the disclosure, in addition to those not specifically listed, may be altered or otherwise specially adapted to particular environments, manufacturing specifications, design parameters, or other operating requirements without departing from the general principles of the disclosure.
Claims
1. 1. A method for cloud-based echo noise cancellation and reduction (ECNR) of an audio signal originating in an audio system and played back at an end device, the method comprising: receiving an uplink audio signal at a microphone of the audio system; transmitting the uplink audio signal to a cloud-based ECNR through a network; transmitting the uplink audio signal from the ECNR to a content cloud; receiving a downlink audio signal from the content cloud at the ECNR; generating buffered and ordered audio signals by buffering and ordering the uplink audio signals and the downlink audio signals in a buffer and sequencer block in the cloud-based ECNR; identifying a suitable uplink audio signal from said buffer and sequencer block, said suitable uplink audio signal being an uplink audio signal that is time-aligned with said downlink audio signal; transmitting the appropriate uplink audio signal over the network for playback on a speaker of the end device; looping the downlink audio signal back through the network to the ECNR together with the uplink audio signal; selecting, from the buffered and ordered audio signals entering and leaving the ECNR, the audio signal that matches the looped back downlink audio signal as the appropriate uplink audio signal; A method comprising:
2. A method for cloud-based echo noise cancellation reduction (ECNR) of an audio signal originating from an audio system and played back at an end device, the method comprising: receiving, at a microphone of the audio system, a buffered, sequenced, and time-stamped uplink audio signal; transmitting the uplink audio signal to a cloud-based ECNR through a network; receiving, at the ECNR, a downlink audio signal from a content cloud; and buffering, ordering and time-stamping the uplink audio signal and the downlink audio signal again using a reference timestamp in the cloud-based ECNR to generate buffered, ordered and time-stamped audio signals. identifying a suitable uplink audio signal from a buffer of the cloud-based ECNR, the suitable uplink audio signal being an uplink audio signal that is time-aligned with the downlink audio signal; combining the uplink audio signal with the timestamp of the downlink audio signal; selecting, from the buffered, ordered and time-stamped audio signals entering and leaving the ECNR, the audio signal that matches the timestamp of the downlink audio signal as the appropriate uplink audio signal; transmitting the appropriate uplink audio signal from the cloud-based ECNR to the content cloud; transmitting the downlink audio signal over the network for playback on a speaker of the end device; A method comprising:
3. A method for cloud-based echo noise cancellation reduction (ECNR) of an audio signal originating from an audio system and played back at an end device, the method comprising: receiving an uplink audio signal at a microphone of the audio system; transmitting the uplink audio signal to a cloud-based ECNR through a network; transmitting the uplink audio signal from the ECNR to a content cloud; receiving a downlink audio signal from the content cloud at the ECNR; generating buffered and ordered audio signals by buffering and ordering the uplink audio signals and the downlink audio signals in a buffer and sequencer block in the cloud-based ECNR; identifying a suitable uplink audio signal from said buffer and sequencer block, said suitable uplink audio signal being an uplink audio signal that is time-aligned with said downlink audio signal; transmitting the appropriate uplink audio signal over the network for playback on a speaker of the end device; Including, The step of identifying the appropriate uplink audio signal to process further comprises: looping a ping between the audio system and the cloud-based ECNR to measure a time delay; continuously adjusting the ping with the uplink audio signal; selecting, from the buffered and ordered audio signals entering and leaving the ECNR, the audio signal that matches the time delay of the ping as the appropriate uplink audio signal; A method comprising:
4. The step of receiving a downlink audio signal at the ECNR further comprises: continuously adjusting the ping with the downlink audio signal; processing the downlink audio signal at the ECNR; transmitting the processed downlink audio signal to the audio system; The method of claim 3 , comprising:
5. 1. A system for canceling echo noise in an audio signal, the system comprising: an audio system having a microphone and a loudspeaker; an uplink audio signal received at the microphone; a downlink audio signal generated in a content cloud that is looped back with the uplink audio signal; A cloud-based processor; a communications link between the audio system and the cloud-based processor for transmitting the uplink audio signal between the audio system and the cloud-based processor; the cloud-based processor identifies and selects a suitable uplink audio signal from the uplink audio signals, the suitable uplink audio signal being time-aligned with the downlink audio signal, and the cloud-based processor processes the suitable uplink audio signal for echo noise cancellation reduction; The appropriate uplink audio signal is sent back to the audio system and played on the loudspeaker.
6. The system of claim 5, wherein the appropriate uplink audio signal is selected by detecting an audio signal that matches the looped back downlink audio signal.
7. A downlink audio signal; a time stamp of the downlink audio signal; 6. The system of claim 5, wherein the appropriate uplink audio signal further includes the audio signal that causes a combined uplink audio signal to match the timestamp of the downlink audio signal, the combined uplink audio signal including a combination of (a) the timestamp of the uplink audio signal and (b) the uplink audio signal.
8. A downlink audio signal; and a ping for measuring the time delay. the ping is looped between the audio system and the cloud-based processor and is continuously coordinated with the uplink audio signal; The system of claim 5 , wherein the appropriate uplink audio signal is identified as the audio signal that matches the time delay of the ping.
9. 9. The system of claim 8, wherein the ping is continuously coordinated with the downlink audio signal, and the appropriate uplink audio signal is identified as the audio signal that matches the time delay of the ping.
Citation Information
Patent Citations
Audio system with centralized audio signal processing
JP2014110640A
Dynamic locale based aggregation of full duplex media streams
US20160014373A1