US20120284176A1 - Systems and methods for collaborative online content editing - Google Patents

Systems and methods for collaborative online content editing Download PDF

Info

Publication number
US20120284176A1
US20120284176A1 US13/506,156 US201213506156A US2012284176A1 US 20120284176 A1 US20120284176 A1 US 20120284176A1 US 201213506156 A US201213506156 A US 201213506156A US 2012284176 A1 US2012284176 A1 US 2012284176A1
Authority
US
United States
Prior art keywords
content
collaborative
version
product
engine
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US13/506,156
Inventor
Jostein SVENDSEN
Bjørn Rustberggaard
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
WEVIDEO Inc
Original Assignee
WEVIDEO Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by WEVIDEO Inc filed Critical WEVIDEO Inc
Priority to US13/506,156 priority Critical patent/US20120284176A1/en
Assigned to WEVIDEO, INC. reassignment WEVIDEO, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: RUSTBERGGAARD, BJORN, SVENDSEN, JOSTEIN
Publication of US20120284176A1 publication Critical patent/US20120284176A1/en
Priority to US15/201,610 priority patent/US10739941B2/en
Priority to US16/990,961 priority patent/US11402969B2/en
Priority to US17/852,719 priority patent/US20220326818A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/222Secondary servers, e.g. proxy server, cable television Head-end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/233Processing of audio elementary streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/254Management at additional data server, e.g. shopping server, rights management server
    • H04N21/2541Rights Management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/254Management at additional data server, e.g. shopping server, rights management server
    • H04N21/2543Billing, e.g. for subscription services
    • H04N21/25435Billing, e.g. for subscription services involving characteristics of content or additional data, e.g. video resolution or the amount of advertising
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47205End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for manipulating displayed content, e.g. interacting with MPEG-4 objects, editing locally
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording

