Sound gathering system
Abstract
A sound gathering system is disclosed herein and includes a plurality of microphones each configured to sample sound coming from a sound source. A plurality of processors are arranged in a processor chain. Each processor is coupled to at least one of the microphones and is configured to store sound samples received from the at least one microphone to a memory. A controller is terminally connected to the processor chain via a first processor. The controller is configured to calculate at least one time delay for each microphone, wherein the at least one time delay for each microphone is provided to the processor coupled thereto and is used by the processor to determine a memory position from which to begin reading sound samples.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. A sound gathering system comprising:
a plurality of microphones, each configured to sample sound coming from a sound source;
a processor chain having a plurality of processors, each coupled to at least one of the microphones and each configured to store sound samples received from the at least one microphone to a memory; and
a controller terminally connected to the processor chain via a first processor, the controller configured to calculate at least one time delay for each microphone, wherein the at least one time delay for each microphone is provided to the processor coupled thereto and is used by the processor to determine a memory position from which to begin reading sound samples.
2. The sound gathering system of claim 1 , wherein each time delay is packaged in a time delay instruction that is sent over a first channel to each processor in the processor chain, beginning with the first processor and ending with a last processor.
3. The sound gathering system of claim 2 , wherein each processor, beginning with the first processor, removes in order the at least one time delay associated with the microphone coupled thereto from the time delay instruction.
4. The sound gathering system of claim 3 , wherein with the exception of the last processor, each remaining processor adds a sound sample read from memory to a sound sample received over a second channel from another processor.
5. The sound gathering system of claim 1 , wherein the memory of each processor comprises a ring buffer having a predetermined length and wherein the memory position from which to begin reading sound samples is determined by subtracting an integer value of the at least one time delay from a current write pointer position of the ring buffer.
6. The sound gathering system of claim 1 , wherein the time delay for a given microphone is calculated based on the distance between the sound source and the microphone located furthest from the sound source; the distance between the sound source and the given microphone; the sampling rate of the given microphone; and the speed of sound.
7. The sound gathering system of claim 6 , wherein the time delay for the microphone located furthest from the sound source has a time delay of zero and the time delays for the remaining microphones increase the closer the microphones are to the sound source.
8. The sound gathering system of claim 1 , wherein the sound samples read from each memory are phased according to the microphone located furthest from the sound source.
9. A sound gathering system comprising:
a plurality of microphones, each configured to sample sound coming from a sound source;
a processor chain having a plurality of processors, each coupled to at least one of the microphones and each configured to store sound samples received from the at least one microphone to a memory; and
a controller terminally connected to the processor chain via a first processor, the controller configured to generate a time delay instruction containing a plurality of time delays that are each associated with one of the microphones;
wherein the time delay instruction is provided to each of the processors over a first channel;
wherein each processor removes at least one time delay from the time delay instruction and determines a memory position from which to begin reading sound samples based on the at least one time delay; and
wherein the sound samples read from the memory of each processor are summed together over a second channel to generate in-phase signals that are sent to the controller.
10. The sound gathering system of claim 9 , wherein with the exception of a last processor in the processor chain, each remaining processor adds a sound sample read from memory to a sound sample received over a second channel from another processor.
11. The sound gathering system of claim 9 , wherein the memory of each processor comprises a ring buffer having a predetermined length and wherein the memory position from which to begin reading sound samples is determined by subtracting an integer value of the at least one time delay from a current write pointer position of the ring buffer.
12. The sound gathering system of claim 9 , wherein the time delay for a given microphone is calculated based on the distance between the sound source and the microphone located furthest from the sound source; the distance between the sound source and the given microphone; the sampling rate of the given microphone; and the speed of sound.
13. The sound gathering system of claim 12 , wherein the time delay for the microphone located furthest from the sound source has a time delay of zero and the time delays for the remaining microphones increase the closer the microphones are to the sound source.
14. The sound gathering system of claim 9 , wherein the sound samples read from each memory are phased according to the microphone located furthest from the sound source.
15. A method of gathering sound comprising the steps of:
sampling sound coming from a sound source using a plurality of microphones;
arranging a plurality of processors in a processor chain, each processor coupled to at least one of the microphones and each configured to store sound samples received from the at least one microphone to a memory;
terminally connecting a controller to the processor chain via a first processor and using the controller to generate a time delay instruction containing a plurality of time delays that are each associated with one of the microphones;
providing the time delay instruction to each of the processors over a first channel;
removing with each processor at least one time delay from the time delay instruction and determining a memory position from which to begin reading sound samples based on the at least one time delay; and
summing together sound samples read from the memory of each processor over a second channel to generate in-phase signals that are sent to the controller.
16. The method of claim 15 , wherein with the exception of a last processor in the processor chain, each remaining processor adds a sound sample read from memory to a sound sample received over a second channel from another processor.
17. The sound gathering system of claim 15 , wherein the memory of each processor comprises a ring buffer having a predetermined length and wherein the memory position from which to begin reading sound samples is determined by subtracting an integer value of the at least one time delay from a current write pointer position of the ring buffer.
18. The sound gathering system of claim 15 , further comprising the step of calculating the time delay for a given microphone based on the distance between the sound source and the microphone located furthest from the sound source; the distance between the sound source and the given microphone; the sampling rate of the given microphone; and the speed of sound.
19. The sound gathering system of claim 18 , wherein the time delay for the microphone located furthest from the sound source has a time delay of zero and the time delays for the remaining microphones increase the closer the microphones are to the sound source.
20. The sound gathering system of claim 15 , wherein the sound samples read from each memory are phased according to the microphone located furthest from the sound source.Join the waitlist — get patent alerts
Track US9584910B2 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.