WO2016128749A1 - Method, system and apparatus for facilitating collaboration on media projects - Google Patents

Method, system and apparatus for facilitating collaboration on media projects Download PDF

Info

Publication number
WO2016128749A1
WO2016128749A1 PCT/GB2016/050322 GB2016050322W WO2016128749A1 WO 2016128749 A1 WO2016128749 A1 WO 2016128749A1 GB 2016050322 W GB2016050322 W GB 2016050322W WO 2016128749 A1 WO2016128749 A1 WO 2016128749A1
Authority
WO
WIPO (PCT)
Prior art keywords
audio files
compressed
media
proxy
files
Prior art date
Application number
PCT/GB2016/050322
Other languages
French (fr)
Inventor
Joe RICKERBY
Ben PAWLE
Original Assignee
Mixim Technology Limited
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 Mixim Technology Limited filed Critical Mixim Technology Limited
Publication of WO2016128749A1 publication Critical patent/WO2016128749A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/101Collaborative creation, e.g. joint development of products or services

Definitions

  • the present invention relates to a method, system and apparatus for distributing and allowing access to content by a plurality of users. Specifically, the invention relates to a collaboration system for facilitating collaboration in respect of media projects by a plurality of users over a communication network.
  • Dropbox is a known file sharing service that allows for cloud storage of user files.
  • Dropbox provides a platform to allow users to share and synchronize files with users located around the world.
  • Dropbox does not distinguish between file types, when using Dropbox for files comprising audio, file transfer and sharing becomes a lengthy process which acts as a barrier to providing an effective medium for allowing collaboration in respect of audio projects.
  • platforms have been developed to address the issues with Dropbox, namely its inability to distinguish between file types, these systems fail to remedy each of Dropbox's deficiencies and unfortunately introduce additional issues.
  • Gobbler was developed as a cloud based platform to facilitate media project management. It therefore addresses some of Dropbox's shortcomings in that it is specifically geared to dealing with files which include audio.
  • a collaboration system for allowing one or more users to access for manipulation one or more media projects, the system comprising: means for accessing one or more media projects over a communications network, wherein the media projects include one or more audio files and project data providing instructions relating the one or more audio files; means for compressing the one or more audio files of the one or more media projects such that compressed, proxy representations of the one or more audio files are produced; and means for sending and receiving the one or more media projects over the communications network, wherein the means for sending and receiving the one or more media projects transmit the compressed, proxy representations of the one or more audio files of the one or more media projects and the project data for manipulation to one or more users.
  • the system also referred to as the collaboration tool, may further comprise means for decompressing the compressed, proxy representation to allow for manipulation of the proxy representations of the one or more audio files.
  • the collaboration tool may further comprise means for compressing the project data.
  • the means for decompressing are configurable to decompress the compressed project data.
  • the one or more media projects include video files.
  • the instructions may include any one or more of: details of locations of the original audio tracks, details of any compressed versions of audio tracks, details of how the audio files are linked, details of how the audio files are compiled including timings, details of relative volumes of each of the audio files, and details of any modifications of the audio tracks.
  • the collaboration tool may further comprise means for manipulating the one or more media projects.
  • the manipulating the one or more media projects creates one or more additional audio files and associated project data.
  • the means for compressing produce compressed, proxy representations of the one or more additional audio files and the means for sending and receiving transmit the one or more compressed, proxy versions of the one or more additional audio files.
  • the collaboration tool may further comprise means for compiling the compressed, proxy versions of the one or more audio files and the compressed, proxy versions of the one or more additional audio files. Additionally or alternatively, the collaboration tool may further comprise notification means for providing notifications indicating the existence of compressed, proxy versions of the one or more audio files. Preferably, the means for sending and receiving the one or more media projects is triggered by user action. Additionally or alternatively, the collaboration tool may further comprise redistribution means for distributing compiled, decompressed or original versions of the one or more audio files and/or the one or more additional audio files. Preferably, the redistribution means sources the one or more audio files and/or the one or more additional audio files from one or more sources and compiles the one or more files.
  • a computer-implemented method for allowing one or more users to access for manipulation one or more media projects comprising the steps of: accessing one or more media projects over a communications network, wherein the media projects include one or more audio files and project data providing instructions relating the one or more audio files; compressing the one or more audio files of the one or more media projects such that compressed, proxy representations of the one or more audio files are produced; and transmitting the one or more media projects over the communications network, wherein the transmission is of the compressed, proxy representations of the one or more audio files of the one or more media projects and the project data for manipulation to one or more users.
  • the method may further comprise the step of decompressing the compressed, proxy representation to allow for manipulation of the proxy representations of the one or more audio files. Additionally or alternatively, the method may further comprise the step of compressing the project data. Preferably, the step of decompressing may decompress the compressed project data.
  • the one or more media projects may include video files.
  • the instructions may include any one or more of: details of locations of the original audio tracks, details of any compressed versions of audio tracks, details of how the audio files are linked, details of how the audio files are compiled including timings, details of relative volumes of each of the audio files, and details of any modifications of the audio tracks.
  • the method may further comprise the step of facilitating means for manipulating the one or more media projects.
  • manipulating the one or more media projects may create one or more additional audio files and associated project data.
  • the step of compressing may produce compressed, proxy representations of the one or more additional audio files and the step of transmitting transmits the one or more compressed, proxy versions of the one or more additional audio files.
  • the method may further comprise compiling the compressed, proxy versions of the one or more audio files and the compressed, proxy versions of the one or more additional audio files. Additionally or alternatively, the method may further comprise providing notifications indicating the existence of compressed, proxy versions of the one or more audio files.
  • the step of transmitting the one or more media projects is triggered by user action.
  • the method may further comprise redistribution means for distributing compiled, decompressed or original versions of the one or more audio files and/or the one or more additional audio files.
  • the redistribution means sources the one or more audio files and/or the one or more additional audio files from one or more sources and compiles the one or more files.
  • a computer-readable medium comprising instructions which, when executed by an apparatus, cause the apparatus to perform a computer process comprising the steps of the method described herein.
  • Figure 1 is a schematic diagram illustrating an example collaboration system according to an embodiment
  • Figure 2 is a flow diagram illustrating an exemplary process for the creation of a project according to an embodiment
  • Figure 3 is a schematic diagram illustrating the flow of the exemplary processes of the embodiments depicted in Figure 2 and/or Figure 8;
  • Figure 4 is a flow diagram illustrating an exemplary process for the first project push to server according to an embodiment
  • Figure 5 is a schematic diagram illustrating the flow of the exemplary processes of the embodiments depicted in Figure 4, Figure 9 and/or Figure 10;
  • Figure 6 is a flow diagram illustrating an exemplary process for the first project pull from server according to an embodiment
  • Figure 7 is a schematic diagram illustrating the flow of the exemplary processes of the embodiments depicted in Figure 6, Figure 10 and/or Figure 12;
  • Figure 8 is a flow diagram illustrating an exemplary process for subsequent edits to the project according to an embodiment;
  • Figure 9 is a flow diagram illustrating an exemplary process for the push update to the server according to an embodiment
  • Figure 10 is a flow diagram illustrating an exemplary process for the pull update from the server according to an embodiment
  • Figure 11 is a flow diagram illustrating an exemplary process for the compile functionality which gathers a full resolution copy of the media project to the server according to an embodiment
  • Figure 12 is a flow diagram illustrating an exemplary process for the download of the high resolution media from the server according to an embodiment
  • Figure 13 is screenshot illustrating an example graphic user interface allowing access to the collaboration system according to an embodiment.
  • collaboration tool for allowing collaboration on media projects between users over a communications network.
  • media project this includes clips, videos, multimedia content, music or audio content, etc.
  • the collaboration tool or system described herein provides for quicker and simpler creative collaboration between remote musicians and/or audio engineers (or simply users who wish to embark on these roles in music production). Indeed, although much of the description refers to multiple users, it will be appreciated that the advantages afforded herein are equally applicable when there is only one user of the system, wherein that one user may be accessing the media project from a plurality of locations.
  • the system operates to provide compression and cloud synchronization so that multiple users may collaborate on a media project.
  • media editing programs such as Apple's Logic Pro, GarageBand, Ableton Live or similar, to compress and transfer their media projects between computers over the internet and collaborate in near-real time; thereby allowing multiple people to work on the same track/media project from different locations.
  • media editing facility is described as a separate program to the collaboration system, this facility may be an additional functionality of the collaboration tool and/or the collaboration tool may be a functionality of the media editing software.
  • Step 1 Firstly, there is a media project creation step wherein the collaboration software preserves a projects folder structure and directories of its sub-folders and assets.
  • the collaboration tool compresses this created media project, thereby generating proxy media.
  • the compressed proxy media is passed over the communications network to a collaborator's computer with minimal time and effort.
  • Step 2a Thereafter, to initiate the first synchronization process, the proxy media project is pushed to the server from the originator.
  • Step 2b Once the proxy media project is at the server, the proxy media project is pulled from the server to a collaborator thereby completing the first sync.
  • Step 3 When the proxy media is with the collaborator, he may edit the media project. Such editing creates a new media file(s).
  • Step 4a The second synchronization process then commences with a push of the new proxy data (i.e. generated by compression of the new media files) to the server from the collaborator.
  • the new proxy data i.e. generated by compression of the new media files
  • Step 4b To finish the second sync, the new proxy data is pulled from the server to the originator.
  • Step 5a Finally, when editing of the project is finished and/or when a full resolution output is required, the high-resolution media may be compiled from each of the originators and/or collaborators.
  • Step 5b Each of the originators and/or collaborators (and potentially third parties) can then download the high-resolution media from the server such that exact copies of the original source media is provided. It will be appreciated that the above exemplary outline, and each of the steps detailed therein, are generalized and are simply indicative of the process relating the system, collaborative tool, according to one embodiment.
  • Figure 1 provides a schematic diagram illustrating an example collaboration system 100 according to an embodiment.
  • the client computer in this example is provided with system for collaboration, collaboration tool 101 , as well as an editing module 102 and file system module 103.
  • the collaboration tool 101 facilitates media project collaboration for multiple users as well as synchronization of the media projects for the same user(s) at different locations.
  • each of these modules are illustrated in this embodiment as being distinct, this need not be the case and the functionality of any one or more of the modules can be combined.
  • the editing module 102 is a program or platform that allows a user to write, record, edit and/or mix media files, in particular audio files.
  • the editing module 102 may be any digital audio workstation providing any number of instruments, effects and/or patches to allow users to create and manipulate or produce audio files.
  • One example of a suitable digital audio workstation is Apple's Logic Pro, but it will be appreciated that any digital audio workstation providing or adaptable to provide a user collaboration facility is suitable to act as the editing module 102 for the purposes of this embodiment.
  • the file system module 103 is a module which provides methods and data structures for storing, recording and monitoring files on the client computer. In this exemplary embodiment, discussions are limited to how the specific project files, namely media files used for collaboration and/or synchronization, are stored and retrieved.
  • file system module 103 can be used to store and retrieve any files by any operating system. Additionally, although references are made throughout to a computer, it will be appreciated that the method described herein may be implemented on any other device that may communicate over a network, portable or not; for example, a mobile or smart phone, iPad, or tablet.
  • the media projects referred to herein comprise one or more audio files and one or more files comprising project data. These are preferably stored in an allocated project folder.
  • the project data in this context comprises instructions including any one or more of: details of locations of the audio tracks, details of how the audio files are compiled including timings etc., details of relative volumes of each of the audio files, details of any effects such as equalisation, reverb etc., details of processing applied such as tuning and timing alterations, etc.
  • the collaboration tool 101 comprises an editing module observer 104, a file system observer 105, a sync controller 106 and a sync module 107.
  • the editing module observer 104 and the file system observer 105 each monitor the functionality and status of project files in the editing module 102 and file system 103, respectively.
  • these modules keep track of any updates and/or occurrences that provide an indication that synchronization is required.
  • the sync controller 106 triggers the sync operations.
  • Indication that a synchronization is required includes, but is not limited to, receipt of an express request for a synchronization by a user, user or auto saving of a project file, a user closing the editing module 102 after accessing a particular project file or closing the project file itself. Indeed, in one example as depicted in Figure 7, other collaborators editing projects on their end will result in a server notification that triggers a sync.
  • the functionality of the editing module observer 104 and the file system observer 105 can be combined.
  • the sync module 107 During operation, once the sync controller 106 has triggered sync operations, the sync module 107 generates metadata 108 by creating and comparing snapshots provided by the file system module 103. Snapshots in this context may include particulars of the audio files and the project data, the project data detailing particulars of how the audio files should be compiled; for example filenames, file signature (hash), etc.
  • the sync module 107 is configurable to provide compression, via compression module 109, of the project files (both the audio/media files and the project data) and an upload/download facility 110 to transfer the project files to/from a cloud file storage facility 11 1.
  • the metadata 108 from the sync module 107 is transferrable to a server-side 112 web application programming interface (API) 113. Also maintained server-side 112 is project metadata 114 and a notifications module 115 configurable to provide push notifications when project files have been changed, updated or edited in some way.
  • API application programming interface
  • server 112 and the cloud file storage 1 11 are illustrated as being distinct in this embodiment, it will be appreciated that this need not be the case and that the functionalities can be merged into one module.
  • One exemplary process is detailed below with reference to the figures:
  • Step 1 Media project creation
  • Figure 2 is a flow diagram illustrating an exemplary process for the creation of a new media project according to an embodiment and Figure 3 is a schematic diagram illustrating the flow of the exemplary processes of the embodiment depicted in Figure 2.
  • the user also referred to as the originator of the media project, saves the media project into a project folder.
  • the editing module 102 is triggered to write the audio and project files to disk at step 202 as noted by the file system module 103.
  • the file system observer 104 in the collaboration tool 101 notes that a new project has been saved and marks it as 'needs sync'.
  • the editing module observer 104 monitors the editing module 102 and notes when the originator closes the media project itself and/or the editing module 102, thereby triggering the sync controller 106 to commence sync operations per step 204.
  • Step 2a First project push to server
  • the media project On initiation of the first synchronization process, the media project is pushed to the server 112 from the originator as depicted in Figure 4, which illustrates a flow diagram illustrating an exemplary process according to one embodiment. Also relating this step, Figure 5 provides a schematic diagram illustrating the flow of the exemplary processes of the Figure 4 embodiment.
  • the client determines whether the media project has a unique identifier (UID) attributed thereto per step 401.
  • Each media project is tagged with a unique identifier.
  • Figure 4 is depicting a new media project created by the originator, no unique identifier has yet been attributed thereto.
  • the server 112 records the project name and attributes a UID thereto.
  • the UID may be created by on request of the sync module 107 or the sync module 107 can itself create a UID for the new project and simply report this to the server 112. In this embodiment, the UID is sent from the server 112 to the collaboration tool 101. It will be appreciated that although the UID checking and creation occur in this exemplary embodiment at the client and server, respectively, each of these steps may occur at the client and/or at the server. It will also be appreciated that any identifier capable of uniquely identifying the media project can be used; for example, a numeric UID, alphanumeric UID etc.
  • the sync module 107 creates a snapshot of the media project from the file system module 103 per step 403.
  • the snapshot will preferably contain metadata 108 for each file in the media project. It is preferable that for each file, the file path (internal to project) or project-local path, a signature (such as a MD5 hash) of the file and/or a creation date is recorded.
  • a signature such as a MD5 hash
  • Each created snapshot is then sent to the server 112, and for each file in the snapshot 404, it is checked whether any file in the storage 11 1 has the same signature per step 405. If so (namely that the same signature is present), as depicted at step 406, no further steps are taken. However, if no file having the same signature is identified, as per step 407, the project file is requested from the collaboration tool 101.
  • the collaboration tool 101 at step 408 determines what type of file is being dealt with, particularly whether or not the file is an audio file. If so, the compression module 109 in the collaboration tool 101 compresses the file using lossy codec (e.g. AAC) as per 409 and if not, as depicted at 410, the compression module 109 compresses uses general-purpose compression (GZIP).
  • lossy codec e.g. AAC
  • GZIP general-purpose compression
  • GZIP general-purpose compression
  • Lossless compression preserves all of the file's original data and therefore is preferable where no content modification is acceptable.
  • providing lossy compression achieves smaller file sizes, however, it will be appreciated that the lossy algorithms accept some content degradation. Therefore, lossy compression is preferable where imperfect replication is acceptable at the modification stage.
  • the compressed versions of the project data and audio/media files are uploaded by the upload/download module 110 to cloud file storage 11 1.
  • the collaboration module 101 informs the server 112 that the upload(s) are complete 413.
  • the notification module 114 in the server 112 marks the snapshot as the 'active' snapshot for the project.
  • other users may be notified 415 by the sync controller 106 that a new version of the media project to available for download.
  • the users may be notified by a visual or audio indication, an email update or message popup. It will be appreciated that any form or type of visual or audio indication may be provided.
  • passive notification can be provided wherein a user will only be notified as to the updated status when the user seeks access to or views the particular file.
  • Any suitable visual or audio indication may be provided to notify of an update.
  • the visual or audio indications can provide information regarding the modifications themselves; for example, they may flag a particular time segment thereby indicating the changes made to other users.
  • no update notification is provided.
  • a description of the update may be provided.
  • Step 2b First project pull from server
  • FIG. 6 is a flow diagram illustrating an exemplary process for the first project pull from the server and Figure 7 illustrates the flow of the exemplary processes of the Figure 6 embodiment.
  • the collaborator is invited to collaborate on a media project.
  • a collaborator may send a collaboration request in respect of one or more project files to the originator.
  • predefined groups of collaborators can be set up such that each of the member of a group are always notified of any updates to project files by any of the collaborators regardless of the originator and/or without the need for the issuance of invites. It will be appreciated that the notifications can be adapted/adjusted by the user or can be set as standard.
  • person B a collaborator, accepts an invite to be involved with a particular project file using an email link and/or in-app notification 601.
  • the server 112 notifies the collaborator via the notifications module 1 15 of a new version of the media project and sends the collaborator a snapshot via API 113.
  • the snapshot may simply contain a list of files with metadata provided by project metadata module 1 14.
  • the sync module 107 determines whether the file(s) exists on the local computer and/or only as a snapshot 605 by comparing the snapshot with metadata 108 from the file system module 103. As the first project pull is illustrated herein, the upload/download module 110 of the sync module 107 will download the compressed file 606 from the cloud file storage 11 1 where the file exists in only snapshot on the collaborator's computer. Although the compressed file is downloaded from the cloud file storage 11 1 per 607, it will be appreciated that the compressed file may be obtainable from any other location; for example, directly from a third party computer (e.g. the originator's). The upload/download module 110 then decompresses the file into an uncompressed format 608.
  • 'Format' here refers to file format e.g. AIFF, WAV, AAC or 'audio codec'.
  • decompressing the file reverts the file into original format.
  • the uncompressed proxy representation may not be identical to the original. It will be appreciated that an indication can be provided to the collaborator as to whether or not the present version of the file is identical to that of the original (i.e. if the quality corresponds to that of the original).
  • the editing module 102 may treat the decompressed version as if it were the original and provide the user with no indication as to the format or quality of the present version.
  • the word 'location' here refers to the 'path internal to project'.
  • the original location is recorded in the snapshot during the initial push to the server.
  • Step 3 Edit by collaborator
  • Figure 8 is a flow diagram illustrating an exemplary process for subsequent edits to the media project and Figure 3 is a schematic diagram illustrating the flow of the exemplary processes of the embodiment depicted in Figure 8.
  • the collaborator edits the project using the editing module 102. As the user is editing the project, a new audio file is created. The collaborator may then edit the media project by adding tracks and/or effects, including providing fading, equalizing, distorting, reverberating, volume control etc.
  • the file system observer 105 will note that the media project has been updated and labels the project as 'needing sync' 802. It will be appreciate that the editing module observer 104 and/or the file system observer 105 may monitor the project editing module 102 and/or the file system module 103 on a continuous or intermittent basis. Additionally or alternatively, the project editing module 102 may notify the monitoring module that the project is being updated.
  • the sync controller 106 initiates the synchronization process.
  • closing the media project after editing initiates the sync
  • other triggers may be provided; for example, on user or automatic saves, on user exiting/closing the editing module 102, at predetermined time intervals and/or on user express triggering of a synchronization function.
  • the editing module observer 104 and/or the file system observer 105 may request confirmation as to whether the file has been edited and therefore whether a sync is required, i.e. by requesting this information from the project editing module 102 or the editing module 102 or these modules may push this information to the observer modules.
  • the project editing module 102 and editing module observer 104 may be provided in an integrated format such that the editing module observer 104 is simply a functionality of the project editing module 102 or vice versa. In such an embodiment, the editing module 102 provides to the server indications of any updates and synchronization requirements.
  • Step 4a Sync back to person A
  • the second synchronization processes commences with a push of the proxy data (e.g. the new media files) to the server 112 from the collaborator.
  • Figure 9 is a flow diagram illustrating an exemplary process for the push update to the server according to an embodiment with Figure 5 illustrating the flow of the exemplary processes of Figure 9. This step may follow a similar format as with step 2a but for the fact that an identifier has already been created 902.
  • the sync module 107 makes a snapshot of the media project from the file system module 103 per step 903.
  • the snapshot is sent to the server 112, and for each file in the snapshot 904, it is checked whether any file in the storage 1 11 has the same signature per step 905. If so, as depicted at step 906, no further steps are taken. However, if no file having the same signature is identified, per step 907, the project file is requested from the collaboration tool 101.
  • the collaboration tool 101 at step 908 determines what type of file is being dealt with, particularly whether the file is an audio file. If so, the compression module 109 in the collaboration tool 101 compresses the file(s) using lossy codec (e.g. AAC) as per 909 and if not, as depicted at 910, the compression module 109 compresses the file(s) uses general-purpose compression (GZIP).
  • lossy codec e.g. AAC
  • GZIP general-purpose compression
  • the compressed versions are uploaded by the upload/download module 110 to cloud file storage 1 11.
  • the collaboration module 101 informs the server 112 that the upload(s) are complete 913.
  • the notification module 114 in the server 112 marks the snapshot as the 'active' snapshot for the project.
  • other users may be notified 915 by the sync controller 106 that a new version of the media project to available for download.
  • the users may be notified by a visual or audio indication, an email update or message popup, or any other suitable means for notification.
  • Step 4b Pull update to server
  • FIG 10 is a flow diagram illustrating an exemplary process for the pull update from the server and
  • Figure 5 is a schematic diagram illustrating the flow of the exemplary process of Figure 10. This step follows a similar format to step 2b. However, when the client computer determines the status of the project file, the file can exist in both local and/or snapshot.
  • the new snapshot finished uploading and was set as the new 'active snapshot' 1001.
  • the server 112 notifies the originator via the notifications module 1 15 of new version of media project and sends the originator a snapshot via API 113.
  • the snapshot may contain a list of files with metadata 1003 provided by project metadata module 114.
  • the sync module 107 determines whether the file exists on the local computer and/or only as a snapshot by comparing the snapshot with metadata 108 from the file system module 103. If the file exists only in local project 1005, the local file is deleted. This would be the case where, for example, the project file was deleted by another user. If the file exists in both local and snapshot 1006, the sync module 107 compares the signatures, or hashes. If the signatures are the same, no further action is taken 1007. If, however, they are different, the upload/download module 110 of the sync module 107 downloads the compressed file 1008.
  • the upload/download module 1 10 of the collaboration tool 101 will download the compressed file 1008 from the cloud file storage 1 11 where the file exists in only snapshot on the collaborator's computer.
  • the compressed file is downloaded from the cloud file storage 111 per 1009 in this embodiment, it will be appreciated that the compressed file may be obtainable from any other location; for example, pushed/pulled directly from a third party computer (e.g. the originator's).
  • the upload/download module 110 then decompresses the file into an uncompressed format 1010.
  • decompressing the file reverts the file into original format.
  • the uncompressed proxy representation may not be identical to the original.
  • an indication can be provided to the originator as to whether or not the present version of the file is identical to the original (i.e. if the quality corresponds to that of the original).
  • the system can be configured such that the editing module 102 may treat the decompressed version as if it were the original and provide the user with no indication as to the format or quality of the present version.
  • the decompressed file is then moved to the original location 1011 in the project package.
  • Step 5a Gather full resolution media to server
  • FIG 11 is a flow diagram illustrating an exemplary process for the compile full resolution media to server according to an embodiment.
  • the originator and/or one or more collaborators may request a full resolution media version of the media content or one can be compiled automatically.
  • a collaborator in this example changes the project quality setting to 'lossless'.
  • this process may be undertaken by all the users that have collaborated on the project or indeed the public at large.
  • security settings can be provided such that only some users, for example the originator, may undertake this process.
  • the collaboration tool 101 makes a snapshot of the project 1101. For each file in the snapshot
  • the server 112 determines whether it has a file with the same signature in lossless form
  • the client checks whether they have the original or proxy media version of the file 1106. If they have the proxy 1107, no further action is taken. If they have the original version 1108, the file is compressed using for example lossless audio codec by the compression module 109. The compressed version is then uploaded via the upload/download module 1 10 to the cloud file storage 11 1.
  • the editors or collaborators creates a new audio track when working on a project but work on proxy versions of the other audio tracks, this means that only one 'original'/lossless version of the audio file which was added to the media project needs uploading.
  • the remaining 'lossy' or 'proxy' versions of the additional audio files do not require uploading in order to create a complete high-resolution version of the track. This advantageously reduces individual processing and bandwidth requirements.
  • Step 5b Clients download high-resolution media from server
  • FIG 12 is a flow diagram illustrating an exemplary process for the download high- resolution media from the server and
  • Figure 7 is a schematic diagram illustrating the flow of the exemplary processes of the embodiment depicted in Figure 12.
  • the system settings can be such that only the originator of the file may compile the audio track in high resolution. This feature may be present in order to reduce the risk of ownership disputes. It will be appreciated that the setting can be set such that any person or groups of persons may be configured to have high resolution download ability.
  • server 112 notifies other users, such as the originator or other collaborators, of new version of project 1202 being available through the API 113.
  • the server 112 sends a snapshot which may contain list of files with metadata 1203.
  • each snapshot 1204 it is determined whether a lossless version is available locally. Where the lossless version is comprised locally, no further action is required 1205. Where the proxy version is available locally but the snapshot contains lossless version, the system triggers the download of the compressed file from the cloud file storage 11 1.
  • the system triggers decompression of the file into the original uncompressed format. Once the file has been decompressed, the uncompressed or original version is moved to the original location in the project package 1209.
  • FIG. 13 An exemplary graphic user interface of the embodiments described herein is depicted in the screenshot provided in Figure 13.
  • the exemplary computer screen 1300 details an icon 1301 providing pop up access to the graphic user interface 1302 detailing the workings in respect of the functioning various embodiments.
  • the graphic user interface 1302 is presented in the form of a pop up window, any other type of window or page can be provided.
  • the following features are illustrated: an Open elsewhere' feature 1303, a sync status feature 1304, indications of the collaborators working on a project 1305, an icon for inviting one or more users to collaborate on a project 1306 and an invite from a user to collaborate on a project 1307.
  • the Open elsewhere' feature 1303 addresses the issue of potential conflict from occurring; specifically, conflict occurring where a particular project or particular audio file in the project is being modified, adapted and/or changed. Such conflict between the files can cause file corruption. To deal with the potential for conflict, the system may deny access to a second user endeavouring to access a file currently accessed by another user (e.g. where a second user is modifying the compressed version of the same project file). Additionally or alternatively, a visual or audio indication can be provided to indicate that the file is effectively 'checked out'.
  • the Open elsewhere' feature 1303 is one such exemplary indication.
  • the system can comprise rules or conditions which set out what version of a project should be maintained where there is a potential for conflict; for example, where two or more people have been working on the same audio file.
  • Possible rules can include any one or more of: the first to upload wins with any subsequent version being discarded, any subsequent version overwrites a previous rendition, any version created by 'preferred' or predetermined users (e.g. the originator or predetermined 'advanced' users) is favoured, a voting feature may be provided allowing collaborators and/or other users to vote on their preferred edit etc.
  • both versions of a potentially conflicting audio file can be maintained.
  • the audio files can be categorized as potentially conflicting and are preferably labelled and stored as such.
  • the system may request that a user decide which audio file to keep and which to discard. It will be appreciated that although the same audio file has been edited by two or more users, the audio files may themselves not include a track which is conflicting as the two or more users can be working on different parts (e.g. different time segments) of the track. Therefore, the system can provide users with a duplicate, merge and/or flag functionality to allow a choice to be made regarding the tracks at a later stage. Alternatively, the user may choose to keep both audio files and duplicate the remaining audio/media files and associated project data such that two separate project files are created.
  • the sync status feature 1304 indicates the status of on-going synchronization processes.
  • the synchronization is on-going as indicated by the 'syncing' label.
  • Other labels such as sync paused, sync finished etc. can be provided.
  • the status of uploads/downloads can also be detailed herein; for example, detailing what files are to be uploaded/downloaded and the status thereof, e.g. such as providing an indication of the speed of the transfer.
  • Depictions of the collaborators working on a project 1305 are preferably provided on the graphic user interface. By so providing, a collaborator is provided with a quick indication as to who is involved in the project. Furthermore, an icon for inviting one or more users to collaborate on a project 1306 is provided for facilitating easy collaboration. In this example, an invite from a user to collaborate on a project 1307 is depicted.
  • an additional accounts or options page 1308 can be provided in the graphic user interface which provides an interface setting out various options by which a user can adapt and personalize various settings.
  • a 'quality' icon can be provided 1309 which allows a user to select or specify whether they wish to work in lossy or lossless.
  • control over the settings for a particular project may require communal consensus or may be set by the originator of the project. Additional or alterantive features or options which can be provided include the ability to remove collaborators, and/or pause/resume syncing.
  • the collaboration system or tool described above may be implemented at least in part in computer software.
  • the apparatus described above may be implemented using general purpose computer equipment or using bespoke equipment.
  • the different components of the systems may be provided by software modules executed on a computer.
  • the server may be centrally located and the clients are distributed.
  • the server functions may be implemented in a distributed fashion on a number of similar platforms, to distribute the processing load.
  • aspects of the methods and apparatuses described herein can be executed on a computing device such as a server.
  • Program aspects of the technology can be thought of as "products” or “articles of manufacture” typically in the form of executable code and/or associated data that is carried on or embodied in a type of machine-readable medium.
  • “Storage” type media include any or all of the memory of the computers, processors or the like, or associated modules thereof, such as various semiconductor memories, tape drives, disk drives, and the like, which may provide storage at any time for the software programming. All or portions of the software may at times be communicated through the Internet or various other telecommunications networks. Such communications, for example, may enable loading of the software from one computer or processor into another computer or processor.
  • another type of media that may bear the software elements includes optical, electrical and electromagnetic waves, such as used across physical interfaces between local devices, through wired and optical landline networks and over various air-links.
  • the physical elements that carry such waves, such as wired or wireless links, optical links or the like, also may be considered as media bearing the software.
  • terms such as computer or machine "readable medium” refer to any medium that participates in providing instructions to a processor for execution.
  • Non-volatile storage media include, for example, optical or magnetic disks, such as any of the storage devices in computer(s) or the like, such as may be used to implement the encoder, the decoder, etc. shown in the drawings.
  • Volatile storage media include dynamic memory, such as the main memory of a computer platform.
  • Tangible transmission media include coaxial cables; copper wire and fibre optics, including the wires that comprise the bus within a computer system.
  • Carrier-wave transmission media can take the form of electric or electromagnetic signals, or acoustic or light waves such as those generated during radio frequency (RF) and infrared (IR) data communications.
  • Computer-readable media therefore include for example: a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, DVD or DVD-ROM, any other optical medium, any other physical storage medium with patterns of holes, a RAM, a PROM and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave transporting data or instructions, cables or links transporting such a carrier wave, or any other medium from which a computer can read programming code and/or data. Many of these forms of computer readable media may be involved in carrying one or more sequences of one or more instructions to a processor for execution.
  • any reference to 'an' item refers to one or more of those items.
  • the term 'comprising' is used herein to mean including the method blocks or elements identified, but that such blocks or elements do not comprise an exclusive list and an apparatus may contain additional blocks or elements and a method may contain additional operations or elements.
  • the blocks, elements and operations are themselves not impliedly closed.
  • the steps of the methods described herein may be carried out in any suitable order, or simultaneously where appropriate.

Abstract

According to aspects of the invention there are provided a collaboration system for allowing one or more users to access for manipulation one or more media projects, the system comprising: means for accessing one or more media projects over a communications network, wherein the media projects include one or more audio files and project data providing instructions relating the one or more audio files; means for compressing the one or more audio files of the one or more media projects such that compressed, proxy representations of the one or more audio files are produced; and means for sending and receiving the one or more media projects over the communications network, wherein the means for sending and receiving the one or more media projects transmit the compressed, proxy representations of the one or more audio files of the one or more media projects and the project data for manipulation to one or more users.

Description

METHOD, SYSTEM AND APPARATUS
FOR FACILITATING COLLABORATION ON MEDIA PROJECTS
Technical Field
The present invention relates to a method, system and apparatus for distributing and allowing access to content by a plurality of users. Specifically, the invention relates to a collaboration system for facilitating collaboration in respect of media projects by a plurality of users over a communication network. Background
The uptake of amateur-based media content development has grown exponentially over the past ten years. With the explosion of apps and programs to generate music, every user can be a DJ and music producer in the comfort of his own home. As such, consumers around the world are now actively seeking out platforms on which to prepare and create new media content. Although not professionals, the amateur audience has grown much more discerning as they are being exposed to rapidly improving means for developing new works.
Additionally, as the internet and other means connect users across the world, users no longer consider that other users being in different geographical locations to be a valid hindrance to the development of and collaboration on media projects. However, although various platforms exist to facilitate collaboration on works generally, serious issues still exist when the media being worked on has a large file size; for example, when the projects comprise audio. Indeed, current systems for allowing collaboration on works are not compatible with audio projects and/or are prohibitively slow and bandwidth intensive.
For example, Dropbox is a known file sharing service that allows for cloud storage of user files. Dropbox provides a platform to allow users to share and synchronize files with users located around the world. However, as Dropbox does not distinguish between file types, when using Dropbox for files comprising audio, file transfer and sharing becomes a lengthy process which acts as a barrier to providing an effective medium for allowing collaboration in respect of audio projects. Although platforms have been developed to address the issues with Dropbox, namely its inability to distinguish between file types, these systems fail to remedy each of Dropbox's deficiencies and unfortunately introduce additional issues. For example, Gobbler was developed as a cloud based platform to facilitate media project management. It therefore addresses some of Dropbox's shortcomings in that it is specifically geared to dealing with files which include audio. As such, the transfer of the project files is improved in that specific audio compression techniques are used. However, Gobbler requires users to manually trigger the syncing process using lossless compression. Therefore, this system is labour intensive and as with Dropbox, still requires much time and bandwidth to transfer projects between users. Therefore, there is a need for an improved method, apparatus and system for allowing one or more users to effectively collaborate on media projects from the multitude of locations.
Summary
This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
According to an embodiment, there is provided a collaboration system for allowing one or more users to access for manipulation one or more media projects, the system comprising: means for accessing one or more media projects over a communications network, wherein the media projects include one or more audio files and project data providing instructions relating the one or more audio files; means for compressing the one or more audio files of the one or more media projects such that compressed, proxy representations of the one or more audio files are produced; and means for sending and receiving the one or more media projects over the communications network, wherein the means for sending and receiving the one or more media projects transmit the compressed, proxy representations of the one or more audio files of the one or more media projects and the project data for manipulation to one or more users.
Preferably, the system, also referred to as the collaboration tool, may further comprise means for decompressing the compressed, proxy representation to allow for manipulation of the proxy representations of the one or more audio files. Additionally or alternatively, the collaboration tool may further comprise means for compressing the project data. Preferably, the means for decompressing are configurable to decompress the compressed project data. Optionally, the one or more media projects include video files.
The instructions may include any one or more of: details of locations of the original audio tracks, details of any compressed versions of audio tracks, details of how the audio files are linked, details of how the audio files are compiled including timings, details of relative volumes of each of the audio files, and details of any modifications of the audio tracks.
Additionally or alternatively, the collaboration tool may further comprise means for manipulating the one or more media projects. Preferably, the manipulating the one or more media projects creates one or more additional audio files and associated project data. Preferably, the means for compressing produce compressed, proxy representations of the one or more additional audio files and the means for sending and receiving transmit the one or more compressed, proxy versions of the one or more additional audio files.
Additionally or alternatively, the collaboration tool may further comprise means for compiling the compressed, proxy versions of the one or more audio files and the compressed, proxy versions of the one or more additional audio files. Additionally or alternatively, the collaboration tool may further comprise notification means for providing notifications indicating the existence of compressed, proxy versions of the one or more audio files. Preferably, the means for sending and receiving the one or more media projects is triggered by user action. Additionally or alternatively, the collaboration tool may further comprise redistribution means for distributing compiled, decompressed or original versions of the one or more audio files and/or the one or more additional audio files. Preferably, the redistribution means sources the one or more audio files and/or the one or more additional audio files from one or more sources and compiles the one or more files.
According to a further embodiment, there is provided a computer-implemented method for allowing one or more users to access for manipulation one or more media projects, the method comprising the steps of: accessing one or more media projects over a communications network, wherein the media projects include one or more audio files and project data providing instructions relating the one or more audio files; compressing the one or more audio files of the one or more media projects such that compressed, proxy representations of the one or more audio files are produced; and transmitting the one or more media projects over the communications network, wherein the transmission is of the compressed, proxy representations of the one or more audio files of the one or more media projects and the project data for manipulation to one or more users.
Preferably, the method may further comprise the step of decompressing the compressed, proxy representation to allow for manipulation of the proxy representations of the one or more audio files. Additionally or alternatively, the method may further comprise the step of compressing the project data. Preferably, the step of decompressing may decompress the compressed project data. Optionally, the one or more media projects may include video files.
The instructions may include any one or more of: details of locations of the original audio tracks, details of any compressed versions of audio tracks, details of how the audio files are linked, details of how the audio files are compiled including timings, details of relative volumes of each of the audio files, and details of any modifications of the audio tracks. Additionally or alternatively, the method may further comprise the step of facilitating means for manipulating the one or more media projects. Preferably, manipulating the one or more media projects may create one or more additional audio files and associated project data. Preferably, the step of compressing may produce compressed, proxy representations of the one or more additional audio files and the step of transmitting transmits the one or more compressed, proxy versions of the one or more additional audio files.
Additionally or alternatively, the method may further comprise compiling the compressed, proxy versions of the one or more audio files and the compressed, proxy versions of the one or more additional audio files. Additionally or alternatively, the method may further comprise providing notifications indicating the existence of compressed, proxy versions of the one or more audio files. Preferably, the step of transmitting the one or more media projects is triggered by user action.
Additionally or alternatively, the method may further comprise redistribution means for distributing compiled, decompressed or original versions of the one or more audio files and/or the one or more additional audio files. Preferably, the redistribution means sources the one or more audio files and/or the one or more additional audio files from one or more sources and compiles the one or more files. According to a further embodiment, there is provided a computer-readable medium comprising instructions which, when executed by an apparatus, cause the apparatus to perform a computer process comprising the steps of the method described herein.
The features of each of the above aspects and/or embodiments may be combined as appropriate, as would be apparent to the skilled person, and may be combined with any of the aspects of the invention. Indeed, the order of the embodiments and the ordering and location of the preferable features is indicative only and has no bearing on the features themselves. It is intended for each of the preferable and/or optional features to be interchangeable and/or combinable with not only all of the aspect and embodiments, but also each of preferable features.
Brief Description of the Drawings
For better understanding of the aspects and/or embodiments described herein and to show how the same may be carried into effect, reference will now be made, by way of example only, to the accompanying figures, in which:
Figure 1 is a schematic diagram illustrating an example collaboration system according to an embodiment;
Figure 2 is a flow diagram illustrating an exemplary process for the creation of a project according to an embodiment; Figure 3 is a schematic diagram illustrating the flow of the exemplary processes of the embodiments depicted in Figure 2 and/or Figure 8;
Figure 4 is a flow diagram illustrating an exemplary process for the first project push to server according to an embodiment;
Figure 5 is a schematic diagram illustrating the flow of the exemplary processes of the embodiments depicted in Figure 4, Figure 9 and/or Figure 10;
Figure 6 is a flow diagram illustrating an exemplary process for the first project pull from server according to an embodiment;
Figure 7 is a schematic diagram illustrating the flow of the exemplary processes of the embodiments depicted in Figure 6, Figure 10 and/or Figure 12; Figure 8 is a flow diagram illustrating an exemplary process for subsequent edits to the project according to an embodiment;
Figure 9 is a flow diagram illustrating an exemplary process for the push update to the server according to an embodiment;
Figure 10 is a flow diagram illustrating an exemplary process for the pull update from the server according to an embodiment; Figure 11 is a flow diagram illustrating an exemplary process for the compile functionality which gathers a full resolution copy of the media project to the server according to an embodiment;
Figure 12 is a flow diagram illustrating an exemplary process for the download of the high resolution media from the server according to an embodiment; and Figure 13 is screenshot illustrating an example graphic user interface allowing access to the collaboration system according to an embodiment.
It will be appreciated that although features from each of the embodiments may be identified by different reference numerals in the figures and throughout the description, similar features including the properties and functionality attributed thereto, from one embodiment may be interchangeable with those of another embodiment.
Detailed Description
References will now be made in detail to the various aspects and/or embodiments, examples of which are illustrated in the accompanying figures. In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the invention. However, it will be apparent to one of ordinary skill in the art that the invention may be practiced without these specific details.
Overview of Collaboration Tool
Herein described is a system, also referred to as the collaboration tool, for allowing collaboration on media projects between users over a communications network. It should be noted that when the term media project is used, this includes clips, videos, multimedia content, music or audio content, etc.
The collaboration tool or system described herein provides for quicker and simpler creative collaboration between remote musicians and/or audio engineers (or simply users who wish to embark on these roles in music production). Indeed, although much of the description refers to multiple users, it will be appreciated that the advantages afforded herein are equally applicable when there is only one user of the system, wherein that one user may be accessing the media project from a plurality of locations.
The system operates to provide compression and cloud synchronization so that multiple users may collaborate on a media project. Generally, it allows users of media editing programs, such as Apple's Logic Pro, GarageBand, Ableton Live or similar, to compress and transfer their media projects between computers over the internet and collaborate in near-real time; thereby allowing multiple people to work on the same track/media project from different locations. It will be appreciated that although in the exemplary embodiments described herein the media editing facility is described as a separate program to the collaboration system, this facility may be an additional functionality of the collaboration tool and/or the collaboration tool may be a functionality of the media editing software.
On a high level, the collaboration tool according to one embodiment functions as follows: Step 1 : Firstly, there is a media project creation step wherein the collaboration software preserves a projects folder structure and directories of its sub-folders and assets. The collaboration tool compresses this created media project, thereby generating proxy media. The compressed proxy media is passed over the communications network to a collaborator's computer with minimal time and effort.
Step 2a: Thereafter, to initiate the first synchronization process, the proxy media project is pushed to the server from the originator.
Step 2b: Once the proxy media project is at the server, the proxy media project is pulled from the server to a collaborator thereby completing the first sync. Step 3: When the proxy media is with the collaborator, he may edit the media project. Such editing creates a new media file(s).
Step 4a: The second synchronization process then commences with a push of the new proxy data (i.e. generated by compression of the new media files) to the server from the collaborator.
Step 4b: To finish the second sync, the new proxy data is pulled from the server to the originator.
Any number of iterations of the above steps may occur as is necessary; for example, depending on the number of collaborators editing the media project and/or the number of edits occurring in respect of the media project.
Step 5a: Finally, when editing of the project is finished and/or when a full resolution output is required, the high-resolution media may be compiled from each of the originators and/or collaborators.
Step 5b: Each of the originators and/or collaborators (and potentially third parties) can then download the high-resolution media from the server such that exact copies of the original source media is provided. It will be appreciated that the above exemplary outline, and each of the steps detailed therein, are generalized and are simply indicative of the process relating the system, collaborative tool, according to one embodiment.
Provided below is a more detailed description regarding the various modules of the system and each of the steps of the processes. Overview of component parts of system
Figure 1 provides a schematic diagram illustrating an example collaboration system 100 according to an embodiment.
As is illustrated, the client computer in this example is provided with system for collaboration, collaboration tool 101 , as well as an editing module 102 and file system module 103. The collaboration tool 101 facilitates media project collaboration for multiple users as well as synchronization of the media projects for the same user(s) at different locations. Although each of these modules are illustrated in this embodiment as being distinct, this need not be the case and the functionality of any one or more of the modules can be combined.
The editing module 102 is a program or platform that allows a user to write, record, edit and/or mix media files, in particular audio files. The editing module 102 may be any digital audio workstation providing any number of instruments, effects and/or patches to allow users to create and manipulate or produce audio files. One example of a suitable digital audio workstation is Apple's Logic Pro, but it will be appreciated that any digital audio workstation providing or adaptable to provide a user collaboration facility is suitable to act as the editing module 102 for the purposes of this embodiment. The file system module 103 is a module which provides methods and data structures for storing, recording and monitoring files on the client computer. In this exemplary embodiment, discussions are limited to how the specific project files, namely media files used for collaboration and/or synchronization, are stored and retrieved. However, it will be appreciated that the file system module 103 can be used to store and retrieve any files by any operating system. Additionally, although references are made throughout to a computer, it will be appreciated that the method described herein may be implemented on any other device that may communicate over a network, portable or not; for example, a mobile or smart phone, iPad, or tablet.
The media projects referred to herein comprise one or more audio files and one or more files comprising project data. These are preferably stored in an allocated project folder. The project data in this context comprises instructions including any one or more of: details of locations of the audio tracks, details of how the audio files are compiled including timings etc., details of relative volumes of each of the audio files, details of any effects such as equalisation, reverb etc., details of processing applied such as tuning and timing alterations, etc. The collaboration tool 101 comprises an editing module observer 104, a file system observer 105, a sync controller 106 and a sync module 107. The editing module observer 104 and the file system observer 105 each monitor the functionality and status of project files in the editing module 102 and file system 103, respectively. As such, these modules keep track of any updates and/or occurrences that provide an indication that synchronization is required. On any such indication, the sync controller 106 triggers the sync operations. Indication that a synchronization is required includes, but is not limited to, receipt of an express request for a synchronization by a user, user or auto saving of a project file, a user closing the editing module 102 after accessing a particular project file or closing the project file itself. Indeed, in one example as depicted in Figure 7, other collaborators editing projects on their end will result in a server notification that triggers a sync. As with the editing module 102 and file system 103, it will be appreciated that the functionality of the editing module observer 104 and the file system observer 105 can be combined.
During operation, once the sync controller 106 has triggered sync operations, the sync module 107 generates metadata 108 by creating and comparing snapshots provided by the file system module 103. Snapshots in this context may include particulars of the audio files and the project data, the project data detailing particulars of how the audio files should be compiled; for example filenames, file signature (hash), etc. The sync module 107 is configurable to provide compression, via compression module 109, of the project files (both the audio/media files and the project data) and an upload/download facility 110 to transfer the project files to/from a cloud file storage facility 11 1. The metadata 108 from the sync module 107 is transferrable to a server-side 112 web application programming interface (API) 113. Also maintained server-side 112 is project metadata 114 and a notifications module 115 configurable to provide push notifications when project files have been changed, updated or edited in some way.
Although the server 112 and the cloud file storage 1 11 are illustrated as being distinct in this embodiment, it will be appreciated that this need not be the case and that the functionalities can be merged into one module. One exemplary process is detailed below with reference to the figures:
Step 1 : Media project creation
Figure 2 is a flow diagram illustrating an exemplary process for the creation of a new media project according to an embodiment and Figure 3 is a schematic diagram illustrating the flow of the exemplary processes of the embodiment depicted in Figure 2.
At step 201 , the user, also referred to as the originator of the media project, saves the media project into a project folder. On saving the project into the folder, the editing module 102 is triggered to write the audio and project files to disk at step 202 as noted by the file system module 103. At step 203, the file system observer 104 in the collaboration tool 101 notes that a new project has been saved and marks it as 'needs sync'. The editing module observer 104 monitors the editing module 102 and notes when the originator closes the media project itself and/or the editing module 102, thereby triggering the sync controller 106 to commence sync operations per step 204.
Step 2a: First project push to server
On initiation of the first synchronization process, the media project is pushed to the server 112 from the originator as depicted in Figure 4, which illustrates a flow diagram illustrating an exemplary process according to one embodiment. Also relating this step, Figure 5 provides a schematic diagram illustrating the flow of the exemplary processes of the Figure 4 embodiment. After the sync controller 106 initiates synchronization operations, the client determines whether the media project has a unique identifier (UID) attributed thereto per step 401. Each media project is tagged with a unique identifier. As Figure 4 is depicting a new media project created by the originator, no unique identifier has yet been attributed thereto. As such, at step 402, the server 112 records the project name and attributes a UID thereto. The UID may be created by on request of the sync module 107 or the sync module 107 can itself create a UID for the new project and simply report this to the server 112. In this embodiment, the UID is sent from the server 112 to the collaboration tool 101. It will be appreciated that although the UID checking and creation occur in this exemplary embodiment at the client and server, respectively, each of these steps may occur at the client and/or at the server. It will also be appreciated that any identifier capable of uniquely identifying the media project can be used; for example, a numeric UID, alphanumeric UID etc.
When the media project has been allocated a UID, the sync module 107 creates a snapshot of the media project from the file system module 103 per step 403. The snapshot will preferably contain metadata 108 for each file in the media project. It is preferable that for each file, the file path (internal to project) or project-local path, a signature (such as a MD5 hash) of the file and/or a creation date is recorded. To provide an example of the file path internal to project, say a project is located at the path '/Music/Song. logicx' and there is an audio file inside whose path is 7Music/Song.logicxAudio/track1.aiff, the path internal to project or project-local path is then 'Audio/trackl .aiff', so the path of the project is not captured. It will be appreciated that this example is illustrative only.
Each created snapshot is then sent to the server 112, and for each file in the snapshot 404, it is checked whether any file in the storage 11 1 has the same signature per step 405. If so (namely that the same signature is present), as depicted at step 406, no further steps are taken. However, if no file having the same signature is identified, as per step 407, the project file is requested from the collaboration tool 101.
The collaboration tool 101 at step 408 determines what type of file is being dealt with, particularly whether or not the file is an audio file. If so, the compression module 109 in the collaboration tool 101 compresses the file using lossy codec (e.g. AAC) as per 409 and if not, as depicted at 410, the compression module 109 compresses uses general-purpose compression (GZIP). When an audio file is compressed using a lossy codec, the file that is uploaded is 'proxy media'. This means that when the file is decompressed, it may not match the original exactly, but it should close enough to be work with. Although in this embodiment specific examples of compression have been detailed, it will be appreciated that other forms to known compression may be used. For example, although lossy compression has been exemplified herein, lossless compression may alternatively and/or additionally be provided.
Lossless compression preserves all of the file's original data and therefore is preferable where no content modification is acceptable. Advantageously, providing lossy compression achieves smaller file sizes, however, it will be appreciated that the lossy algorithms accept some content degradation. Therefore, lossy compression is preferable where imperfect replication is acceptable at the modification stage.
Once the files have been compressed 41 1 , the compressed versions of the project data and audio/media files are uploaded by the upload/download module 110 to cloud file storage 11 1. When all the files have been processed 412, the collaboration module 101 informs the server 112 that the upload(s) are complete 413. In response 414, the notification module 114 in the server 112 marks the snapshot as the 'active' snapshot for the project. Once the active snapshot is set, other users may be notified 415 by the sync controller 106 that a new version of the media project to available for download. The users may be notified by a visual or audio indication, an email update or message popup. It will be appreciated that any form or type of visual or audio indication may be provided. Additionally or alternatively, passive notification can be provided wherein a user will only be notified as to the updated status when the user seeks access to or views the particular file. Any suitable visual or audio indication may be provided to notify of an update. The visual or audio indications can provide information regarding the modifications themselves; for example, they may flag a particular time segment thereby indicating the changes made to other users. In some embodiments, no update notification is provided. In other embodiments, a description of the update may be provided.
Step 2b: First project pull from server
Once the media project is provided at the server 112, the media project is available to be pulled therefrom by any potential collaborator. Figure 6 is a flow diagram illustrating an exemplary process for the first project pull from the server and Figure 7 illustrates the flow of the exemplary processes of the Figure 6 embodiment. In this example, the collaborator is invited to collaborate on a media project. It will be appreciated that in some embodiments, a collaborator may send a collaboration request in respect of one or more project files to the originator. Additionally or alternatively, predefined groups of collaborators can be set up such that each of the member of a group are always notified of any updates to project files by any of the collaborators regardless of the originator and/or without the need for the issuance of invites. It will be appreciated that the notifications can be adapted/adjusted by the user or can be set as standard.
In this example, person B, a collaborator, accepts an invite to be involved with a particular project file using an email link and/or in-app notification 601.
At 602, the server 112 notifies the collaborator via the notifications module 1 15 of a new version of the media project and sends the collaborator a snapshot via API 113. The snapshot may simply contain a list of files with metadata provided by project metadata module 1 14.
For each snapshot 604, the sync module 107 determines whether the file(s) exists on the local computer and/or only as a snapshot 605 by comparing the snapshot with metadata 108 from the file system module 103. As the first project pull is illustrated herein, the upload/download module 110 of the sync module 107 will download the compressed file 606 from the cloud file storage 11 1 where the file exists in only snapshot on the collaborator's computer. Although the compressed file is downloaded from the cloud file storage 11 1 per 607, it will be appreciated that the compressed file may be obtainable from any other location; for example, directly from a third party computer (e.g. the originator's). The upload/download module 110 then decompresses the file into an uncompressed format 608. 'Format' here refers to file format e.g. AIFF, WAV, AAC or 'audio codec'. In the example where the file was compressed using GZIP, decompressing the file reverts the file into original format. Where the file was compressed using lossy compression, the uncompressed proxy representation may not be identical to the original. It will be appreciated that an indication can be provided to the collaborator as to whether or not the present version of the file is identical to that of the original (i.e. if the quality corresponds to that of the original). Alternatively, the editing module 102 may treat the decompressed version as if it were the original and provide the user with no indication as to the format or quality of the present version.
Move to the original location 609 in the project package. The word 'location' here refers to the 'path internal to project'. The original location is recorded in the snapshot during the initial push to the server.
Step 3: Edit by collaborator
When the proxy media is with the collaborator, he may edit the media project thereby creating a new media/audio file(s) 801. Figure 8 is a flow diagram illustrating an exemplary process for subsequent edits to the media project and Figure 3 is a schematic diagram illustrating the flow of the exemplary processes of the embodiment depicted in Figure 8.
The collaborator edits the project using the editing module 102. As the user is editing the project, a new audio file is created. The collaborator may then edit the media project by adding tracks and/or effects, including providing fading, equalizing, distorting, reverberating, volume control etc.
It will be appreciated that not all editing will create new audio files. Some edits may only involve modifications to the project files, some will also involve the creation of one or more audio files. Even where new audio files are not created, a similar process and steps as those exemplified herein will be observed.
The file system observer 105 will note that the media project has been updated and labels the project as 'needing sync' 802. It will be appreciate that the editing module observer 104 and/or the file system observer 105 may monitor the project editing module 102 and/or the file system module 103 on a continuous or intermittent basis. Additionally or alternatively, the project editing module 102 may notify the monitoring module that the project is being updated.
As the user closes the media project 803, the sync controller 106 initiates the synchronization process. Although in this embodiment closing the media project after editing initiates the sync, other triggers may be provided; for example, on user or automatic saves, on user exiting/closing the editing module 102, at predetermined time intervals and/or on user express triggering of a synchronization function.
Additionally or alternatively, the editing module observer 104 and/or the file system observer 105 may request confirmation as to whether the file has been edited and therefore whether a sync is required, i.e. by requesting this information from the project editing module 102 or the editing module 102 or these modules may push this information to the observer modules. In an alternative embodiment, the project editing module 102 and editing module observer 104 may be provided in an integrated format such that the editing module observer 104 is simply a functionality of the project editing module 102 or vice versa. In such an embodiment, the editing module 102 provides to the server indications of any updates and synchronization requirements.
Step 4a: Sync back to person A Once the collaborator's edits have been completed 901 , the second synchronization processes commences with a push of the proxy data (e.g. the new media files) to the server 112 from the collaborator. Figure 9 is a flow diagram illustrating an exemplary process for the push update to the server according to an embodiment with Figure 5 illustrating the flow of the exemplary processes of Figure 9. This step may follow a similar format as with step 2a but for the fact that an identifier has already been created 902. As such, after the sync controller 106 initiates synchronization operations, and the collaboration tool 101 determines that the media project has a unique identifier (UID) attributed thereto, the sync module 107 makes a snapshot of the media project from the file system module 103 per step 903. The snapshot is sent to the server 112, and for each file in the snapshot 904, it is checked whether any file in the storage 1 11 has the same signature per step 905. If so, as depicted at step 906, no further steps are taken. However, if no file having the same signature is identified, per step 907, the project file is requested from the collaboration tool 101.
The collaboration tool 101 at step 908 determines what type of file is being dealt with, particularly whether the file is an audio file. If so, the compression module 109 in the collaboration tool 101 compresses the file(s) using lossy codec (e.g. AAC) as per 909 and if not, as depicted at 910, the compression module 109 compresses the file(s) uses general-purpose compression (GZIP).
Once the files have been compressed 911 , the compressed versions are uploaded by the upload/download module 110 to cloud file storage 1 11.
When all the files have been processed 912, the collaboration module 101 informs the server 112 that the upload(s) are complete 913. In response thereto 914, the notification module 114 in the server 112 marks the snapshot as the 'active' snapshot for the project. Once the active snapshot is set, other users may be notified 915 by the sync controller 106 that a new version of the media project to available for download. The users may be notified by a visual or audio indication, an email update or message popup, or any other suitable means for notification.
Step 4b: Pull update to server
To finish the second synchronization process, the proxy data is pulled from the server to the originator. Figure 10 is a flow diagram illustrating an exemplary process for the pull update from the server and Figure 5 is a schematic diagram illustrating the flow of the exemplary process of Figure 10. This step follows a similar format to step 2b. However, when the client computer determines the status of the project file, the file can exist in both local and/or snapshot.
In this example, the new snapshot finished uploading and was set as the new 'active snapshot' 1001. At 1002, the server 112 notifies the originator via the notifications module 1 15 of new version of media project and sends the originator a snapshot via API 113. The snapshot may contain a list of files with metadata 1003 provided by project metadata module 114.
For each file in the snapshot 1004, the sync module 107 determines whether the file exists on the local computer and/or only as a snapshot by comparing the snapshot with metadata 108 from the file system module 103. If the file exists only in local project 1005, the local file is deleted. This would be the case where, for example, the project file was deleted by another user. If the file exists in both local and snapshot 1006, the sync module 107 compares the signatures, or hashes. If the signatures are the same, no further action is taken 1007. If, however, they are different, the upload/download module 110 of the sync module 107 downloads the compressed file 1008. Additionally, the upload/download module 1 10 of the collaboration tool 101 will download the compressed file 1008 from the cloud file storage 1 11 where the file exists in only snapshot on the collaborator's computer. Although the compressed file is downloaded from the cloud file storage 111 per 1009 in this embodiment, it will be appreciated that the compressed file may be obtainable from any other location; for example, pushed/pulled directly from a third party computer (e.g. the originator's).
The upload/download module 110 then decompresses the file into an uncompressed format 1010. As mentioned above, in the example where the file was compressed using GZIP, decompressing the file reverts the file into original format. Where the file was compressed using lossy compression, the uncompressed proxy representation may not be identical to the original. It will be appreciated that an indication can be provided to the originator as to whether or not the present version of the file is identical to the original (i.e. if the quality corresponds to that of the original). Alternatively, the system can be configured such that the editing module 102 may treat the decompressed version as if it were the original and provide the user with no indication as to the format or quality of the present version. The decompressed file is then moved to the original location 1011 in the project package.
Any number of iterations of the above steps may occur as is necessary; for example, depending on the number of collaborators editing the media project and/or the number of edits occurring in respect of the media project.
Step 5a: Gather full resolution media to server
Finally, when the project is finished, and a full resolution output is required, a high-resolution version of the media project may be compiled for each of the originators and/or collaborators. Figure 11 is a flow diagram illustrating an exemplary process for the compile full resolution media to server according to an embodiment. The originator and/or one or more collaborators may request a full resolution media version of the media content or one can be compiled automatically. A collaborator in this example changes the project quality setting to 'lossless'. In some embodiments, this process may be undertaken by all the users that have collaborated on the project or indeed the public at large. In alternative embodiments, security settings can be provided such that only some users, for example the originator, may undertake this process.
The collaboration tool 101 makes a snapshot of the project 1101. For each file in the snapshot
1102, the server 112 determines whether it has a file with the same signature in lossless form
1103. If there is 1104, no further action is taken. If not 1105, the lossless form of the file is requested from the originator/collaborator therefore.
The client checks whether they have the original or proxy media version of the file 1106. If they have the proxy 1107, no further action is taken. If they have the original version 1108, the file is compressed using for example lossless audio codec by the compression module 109. The compressed version is then uploaded via the upload/download module 1 10 to the cloud file storage 11 1. As each of the editors (or collaborators) creates a new audio track when working on a project but work on proxy versions of the other audio tracks, this means that only one 'original'/lossless version of the audio file which was added to the media project needs uploading. The remaining 'lossy' or 'proxy' versions of the additional audio files do not require uploading in order to create a complete high-resolution version of the track. This advantageously reduces individual processing and bandwidth requirements.
Step 5b: Clients download high-resolution media from server
Each of the originators and/or collaborators (and optionally third parties) can then download the high-resolution media from the server such that exact copies of the original source media is provided. Figure 12 is a flow diagram illustrating an exemplary process for the download high- resolution media from the server and Figure 7 is a schematic diagram illustrating the flow of the exemplary processes of the embodiment depicted in Figure 12.
The system settings can be such that only the originator of the file may compile the audio track in high resolution. This feature may be present in order to reduce the risk of ownership disputes. It will be appreciated that the setting can be set such that any person or groups of persons may be configured to have high resolution download ability.
In this example, another user, collaborator or otherwise, uploads lossless versions of their audio files 1201. It will be appreciated that access to upload and/or download audio/media files may be set by users or can be hardwired into the functionality of the collaboration system 100. Once the lossless version has been uploaded, server 112 notifies other users, such as the originator or other collaborators, of new version of project 1202 being available through the API 113. The server 112 sends a snapshot which may contain list of files with metadata 1203.
For each snapshot 1204, it is determined whether a lossless version is available locally. Where the lossless version is comprised locally, no further action is required 1205. Where the proxy version is available locally but the snapshot contains lossless version, the system triggers the download of the compressed file from the cloud file storage 11 1.
At 1208, the system triggers decompression of the file into the original uncompressed format. Once the file has been decompressed, the uncompressed or original version is moved to the original location in the project package 1209.
Additional Exemplary Functionalities
An exemplary graphic user interface of the embodiments described herein is depicted in the screenshot provided in Figure 13. The exemplary computer screen 1300 details an icon 1301 providing pop up access to the graphic user interface 1302 detailing the workings in respect of the functioning various embodiments. It will be appreciated that although in this example the graphic user interface 1302 is presented in the form of a pop up window, any other type of window or page can be provided. In the exemplary graphic user interface 1302, the following features are illustrated: an Open elsewhere' feature 1303, a sync status feature 1304, indications of the collaborators working on a project 1305, an icon for inviting one or more users to collaborate on a project 1306 and an invite from a user to collaborate on a project 1307.
The Open elsewhere' feature 1303 addresses the issue of potential conflict from occurring; specifically, conflict occurring where a particular project or particular audio file in the project is being modified, adapted and/or changed. Such conflict between the files can cause file corruption. To deal with the potential for conflict, the system may deny access to a second user endeavouring to access a file currently accessed by another user (e.g. where a second user is modifying the compressed version of the same project file). Additionally or alternatively, a visual or audio indication can be provided to indicate that the file is effectively 'checked out'. The Open elsewhere' feature 1303 is one such exemplary indication.
Additionally or alternatively, the system can comprise rules or conditions which set out what version of a project should be maintained where there is a potential for conflict; for example, where two or more people have been working on the same audio file. Possible rules can include any one or more of: the first to upload wins with any subsequent version being discarded, any subsequent version overwrites a previous rendition, any version created by 'preferred' or predetermined users (e.g. the originator or predetermined 'advanced' users) is favoured, a voting feature may be provided allowing collaborators and/or other users to vote on their preferred edit etc. Alternatively, both versions of a potentially conflicting audio file can be maintained. In such embodiments, the audio files can be categorized as potentially conflicting and are preferably labelled and stored as such. When a high resolution version of the project is created or when a preview (albeit in high or low resolution) is requested, instead of favouring one file over the other as described above, the system may request that a user decide which audio file to keep and which to discard. It will be appreciated that although the same audio file has been edited by two or more users, the audio files may themselves not include a track which is conflicting as the two or more users can be working on different parts (e.g. different time segments) of the track. Therefore, the system can provide users with a duplicate, merge and/or flag functionality to allow a choice to be made regarding the tracks at a later stage. Alternatively, the user may choose to keep both audio files and duplicate the remaining audio/media files and associated project data such that two separate project files are created.
The sync status feature 1304 indicates the status of on-going synchronization processes. In this example, the synchronization is on-going as indicated by the 'syncing' label. Other labels such as sync paused, sync finished etc. can be provided. The status of uploads/downloads can also be detailed herein; for example, detailing what files are to be uploaded/downloaded and the status thereof, e.g. such as providing an indication of the speed of the transfer.
Depictions of the collaborators working on a project 1305 are preferably provided on the graphic user interface. By so providing, a collaborator is provided with a quick indication as to who is involved in the project. Furthermore, an icon for inviting one or more users to collaborate on a project 1306 is provided for facilitating easy collaboration. In this example, an invite from a user to collaborate on a project 1307 is depicted.
It will be appreciated that an additional accounts or options page 1308 can be provided in the graphic user interface which provides an interface setting out various options by which a user can adapt and personalize various settings. Additionally or alternatively, a 'quality' icon can be provided 1309 which allows a user to select or specify whether they wish to work in lossy or lossless. In additional or in alternative embodiments, control over the settings for a particular project may require communal consensus or may be set by the originator of the project. Additional or alterantive features or options which can be provided include the ability to remove collaborators, and/or pause/resume syncing.
The collaboration system or tool described above may be implemented at least in part in computer software. Those skilled in the art will appreciate that the apparatus described above may be implemented using general purpose computer equipment or using bespoke equipment. The different components of the systems may be provided by software modules executed on a computer.
The hardware elements, operating systems and programming languages of such computers are conventional in nature, and it is presumed that those skilled in the art are adequately familiar therewith. In an embodiment the server may be centrally located and the clients are distributed. In other embodiments, the server functions may be implemented in a distributed fashion on a number of similar platforms, to distribute the processing load.
Here, aspects of the methods and apparatuses described herein can be executed on a computing device such as a server. Program aspects of the technology can be thought of as "products" or "articles of manufacture" typically in the form of executable code and/or associated data that is carried on or embodied in a type of machine-readable medium. "Storage" type media include any or all of the memory of the computers, processors or the like, or associated modules thereof, such as various semiconductor memories, tape drives, disk drives, and the like, which may provide storage at any time for the software programming. All or portions of the software may at times be communicated through the Internet or various other telecommunications networks. Such communications, for example, may enable loading of the software from one computer or processor into another computer or processor. Thus, another type of media that may bear the software elements includes optical, electrical and electromagnetic waves, such as used across physical interfaces between local devices, through wired and optical landline networks and over various air-links. The physical elements that carry such waves, such as wired or wireless links, optical links or the like, also may be considered as media bearing the software. As used herein, unless restricted to tangible non-transitory "storage" media, terms such as computer or machine "readable medium" refer to any medium that participates in providing instructions to a processor for execution.
Hence, a machine-readable medium may take many forms, including but not limited to, a tangible storage carrier, a carrier wave medium or physical transaction medium. Non-volatile storage media include, for example, optical or magnetic disks, such as any of the storage devices in computer(s) or the like, such as may be used to implement the encoder, the decoder, etc. shown in the drawings. Volatile storage media include dynamic memory, such as the main memory of a computer platform. Tangible transmission media include coaxial cables; copper wire and fibre optics, including the wires that comprise the bus within a computer system. Carrier-wave transmission media can take the form of electric or electromagnetic signals, or acoustic or light waves such as those generated during radio frequency (RF) and infrared (IR) data communications. Common forms of computer-readable media therefore include for example: a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, DVD or DVD-ROM, any other optical medium, any other physical storage medium with patterns of holes, a RAM, a PROM and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave transporting data or instructions, cables or links transporting such a carrier wave, or any other medium from which a computer can read programming code and/or data. Many of these forms of computer readable media may be involved in carrying one or more sequences of one or more instructions to a processor for execution.
Those skilled in the art will appreciate that while the foregoing has described what are considered to be the best mode and, where appropriate, other modes of performing the invention, the invention should not be limited to specific apparatus configurations or method steps disclosed in this description of the preferred embodiment. It is understood that various modifications may be made therein and that the subject matter disclosed herein may be implemented in various forms and examples, and that the teachings may be applied in numerous applications, only some of which have been described herein. It is intended by the following claims to claim any and all applications, modifications and variations that fall within the true scope of the present teachings. Those skilled in the art will recognize that the invention has a broad range of applications, and that the embodiments may take a wide range of modifications without departing from the inventive concept as defined in the appended claims. In particular, it will be understood that the benefits and advantages described above may relate to one embodiment or may relate to several embodiments. The embodiments are not limited to those that solve any or all of the stated problems or those that have any or all of the stated benefits and advantages. Additionally, any reference to 'an' item refers to one or more of those items. The term 'comprising' is used herein to mean including the method blocks or elements identified, but that such blocks or elements do not comprise an exclusive list and an apparatus may contain additional blocks or elements and a method may contain additional operations or elements. Furthermore, the blocks, elements and operations are themselves not impliedly closed. Furthermore, the steps of the methods described herein may be carried out in any suitable order, or simultaneously where appropriate. The arrows between boxes in the figures show one example sequence of method steps but are not intended to exclude other sequences or the performance of multiple steps in parallel. Additionally, individual blocks may be deleted from any of the methods without departing from the spirit and scope of the subject matter described herein. Aspects of any of the examples described above may be combined with aspects of any of the other examples described to form further examples without losing the effect sought. Where elements of the figures are shown connected by arrows, it will be appreciated that these arrows show just one example flow of communications (including data and control messages) between elements. The flow between elements may be in either direction or in both directions. Although the present invention has been described in terms of specific exemplary embodiments, it will be appreciated that various modifications, alterations and/or combinations of features disclosed herein will be apparent to those skilled in the art without departing from the scope of the invention as set forth in the following claims.

