Methods and Apparatus for Integrating Digital Rights Management (DRM) Systems with Native HTTP Live Streaming
First Claim
1. A method, comprising:
- performing, by an application implemented on a device configured according to an operating system (OS) platform;
obtaining a manifest file, wherein the manifest file indicates content to be streamed to the device from a content server according to an HTTP (Hypertext Transfer Protocol) live streaming (HLS) protocol supported by the OS platform and further indicates metadata for the content;
accessing a digital rights management (DRM) server according to the metadata to obtain a license for the content and a key for decrypting the content;
modifying the manifest file to include a Uniform Resource Locator (URL) for obtaining the key; and
providing the modified manifest file to an OS platform module;
wherein the OS platform module obtains the key according to the URL indicated in the manifest file, obtains a data stream of the indicated content from the content server, and decrypts data in the stream according to the obtained key.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatus for integrating digital rights management (DRM) systems with native HTTP live streaming. Several methods for integrating a DRM system with HTTP live streaming on an operating system (OS) platform are described. In each of these methods, a manifest is delivered to an application on a device; the application then accesses a remote DRM server to obtain a license and one or more keys for the content. The DRM server enforces the rights of the client in regard to the indicated content. The application may modify the manifest to indicate a method for obtaining the key. The application delivers the manifest to the OS, which uses the indicated method (e.g., a URL) to obtain the key. While similar, the methods primarily differ in the manner in which the OS is directed to obtain the key.
-
Citations
23 Claims
-
1. A method, comprising:
-
performing, by an application implemented on a device configured according to an operating system (OS) platform; obtaining a manifest file, wherein the manifest file indicates content to be streamed to the device from a content server according to an HTTP (Hypertext Transfer Protocol) live streaming (HLS) protocol supported by the OS platform and further indicates metadata for the content; accessing a digital rights management (DRM) server according to the metadata to obtain a license for the content and a key for decrypting the content; modifying the manifest file to include a Uniform Resource Locator (URL) for obtaining the key; and providing the modified manifest file to an OS platform module; wherein the OS platform module obtains the key according to the URL indicated in the manifest file, obtains a data stream of the indicated content from the content server, and decrypts data in the stream according to the obtained key. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A device, comprising:
-
at least one processor; and a memory comprising program instructions, wherein the program instructions are executable by the at least one processor to implement an operating system (OS) platform module and an application, wherein the application is operable to; obtain a manifest file, wherein the manifest file indicates content to be streamed to the device from a content server according to a HTTP (Hypertext Transfer Protocol) live streaming (HLS) protocol supported by the OS platform and further indicates metadata for the content; access a digital rights management (DRM) server according to the metadata to obtain a license for the content and a key for decrypting the content; modify the manifest file to include a Uniform Resource Locator (URL) for obtaining the key; and provide the modified manifest file to the OS platform module; wherein the OS platform module is operable to obtain the key according to the URL indicated in the manifest file, obtain a data stream of the indicated content from the content server, and decrypt data in the stream according to the obtained key. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A non-transitory computer-readable storage medium storing program instructions, wherein the program instructions are computer-executable to implement an application on a device configured according to an operating system (OS) platform, wherein the application is operable to:
-
obtain a manifest file, wherein the manifest file indicates content to be streamed to the device from a content server according to an HTTP (Hypertext Transfer Protocol) live streaming (HLS) protocol supported by the OS platform and further indicates metadata for the content; access a digital rights management (DRM) server according to the metadata to obtain a license for the content and a key for decrypting the content; modify the manifest file to include a Uniform Resource Locator (URL) for obtaining the key; and provide the modified manifest file to an OS platform module; wherein the OS platform module obtains the key according to the URL indicated in the manifest file, obtains a data stream of the indicated content from the content server, and decrypts data in the stream according to the obtained key. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23)
-
Specification