Get Started With Kamaelia

Download and get started with Kamaelia :-)

Step 1 - Get Kamaelia & Install it
Step 2 - Run & Tweak the Examples
Step 3 - Start writing your own components
Step 4 - Wire up your component to a new system
Step 5 - Build something new!

Step 1 - Get Kamaelia & Install it

Stable Release Get the latest stable release from here:
~/ > tar zxf Kamaelia-0.6.0.tar.gz
~/ > cd Kamaelia-0.6.0/
~/Kamaelia-0.6.0 > sudo python install
Testing Release Get the latest stable release from here: (August '09
~/ > tar zxf
~/ > cd Kamaelia-
~/Kamaelia- > cd Axon
~/Kamaelia- > sudo python install
~/Kamaelia- > cd ..
~/Kamaelia- > cd Kamaelia
~/Kamaelia- > sudo python install

Then install any of the bindings you're interested in inside Bindings, and run any of the applications inside Apps.

For those that like easy_install, the following should work for you: (note: capital K)

~/ > sudo easy_install Kamaelia

Apparently there are issues with this usage of easy_install and windows. If you'd like to fix them, please get in touch.

Step 1a - Read this to get the gist of things

View SlideShare presentation or Upload your own. (tags: kamaelia python)

Step 2 - Run & Tweak the Examples

Many of these require pygame or similar libraries. We're putting together dependencies as we speak. You'll find the examples in the examples directory.
You will also find a large number of examples in the Kamaelia Cookbook

Step 3 - Start writing your own components

For the moment, see this tutorial on how to go from non-component code to component code

Step 4 - Wire up your component to a new system

The best way to get started here is to look at the examples in the already Kamaelia Cookbook mentioned.

You'll be looking at using a number of the components from the reference area.

Step 5 - Build something new

All sorts of possible ideas exist here - as inspiration please look here:
Our pages for our involvement with Google Summer of Code have lots of ideas.

What's in the Release Candidate?

Well, the usual slew of extra components and bug fixes, a variety of new tools - from video shot change detection, through to SMTP greylisting, but also perhaps the biggest extra: Multiprocess & hence multicore support (experimental at this stage, but so far so good :) )

And a large number of extra components - this is actually a lot more than originally expected/anticipated. However they're divided into two halves - new components and components from applications merged into the repository. (the latter means that you can take parts of random Kamaelia applications and embed them in other random Kamaelia applications. As a result...

New Components:
  • Kamaelia.
    • Chassis
      • Seq
    • Codec
      • WAV, YUV4MPEG
    • Device
      • DVB
        • SoftDemux
        • Parse
          • ParseEventInformationTable, ParseNetworkInformationTable, ParseProgramAssociationTable, ParseProgramMapTable, ParseServiceDescriptionTable, ParseTimeAndDateTable, ParseTimeOffsetTable, PrettifyTables, ReassemblePSITables
    • Experimental
      • Chassis, ERParsing
    • File
      • MaxSpeedFileReader, UnixProcess2
    • Internet
      • TimeOutCSA
    • Protocol
      • MimeRequestComponent, RecoverOrder, SDP
      • AIM
        • AIMHarness, ChatManager, LoginHandler, OSCARClient
      • HTTP
        • Handlers
          • Minimal, Handlers/SessionExample, UploadTorrents
      • IRC
        • IRCClient
      • RTP
        • NullPayloadPreFramer, NullPayloadRTP, RTCPHeader, RTPHeader, RtpPacker, RTP
      • Util
        • Tokenisation
          • Simple
        • Collate, FirstOnly, Max, OneShot, PromptedTurnstile, RangeFilter, RateChunker, SequentialTransformer, Sync, TagWithSequenceNumber, TwoWaySplitter
      • UI
        • Pygame
          • Text, VideoSurface
      • Video
        • CropAndScale, DetectShotChanges, PixFormatConversion
      • Visualisation
        • ER
          • ERLaws, ERVisualiserServer, ExtraWindowFurniture, PAttribute, PEntity, PISA, PRelation
      • XML
        • SimpleXMLParser
Components merged in from Apps:
  • Kamaelia
    • Apps
      • Compose
        • BuildViewer, CodeGen, PipeBuild, PipelineWriter, GUI
        • GUI
          • ArgumentsPanel, BuilderControlsGUI, TextOutputGUI
      • IRCLogger
        • Support
      • Show
        • GraphSlides
      • Whiteboard
        • Audio, Canvas, CheckpointSequencer, CommandConsole, Entuple, Options, Painter, Palette, Router, Routers, SingleShot, TagFiltering, Tokenisation, TwoWaySplitter, UI
All of this also totally ignores the new examples & new Kamaelia based apps.

Want a single page rapid overview of everything? Click this link :-)
Recent Hacks:
Speak N Write
- A tool based on gesture/stroke recognition and speech synthesis to be a toy assisting a child to learn to read and write
IRCSpeakerBot - A tool for connecting to IRC sessions you want to keep abreast of, but don't want to read. This connections to groups and using speech synth literally allows you to listen into chatter on an IRC channel.

Kamaelia is an open source project originated from and guided by BBC Research. For more information browse the site or get in contact.

This is an ongoing community based development site. As a result the contents of this page is the opinions of the contributors of the pages involved not the organisations involved. Specificially, this page may contain personal views which are not the views of the BBC. (the site is powered by a wiki engine)

(C) Copyright 2008 Kamaelia Contributors, including the British Broadcasting Corporation, All Rights Reserved

This web site is powered by the same code created for the bicker manor project. For more details, contact Michael Sparks at BBC Research directly (cf contact)