Claims

CLAIMS:
1. A collaboration system for allowing one or more users to access for manipulation one or more media projects, the system comprising: means for accessing one or more media projects over a communications network, wherein the media projects include one or more audio files and project data providing instructions relating the one or more audio files; means for compressing the one or more audio files of the one or more media projects such that compressed, proxy representations of the one or more audio files are produced; and means for sending and receiving the one or more media projects over the communications network, wherein the means for sending and receiving the one or more media projects transmit the compressed, proxy representations of the one or more audio files of the one or more media projects and the project data for manipulation to one or more users.
2. The collaboration system of claim 1 , further comprising means for decompressing the compressed, proxy representation to allow for manipulation of the proxy representations of the one or more audio files.
3. The collaboration system of claim 1 or claim 2, further comprising means compressing the project data.
4. The collaboration system of claim 3, wherein the means for decompressing are configurable to decompress the compressed project data.
5. The collaboration system of any preceding claim, wherein the one or more media projects include video files.
6. The collaboration system of any preceding claim, wherein the instructions include any one or more of: details of locations of the original audio tracks, details of any compressed versions of audio tracks, details of how the audio files are linked, details of how the audio files are compiled including timings, details of relative volumes of each of the audio files, and details of any modifications of the audio tracks.
7. The collaboration system of any preceding claim, further comprising means for manipulating the one or more media projects.
8. The collaboration system of claim 7, wherein manipulating the one or more media projects creates one or more additional audio files and associated project data.
9. The collaboration system claim 8, wherein means for compressing produce compressed, proxy representations of the one or more additional audio files and the means for sending and receiving transmit the one or more compressed, proxy versions of the one or more additional audio files.
10. The collaboration system of claim 9, further comprising means for compiling the compressed, proxy versions of the one or more audio files and the compressed, proxy versions of the one or more additional audio files.
11. The collaboration system of any preceding claim, further comprising notification means for providing notifications indicating the existence of compressed, proxy versions of the one or more audio files.
12. The collaboration system of any preceding claim, wherein the means for sending and receiving the one or more media projects is triggered by user action.
13. The collaboration system of any preceding claim, further comprising redistribution means for distributing compiled, decompressed or original versions of the one or more audio files and/or the one or more additional audio files.
14. The collaboration system of claim 13, wherein the redistribution means sources the one or more audio files and/or the one or more additional audio files from one or more sources and compiles the one or more files.
15. A computer-implemented method for allowing one or more users to access for manipulation one or more media projects, the method comprising the steps of: accessing one or more media projects over a communications network, wherein the media projects include one or more audio files and project data providing instructions relating the one or more audio files; compressing the one or more audio files of the one or more media projects such that compressed, proxy representations of the one or more audio files are produced; and transmitting the one or more media projects over the communications network, wherein the transmission is of the compressed, proxy representations of the one or more audio files of the one or more media projects and the project data for manipulation to one or more users.
16. The method of claim 15, further comprising the step of decompressing the compressed, proxy representation to allow for manipulation of the proxy representations of the one or more audio files.
17. The method of claim 15 or claim 16, further comprising the step of compressing the project data.
The method of claim 17, wherein the step of decompressing decompresses the pressed project data.
19. The method of any of claims 15 to 18, wherein the one or more media projects include video files.
20. The method of any of claims 15 to 19, wherein the instructions include any one or more of: details of locations of the original audio tracks, details of any compressed versions of audio tracks, details of how the audio files are linked, details of how the audio files are compiled including timings, details of relative volumes of each of the audio files, and details of any modifications of the audio tracks.
21. The method of any of claims 15 to 20, further comprising the step of facilitating means for manipulating the one or more media projects.
22. The method of claim 21 , wherein manipulating the one or more media projects creates one or more additional audio files and associated project data.
23. The method of claim 22, wherein the step of compressing produce compressed, proxy representations of the one or more additional audio files and the step of transmitting transmits the one or more compressed, proxy versions of the one or more additional audio files.
24. The method of claim 23, further comprising step of compiling the compressed, proxy versions of the one or more audio files and the compressed, proxy versions of the one or more additional audio files.
25. The method of any of claims 15 to 24, further comprising the step of providing notifications indicating the existence of compressed, proxy versions of the one or more audio files.
26. The method of any of claims 15 to 24, wherein the step of transmitting the one or more media projects is triggered by user action.
27. The method of any of claims 15 to 27, further comprising redistribution means for distributing compiled, decompressed or original versions of the one or more audio files and/or the one or more additional audio files.
28. The method of claim 27, wherein the redistribution means sources the one or more audio files and/or the one or more additional audio files from one or more sources and compiles the one or more files.
29. Computer-readable medium comprising instructions which, when executed by an apparatus, cause the apparatus to perform a computer process comprising the steps of any of claims 15 to 28.
PCT/GB2016/050322 2015-02-13 2016-02-10 Method, system and apparatus for facilitating collaboration on media projects WO2016128749A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB201502491A GB201502491D0 (en) 2015-02-13 2015-02-13 Method, system and apparatus for facilitating collaboration on media projects
GB1502491.2 2015-02-13