Definitions

  • audio-video content editing on computer systems involves computationally intensive processes and utilizes larger than usual amounts of computing resources than other computer activities (e.g., word processing, browsing the Internet). This is particularly true when the content editing involves high definition/quality audio or video content, which are well notorious for being large in data size and process heavy during content encoding and decoding processes.
  • collaborative content product comprising collaboratively-created content that can include original version (also referred to as “non-proxy version” or “non-proxy”) content items and/or derivative version (also referred to herein as “proxy version” or simply “proxy”) content items, is created and/or modified at an collaborative online content editor server according to the modifications submitted by two or more collaborative online content editor clients.
  • Proxy version content items can include, for example, lower quality/definition versions, copyright limited versions, or watermarked versions content items.
  • the systems or methods can prepare an intermediary collaborative content product (e.g., temporary copy), based on a version (e.g., latest version) of the collaborative content product residing on a collaborative online content editor server and being collaboratively developed by two or more collaborative online content editor clients.
  • the intermediary collaborative content product can be prepared by the server on behalf of each collaborative online content editor client that desires to update or modify the collaborative content product.
  • each collaborative online content editor client can modify the collaborative content product by applying modifications to its respective intermediary collaborative content product, and having the modifications to the intermediary collaborative content product applied to the collaborative content product.
  • the intermediary collaborative content product can be received by a client from a server, updated/modified at the client, and the updates/modifications to the intermediary collaborative content product then sent back to the server for application to the latest version of the collaborative content product residing at the server.
  • the intermediary collaborative content can be stored at the server on behalf of the client, the client instructs the server to perform update/modification operations on the intermediary content product, and server eventually applies the updates/modifications to the intermediary collaborative content product to the latest version of the collaborative content product residing at the server.
  • the updates/modification can apply the modification serially in the order in which they are received by the server, based on the priority of the update/modification, or based on the priority of the client submitting the update/modification.
  • a conflict exists between two or more updates/modifications to be applied to the collaborative content product (e.g., where two or more modifications are received at or near the same time)
  • the modifications do not overlap
  • some embodiments can apply both to the collaborative content product to resolve the conflict.
  • conflicts between two or more updates/modifications can be resolved by prompting one or more users (e.g., perhaps only those users submitting the updates/modifications) for a resolution.
  • the collaborative content product (and, as a result, the intermediary collaborative content product) can be a proxy version or comprise proxy version content items, thereby lowering the use of network bandwidth between a collaborative online content editor client and server and possibly lowering the processing time during operations (e.g., content modification options).
  • the resulting rendered collaborative content product can be considered a non-proxy version of the collaborative content product, where the render collaborative content product comprises non-proxy content items in the place of proxy content items.
  • the collaborative online content editor server or client can utilize proxy content during creation and modification operations on the user-created content, and replaces such proxy content items with corresponding non-proxy content items possibly when the collaborative content product content is rendered, when the collaborative content product is published for consumption, or when a user has paid for the use of non-proxy content items.
  • proxy versions of the user-created content can utilize less network bandwidth as the online content editor client commands the online content editor server to perform content-related operations on user-created content, and as the online content editor server provides proxy versions of the user-created content for content review and editing purposes.
  • the use of proxy versions of the user-created content also allow the online content editor client to review and edit content without the need for additional computing resources to review user-created content comprising high quality/high definition content.
  • various embodiments can dynamically determine what and/or how data should be transferred should be transferred between a collaborative online content editor client and a collaborative online content editor server during collaborative content editing operations. Determination of what and how data should be transferred can depend on the type of editing operation invoked and/or the context in which the operation is invoked.
  • the client can be configured to send the modified intermediary collaborative content product to the server in parts (e.g., chunks or segments) so that the server, for example, can commence applying the modifications as the parts are received by the server (rather than waiting for the modified intermediary collaborative content arriving in its entirety).
  • the client can be configured to send modifications to the intermediary collaborative content as they are applied locally at the client rather than receiving in a delayed fashion, or the client can be configured to receive from the server updates as updates/modifications from other collaborative clients are applied to the collaborative content product residing on the server.
  • FIG. 1 depicts a diagram of an example of a collaborative online content editor system in accordance with some embodiments.
  • FIG. 2 depicts a diagram of an example of a client-server system for collaborative online content editing in accordance with some embodiments.
  • FIG. 3 depicts a flowchart of an example of a server-side method for collaborative online content editing in accordance with some embodiments.
  • FIG. 4 depicts a flowchart of an example of a client-side method for collaborative online content editing in accordance with some embodiments.
  • FIG. 5 depicts a flowchart of an example of an optimization method for collaborative online content editing in accordance with some embodiments.
  • FIG. 6 depicts an example of client-side user interface for collaborative online content editing in accordance with some embodiments.
  • FIG. 7 depicts an example of a system on which techniques described in this paper can be implemented.
  • the invention can be implemented in numerous ways, including as a process; an apparatus; a system; a composition of matter; a computer program product embodied on a computer readable storage medium; and/or a processor, such as a processor configured to execute instructions stored on and/or provided by a memory coupled to the processor.
  • these implementations, or any other form that the invention may take, may be referred to as techniques.
  • the order of the steps of disclosed processes may be altered within the scope of the invention.
  • a component such as a processor or a memory described as being configured to perform a task may be implemented as a general component that is temporarily configured to perform the task at a given time or a specific component that is manufactured to perform the task.
  • the term ‘processor’ refers to one or more devices, circuits, and/or processing cores configured to process data, such as computer program instructions.
  • FIG. 1 depicts a diagram of an example of a collaborative online content editor system in accordance with some embodiments.
  • the collaborative online content editor system 100 includes a collaborative online content editor server 102 , a server-side datastore 104 coupled to the collaborative online content editor server 102 , an collaborative online content editor client 106 , a client-side datastore 108 coupled to the collaborative online content editor client 106 , and a network 110 through which the online content editor client 106 communicates with the collaborative online content editor server 102 .
  • the online content editor client 106 can leverage the computing resources and power of the collaborative online content editor server 102 when creating or modifying collaborative content product, especially when the collaborative content product comprises high definition/quality graphics, image, audio, or video content.
  • the collaborative online content editor server 102 comprises computing resources that surpass those of the collaborative online content editor client 106 , or computing resources that are better suited for content creation or modification than those of the collaborative online content editor client 106 .
  • FIG. 1 depicts a single online content editor client, the system 100 can include multiple online content editor clients that can communicate with the collaborative online content editor server 102 .
  • Collaboratively-created content includes any content authored by one or more users using the content creation/editing tools described in this paper, or some other content editing tool.
  • Collaboratively-created content can include content initially based on/started from a vendor provided or user-created content, and then subsequently modified by one or more collaborative users.
  • the collaboratively-created content can be created to be multi-layered content, comprising multiple content layers of different content types.
  • High definition/quality as used herein includes content having definition or quality that is higher than the average definition or quality for the similar content.
  • high definition/quality audio content can include audio clips having a high sampling rate (e.g., 44 KHz), has a higher bit-rate or effective bit-rate (e.g., 256 Kbs), or is encoded in a lossless audio encoding format.
  • a high sampling rate e.g., 44 KHz
  • a higher bit-rate or effective bit-rate e.g., 256 Kbs
  • an engine includes a dedicated or shared processor and, typically, firmware or software modules that are executed by the processor. Depending upon implementation-specific or other considerations, an engine can be centralized or its functionality distributed. An engine can include special purpose hardware, firmware, or software embodied in a computer-readable medium for execution by the processor.
  • a computer-readable medium is intended to include all mediums that are statutory (e.g., in the United States, under 35 U.S.C. 101), and to specifically exclude all mediums that are non-statutory in nature to the extent that the exclusion is necessary for a claim that includes the computer-readable medium to be valid.
  • Known statutory computer-readable mediums include hardware (e.g., registers, random access memory (RAM), non-volatile (NV) storage, to name a few), but may or may not be limited to hardware.
  • the collaborative online content editor system 100 can enable a user at the collaborative online content editor client 106 located remotely on the network 110 to instruct the collaborative online content editor server 102 to create or modify a collaborative content product, containing collaboratively-created content, on behalf of the client 106 .
  • the created or modified collaboratively-created content can include proxy or non-proxy content items, but generally includes only proxy content items while the collaboratively-created content is being created and modified, and then non-proxy content items once the collaboratively-created content is rendered (e.g., for publication or sharing).
  • the collaboratively-created content may be multi-layered content comprising a plurality of content layers, where each content layer comprises one or more content items from a content library, and the content items are high definition/quality content items or versions thereof.
  • the collaborative online content editor server 102 can prepare a copy of the collaborative content product (also referred to herein as an “intermediary collaborative content product”) for each collaborative online content editor client ( e.g., including the collaborative online content editor client 106 ) desiring to modify the collaborative content product.
  • the intermediary collaborative content product can also prepared as a previous of the latest version of the collaborative content product.
  • the intermediary collaborative content product can be a proxy version of the collaborative content product (e.g., to save network bandwidth or reduce processing time).
  • the intermediary collaborative content product is generally of the latest version of the collaborative content product, various implementations may perform an intermediary collaborative content product to be based off a previous version of the collaborative content product.
  • the intermediary collaborative content product can be maintained by and stored at the collaborative online content editor server 102 on behalf of each collaborative online content editor client, can be sent to the respective collaborative online content editor client, or both (e.g., where the intermediary collaborative content product for some collaborative online content editor clients is maintained at the server 102 , and the intermediary collaborative content product for others is maintained at the respective clients). Then, when the collaborative online content editor client 106 , for example, desires to apply a modification to the collaborative content product, it does so using its respective intermediary collaborative content product.
  • the client 106 can instruct the server 102 to perform the desired modifications the respective intermediary collaborative content product and, subsequently, to apply update the latest version of the collaborative content product with the modification to the respective intermediary collaborative content product.
  • the client 106 can directly modify its intermediary collaborative content product and, subsequently, send the modifications applied to its intermediary collaborative content product to the server 102 (which can update the latest version of the collaborative content product with the received modification).
  • a modification applied to the collaborative content product (e.g., through use of the intermediary collaborative) by the collaborative online content editor client 106 can include, in addition to content layer modification operations, such operations as: adjusting copyright use limitations on some or all of the collaborative content product, locking some or all portions of the collaborative content product such that some or all of other collaborative online content editor clients are prevented from modifying the designated locked portions, adding watermarks to some or all of the collaborative content product, or tagging objects (e.g., people, places, or things) shown in the collaborative content product.
  • content layer modification operations such operations as: adjusting copyright use limitations on some or all of the collaborative content product, locking some or all portions of the collaborative content product such that some or all of other collaborative online content editor clients are prevented from modifying the designated locked portions, adding watermarks to some or all of the collaborative content product, or tagging objects (e.g., people, places, or things) shown in the collaborative content product.
  • the server 102 can provide the online content editor client 106 with an updated intermediary collaborative content product based on the latest version of the collaborative content product (e.g., after the latest modification from an collaborative online content editor client has been applied).
  • the online content editor client 106 can use the resulting intermediary collaborative content product (generally comprising having proxy content items) for review or editing purposes as the client continues to modify the collaborative content product.
  • one or more versions of the collaborative content product may be stored on the server-side datastore 104 .
  • the online content editor client 106 receives new or updated versions of intermediary collaborative content product, the client 106 can store these on the client-side datastore 108 before the client 106 directly modifies the new/updated intermediary collaborative content product.
  • such content modification or update can comprise a list of modification instructions (e.g., including layer identification information, timeline information, content identification information), a copy of the modified content in its entirety, or a copy of the content portions that are modified/updated.
  • modification instructions e.g., including layer identification information, timeline information, content identification information
  • a datastore can be implemented, for example, as software embodied in a physical computer-readable medium on a general- or specific-purpose machine, in firmware, in hardware, in a combination thereof, or in an applicable known or convenient device or system.
  • Datastores in this paper are intended to include any organization of data, including tables, comma-separated values (CSV) files, traditional databases (e.g., SQL), or other applicable known or convenient organizational formats.
  • Datastore-associated components such as database interfaces, can be considered “part of” a datastore, part of some other system component, or a combination thereof, though the physical location and other characteristics of datastore-associated components is not critical for an understanding of the techniques described in this paper.
  • Datastores can include data structures.
  • a data structure is associated with a particular way of storing and organizing data in a computer so that it can be used efficiently within a given context.
  • Data structures are generally based on the ability of a computer to fetch and store data at any place in its memory, specified by an address, a bit string that can be itself stored in memory and manipulated by the program.
  • Some data structures are based on computing the addresses of data items with arithmetic operations; while other data structures are based on storing addresses of data items within the structure itself.
  • Many data structures use both principles, sometimes combined in non-trivial ways.
  • the implementation of a data structure usually entails writing a set of procedures that create and manipulate instances of that structure.
  • the collaborative online content editor server 102 can publish a finalized version of the collaborative content product for download or sharing with others.
  • the collaborative online content editor server 102 can render the latest version of the collaborative control product (as it resides on the server 102 ) such that proxy content items contained in the collaborative control product are replaced with non-proxy content item.
  • the server 102 can replace low definition/quality content items in the collaborative content product with high-quality definition/high quality counterpart or some version thereof.
  • the collaborative online content editor server 102 will replace low definition/quality content with corresponding high-quality definition/high quality content based on payment by a user.
  • the user can be prevented from publishing the collaborative content product, or the user is left with publishing collaborative content product using proxy content items.
  • a user may have to make payment before the collaborative content product is published with non-proxy content items (e.g., high definition/quality content items).
  • the resulting rendered collaborative content product can then be downloaded or shared with others.
  • FIG. 2 depicts a diagram of an example of a system for collaborative online content editing in accordance with some embodiments.
  • the system 200 for collaborative online content editing includes a collaborative online content editor server 202 , an online content editor client 206 , and a network 204 facilitating communication between the server 202 and the client 206 .
  • the system 200 can enable a user at the online content editor client 206 located remotely on the network 204 to instruct the collaborative online content editor server 202 to create or modify collaborative content product comprising collaboratively-created content possibly including proxy or non-proxy content items.
  • the online content editor client 206 can instruct the collaborative online content editor server 202 through a collaborative online content editing client engine 226 located at the client 206 .
  • the collaborative online content editor server 202 can provide, and the online content editor client 206 can receive, a version of the created or modified collaborative content product, such as an intermediary collaborative content product, generally containing proxy content items.
  • the collaborative online content editor server 202 comprises a collaborative online content editing server engine 208 , a content library/market place engine 210 , a content library store 212 , an adjustable-version layer rendering engine 214 , a content publication engine 216 , a published version content datastore 218 , and a content payment engine 220 .
  • the collaborative online content editor server 202 further comprises a content licensing management engine 222 and a cloud management engine 224 .
  • the collaborative online content editing server engine 208 creates or modifies user-created content at the collaborative online content editor server 202 on behalf of the online content editor client 206 .
  • the collaborative online content editing server engine 208 can establish a connection with the online content editor client 206 over the network 204 , can receive commands relating to content creation or modification over a network connection, can perform content creation or modification operations in accordance with commands received from the online content editor client 206 , and can transmit to the online content editor client 206 a version of the created or modified collaborative content product (e.g., intermediary collaborative content product).
  • the created or modified user-created content may be multi-layered content comprising one or more content layers, each content layer comprising one or more content items from a content library.
  • the content items utilized can be original content items or proxy versions thereof.
  • the collaborative online content editing server engine 208 is coupled to the content library/market place engine 210 , the adjustable-version layer rendering engine 214 , the content publication engine 216 , and the content payment engine 220 .
  • the collaborative online content editing server engine 208 can access proxy and non-proxy content items and information relating to such content items through the content library/market place engine 210 , can render one or more (content) layers of the collaborative content product at an adjusted quality or version (e.g., copyright-limited use version content items, for-cost content items, free content items, watermarked content items, high-quality content items, or lower quality content items) using the adjustable-version layer rendering engine 214 , and can use the content publication engine 216 to publish the collaborative content product at an adjusted quality or version for download or sharing purposes.
  • an adjusted quality or version e.g., copyright-limited use version content items, for-cost content items, free content items, watermarked content items, high-quality content items, or lower quality content items
  • the collaborative online content editing server engine 208 can receive pre-payment or post-payment through the content payment engine 220 to permit access to for-purchase content items or to publish the user-defined content items using for-purchase content (e.g., content of varying quality or versions, such as high definition/quality content items).
  • for-purchase content e.g., content of varying quality or versions, such as high definition/quality content items.
  • the content library/market place engine 210 is coupled to the content library datastore 212 and manages the content items stored therein.
  • the content library/market place engine 210 can be responsible for adding, deleting and modifying content items stored on the content library datastore 212 , for retrieving a listing of content items stored on the content library datastore 212 , for providing details regarding content items stored on the content library datastore 212 , and for providing to other engines content items from the content library.
  • the content library/market place engine 210 can provide content items to the collaborative online content editing server engine 208 as a collaborative user reviews and selects content items to be added to the collaborative content product.
  • the content library/market place engine 210 can provide content items to the adjustable-version layer rendering engine 214 as the engine 214 renders one or more layers of the collaborative content product.
  • the content library/market place engine 210 can also provide a marketplace where user-posted market items, such collaboratively-created content items (e.g., collaborative content product), individual-created, content items, and user uploaded content items, can be marketed to others (e.g., users) having access to the marketplace.
  • the content library/market place engine 210 can be coupled to the content payment engine 210 to facilitate purchases through the marketplace.
  • the content library/market place engine 210 can be configured to credit the user/users associated with the market item with some or all of the funds from the purchase.
  • a user can charge varying prices for vary qualities or versions of a market item.
  • the content library/market place engine 210 can also be configured to allow visitors of the marketplace to rent market items.
  • the content library datastore 212 stores content items that can be used in the collaborative content product.
  • the content items of the content library datastore 212 can include, without limitation, audio content, video content, image content, graphics contents, and user-provided content.
  • the user-provided content can include the collaborative content product that was created or modified using the collaborative online content editor server 202 and subsequently added to the content library datastore 202 , and user content uploaded from the online content editor client 206 to the collaborative online content editor server 202 .
  • the content items of the content library datastore 212 can also include, without limitation, free content that can be used in collaborative content product without need of payment, for-purchase content that can be reviewed only after user payment, content that can be added to collaborative content product only after user payment, and content that can be used in the publication of collaborative content product only after user payment.
  • the high definition/quality content items can be added to, removed from, and adjusted within the user-created item without need of payment.
  • the collaborative online content editor server 202 can request payment before publication of the collaborative content product is allowed.
  • a payment can be requested in order for the collaborative content product to be published using the high definition/quality content rather a proxy version of the high definition/quality content.
  • the collaborative online content editor server 202 can use proxy versions of the content items when performing creation and modification operations on the collaborative content product (e.g., through the intermediary collaborative content product, where the use of the proxy version continues until publication of the collaborative content product.
  • the content library/market place engine 210 can provide the server 202 with the proxy version of the content item utilized during creation and modification operations.
  • the content library/market place engine 210 can generate the proxy version as it is requested by various engines (e.g., the adjustable-version layer rendering engine 214 , or the collaborative online content editing server engine 208 ), or the content library/market place engine 210 can provide the proxy version as stored on the content library datastore 212 .
  • the proxy version of the high definition/quality content can also be utilized by the collaborative online content editing server engine 208 when transmitting previews of the content to the online content editor client 206 or when transmitting an intermediary collaborative content product to the online content editor client 206 .
  • the content stored on the content library datastore 212 can have various associated properties (i.e., content item properties) that provide details regarding aspects of the content items.
  • content item properties can comprise such information as content type, content duration, content usage permissions (e.g., licensing rights), content cost parameters (e.g., free to use until the collaborative content product is published, or is published using high definition/quality content), content data size, content source (e.g., user provided, or third party author), or content creation or modification date.
  • a user can review listings of content items in the content library datastore 212 (e.g., available or unavailable content), review details regarding content items in the content library (e.g., price, usage parameters, content type, duration where applicable, or content definition/quality), manage content items in the content library datastore 212 (e.g., add, delete, or modify content items in the content library), and add content items from the content library datastore 212 to collaborative content product.
  • content items in the content library datastore 212 e.g., available or unavailable content
  • review details regarding content items in the content library e.g., price, usage parameters, content type, duration where applicable, or content definition/quality
  • manage content items in the content library datastore 212 e.g., add, delete, or modify content items in the content library
  • the adjustable-version layer rendering engine 214 renders one or more layers of the collaborative content product using content items provided by the content library/market place engine 210 from the content library datastore 212 .
  • the content items provided to the adjustable-version layer rendering engine 214 can be an original version of the content item or a lesser definition/quality version of the same.
  • the collaborative online content editing server engine 208 can specify to the adjustable-version layer rendering engine 214 the desired quality or version for the resulting layers.
  • the collaborative online content editing server engine 208 can specify that the layers of the collaborative content product, comprising high definition/quality content items, be rendered using a low definition/quality version of the high definition/quality content items. Thereafter, the collaborative content product comprising layers of low definition/quality content can be provided to the online content editor client 206 by the collaborative online content editing server engine 208 for preview or editing purposes, as an intermediary collaborative content product, or can be provided to the content publication engine 216 (e.g., for free publication of collaborative content product comprising proxy content items).
  • the collaborative online content editing server engine 208 can specify that the layers of the collaborative content product, comprising high definition/quality content items, be rendered using the high definition/quality content items, but only at the time of publication through the content publication engine 216 , or only after the user submits payment through the content payment engine 220 .
  • the content publication engine 216 receives collaborative content product rendered by the adjustable-version layer rendering engine 214 and publishes the collaborative content product.
  • the collaborative content product can be published such that the collaborative content product can be downloaded and saved by the user or others as a stand-alone content file (e.g., MPEG or AVI file), or such that collaborative content product can be shared to other over the network (e.g., posted to a website so that others can play/view the collaborative content product).
  • the collaborative content product can be stored on the published version content datastore 218 .
  • the published collaborative content product can be added to the content library datastore 212 for reuse in other collaborative content product.
  • the published collaborative content product can be added to the content library datastore 212 as for-purchase content (for example, via the content library/market place engine 210 , with the sales proceeds being split between amongst the user and the online content editor service provider), or added to the content library datastore 212 as free content available to the public.
  • the user can also define content usage parameters (i.e., licensing rights) for their collaborative content product when the collaborative content product is added to the content library datastore 212 .
  • the content payment engine 220 facilitates user payment to the collaborative online content editor server 202 , and can determine the level of functionality provided by the collaborative online content editor server 202 , or the level of quality for or the version of content items within the collaborative content product. For example, once payment has been received by the content payment engine 220 and the content payment engine 220 has informed the collaborative online content editing server engine 208 of such payment, the collaborative online content editing server engine 208 can allow the user to access certain content items in the content library datastore 212 (e.g., for-purchase content), can allow the user to perform certain content creation or modification operations (e.g., splitting a content layer), or can allow the user to publish the collaborative content product with high definition/quality content.
  • the collaborative online content editing server engine 208 can allow the user to access certain content items in the content library datastore 212 (e.g., for-purchase content), can allow the user to perform certain content creation or modification operations (e.g., splitting a content layer), or can allow the user to publish the collaborative content product with high definition/quality content
  • the quality or version of the content item within the collaborative content product can be variable and determined based on the amount payment made by the user.
  • the content payment engine 220 can maintain an account, where the user can maintain a positive balance from which funds are deducted as payments are made to the collaborative online content editor server 202 , or where charges are incurred to the account and the user submits payment some time after (e.g., a credit system).
  • the collaborative online content editing server engine 208 can inform the content payment engine 220 of the costs accrued by the user as he or she uses content items from the content library datastore 212 in the collaborative content product, or as certain functionality of the collaborative online content editing server engine 208 is utilized.
  • the pricing for content items can be stored with the content items in the content library datastore 212 .
  • the content licensing management engine 222 can determine the licensing rights and permissions of content items stored on the content library datastore 212 , and inform the collaborative online content editing server engine 208 of such rights and permissions.
  • the collaborative online content editing server engine 208 can adaptively control its own functionality in accordance with the licensing rights and permissions of the content item as the content item is utilized in the collaborative content product. For instance, where the content licensing rights and permissions of a certain content item restricted the content item from being split during creation or modification of the collaborative content product (i.e., the content item has to remain intact in the collaborative content product), the collaborative online content editing server engine 208 can automatically disable a split content layer command with respect to that certain content item.
  • the licensing rights and permissions can indicate whether certain content item can be utilized in collaboratively-created content, or has limitations on how many collaborative users can utilize the content item.
  • Other content licensing rights and permissions can include publication limitations on the collaborative content product, or limitations on use of content items based on the existing content of the collaborative content product.
  • the content licensing management engine 222 cam inform the collaborative online content editing server engine 208 of the cost of certain content items based on their use in accordance with the licensing rights and permissions.
  • the authors of the content items can configure the licensing rights and permissions for their content items, which is then stored on the content library datastore 212 .
  • the collaborative online content editor server 202 is implemented using virtual or cloud-based computing resources
  • such virtual or cloud-based computer resources can be managed through the cloud management engine 224 .
  • the cloud management engine 224 can delegate various content-related operations and sub-operations of the server 202 to virtual or cloud-based computer resources, and manage the execution of the operations.
  • the cloud management engine 224 can facilitate management of the virtual or cloud-based computer resources through an application program interface (API) that provides management access and control to the virtual or cloud-based infrastructure providing the computing resources for the collaborative online content editor server 202 .
  • API application program interface
  • the online content editor client 206 comprises a remote online content editor user interface, as part of the collaborative online content editing client engine 226 , and a local-version content datastore 228 coupled to the collaborative online content editing client engine 226 .
  • the collaborative online content editing client engine 226 facilitates the creation or modification of collaborative content product at the collaborative online content editor server 202 by the online content editor client 206 .
  • the collaborative online content editing client engine 226 can establish a connection with the collaborative online content editing server engine 208 over the network 204 , and then issue content creation and modification commands to the collaborative online content editing server engine 208 .
  • the collaborative online content editing server engine 208 can perform the content creation or modification operations at the collaborative online content editor server 202 , and can return to the remote online content editor user interface engine 226 a proxy version of the resulting collaborative content product.
  • the online content editor client 206 can modify content by receiving an intermediary collaborative content product based on the latest version of the collaborative content product, modifying the intermediary collaborative content product, and then uploading the modifications to the intermediary collaborative content product to the collaborative online content editor server 202 so that the edits can be consistently applied to collaborative content product residing on the server 202 .
  • the intermediary collaborative content product is uploaded from the online content editor client 206 to the collaborative online content editor server 202 to facilitate modification of the collaborative content product
  • various implementations can utilize one or more methods for optimizing the network bandwidth usage. More regarding such optimization methods are described herein in association with FIG. 5 .
  • the collaborative online content editor server 202 can provide the proxy version of collaborative content product (e.g., intermediary collaborative content product) as a content stream that is buffered and played through the remote online content editor user interface engine 226 , or as a content file that is playable by the remote online content editor user interface engine 226 once the content file has been downloaded to the online content editor client 206 and stored to the local-version content datastore 228 .
  • collaborative content product e.g., intermediary collaborative content product
  • FIG. 3 depicts a flowchart 300 of an example of a server-side method for collaborative online content editing in accordance with some embodiments.
  • the modules of the flowchart 300 and other flowcharts described in this paper are rendered to a permutation of the illustrated order of modules or reorganized for parallel execution.
  • the flowchart 300 starts at module 302 with receiving at a server a first request by a first collaborative online content editor client to modify a collaborative content product comprising multi-layered collaboratively-created content.
  • the flowchart 300 continues to module 304 with providing, in response to the first request, the first collaborative online content editor client with a first intermediary collaborative content product based on a latest version of the collaborative content product.
  • the module 304 may cause the first intermediary collaborative content product to be maintained and stored at the server or, alternatively, cause the first intermediary collaborative content product to be sent to the client where will be maintained and stored.
  • the flowchart 300 continues to module 306 with receiving at the server a second request by a second collaborative online content editor client to modify the collaborative content product.
  • the flowchart 300 continues to module 308 with providing, in response to the second request, the second collaborative online content editor client with a second intermediary collaborative content product based on a latest version of the collaborative content product.
  • the module 304 may cause the second intermediary collaborative content product to be maintained and stored at the server or, alternatively, cause the second intermediary collaborative content product to be sent to the client where will be maintained and stored.
  • the order in which the server receives the first request and the second request, and the order in which the server provides the first intermediary collaborative content product and the second intermediary collaborative content product can be arbitrary.
  • the flowchart 300 continues to module 310 with providing a first version of a library content item for the first collaborative online content editor client to use as the first collaborative content editor client modifies the first intermediary collaborative content product or for the second collaborative online content editor client to use as the second collaborative content editor client modifies the second intermediary collaborative content product.
  • the first version can comprise a lower quality version of the library content item while the second version comprises a higher quality version of the library content item
  • the first version can comprise a derivative version of the library content item while the second version comprises an original version of the library content item
  • the first version can comprise a watermarked version of the library content item while the second version comprises a non-watermarked version of the library content
  • the first version can comprise a first copyright right limited version of the library content item while the second version comprises a second copyright limited version of the library content.
  • the library content item can comprise an image, an audio clip, a video clip, user-provided content, third party-provided content, payment-free content, or for-purchase content.
  • the flowchart 300 continues to module 312 with receiving a first modification applied to the first intermediary collaborative content product by the first collaborative online content editor client.
  • the flowchart 300 continues to module 314 with receiving a second modification applied to the second intermediary collaborative content product the second collaborative online content editor client.
  • the first and/or second modification (applied to the respective intermediary collaborative content products) may comprise of a list of modification instructions (e.g., including layer information, content information, and/or timeline information), a set of modified portions of the respective intermediary collaborative content product, or an entire intermediary collaborative content product as modified.
  • receiving a modification applied to the given intermediary collaborative content product can be an internal process of the server where the server obtains the modification from the given intermediary collaborative content product.
  • receiving a modification applied to the given intermediary collaborative content product can comprise receiving the modification at the server from the client.
  • modifying the collaborative content product in accordance with the first modification and the second modification can comprises serially modifying the collaborative content product in accordance with the with the first modification and then modifying the collaborative content product in accordance with the second modification. This may occur when, for example, the first modification is received before the second modification is received by the collaborative online content editing server engine.
  • first modification is associated with a first collaborative user (e.g., administrative user, or content project lead)
  • second modification is associated with a second collaborative user (e.g., regular user)
  • first collaborative user e.g., administrative user, or content project lead
  • second collaborative user e.g., regular user
  • modifying the collaborative content product in accordance with the first modification can comprise entirely replacing the collaborative content product with the first intermediary collaborative content product as modified.
  • modifying the collaborative content product in accordance with the first modification can comprise applying a difference between the collaborative content product and the first intermediary collaborative content product as modified to the collaborative content product. How the modification is performed can depend on user preferences, administrative preferences, or predetermined settings of the collaborative system. It will be well appreciated by those skilled in the art that the collaborative content product can, in some embodiments, be modified in accordance with the second modification in a similar manner.
  • step 318 rendering the collaborative content product as rendered collaborative content product using a second version of the library content item in place of the first version of the library content item.
  • FIG. 4 depicts a flowchart 400 of an example of a client-side method for collaborative online content editing in accordance with some embodiments.
  • the modules of the flowchart 400 and other flowcharts described in this paper are rendered to a permutation of the illustrated order of modules or reorganized for parallel execution.
  • the flowchart 400 starts at module 402 with initiating at a client a collaborative online editor instance.
  • the flowchart 400 continues to module 404 with the collaborative online editor instance displaying a listing of library content items available for use from a content library datastore at a server.
  • the flowchart 400 continues to module 406 with the collaborative online editor instance sending, to the server, a first request to modify a collaborative content product comprising multi-layered collaboratively-created content, thereby resulting in the preparation of an intermediary collaborative content product based on a latest version of the collaborative content product.
  • the intermediary collaborative content product once prepared by the server, may reside at the server or be sent to the client for maintenance and storage.
  • the flowchart 400 continues to module 408 with modifying the collaborative content product through the intermediary collaborative content product using a first version of a library content item from the content library datastore.
  • the client can instruct the server to perform the modification operations to the intermediary collaborative content product.
  • the client can directly perform the modification operations on the intermediary collaborative content product, and then transmit the modifications performed on the intermediary content product to the server.
  • the flowchart 400 continues to module 410 with sending, to the server, a second request to the server to modify the collaborative content product in accordance with the intermediary collaborative content product.
  • the flowchart 400 continues to module 412 with sending, to the server, a third request to the server to render the collaborative content product as a rendered collaborative content product, where the rendering uses a second version of the library content item in place of the first version.
  • the flowchart 400 continues to module 414 with requesting publication of the rendered collaborative content product for download or sharing with others.
  • FIG. 5 depicts a flowchart of an example of an optimization method for collaborative online content editing in accordance with some embodiments.
  • Use of the optimization method can, for some embodiments, allow for efficient use of network bandwidth between an online low-bandwidth consumption client and an online low-bandwidth consumption server and/or allow for less processing time during content modification operations.
  • the optimization method can be implemented at a collaborative online content editor client, at a collaborative online content editor server, or both. Once implemented, the optimization method can determine how and when data transfer between the collaborative online content editor client and the collaborative online content editor server can be performed in a manner which reduces the amount of data being transferred.
  • the optimization method makes the transfer determination based on the type of action instructed to be performed, based on the context in which action is instructed to be performed, preferences set at the online low-bandwidth consumption client or the online low-bandwidth consumption server, or some combination thereof.
  • the optimization method can be implemented for content transfer from the online low-bandwidth consumption client to the collaborative online content editor server, can be implemented for content transfer from the collaborative online content editor server to the collaborative online content editor client, or both.
  • the optimization methods described herein are primarily described in association with content transfers, those skilled in the art will appreciate that the optimization methods can be utilized for other information being transferred between collaborative online content editor client and the collaborative online content editor server including, for example, timeline information.
  • the modules of the flowchart 500 and other flowcharts described in this paper are reordered to a permutation of the illustrated order of modules or reorganized for parallel execution.
  • the flowchart 500 starts at module 502 with initiating at a client a collaborative online editor instance.
  • a user at the client can issue commands, such as content creation or modification commands relating to the collaborative content product, through the collaborative online content editor instance to the server.
  • the collaborative online content editor instance can instruct the server to perform operations on the collaborative content product residing at the server via an intermediary collaborative content product, which may be residing at the server or residing at the client.
  • the client can be implemented by any known or convenient computing device including, for example, mobile computing devices, netbooks, and desktop.
  • the server possesses computing resources in excess of those of the client, or the server possesses computing resources better suited for content creation or modification than those of the client.
  • the flowchart 500 continues to module 504 , instructing the collaborative content online content editor instance to perform an action with respect to the intermediary collaborative content product, which is based on the collaborative content product.
  • actions can include modification of a layer in the intermediary collaborative content product, changing attributes of the intermediary collaborative content product, adding, removing content, or adjusting content items in the intermediary collaborative content product, or updating the collaborative content product with the current version of the intermediary collaborative content product.
  • the context in which the instruction to perform the action is made, or the action to be performed can have an influence on how the method optimizes data transfers between the client and server.
  • Examples of context aspects that can be considered include whether the instruction is requested in a collaborative setting (e.g., where two or more collaborative online content online editor clients are modifying a single collaborative content product), content editor user preferences (e.g., early start on rendering processes), and whether one or more other instructions have been requested concurrently with the instruction requested at module 504 .
  • the flowchart 500 continues to module 506 with determining based on the action instructed to be performed or the context of the instruction, how the action or a result of the action is transmitted from the client to the server.
  • the module 506 can determine that any upload of intermediary collaborative content product from the client to the server should be transferred in parts (e.g., content data chunks or segments), thereby enabling the server to commence processing of the content as the parts are received (rather than waiting for the intermediary collaborative content product in its entirety).
  • the client can cause the server to pause or stop content processing mid-performance (e.g., collaborative content product update process when a mistake is discovered in the modified intermediary collaborative content product), thereby potentially saving time and
  • two or more collaborative online content editor users are collaboratively performing content edits to the same collaborative content product, where each content editor user is respectively editing his or her respective intermediary collaborative content product residing locally at the content editor user's client.
  • the module 506 can determine that portions of the intermediary collaborative content product residing at the respective clients are to be uploaded to the server as the portions are modified by the individual content editor users. In doing so, various implementation can try to ensure that the latest changes applied by individual collaborative users to the user-created content can be shared amongst other collaborative users.
  • step 508 the flowchart 500 continues to step 508 with transmitting the action or the result of the action from the client to the server according to the determination.
  • FIG. 6 depicts an example of client-side user interface for collaborative online content editing in accordance with some embodiments.
  • the client-side user interface of FIG. 6 can control the content creation and editing operations performed on a collaborative content being developed collaboratively by two or more users.
  • the client-side user interface can control a collaborative online content editing client engine operating at a client, a collaborative online content editing server engine operation at a server, or both to facilitate the creation and editing operations on the collaborative content.
  • the client-side user interface can cause various engines to operate such that an intermediary collaborative content product is prepared by the server and received by a client from the server, the intermediary collaborative content product is updated/modified at the client, and the updated/modified intermediary collaborative content product is sent back to the server (e.g., in order to update the latest version of the collaborative content product residing at the server).
  • the client-side user interface can cause various engines to operate such that an intermediary collaborative content prepared and stored at a server on behalf of the client, the client instructs the server to perform update/modification operations on the intermediary content product, and the client instructs the server to update/modify the collaborative content product (e.g., possibly the latest version of the collaborative content product) using the updated/modified intermediary collaborative content product at the server.
  • the behavior and/or results of the client-side user interface based on user input can be based on individual user preferences, administrative preferences, predetermined settings, or some combination thereof.
  • the client-side user interface can be configured such that a user can request performance of creation and modification operations on the collaborative content product being collaboratively developed.
  • the client-side user interface can be transferred from a server to a client as a module that can then be operated on the client.
  • the client-side user interface can comprise a client-side applet or script that is downloaded to the client from the server and then operated at the client (e.g., through a web browser).
  • the client-side user interface can operate through a plug-in that is installed in a web browser.
  • User input to the client-side user interface can cause a command relating to online content editing, such as a content layer edit command or a content player/viewer command, to be performed at the client or to be transmitted from the client to the server.
  • the client-side user interface 600 includes multiple controls and other features that enable a user at a client to control the creation or modification of collaborative content products.
  • the client-side user interface 600 includes a tabbed menu bar 602 , a content listing 604 , a content player/viewer 606 , content player/viewer controls 608 , content layer editor controls 610 , a content timeline indicator 612 , and a content layering interface 614 .
  • the client-side user interface 600 includes the tabbed menu bar 602 that allows the user to select between different content types (e.g., video, audio, or images) as they search for content available to them from a content library.
  • the tabbed menu bar 602 allows the user to select between reviewing “Videos,” “Sounds,” “Graphics” (e.g., text or images), or personal (media) content (i.e., “My media files”) that is available from the content library.
  • the personal content can be that which the user uploaded to their account on the server, that which the user already created on the server, or both.
  • the tabbed menu bar 602 can include additional content types (e.g., “3D Video”) from which the user can select as they search for content available to them from the content library.
  • the tabbed menu bar 602 also enables the user to select “Transitions,” which can be predefined (e.g., vendor provided), user-created, or collaboratively-created content transitions inserted between two content items in a layer of collaboratively-created content.
  • Transitions can include a left-to-right video transition which once inserted between a first video clip and a second video clip, cause the first video clip transition to the second video clip in a left-to-right manner.
  • available transitions can include a right-to-left transition which once inserted between a first audio clip and a second audio clip, causes the first audio clip to fade into to the second audio clip starting from the right audio channel and ending at the left audio channel.
  • the content listing 604 displays a list of content available from the content library.
  • the content listing 604 can list the available content with a thumbnail image configured to provide the user with a preview of the content.
  • the thumbnail image may be a moving image that provided a brief preview of the video content.
  • the thumbnail preview may be a smaller sized version (i.e., lower resolution version) of the image content.
  • a content item listed in content listing 606 can be further previewed in a content player/viewer 606 , configured to play audio or video or display larger resolution images.
  • the content listing 604 can also provide details regarding the listed content including, without limitation, a source of the content, a date of creation for the content, a data size of the content, a time duration of the content (where applicable), licensing information relating to the content, and cost of using the content.
  • a user can utilize the player/viewer 606 to preview content items from the content library listed in the content listing 604 .
  • the content player/viewer 606 can also provide a preview of collaboratively-created content being created through the client-side user interface 600 .
  • the user can create collaboratively-created content, containing one or more video and audio content items from the content library, and then preview that collaboratively-created content through the content player/viewer 606 .
  • the content being previewed can be from a latest version of the collaborative content product residing at the server, a rendered version of the collaborative content product residing at the server, a latest version of the intermediary collaborative content product residing at the server for the client, or a latest version of the intermediary collaborative content product locally residing at the client.
  • content being played or shown is provided from the server
  • such content can be streamed from the server to the client as such the content is played or shown through the content player/viewer 606 .
  • content being played or shown is provided from the server, such content can be first downloaded to the client before it is played or shown through the content player/viewer 606 .
  • the content library items or the collaborative content product shown through the content player/viewer 606 can be of a proxy version rather than the actual version of the content residing on the server or the content that is eventually rendered by the server. Because the proxy content requires less bandwidth when being transferred from the server to a client, some embodiments can lower the data bandwidth consumption between the client and server as content is created, edited, rendered or previewed through the client-side user interface 600 , and can possibly decrease processing time at the client and/or the server during creation, modification, rendering, or preview operations.
  • a user controls the operations of the content player/viewer 606 using the content player/viewer controls 608 .
  • the content player/viewer controls 608 can include control commands common to various players, such as previous track, next track, fast-backward, fast-forward, play, pause, and stop.
  • a user input to the content player/viewer controls 608 can result in a content player/viewer command instruction being transmitted from the client to the server.
  • the content layer editor control 610 comprises controls that enable the user to edit content layers of collaborative content product.
  • a user can implement edits to a content layer of the collaborative content product residing on the server.
  • the content layer editor control 610 can include edit controls that enable a user to add, delete or modify one or more content layers of collaborative content product.
  • Example edit controls include, without limitation, adding a content layer, deleting a content layer, splitting a single content layer into two or more content layers, and editing properties of a content layer.
  • the content timeline indicator 612 visually assists a user in determining a temporal position of a content layer in collaborative content product or a content item in the content layer.
  • the content timeline indicator 612 can comprise a time marker that indicates a temporal start point or a temporal end point for a content layer or a content item in the content layer.
  • the length of the content timeline indicator 612 can adapt according to the overall duration of the collaboratively-created creation, or can be adjusted according to a user-setting.
  • the content layering interface 614 enables a user to access and modify content layers of the collaborative content product.
  • the content layering interface 614 can comprise a stack of content layer slots, where each content layer slot graphically presents all the content layers of a particular content type associated to the collaborative content product.
  • Example content types include, without limitation, graphical content (e.g., “Graphics”), video content (e.g., “Video”), image content (e.g., “Image”), and audio content (e.g., “Audio effects”).
  • the content layering interface 614 can also comprise image, video or audio effects, which can be applied to the various content types.
  • the user can add content to a new or existing content layer of the collaborative content product by “dragging-and-dropping” content items from the content listing 604 into the content layering interface 614 .
  • the user can graphically modify a temporal position or duration of a content layer or a content item within the content layer. For instance, the user can drag-and-drop the graphically represented start or end of a content item to adjust the duration of the content item (thereby the temporal start of temporal end of the content item) in the collaborative content product.
  • FIG. 7 depicts an example of a system on which techniques described in this paper can be implemented.
  • the computer system 700 may be a conventional computer system that can be used as a client computer system, such as a wireless client or a workstation, or a server computer system.
  • the computer system 700 includes a computer 702 , I/O devices 704 , and a display device 706 .
  • the computer 702 includes a processor 708 , a communications interface 710 , memory 712 , display controller 714 , non-volatile storage 716 , and I/O controller 718 .
  • the computer 702 may be coupled to or include the I/O devices 704 and display device 706 .
  • the computer 702 interfaces to external systems through the communications interface 710 , which may include a modem or network interface. It will be appreciated that the communications interface 710 can be considered to be part of the computer system 700 or a part of the computer 702 .
  • the communications interface 710 can be an analog modem, ISDN modem, cable modem, token ring interface, satellite transmission interface (e.g. “direct PC”), or other interfaces for coupling a computer system to other computer systems.
  • the processor 708 may be, for example, a conventional microprocessor such as an Intel Pentium microprocessor or Motorola power PC microprocessor.
  • the memory 712 is coupled to the processor 708 by a bus 770 .
  • the memory 712 can be Dynamic Random Access Memory (DRAM) and can also include Static RAM (SRAM).
  • the bus 770 couples the processor 708 to the memory 712 , also to the non-volatile storage 716 , to the display controller 714 , and to the I/O controller 718 .
  • the I/O devices 704 can include a keyboard, disk drives, printers, a scanner, and other input and output devices, including a mouse or other pointing device.
  • the display controller 714 may control in the conventional manner a display on the display device 706 , which can be, for example, a cathode ray tube (CRT) or liquid crystal display (LCD).
  • the display controller 714 and the I/O controller 718 can be implemented with conventional well known technology.
  • the non-volatile storage 716 is often a magnetic hard disk, an optical disk, or another form of storage for large amounts of data. Some of this data is often written, by a direct memory access process, into memory 712 during execution of software in the computer 702 .
  • machine-readable medium or “computer-readable medium” includes any type of storage device that is accessible by the processor 708 and also encompasses a carrier wave that encodes a data signal.
  • the computer system 700 is one example of many possible computer systems which have different architectures.
  • personal computers based on an Intel microprocessor often have multiple buses, one of which can be an I/O bus for the peripherals and one that directly connects the processor 708 and the memory 712 (often referred to as a memory bus).
  • the buses are connected together through bridge components that perform any necessary translation due to differing bus protocols.
  • Network computers are another type of computer system that can be used in conjunction with the teachings provided herein.
  • Network computers do not usually include a hard disk or other mass storage, and the executable programs are loaded from a network connection into the memory 712 for execution by the processor 708 .
  • a Web TV system which is known in the art, is also considered to be a computer system, but it may lack some of the features shown in FIG. 7 , such as certain input or output devices.
  • a typical computer system will usually include at least a processor, memory, and a bus coupling the memory to the processor.
  • the apparatus can be specially constructed for the required purposes, or it can comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer.
  • a computer program may be stored in a computer readable storage medium, such as, but is not limited to, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, any type of disk including floppy disks, optical disks, CD-ROMs, and magnetic-optical disks, or any type of media suitable for storing electronic instructions, and each coupled to a computer system bus.

Abstract

Various embodiments of the invention provide systems and methods for collaborative online content editing, where collaboratively-created content comprising high definition/quality content is created or modified at an online content editing server according to instructions from an online content editor client, and where a proxy version of the resulting collaboratively-created content is provided to online content editor client to facilitate review or further editing of the collaboratively-created content from the online content editor client. In some embodiments, the online content editing server utilizes proxy content during creation and modification operations on the collaboratively-created content, and replaces such proxy content with corresponding higher definition/quality content, possibly when the collaboratively-created content is published for consumption, or when the user has paid for the higher quality content.

Description

    PRIORITY CLAIM
  • The present application claims benefit of: U.S. Provisional Patent Application Ser. No. 61/468,725 filed Mar. 29, 2011 and entitled “Media Management;” U.S. Provisional Patent Application Ser. No. 61/564,256 filed Nov. 28, 2011 and entitled “Local Timeline Editing for Online Content Editing;” U.S. Provisional Patent Application Ser. No. 61/564,257 filed Nov. 28, 2011 and entitled “Multi-Layer Timeline Content Compilation Systems and Methods;” and U.S. Provisional Patent Application Ser. No. 61/564,261 filed Nov. 28, 2011 and entitled “Systems and Methods for Low Bandwidth Consumption Online Content Editing;” which are incorporated herein by reference.
  • BACKGROUND
  • Generally, audio-video content editing on computer systems involves computationally intensive processes and utilizes larger than usual amounts of computing resources than other computer activities (e.g., word processing, browsing the Internet). This is particularly true when the content editing involves high definition/quality audio or video content, which are well notorious for being large in data size and process heavy during content encoding and decoding processes.
  • Unfortunately, due to these computing needs, high definition/quality audio-video content editing has typically been limited to powerful computing systems that tend to have the requisite computing resources to perform content editing quickly. If the same high definition/quality content editing were to be performed on a less powerful computing system, the likely result would be slower or poorer content editing performance, possibly to the point where the content editing becomes impractical or impossible. Consequently, less powerful computing systems, such as older computer systems, netbooks, and particular mobile devices, are either prevented from performing audio-video content editing, or relegated to performing audio-video content editing involving only proxy content.
  • Additionally, in certain situations, content editing projects involving collaboration between two or more users is desirable. Unfortunately, if such collaboration were to be facilitated using traditional high definition/quality audio-video content editing tools installed at individual computing systems, each computing system would require sufficient power to operate the tools in a proper and practical manner.
  • The foregoing example of trends and issues is intended to be illustrative and not exclusive. Other limitations of the art will become apparent to those of skill in the relevant art upon a reading of the specification and a study of the drawings.
  • SUMMARY OF VARIOUS EMBODIMENTS
  • According to various embodiments, systems and methods for collaborative online content editing are provided, where collaborative content product, comprising collaboratively-created content that can include original version (also referred to as “non-proxy version” or “non-proxy”) content items and/or derivative version (also referred to herein as “proxy version” or simply “proxy”) content items, is created and/or modified at an collaborative online content editor server according to the modifications submitted by two or more collaborative online content editor clients. Proxy version content items can include, for example, lower quality/definition versions, copyright limited versions, or watermarked versions content items.
  • In various embodiments, during collaborative editing of content, the systems or methods can prepare an intermediary collaborative content product (e.g., temporary copy), based on a version (e.g., latest version) of the collaborative content product residing on a collaborative online content editor server and being collaboratively developed by two or more collaborative online content editor clients. The intermediary collaborative content product can be prepared by the server on behalf of each collaborative online content editor client that desires to update or modify the collaborative content product. Once prepared, each collaborative online content editor client can modify the collaborative content product by applying modifications to its respective intermediary collaborative content product, and having the modifications to the intermediary collaborative content product applied to the collaborative content product. Depending on the implementation, the intermediary collaborative content product can be received by a client from a server, updated/modified at the client, and the updates/modifications to the intermediary collaborative content product then sent back to the server for application to the latest version of the collaborative content product residing at the server. Alternatively, the intermediary collaborative content can be stored at the server on behalf of the client, the client instructs the server to perform update/modification operations on the intermediary content product, and server eventually applies the updates/modifications to the intermediary collaborative content product to the latest version of the collaborative content product residing at the server.
  • For various implementations, when two or more updates/modifications are to be applied to the collaborative content product, the updates/modification can apply the modification serially in the order in which they are received by the server, based on the priority of the update/modification, or based on the priority of the client submitting the update/modification. Where a conflict exists between two or more updates/modifications to be applied to the collaborative content product (e.g., where two or more modifications are received at or near the same time), if the modifications do not overlap, some embodiments can apply both to the collaborative content product to resolve the conflict. In some embodiments, conflicts between two or more updates/modifications can be resolved by prompting one or more users (e.g., perhaps only those users submitting the updates/modifications) for a resolution.
  • Those skilled in the art will appreciate that when a update/modification is applied to a latest version of the collaborative content product, the application will generally result in a new, latest version of the collaborative content product being produced that incorporates the update/modification.
  • For some embodiments, the collaborative content product (and, as a result, the intermediary collaborative content product) can be a proxy version or comprise proxy version content items, thereby lowering the use of network bandwidth between a collaborative online content editor client and server and possibly lowering the processing time during operations (e.g., content modification options). When the collaborative content product is rendered, the resulting rendered collaborative content product can be considered a non-proxy version of the collaborative content product, where the render collaborative content product comprises non-proxy content items in the place of proxy content items.
  • In some embodiments, the collaborative online content editor server or client can utilize proxy content during creation and modification operations on the user-created content, and replaces such proxy content items with corresponding non-proxy content items possibly when the collaborative content product content is rendered, when the collaborative content product is published for consumption, or when a user has paid for the use of non-proxy content items.
  • By utilizing proxy versions of the user-created content in this manner, systems and methods of some embodiments can utilize less network bandwidth as the online content editor client commands the online content editor server to perform content-related operations on user-created content, and as the online content editor server provides proxy versions of the user-created content for content review and editing purposes. The use of proxy versions of the user-created content also allow the online content editor client to review and edit content without the need for additional computing resources to review user-created content comprising high quality/high definition content.
  • In addition to using proxy versions of content for online content editing, various embodiments can dynamically determine what and/or how data should be transferred should be transferred between a collaborative online content editor client and a collaborative online content editor server during collaborative content editing operations. Determination of what and how data should be transferred can depend on the type of editing operation invoked and/or the context in which the operation is invoked.
  • For instance, where a collaborative online content editor client applies a modification to its respective intermediary collaborative content product and the intermediary collaborative content product resides at the client, the client can be configured to send the modified intermediary collaborative content product to the server in parts (e.g., chunks or segments) so that the server, for example, can commence applying the modifications as the parts are received by the server (rather than waiting for the modified intermediary collaborative content arriving in its entirety). In another example, to ensure modifications applied one client can be shared contemporaneously with other collaborative clients, the client can configured to send modifications to the intermediary collaborative content as they are applied locally at the client rather than receiving in a delayed fashion, or the client can be configured to receive from the server updates as updates/modifications from other collaborative clients are applied to the collaborative content product residing on the server.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 depicts a diagram of an example of a collaborative online content editor system in accordance with some embodiments.
  • FIG. 2 depicts a diagram of an example of a client-server system for collaborative online content editing in accordance with some embodiments.
  • FIG. 3 depicts a flowchart of an example of a server-side method for collaborative online content editing in accordance with some embodiments.
  • FIG. 4 depicts a flowchart of an example of a client-side method for collaborative online content editing in accordance with some embodiments.
  • FIG. 5 depicts a flowchart of an example of an optimization method for collaborative online content editing in accordance with some embodiments.
  • FIG. 6 depicts an example of client-side user interface for collaborative online content editing in accordance with some embodiments.
  • FIG. 7 depicts an example of a system on which techniques described in this paper can be implemented.
  • DETAILED DESCRIPTION
  • The invention can be implemented in numerous ways, including as a process; an apparatus; a system; a composition of matter; a computer program product embodied on a computer readable storage medium; and/or a processor, such as a processor configured to execute instructions stored on and/or provided by a memory coupled to the processor. In this specification, these implementations, or any other form that the invention may take, may be referred to as techniques. In general, the order of the steps of disclosed processes may be altered within the scope of the invention. Unless stated otherwise, a component such as a processor or a memory described as being configured to perform a task may be implemented as a general component that is temporarily configured to perform the task at a given time or a specific component that is manufactured to perform the task. As used herein, the term ‘processor’ refers to one or more devices, circuits, and/or processing cores configured to process data, such as computer program instructions.
  • A detailed description of one or more embodiments of the invention is provided below along with accompanying figures that illustrate the principles of the invention. The invention is described in connection with such embodiments, but the invention is not limited to any embodiment. The scope of the invention is limited only by the claims and the invention encompasses numerous alternatives, modifications and equivalents. Numerous specific details are set forth in the following description in order to provide a thorough understanding of the invention. These details are provided for the purpose of example and the invention may be practiced according to the claims without some or all of these specific details. For the purpose of clarity, technical material that is known in the technical fields related to the invention has not been described in detail so that the invention is not unnecessarily obscured.
  • FIG. 1 depicts a diagram of an example of a collaborative online content editor system in accordance with some embodiments. The collaborative online content editor system 100 includes a collaborative online content editor server 102, a server-side datastore 104 coupled to the collaborative online content editor server 102, an collaborative online content editor client 106, a client-side datastore 108 coupled to the collaborative online content editor client 106, and a network 110 through which the online content editor client 106 communicates with the collaborative online content editor server 102. Through this arrangement, the online content editor client 106 can leverage the computing resources and power of the collaborative online content editor server 102 when creating or modifying collaborative content product, especially when the collaborative content product comprises high definition/quality graphics, image, audio, or video content. Often, the collaborative online content editor server 102 comprises computing resources that surpass those of the collaborative online content editor client 106, or computing resources that are better suited for content creation or modification than those of the collaborative online content editor client 106. Though FIG. 1 depicts a single online content editor client, the system 100 can include multiple online content editor clients that can communicate with the collaborative online content editor server 102.
  • “Collaboratively-created content” as used herein includes any content authored by one or more users using the content creation/editing tools described in this paper, or some other content editing tool. Collaboratively-created content can include content initially based on/started from a vendor provided or user-created content, and then subsequently modified by one or more collaborative users. The collaboratively-created content can be created to be multi-layered content, comprising multiple content layers of different content types. High definition/quality as used herein includes content having definition or quality that is higher than the average definition or quality for the similar content. For example, high definition/quality audio content can include audio clips having a high sampling rate (e.g., 44 KHz), has a higher bit-rate or effective bit-rate (e.g., 256 Kbs), or is encoded in a lossless audio encoding format.
  • As used in this paper, an engine includes a dedicated or shared processor and, typically, firmware or software modules that are executed by the processor. Depending upon implementation-specific or other considerations, an engine can be centralized or its functionality distributed. An engine can include special purpose hardware, firmware, or software embodied in a computer-readable medium for execution by the processor. As used in this paper, a computer-readable medium is intended to include all mediums that are statutory (e.g., in the United States, under 35 U.S.C. 101), and to specifically exclude all mediums that are non-statutory in nature to the extent that the exclusion is necessary for a claim that includes the computer-readable medium to be valid. Known statutory computer-readable mediums include hardware (e.g., registers, random access memory (RAM), non-volatile (NV) storage, to name a few), but may or may not be limited to hardware.
  • In the example of FIG. 1, the collaborative online content editor system 100 can enable a user at the collaborative online content editor client 106 located remotely on the network 110 to instruct the collaborative online content editor server 102 to create or modify a collaborative content product, containing collaboratively-created content, on behalf of the client 106. The created or modified collaboratively-created content can include proxy or non-proxy content items, but generally includes only proxy content items while the collaboratively-created content is being created and modified, and then non-proxy content items once the collaboratively-created content is rendered (e.g., for publication or sharing). The collaboratively-created content may be multi-layered content comprising a plurality of content layers, where each content layer comprises one or more content items from a content library, and the content items are high definition/quality content items or versions thereof.
  • To collaborate modification operations, on the collaborative content product, between two or more collaborative online content editor clients, the collaborative online content editor server 102 can prepare a copy of the collaborative content product (also referred to herein as an “intermediary collaborative content product”) for each collaborative online content editor client ( e.g., including the collaborative online content editor client 106) desiring to modify the collaborative content product. For some embodiments, the intermediary collaborative content product can also prepared as a previous of the latest version of the collaborative content product. Additionally, the intermediary collaborative content product can be a proxy version of the collaborative content product (e.g., to save network bandwidth or reduce processing time). Though the intermediary collaborative content product is generally of the latest version of the collaborative content product, various implementations may perform an intermediary collaborative content product to be based off a previous version of the collaborative content product.
  • Once prepared by the collaborative online content editor server 102, the intermediary collaborative content product can be maintained by and stored at the collaborative online content editor server 102 on behalf of each collaborative online content editor client, can be sent to the respective collaborative online content editor client, or both (e.g., where the intermediary collaborative content product for some collaborative online content editor clients is maintained at the server 102, and the intermediary collaborative content product for others is maintained at the respective clients). Then, when the collaborative online content editor client 106, for example, desires to apply a modification to the collaborative content product, it does so using its respective intermediary collaborative content product. In some implementations where the intermediary collaborative content product for the collaborative online content editor client 106 is maintained at the server 102, the client 106 can instruct the server 102 to perform the desired modifications the respective intermediary collaborative content product and, subsequently, to apply update the latest version of the collaborative content product with the modification to the respective intermediary collaborative content product. In some implementations where the intermediary collaborative content product for the collaborative online content editor client 106 is maintained at the client 106, the client 106 can directly modify its intermediary collaborative content product and, subsequently, send the modifications applied to its intermediary collaborative content product to the server 102 (which can update the latest version of the collaborative content product with the received modification).
  • With respect to some implementations, a modification applied to the collaborative content product (e.g., through use of the intermediary collaborative) by the collaborative online content editor client 106 can include, in addition to content layer modification operations, such operations as: adjusting copyright use limitations on some or all of the collaborative content product, locking some or all portions of the collaborative content product such that some or all of other collaborative online content editor clients are prevented from modifying the designated locked portions, adding watermarks to some or all of the collaborative content product, or tagging objects (e.g., people, places, or things) shown in the collaborative content product.
  • As the collaborative online content editor server 102 creates or modifies the collaborative content product, the server 102 can provide the online content editor client 106 with an updated intermediary collaborative content product based on the latest version of the collaborative content product (e.g., after the latest modification from an collaborative online content editor client has been applied). The online content editor client 106 can use the resulting intermediary collaborative content product (generally comprising having proxy content items) for review or editing purposes as the client continues to modify the collaborative content product.
  • As the collaborative online content editor server 102 creates and modifies the collaborative content product (e.g., in accordance with modifications being received from collaborative online content editor clients), one or more versions of the collaborative content product may be stored on the server-side datastore 104. When the online content editor client 106 receives new or updated versions of intermediary collaborative content product, the client 106 can store these on the client-side datastore 108 before the client 106 directly modifies the new/updated intermediary collaborative content product.
  • Those skilled in the art will appreciate that for various embodiments, when a content modification or content update is transferred between the collaborative online content editor server and the collaborative online content editor client 106, such content modification or update can comprise a list of modification instructions (e.g., including layer identification information, timeline information, content identification information), a copy of the modified content in its entirety, or a copy of the content portions that are modified/updated.
  • A datastore can be implemented, for example, as software embodied in a physical computer-readable medium on a general- or specific-purpose machine, in firmware, in hardware, in a combination thereof, or in an applicable known or convenient device or system. Datastores in this paper are intended to include any organization of data, including tables, comma-separated values (CSV) files, traditional databases (e.g., SQL), or other applicable known or convenient organizational formats. Datastore-associated components, such as database interfaces, can be considered “part of” a datastore, part of some other system component, or a combination thereof, though the physical location and other characteristics of datastore-associated components is not critical for an understanding of the techniques described in this paper.
  • Datastores can include data structures. As used in this paper, a data structure is associated with a particular way of storing and organizing data in a computer so that it can be used efficiently within a given context. Data structures are generally based on the ability of a computer to fetch and store data at any place in its memory, specified by an address, a bit string that can be itself stored in memory and manipulated by the program. Thus some data structures are based on computing the addresses of data items with arithmetic operations; while other data structures are based on storing addresses of data items within the structure itself. Many data structures use both principles, sometimes combined in non-trivial ways. The implementation of a data structure usually entails writing a set of procedures that create and manipulate instances of that structure.
  • Eventually, at the instruction of the online content editor client 106, the collaborative online content editor server 102 can publish a finalized version of the collaborative content product for download or sharing with others. During publication, the collaborative online content editor server 102 can render the latest version of the collaborative control product (as it resides on the server 102) such that proxy content items contained in the collaborative control product are replaced with non-proxy content item. For example, during the rendering, the server 102 can replace low definition/quality content items in the collaborative content product with high-quality definition/high quality counterpart or some version thereof. For some embodiments, the collaborative online content editor server 102 will replace low definition/quality content with corresponding high-quality definition/high quality content based on payment by a user. Absent payment, the user can be prevented from publishing the collaborative content product, or the user is left with publishing collaborative content product using proxy content items. For example, a user may have to make payment before the collaborative content product is published with non-proxy content items (e.g., high definition/quality content items). The resulting rendered collaborative content product can then be downloaded or shared with others.
  • FIG. 2 depicts a diagram of an example of a system for collaborative online content editing in accordance with some embodiments. The system 200 for collaborative online content editing includes a collaborative online content editor server 202, an online content editor client 206, and a network 204 facilitating communication between the server 202 and the client 206. As described herein, the system 200 can enable a user at the online content editor client 206 located remotely on the network 204 to instruct the collaborative online content editor server 202 to create or modify collaborative content product comprising collaboratively-created content possibly including proxy or non-proxy content items. As discussed herein, for some embodiments, the online content editor client 206 can instruct the collaborative online content editor server 202 through a collaborative online content editing client engine 226 located at the client 206. Subsequently, the collaborative online content editor server 202 can provide, and the online content editor client 206 can receive, a version of the created or modified collaborative content product, such as an intermediary collaborative content product, generally containing proxy content items.
  • 100381 In the example of FIG. 2, the collaborative online content editor server 202 comprises a collaborative online content editing server engine 208, a content library/market place engine 210, a content library store 212, an adjustable-version layer rendering engine 214, a content publication engine 216, a published version content datastore 218, and a content payment engine 220. The collaborative online content editor server 202 further comprises a content licensing management engine 222 and a cloud management engine 224.
  • In the example of FIG. 2, the collaborative online content editing server engine 208 creates or modifies user-created content at the collaborative online content editor server 202 on behalf of the online content editor client 206. In certain embodiments, the collaborative online content editing server engine 208 can establish a connection with the online content editor client 206 over the network 204, can receive commands relating to content creation or modification over a network connection, can perform content creation or modification operations in accordance with commands received from the online content editor client 206, and can transmit to the online content editor client 206 a version of the created or modified collaborative content product (e.g., intermediary collaborative content product). As noted herein, the created or modified user-created content may be multi-layered content comprising one or more content layers, each content layer comprising one or more content items from a content library. The content items utilized can be original content items or proxy versions thereof.
  • In order to perform various operations, the collaborative online content editing server engine 208 is coupled to the content library/market place engine 210, the adjustable-version layer rendering engine 214, the content publication engine 216, and the content payment engine 220. As discussed in detail below, the collaborative online content editing server engine 208 can access proxy and non-proxy content items and information relating to such content items through the content library/market place engine 210, can render one or more (content) layers of the collaborative content product at an adjusted quality or version (e.g., copyright-limited use version content items, for-cost content items, free content items, watermarked content items, high-quality content items, or lower quality content items) using the adjustable-version layer rendering engine 214, and can use the content publication engine 216 to publish the collaborative content product at an adjusted quality or version for download or sharing purposes. The collaborative online content editing server engine 208 can receive pre-payment or post-payment through the content payment engine 220 to permit access to for-purchase content items or to publish the user-defined content items using for-purchase content (e.g., content of varying quality or versions, such as high definition/quality content items).
  • In the example of FIG. 2, the content library/market place engine 210 is coupled to the content library datastore 212 and manages the content items stored therein. For some embodiments, the content library/market place engine 210 can be responsible for adding, deleting and modifying content items stored on the content library datastore 212, for retrieving a listing of content items stored on the content library datastore 212, for providing details regarding content items stored on the content library datastore 212, and for providing to other engines content items from the content library. For example, the content library/market place engine 210 can provide content items to the collaborative online content editing server engine 208 as a collaborative user reviews and selects content items to be added to the collaborative content product. In another example, the content library/market place engine 210 can provide content items to the adjustable-version layer rendering engine 214 as the engine 214 renders one or more layers of the collaborative content product.
  • The content library/market place engine 210 can also provide a marketplace where user-posted market items, such collaboratively-created content items (e.g., collaborative content product), individual-created, content items, and user uploaded content items, can be marketed to others (e.g., users) having access to the marketplace. The content library/market place engine 210 can be coupled to the content payment engine 210 to facilitate purchases through the marketplace. When a posted market items sells, the content library/market place engine 210 can be configured to credit the user/users associated with the market item with some or all of the funds from the purchase. Depending on the implementation, a user can charge varying prices for vary qualities or versions of a market item. The content library/market place engine 210 can also be configured to allow visitors of the marketplace to rent market items.
  • In the example of FIG. 2, the content library datastore 212 stores content items that can be used in the collaborative content product. The content items of the content library datastore 212 can include, without limitation, audio content, video content, image content, graphics contents, and user-provided content. In some embodiments, the user-provided content can include the collaborative content product that was created or modified using the collaborative online content editor server 202 and subsequently added to the content library datastore 202, and user content uploaded from the online content editor client 206 to the collaborative online content editor server 202. The content items of the content library datastore 212 can also include, without limitation, free content that can be used in collaborative content product without need of payment, for-purchase content that can be reviewed only after user payment, content that can be added to collaborative content product only after user payment, and content that can be used in the publication of collaborative content product only after user payment.
  • In some embodiments, the high definition/quality content items can be added to, removed from, and adjusted within the user-created item without need of payment. When the user requests publication of the collaborative content product, the collaborative online content editor server 202 can request payment before publication of the collaborative content product is allowed. Alternatively, a payment can be requested in order for the collaborative content product to be published using the high definition/quality content rather a proxy version of the high definition/quality content.
  • In some embodiments, the collaborative online content editor server 202 can use proxy versions of the content items when performing creation and modification operations on the collaborative content product (e.g., through the intermediary collaborative content product, where the use of the proxy version continues until publication of the collaborative content product. In some embodiments, the content library/market place engine 210 can provide the server 202 with the proxy version of the content item utilized during creation and modification operations. Depending on the embodiment, the content library/market place engine 210 can generate the proxy version as it is requested by various engines (e.g., the adjustable-version layer rendering engine 214, or the collaborative online content editing server engine 208), or the content library/market place engine 210 can provide the proxy version as stored on the content library datastore 212. As described herein, the proxy version of the high definition/quality content can also be utilized by the collaborative online content editing server engine 208 when transmitting previews of the content to the online content editor client 206 or when transmitting an intermediary collaborative content product to the online content editor client 206.
  • The content stored on the content library datastore 212 (hereafter, also referred to as “content items” or “library content items”) can have various associated properties (i.e., content item properties) that provide details regarding aspects of the content items. In certain embodiments, the content item properties can comprise such information as content type, content duration, content usage permissions (e.g., licensing rights), content cost parameters (e.g., free to use until the collaborative content product is published, or is published using high definition/quality content), content data size, content source (e.g., user provided, or third party author), or content creation or modification date. Through collaborative online content editing server engine 208, a user can review listings of content items in the content library datastore 212 (e.g., available or unavailable content), review details regarding content items in the content library (e.g., price, usage parameters, content type, duration where applicable, or content definition/quality), manage content items in the content library datastore 212 (e.g., add, delete, or modify content items in the content library), and add content items from the content library datastore 212 to collaborative content product.
  • In the example of FIG. 2, the adjustable-version layer rendering engine 214 renders one or more layers of the collaborative content product using content items provided by the content library/market place engine 210 from the content library datastore 212. The content items provided to the adjustable-version layer rendering engine 214 can be an original version of the content item or a lesser definition/quality version of the same. As the adjustable-version layer rendering engine 214 renders layers of the collaborative content product, the collaborative online content editing server engine 208 can specify to the adjustable-version layer rendering engine 214 the desired quality or version for the resulting layers.
  • For instance, the collaborative online content editing server engine 208 can specify that the layers of the collaborative content product, comprising high definition/quality content items, be rendered using a low definition/quality version of the high definition/quality content items. Thereafter, the collaborative content product comprising layers of low definition/quality content can be provided to the online content editor client 206 by the collaborative online content editing server engine 208 for preview or editing purposes, as an intermediary collaborative content product, or can be provided to the content publication engine 216 (e.g., for free publication of collaborative content product comprising proxy content items). In some embodiments, the collaborative online content editing server engine 208 can specify that the layers of the collaborative content product, comprising high definition/quality content items, be rendered using the high definition/quality content items, but only at the time of publication through the content publication engine 216, or only after the user submits payment through the content payment engine 220.
  • In the example of FIG. 2, the content publication engine 216 receives collaborative content product rendered by the adjustable-version layer rendering engine 214 and publishes the collaborative content product. The collaborative content product can be published such that the collaborative content product can be downloaded and saved by the user or others as a stand-alone content file (e.g., MPEG or AVI file), or such that collaborative content product can be shared to other over the network (e.g., posted to a website so that others can play/view the collaborative content product). Once published, the collaborative content product can be stored on the published version content datastore 218. For some embodiments, the published collaborative content product can be added to the content library datastore 212 for reuse in other collaborative content product. Depending on the embodiment, the published collaborative content product can be added to the content library datastore 212 as for-purchase content (for example, via the content library/market place engine 210, with the sales proceeds being split between amongst the user and the online content editor service provider), or added to the content library datastore 212 as free content available to the public. The user can also define content usage parameters (i.e., licensing rights) for their collaborative content product when the collaborative content product is added to the content library datastore 212.
  • In the example of FIG. 2, the content payment engine 220 facilitates user payment to the collaborative online content editor server 202, and can determine the level of functionality provided by the collaborative online content editor server 202, or the level of quality for or the version of content items within the collaborative content product. For example, once payment has been received by the content payment engine 220 and the content payment engine 220 has informed the collaborative online content editing server engine 208 of such payment, the collaborative online content editing server engine 208 can allow the user to access certain content items in the content library datastore 212 (e.g., for-purchase content), can allow the user to perform certain content creation or modification operations (e.g., splitting a content layer), or can allow the user to publish the collaborative content product with high definition/quality content. In some embodiments, the quality or version of the content item within the collaborative content product can be variable and determined based on the amount payment made by the user. The content payment engine 220 can maintain an account, where the user can maintain a positive balance from which funds are deducted as payments are made to the collaborative online content editor server 202, or where charges are incurred to the account and the user submits payment some time after (e.g., a credit system). In various embodiments, the collaborative online content editing server engine 208 can inform the content payment engine 220 of the costs accrued by the user as he or she uses content items from the content library datastore 212 in the collaborative content product, or as certain functionality of the collaborative online content editing server engine 208 is utilized. As noted herein, the pricing for content items can be stored with the content items in the content library datastore 212.
  • In the example of FIG. 2, the content licensing management engine 222 can determine the licensing rights and permissions of content items stored on the content library datastore 212, and inform the collaborative online content editing server engine 208 of such rights and permissions. The collaborative online content editing server engine 208, in turn, can adaptively control its own functionality in accordance with the licensing rights and permissions of the content item as the content item is utilized in the collaborative content product. For instance, where the content licensing rights and permissions of a certain content item restricted the content item from being split during creation or modification of the collaborative content product (i.e., the content item has to remain intact in the collaborative content product), the collaborative online content editing server engine 208 can automatically disable a split content layer command with respect to that certain content item. In another example, the licensing rights and permissions can indicate whether certain content item can be utilized in collaboratively-created content, or has limitations on how many collaborative users can utilize the content item. Other content licensing rights and permissions can include publication limitations on the collaborative content product, or limitations on use of content items based on the existing content of the collaborative content product. The content licensing management engine 222 cam inform the collaborative online content editing server engine 208 of the cost of certain content items based on their use in accordance with the licensing rights and permissions. For some embodiments, the authors of the content items can configure the licensing rights and permissions for their content items, which is then stored on the content library datastore 212.
  • In some embodiments, where the collaborative online content editor server 202 is implemented using virtual or cloud-based computing resources, such virtual or cloud-based computer resources can be managed through the cloud management engine 224. The cloud management engine 224 can delegate various content-related operations and sub-operations of the server 202 to virtual or cloud-based computer resources, and manage the execution of the operations. Depending on the embodiment, the cloud management engine 224 can facilitate management of the virtual or cloud-based computer resources through an application program interface (API) that provides management access and control to the virtual or cloud-based infrastructure providing the computing resources for the collaborative online content editor server 202.
  • In the example of FIG. 2, the online content editor client 206 comprises a remote online content editor user interface, as part of the collaborative online content editing client engine 226, and a local-version content datastore 228 coupled to the collaborative online content editing client engine 226. The collaborative online content editing client engine 226 facilitates the creation or modification of collaborative content product at the collaborative online content editor server 202 by the online content editor client 206. As noted herein, the collaborative online content editing client engine 226 can establish a connection with the collaborative online content editing server engine 208 over the network 204, and then issue content creation and modification commands to the collaborative online content editing server engine 208. In accordance with the issued commands, the collaborative online content editing server engine 208 can perform the content creation or modification operations at the collaborative online content editor server 202, and can return to the remote online content editor user interface engine 226 a proxy version of the resulting collaborative content product.
  • Alternatively, the online content editor client 206 can modify content by receiving an intermediary collaborative content product based on the latest version of the collaborative content product, modifying the intermediary collaborative content product, and then uploading the modifications to the intermediary collaborative content product to the collaborative online content editor server 202 so that the edits can be consistently applied to collaborative content product residing on the server 202. When the intermediary collaborative content product is uploaded from the online content editor client 206 to the collaborative online content editor server 202 to facilitate modification of the collaborative content product, various implementations can utilize one or more methods for optimizing the network bandwidth usage. More regarding such optimization methods are described herein in association with FIG. 5.
  • Depending on the embodiment, the collaborative online content editor server 202 can provide the proxy version of collaborative content product (e.g., intermediary collaborative content product) as a content stream that is buffered and played through the remote online content editor user interface engine 226, or as a content file that is playable by the remote online content editor user interface engine 226 once the content file has been downloaded to the online content editor client 206 and stored to the local-version content datastore 228.
  • FIG. 3 depicts a flowchart 300 of an example of a server-side method for collaborative online content editing in accordance with some embodiments. In some implementations, the modules of the flowchart 300 and other flowcharts described in this paper are rendered to a permutation of the illustrated order of modules or reorganized for parallel execution. In the example of FIG. 3, the flowchart 300 starts at module 302 with receiving at a server a first request by a first collaborative online content editor client to modify a collaborative content product comprising multi-layered collaboratively-created content. The flowchart 300 continues to module 304 with providing, in response to the first request, the first collaborative online content editor client with a first intermediary collaborative content product based on a latest version of the collaborative content product. When providing the first intermediary collaborative content product, the module 304 may cause the first intermediary collaborative content product to be maintained and stored at the server or, alternatively, cause the first intermediary collaborative content product to be sent to the client where will be maintained and stored.
  • In the example of FIG. 3, the flowchart 300 continues to module 306 with receiving at the server a second request by a second collaborative online content editor client to modify the collaborative content product. The flowchart 300 continues to module 308 with providing, in response to the second request, the second collaborative online content editor client with a second intermediary collaborative content product based on a latest version of the collaborative content product. When providing the second intermediary collaborative content product, the module 304 may cause the second intermediary collaborative content product to be maintained and stored at the server or, alternatively, cause the second intermediary collaborative content product to be sent to the client where will be maintained and stored.
  • It should be understood that the order in which the server receives the first request and the second request, and the order in which the server provides the first intermediary collaborative content product and the second intermediary collaborative content product can be arbitrary.
  • In the example of FIG. 3, the flowchart 300 continues to module 310 with providing a first version of a library content item for the first collaborative online content editor client to use as the first collaborative content editor client modifies the first intermediary collaborative content product or for the second collaborative online content editor client to use as the second collaborative content editor client modifies the second intermediary collaborative content product.
  • Depending on the embodiments, the first version can comprise a lower quality version of the library content item while the second version comprises a higher quality version of the library content item, the first version can comprise a derivative version of the library content item while the second version comprises an original version of the library content item, the first version can comprise a watermarked version of the library content item while the second version comprises a non-watermarked version of the library content, and the first version can comprise a first copyright right limited version of the library content item while the second version comprises a second copyright limited version of the library content. As noted herein, the library content item can comprise an image, an audio clip, a video clip, user-provided content, third party-provided content, payment-free content, or for-purchase content.
  • In the example of FIG. 3, the flowchart 300 continues to module 312 with receiving a first modification applied to the first intermediary collaborative content product by the first collaborative online content editor client. The flowchart 300 continues to module 314 with receiving a second modification applied to the second intermediary collaborative content product the second collaborative online content editor client. The first and/or second modification (applied to the respective intermediary collaborative content products) may comprise of a list of modification instructions (e.g., including layer information, content information, and/or timeline information), a set of modified portions of the respective intermediary collaborative content product, or an entire intermediary collaborative content product as modified. As described herein, where a given intermediary collaborative content product resides at the server, receiving a modification applied to the given intermediary collaborative content product can be an internal process of the server where the server obtains the modification from the given intermediary collaborative content product. Where the given intermediary collaborative content product resides at the client, receiving a modification applied to the given intermediary collaborative content product can comprise receiving the modification at the server from the client.
  • In the example of FIG. 3, the flowchart 300 continues to module 316 with modifying the collaborative content product in accordance with the first modification and the second modification. Depending on the embodiment, modifying the collaborative content product in accordance with the first modification and the second modification can comprises serially modifying the collaborative content product in accordance with the with the first modification and then modifying the collaborative content product in accordance with the second modification. This may occur when, for example, the first modification is received before the second modification is received by the collaborative online content editing server engine. This may also occur when, for example, the first modification is associated with a first collaborative user (e.g., administrative user, or content project lead), the second modification is associated with a second collaborative user (e.g., regular user), and the first collaborative user has a higher user credential than the second collaborative user.
  • As noted herein, modifying the collaborative content product in accordance with the first modification can comprise entirely replacing the collaborative content product with the first intermediary collaborative content product as modified. Alternatively, modifying the collaborative content product in accordance with the first modification can comprise applying a difference between the collaborative content product and the first intermediary collaborative content product as modified to the collaborative content product. How the modification is performed can depend on user preferences, administrative preferences, or predetermined settings of the collaborative system. It will be well appreciated by those skilled in the art that the collaborative content product can, in some embodiments, be modified in accordance with the second modification in a similar manner.
  • In the example of FIG. 3, the flowchart 300 continues to step 318 with rendering the collaborative content product as rendered collaborative content product using a second version of the library content item in place of the first version of the library content item.
  • FIG. 4 depicts a flowchart 400 of an example of a client-side method for collaborative online content editing in accordance with some embodiments. In some implementations, the modules of the flowchart 400 and other flowcharts described in this paper are rendered to a permutation of the illustrated order of modules or reorganized for parallel execution. In the example of FIG. 4, the flowchart 400 starts at module 402 with initiating at a client a collaborative online editor instance.
  • In the example of FIG. 4, the flowchart 400 continues to module 404 with the collaborative online editor instance displaying a listing of library content items available for use from a content library datastore at a server.
  • In the example of FIG. 4, the flowchart 400 continues to module 406 with the collaborative online editor instance sending, to the server, a first request to modify a collaborative content product comprising multi-layered collaboratively-created content, thereby resulting in the preparation of an intermediary collaborative content product based on a latest version of the collaborative content product. As noted herein, the intermediary collaborative content product once prepared by the server, may reside at the server or be sent to the client for maintenance and storage.
  • In the example of FIG. 4, the flowchart 400 continues to module 408 with modifying the collaborative content product through the intermediary collaborative content product using a first version of a library content item from the content library datastore. As described herein, where the intermediary collaborative content product resides at the server, the client can instruct the server to perform the modification operations to the intermediary collaborative content product. Where the intermediary collaborative content product resides at the client, the client can directly perform the modification operations on the intermediary collaborative content product, and then transmit the modifications performed on the intermediary content product to the server.
  • Eventually the modification applied to the intermediary content product is consistently applied to the collaborative content product. As such, the flowchart 400 continues to module 410 with sending, to the server, a second request to the server to modify the collaborative content product in accordance with the intermediary collaborative content product.
  • In the example of FIG. 4, the flowchart 400 continues to module 412 with sending, to the server, a third request to the server to render the collaborative content product as a rendered collaborative content product, where the rendering uses a second version of the library content item in place of the first version.
  • In the example of FIG. 4, the flowchart 400 continues to module 414 with requesting publication of the rendered collaborative content product for download or sharing with others.
  • FIG. 5 depicts a flowchart of an example of an optimization method for collaborative online content editing in accordance with some embodiments. Use of the optimization method can, for some embodiments, allow for efficient use of network bandwidth between an online low-bandwidth consumption client and an online low-bandwidth consumption server and/or allow for less processing time during content modification operations. Depending on the embodiment, the optimization method can be implemented at a collaborative online content editor client, at a collaborative online content editor server, or both. Once implemented, the optimization method can determine how and when data transfer between the collaborative online content editor client and the collaborative online content editor server can be performed in a manner which reduces the amount of data being transferred. Generally, the optimization method makes the transfer determination based on the type of action instructed to be performed, based on the context in which action is instructed to be performed, preferences set at the online low-bandwidth consumption client or the online low-bandwidth consumption server, or some combination thereof.
  • Those skilled in the art will appreciate that depending on the implementation, the optimization method can be implemented for content transfer from the online low-bandwidth consumption client to the collaborative online content editor server, can be implemented for content transfer from the collaborative online content editor server to the collaborative online content editor client, or both. Additionally, though the optimization methods described herein are primarily described in association with content transfers, those skilled in the art will appreciate that the optimization methods can be utilized for other information being transferred between collaborative online content editor client and the collaborative online content editor server including, for example, timeline information. Furthermore, in some implementations, the modules of the flowchart 500 and other flowcharts described in this paper are reordered to a permutation of the illustrated order of modules or reorganized for parallel execution.
  • In the example of FIG. 5, the flowchart 500. starts at module 502 with initiating at a client a collaborative online editor instance. Once initiated, a user at the client can issue commands, such as content creation or modification commands relating to the collaborative content product, through the collaborative online content editor instance to the server. In response, the collaborative online content editor instance can instruct the server to perform operations on the collaborative content product residing at the server via an intermediary collaborative content product, which may be residing at the server or residing at the client. As noted herein, the client can be implemented by any known or convenient computing device including, for example, mobile computing devices, netbooks, and desktop. Generally, the server possesses computing resources in excess of those of the client, or the server possesses computing resources better suited for content creation or modification than those of the client.
  • In the example of FIG. 5, the flowchart 500 continues to module 504, instructing the collaborative content online content editor instance to perform an action with respect to the intermediary collaborative content product, which is based on the collaborative content product. Examples of actions can include modification of a layer in the intermediary collaborative content product, changing attributes of the intermediary collaborative content product, adding, removing content, or adjusting content items in the intermediary collaborative content product, or updating the collaborative content product with the current version of the intermediary collaborative content product.
  • The context in which the instruction to perform the action is made, or the action to be performed can have an influence on how the method optimizes data transfers between the client and server. Examples of context aspects that can be considered include whether the instruction is requested in a collaborative setting (e.g., where two or more collaborative online content online editor clients are modifying a single collaborative content product), content editor user preferences (e.g., early start on rendering processes), and whether one or more other instructions have been requested concurrently with the instruction requested at module 504.
  • In the example of FIG. 5, the flowchart 500 continues to module 506 with determining based on the action instructed to be performed or the context of the instruction, how the action or a result of the action is transmitted from the client to the server. In one example, where a content editor user indicates a preference (e.g., through user settings) for server processes (e.g., rendering or conversion) to be performed on content as early as possible (e.g., as content data begins to arrive at the server from the client), the module 506 can determine that any upload of intermediary collaborative content product from the client to the server should be transferred in parts (e.g., content data chunks or segments), thereby enabling the server to commence processing of the content as the parts are received (rather than waiting for the intermediary collaborative content product in its entirety). By transferring data from the client to the server in parts, the client can cause the server to pause or stop content processing mid-performance (e.g., collaborative content product update process when a mistake is discovered in the modified intermediary collaborative content product), thereby potentially saving time and resources.
  • In yet another example, two or more collaborative online content editor users are collaboratively performing content edits to the same collaborative content product, where each content editor user is respectively editing his or her respective intermediary collaborative content product residing locally at the content editor user's client. In such an instance, the module 506 can determine that portions of the intermediary collaborative content product residing at the respective clients are to be uploaded to the server as the portions are modified by the individual content editor users. In doing so, various implementation can try to ensure that the latest changes applied by individual collaborative users to the user-created content can be shared amongst other collaborative users.
  • In the example of FIG. 5, the flowchart 500 continues to step 508 with transmitting the action or the result of the action from the client to the server according to the determination.
  • FIG. 6 depicts an example of client-side user interface for collaborative online content editing in accordance with some embodiments. With respect to some implementations, the client-side user interface of FIG. 6 can control the content creation and editing operations performed on a collaborative content being developed collaboratively by two or more users. In particular, the client-side user interface can control a collaborative online content editing client engine operating at a client, a collaborative online content editing server engine operation at a server, or both to facilitate the creation and editing operations on the collaborative content. As described herein, for various implementations, the client-side user interface can cause various engines to operate such that an intermediary collaborative content product is prepared by the server and received by a client from the server, the intermediary collaborative content product is updated/modified at the client, and the updated/modified intermediary collaborative content product is sent back to the server (e.g., in order to update the latest version of the collaborative content product residing at the server). Additionally or alternatively, the client-side user interface can cause various engines to operate such that an intermediary collaborative content prepared and stored at a server on behalf of the client, the client instructs the server to perform update/modification operations on the intermediary content product, and the client instructs the server to update/modify the collaborative content product (e.g., possibly the latest version of the collaborative content product) using the updated/modified intermediary collaborative content product at the server. The behavior and/or results of the client-side user interface based on user input can be based on individual user preferences, administrative preferences, predetermined settings, or some combination thereof.
  • The client-side user interface can be configured such that a user can request performance of creation and modification operations on the collaborative content product being collaboratively developed. The client-side user interface can be transferred from a server to a client as a module that can then be operated on the client. For example, the client-side user interface can comprise a client-side applet or script that is downloaded to the client from the server and then operated at the client (e.g., through a web browser). Additionally, the client-side user interface can operate through a plug-in that is installed in a web browser. User input to the client-side user interface can cause a command relating to online content editing, such as a content layer edit command or a content player/viewer command, to be performed at the client or to be transmitted from the client to the server.
  • The client-side user interface 600 includes multiple controls and other features that enable a user at a client to control the creation or modification of collaborative content products. In the example of FIG. 6, the client-side user interface 600 includes a tabbed menu bar 602, a content listing 604, a content player/viewer 606, content player/viewer controls 608, content layer editor controls 610, a content timeline indicator 612, and a content layering interface 614.
  • In the example of FIG. 6, the client-side user interface 600 includes the tabbed menu bar 602 that allows the user to select between different content types (e.g., video, audio, or images) as they search for content available to them from a content library. Here, the tabbed menu bar 602 allows the user to select between reviewing “Videos,” “Sounds,” “Graphics” (e.g., text or images), or personal (media) content (i.e., “My media files”) that is available from the content library. The personal content can be that which the user uploaded to their account on the server, that which the user already created on the server, or both. Those of ordinary skill in the art would appreciate that in some embodiments, the tabbed menu bar 602 can include additional content types (e.g., “3D Video”) from which the user can select as they search for content available to them from the content library.
  • The tabbed menu bar 602 also enables the user to select “Transitions,” which can be predefined (e.g., vendor provided), user-created, or collaboratively-created content transitions inserted between two content items in a layer of collaboratively-created content. For instance, with respect to video content (i.e., video clips), available transitions can include a left-to-right video transition which once inserted between a first video clip and a second video clip, cause the first video clip transition to the second video clip in a left-to-right manner. Likewise, with respect to audio content (i.e., audio clips), available transitions can include a right-to-left transition which once inserted between a first audio clip and a second audio clip, causes the first audio clip to fade into to the second audio clip starting from the right audio channel and ending at the left audio channel.
  • As the user selects between the content types in the tabbed menu bar 602, a listing of available content matching the selected content type can be displayed to the user accordingly. In the example of FIG. 6, the content listing 604 displays a list of content available from the content library. For some embodiments, the content listing 604 can list the available content with a thumbnail image configured to provide the user with a preview of the content. For example, for video content, the thumbnail image may be a moving image that provided a brief preview of the video content. With respect to image content, the thumbnail preview may be a smaller sized version (i.e., lower resolution version) of the image content. In certain embodiments, a content item listed in content listing 606 can be further previewed in a content player/viewer 606, configured to play audio or video or display larger resolution images. The content listing 604 can also provide details regarding the listed content including, without limitation, a source of the content, a date of creation for the content, a data size of the content, a time duration of the content (where applicable), licensing information relating to the content, and cost of using the content.
  • In the example of FIG. 6, a user can utilize the player/viewer 606 to preview content items from the content library listed in the content listing 604. The content player/viewer 606 can also provide a preview of collaboratively-created content being created through the client-side user interface 600. In one example, the user can create collaboratively-created content, containing one or more video and audio content items from the content library, and then preview that collaboratively-created content through the content player/viewer 606. Depending on the embodiment, the content being previewed can be from a latest version of the collaborative content product residing at the server, a rendered version of the collaborative content product residing at the server, a latest version of the intermediary collaborative content product residing at the server for the client, or a latest version of the intermediary collaborative content product locally residing at the client. Where content being played or shown is provided from the server, such content can be streamed from the server to the client as such the content is played or shown through the content player/viewer 606. In some embodiments, where content being played or shown is provided from the server, such content can be first downloaded to the client before it is played or shown through the content player/viewer 606.
  • As described herein, the content library items or the collaborative content product shown through the content player/viewer 606 can be of a proxy version rather than the actual version of the content residing on the server or the content that is eventually rendered by the server. Because the proxy content requires less bandwidth when being transferred from the server to a client, some embodiments can lower the data bandwidth consumption between the client and server as content is created, edited, rendered or previewed through the client-side user interface 600, and can possibly decrease processing time at the client and/or the server during creation, modification, rendering, or preview operations.
  • In the example of FIG. 6, a user controls the operations of the content player/viewer 606 using the content player/viewer controls 608. The content player/viewer controls 608 can include control commands common to various players, such as previous track, next track, fast-backward, fast-forward, play, pause, and stop. For some embodiments, a user input to the content player/viewer controls 608 can result in a content player/viewer command instruction being transmitted from the client to the server.
  • In the example of FIG. 6, the content layer editor control 610 comprises controls that enable the user to edit content layers of collaborative content product. Through the content layer editor control 610, a user can implement edits to a content layer of the collaborative content product residing on the server. The content layer editor control 610 can include edit controls that enable a user to add, delete or modify one or more content layers of collaborative content product. Example edit controls include, without limitation, adding a content layer, deleting a content layer, splitting a single content layer into two or more content layers, and editing properties of a content layer.
  • In the example of FIG. 6, the content timeline indicator 612 visually assists a user in determining a temporal position of a content layer in collaborative content product or a content item in the content layer. For instance, the content timeline indicator 612 can comprise a time marker that indicates a temporal start point or a temporal end point for a content layer or a content item in the content layer. In some embodiments, the length of the content timeline indicator 612 can adapt according to the overall duration of the collaboratively-created creation, or can be adjusted according to a user-setting.
  • In the example of FIG. 6, the content layering interface 614 enables a user to access and modify content layers of the collaborative content product. The content layering interface 614 can comprise a stack of content layer slots, where each content layer slot graphically presents all the content layers of a particular content type associated to the collaborative content product. Example content types include, without limitation, graphical content (e.g., “Graphics”), video content (e.g., “Video”), image content (e.g., “Image”), and audio content (e.g., “Audio effects”). The content layering interface 614 can also comprise image, video or audio effects, which can be applied to the various content types.
  • In some embodiments, the user can add content to a new or existing content layer of the collaborative content product by “dragging-and-dropping” content items from the content listing 604 into the content layering interface 614. Further, in various embodiments, the user can graphically modify a temporal position or duration of a content layer or a content item within the content layer. For instance, the user can drag-and-drop the graphically represented start or end of a content item to adjust the duration of the content item (thereby the temporal start of temporal end of the content item) in the collaborative content product.
  • FIG. 7 depicts an example of a system on which techniques described in this paper can be implemented. The computer system 700 may be a conventional computer system that can be used as a client computer system, such as a wireless client or a workstation, or a server computer system. The computer system 700 includes a computer 702, I/O devices 704, and a display device 706. The computer 702 includes a processor 708, a communications interface 710, memory 712, display controller 714, non-volatile storage 716, and I/O controller 718. The computer 702 may be coupled to or include the I/O devices 704 and display device 706.
  • The computer 702 interfaces to external systems through the communications interface 710, which may include a modem or network interface. It will be appreciated that the communications interface 710 can be considered to be part of the computer system 700 or a part of the computer 702. The communications interface 710 can be an analog modem, ISDN modem, cable modem, token ring interface, satellite transmission interface (e.g. “direct PC”), or other interfaces for coupling a computer system to other computer systems.
  • The processor 708 may be, for example, a conventional microprocessor such as an Intel Pentium microprocessor or Motorola power PC microprocessor. The memory 712 is coupled to the processor 708 by a bus 770. The memory 712 can be Dynamic Random Access Memory (DRAM) and can also include Static RAM (SRAM). The bus 770 couples the processor 708 to the memory 712, also to the non-volatile storage 716, to the display controller 714, and to the I/O controller 718.
  • The I/O devices 704 can include a keyboard, disk drives, printers, a scanner, and other input and output devices, including a mouse or other pointing device. The display controller 714 may control in the conventional manner a display on the display device 706, which can be, for example, a cathode ray tube (CRT) or liquid crystal display (LCD). The display controller 714 and the I/O controller 718 can be implemented with conventional well known technology.
  • The non-volatile storage 716 is often a magnetic hard disk, an optical disk, or another form of storage for large amounts of data. Some of this data is often written, by a direct memory access process, into memory 712 during execution of software in the computer 702. One of skill in the art will immediately recognize that the terms “machine-readable medium” or “computer-readable medium” includes any type of storage device that is accessible by the processor 708 and also encompasses a carrier wave that encodes a data signal.
  • The computer system 700 is one example of many possible computer systems which have different architectures. For example, personal computers based on an Intel microprocessor often have multiple buses, one of which can be an I/O bus for the peripherals and one that directly connects the processor 708 and the memory 712 (often referred to as a memory bus). The buses are connected together through bridge components that perform any necessary translation due to differing bus protocols.
  • Network computers are another type of computer system that can be used in conjunction with the teachings provided herein. Network computers do not usually include a hard disk or other mass storage, and the executable programs are loaded from a network connection into the memory 712 for execution by the processor 708. A Web TV system, which is known in the art, is also considered to be a computer system, but it may lack some of the features shown in FIG. 7, such as certain input or output devices. A typical computer system will usually include at least a processor, memory, and a bus coupling the memory to the processor.
  • Some portions of the detailed description are presented in terms of algorithms and symbolic representations of operations on data bits within a computer memory. These algorithmic descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consistent sequence of operations leading to a desired result. The operations are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.
  • It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the following discussion, it is appreciated that throughout the description, discussions utilizing terms such as “processing” or “computing” or “calculating” or “determining” or “displaying” or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.
  • Techniques described in this paper relate to apparatus for performing the operations. The apparatus can be specially constructed for the required purposes, or it can comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but is not limited to, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, any type of disk including floppy disks, optical disks, CD-ROMs, and magnetic-optical disks, or any type of media suitable for storing electronic instructions, and each coupled to a computer system bus.
  • Although the foregoing embodiments have been described in some detail for purposes of clarity of understanding, the invention is not necessarily limited to the details provided.

Claims (42)

1. A system for collaborative online content editing, the system comprising:
a collaborative online content editing server engine;
an adjustable-version layer rendering engine coupled to the collaborative online content editing server engine;
a content library engine coupled to the collaborative online content editing server engine;
a content library datastore coupled to the content library engine, wherein the content library datastore comprises a library content item;
an adjustable-version layer rendering engine;
wherein, in operation:
the collaborative online content editing server engine modifies multi-layered collaboratively-created content in accordance with a first modified version of the multi-layered collaboratively-created content and in accordance with a second modified version of the multi-layered collaboratively-created content, wherein the first modified version results from a first collaborative online content editing client engine modifying a first copy of the multi-layered collaboratively-created content and the second modified version results from a second collaborative online content editing client engine modifying a second copy of the user created content;
the content library engine provides a first version of the library content item for the first collaborative online content editing client engine as the first collaborative online content editing client engine modifies the first copy using the first version of the library content item, or provides the first version of the library content item for the second collaborative online content editing client engine as the second collaborative online content editing client engine modifies of the second copy using the first version of the library content item;
the adjustable-version layer rendering engine renders the multi-layered collaboratively-created content using a second version of the library content item in place of the first version;
the content library engine provides the second version of the library content item to the adjustable-version layer rendering engine as the adjustable-version layer rendering engine renders the multi-layered collaboratively-created content using the second version.
2. The system of claim 1, wherein the first version comprises a lower quality version of the library content item, and the second version comprises a higher quality version of the library content item.
3. The system of claim 1, wherein the second version comprises an original version of the library content item.
4. The system of claim 1, wherein the first version comprises a watermarked version of the library content item and the second version comprises a non-watermarked version of the library content.
5. The system of claim 1, wherein the first version comprises a first copyright right limited version of the library content item and the second version comprises a second copyright limited version of the library content.
6. The system of claim 1, wherein the library content item comprises an image, an audio clip, or a video clip.
7. The system of claim 1, wherein the library content item comprises user-provided content or third party-provided content.
8. The system of claim 1, wherein the library content item comprises payment-free content or for-purchase content.
9. The system of claim 1, wherein the content library engine comprises a derivative version content generation engine;
wherein, in operation:
the derivative version content generation engine generates the first version from an original version of the library content item, and provides the first version to the first collaborative online content editing client engine or the second collaborative online content editing client engine; or
the derivative version content generation engine generates the second version from the original version of the library content item, and provides the second version to the adjustable-version layer rendering engine.
10. The system of claim 1, wherein, in operation:
the adjustable-version layer rendering engine renders the multi-layered collaboratively-created content using the second version based on a user preference, a payment from a user, a system preference, or a system condition.
11. The system of claim 10, further comprising a content payment engine coupled to the collaborative online content editing server engine, wherein the collaborative online content editing server engine comprises:
a payment processing engine;
a content version determination engine;
wherein, in operation:
the payment processing engine processes the payment;
they content version determination engine determines the second version based on a condition selected from a group consisting of an amount of the payment or a success in processing the payment.
12. The system of claim 1, further comprising a content publication engine coupled to the collaborative online content editing server engine;
wherein, in operation:
the content publication engine publishes the multi-layered content for consumption after the multi-layered content has been rendered by the adjustable-version layer rendering engine.
13. The system of claim 1, further comprising a content licensing management engine coupled to the collaborative online content editing server engine;
wherein, in operation:
the content licensing management engine obtains a licensing parameter for the second version, wherein the licensing parameter comprises a use limitation associated with the second version;
the content licensing management engine provides the licensing parameter to the collaborative online content editing server engine to limit use of the second version according to the use limitation.
14. The system of claim 1, further comprising a content licensing management engine coupled to a content payment engine;
wherein, in operation:
the content licensing management engine obtains a licensing parameter for the second version, wherein the licensing parameter comprises a cost associated with the second version;
the content licensing management engine provides the licensing parameter to the content payment engine to charge for use of the second version according to the cost.
15. The system of claim 1, wherein the collaborative online content editing server engine modifies the multi-layered collaboratively-created content in accordance with the first modified version and the second modified version by serially modifying the multi-layered collaboratively-created content in accordance with the first modified version and then modifying the multi-layered collaboratively-created content in accordance with the second modified version.
16. The system of claim 15, wherein the first modified version is received by the collaborative online content editing server engine before the second modified version is received by the collaborative online content editing server engine.
17. The system of claim 15, wherein the first modified version is associated with a first collaborative user, the second modified version is associated with a second collaborative user, and the first collaborative user has a higher credential than the second collaborative user.
18. The system of claim 1, wherein the collaborative online content editing server engine modifies the multi-layered collaboratively-created content in accordance with the first modified version by replacing the multi-layered collaboratively-created content with the first modified version.
19. The system of claim 1, wherein the collaborative online content editing server engine modifies the multi-layered collaboratively-created content in accordance with the first modified version by applying a difference between the multi-layered collaboratively-created content and the first modified version to the multi-layered collaboratively-created content.
20. The system of claim 1, wherein the first collaborative online content editor client modifying the first copy of the multi-layered collaboratively-created content involves the collaborative online content editing server engine modifying the first copy based on a modification instruction received from the first collaborative online content editing client engine.
21. The system of claim 1, wherein the first collaborative online content editor client modifying the first copy of the multi-layered collaboratively-created content involves the first collaborative online content editing client engine directly modifying the first copy.
22. A method for collaborative online content editing, the method comprising:
receiving, at a collaborative online content editing server, a first request by a first collaborative online content editor client to modify a collaborative content product comprising multi-layered collaboratively-created content;
providing, in response to the first request, the first collaborative online content editor client with a first intermediary collaborative content product based on the collaborative content product, wherein the first intermediary collaborative content product comprises a first copy of the multi-layered collaboratively-created content as the multi-layered collaboratively-created content exists in the collaborative content product when the first intermediary collaborative content product is generated;
receiving, at the collaborative online content editing server, a second request by the second collaborative online content editor client to modify the collaborative content product;
providing, in response to the second request, the second collaborative online content editor client with a second intermediary collaborative content product based on the collaborative content product, wherein the second intermediary collaborative content product comprises a second copy of the multi-layered collaboratively-created content as the multi-layered collaboratively-created content exists in the collaborative content product when the second intermediary collaborative content product is generated;
providing a first version of a library content item for the first collaborative online content editor client as the first collaborative online content editor client modifies the first intermediary collaborative content product using the first version of the library content item, or for the second collaborative online content editor client as the second collaborative online content editor client modifies the second intermediary collaborative content product using the first version of the library content item;
receiving a first modification applied to the first intermediary collaborative content product by the first collaborative online content editor client;
receiving a second modification applied to the second intermediary collaborative content product by the second collaborative online content editor client;
modifying the work content product in accordance with the first modification and the second modification;
rendering the collaborative content product as a rendered collaborative content product, wherein the rendering uses a second version of the library content item in place of the first version.
23. The method of claim 22, wherein the first version comprises a lower quality version of the library content item, and the second version comprises a higher quality version of the library content item.
24. The method of claim 22, wherein the second version comprises an original version of the library content item.
25. The method of claim 22, wherein the first version comprises a watermarked version of the library content item and the second version comprises a non-watermarked version of the library content.
26. The method of claim 22, wherein the first version comprises a first copyright right limited version of the library content item and the second version comprises a second copyright limited version of the library content.
27. The method of claim 22, wherein the library content item comprises an image, an audio clip, or a video clip.
28. The method of claim 22, wherein the library content item comprises user-provided content or third party-provided content.
29. The method of claim 22, wherein the library content item comprises payment-free content or for-purchase content.
30. The method of claim 22, further comprising publishing the rendered collaborative content product for consumption.
31. The method of claim 22, wherein the first intermediary collaborative content product resides at the collaborative online content editing server, and the method further comprises:
receiving, at the collaborative online content editing server, a modification instruction from the first collaborative online content editor client;
modifying the first intermediary collaborative content product according to the modification instruction.
32. The method of claim 22, further comprising generating the first version of the library content item before providing the first version of the library content item.
33. The method of claim 22, wherein rendering the multi-layered collaboratively-created content using the second version is based on a user preference, a payment from a user, a system preference, or a system condition
34. The method of claim 33, further comprising:
processing the payment from a user;
determining the second version based on an amount of the payment or based on success in processing the payment.
35. The method of claim 22, further comprising:
obtaining a licensing parameter for the second version, wherein the licensing parameter comprises a use limitation associated with the second version;
limiting use of the second version according to the use limitation.
36. The method of claim 22, further comprising:
obtaining a licensing parameter for the second version, wherein the licensing parameter comprises a cost associated with the second version;
charging for use of the second version according to the cost.
37. The method of claim 22, wherein modifying the collaborative content product in accordance with the first modification and the second modification comprises serially modifying the collaborative content product in accordance with the with the first modification and then modifying the collaborative content product in accordance with the second modification.
38. The method of claim 37, wherein the first modification is received before the second modification is received by the collaborative online content editing server engine.
39. The method of claim 37, wherein the first modification is associated with a first collaborative user, the second modification is associated with a second collaborative user, and the first collaborative user has a higher user credential than the second collaborative user.
40. The method of claim 22, wherein modifying the collaborative content product in accordance with the first modification comprises replacing the collaborative content product with the first intermediary collaborative content product as modified.
41. The method of claim 22, wherein modifying the collaborative content product in accordance with the first modification comprises applying a difference between the collaborative content product and the first intermediary collaborative content product as modified to the collaborative content product.
42. A system for collaborative online content editing, the system comprising:
a means for receiving, at a collaborative online content editing server, a first request by a first collaborative online content editor client to modify a collaborative content product comprising multi-layered collaboratively-created content;
a means for providing, in response to the first request, the first collaborative online content editor client with a first intermediary collaborative content product based on the collaborative content product, wherein the first intermediary collaborative content product comprises a first copy of the multi-layered collaboratively-created content as the multi-layered collaboratively-created content exists in the collaborative content product when the first intermediary collaborative content product is generated;
a means for receiving a second request by the second collaborative online content editor client to modify the collaborative content product;
providing, in response to the second request, the second collaborative online content editor client with a second intermediary collaborative content product based on the collaborative content product, wherein the second intermediary collaborative content product comprises a second copy of the multi-layered collaboratively-created content as the multi-layered collaboratively-created content exists in the collaborative content product when the second intermediary collaborative content product is generated;
a means for providing a first version of a library content item for the first collaborative online content editor client as the first collaborative online content editor client modifies the first intermediary collaborative content product using the first version of the library content item, or providing the first version of the library content item for the second collaborative online content editor client as the second collaborative online content editor client modifies of the second intermediary collaborative content product using the first version of the library content item;
a means for receiving a first modification applied to the first intermediary collaborative content product by the first collaborative online content editor client;
a means for receiving a second modification applied to the second intermediary collaborative content product by the second collaborative online content editor client;
a means for modifying the work content product in accordance with the first modification and the second modification;
a means for rendering the collaborative content product as a rendered collaborative content product, wherein the rendering uses a second version of the library content item in place of the first version.
US13/506,156 2011-03-29 2012-03-29 Systems and methods for collaborative online content editing Abandoned US20120284176A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US13/506,156 US20120284176A1 (en) 2011-03-29 2012-03-29 Systems and methods for collaborative online content editing
US15/201,610 US10739941B2 (en) 2011-03-29 2016-07-04 Multi-source journal content integration systems and methods and systems and methods for collaborative online content editing
US16/990,961 US11402969B2 (en) 2011-03-29 2020-08-11 Multi-source journal content integration systems and methods and systems and methods for collaborative online content editing
US17/852,719 US20220326818A1 (en) 2011-03-29 2022-06-29 Multi-source journal content integration systems and methods and systems and methods for collaborative online content editing

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161468725P 2011-03-29 2011-03-29
US201161564261P 2011-11-28 2011-11-28
US201161564257P 2011-11-28 2011-11-28
US201161564256P 2011-11-28 2011-11-28
US13/506,156 US20120284176A1 (en) 2011-03-29 2012-03-29 Systems and methods for collaborative online content editing

Related Parent Applications (2)

Application Number Title Priority Date Filing Date
US13/434,709 Continuation-In-Part US9460752B2 (en) 2011-03-29 2012-03-29 Multi-source journal content integration systems and methods
US14/874,311 Continuation US9489983B2 (en) 2011-03-29 2015-10-02 Low bandwidth consumption online content editing

Related Child Applications (3)

Application Number Title Priority Date Filing Date
US13/434,709 Continuation-In-Part US9460752B2 (en) 2011-03-29 2012-03-29 Multi-source journal content integration systems and methods
US15/201,610 Continuation-In-Part US10739941B2 (en) 2011-03-29 2016-07-04 Multi-source journal content integration systems and methods and systems and methods for collaborative online content editing
US15/201,610 Continuation US10739941B2 (en) 2011-03-29 2016-07-04 Multi-source journal content integration systems and methods and systems and methods for collaborative online content editing

Publications (1)

Publication Number Publication Date
US20120284176A1 true US20120284176A1 (en) 2012-11-08

Family

ID=46927379

Family Applications (9)

Application Number Title Priority Date Filing Date
US13/433,239 Abandoned US20120251080A1 (en) 2011-03-29 2012-03-28 Multi-layer timeline content compilation systems and methods
US13/433,252 Active 2035-06-04 US9711178B2 (en) 2011-03-29 2012-03-28 Local timeline editing for online content editing
US13/433,256 Abandoned US20120251083A1 (en) 2011-03-29 2012-03-28 Systems and methods for low bandwidth consumption online content editing
US13/506,156 Abandoned US20120284176A1 (en) 2011-03-29 2012-03-29 Systems and methods for collaborative online content editing
US13/434,709 Active US9460752B2 (en) 2011-03-29 2012-03-29 Multi-source journal content integration systems and methods
US14/874,311 Active US9489983B2 (en) 2011-03-29 2015-10-02 Low bandwidth consumption online content editing
US15/342,364 Active US10109318B2 (en) 2011-03-29 2016-11-03 Low bandwidth consumption online content editing
US16/168,780 Active US11127431B2 (en) 2011-03-29 2018-10-23 Low bandwidth consumption online content editing
US17/460,547 Pending US20220084557A1 (en) 2011-03-29 2021-08-30 Low bandwidth consumption online content editing

Family Applications Before (3)

Application Number Title Priority Date Filing Date
US13/433,239 Abandoned US20120251080A1 (en) 2011-03-29 2012-03-28 Multi-layer timeline content compilation systems and methods
US13/433,252 Active 2035-06-04 US9711178B2 (en) 2011-03-29 2012-03-28 Local timeline editing for online content editing
US13/433,256 Abandoned US20120251083A1 (en) 2011-03-29 2012-03-28 Systems and methods for low bandwidth consumption online content editing

Family Applications After (5)

Application Number Title Priority Date Filing Date
US13/434,709 Active US9460752B2 (en) 2011-03-29 2012-03-29 Multi-source journal content integration systems and methods
US14/874,311 Active US9489983B2 (en) 2011-03-29 2015-10-02 Low bandwidth consumption online content editing
US15/342,364 Active US10109318B2 (en) 2011-03-29 2016-11-03 Low bandwidth consumption online content editing
US16/168,780 Active US11127431B2 (en) 2011-03-29 2018-10-23 Low bandwidth consumption online content editing
US17/460,547 Pending US20220084557A1 (en) 2011-03-29 2021-08-30 Low bandwidth consumption online content editing

Country Status (1)

Country Link
US (9) US20120251080A1 (en)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130151971A1 (en) * 2011-12-13 2013-06-13 Olympus Imaging Corp. Server apparatus and processing method for the same
US20140101571A1 (en) * 2012-10-04 2014-04-10 Lucid Dream Software, Inc. Shared collaborative environment
WO2014167967A1 (en) * 2013-04-11 2014-10-16 Necカシオモバイルコミュニケーションズ株式会社 Information processing apparatus, data processing method thereof, and program
US9460752B2 (en) 2011-03-29 2016-10-04 Wevideo, Inc. Multi-source journal content integration systems and methods
US9542377B2 (en) 2013-05-06 2017-01-10 Dropbox, Inc. Note browser
US20170024095A1 (en) * 2015-01-19 2017-01-26 Dane Glasgow Multi-media platform
US9583140B1 (en) * 2015-10-06 2017-02-28 Bruce Rady Real-time playback of an edited sequence of remote media and three-dimensional assets
US9946992B2 (en) 2013-05-14 2018-04-17 International Business Machines Corporation Temporal promotion of content to a project activity
US10002150B1 (en) * 2014-02-11 2018-06-19 United Technologies Corporation Conflict resolution for a multi-user CAx environment
US10372764B2 (en) 2013-04-30 2019-08-06 International Business Machines Corporation Extending document editors to assimilate documents returned by a search engine
US10546047B1 (en) * 2012-09-27 2020-01-28 Open Text Corporation Method and system for stashing of document alteration information for quicker web preview
US10739941B2 (en) 2011-03-29 2020-08-11 Wevideo, Inc. Multi-source journal content integration systems and methods and systems and methods for collaborative online content editing
US10848561B2 (en) 2017-10-30 2020-11-24 Deltek, Inc. Dynamic content and cloud based content within collaborative electronic content creation and management tools
US20210165859A1 (en) * 2019-12-02 2021-06-03 Cox Automotive, Inc. Systems and Methods for Temporary Digital Content Sharing
US20220004602A1 (en) * 2020-07-01 2022-01-06 Canon Kabushiki Kaisha Information processing apparatus, storage medium, and control method
US11412026B2 (en) * 2012-12-03 2022-08-09 Orange Method for communication among a plurality of users provided with communication terminals, via a virtual communication space
US11748833B2 (en) 2013-03-05 2023-09-05 Wevideo, Inc. Systems and methods for a theme-based effects multimedia editing platform

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006127951A2 (en) 2005-05-23 2006-11-30 Gilley Thomas S Distributed scalable media environment
US9648281B2 (en) 2005-05-23 2017-05-09 Open Text Sa Ulc System and method for movie segment bookmarking and sharing
US8145528B2 (en) 2005-05-23 2012-03-27 Open Text S.A. Movie advertising placement optimization based on behavior and content analysis
US8141111B2 (en) 2005-05-23 2012-03-20 Open Text S.A. Movie advertising playback techniques
US9462082B2 (en) 2011-08-11 2016-10-04 Curve Dental Ltd. Media acquisition engine and method
US9288248B2 (en) * 2011-11-08 2016-03-15 Adobe Systems Incorporated Media system with local or remote rendering
US9373358B2 (en) 2011-11-08 2016-06-21 Adobe Systems Incorporated Collaborative media editing system
KR101909030B1 (en) 2012-06-08 2018-10-17 엘지전자 주식회사 A Method of Editing Video and a Digital Device Thereof
US9459768B2 (en) * 2012-12-12 2016-10-04 Smule, Inc. Audiovisual capture and sharing framework with coordinated user-selectable audio and video effects filters
US10394877B2 (en) * 2012-12-19 2019-08-27 Oath Inc. Method and system for storytelling on a computing device via social media
US9251359B2 (en) * 2013-03-07 2016-02-02 Nokia Technologies Oy Method and apparatus for managing crowd sourced content creation
JP2016517195A (en) * 2013-03-08 2016-06-09 トムソン ライセンシングThomson Licensing Method and apparatus for improving video and media time series editing utilizing a list driven selection process
US9736448B1 (en) * 2013-03-15 2017-08-15 Google Inc. Methods, systems, and media for generating a summarized video using frame rate modification
US9852769B2 (en) 2013-05-20 2017-12-26 Intel Corporation Elastic cloud video editing and multimedia search
US10949894B1 (en) 2013-06-07 2021-03-16 Groupon, Inc. Method, apparatus, and computer program product for facilitating dynamic pricing
US10984455B1 (en) * 2013-06-28 2021-04-20 Groupon, Inc. Method and apparatus for generating an electronic communication
US10387902B1 (en) * 2013-06-28 2019-08-20 Groupon, Inc. Method and apparatus for generating an electronic communication
US10679151B2 (en) 2014-04-28 2020-06-09 Altair Engineering, Inc. Unit-based licensing for third party access of digital content
US20150332282A1 (en) * 2014-05-16 2015-11-19 Altair Engineering, Inc. Unit-based licensing for collage content access
US10534525B1 (en) * 2014-12-09 2020-01-14 Amazon Technologies, Inc. Media editing system optimized for distributed computing systems
WO2016128984A1 (en) * 2015-02-15 2016-08-18 Moviemation Ltd. Customized, personalized, template based online video editing
US10007352B2 (en) 2015-08-21 2018-06-26 Microsoft Technology Licensing, Llc Holographic display system with undo functionality
US10685055B2 (en) 2015-09-23 2020-06-16 Altair Engineering, Inc. Hashtag-playlist content sequence management
US10007963B2 (en) * 2015-11-10 2018-06-26 International Business Machines Corporation Context-based provision of screenshot modifications
USD791159S1 (en) * 2016-04-18 2017-07-04 Apple Inc. Display screen or portion thereof with graphical user interface
US10652303B2 (en) * 2016-04-28 2020-05-12 Rabbit Asset Purchase Corp. Screencast orchestration
US9852768B1 (en) 2016-06-03 2017-12-26 Maverick Co., Ltd. Video editing using mobile terminal and remote computer
US9773524B1 (en) 2016-06-03 2017-09-26 Maverick Co., Ltd. Video editing using mobile terminal and remote computer
US11288336B2 (en) * 2018-04-18 2022-03-29 Google Llc Systems and methods for providing content items in situations involving suboptimal network conditions
JP7180111B2 (en) * 2018-04-27 2022-11-30 富士フイルムビジネスイノベーション株式会社 Display editing device and program
US11061744B2 (en) * 2018-06-01 2021-07-13 Apple Inc. Direct input from a remote device
US11799864B2 (en) 2019-02-07 2023-10-24 Altair Engineering, Inc. Computer systems for regulating access to electronic content using usage telemetry data
USD959466S1 (en) * 2020-04-29 2022-08-02 Toontrack Music Ab Display screen or portion thereof with graphical user interface
US11445230B2 (en) * 2020-11-24 2022-09-13 At&T Intellectual Property I, L.P. Analysis of copy protected content and user streams

Citations (81)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4932054A (en) * 1988-09-16 1990-06-05 Chou Wayne W Method and apparatus for protecting computer software utilizing coded filter network in conjunction with an active coded hardware device
US4977594A (en) * 1986-10-14 1990-12-11 Electronic Publishing Resources, Inc. Database usage metering and protection system and method
US5247575A (en) * 1988-08-16 1993-09-21 Sprague Peter J Information distribution system
US20020083324A1 (en) * 2000-04-21 2002-06-27 Jun Hirai Information embedding apparatus and method, information processing apparatus and method, content processing apparatus and method, monitoring apparatus and method, and storage media
US20020116716A1 (en) * 2001-02-22 2002-08-22 Adi Sideman Online video editor
US6442283B1 (en) * 1999-01-11 2002-08-27 Digimarc Corporation Multimedia data embedding
US20020144130A1 (en) * 2001-03-29 2002-10-03 Koninklijke Philips Electronics N.V. Apparatus and methods for detecting illicit content that has been imported into a secure domain
US20020181732A1 (en) * 2001-04-10 2002-12-05 Motorola, Inc Method of collaborative watermarking of a digital content
US20020181738A1 (en) * 2001-04-19 2002-12-05 Osamu Nakamura Digital watermark embedding processor, digital watermark detecting processor, digital watermark embedding-processing method, digital watermark detecting-processing method, and program storage medium and program used therewith
US20050289068A1 (en) * 1994-11-23 2005-12-29 Contentguard Holdings, Inc. Method and apparatus for tracking states of digital works
US7120859B2 (en) * 2001-09-11 2006-10-10 Sony Corporation Device for producing multimedia presentation
US20070106419A1 (en) * 2005-09-07 2007-05-10 Verizon Business Network Services Inc. Method and system for video monitoring
US7375768B2 (en) * 2004-08-24 2008-05-20 Magix Ag System and method for automatic creation of device specific high definition material
US20080155614A1 (en) * 2005-12-22 2008-06-26 Robin Ross Cooper Multi-source bridge content distribution system and method
US7437673B2 (en) * 2000-06-15 2008-10-14 Microsoft Corporation System and method for using a standard composition environment as the composition space for video image editing
US20080301228A1 (en) * 2007-05-31 2008-12-04 Flavin Robert A Shared state manager and system and method for collaboration
US20090007267A1 (en) * 2007-06-29 2009-01-01 Walter Hoffmann Method and system for tracking authorship of content in data
US20090157608A1 (en) * 2007-12-12 2009-06-18 Google Inc. Online content collaboration model
US7587509B1 (en) * 2003-02-13 2009-09-08 Adobe Systems Incorporated Real-time priority-based media communication
US7594039B2 (en) * 2003-03-14 2009-09-22 Seiko Epson Corporation Image and sound input-output control
US7617278B1 (en) * 2003-01-29 2009-11-10 Adobe Systems Incorporated Client controllable server-side playlists
US20100004944A1 (en) * 2008-07-07 2010-01-07 Murugan Palaniappan Book Creation In An Online Collaborative Environment
US7769819B2 (en) * 2005-04-20 2010-08-03 Videoegg, Inc. Video editing with timeline representations
US20100226525A1 (en) * 1996-04-25 2010-09-09 Levy Kenneth L Processing Audio or Video Content with Multiple Watermark Layers
US7809802B2 (en) * 2005-04-20 2010-10-05 Videoegg, Inc. Browser based video editing
US20100257457A1 (en) * 2009-04-07 2010-10-07 De Goes John A Real-time content collaboration
US20100260468A1 (en) * 2009-04-14 2010-10-14 Maher Khatib Multi-user remote video editing
US7840661B2 (en) * 2007-12-28 2010-11-23 Yahoo! Inc. Creating and editing media objects using web requests
US7934011B2 (en) * 2007-05-01 2011-04-26 Flektor, Inc. System and method for flow control in web-based video editing system
US7945615B1 (en) * 2005-10-31 2011-05-17 Adobe Systems Incorporated Distributed shared persistent objects
US7945916B1 (en) * 2003-03-28 2011-05-17 Adobe Systems Incorporated Shared persistent objects
US20110246554A1 (en) * 2010-03-30 2011-10-06 Bury Craig Multimedia Editing Systems and Methods Therefor
US20110246892A1 (en) * 2010-03-30 2011-10-06 Hedges Carl Navigable Content Source Identification for Multimedia Editing Systems and Methods Therefor
US8051287B2 (en) * 2008-10-15 2011-11-01 Adobe Systems Incorporated Imparting real-time priority-based network communications in an encrypted communication session
US8136127B1 (en) * 2003-01-29 2012-03-13 Adobe Systems Incorporated System and method for linearly managing client-server communication
US8156176B2 (en) * 2005-04-20 2012-04-10 Say Media, Inc. Browser based multi-clip video editing
US8161159B1 (en) * 2005-10-31 2012-04-17 Adobe Systems Incorporated Network configuration with smart edge servers
US8166191B1 (en) * 2009-08-17 2012-04-24 Adobe Systems Incorporated Hint based media content streaming
US8176115B2 (en) * 2001-05-11 2012-05-08 Ambx Uk Limited Real-world representation system and language
US20120130954A1 (en) * 2009-06-08 2012-05-24 Padraig Hood Method and system for generating collaborative content
US8205154B2 (en) * 2004-04-16 2012-06-19 Apple Inc. User definable transition tool
US8209618B2 (en) * 2007-06-26 2012-06-26 Michael Garofalo Method of sharing multi-media content among users in a global computer network
US8209611B2 (en) * 2000-04-27 2012-06-26 Sony Corporation Data-providing apparatus, data-providing method and program-sorting medium
US8218830B2 (en) * 2007-01-29 2012-07-10 Myspace Llc Image editing system and method
US20120189282A1 (en) * 2011-01-25 2012-07-26 Youtoo Technologies, Inc. Generation and Management of Video Blogs
US8245188B2 (en) * 2008-10-23 2012-08-14 International Business Machines Corporation Flash presentation markup language (FLML) for textually expressing flash presentations
US8265457B2 (en) * 2007-05-14 2012-09-11 Adobe Systems Incorporated Proxy editing and rendering for various delivery outlets
US20120251080A1 (en) * 2011-03-29 2012-10-04 Svendsen Jostein Multi-layer timeline content compilation systems and methods
US8286069B2 (en) * 2007-01-26 2012-10-09 Myspace Llc System and method for editing web-based video
US8302008B2 (en) * 2008-10-23 2012-10-30 International Business Machines Corporation Software application for presenting flash presentations encoded in a flash presentation markup language (FLML)
US8331735B2 (en) * 2007-10-16 2012-12-11 Samsung Electronics Co., Ltd. Image display apparatus and method
US20120314025A1 (en) * 2011-06-10 2012-12-13 Morgan Fiumi Distributed three-dimensional video conversion system
US8412841B1 (en) * 2009-08-17 2013-04-02 Adobe Systems Incorporated Media content streaming using stream message fragments
US8411758B2 (en) * 2006-01-13 2013-04-02 Yahoo! Inc. Method and system for online remixing of digital multimedia
US8433611B2 (en) * 2007-06-27 2013-04-30 Google Inc. Selection of advertisements for placement with content
US20130111326A1 (en) * 2011-10-26 2013-05-02 Kimber Lockhart Enhanced multimedia content preview rendering in a cloud content management system
US8451276B2 (en) * 2007-03-26 2013-05-28 Sang Kug Jung Program designed master animation and method for producing thereof
US8495092B2 (en) * 2002-09-12 2013-07-23 Gregory A. Piccionelli Remote media personalization and distribution method
US8510441B2 (en) * 2001-09-18 2013-08-13 Sony Corporation Transmission apparatus, transmission method, content delivery system, content delivery method, and program
US8532469B2 (en) * 2011-06-10 2013-09-10 Morgan Fiumi Distributed digital video processing system
US8577204B2 (en) * 2006-11-13 2013-11-05 Cyberlink Corp. System and methods for remote manipulation of video over a network
US8639086B2 (en) * 2009-01-06 2014-01-28 Adobe Systems Incorporated Rendering of video based on overlaying of bitmapped images
US8667532B2 (en) * 2007-04-18 2014-03-04 Google Inc. Content recognition for targeting video advertisements
US8667016B2 (en) * 2009-04-22 2014-03-04 Genarts, Inc. Sharing of presets for visual effects or other computer-implemented effects
US8695031B2 (en) * 2006-08-02 2014-04-08 Concurrent Computer Corporation System, device, and method for delivering multimedia
US8719865B2 (en) * 2006-09-12 2014-05-06 Google Inc. Using viewing signals in targeted video advertising
US8806346B2 (en) * 2010-03-30 2014-08-12 Itxc Ip Holdings S.A.R.L. Configurable workflow editor for multimedia editing systems and methods therefor
US8812672B2 (en) * 2001-03-21 2014-08-19 Theplatform For Media, Inc., A Washington Corporation Method and system for managing and distributing digital media
US8831999B2 (en) * 2012-02-23 2014-09-09 Collegenet, Inc. Asynchronous video interview system
US20140255009A1 (en) * 2013-03-05 2014-09-11 WeVideo, Inc.. Theme-based effects multimedia editor systems and methods
US20140258101A1 (en) * 2013-03-05 2014-09-11 Wevideo, Inc. Systems and Methods for a Theme-Based Effects Multimedia Editing Platform
US8868465B2 (en) * 2006-01-13 2014-10-21 Yahoo! Inc. Method and system for publishing media content
US8910045B2 (en) * 2007-02-05 2014-12-09 Adobe Systems Incorporated Methods and apparatus for displaying an advertisement
US8935611B2 (en) * 2011-10-10 2015-01-13 Vivoom, Inc. Network-based rendering and steering of visual effects
US8935236B2 (en) * 2003-01-28 2015-01-13 Sony Corporation Information processing apparatus and method, and computer program
US8966402B2 (en) * 2011-06-29 2015-02-24 National Taipei University Of Education System and method for editing interactive three-dimension multimedia, and online editing and exchanging architecture and method thereof
US8984406B2 (en) * 2009-04-30 2015-03-17 Yahoo! Inc! Method and system for annotating video content
US9009581B2 (en) * 2007-09-27 2015-04-14 Magix Ag System and method for dynamic content insertion from the internet into a multimedia work
US9026446B2 (en) * 2011-06-10 2015-05-05 Morgan Fiumi System for generating captions for live video broadcasts
US9032297B2 (en) * 2006-03-17 2015-05-12 Disney Enterprises, Inc. Web based video editing
US9032298B2 (en) * 2007-05-31 2015-05-12 Aditall Llc. Website application system for online video producers and advertisers

Family Cites Families (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5841512A (en) 1996-02-27 1998-11-24 Goodhill; Dean Kenneth Methods of previewing and editing motion pictures
JPH11203837A (en) 1998-01-16 1999-07-30 Sony Corp Editing system and method therefor
US6351765B1 (en) 1998-03-09 2002-02-26 Media 100, Inc. Nonlinear video editing system
US6388668B1 (en) 1998-07-20 2002-05-14 Microsoft Corporation Functional animation including sprite tree generator and interpreter
US6564380B1 (en) 1999-01-26 2003-05-13 Pixelworld Networks, Inc. System and method for sending live video on the internet
US7188088B2 (en) * 1999-12-07 2007-03-06 Matsushita Electric Industrial Co., Ltd. Video editing apparatus, video editing method, and recording medium
US7512964B2 (en) * 2001-06-29 2009-03-31 Cisco Technology System and method for archiving multiple downloaded recordable media content
US20030233462A1 (en) 2002-05-30 2003-12-18 Herman Chien System and method for providing a digital rights scheme for browser downloads
US7882258B1 (en) * 2003-02-05 2011-02-01 Silver Screen Tele-Reality, Inc. System, method, and computer readable medium for creating a video clip
US7707249B2 (en) * 2004-09-03 2010-04-27 Open Text Corporation Systems and methods for collaboration
US8355932B2 (en) 2005-04-08 2013-01-15 Ocean Tomo Llc System and method for managing intellectual property-based risks
WO2006124193A2 (en) * 2005-04-20 2006-11-23 Videoegg, Inc. Browser enabled video manipulation
US20060251382A1 (en) 2005-05-09 2006-11-09 Microsoft Corporation System and method for automatic video editing using object recognition
US9401080B2 (en) 2005-09-07 2016-07-26 Verizon Patent And Licensing Inc. Method and apparatus for synchronizing video frames
US20090196570A1 (en) * 2006-01-05 2009-08-06 Eyesopt Corporation System and methods for online collaborative video creation
US20070162855A1 (en) 2006-01-06 2007-07-12 Kelly Hawk Movie authoring
US9195233B2 (en) 2006-02-27 2015-11-24 Perrone Robotics, Inc. General purpose robotics operating system
EP2011017A4 (en) * 2006-03-30 2010-07-07 Stanford Res Inst Int Method and apparatus for annotating media streams
WO2007137240A2 (en) * 2006-05-21 2007-11-29 Motionphoto, Inc. Methods and apparatus for remote motion graphics authoring
US7945848B2 (en) 2006-06-21 2011-05-17 Microsoft Corporation Dynamically modifying a theme-based media presentation
US8762530B2 (en) 2006-09-11 2014-06-24 Fujitsu Limited Peer-to-peer network with paid uploaders
US20080123976A1 (en) * 2006-09-22 2008-05-29 Reuters Limited Remote Picture Editing
US20080165388A1 (en) 2007-01-04 2008-07-10 Bertrand Serlet Automatic Content Creation and Processing
US20080193100A1 (en) * 2007-02-12 2008-08-14 Geoffrey King Baum Methods and apparatus for processing edits to online video
EP2111588A2 (en) * 2007-02-13 2009-10-28 Nidvid, Inc. Media editing system and method
US20080208692A1 (en) 2007-02-26 2008-08-28 Cadence Media, Inc. Sponsored content creation and distribution
US20090094147A1 (en) * 2007-10-09 2009-04-09 Fein Gene S Multi-Computer Data Transfer and Processing to Support Electronic Content Clearance and Licensing
US8225228B2 (en) 2008-07-10 2012-07-17 Apple Inc. Collaborative media production
EP2172936A3 (en) * 2008-09-22 2010-06-09 a-Peer Holding Group, LLC Online video and audio editing
GB2464948A (en) * 2008-10-29 2010-05-05 Quolos Limited Online collaboration
WO2010085773A1 (en) 2009-01-24 2010-07-29 Kontera Technologies, Inc. Hybrid contextual advertising and related content analysis and display techniques
US10244056B2 (en) 2009-04-15 2019-03-26 Wyse Technology L.L.C. Method and apparatus for transferring remote session data
US20100285884A1 (en) 2009-05-08 2010-11-11 Gazillion Inc High performance network art rendering systems
US8806331B2 (en) * 2009-07-20 2014-08-12 Interactive Memories, Inc. System and methods for creating and editing photo-based projects on a digital network
US20110026899A1 (en) * 2009-07-31 2011-02-03 Paul Lussier Systems and Methods for Viewing and Editing Content Over a Computer Network in Multiple Formats and Resolutions
US8422852B2 (en) 2010-04-09 2013-04-16 Microsoft Corporation Automated story generation
US20110282727A1 (en) 2010-05-14 2011-11-17 Minh Phan Content management in out-of-home advertising networks
US8332752B2 (en) 2010-06-18 2012-12-11 Microsoft Corporation Techniques to dynamically modify themes based on messaging
US8744239B2 (en) 2010-08-06 2014-06-03 Apple Inc. Teleprompter tool for voice-over tool
US20120079606A1 (en) * 2010-09-24 2012-03-29 Amazon Technologies, Inc. Rights and capability-inclusive content selection and delivery
US20120245952A1 (en) 2011-03-23 2012-09-27 University Of Rochester Crowdsourcing medical expertise
US20130132462A1 (en) * 2011-06-03 2013-05-23 James A. Moorer Dynamically Generating and Serving Video Adapted for Client Playback in Advanced Display Modes
US8341525B1 (en) * 2011-06-03 2012-12-25 Starsvu Corporation System and methods for collaborative online multimedia production
US10708148B2 (en) 2011-09-12 2020-07-07 Microsoft Technology Licensing, Llc Activity-and dependency-based service quality monitoring
US9563902B2 (en) 2012-04-11 2017-02-07 Myriata, Inc. System and method for transporting a virtual avatar within multiple virtual environments
US20130311556A1 (en) 2012-05-18 2013-11-21 Yahoo! Inc. System and Method for Generating Theme Based Dynamic Groups
US20140047413A1 (en) 2012-08-09 2014-02-13 Modit, Inc. Developing, Modifying, and Using Applications
US8861005B2 (en) 2012-09-28 2014-10-14 Interactive Memories, Inc. Methods for real time discovery, selection, and engagement of most economically feasible printing service vendors among multiple known vendors
US20140121017A1 (en) 2012-10-25 2014-05-01 University Of Saskatchewan Systems and methods for controlling user interaction with biofeedback gaming applications
US20140143218A1 (en) 2012-11-20 2014-05-22 Apple Inc. Method for Crowd Sourced Multimedia Captioning for Video Content
US20140317506A1 (en) 2013-04-23 2014-10-23 Wevideo, Inc. Multimedia editor systems and methods based on multidimensional cues
US20150050009A1 (en) 2013-08-13 2015-02-19 Wevideo, Inc. Texture-based online multimedia editing

Patent Citations (85)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4977594A (en) * 1986-10-14 1990-12-11 Electronic Publishing Resources, Inc. Database usage metering and protection system and method
US5247575A (en) * 1988-08-16 1993-09-21 Sprague Peter J Information distribution system
US4932054A (en) * 1988-09-16 1990-06-05 Chou Wayne W Method and apparatus for protecting computer software utilizing coded filter network in conjunction with an active coded hardware device
US20050289068A1 (en) * 1994-11-23 2005-12-29 Contentguard Holdings, Inc. Method and apparatus for tracking states of digital works
US20100226525A1 (en) * 1996-04-25 2010-09-09 Levy Kenneth L Processing Audio or Video Content with Multiple Watermark Layers
US6442283B1 (en) * 1999-01-11 2002-08-27 Digimarc Corporation Multimedia data embedding
US20020083324A1 (en) * 2000-04-21 2002-06-27 Jun Hirai Information embedding apparatus and method, information processing apparatus and method, content processing apparatus and method, monitoring apparatus and method, and storage media
US8209611B2 (en) * 2000-04-27 2012-06-26 Sony Corporation Data-providing apparatus, data-providing method and program-sorting medium
US7437673B2 (en) * 2000-06-15 2008-10-14 Microsoft Corporation System and method for using a standard composition environment as the composition space for video image editing
US20020116716A1 (en) * 2001-02-22 2002-08-22 Adi Sideman Online video editor
US8812672B2 (en) * 2001-03-21 2014-08-19 Theplatform For Media, Inc., A Washington Corporation Method and system for managing and distributing digital media
US20020144130A1 (en) * 2001-03-29 2002-10-03 Koninklijke Philips Electronics N.V. Apparatus and methods for detecting illicit content that has been imported into a secure domain
US20020181732A1 (en) * 2001-04-10 2002-12-05 Motorola, Inc Method of collaborative watermarking of a digital content
US20020181738A1 (en) * 2001-04-19 2002-12-05 Osamu Nakamura Digital watermark embedding processor, digital watermark detecting processor, digital watermark embedding-processing method, digital watermark detecting-processing method, and program storage medium and program used therewith
US8176115B2 (en) * 2001-05-11 2012-05-08 Ambx Uk Limited Real-world representation system and language
US7120859B2 (en) * 2001-09-11 2006-10-10 Sony Corporation Device for producing multimedia presentation
US8510441B2 (en) * 2001-09-18 2013-08-13 Sony Corporation Transmission apparatus, transmission method, content delivery system, content delivery method, and program
US8495092B2 (en) * 2002-09-12 2013-07-23 Gregory A. Piccionelli Remote media personalization and distribution method
US8935236B2 (en) * 2003-01-28 2015-01-13 Sony Corporation Information processing apparatus and method, and computer program
US7617278B1 (en) * 2003-01-29 2009-11-10 Adobe Systems Incorporated Client controllable server-side playlists
US8136127B1 (en) * 2003-01-29 2012-03-13 Adobe Systems Incorporated System and method for linearly managing client-server communication
US7587509B1 (en) * 2003-02-13 2009-09-08 Adobe Systems Incorporated Real-time priority-based media communication
US7594039B2 (en) * 2003-03-14 2009-09-22 Seiko Epson Corporation Image and sound input-output control
US7945916B1 (en) * 2003-03-28 2011-05-17 Adobe Systems Incorporated Shared persistent objects
US8205154B2 (en) * 2004-04-16 2012-06-19 Apple Inc. User definable transition tool
US7375768B2 (en) * 2004-08-24 2008-05-20 Magix Ag System and method for automatic creation of device specific high definition material
US8156176B2 (en) * 2005-04-20 2012-04-10 Say Media, Inc. Browser based multi-clip video editing
US7769819B2 (en) * 2005-04-20 2010-08-03 Videoegg, Inc. Video editing with timeline representations
US7809802B2 (en) * 2005-04-20 2010-10-05 Videoegg, Inc. Browser based video editing
US20070106419A1 (en) * 2005-09-07 2007-05-10 Verizon Business Network Services Inc. Method and system for video monitoring
US8161159B1 (en) * 2005-10-31 2012-04-17 Adobe Systems Incorporated Network configuration with smart edge servers
US7945615B1 (en) * 2005-10-31 2011-05-17 Adobe Systems Incorporated Distributed shared persistent objects
US20080155614A1 (en) * 2005-12-22 2008-06-26 Robin Ross Cooper Multi-source bridge content distribution system and method
US8868465B2 (en) * 2006-01-13 2014-10-21 Yahoo! Inc. Method and system for publishing media content
US8411758B2 (en) * 2006-01-13 2013-04-02 Yahoo! Inc. Method and system for online remixing of digital multimedia
US9032297B2 (en) * 2006-03-17 2015-05-12 Disney Enterprises, Inc. Web based video editing
US8695031B2 (en) * 2006-08-02 2014-04-08 Concurrent Computer Corporation System, device, and method for delivering multimedia
US8719865B2 (en) * 2006-09-12 2014-05-06 Google Inc. Using viewing signals in targeted video advertising
US8577204B2 (en) * 2006-11-13 2013-11-05 Cyberlink Corp. System and methods for remote manipulation of video over a network
US8286069B2 (en) * 2007-01-26 2012-10-09 Myspace Llc System and method for editing web-based video
US8218830B2 (en) * 2007-01-29 2012-07-10 Myspace Llc Image editing system and method
US8910045B2 (en) * 2007-02-05 2014-12-09 Adobe Systems Incorporated Methods and apparatus for displaying an advertisement
US8451276B2 (en) * 2007-03-26 2013-05-28 Sang Kug Jung Program designed master animation and method for producing thereof
US8667532B2 (en) * 2007-04-18 2014-03-04 Google Inc. Content recognition for targeting video advertisements
US7934011B2 (en) * 2007-05-01 2011-04-26 Flektor, Inc. System and method for flow control in web-based video editing system
US8265457B2 (en) * 2007-05-14 2012-09-11 Adobe Systems Incorporated Proxy editing and rendering for various delivery outlets
US9032298B2 (en) * 2007-05-31 2015-05-12 Aditall Llc. Website application system for online video producers and advertisers
US20080301228A1 (en) * 2007-05-31 2008-12-04 Flavin Robert A Shared state manager and system and method for collaboration
US8209618B2 (en) * 2007-06-26 2012-06-26 Michael Garofalo Method of sharing multi-media content among users in a global computer network
US8433611B2 (en) * 2007-06-27 2013-04-30 Google Inc. Selection of advertisements for placement with content
US20090007267A1 (en) * 2007-06-29 2009-01-01 Walter Hoffmann Method and system for tracking authorship of content in data
US9009581B2 (en) * 2007-09-27 2015-04-14 Magix Ag System and method for dynamic content insertion from the internet into a multimedia work
US8331735B2 (en) * 2007-10-16 2012-12-11 Samsung Electronics Co., Ltd. Image display apparatus and method
US20090157608A1 (en) * 2007-12-12 2009-06-18 Google Inc. Online content collaboration model
US7840661B2 (en) * 2007-12-28 2010-11-23 Yahoo! Inc. Creating and editing media objects using web requests
US20100004944A1 (en) * 2008-07-07 2010-01-07 Murugan Palaniappan Book Creation In An Online Collaborative Environment
US8051287B2 (en) * 2008-10-15 2011-11-01 Adobe Systems Incorporated Imparting real-time priority-based network communications in an encrypted communication session
US8302008B2 (en) * 2008-10-23 2012-10-30 International Business Machines Corporation Software application for presenting flash presentations encoded in a flash presentation markup language (FLML)
US8245188B2 (en) * 2008-10-23 2012-08-14 International Business Machines Corporation Flash presentation markup language (FLML) for textually expressing flash presentations
US8639086B2 (en) * 2009-01-06 2014-01-28 Adobe Systems Incorporated Rendering of video based on overlaying of bitmapped images
US20100257457A1 (en) * 2009-04-07 2010-10-07 De Goes John A Real-time content collaboration
US8818172B2 (en) * 2009-04-14 2014-08-26 Avid Technology, Inc. Multi-user remote video editing
US20100260468A1 (en) * 2009-04-14 2010-10-14 Maher Khatib Multi-user remote video editing
US8667016B2 (en) * 2009-04-22 2014-03-04 Genarts, Inc. Sharing of presets for visual effects or other computer-implemented effects
US8984406B2 (en) * 2009-04-30 2015-03-17 Yahoo! Inc! Method and system for annotating video content
US20120130954A1 (en) * 2009-06-08 2012-05-24 Padraig Hood Method and system for generating collaborative content
US8412841B1 (en) * 2009-08-17 2013-04-02 Adobe Systems Incorporated Media content streaming using stream message fragments
US8166191B1 (en) * 2009-08-17 2012-04-24 Adobe Systems Incorporated Hint based media content streaming
US8463845B2 (en) * 2010-03-30 2013-06-11 Itxc Ip Holdings S.A.R.L. Multimedia editing systems and methods therefor
US20110246892A1 (en) * 2010-03-30 2011-10-06 Hedges Carl Navigable Content Source Identification for Multimedia Editing Systems and Methods Therefor
US20110246554A1 (en) * 2010-03-30 2011-10-06 Bury Craig Multimedia Editing Systems and Methods Therefor
US8806346B2 (en) * 2010-03-30 2014-08-12 Itxc Ip Holdings S.A.R.L. Configurable workflow editor for multimedia editing systems and methods therefor
US8788941B2 (en) * 2010-03-30 2014-07-22 Itxc Ip Holdings S.A.R.L. Navigable content source identification for multimedia editing systems and methods therefor
US20120189282A1 (en) * 2011-01-25 2012-07-26 Youtoo Technologies, Inc. Generation and Management of Video Blogs
US20120251080A1 (en) * 2011-03-29 2012-10-04 Svendsen Jostein Multi-layer timeline content compilation systems and methods
US8749618B2 (en) * 2011-06-10 2014-06-10 Morgan Fiumi Distributed three-dimensional video conversion system
US8532469B2 (en) * 2011-06-10 2013-09-10 Morgan Fiumi Distributed digital video processing system
US9026446B2 (en) * 2011-06-10 2015-05-05 Morgan Fiumi System for generating captions for live video broadcasts
US20120314025A1 (en) * 2011-06-10 2012-12-13 Morgan Fiumi Distributed three-dimensional video conversion system
US8966402B2 (en) * 2011-06-29 2015-02-24 National Taipei University Of Education System and method for editing interactive three-dimension multimedia, and online editing and exchanging architecture and method thereof
US8935611B2 (en) * 2011-10-10 2015-01-13 Vivoom, Inc. Network-based rendering and steering of visual effects
US20130111326A1 (en) * 2011-10-26 2013-05-02 Kimber Lockhart Enhanced multimedia content preview rendering in a cloud content management system
US8831999B2 (en) * 2012-02-23 2014-09-09 Collegenet, Inc. Asynchronous video interview system
US20140258101A1 (en) * 2013-03-05 2014-09-11 Wevideo, Inc. Systems and Methods for a Theme-Based Effects Multimedia Editing Platform
US20140255009A1 (en) * 2013-03-05 2014-09-11 WeVideo, Inc.. Theme-based effects multimedia editor systems and methods

Cited By (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11402969B2 (en) 2011-03-29 2022-08-02 Wevideo, Inc. Multi-source journal content integration systems and methods and systems and methods for collaborative online content editing
US10109318B2 (en) 2011-03-29 2018-10-23 Wevideo, Inc. Low bandwidth consumption online content editing
US10739941B2 (en) 2011-03-29 2020-08-11 Wevideo, Inc. Multi-source journal content integration systems and methods and systems and methods for collaborative online content editing
US9460752B2 (en) 2011-03-29 2016-10-04 Wevideo, Inc. Multi-source journal content integration systems and methods
US11127431B2 (en) 2011-03-29 2021-09-21 Wevideo, Inc Low bandwidth consumption online content editing
US9489983B2 (en) 2011-03-29 2016-11-08 Wevideo, Inc. Low bandwidth consumption online content editing
US20130151971A1 (en) * 2011-12-13 2013-06-13 Olympus Imaging Corp. Server apparatus and processing method for the same
US11275890B2 (en) 2012-09-27 2022-03-15 Open Text Corporation Method and system for stashing of document alteration information for quicker web preview
US10546047B1 (en) * 2012-09-27 2020-01-28 Open Text Corporation Method and system for stashing of document alteration information for quicker web preview
US20140101571A1 (en) * 2012-10-04 2014-04-10 Lucid Dream Software, Inc. Shared collaborative environment
US11412026B2 (en) * 2012-12-03 2022-08-09 Orange Method for communication among a plurality of users provided with communication terminals, via a virtual communication space
US11748833B2 (en) 2013-03-05 2023-09-05 Wevideo, Inc. Systems and methods for a theme-based effects multimedia editing platform
WO2014167967A1 (en) * 2013-04-11 2014-10-16 Necカシオモバイルコミュニケーションズ株式会社 Information processing apparatus, data processing method thereof, and program
JPWO2014167967A1 (en) * 2013-04-11 2017-02-16 日本電気株式会社 Information processing apparatus, data processing method thereof, and program
EP2986007A4 (en) * 2013-04-11 2017-03-08 Nec Corporation Information processing apparatus, data processing method thereof, and program
US10855731B2 (en) 2013-04-11 2020-12-01 Nec Corporation Information processing apparatus, data processing method thereof, and program
US10372764B2 (en) 2013-04-30 2019-08-06 International Business Machines Corporation Extending document editors to assimilate documents returned by a search engine
US11113463B2 (en) 2013-05-06 2021-09-07 Dropbox, Inc. Note browser
US10430509B2 (en) 2013-05-06 2019-10-01 Dropbox, Inc. Note browser
US9542377B2 (en) 2013-05-06 2017-01-10 Dropbox, Inc. Note browser
US10346527B2 (en) 2013-05-06 2019-07-09 Dropbox, Inc. Note browser
US9946992B2 (en) 2013-05-14 2018-04-17 International Business Machines Corporation Temporal promotion of content to a project activity
US10621553B2 (en) 2013-05-14 2020-04-14 International Business Machines Corporation Temporal promotion of content to a project activity
US20180239795A1 (en) * 2014-02-11 2018-08-23 United Technologies Corporation Conflict resolution for a multi-user cax environment
US10503721B2 (en) * 2014-02-11 2019-12-10 United Technologies Corporation Conflict resolution for a multi-user CAx environment
US10002150B1 (en) * 2014-02-11 2018-06-19 United Technologies Corporation Conflict resolution for a multi-user CAx environment
US20170024095A1 (en) * 2015-01-19 2017-01-26 Dane Glasgow Multi-media platform
US9583140B1 (en) * 2015-10-06 2017-02-28 Bruce Rady Real-time playback of an edited sequence of remote media and three-dimensional assets
US10848561B2 (en) 2017-10-30 2020-11-24 Deltek, Inc. Dynamic content and cloud based content within collaborative electronic content creation and management tools
US20210165859A1 (en) * 2019-12-02 2021-06-03 Cox Automotive, Inc. Systems and Methods for Temporary Digital Content Sharing
US11899757B2 (en) * 2019-12-02 2024-02-13 Cox Automotive, Inc. Systems and methods for temporary digital content sharing
US20220004602A1 (en) * 2020-07-01 2022-01-06 Canon Kabushiki Kaisha Information processing apparatus, storage medium, and control method

Also Published As

Publication number Publication date
US20160027472A1 (en) 2016-01-28
US20190325913A1 (en) 2019-10-24
US20220084557A1 (en) 2022-03-17
US9460752B2 (en) 2016-10-04
US11127431B2 (en) 2021-09-21
US20120251083A1 (en) 2012-10-04
US20170236550A1 (en) 2017-08-17
US9489983B2 (en) 2016-11-08
US20120251080A1 (en) 2012-10-04
US20120254752A1 (en) 2012-10-04
US9711178B2 (en) 2017-07-18
US10109318B2 (en) 2018-10-23
US20120254778A1 (en) 2012-10-04

Similar Documents

Publication Publication Date Title
US11127431B2 (en) Low bandwidth consumption online content editing
US11402969B2 (en) Multi-source journal content integration systems and methods and systems and methods for collaborative online content editing
US10650349B2 (en) Methods and systems for collaborative media creation
US20150050009A1 (en) Texture-based online multimedia editing
US11748833B2 (en) Systems and methods for a theme-based effects multimedia editing platform
US9292896B1 (en) Watermarking media assets at the network edge
US8245124B1 (en) Content modification and metadata
US10931754B2 (en) Personal remote storage for purchased electronic content items
US8640023B1 (en) Method and system for providing HTML page annotations using AJAX and JAVA enterprise edition
US8265457B2 (en) Proxy editing and rendering for various delivery outlets
US20170025153A1 (en) Theme-based effects multimedia editor
US20120179780A1 (en) Rich media publishing
US20130223819A1 (en) Sharing of presets for visual effects or other computer-implemented effects
US20130304604A1 (en) Systems and methods for dynamic digital product synthesis, commerce, and distribution
US10034031B2 (en) Generating a single content entity to manage multiple bitrate encodings for multiple content consumption platforms
US20080215620A1 (en) Method and system for social remixing of media content
US20110161847A1 (en) System and method for integrating and publishing pages of content
US20140255009A1 (en) Theme-based effects multimedia editor systems and methods
US20120102418A1 (en) Sharing Rich Interactive Narratives on a Hosting Platform
US20090094159A1 (en) Stock video purchase
US20140280403A1 (en) System and method for device-optimized transmission, rendering, editing and storing of files
US8331767B2 (en) Media composition system with remote connection
US9110572B2 (en) Network based video creation
US20140317506A1 (en) Multimedia editor systems and methods based on multidimensional cues

Legal Events

Date Code Title Description
AS Assignment

Owner name: WEVIDEO, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SVENDSEN, JOSTEIN;RUSTBERGGAARD, BJORN;REEL/FRAME:028063/0171

Effective date: 20120417

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION