diff --git a/chaosradio/.__init__.py.swp b/chaosradio/.__init__.py.swp new file mode 100644 index 0000000..5de6c9b Binary files /dev/null and b/chaosradio/.__init__.py.swp differ diff --git a/chaosradio/__init__.py b/chaosradio/__init__.py new file mode 100644 index 0000000..684d686 --- /dev/null +++ b/chaosradio/__init__.py @@ -0,0 +1,114 @@ +#!/usr/bin/python3 + +from renderlib import * +from easing import * + +scheduleUrl = "" + +def introFrames(p): + # 8 Sekunden + + # 2 Sekunden Fadein logo + frames = int(2*fps) + for i in range(0, frames): + yield ( + ('logo', 'style', 'opacity', "%.4f" % easeInCubic(i, 0, 1, frames)), + ('text', 'style', 'opacity', 0), + ) + + # 3 Sekunden Fadein text + frames = 3*fps + for i in range(0, frames): + yield ( + ('logo', 'style', 'opacity', 1), + ('text', 'style', 'opacity', "%.4f" % easeInCubic(i, 0, 1, frames)), + ) + + # 3 Sekunden stehen bleiben + frames = 3*fps + for i in range(0, frames): + yield ( + ('logo', 'style', 'opacity', 1), + ('text', 'style', 'opacity', 1), + ) + +def outroFrames(p): + # 8 Sekunden + + # 1 Sekunden stehen bleiben + frames = int(1*fps) + for i in range(0, frames): + yield ( + ('logo', 'style', 'opacity', 1), + ) + + # 4 Sekunde Fadeout Logo + frames = 4*fps + for i in range(0, frames): + yield ( + ('logo', 'style', 'opacity', "%.4f" % easeInCubic(i, 1, -1, frames)), + ) + + # 1 Sekunden stehen bleiben + frames = 1*fps + for i in range(0, frames): + yield ( + ('logo', 'style', 'opacity', 0), + ) + + +def debug(): + render( + 'intro.svg', + '../intro.ts', + introFrames, + { + '$id': '246', + '$title': 'Die Gesellschaft für Freiheitsrechte', + } + ) + + render( + 'outro.svg', + '../outro.ts', + outroFrames + ) + + +def tasks(queue, args, idlist, skiplist): + if scheduleXml == "": + raise "Not schedule yet, use --debug for now" + + # iterate over all events extracted from the schedule xml-export + for event in events(scheduleUrl): + if event['room'] not in ('Saal23'): + print("skipping room %s (%s [%s])" % (event['room'], event['title'], event['id'])) + continue + if not (idlist==[]): + if 000000 in idlist: + print("skipping id (%s [%s])" % (event['title'], event['id'])) + continue + if int(event['id']) not in idlist: + print("skipping id (%s [%s])" % (event['title'], event['id'])) + continue + + # generate a task description and put it into the queue + queue.put(Rendertask( + infile = 'intro.svg', + outfile = str(event['id'])+".ts", + sequence = introFrames, + parameters = { + '$id': event['id'], + '$title': event['subtitle'], + '$person': event['personnames'] + } + )) + + # place a task for the outro into the queue + if not "out" in skiplist: + queue.put(Rendertask( + infile = 'outro.svg', + outfile = 'outro.ts', + sequence = outroFrames + )) + diff --git a/cr/artwork/by-sa.svg b/chaosradio/artwork/by-sa.svg similarity index 100% rename from cr/artwork/by-sa.svg rename to chaosradio/artwork/by-sa.svg diff --git a/cr/artwork/cc0.svg b/chaosradio/artwork/cc0.svg similarity index 100% rename from cr/artwork/cc0.svg rename to chaosradio/artwork/cc0.svg diff --git a/cr/artwork/intro.svg b/chaosradio/artwork/intro.svg similarity index 99% rename from cr/artwork/intro.svg rename to chaosradio/artwork/intro.svg index ccf9481..5aebd7a 100644 --- a/cr/artwork/intro.svg +++ b/chaosradio/artwork/intro.svg @@ -251,11 +251,11 @@ x="959.94507" y="639.08167" id="tspan3833" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L'">CR217CR$idProfessional Hackers + style="font-style:italic;font-variant:normal;font-weight:bold;font-stretch:normal;font-family:'Nimbus Roman No9 L';-inkscape-font-specification:'Nimbus Roman No9 L Italic'">$title diff --git a/cr/artwork/outro.svg b/chaosradio/artwork/outro.svg similarity index 100% rename from cr/artwork/outro.svg rename to chaosradio/artwork/outro.svg diff --git a/cr/artwork/pause.svg b/chaosradio/artwork/pause.svg similarity index 100% rename from cr/artwork/pause.svg rename to chaosradio/artwork/pause.svg diff --git a/cr/__init__.py b/cr/__init__.py deleted file mode 100644 index 8a275f7..0000000 --- a/cr/__init__.py +++ /dev/null @@ -1,111 +0,0 @@ -#!/usr/bin/python3 - -from renderlib import * -from easing import * - -def outroFrames(p): - # 8 Sekunden - - # 1 Sekunden stehen bleiben - frames = int(1*fps) - for i in range(0, frames): - yield ( - ('logo', 'style', 'opacity', 1), - ) - - # 4 Sekunde Fadeout Logo - frames = 4*fps - for i in range(0, frames): - yield ( - ('logo', 'style', 'opacity', "%.4f" % easeInCubic(i, 1, -1, frames)), - ) - - # 1 Sekunden stehen bleiben - frames = 1*fps - for i in range(0, frames): - yield ( - ('logo', 'style', 'opacity', 0), - ) - -def introFrames(p): - # 8 Sekunden - - # 2 Sekunden Fadein logo - frames = int(2*fps) - for i in range(0, frames): - yield ( - ('logo', 'style', 'opacity', "%.4f" % easeInCubic(i, 0, 1, frames)), - ('text', 'style', 'opacity', 0), - ) - - # 3 Sekunden Fadein text - frames = 3*fps - for i in range(0, frames): - yield ( - ('logo', 'style', 'opacity', 1), - ('text', 'style', 'opacity', "%.4f" % easeInCubic(i, 0, 1, frames)), - ) - - # 3 Sekunden stehen bleiben - frames = 3*fps - for i in range(0, frames): - yield ( - ('logo', 'style', 'opacity', 1), - ('text', 'style', 'opacity', 1), - ) - -def pauseFrames(p): - # 8 Sekunden im kresi drehen - frames = int(8*fps) - for i in range(0, frames): - yield ( - ('logo', 'attr', 'transform', 'translate(%.4f, %.4f)' % (math.sin(i / frames * math.pi * 2) * 300, math.cos(i / frames * math.pi * 2) * 280) ), - ) - - -def debug(): - # render( - # 'pause.svg', - # '../pause.dv', - # pauseFrames - # ) - - render( - 'intro.svg', - '../intro.ts', - introFrames - ) - - render( - 'outro.svg', - '../outro.ts', - outroFrames - ) - - render( - 'pause.svg', - '../pause.ts', - pauseFrames - ) - -def tasks(queue): - # generate a task description and put them into the queue - queue.put(Rendertask( - infile = 'intro.svg', - outfile = "intro.ts", - sequence = introFrames - )) - - # place a task for the outro into the queue - queue.put(Rendertask( - infile = 'outro.svg', - outfile = 'outro.ts', - sequence = outroFrames - )) - - # place a task for the pause into the queue - queue.put(Rendertask( - infile = 'pause.svg', - outfile = 'pause.ts', - sequence = outroFrames - ))