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.

 
Community Search:
MacNews Search:
See All
view counter

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

How to evolve Eevee in Pokemon GO
By now, almost everyone should be hip to how to evolve Pokemon in Pokemon GO (and if not, there's a guide for that). Just gather enough candy of the appropriate type, feed them all to the Pokemon, and evolution happens. It's a miracle that would astound Darwin. [Read more] | Read more »
CSR Racing 2: Guide to all game modes
It might not seem like there are all that many ways to go fast in a straight line, but CSR Racing 2 begs to differ. [Read more] | Read more »
Bulb Boy (Games)
Bulb Boy 1.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: Multi-award winning 2D point & click horror adventure about a boy with a glowing head. | Read more »
5 top free emoji keyboard apps
If we're not at peak emoji yet as a society, it feels like we definitely should be. The emoji concept has gone far beyond what anyone in Japan could have envisioned when the people there unleashed it on an unsuspecting world, but the West has taken it and just kept running over the past few years. [Read more] | Read more »
How to unlock more characters in Disney...
One of the big charms of Disney Emoji Blitz is seeing a wide variety of beloved Disney and Pixar characters transformed into smiling emojis. Even someone like the sneaky Randall from Monsters Inc., who probably never cracked a smile on film, is happy as can be until your time is running out. [Read more] | Read more »
Cubway (Games)
Cubway 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: Cubway is a journey with an abstract story of lifecycle of rebirth, called Samsara. Guide the cube through the long way full of dangers and difficulties, visit many interesting and mysterious places.********** Pocket Gamer "...very... | Read more »
Colorcube (Games)
Colorcube 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: Turn pieces and blend colours in this minimal yet visually stunning puzzler.Over 200 handcrafted and challenging levels.Features alternative colour schemes for all common colour deficiencies.A cooperation with award winning board... | Read more »
Doodle God Griddlers (Games)
Doodle God Griddlers 1.0 Device: iOS Universal Category: Games Price: $4.99, Version: 1.0 (iTunes) Description: | Read more »
Crusader Kings: Chronicles (Games)
Crusader Kings: Chronicles 1.0 Device: iOS Universal Category: Games Price: $4.99, Version: 1.0 (iTunes) Description: Crusader Kings: Chronicles is an interactive text based game that puts you in the shoes of Guy de Rose as you make your own choices in defending the castle, riding into battle, plotting cunning plans and maybe even... | Read more »
Roads of Rome: New Generation (Games)
Roads of Rome: New Generation 1.0 Device: iOS Universal Category: Games Price: $5.99, Version: 1.0 (iTunes) Description: | Read more »
All contents are Copyright 1984-2010 by Xplain Corporation. All rights reserved. Theme designed by Icreon.