1. A method for filtering and eliminating noise from natural language utterances, comprising: receiving a natural language utterance at a microphone array that adds one or more nulls to a beam pattern steered to point in a direction associated with a user speaking the natural language utterance, wherein the one or more nulls notch out point or limited area noise sources from an input speech signal corresponding to the natural language utterance; comparing environmental noise to the input speech signal corresponding to the natural language utterance to set one or more parameters associated with an adaptive filter coupled to the microphone array; passing the input speech signal corresponding to the natural language utterance to the adaptive filter, wherein the adaptive filter uses band shaping and notch filtering to remove narrow-band noise from the input speech signal corresponding to the natural language utterance according to the one or more parameters; suppressing cross-talk and environmentally caused echoes in the input speech signal corresponding to the natural language utterance using adaptive echo cancellation in the adaptive filter; sending the input speech signal passed through the adaptive filter to a speech coder that uses adaptive lossy audio compression to remove momentary gaps from the input speech signal and variable rate sampling to compress and digitize the input speech signal, wherein the speech coder optimizes the adaptive lossy audio compression and the variable rate sampling to only preserve components in the input speech signal that will be input to a speech recognition engine; and transmitting the digitized input speech signal from a buffer in the speech coder to the speech recognition engine, wherein the speech coder transmits the digitized input speech signal to the speech recognition engine at a rate that depends on available bandwidth between the speech coder and the speech recognition engine.
1. A method for filtering and eliminating noise from natural language utterances, comprising: receiving a natural language utterance at a microphone array that adds one or more nulls to a beam pattern steered to point in a direction associated with a user speaking the natural language utterance, wherein the one or more nulls notch out point or limited area noise sources from an input speech signal corresponding to the natural language utterance; comparing environmental noise to the input speech signal corresponding to the natural language utterance to set one or more parameters associated with an adaptive filter coupled to the microphone array; passing the input speech signal corresponding to the natural language utterance to the adaptive filter, wherein the adaptive filter uses band shaping and notch filtering to remove narrow-band noise from the input speech signal corresponding to the natural language utterance according to the one or more parameters; suppressing cross-talk and environmentally caused echoes in the input speech signal corresponding to the natural language utterance using adaptive echo cancellation in the adaptive filter; sending the input speech signal passed through the adaptive filter to a speech coder that uses adaptive lossy audio compression to remove momentary gaps from the input speech signal and variable rate sampling to compress and digitize the input speech signal, wherein the speech coder optimizes the adaptive lossy audio compression and the variable rate sampling to only preserve components in the input speech signal that will be input to a speech recognition engine; and transmitting the digitized input speech signal from a buffer in the speech coder to the speech recognition engine, wherein the speech coder transmits the digitized input speech signal to the speech recognition engine at a rate that depends on available bandwidth between the speech coder and the speech recognition engine. 5. The method recited in claim 1 , wherein the adaptive filter has a pass band set to optimize a signal to noise ratio associated with the components in the input speech signal that will be input to the speech recognition engine.