A method for motion adaptive speech processing, the method comprising: dynamically estimating a motion profile that is representative of a user's motion based on data from one or more resources associated with the user; wherein the data from the one or more resources include sensor data and data from a non-speech resource associated with the user, wherein dynamically estimating the motion profile includes computing a motion interpolation weight vector using the data from the one or more resources associated with the user, wherein dynamically estimating the motion profile further includes interpolating a plurality of models using the motion interpolation weight vector to generate a motion adaptive model, the step of computing a motion interpolation weight vector comprising the steps of: A: - estimating the user's direction; - computing vectors from a language model location of the user to a number of other language model locations, and scale the vectors with the speed and the direction of the user; - computing distances between the user and the language model locations; - computing the motion interpolation weight vector representing the user's probability to move in directions of the language model locations, or B: - computing a probable next position of the user by using a tracking method; - computing weights for a number of language model locations, wherein the weights represent probabilities that the language model locations are the next position of the user, based on the current position and movement of the user; effecting processing of a speech signal received from the user, the processing taking into account the estimated motion profile to produce an interpretation of the speech signal. dynamically estimating a motion profile that is representative of a user's motion based on data from one or more resources associated with the user; wherein the data from the one or more resources include sensor data and data from a non-speech resource associated with the user, wherein dynamically estimating the motion profile includes computing a motion interpolation weight vector using the data from the one or more resources associated with the user, wherein dynamically estimating the motion profile further includes interpolating a plurality of models using the motion interpolation weight vector to generate a motion adaptive model, the step of computing a motion interpolation weight vector comprising the steps of: A: - estimating the user's direction; - computing vectors from a language model location of the user to a number of other language model locations, and scale the vectors with the speed and the direction of the user; - computing distances between the user and the language model locations; - computing the motion interpolation weight vector representing the user's probability to move in directions of the language model locations, or B: - computing a probable next position of the user by using a tracking method; - computing weights for a number of language model locations, wherein the weights represent probabilities that the language model locations are the next position of the user, based on the current position and movement of the user; A: - estimating the user's direction; - computing vectors from a language model location of the user to a number of other language model locations, and scale the vectors with the speed and the direction of the user; - computing distances between the user and the language model locations; - computing the motion interpolation weight vector representing the user's probability to move in directions of the language model locations, - estimating the user's direction; - computing vectors from a language model location of the user to a number of other language model locations, and scale the vectors with the speed and the direction of the user; - computing distances between the user and the language model locations; - computing the motion interpolation weight vector representing the user's probability to move in directions of the language model locations, or B: - computing a probable next position of the user by using a tracking method; - computing weights for a number of language model locations, wherein the weights represent probabilities that the language model locations are the next position of the user, based on the current position and movement of the user; - computing a probable next position of the user by using a tracking method; - computing weights for a number of language model locations, wherein the weights represent probabilities that the language model locations are the next position of the user, based on the current position and movement of the user; effecting processing of a speech signal received from the user, the processing taking into account the estimated motion profile to produce an interpretation of the speech signal.