Systems and methods for cloud storage direct streaming
Abstract
Embodiments of the present disclosure may provide a system comprising a client source device, a server, and a client viewing device. The client source device may be configured to: encode content as a plurality of fragments of at least one quality parameter, send each encoded fragment to a cloud storage, generate metadata associated with each encoded fragment, and provide the generated metadata associated with each encoded fragment. The server may be configured to: receive each encoded fragment, store each encoded fragment into the cloud storage for retrieval, and facilitate an authentication for access to the metadata associated with each encoded fragment. A client viewing device configured to request the authentication for access to the metadata, receive the metadata, determine a desired fragment of the plurality of fragments encoded in a desired quality parameter, and retrieve the desired fragment in the desired quality parameter.
Claims
exact text as granted — not AI-modifiedThe following is claimed:
1 . A system comprising:
at least one remote memory storage configured to:
store a plurality of encoded fragments as:
a first set of encoded fragments that is associated with a first quality parameter, and
a second set of encoded fragments that is associated with a second quality parameter; and
one or more processing units in communication with the at least one remote memory storage, wherein the one or more processing units are configured, in the aggregate, to:
establish a real-time messaging channel between a viewing device and a source device;
communicate metadata through the real-time messaging channel from the source device to the viewing device as the metadata is generated by the source device, wherein the metadata comprises information regarding the plurality of encoded fragments,
generate a request, based on, at least in part, the metadata transmitted through the real-time messaging channel, for a first encoded fragment in the first quality parameter; and
transmit the first encoded fragment from the at least one remote memory storage to the viewing device.
2 . The system of claim 1 , wherein the one or more processing units are further configured, in the aggregate, to:
generate a request, based on, at least in part, the metadata transmitted through the real-time messaging channel, for a second encoded fragment in the second quality parameter; and transmit the first encoded fragment from the at least one remote memory storage to the viewing device.
3 . The system of claim 1 , wherein the metadata comprises at least one of the following: a name, a duration, a size, a resolution, a bit-rate, an encoding, a creation time, a location, and a presentation time of at least one of: a video frame and an audio sample.
4 . The system of claim 1 , wherein the one or more processing units are further configured, in the aggregate, to:
facilitate an authentication for access to the metadata; and facilitate, upon the authentication, the real-time messaging channel between the source device and the viewing device.
5 . The system of claim 1 , wherein the plurality of encoded fragments are received at the remote memory storage from a client source device, which encodes the plurality of fragments
6 . The system of claim 5 , wherein the client source device is a mobile device, and wherein the mobile device encodes the plurality of encoded fragments using a central processing unit (CPU) and a graphics processing unit (GPU).
7 . The system of claim 5 , wherein the client source device is configured to encode the content directly into a format that is usable by viewing device for display.
8 . A system comprising:
a memory storage; and a processing unit coupled to the memory storage, wherein the processing unit is configured to:
encode content as a plurality of fragments into at least one quality parameter,
send each of the encoded fragments of the plurality of encoded fragments to at least one remote memory storage,
generate metadata associated with each of the encoded fragments,
establish a real-time messaging channel with a viewing device, and
provide the metadata associated with each of the encoded fragments directly to the viewing device, wherein the metadata provides information associated with at least the following:
a characteristic of each encoded fragment, and
a location of each encoded fragment within the at least one remote memory storage.
9 . The system of claim 8 , wherein the processing unit being configured to send each of the encoded fragments to the at least one remote memory storage comprises the processing unit being configured to write each encoded fragment, in substantially real-time as it is encoded, directly to the at least one remote memory storage.
10 . The system of claim 8 , wherein the processing unit being configured to provide the metadata comprises the processing unit being configured to provide the metadata, as it is generated, for each of the encoded fragments in substantially real-time as each corresponding encoded fragment is written directly to the at least one remote memory storage.
11 . The system of claim 8 , wherein the processing unit being configured to provide the metadata comprises the processing unit being configured to provide the metadata through the real-time messaging channel, in substantial real-time as it is generated.
12 . The system of claim 8 , wherein the processing unit is further configured to write the metadata to a cloud table storage.
13 . The system of claim 8 , wherein the processing unit is associated with at least one content capturing device.
14 . The system of claim 13 , wherein the processing unit being configured to encode the content as the plurality of encoded fragments into the at least one quality parameter comprises the processing unit being configured to encode the content as the plurality of encoded fragments and send each encoded fragment to the at least one remote memory storage in substantial real-time as the content is captured by the at least one content capturing device.
15 . A method comprising:
encoding content as a plurality of fragments into at least one quality parameter, transmitting each of the encoded fragments of the plurality of encoded fragments to a cloud storage, generating metadata associated with each of the encoded fragments, engaging in a real-time messaging channel with a viewing device, and providing the metadata associated with each of the encoded fragments directly to the viewing device, via the real-time messaging channel, as each encoded fragment is generated, wherein the metadata provides information associated with at least the following:
a characteristic of each encoded fragment, and
a location of each encoded fragment within the cloud storage.
16 . The method of claim 15 , further comprising writing each encoded fragment, in substantially real-time as it is encoded, directly to the cloud storage.
17 . The method of claim 15 , providing the metadata, as it is generated, for each of the encoded fragments in substantially real-time as each corresponding encoded fragment is written directly to the cloud storage.
18 . The method of claim 15 , further comprising writing the metadata to a cloud table storage.
19 . The method of claim 15 , further comprising capturing the content via a content capturing means.
20 . The method of claim 19 , wherein encoding the content as the plurality of fragments into the at least one quality parameter comprises encoding the content as the plurality of fragments and send each encoded fragment to the cloud storage in substantial real-time as the content is captured.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.