Apple patent involves real-time streaming
TweetFollow Us on Twitter

Apple patent involves real-time streaming



An Apple patent (number 8301725) for variant streams for real-time or near real-time streaming has appeared at the U.S. Patent & Trademark Office.

It involves streaming of content using transfer protocols such as an HTTP compliant protocol. In one embodiment, a method includes dividing a stream of data, representing the contiguous time based content of a program (e.g. a live video broadcast), into a plurality of distinct media files, and generating a playlist file having a plurality of tags and Universal Resource Indicators (URIs) indicating an order of presentation of the plurality of distinct media files. The plurality of media files and the playlist file can be made available for transmission to a client device which can retrieve the media files using the playlist file.

Here's Apple's background and summary of the invention: "Streaming of content generally refers to multimedia content that is constantly transmitted from a server device and received by a client device. The content is usually presented to an end-user while it is being delivered by the streaming server. The name refers to the delivery method of the medium rather than to the medium itself.

"Current streaming services generally require specialized servers to distribute 'live' content to end users. In any large scale deployment, this can lead to great cost, and requires specialized skills to set up and run. This results in a less than desirable library of content available for streaming.

"In one embodiment, a server device stores at least a portion of content to be streamed. The content is typically a time based stream of images or audio (e.g. sounds or music) or both; an example of a time based stream is a movie in which the order and presentation of images is based on time, and hence it can be considered a time based stream. The server includes a segmenter agent to decompose the content to be streamed into segments to be transmitted via packets according to a network protocol and an indexer agent to generate one or more playlist files that can facilitate a client in presenting the segmented user data.

"A client device is coupled with the server device (or another server which stores the segments and playlists and transmits them but does not generate them) via a network. The client device has an assembler agent to receive the one or more playlist files and facilitate retrieval of the segmented media files into the content according to the one or more playlist files. The client device can also have an output generator agent to output the content via one or more output components of the client device.

"In one embodiment, the server device acquires data to be transmitted to the client device. The server device divides the data to be transmitted into multiple media files with a segmenter agent. The server device also stores the multiple segments as individual media files in a memory. The server device further generates one or more playlist files having references to the multiple media files.

"In response to requests for the data from the client device, the server device (or another server device) transmits the one or more playlist files and at least a subset of the multiple media files over a network to the client device. The multiple media files can be transmitted using a non-streaming transfer protocol in response to requests from the client device; this protocol may be, for example, HTTP.

"In one embodiment, the client device can receive and store the one or more playlist files. The client then can request the segmented media files identified in the playlist file(s) and download the linked media files. The client device (or another client device) can then generate an audio and/or video output representing the stream of content.

"In one embodiment, an updated playlist can be dynamically generated by a server and then retrieved by a client. The updated playlist can include ancillary material (e.g. advertisements in a sidebar user interface, related content, alternative versions, etc.) shown in addition to the program in the original playlist or can include additional portions of the program (e.g. the second half of a program which is beyond the first half identified in the original playlist). In one implementation, a server can use a rolling method, described herein, to update the playlist which is then retrieved by the client as an updated playlist.

"In one embodiment, a playlist can specify a plurality of alternative streams representing the same content; these alternative streams may be the same program transmitted at different visual resolutions (and hence transmitted at different bit rates) or with other different attributes. A server can generate multiple playlists, each for one of the alternative streams and can generate a variant playlist which refers to or otherwise specifies the alternative streams.

"The server (or another server) can then transmit the variant playlist to a client device, and the client device can decide, based on current network conditions (e.g. the current throughput rate on a network used to transfer the media files), which playlist to select from the variant playlist, and the client device can download the selected playlist (and further download the media files specified by that selected playlist).

"In one embodiment, a client device can switch from a first playlist in the variant playlist to a second playlist in that variant playlist while receiving and presenting content. For example, a client device can be receiving a program, using the first playlist, and a first bit rate and can determine through measurements of the throughput rate of the network that it can receive content of the same program at a higher, second bit rate, that content being specified by the second playlist. In this case, the client device can request the second playlist, receive the second playlist and begin retrieving the media files specified in the second playlist while continuing to present the content specified by the first playlist.

