summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/examples/avminimal.json64
-rw-r--r--templates/flumotion/default/audiotest.xml11
-rw-r--r--templates/flumotion/default/http2-stream.xml52
-rw-r--r--templates/flumotion/default/videotest.xml11
4 files changed, 138 insertions, 0 deletions
diff --git a/src/examples/avminimal.json b/src/examples/avminimal.json
new file mode 100644
index 0000000..a3e8f76
--- /dev/null
+++ b/src/examples/avminimal.json
@@ -0,0 +1,64 @@
+{
+ "globals":{
+ "templates": "default",
+ "version": "0.10.1",
+ "name": "avminimal",
+ "description": "flufigut example",
+ "domain": "spreadspace.org",
+ "rrd-dir": "/var/lib/flumotion/rrd",
+ "manager": {
+ "machine": "localhost",
+ "host": "127.0.0.1",
+ "port": 7531,
+ "transport": "ssl"
+ },
+ "resolutions": {
+ "360p25": { "width": 640, "height": 360, "rate": "25/1" }
+ },
+ "formats": {
+ "webm": { "muxer": "webm", "video": "vp8", "audio": "vorbis" }
+ },
+ "profiles": {
+ "low": { "video": "360p25", "audio": 96 }
+ },
+ "bitrates": {
+ "vp8": { "720p25": 2048, "480p25": 1024, "360p25": 600 }
+ },
+ "machines": {
+ "localhost": [ "input-video", "input-audio", "encoder-video-vp8-360p25", "encoder-audio-vorbis-96", "muxer-av-webm-low", "streamer-local1" ]
+ }
+ },
+ "input": {
+ "audio": {
+ "type": "audiotest",
+ "master": true,
+ "properties": {
+ "samplerate": 48000
+ }
+ },
+ "video": {
+ "type": "videotest",
+ "master": false,
+ "properties": {
+ "resolution": "360p25"
+ }
+ }
+ },
+ "mux": {
+ "av": {
+ "video": "video",
+ "audio": "audio",
+ "formats": {
+ "webm": [ "low" ]
+ }
+ }
+ },
+ "stream": {
+ "streamer-local": {
+ "muxes": [ "av" ],
+ "type": "http", "count": 1, "port": 8000,
+ "max-con": 5, "burst-on-connect": 5,
+ "hostname": "flufigut"
+ }
+ }
+}
diff --git a/templates/flumotion/default/audiotest.xml b/templates/flumotion/default/audiotest.xml
new file mode 100644
index 0000000..9e0f208
--- /dev/null
+++ b/templates/flumotion/default/audiotest.xml
@@ -0,0 +1,11 @@
+ <component name="{{ name }}"
+ type="audiotest-producer"
+ label="{{ component.desc }}"
+ worker="{{ component.worker }}"
+ project="flumotion"
+ version="{{ globals.version }}">
+%% for name, value in component.properties.items()
+ <property name="{{ name }}">{{ value }}</property>
+%% endfor
+ <clock-master>{{ component.master }}</clock-master>
+ </component>
diff --git a/templates/flumotion/default/http2-stream.xml b/templates/flumotion/default/http2-stream.xml
new file mode 100644
index 0000000..74c881e
--- /dev/null
+++ b/templates/flumotion/default/http2-stream.xml
@@ -0,0 +1,52 @@
+ <component name="{{ '%s_rep' % (name) }}"
+ type="repeater"
+ label="{{ '%s (local repeater)' % (component.desc) }}"
+ worker="{{ component.worker }}"
+ project="flumotion"
+ version="{{ globals.version }}">
+ <eater name="default">
+ <feed alias="default">{{ component.feeder }}</feed>
+ </eater>
+ <clock-master>false</clock-master>
+ </component>
+
+ <component name="{{ name }}"
+ type="http-streamer"
+ label="{{ component.desc }}"
+ worker="{{ component.worker }}"
+ project="flumotion"
+ version="{{ globals.version }}">
+ <eater name="default">
+ <feed alias="default">{{ '%s_rep' % (name) }}</feed>
+ </eater>
+ <plugs>
+ <plug socket="flumotion.component.plugs.rrd.ComponentRRDPlug" type="component-rrd">
+ <property name="clients-connected-file">{{ component.rrd_clients }}</property>
+ <property name="bytes-transferred-file">{{ component.rrd_bytes }}</property>
+ </plug>
+ </plugs>
+%% for name, value in component.properties.items()
+%% if name != 'samplerate'
+ <property name="{{ name }}">{{ value }}</property>
+%% endif
+%% endfor
+ <clock-master>false</clock-master>
+ </component>
+
+ <component name="{{ '%s_local' % (name) }}"
+ type="http-streamer"
+ label="{{ '%s (local streamer)' % (component.desc) }}"
+ worker="{{ component.worker }}"
+ project="flumotion"
+ version="{{ globals.version }}">
+ <eater name="default">
+ <feed alias="default">{{ '%s_rep' % (name) }}</feed>
+ </eater>
+ <property name="burst-time">1</property>
+ <property name="burst-on-connect">true</property>
+ <property name="mount-point">{{ component.properties['mount-point'] }}</property>
+ <property name="hostname">localhost</property>
+ <property name="port">{{ component.properties['port'] + 1 }}</property>
+ <property name="master">slave</property>
+ <clock-master>false</clock-master>
+ </component>
diff --git a/templates/flumotion/default/videotest.xml b/templates/flumotion/default/videotest.xml
new file mode 100644
index 0000000..342d645
--- /dev/null
+++ b/templates/flumotion/default/videotest.xml
@@ -0,0 +1,11 @@
+ <component name="{{ name }}"
+ type="videotest-producer"
+ label="{{ component.desc }}"
+ worker="{{ component.worker }}"
+ project="flumotion"
+ version="{{ globals.version }}">
+%% for name, value in component.properties.items()
+ <property name="{{ name }}">{{ value }}</property>
+%% endfor
+ <clock-master>{{ component.master }}</clock-master>
+ </component>