IP Library Granted Patent US 9,596,522
Granted Patent B2
US 9,596,522 · App. 12/794,572 · Granted Mar 14, 2017

Fragmented file structure for live media stream delivery

Inventors: Anders Odlund (San Francisco, CA); Kent Karlsson (Alamo, CA)
Assignee: MobiTV, Inc.
H04N21/8456H04L65/608H04N21/2183H04N21/2187H04N21/23106H04N21/8451
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 9,596,522
App. No.
12/794,572
Granted
Mar 14, 2017
Kind
B2
Abstract

Media files such as MPEG-4 files are fragmented to allow for media and live media creation and delivery. A MPEG-4 standard description box includes synchronization information, end of file information, and chapter information to provide signaling information for near live playback of fragments. Playback can begin upon receiving a first MPEG-4 file fragment. A second MPEG-4 file fragment can be requested using information included in the first MPEG-4 file fragment.

Claims (41)

1. A method, comprising:

receiving a first request for a near live media program at a fragment server from a client device, the first request including a first bit rate, the near live media program being stored at the fragment server as artificially created short time interval programs of the near live media program;

transmitting a first fragment associated with the near live media program encoded at the first bit rate associated with the request, the first fragment including a first fragment number and a box structure including synchronization information, chapter information, and end of file information, wherein the box structure allows MPEG-4 fragmentation without out of band signaling, wherein end of file information includes information to continue streaming a next program, wherein the end of file information further includes random access information that can be used to enable a client to perform bandwidth adaptation and trick play functionality;

receiving a second request for the near live media program at the fragment server, the second request including a second fragment number derived from the first fragment number, the second request including a second bit rate; and

transmitting a second fragment associated with the near live media program, the second fragment including the second fragment number, the second fragment corresponding to the second bit rate, wherein the second bit rate is a higher or lower bit rate than the first bit rate;

wherein the first and second fragments are extended with custom headers for optimization and are maintained in a caching layer for a limited period of time in order to allow for near live distribution of media streams,

wherein the fragment server uses a REST API that is cache friendly so that requests made to the fragment server can be cached, the fragment server using cache control headers to provide hints to caches,

wherein an HTTP proxy is used at the head end to cache requests so as to reduce the number of dynamic requests received at the fragment server.

2. The method of claim 1 , wherein the fragment number corresponds to a time index for a near live media program.

3. The method of claim 1 , wherein the first request is an HTTP GET request.

4. The method of claim 1 , wherein synchronization information is used to synchronize audio and video when playback entails starting in the middle of a stream.

5. The method of claim 1 , wherein the first fragment and the second fragment include different portions of the near live media program.

6. The method of claim 5 , wherein the client device begins playback of the near live media program before receiving the second fragment.

7. The method of claim 5 , wherein end of file information signals when the near live media program is over.

8. The method of claim 1 , wherein chapter information is used for video on demand content that is broken up into chapters.

9. The method of claim 1 , wherein the second fragment includes the second fragment number and the box structure supporting synchronization information, chapter information, and end of file information.

10. A system, comprising:

an input interface configured to receive a first request from a client device for a near live media program, the first request including a first bit rate, the near live media program being stored at the fragment server as artificially created short time interval programs of the near live media program;

an output interface configured to transmit a first fragment associated with the near live media program encoded at the first bit rate associated with the request;

a processor configured to include a first fragment number and a box structure including synchronization information, chapter information, and end of file information in the first fragment, wherein the box structure allows MPEG-4 fragmentation without out of band signaling, wherein end of file information includes information to continue streaming a next program, wherein the end of file information further includes random access information that can be used to enable a client to perform bandwidth adaptation and trick play functionality;

wherein the input interface is further configured to receive a second request for the near live media program at the fragment server, the second request including a second fragment number derived from the first fragment number, the second request including a second bit rate; and

wherein the output interface is further configured to transmit a second fragment associated with the near live media program, the second fragment including the second fragment number, the second fragment corresponding to the second bit rate, wherein the second bit rate is a higher or lower bit rate than the first bit rate;

wherein the first and second fragments are extended with custom headers for optimization and are maintained in a caching layer for a limited period of time in order to allow for near live distribution of media streams,

