Asynchronistic platform for real time collaboration and connection

Title: Asynchronistic platform for real time collaboration and connection.Abstract: A method of authoring a multimedia presentation includes: receiving a command, over a network connection, to add a first media object having a first start time to the presentation, the first media object being stored in a data store; storing a first start time and an identifier of the first media object in a presentation description of the multimedia presentation, the presentation description being stored in a database; receiving a command, over the network connection, to add a second media object having a second start time to the presentation, the second media object being stored in the data store; and storing a second start time and an identifier of the second media object in the presentation description. ...

This application claims the benefit of U.S. Provisional Patent Application No. 61/448,695 “Asynchronistic Platform for Real Time Collaboration and Connection,” filed in the United States Patent and Trademark Office on May 20, 2011.

BACKGROUND

In the field of online multimedia communications, the wide variety of end user devices, file formats, and other constraints may impede the collaborative creation and sharing of multimedia presentations (e.g., audio and video slideshows and movies).

In addition, current online media display systems are generally linear and do not allow content creators to provide additional details and digressions in context while maintaining the originally intended flow of the presentation.

SUMMARY

Embodiments of the present invention are directed to systems and methods for creating multimedia presentations and sharing these multimedia presentations with others. In some embodiments, these multimedia presentations allow the content creators to define “branches” which allow the exploration of side stories and side notes without losing their place within the presentation.

According to one embodiment, a system for generating multimedia presentations includes: a database; a data store; and a server connected to the database and the data store, the server being configured to: store a plurality of media objects in the data store; store a description of a multimedia presentation in the database, the multimedia presentation being associated with one or more of the media objects; receive user inputs related to timing and position of the media objects associated with the multimedia presentation, the user inputs being received over a network connection; and modify the description of the multimedia presentation based on the user inputs.

According to another embodiment of the present invention, a method of authoring a multimedia presentation includes: receiving a command to add a first media object having a first start time to the presentation; storing a first start time and an identifier of the first media object in a description of the multimedia presentation; receiving a command to add a media object having a second start time to the presentation; and storing a second start time and an identifier of the second media object in the description.

According to one embodiment of the present invention, a system for creating and playing a multimedia presentation includes: a database; a data store; and a server connected to the database and the data store, the server being configured to: store a plurality of media objects in the data store, each of the media objects being associated with a media object identifier of a plurality of media object identifiers, each media object identifier being unique; store a plurality of stacks in the database, each of the stacks comprising a set of one or more media object identifiers selected from the plurality of media object identifiers; store a presentation description of the multimedia presentation in the database, the presentation description comprising a set of one or more media object identifiers selected from the plurality of media object identifiers, each media object identifier of the set of one or more media object identifiers being associated with metadata, the metadata comprising timing and position information; receive user inputs related to timing and position of the media objects associated with the multimedia presentation, the user inputs being received over a network connection; and store the received user inputs in the presentation description of the multimedia presentation.

The server may be further configured to: receive a request to play the multimedia presentation over the network connection; retrieve the presentation description of the multimedia presentation from the database; retrieve, from the data store, the media objects associated with the media object identifiers in the set of one or more media object identifiers associated with the presentation description; and transmit, over the network connection, the plurality of retrieved media objects.

The server may be further configured to: receive a request to add a media object identifier from a stack of the stacks to the multimedia presentation; transcode a portion of a media object associated with the media object identifier; and transmit the transcoded portion of the media object over the network connection when the transcoding is complete.

The system may further include a client connected to the server over the network connection, the client including a network interface, a processor, and a display, the client being configured to: receive the plurality of retrieved media objects over the network connection; transcode the portion of the media object associated with the media object identifier when the transcoding of the portion of the media object on the server is incomplete; and display the retrieved media objects and the transcoded portion of the media object on the display.

The presentation description may further include a branch description associated with a branch, the branch description including a branch set of one or more media object identifiers selected from the plurality of media object identifiers, each media object identifier of the branch set of one or more media object identifiers being associated with metadata, the metadata including timing and position information, and wherein the server may be further configured to: receive a request to play a branch; retrieve, from the data store, the media objects associated with the media object identifiers in the branch set of one or more media object identifiers associated with the branch description; and transmit, over the network connection, the plurality of retrieved media objects associated with the branch.

The server may be further configured to: store one or more playlists associated with a stack of the stacks in the database, each of the playlists including a list of one or more media object identifiers selected from the set of one or more media object identifiers associated with the stack; receive a request to play a playlist of the playlists over the network connection; retrieve the requested playlist from the database; retrieve, from the data store, a plurality of media objects associated with the media object identifiers in the list of one or more media object identifiers of the requested playlist; and transmit, over the network connection, the plurality of retrieved media objects.

According to another embodiment of the present invention, a method of authoring a multimedia presentation includes: receiving a command, over a network connection, to add a first media object having a first start time to the presentation, the first media object being stored in a data store; storing a first start time and an identifier of the first media object in a presentation description of the multimedia presentation, the presentation description being stored in a database; receiving a command, over the network connection, to add a second media object having a second start time to the presentation, the second media object being stored in the data store; and storing a second start time and an identifier of the second media object in the presentation description.

