11. A device for providing information to a user, the device comprising: a microphone; a display; a processor; and a memory including a computer program for audio recognition, wherein instructions of the computer program when executed by the processor perform operations for: detecting entry in an audio recognition mode, the detecting including receiving an audio stream via the microphone; analyzing one or more segments of the audio stream before a complete audio stream is received, wherein analyzing includes: sending the one or more segments to a first server for determining if the audio stream includes speech; and sending the one or more segments to a second server for determining if the audio stream is from a song; receiving a first confidence score from the first server and receiving a second confidence score from the second server; displaying a possible candidate on the display based on a partial identification of the audio stream using the first and second confidence scores while continuing analyzing additional segments as the audio stream is received until an end of the audio stream or until the first and second confidence scores determine that the audio stream has been identified as speech or music; and presenting results on the display based on the completed identification of the audio stream.
11. A device for providing information to a user, the device comprising: a microphone; a display; a processor; and a memory including a computer program for audio recognition, wherein instructions of the computer program when executed by the processor perform operations for: detecting entry in an audio recognition mode, the detecting including receiving an audio stream via the microphone; analyzing one or more segments of the audio stream before a complete audio stream is received, wherein analyzing includes: sending the one or more segments to a first server for determining if the audio stream includes speech; and sending the one or more segments to a second server for determining if the audio stream is from a song; receiving a first confidence score from the first server and receiving a second confidence score from the second server; displaying a possible candidate on the display based on a partial identification of the audio stream using the first and second confidence scores while continuing analyzing additional segments as the audio stream is received until an end of the audio stream or until the first and second confidence scores determine that the audio stream has been identified as speech or music; and presenting results on the display based on the completed identification of the audio stream. 13. The device as recited in claim 11 , wherein sending the one or more segments to a first server and sending the one or more segments to a second server are performed in parallel and independently from each other.