1. A computing-device implemented method, comprising: receiving a selected multimedia stream at a mobile device; outputting the selected multimedia stream; determining that a user wishes to browse other available multimedia streams; pausing the selected multimedia stream when it is determined that the user wishes to browse the other available multimedia streams; determining an amount of time that the selected multimedia stream was being output prior to pausing the selected multimedia stream; determining a user interest in the selected multimedia stream based on the amount of time that the selected multimedia stream was being output prior to pausing the selected multimedia stream; determining whether to cache the selected multimedia stream based on the user interest in the selected multimedia stream; caching, when it is determined to cache the selected multimedia stream, the selected multimedia stream by storing, in a memory, content of the selected multimedia stream that is received while the selected multimedia stream is paused, and while the user browses the other available multimedia streams; determining that the user has finished browsing the other available multimedia streams; and outputting the cached multimedia stream based on determining that the user has finished browsing the other available multimedia streams.