wherein the fragment server uses a REST API that is cache friendly so that requests made to the fragment server can be cached, the fragment server using cache control headers to provide hints to caches,

wherein an HTTP proxy is used at the head end to cache requests so as to reduce the number of dynamic requests received at the fragment server.

11. The system of claim 10 , wherein the fragment number corresponds to a time index for a near live media program.

12. The system of claim 10 , wherein the first request is an HTTP GET request.

13. The system of claim 10 , wherein synchronization information is used to synchronize audio and video when playback entails starting in the middle of a stream.

14. The system of claim 10 , wherein the first fragment and the second fragment include different portions of the near live media program.

15. The system of claim 14 , wherein the client device begins playback of the near live media program before receiving the second fragment.

16. The system of claim 14 , wherein end of file information signals when the near live media program is over.

17. The system of claim 10 , wherein chapter information is used for video on demand content that is broken up into chapters.

18. The system of claim 10 , wherein the second fragment includes the second fragment number and the box structure supporting synchronization information, chapter information, and end of file information.

19. A non-transitory computer readable storage medium, comprising:

computer code for receiving a first request for a near live media program at a fragment server from a client device, the first request including a first bit rate, the near live media program being stored at the fragment server as artificially created short time interval programs of the near live media program;

computer code for transmitting a first fragment associated with the near live media program encoded at the first bit rate associated with the request, the first fragment including a first fragment number and a box structure including synchronization information, chapter information, and end of file information, wherein the box structure allows MPEG-4 fragmentation without out of band signaling, wherein end of file information includes information to continue streaming a next program, wherein the end of file information further includes random access information that can be used to enable a client to perform bandwidth adaptation and trick play functionality;

computer code for receiving a second request for the near live media program at the fragment server, the second request including a second fragment number derived from the first fragment number, the second request including a second bit rate; and

computer code for transmitting a second fragment associated with the near live media program, the second fragment including the second fragment number, the second fragment corresponding to the second bit rate, wherein the second bit rate is a higher or lower bit rate than the first bit rate;

wherein the first and second fragments are extended with custom headers for optimization and are maintained in a caching layer for a limited period of time in order to allow for near live distribution of media streams,

wherein the fragment server uses a REST API that is cache friendly so that requests made to the fragment server can be cached, the fragment server using cache control headers to provide hints to caches,

wherein an HTTP proxy is used at the head end to cache requests so as to reduce the number of dynamic requests received at the fragment server.

Assignments (8)
CHANGE OF NAME Recorded Mar 31, 2026
From: ADEIA MEDIA HOLDINGS LLC
To: ADEIA MEDIA HOLDINGS INC.
Reel/Frame 075304/0001 →
CHANGE OF NAME Recorded Oct 1, 2024
From: TIVO LLC
To: ADEIA MEDIA HOLDINGS LLC
Reel/Frame 069083/0325 →
CHANGE OF NAME Recorded Oct 1, 2024
From: TIVO CORPORATION
To: TIVO LLC
Reel/Frame 069083/0250 →
SECURITY INTEREST Recorded May 19, 2023
From: ADEIA GUIDES INC.; ADEIA MEDIA HOLDINGS LLC; ADEIA MEDIA SOLUTIONS INC.; ADEIA SEMICONDUCTOR BONDING TECHNOLOGIES INC.; ADEIA SEMICONDUCTOR SOLUTIONS LLC; ADEIA SEMICONDUCTOR TECHNOLOGIES LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 063707/0884 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 1, 2021
From: MOBITV, INC.; MOBITV SERVICES, INC.
To: TIVO CORPORATION
Reel/Frame 056444/0076 →
SECURITY INTEREST Recorded Aug 10, 2018
From: MOBITV, INC.
To: ALLY COMMERICAL FINANCE LLC
Reel/Frame 046761/0718 →
SECURITY INTEREST Recorded Feb 15, 2017
From: MOBITV, INC.
To: ALLY BANK
Reel/Frame 041718/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 14, 2010
From: ODLUND, ANDERS; KARLSSON, KENT
To: MOBITV, INC.
Reel/Frame 024683/0175 →
Continuity (1)
Related Publication 20110302618A1 · Dec 8, 2011