Patent ID: 9641566
Date: 2017-05-02
CPC Classifications: H04L,H04N

Claim:
1. A system for sharing media asynchronously, comprising: a server having access to at least one processor and a user device; and a non-transitory physical medium for storing program code and accessible by the server, the program code when executed by the processor causes the processor to: establish a communication channel between the user device and the server; receive by the server, through the communication channel from the user device, a media stream object containing a recording initiated on the user device, wherein the recording is uploaded from the user device as it is recorded on the user device, wherein the recording is not a live broadcast, and wherein the recording is received in smaller segmented chunks by the server at discrete intervals; generate a complete metadata atom of the recording in real-time as the media stream object is received by the server by updating the complete metadata atom as each smaller segmented chunk of the recording is received by the server at the discrete intervals; store the recording and the complete metadata atom to permanent storage as the recording is received; receive a publication request from the user device, wherein the publication request is received from the user device at a publication request time; and in response to receiving the publication request, make the recording accessible to one or more viewers within an immediate time frame by generating, from the recording, a complete video file containing the complete metadata atom ready for download by the one or more viewers, wherein the immediate time frame is a time to upload a remaining number of bytes to the server from the publication request time plus a time to complete processing the remaining number of bytes to generate the complete video file plus a time to update the complete metadata atom for the remaining number of bytes, and wherein the immediate time frame does not depend on a length of the complete video file.