1schema_version: 0.3 2type: consumer 3identifier: xml 4title: XML 5version: 1 6copyright: Meltytech, LLC 7creator: Dan Dennedy 8license: LGPLv2.1 9language: en 10tags: 11 - Audio 12 - Video 13description: > 14 Serialise the service network to XML. 15 See docs/mlt-xml.txt for more information. 16 17notes: > 18 If you set a data property beginning with (and longer than) "xml_retain" on 19 the service connected to this consumer where the data is a mlt_service 20 pointer, then the pointed at service will also be serialized before the 21 connected service. This can be useful, for example, to save a playlist as 22 a media bin along with a multitrack. You can serialize more than one of these 23 additional services by setting more than property, each with a unique key 24 beginning with "xml_retain". 25 26bugs: 27 - Untested arbitrary nesting of multitracks and playlists. 28 - > 29 Property "id" is generated as service type followed by number if no 30 property named "id" exists, but it fails to guarantee uniqueness. 31 32parameters: 33 - identifier: resource 34 argument: yes 35 title: File 36 type: string 37 description: > 38 The name of a file in which to store the XML. 39 If the value does not contain a period (to start an extension), then 40 the value is interpreted as the name of a property in which to store the 41 XML. This makes it easy for an application to use the consumer to 42 serialize a service network and retrieve the XML in-memory. 43 readonly: no 44 required: no 45 mutable: no 46 default: stdout 47 widget: fileopen 48 49 - identifier: all 50 title: Process all frames 51 type: boolean 52 description: > 53 Without this option, the XML consumer does not process any frames 54 and simply serializes the service network. However, some filters (.e.g, 55 vid.stab) require two passes where the first pass performs some 56 analysis and stores the result in a property. Therefore, set this 57 property to 1 (true) to cause the consumer to process all frames 58 before serializing to XML. 59 default: 0 60 61 - identifier: title 62 title: Title 63 type: string 64 description: > 65 You can give the composition a friendly name that some applications may use. 66 67 - identifier: root 68 title: Base path 69 type: string 70 description: > 71 If a file name in the XML is relative, but not relative to the current 72 XML file's directory, then you can set the directory to which it is 73 relative here. 74 75 - identifier: no_meta 76 title: Exclude meta properties 77 type: boolean 78 description: > 79 Set this to disable the output of properties with the prefix "meta." 80 default: 0 81 widget: checkbox 82 83 - identifier: no_root 84 title: No root attribute 85 type: boolean 86 description: > 87 Set this to disable the output of the root attribute on the root element. 88 default: 0 89 widget: checkbox 90 91 - identifier: time_format 92 title: Time format 93 type: string 94 description: Output time-based values as timecode or clock formats. 95 values: 96 - frames 97 - smpte_df # SMPTE drop-frame timecode 98 - smpte_ndf # SMPTE non-drop-frame timecode 99 - smpte # or SMPTE - same as smpte_df 100 - timecode # same as smpte_df 101 - clock # or CLOCK 102 default: frames 103 widget: dropdown 104 105 - identifier: store 106 title: Include property prefix 107 type: string 108 description: > 109 To save additional properties that MLT does not know about, supply an 110 application-specific property name prefix that you are using. 111 112 - identifier: no_profile 113 title: No profile element 114 type: boolean 115 description: Set this to disable the output of the profile element. 116 default: 0 117 widget: checkbox 118