Memory limitations prevent common cell phones from storing lengthy content locally. Streaming is an option, but the user experience suffers when network connectivity is lost or user stops a stream to perform another task. In each case, user must start over from the beginning.
Therefore, there exists a need for improved usability of streamed digital content.
The present invention provides an intelligent client with a catalog of available streams and keeps a persistent record of each stream to which the user listens and the point at which they stop in each stream. Connections may drop, batteries may die, etc., still, the user may return to any stream and pick up where they left off or “rewind” as desired.
An example method receives a selection for a streamed media file at a mobile communications device. The received selection is sent to a server via at least one of a mobile communications network and a public data network. A portion of the streamed media file that was not presented by the mobile communications device in a previous access by the mobile communications device is received from the server, if the streamed media file was interrupted during a previous presentation. The received portion of the streamed media file is presented on the mobile communications device.
In one aspect of the invention, an association between the streamed media file and a present segment of the streamed media file is stored and a segment counter based on the present segment is set. The presented portion of the streamed media file includes a segment that is based on the set segment counter and the stored association.
In another aspect of the invention, next segment is received during or after presentation of the present segment and presented after presentation of the present segment. The segment counter is updated based on the presented next segment and an association of the streamed media file and the next segment are stored.
In still another aspect of the invention, all stored associations between segments and the streamed media file are deleted if all the segments for the streamed media file have been presented
Preferred and alternative embodiments of the present invention are described in detail below with reference to the following drawings:
The radio component 210 allows data communications with a public or private data network 218, such as the Internet, via cellular wireless voice and data network basestations 214, associated mobile phone carrier 215 and a gateway 216. The radio component 210 sends and receives a variety of packet data 229 according to a predefined protocol (UDP, TCP, SMTP, HTTP, etc) through the data network 218.
Connected to the data network 218 is a server 231 or group of servers that enable the download of open or protected (encrypted) digital media files to the device 200 and digital content keys to unlock the protected content for use on the device 200 that are properly authenticated. The processor 207 executes previously stored client software that performs the process described below.
At block 412, the client software initiates presentation of the current segment. At block 413, the process determines if there are more segments for the media file. If there are more segments, at block 415, the client software downloads the next segment and the process 400 returns to block 411. After block 415, at block 418 the segment counter is increased by one. If there are no more segments, at block 414, the association is deleted from the FIFO structure. At block 416, the process stops after block 414. The segment counter is just a working copy or local copy of one field of what is stored in the fifo for each file.
A mobile user interface 513 interacts with a playlist 512 and runs on an execution environment 511. The execution environment 511 communicates using packet data over a cellular network to a mobile user interface server 525 that is part of a complex of servers 526. The complex of servers 526 includes functions of a database of RSS feeds 524, a mobile user interface server 525, a cache of content 523 transcoded into format(s) appropriate for delivery to and playback on the mobile phone 500, a database 522 associating each with state information for users' playlists. The server complex 526 polls data from RSS feeds 531 and pulls content from content servers 532.
The RSS feed are one means of publishing to the Internet the availability of content, especially when created or refreshed periodically, e.g., updated with new episodes or versions.
A user computer system 541 includes a web browser 542 interfaced to a media player 544 that interacts with a playlist 545 and communicates with a web server 521 to exchange state information of the playlist. The media player 544 also pulls content from other servers 532. A web user interface 534 runs on a browser 542 and interacts with the server 521.
A server with a catalog of available content maintains a database with records for each user of the content to which the user subscribes and which episodes of content have been consumed and what portion of each episode is consumed. Users may add and delete content from their subscriptions and consume content through either a web interface on a PC or an interface on their mobile device. The playlists 512, 545 present at least a portion of the content of a user's catalog(s). the list is stored on the server. In one embodiment the playlist 512 is stored persistently in memory of the phone 500 and is updated time to time by a server when the local copy is out of date. In another embodiment, client software running on the phone 500 retrieves the playlist from the server whenever it is activated.
In one example, Bob is a service technician employed by an airline. He is in the office in the late afternoon checking email. He is advised that an aircraft manufacturer is publishing a new series of service bulletins on an aircraft type flown by his employer. On his PC, using a browser, he opens the web interface whose function is described above and subscribes to the new series of service bulletins. His catalog is updated and recorded. He begins listening to the first service bulletin in the series. He pauses somewhere in the middle of the presentation of the first service bulletin to go home at the end of the day. The stopping place is recorded and saved at the server as playlist state information. While on his commute home, Bob activates the software client on his mobile phone. The software receives his updated catalog and playlist state information from the server, which now includes the service bulletin series to which he subscribed in the office earlier that day. He selects playback of the first bulletin in the series and playback resumes at the place he left off before he left his office.
While the preferred embodiment of the invention has been illustrated and described, as noted above, many changes can be made without departing from the spirit and scope of the invention. Accordingly, the scope of the invention is not limited by the disclosure of the preferred embodiment. Instead, the invention should be determined entirely by reference to the claims that follow.
This invention claims the benefit of U.S. Provisional Application Ser. Nos. 60/752,422 filed Dec. 21, 2005 and 60/803,960 filed Jun. 5, 2006, the contents of which are hereby incorporated by reference.
Number | Date | Country | |
---|---|---|---|
60752422 | Dec 2005 | US | |
60803960 | Jun 2006 | US |