Changes between Version 1 and Version 2 of FTP Batch upload

Show
Ignore:
Timestamp:
09/20/10 15:15:49 (3 years ago)
Author:
robert
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • FTP Batch upload

    v1 v2  
    1 = Batch upload of media files by FTP in MediaMosa = 
    2  
    3 Author: Madcap[[BR]] 
    4 Date: August 31th, 2010[[BR]] 
    5 Version: 0.6-english0.3[[BR]] 
    6  
    7 == Contents == 
    8  
    9     * Introduction 
    10     * Asset, media file and metadata 
    11     * What has to be uploaded? 
    12     * The metadata file 
    13           o Simple Dublin Core[[BR]] 
    14           o Qualified Dublin Core 
    15     * The video upload file 
    16           o Structure and elements[[BR]] 
    17           o Actions and related elements 
    18  
    19 == Introduction == 
    20  
    21 MediaMosa is a solid, flexibel and scalable media distribution platform. It is the foundation of several succesful video services developed by SURFnet and Stichting Kennisnet, to the benefit of (the field of) education in the Netherlands. MediaMosa was published under an open source licence in the middle of 2009 by both organizations, and by software developer Madcap. 
    22  
    23 At he moment MediaMosa is able to store and playback video on demand. Video files are stored in a repository and played back by streaming servers. The functionality in MediaMosa to upload media files is split into two components. The Batch Upload component allows registered MediaMosa users to upload multiple files to MediaMosa simultaneously using FTP. EGA's (End User Applications) and EGA end users can use the File Upload component. This document aims at the end user who wants to upload media files via FTP, and focuses on the requirements at which the metadata has to meet. 
    24  
    25 == Asset, media file and metadata == 
    26 A central object in the organization of content within MediaMosa is the so called asset, which can be considered a unit of content. An asset mainly consists of one or more media files (video, video stills) and metadata that describes the asset. In MediaMosa a media file is always part of one single asset, but an asset can contain multiple media files. If it does, these files are versions of the same media clip in different file formats, bit rates or resolutions. 
    27  
    28 The metadata records information about the properties of an asset, concerning the content of the media file (title, language, publisher, etc.), or the technical properties (file format, resolution, bitrate, etc.). Technical metadata is automatically determined by MediaMosa while analyzing the uploaded media file. 
    29  
    30 == What has to be uploaded? == 
    31  
    32 To upload an asset, three files are mandatory: 
    33  
    34    1. the media file(s) (e.g. video.wmv), 
    35    2. a metadata file that describes the media file in XML, using the Dublin Core Metadata Element Set, 
    36    3. a video upload file (.vuf), laying down the upload procedure in a XML format. 
    37  
    38 The video upload file contains references to the media and metadata files. Therefore these media and metadata files should have been uploaded before MediaMosa can upload the video upload file. 
    39  
    40 == The metadata file == 
    41  
    42 MediaMosa uses the Dublin Core Metadata Element Set (DCMES) to describe the media file in XML. The Dublin Core standard includes two levels: Simple and Qualified. Simple Dublin Core contains fifteen elements; Qualified Dublin Core includes three additional elements, as well as a group of element refinements. A refined element (or qualifier) shares the meaning of the unqualified element, but with a more specific scope. 
    43 Simple Dublin Core 
    44  
    45 The Simple or unqualified Dublin Core Metadata Element Set consists of 15 metadata elements: 
    46  
    47     * dc:title 
    48     * dc:creator 
    49     * dc:subject 
    50     * dc:description 
    51     * dc:publisher 
    52     * dc:contributor 
    53     * dc:date 
    54     * dc:type 
    55     * dc:format 
    56     * dc:identifier 
    57     * dc:source 
    58     * dc:language 
    59     * dc:relation 
    60     * dc:coverage 
    61     * dc:rights 
    62  
    63 A comprehensive explanation of these 15 elements can be found at: http://dublincore.org/documents/dces/ 
    64  
    65 The Dublin Core XML schema can be found at: http://www.openarchives.org/OAI/2.0/oai_dc.xsd 
    66 == Qualified Dublin Core == 
    67  
    68 MediaMosa doesn't support the complete Qualified Dublin Core, but only a selection which contains the next qualifiers: 
    69  
    70     * dcterms:alternative 
    71     * dcterms:abstract 
    72     * dcterms:created 
    73     * dcterms:issued 
    74     * dcterms:spatial 
    75     * dcterms:temporal 
    76     * dcterms:hasFormat 
    77     * dcterms:isFormatOf 
    78     * dcterms:medium 
    79     * dcterms:extent 
    80     * dcterms:license 
    81     * dcterms:rightsHolder 
    82     * dcterms:isReferencedBy 
    83     * dcterms:isPartOf 
    84  
    85 The meaning and use of these qualifiers is extensively explained at: http://dublincore.org/documents/usageguide/qualifiers.shtml 
    86  
    87 The Qualified Dublin Core XML schema can be found at: http://dublincore.org/schemas/xmls/qdc/dcterms.xsd 
    88 == The video upload file == 
    89  
    90 The upload procedure is laid down in the Video Upload File (e.g. myvideos.vuf). With the information in this file the media file(s) and metadata will be related to each other and included in MediaMosa. It enables the supplier of media files to save, update or delete media files and metadata in the database. The FTP account defines the account under which the videos will be placed in the database, so this can not be established in the video upload file. 
    91 == Structure and elements == 
    92  
    93 The video upload file is a XML file with a specific structure and elements: 
    94 {{{ 
    95 <FTPupload> the root element 
    96   <email>[EMAIL ADDRESS]</email> the email adress where upload status messages will be sent to 
    97   <videos> the list of assets that are to be uploaded 
    98     <video> an asset 
    99       <action>[save|update|delete]</action> the action that has to be executed on the media file(s) and/or metadata file 
    100       <referenceId>[STRING]</referenceId> an unique identifier of the asset, created by the uploader 
    101       <metadataFile>[FILENAME]</metadataFile> a reference to the metadata file 
    102       <formats> the list of media files that are to be uploaded 
    103         <format> a media file 
    104           <action>[save|update|delete]</action> the action that has to be executed on the media file 
    105           <external>[URL]</external> a reference to the media file if it is stored outside MediaMosa 
    106           <mediaFile>[FILENAME]</mediaFile> a reference to the media file (if is has to be uploaded to MediaMosa) 
    107           <available>[yes|no]</available> indicates whether the media file has to be visible in the interface or not 
    108           <downloadable>[yes|no]</downloadable> indicates whether the the media file has to downloadable or not 
    109           <createstill>[yes|no]</createstill> indicates whether a video still has to be created or not 
    110           <frametime>[INTEGER]</frametime> the number of seconds after the beginning of the video, indicating the frame of which the still is created 
    111         </format> 
    112       </formats> 
    113     </video> 
    114   </videos> 
    115   <collections> a list of collections in which all of the uploaded media files have to be included 
    116     <collectionId>[STRING]</collectionId> an unique identifier of a collection 
    117   </collections> 
    118   <categories> a list of categories to which all of the uploaded media files have to be related 
    119     <categoryId>[STRING]</categoryId> an unique identifier of a category 
    120   </categories> 
    121   <accessRules> a list of rules that set down which end users are allowed to playback the media files in this upload  
    122     <accessRule> 
    123       <ruleType>[DOMAIN|REALM|GROUP|APP]</ruleType> one of the four types of user sets 
    124       <ruleValue>[STRING]</ruleValue> the value of the domain (e.g. surfnet.nl), realm (e.g. peter@surfnet.nl), group (e.g. academia.group) 
    125     </accessRule> 
    126   </accessRules> 
    127   <transcodings> a list of transcodings which have to be executed on all of the uploaded media files 
    128     <transcodingName>[TRANSCODING PROFILE]</transcodingName> the name of a transcoding profile laid down before 
    129   </transcodings> 
    130   <recentList>[yes|no]</recentList> indicates whether or not all of the uploaded media files have to be included in a variety of lists on the website 
    131 </FTPupload> 
    132 }}} 
    133  
    134 == Actions and related elements == 
    135  
    136 Depending on which 'action' has to be executed, some elements are mandatory: 
    137  
    138     * If 'video:action' is 'save' (resulting in a new asset with media file and metadata), then the following elements are mandatory: 
    139           o email 
    140           o video:referenceId 
    141           o video:type 
    142           o video:metadataFile 
    143           o video:format 
    144           o video:format:action (=save) 
    145           o video:format:mediaFile 
    146  
    147     * If 'video:action' is 'delete' (resulting in the complete removal of the media and metadata files), then the next two elements are mandatory: 
    148           o email 
    149           o video:referenceId 
    150  
    151     * If 'video:action' is 'update', with the intention to update the metadata file (resulting in the old metadata overwritten by the new, without changing the id), then the next elements are necessary: 
    152           o email 
    153           o video:referenceId 
    154           o video:metadataFile 
    155  
    156     * If 'video:action' is 'update', with the intention to delete, update or add a media file, then there are three options: 
    157          1. 'format:action' is 'delete' (resulting in the removal of the media file and its filename), 
    158          2. 'format:action' is 'update' (resulting in the replacement of the existing media file by a new one, without changing de id), 
    159          3. 'format:action' is 'save' (resulting in the addition of a new media file to the asset). 
    160           o 'video:format:mediaFile' is the mandatory element in all three cases 
    161  
    162     * The other metadata will only be handled under the following conditions: 
    163           o 'collections', 'categories', 'accessRules' and 'recentList' will only be handled if 'video:action' is 'save' or 'update' 
    164           o 'transcodings' will only be executed if 'video:format:action' is 'save' or 'update' 
     1=== Index of FTP Batch upload ===  
     2 * [wiki:"Introduction"] 
     3 * [wiki:"Installation"]