IP Library Granted Patent US 7,925,774
Granted Patent B2
US 7,925,774 · App. 12/188,079 · Granted Apr 12, 2011

Media streaming using an index file

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,925,774
App. No.
12/188,079
Granted
Apr 12, 2011
Kind
B2
Abstract

The present disclosure relates to playback of video/audio streaming media data to provide a substantially glitch-free experience. The system adapts the media stream to the user connection in order to choose the most desirable stream to avoid glitches. For example, in the case where there is interference (e.g., a microwave being used near a wireless device), the quality of the media stream is lowered. In one embodiment, an index file is used to make logical decisions about which media stream to choose in order to minimize glitches. The index file can take different forms, but, generally, includes characteristics about the available media streams. Example characteristics include the bit rates of the media streams and quality information about the media streams.

Claims (29)

1. A method for rendering a media stream on a playback device, comprising:

using an index file that describes characteristics of a media stream located on a server computer to make logical decisions about which bit rate for the media stream to choose in order to minimize glitches when the chosen media stream is rendered on the playback device, the index file identifying at least two bit rates associated with the media stream, the at least two bit rates being a same content encoded at different bit rates that are available from a server;

receiving the chosen media stream from the network; and

rendering the chosen media stream on the playback device with minimized glitches.

2. The method of claim 1 , wherein characteristics described include the bit rate, fragment numbers, duration for fragments of the media streams, and network addresses of the media streams.

3. The method of claim 1 , wherein the different bit rates for the media stream include separate bit rates for audio and video.

4. The method of claim 1 , wherein the media stream is divided into fragments of substantially equal time duration.

5. The method of claim 4 , wherein the index file describes at least one of the following characteristics of the media stream: the bit rate, the duration of the fragments, and the quality of the fragments.

6. The method of claim 1 , wherein the index file includes attributes used in a media pipeline in decoding the media stream.

7. The method of claim 1 , further including encoding the media stream on a server computer and generating the index file on the server that defines the media stream as having multiple logical or actual entry points.

8. The method of claim 1 , wherein the playback device includes one of the following: a computer, a mobile phone, a gaming console, and a television; and wherein the network is the Internet.

9. The method of claim 1 , wherein the bit rates for the media stream are at substantially constant bit rates or variable bit rates.

10. The method of claim 1 , wherein making logical decisions includes adapting to a network bandwidth or adapting to an ability to render on the playback device.

11. The method of claim 1 , wherein making logical decisions includes using a heuristics module to monitor buffer levels and modifying the bit rate based on the buffer levels.

12. A method for rendering a media stream on a playback device, comprising:

generating a media stream at multiple bit rates using an encoder on a server computer, the multiple bit rates being identical content, but encoded to have different bit rates;

wherein the media stream is segmented with logical or actual entry points; and

generating an index file on the server computer describing the bit rates and segments.

13. The method of claim 12 , wherein each media stream at a different bit rate includes identical content but at varying levels of quality.

14. The method of claim 12 , wherein the bit rates are constant or variable.

15. The method of claim 12 , wherein the media stream is divided into fragments of a substantially fixed duration.

16. A method of displaying content, comprising:

receiving a request on a playback device to view a media stream;

in response to the request, retrieving an index file describing fragments of the media stream and different bit rates available for the media stream; and

using the index file to make decisions about which bit rate associated with the media stream to use.

17. The method of claim 16 , wherein the index file includes quality information associated with the fragments.

18. The method of claim 16 , wherein the bit rates are constant or variable bit rates.

19. The method of claim 16 , wherein the index file provides the duration of the fragments.

20. The method of claim 16 , wherein the decisions are made to minimize glitches on the playback device.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 14, 2016
From: MICROSOFT TECHNOLOGY LICENSING, LLC
To: ZHIGU HOLDINGS LIMITED
Reel/Frame 040354/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034564/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 19, 2008
From: ZHANG, WENBO; SMIRNOV, SERGE; KOTTERI, KISHORE; VIRDI, GURPRATAP; MUSAYEV, ELDAR; FOLTA, FLORIN
To: MICROSOFT CORPORATION
Reel/Frame 021410/0956 →