Realtime streaming of multimedia content from secondary storage devices
First Claim
Patent Images
1. A method performed by a media server comprising a primary storage for streaming media to a client computing device over a network, the method comprising:
- receiving a request for a media file at the media server,wherein the media server hosts a virtual layer comprising one or more virtual machines,wherein each virtual machine includes a corresponding operating system;
wherein the virtual layer further includes a virtual machine storage manager hosted on a computing device different from the media server;
determining that a storage location of the requested media file is a secondary storage location and not the primary storage,wherein the requested media file is stored in a backup format at the secondary storage location,wherein the secondary storage location includes a secondary data storage drive coupled to the network; and
wherein the secondary data storage drive includes an index that stores index data generated during storage of data to the secondary data storage device,wherein the index includes an indication of specific files being stored during the storage of data;
mounting the secondary storage drive to a virtual machine of the virtual layer;
accessing the media file via the virtual machine; and
transferring a portion of the media file from the secondary storage location, via the virtual layer, to the client computing device;
wherein the primary storage includes a stub that indicates the secondary storage location of the requested media file.
4 Assignments
0 Petitions
Accused Products
Abstract
A method and system for streaming media to a client from a media server is described. In some examples, the system utilizes a virtualization layer to generate a virtual computing environment, or virtual machine, at a UPnP server, which is configured to receive requests for media, identify locations for the media within the secondary storage devices, access the media, and present the media to a client computing device associated with the media requests.
218 Citations
22 Claims
-
1. A method performed by a media server comprising a primary storage for streaming media to a client computing device over a network, the method comprising:
-
receiving a request for a media file at the media server, wherein the media server hosts a virtual layer comprising one or more virtual machines, wherein each virtual machine includes a corresponding operating system; wherein the virtual layer further includes a virtual machine storage manager hosted on a computing device different from the media server; determining that a storage location of the requested media file is a secondary storage location and not the primary storage, wherein the requested media file is stored in a backup format at the secondary storage location, wherein the secondary storage location includes a secondary data storage drive coupled to the network; and wherein the secondary data storage drive includes an index that stores index data generated during storage of data to the secondary data storage device, wherein the index includes an indication of specific files being stored during the storage of data; mounting the secondary storage drive to a virtual machine of the virtual layer; accessing the media file via the virtual machine; and transferring a portion of the media file from the secondary storage location, via the virtual layer, to the client computing device; wherein the primary storage includes a stub that indicates the secondary storage location of the requested media file. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A non-transitory computer-readable medium whose contents, when executed by a media server, cause the media server to perform a method for streaming media to a client computing device, the method comprising:
-
receiving a request from a client computing device to stream a media file, wherein the media server hosts a virtual layer comprising one or more virtual machines, and wherein each virtual machine includes a corresponding operating system; wherein the virtual layer further includes a virtual machine storage manager hosted on a computing device different from the media server; determining that the requested media file is not stored in primary storage associated with the media server but is stored at a secondary storage location in which the requested media file is stored in a backup format; wherein the requested media file is stored in a backup format at the secondary storage location, wherein the secondary storage location includes a secondary data storage drive coupled to the network; and wherein the secondary data storage drive includes an index that stores index data generated during storage of data to the secondary data storage device, wherein the index includes an indication of specific files being stored during the storage of data; mounting the secondary storage drive to a virtual machine of the virtual layer; and accessing the requested media file via the virtual machine; wherein the primary storage includes a stub that indicates the secondary storage location of the requested media file. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A system for streaming media to a client computing device, the system comprising:
-
a universal plug and play server, wherein the universal plug and play server is configured to stream media over a network to a client computing device; a plurality of virtual machines hosted by the universal plug and play server, wherein a virtual machine of the plurality of virtual machines comprises an operating system different from that of the universal plug and play server, wherein each of the plurality of virtual machines executes a media streaming application; and wherein the virtual machine is configured to provide media stored in secondary storage locations to the universal plug and play server; and a media request component, where the media request component is configured to; identify locations of media requested by a client computing device; and when the requested media is located in primary storage locations of the universal plug and play sever, direct the universal plug and play server to stream the requested media from the primary storage locations to the client computing device; and when the requested media is located in secondary storage locations associated with the universal plug and play server, direct the universal plug and play server to access the requested media using the virtual machine and stream a portion the requested media from the secondary storage locations to the client computing device; wherein the requested media is stored in a backup format at the secondary storage location, wherein the secondary storage location includes a secondary data storage drive coupled to the network; wherein the secondary storage drive is mounted to the virtual machine for accessing the media file via the virtual machine; wherein the secondary data storage drive includes an index that stores index data generated during storage to the secondary data storage device, wherein the index includes an indication of specific files being stored during the storage of data; and wherein, when the requested media is in the secondary storage location, the primary storage includes a stub that indicates the secondary storage location of the requested media. - View Dependent Claims (17, 18)
-
-
19. A computer-implemented method for managing storage of media files for a streaming media service, the method comprising:
-
comparing, by a computer, metadata associated with a media file to a retention policy for maintaining media hosted by the streaming media service in primary storage; determining that the metadata of the media file does not satisfy the retention policy for maintaining media hosted by the streaming media service in primary storage; and transferring the media file to secondary storage and make the media file in the secondary storage accessible via a virtual computing environment hosted by a media server of the streaming media service, wherein the virtual computing environment comprise one or more virtual machines, each virtual machine including a corresponding operating system; wherein the requested media file is stored in a backup format at the secondary storage location, wherein the secondary storage location includes a secondary data storage drive coupled to the network; wherein the secondary storage drive is mounted to a virtual machine for accessing the media file via the virtual machine; wherein the secondary data storage drive includes an index that stores index data generated during storage to the secondary data storage device, wherein the index includes an indication of specific files being stored during the storage of data; and wherein the primary storage includes a stub that indicates the secondary storage location of the requested media file. - View Dependent Claims (20, 21, 22)
-
Specification