Publications (1)

Publication Number Publication Date
WO2016128749A1 true WO2016128749A1 (en) 2016-08-18

Family

ID=52781615

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/GB2016/050322 WO2016128749A1 (en) 2015-02-13 2016-02-10 Method, system and apparatus for facilitating collaboration on media projects

Country Status (2)

Country Link
GB (1) GB201502491D0 (en)
WO (1) WO2016128749A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11158014B2 (en) 2020-02-29 2021-10-26 Aurign, Inc. System and methods for tracking authorship attribution and creating music publishing agreements from metadata
WO2021240138A1 (en) * 2020-05-24 2021-12-02 Semantic Audio Limited Collaboration system
US11500971B2 (en) 2020-02-29 2022-11-15 Aurign, Inc. System for creating music publishing agreements from metadata of a digital audio workstation

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ANONYMOUS: "Dropbox - Bei Dropbox sind Ihre Dateien gut aufgehoben", 15 July 2014 (2014-07-15), XP055258687, Retrieved from the Internet <URL:https://web.archive.org/web/20140715193415/https://www.dropbox.com/security> [retrieved on 20160316] *
ANONYMOUS: "Dropbox (service) - Wikipedia, the free encyclopedia", 8 February 2015 (2015-02-08), XP055258692, Retrieved from the Internet <URL:https://en.wikipedia.org/w/index.php?title=Dropbox_(service)&oldid=646218104> [retrieved on 20160316] *
G.W. CHILDS: "Review: Gobbler 2.0 : Ask.Audio", 14 November 2014 (2014-11-14), XP055258686, Retrieved from the Internet <URL:https://ask.audio/articles/review-gobbler-20> [retrieved on 20160316] *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11158014B2 (en) 2020-02-29 2021-10-26 Aurign, Inc. System and methods for tracking authorship attribution and creating music publishing agreements from metadata
US11500971B2 (en) 2020-02-29 2022-11-15 Aurign, Inc. System for creating music publishing agreements from metadata of a digital audio workstation
WO2021240138A1 (en) * 2020-05-24 2021-12-02 Semantic Audio Limited Collaboration system