The method may further include: receiving a command, over the network connection, to adjust a length of the first media object; and storing an adjusted stop time of the first media object in the presentation description.

The method may further include: receiving a request to play the multimedia presentation over the network connection; retrieving the presentation description of the multimedia presentation from the database; retrieving, from the data store, the first media object and the second media object; and transmitting, over the network connection, the first media object and the second media object.

The method may further include: storing a plurality of stacks in the database, each of the stacks comprising a set of media object identifiers; receiving a request to add a third media object identifier from a stack of the stacks to the multimedia presentation; transcoding a portion of a third media object associated with the third media object identifier; and transmitting the transcoded portion of the third media object when the transcoding is complete.

The transcoding the portion of the third media object may be performed by a server, the method further including: transcoding, at a client coupled to the server, the portion of the third media object if the transcoding of the portion of the third media object by the server is incomplete; receiving, at the client, the transcoded portion of the third media object from the server if the transcoding of the portion of the third media object by the server is, complete; and displaying the transcoded portion of the third media object.

The presentation description may further include a branch description associated with a branch, and the method may further include: receiving a request to display a branch; retrieving, from the data store, a branch media object listed in the branch description; and transmitting the retriever branch media object over the network connection.

The method may further include: storing a plurality of stacks in the database, each of the stacks comprising a set of media object identifiers; storing one or more playlists associated with a stack of the stacks, each of the playlists comprising a list of one or more media object identifiers selected from the set of one or more media object identifiers associated with the stack; receiving a request to play a playlist of the playlists over the network connection; retrieving the requested playlist from the database; retrieving, from the data store, a plurality of media objects associated with the media object identifiers in the list of one or more media object identifiers of the requested playlist; and transmitting, over the network connection, the plurality of retrieved media objects.

According to another embodiment of the present invention, a method of playing back a multimedia presentation includes: receiving, from a server, a presentation description of a multimedia presentation associated with a first media object and a second media object, the second media object having a start time later than the first media object; requesting a first media object; receiving and playing back the first media object; and requesting the second media object after the start of the playing back of the first media object and before the start time of the second media object.

The presentation description may further include a branch object, the branch object being associated with a branch description comprising a reference to a third media object, and the method may further include: receiving a presentation description of a multimedia presentation associated with a first media object, a second media object, and a branch object, the second media object being associated with the branch object and the branch object having a start time later than and during the playing back of the first media object; requesting the first media object from a server; receiving and playing back the first media object; and at the start time of the branch object, displaying a control configured to allow a user to display the second media object.

The method may further include: receiving a command via the control to display the second media object; pausing the playing back of the multimedia presentation; and playing back the second media object.

The method may further include: adding a third media object to the multimedia presentation; initiating playback of the multimedia presentation; determining whether a portion of the third media object has been transcoded by a server; transcoding a portion of the third media object if the transcoding of the portion of the third media object by the server is incomplete; receiving the transcoded portion of the third media object from the server if the transcoding the portion of the third media object by the server is complete; and displaying the transcoded portion of the third media object.

The method may further include: selecting a stack from a plurality of stacks stored in a database, each of the stacks comprising a set of media object identifiers; selecting one or more media object identifiers from the set of media object identifiers of the selected stack; adding the selected one or more media object identifiers to a playlist, each of the object identifiers being associated with a start time in the playlist; and saving the playlist to the database.

The method may further include: requesting one or more media objects corresponding to the one or more media object identifiers of the playlist; and receiving a plurality of media objects associated with the media object identifiers of the requested playlist.

The method may further include: loading the playlist; modifying a start time of an object within the playlist; and saving the modified playlist.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, together with the specification, illustrate exemplary embodiments of the present invention, and, together with the description, serve to explain the principles of the present invention.

FIG. 1 is a schematic block diagram of a multimedia presentation system according to one embodiment of the present invention.

FIG. 2 is a functional block diagram illustrating components of the multimedia presentation system according to one embodiment of the present invention.

You can also Monitor Keywords and Search for tracking patents relating to this Asynchronistic platform for real time collaboration and connection patent application.

###

How KEYWORD MONITOR works... a FREEservice from FreshPatents1. Sign up (takes 30 seconds). 2. Fill in the keywords to be monitored. 3. Each week you receive an email with patent applications related to your keywords. Start now! - Receive info on patent apps like Asynchronistic platform for real time collaboration and connection or other areas of interest.###

Data source: patent applications published in the public domain by the United States Patent and Trademark Office (USPTO). Information published here is for research/educational purposes only. FreshPatents is not affiliated with the USPTO, assignee companies, inventors, law firms or other assignees. Patent applications, documents and images may contain trademarks of the respective companies/authors. FreshPatents is not responsible for the accuracy, validity or otherwise contents of these public document patent application filings. When possible a complete PDF is provided, however, in some cases the presented document/images is an abstract or sampling of the full patent application for display purposes. FreshPatents.com Terms/Support -g2-0.1272

20121227|20120331385|asynchronistic platform for real time collaboration and connection|A method of authoring a multimedia presentation includes: receiving a command, over a network connection, to add a first media object having a first start time to the presentation, the first media object being stored in a data store; storing a first start time and an identifier of the first |