IP Library Granted Patent US 9,473,812
Granted Patent B2
US 9,473,812 · App. 12/208,122 · Granted Oct 18, 2016

System and method for delivering content

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,473,812
App. No.
12/208,122
Granted
Oct 18, 2016
Kind
B2
Abstract

A method for delivering media content includes receiving a request identifying a requested media file. The method also includes, in response to receiving the request, accessing the requested media file. The requested media file includes media content in a first format. The method further includes generating a modified media file based on the requested media file. The modified media file includes media content in a second format. Additionally, the method includes generating an auxiliary file associated with the modified media file. The auxiliary file includes a plurality of content records associated with different portions of the media content in the modified media file and indicating a location of the associated portion. Each content record includes information to facilitate transmission of the associated portion of the media content to a remote client prior to the modified media file being completely generated.

Claims (67)

1. A method comprising, by one or more computer systems:

receiving a request identifying a requested media file;

in response to receiving the request, accessing the requested media file, the requested media file comprising media content in a first format;

begin transcoding the media content from the first format to a second format and generating an associated auxiliary file comprising a plurality of content records in the second format;

transmitting the first portion of the media content in the second format to a requesting client utilizing the auxiliary file before the transcoding of the media content of the requested media file is complete;

wherein the auxiliary file comprises the plurality of content records, each of the content records being associated with a portion of the media content in the second format and indicating a location of the associated portion of the media content in the second format; and

wherein each of the content records comprises dropped-content information for an associated portion of the media content, the dropped-content information indicating an amount of content dropped during transcoding.

2. The method of claim 1 , wherein the auxiliary file indicates a frame rate associated with the media content in the second format.

3. The method of claim 1 , wherein the auxiliary file indicates a bit rate associated with the media content in the second format.

4. The method of claim 1 , wherein the auxiliary file indicates a codec associated with the media content in the second format.

5. The method of claim 1 , further comprising:

storing a modified-media file comprising the media content in the second format and the auxiliary file in a content store;

receiving a second request identifying the requested media file;

in response to the second request, retrieving the modified media file from the content store; and

transmitting the media content in the second format to a second requesting client utilizing the auxiliary file.

6. The method of claim 5 , wherein the modified media file comprises a 3GP file.

7. The method of claim 1 , wherein receiving the request identifying the requested media file comprises:

receiving the request transmitted from the requesting client; and

in response to receiving the request, selecting one of a plurality of transcoding elements to access the requested media file.

8. The method of claim 1 , wherein accessing the requested media file comprises:

determining whether the requested media file is stored in a first content store in the second format; and

if the requested media file is not stored in the content store in the second format, transmitting a request to the first content store, the request identifying the requested media file; and

receiving the media file from the first content store in the first format.

9. The method of claim 8 , wherein transmitting a request to the first content store comprises transmitting a Hypertext Transfer Protocol (HTTP) request identifying the media file to the first content store.

10. The method of claim 1 , further comprising determining, based on the plurality of content records in the auxiliary file, one or more portions of the media file in the second format to transmit without the content records to the requesting client during a time that the media file in the second format is being generated.

11. An apparatus comprising:

one or more memory devices containing one or more instructions for execution by one or more processing devices; and

the processing devices configured to execute the instructions to:

receive a request identifying a requested media file;

in response to receiving the request, access the requested media file, the requested media file comprising media content in a first format;

begin to transcode the media content of the requested media file from the first format to a second format;

generate an associated auxiliary file;

transmit the first portion of the media content in the second format to a requesting client before the transcoding of the requested media file is complete, thereby reducing delay from the request and delivery of the media content to the requesting client;

wherein the auxiliary file comprises the plurality of content records, each of the content records being associated with a portion of the media content in the second format and indicating a location of the associated portion of the media content in the second format; and

wherein each of the content records comprises dropped-content information for an associated portion of the media content in the second format, wherein the dropped-content information indicates an amount of content dropped during transcoding.

12. The apparatus of claim 11 , wherein the auxiliary file indicates a frame rate associated with the media content in the second format.

13. The apparatus of claim 11 , wherein the auxiliary file indicates a bit rate associated with the media content in the second format.

14. The apparatus of claim 11 , wherein the auxiliary file indicates a codec associated with the media content in the second format.

15. The apparatus of claim 11 , wherein the processing devices are further configured to execute the instructions to:

store a modified media file comprising the media content in the second format and the auxiliary file in a content store;

receive a second request identifying the requested media file;

in response to the second request, retrieve the modified media file from the content store; and

transmit the media content in the second format utilizing the auxiliary file to a second requesting client.

16. The apparatus of claim 15 , wherein the modified media file comprises a 3GP file.

17. The apparatus of claim 11 , wherein the processing devices are further configured to execute the instructions to receive the request

identifying a media file by:

receiving the request transmitted from the requesting client; and

in response to receiving the request, selecting one of a plurality of transcoding elements to access the requested media file.

18. The apparatus of claim 11 , wherein the processing devices are further configured to execute the instructions to access the requested media file by:

determining whether the requested media file is stored in a first content store in the second format; and

if the requested media file is not stored in the content store in the second format, transmitting a request to the first content store, the request identifying the requested media file; and

receiving the media file from the first content store in the first format.

19. The apparatus of claim 18 , wherein the processing devices are further configured to execute the instructions to transmit a request to the first content store by transmitting a Hypertext Transfer Protocol (HTTP) request identifying the media file to the first content store.

20. The apparatus of claim 11 , wherein the processing devices are further configured to determine, based on the plurality of content records in the auxiliary file, one or more portions of the media file in the second format to transmit without the content records to the requesting client during a time that the media file in the second format is being generated.

21. The apparatus of claim 11 , wherein the auxiliary file is stored in a content store to facilitate transmission of the media content in the second format to another requesting client.

22. One or more computer-readable non-transitory storage media embodying logic that is configured to, when executed:

receive a request identifying a requested media file;

in response to receiving the request, access the requested media file, the requested media file comprising media content in a first format;

begin to transcode the media content from the first format to a second format and generate an associated auxiliary file comprising a plurality of content records;

transmit the first portion of the media content in the second format to a requesting device utilizing the auxiliary file before the transcoding of the media content is complete;

wherein the auxiliary file comprises the plurality of content records, each of the content records being associated with a portion of the media content in the second format and indicating a location of the associated portion of the media content in the second format; and

wherein each of the content records comprises dropped-content information for an associated portion of the media content in the second format, wherein the dropped-content information indicates an amount of content dropped during transcoding.

23. The one or more computer-readable non-transitory storage media of claim 22 , wherein, when executed, the logic is further configured to:

store a modified-media file comprising the media content in the second format in a content store;

receive a second request identifying the requested media file;

in response to the second request, retrieve the modified media file from the content store; and

transmit the modified media file to a second requesting client.

Assignments (9)
ASSIGNMENT OF INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Feb 28, 2020
From: PNC BANK, NATIONAL ASSOCIATION, AS EXISTING AGENT
To: BROADCAST LENDCO, LLC, AS SUCCESSOR AGENT
Reel/Frame 052050/0074 →
SECURITY AGREEMENT Recorded Apr 1, 2015
From: IMAGINE COMMUNICATIONS CORP. (F/K/A HBC SOLUTIONS, INC.)
To: PNC BANK, NATIONAL ASSOCIATION, AS AGENT
Reel/Frame 035353/0208 →
PATENT COLLATERAL SECURITY AGREEMENT Recorded Mar 27, 2015
From: IMAGINE COMMUNICATIONS CORPORATION (FORMERLY KNOWN AS HBC SOLUTIONS, INC.)
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 035327/0262 →
SECURITY INTEREST Recorded Mar 27, 2015
From: IMAGINE COMMUNICATIONS CORPORATION (FORMERLY KNOWN AS HBC SOLUTIONS, INC.)
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 035275/0228 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 17, 2015
From: RGB NETWORKS, INC.
To: IMAGINE COMMUNICATIONS CORP.
Reel/Frame 034973/0821 →
RELEASE OF SECURITY INTEREST Recorded Feb 11, 2015
From: SILICON VALLEY BANK
To: RGB NETWORKS, INC
Reel/Frame 034955/0630 →
SECURITY INTEREST Recorded Aug 3, 2014
From: RGB NETWORKS, INC.
To: SILICON VALLEY BANK
Reel/Frame 033463/0440 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 8, 2010
From: RIPCODE, INC.
To: RGB NETWORKS, INC.
Reel/Frame 025113/0631 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2008
From: HOSUR, PRABHUDEV I.
To: RIPCODE, INC.
Reel/Frame 021509/0700 →