A computer-implemented method of providing video clip playback, the method including the steps of: (i) receiving a live video feed; (ii) converting the live video feed into a compressed format structure, the compressed format structure including a hierarchy of more than two levels of temporal resolution of frames, each respective level of the hierarchy including frames corresponding to a respective temporal resolution of the respective level of the hierarchy, but not including frames which are included in one or more lower levels of lower temporal resolution of frames of the hierarchy; (iii) uploading the compressed format structure to a first server; (iv) receiving an electronic edit decision list which defines how to manipulate the compressed format structure; (v) saving the electronic edit decision list to the first server, or to a second server; (vi) receiving a request to provide in a web browser executing on a user terminal a video clip playback corresponding to a video clip defined by the compressed format structure and the electronic edit decision list; (vii) sending to the web browser code executable in the web browser to provide the video clip playback corresponding to the video clip defined by the compressed format structure stored on the first server and the electronic edit decision list saved on the first server or on the second server, and (viii) responding to requests from the code when executing in the web browser, to provide content corresponding to the compressed format structure stored on the first server, in accordance with the electronic edit decision list saved on the first server or on the second server, to the web browser, to provide the video clip playback; in which an order in which video and audio of the compressed format structure is uploaded to the first server is determined by an upload ordering system, including the steps of the upload ordering system (a) uploading non-uploaded compressed audio, where available, as the highest priority; (b) uploading non-uploaded coarsest temporal resolution video frames as the next highest priority; (c) uploading the non-uploaded next-coarsest temporal resolution video frames as the next highest priority; (d) uploading in this way until all video and audio frames have been uploaded. (i) receiving a live video feed; (ii) converting the live video feed into a compressed format structure, the compressed format structure including a hierarchy of more than two levels of temporal resolution of frames, each respective level of the hierarchy including frames corresponding to a respective temporal resolution of the respective level of the hierarchy, but not including frames which are included in one or more lower levels of lower temporal resolution of frames of the hierarchy; (iii) uploading the compressed format structure to a first server; (iv) receiving an electronic edit decision list which defines how to manipulate the compressed format structure; (v) saving the electronic edit decision list to the first server, or to a second server; (vi) receiving a request to provide in a web browser executing on a user terminal a video clip playback corresponding to a video clip defined by the compressed format structure and the electronic edit decision list; (vii) sending to the web browser code executable in the web browser to provide the video clip playback corresponding to the video clip defined by the compressed format structure stored on the first server and the electronic edit decision list saved on the first server or on the second server, and (viii) responding to requests from the code when executing in the web browser, to provide content corresponding to the compressed format structure stored on the first server, in accordance with the electronic edit decision list saved on the first server or on the second server, to the web browser, to provide the video clip playback; (a) uploading non-uploaded compressed audio, where available, as the highest priority; (b) uploading non-uploaded coarsest temporal resolution video frames as the next highest priority; (c) uploading the non-uploaded next-coarsest temporal resolution video frames as the next highest priority; (d) uploading in this way until all video and audio frames have been uploaded.