1. A system comprising: a mobile device configured to perform operations comprising: receiving a speech input, the speech input including a speech data stream; while receiving the speech input, receiving a non-speech input and time information associated with the non-speech input, the time information operable to specify a sequence in which the speech input and non-speech input are assembled, wherein the time information includes a start streaming node and a stop streaming node; retrieving text data from the speech input using speech recognition; assembling the text data with the non-speech input based on the time information to produce output data, wherein the assembling comprises modifying the text data in accordance with the non-speech input; and providing the output data to a user through a user interface.