コード例 #1
0
    def RateLimitedPlayback(frame):
        fps = frame["frame_rate"]
        x, y = tuple(frame["size"])
        print "Frames per second:", fps
        print "(width,height):", (x, y)

        pgd = PygameDisplay(width=x, height=y).activate()
        PygameDisplay.setDisplayService(pgd)

        return Graphline( \
            LIMIT = PromptedTurnstile(),
            RATE  = ByteRate_RequestControl(rate=fps, chunksize=1.0, allowchunkaggregation=False),
            PLAY  = player,
            linkages = {
                ("",      "inbox" ) : ("LIMIT", "inbox"),
                ("LIMIT", "outbox") : ("PLAY",  "inbox"),
                ("PLAY",  "outbox") : ("",      "outbox"),

                ("RATE", "outbox" ) : ("LIMIT", "next"),

                ("",      "control") : ("RATE",  "control"),
                ("RATE",  "signal" ) : ("LIMIT", "control"),
                ("LIMIT", "signal" ) : ("PLAY",  "control"),
                ("PLAY",  "signal" ) : ("",      "signal"),
            },
            boxsizes = {
                ("LIMIT","inbox") : 2,
            },
        )
コード例 #2
0
ファイル: ParallelTest.py プロジェクト: thangduong/kamaelia
    def main(self):
        from Kamaelia.UI.Pygame.Display import PygameDisplay
        from Kamaelia.UI.Pygame.MagnaDoodle import MagnaDoodle

        X = PygameDisplay(width=200, height=200).activate()
        PygameDisplay.setDisplayService(X)
        MagnaDoodle().run()
コード例 #3
0
                         ("ANALYSE", "outbox"): ("GRAMMAR", "inbox"),
                         ("GRAMMAR", "outbox"): ("self", "outbox"),
                         ("QUANTISE", "drawing"): ("self", "drawing"),
                         ("ANALYSE", "drawing"): ("self", "drawing"),
                     })


if __name__ == "__main__":

    from Kamaelia.UI.Pygame.Display import PygameDisplay
    from Kamaelia.Util.Console import ConsoleEchoer

    width = 1024
    height = 384

    pgd = PygameDisplay(width=width, height=height).activate()
    PygameDisplay.setDisplayService(pgd)

    Graphline(
        CANVAS=Canvas(position=(0, 0), size=(width, height)),
        PEN=Pen(),
        STROKER=StrokeRecogniser(),
        OUTPUT=ConsoleEchoer(),
        linkages={
            ("CANVAS", "eventsOut"): ("PEN", "inbox"),
            ("PEN", "outbox"): ("CANVAS", "inbox"),
            ("PEN", "points"): ("STROKER", "inbox"),
            ("STROKER", "outbox"): ("OUTPUT", "inbox"),
            ("STROKER", "drawing"): ("CANVAS", "inbox"),
        },
    ).run()
コード例 #4
0
ファイル: Core.py プロジェクト: thangduong/kamaelia
 def main(self):
     pgd = PygameDisplay(width=self.width, height=self.height).activate()
     PygameDisplay.setDisplayService(pgd)
     yield 1
コード例 #5
0
ファイル: ScribbleNLink.py プロジェクト: thangduong/kamaelia
from Kamaelia.Chassis.Graphline import Graphline

from Kamaelia.File.UnixProcess import UnixProcess

from Kamaelia.UI.Pygame.Display import PygameDisplay
from Kamaelia.UI.Pygame.Image import Image
from Kamaelia.UI.Pygame.Text import TextDisplayer, Textbox
from Kamaelia.Util.Console import ConsoleEchoer, ConsoleReader

from Kamaelia.Apps.Whiteboard.Canvas import Canvas
from Kamaelia.Apps.SpeakNWrite.Gestures.StrokeRecogniser import StrokeRecogniser
from Kamaelia.Apps.SpeakNWrite.Gestures.Pen import Pen

from Kamaelia.Visualisation.Axon.AxonVisualiserServer import AxonVisualiser, text_to_token_lists

pgd = PygameDisplay(width=1024, height=500).activate()
PygameDisplay.setDisplayService(pgd)

Backplane("STROKES").activate()
Backplane("CONSOLE").activate()
Backplane("AXONVIS").activate()
Backplane("AXONEVENTS").activate()
bgcolour = (255, 255, 180)

node_add_template = \
"""ADD NODE %(nodeid)s non_config randompos component
ADD NODE %(nodeid)s.o.outbox "outbox" randompos outbox
ADD NODE %(nodeid)s.o.signal "signal" randompos outbox
ADD NODE %(nodeid)s.i.inbox "inbox" randompos inbox
ADD NODE %(nodeid)s.i.control "control" randompos inbox
ADD LINK %(nodeid)s %(nodeid)s.o.outbox
コード例 #6
0
                self.send(' '.join(data), "outbox")
            if not self.anyReady():
                pass
            yield 1
            

from Kamaelia.Apps.Whiteboard.Routers import TwoWaySplitter
from Kamaelia.Chassis.Pipeline import Pipeline
from Kamaelia.File.UnixProcess import UnixProcess

from Kamaelia.UI.Pygame.Image import Image

from Kamaelia.UI.Pygame.Display import PygameDisplay
from Kamaelia.Util.Console import ConsoleEchoer

pgd = PygameDisplay( width=800, height=480 ).activate()
PygameDisplay.setDisplayService(pgd)



Backplane("SPEECH").activate()    

Pipeline(
    SubscribeTo("SPEECH"),
    Repeater(),
    Reorderer(),
    ConsoleEchoer(1),
    UnixProcess("while read word; do echo $word | espeak -w foo.wav --stdin ; aplay foo.wav ; done"),
).activate()

bgcolour = (255,255,180)
コード例 #7
0
ファイル: Styled.py プロジェクト: thangduong/kamaelia
#!/usr/bin/python

from Kamaelia.UI.Pygame.Display import PygameDisplay
from Kamaelia.Chassis.Pipeline import Pipeline
from Kamaelia.Util.Console import ConsoleEchoer
from Kamaelia.UI.Pygame.Text import Textbox, TextDisplayer

X = PygameDisplay(background_colour=(224, 224, 255), width=1000,
                  height=400).activate()
PygameDisplay.setDisplayService(X)

Pipeline(
    Textbox(size=(800, 150),
            position=(100, 230),
            font_file="/home/michaels/.fonts/MichaelHW.ttf",
            padding=20,
            border_size=10,
            border_colour=(128, 0, 0)),
    TextDisplayer(size=(800, 150),
                  position=(100, 40),
                  font_file="/home/michaels/.fonts/GillSans.ttf",
                  padding=20,
                  border_size=10,
                  border_colour=(0, 0, 128))).run()