"The client device can store the media files and the resulting decompressed content in buffers for both playlists, and the client device can perform an automatic operation to determine when and how to switch or transition between the two versions of the content. For example, a client device can use pattern matching of the audio content in the two versions of the content to find a matching point in the two versions and then cause a switch after identifying a transition in the new content from the second playlist."

The inventors are David Biderman, William May Jr., Alan Tseng, Roger Pantos and James David Batson.

Also appearing today at the U.S. Patent & Trademark Office are:

° Patent 8300828 for a system and method for a derivation function for key per page;

° Patent 8300809 for a system and method for modulus obfuscation;

° Patent 82969255 for a battery assembly for use in an electronic device;

° Patent 8301941 for a memory controller with loopback test interface.

° Patent D66906 for a battery assembly for use in an electronic device.

 
AAPL
$111.78
Apple Inc.
-0.87
GOOG
$516.35
Google Inc.
+5.25
MSFT
$47.66
Microsoft Corpora
+0.14
MacNews Search:
Community Search:

Latest Forum Discussions

See All
view counter

view counter
view counter
view counter
view counter
view counter
view counter

Make your own Tribez Figures (and More)...
Make your own Tribez Figures (and More) with Toyze Posted by Jessica Fisher on December 19th, 2014 [ permalink ] Universal App - Designed for iPhone and iPad | Read more »
So Many Holiday iOS Sales Oh My Goodness...
The holiday season is in full-swing, which means a whole lot of iOS apps and games are going on sale. A bunch already have, in fact. Naturally this means we’re putting together a hand-picked list of the best discounts and sales we can find in order to make your own App Store holiday shopping easier. Things are already kicking off with an... | Read more »
It’s Bird vs. Bird in the New PvP Mode f...
It’s Bird vs. Bird in the New PvP Mode for Angry Birds Epic Posted by Jessica Fisher on December 19th, 2014 [ permalink ] Universal App - Designed for iPhone and iPad | Read more »
Telltale Games and Mojang Announce Minec...
Telltale Games and Mojang Announce Minecraft: Story Mode – A Telltale Games Series Posted by Jessica Fisher on December 19th, 2014 [ permalink ] | Read more »
WarChest and Splash Damage Annouce Their...
WarChest and Splash Damage Annouce Their New Game: Tempo Posted by Jessica Fisher on December 19th, 2014 [ permalink ] WarChest Ltd and Splash Damage Ltd are teaming up again to work | Read more »
BulkyPix Celebrates its 6th Anniversary...
BulkyPix Celebrates its 6th Anniversary with a Bunch of Free Games Posted by Jessica Fisher on December 19th, 2014 [ permalink ] BulkyPix has | Read more »
Indulge in Japanese cuisine in Cooking F...
Indulge in Japanese cuisine in Cooking Fever’s new sushi-themed update Posted by Simon Reed on December 19th, 2014 [ permalink ] Lithuanian developer Nordcurrent has yet again updated its restaurant simulat | Read more »
Badland Daydream Level Pack Arrives to C...
Badland Daydream Level Pack Arrives to Celebrate 20 Million Downloads Posted by Ellis Spice on December 19th, 2014 [ permalink ] | Read more »
Far Cry 4, Assassin’s Creed Unity, Desti...
Far Cry 4, Assassin’s Creed Unity, Destiny, and Beyond – AppSpy Takes a Look at AAA Companion Apps Posted by Rob Rich on December 19th, 2014 [ permalink ] These day | Read more »
A Bunch of Halfbrick Games Are Going Fre...
A Bunch of Halfbrick Games Are Going Free for the Holidays Posted by Ellis Spice on December 19th, 2014 [ permalink ] Universal App - Designed for iPhone and iPad | Read more »
All contents are Copyright 1984-2010 by Xplain Corporation. All rights reserved. Theme designed by Icreon.