diff options
-rw-r--r-- | src/examples/elevate2018.yml | 2 | ||||
-rwxr-xr-x | src/flufigut.py | 13 | ||||
-rw-r--r-- | templates/flumotion/default/planet.xml | 14 |
3 files changed, 20 insertions, 9 deletions
diff --git a/src/examples/elevate2018.yml b/src/examples/elevate2018.yml index 1c6ea1d..a38db6f 100644 --- a/src/examples/elevate2018.yml +++ b/src/examples/elevate2018.yml @@ -45,7 +45,7 @@ globals: inputs: sdi-orig: type: decklink - master: true, + master: true properties: resolution: 1080p25 samplerate: 48000 diff --git a/src/flufigut.py b/src/flufigut.py index 611764c..272dbee 100755 --- a/src/flufigut.py +++ b/src/flufigut.py @@ -29,9 +29,10 @@ import string import random +import os import sys import yaml -# from jinja2 import Environment, FileSystemLoader +import jinja2 # helper functions ############################################ # @@ -476,6 +477,15 @@ class Planet: self._generate_records() return self._unassigned_components + def toXML(self, template_dir, output_file): + loader = jinja2.FileSystemLoader(os.path.join(template_dir, self._desc.globals['templates'])) + env = jinja2.Environment(loader=loader, line_statement_prefix='%%') + template = env.get_template('planet.xml') + planet_xml = template.render(globals=self._desc.globals, atmosphere=self.atmosphere, flow=self.flow) + + with open(output_file, 'wb') as f: + f.write(planet_xml.encode("utf8")) + f.write(b'\n') # Main ######################################################## # @@ -503,6 +513,7 @@ if __name__ == '__main__': print("- " + c) sys.exit(1) + p.toXML('../templates/flumotion/', 'output/planet.xml') print("****************************************************") print("** atmosphere **") print("**") diff --git a/templates/flumotion/default/planet.xml b/templates/flumotion/default/planet.xml index 7a45913..9c4e31a 100644 --- a/templates/flumotion/default/planet.xml +++ b/templates/flumotion/default/planet.xml @@ -20,37 +20,37 @@ <flow name="{{ globals.name }}"> <!-- raw-input, resizing and resampling --> -{% for name, component in flow['input'].items() %} +{% for name, component in flow['inputs'].items() %} {% include '%s.xml' % component.type %} {% endfor %} <!-- encoding --> <!-- audio --> -{% for name, component in flow['encoder_audio'].items() %} +{% for name, component in flow['encoders-audio'].items() %} {% include '%s.xml' % component.type %} {% endfor %} <!-- video --> -{% for name, component in flow['encoder_video'].items() %} +{% for name, component in flow['encoders-video'].items() %} {% include '%s.xml' % component.type %} {% endfor %} <!-- muxing --> -{% for name, component in flow['muxer'].items() %} +{% for name, component in flow['muxers'].items() %} {% include '%s.xml' % component.type %} {% endfor %} <!-- repeater --> -{% for name, component in flow['repeater'].items() %} +{% for name, component in flow['repeaters'].items() %} {% include '%s.xml' % component.type %} {% endfor %} <!-- streaming --> -{% for name, component in flow['streamer'].items() %} +{% for name, component in flow['streamers'].items() %} {% include '%s.xml' % component.type %} {% endfor %} <!-- recording --> -{% for name, component in flow['recorder'].items() %} +{% for name, component in flow['recorders'].items() %} {% include '%s.xml' % component.type %} {% endfor %} </flow> |