Also Published As

Publication number Publication date
GB201502491D0 (en) 2015-04-01

Similar Documents

Publication Publication Date Title
US11516288B2 (en) Synchronized content library
US10482067B2 (en) Synchronization of shared folders and files
US10360536B2 (en) Implementing a consistent ordering of operations in collaborative editing of shared content items
WO2016192327A1 (en) Network-based file cloud synchronization method
US10972569B2 (en) Apparatus, method, and computer program product for heterogenous compression of data streams
US10958744B2 (en) Identifying and managing redundant digital content transfers
JP2011508342A (en) Asynchronous replication
US11321339B2 (en) Data integration for distributed and massively parallel processing environments
WO2016128749A1 (en) Method, system and apparatus for facilitating collaboration on media projects
US20150095451A1 (en) Facilitating access to content from group interactions
US20150163326A1 (en) Approaches for remotely unzipping content
JP2016048920A (en) Method and system for comparing media assets
Eken et al. Analyzing distributed file synchronization techniques for educational data
CN115495658A (en) Data processing method and device
CN115129425A (en) Method and device for copying mirror image
US11442892B2 (en) File and data migration to storage system
US10867125B2 (en) Systems and methods for synchronizing comments to an electronic document across platforms
CN112632016A (en) File editing method and device
CN110750410B (en) Method and device for monitoring database logs
CN114896334A (en) Database change and distribution method and device
US20180007133A1 (en) Server-to-server content distribution
Ferdinandus SMS based Server Monitoring and Administration System for Cinergix (Pvt) Ltd

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16704902

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 29/11/2017)

122 Ep: pct application non-entry in european phase

Ref document number: 16704902

Country of ref document: EP

Kind code of ref document: A1