Hack for Mashed - Kamaelia Speak And Learn
June 22, 2008 at 06:10 AM | categories: python, oldblog | View CommentsWhere to Get it:
First initial version here:
Installing:
~/incoming/> tar zxvf Kamaelia\ Speak\ N\ Learn-1.0.0.tar.gz
Where's the Source?
Running:
~> SpeakNLearn.py
Dependencies:
- You need to have espeak installed
- You need to have aplay installed
- You need to have pygame installed
Mashed Hack - IRC Speaker Bot
June 21, 2008 at 10:52 PM | categories: python, oldblog | View Comments- It's IRC bot
- It joins 3 channels - #kamtest, #kamaelia & #mashed
- It listens to the channel
Anything that anyone says is then spoken (via espeak) by the bot. ie speech synth.
You can find the code here:
Kamaelia Mashed Release Candidate
June 21, 2008 at 08:12 PM | categories: python, oldblog | View CommentsKamaelia at BBC MASHED
June 20, 2008 at 07:53 PM | categories: python, oldblog | View CommentsThe talk is at the start of the weekend intended to get you started with all of those things. As well as the session itself, a new release of Kamaelia is in the works with the first Beta/Release Candidate made available to an unsuspected world. What's going in the release?
- Well, the usual slew of extra components and bug fixes
- A variety of new tools - from video shot change detection, through to SMTP greylisting
- Multiprocess & hence multicore support (experimental at this stage, but so far so good :) )
- 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
- 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
Also a new website is coming soon, but time ran out :-)
So given all that, session details:
What: How to get started hacking with Kamaelia - making concurrency fun, easy & usefulMore detail:
When: 12:15 - 12:45, 21 June 2008
Where: Garden Table area at Top West Hall, Alexandra Palace, London
Who: Me - Michael Sparks :-)
Why: To help people get started with hacking Kamaelie
How: One part presentation, two parts tutorial, lightning talk style and a note of "this is what I look like, come find me!"
GET MASHED (Link Kamaelia site)How to get started hacking with Kamaelia - making concurrency fun, easy & useful with Michael Sparks
(12:15 - 12:45) - 21 Jun 08Kamaelia is an open source project from BBC R&D. It makes prototyping new and interesting systems simple. Kamaelia systems are naturally concurrent and transform easily into production quality, maintainable systems.
It is useful for things from 3D systems through building PVRs through video playback, through shot change detection, through P2P distribution (live and bit torrent), through whiteboards, handwriting/gesture recognition, speech generation, and games systems, and back through DVB on both the reception side and broadcast side, and lots more not mentioned...
This talk will introduce Kamaelia, helping you get started - complete with a new release to boot!
- Website: http://edit.kamaelia.org/Developers/
- Introduction: http://edit.kamaelia.org/NewIntroduction
- Toybox: http://edit.kamaelia.org/Components
- Cookbook: http://edit.kamaelia.org/Cookbook
- Get Mashed with Kamaelia
Garden Table area at Top West HallDownload iCalendar: How to get started hacking with Kamaelia
Powering a home server using solar power?
May 31, 2008 at 04:07 PM | categories: python, oldblog | View Comments- Use a cheap/old/low power laptop
- Buy a car battery - or perhaps a 12V 100Ah battery
- Use a 60W solar panel (or similar) to charge the 100Ah battery
- Use a car cigarette light connector based power adapter to connect laptop to battery
I'd be interested in hearing from anyone who's tried doing this.
How will you be celebrating the 60th Anniversary of the Computer?
May 30, 2008 at 06:31 PM | categories: python, oldblog | View CommentsWe're planning a new release of Kamaelia for that day, which also co-incides with BBC Mashed (aka BBC hackday 2). The new release should include, among other things, our multicore support, basic software transactional memory, generator, thread, process based components, a variety of example applications, a revamped website (yes, it needs a lick of paint) as well as a large number of new components from improved DVB support, better pygame tools, etc.
How are you planning on celebrating the 60th anniversary ?
:-)
Where to put our Multicore support in the Kamaelia tree?
April 28, 2008 at 09:11 PM | categories: python, oldblog | View CommentsAs a result, it seems to make sense to do this - Put the core code in:
Axon.ProcessesBut put the ProcessPipeline & ProcessGraphline component in:
Kamaelia.Chassis.ProcessSo that you would use them as:
from Kamaelia.Chassis.Process import ProcessPipeline, ProcessGraphlineI'm pretty sure that's a pretty good idea - since it allows updates to the implementation that these use without affecting the interface.
That said, people will probably search for Multicore as well, so is it worth the naming actually being this:
from Kamaelia.Chassis.Multicore import ProcessPipeline, ProcessGraphline... or simply having that available as an alias ?
Fundamentally this would still be used in the same way as previously described:
from Kamaelia.Chassis.Multicore import ProcessPipeline # this or
from Kamaelia.Chassis.Process import ProcessPipeline # this?
ProcessPipeline(
Textbox(position=(20, 340), # Open first pygame window
text_height=36,
screen_width=900,
screen_height=400,
background_color=(130,0,70),
text_color=(255,255,255)),
TextDisplayer(position=(20, 90), # Open second pygame window
text_height=36,
screen_width=400,
screen_height=540,
background_color=(130,0,70),
text_color=(255,255,255))
)
But the naming affects where you go hunting for the functionality.
My personal preference is for the former (Kamaelia.Chassis.Process), though I can see user friendliness in naming something based on what people are likely to hunt for being attractive.
Used without care, multiprocess usage would probably hurt performance - since messages between components in separate processes are pickled objects, but generally speaking, we all know you'd take that into account, wouldn't you...?
Thoughts?
Interesting thing new faces....
April 27, 2008 at 11:29 PM | categories: python, oldblog | View CommentsSo I chatted with the other members of the community and they all pretty much agreed, but they hadn't thought of saying anything (which strikes me as a bizarre version of the Bystander Effect :-).
Anyhow, as a result, I've shifted our list over and the new faces on the block are running rampant there, which is really cool. Not only that but it's encouraging students from previous years to start popping their heads back up (so far only on private mail, but I think they can be teased out further), which is really neat :)
Sometimes it's the little details you take for granted that you completely miss...
I just thought it worth sharing in case other people think it's worth asking their new colleagues for any suggestions for making their communities more accessible :-)
Recent requests/Q and A
April 27, 2008 at 11:22 PM | categories: python, oldblog | View Comments- I had a complaint/bug report from Steve (no surname) about the dates in my RSS feed (which should now be fixed), about double escaping of entities (which is also hopefully fixes). Steve also made a comment saying that he wished he didn't have to enter HTML manually. This strikes me as odd, because I'm typing this using Dojo's editor widget, so I guess that failed disgracefully on his machine. I've seen that on a few machines, but Dojo's generally got the most browser friendly wysiwyg editor, so I'm not sure what's up there.
- I had a request whether Kamaelia's latest release is available for windows as a special bundle. The answer to that really is "it's python, so it should work, but we tend to develop under linux & Mac OS X so you may find some niggles". I certainly haven't created an installer for windows. All that said, we are overdue doing a new release, and /trunk is far and away recommended. Even so, that needs updating as well with recent developments... :-)
- Finally, another anonymous poster made the following comment:
- Came across this today and thought you might be interested in it Michael:
Concurrency/message passing Newsqueak [video.google.com]
Python Bindings for AR Toolkit
March 28, 2008 at 04:56 PM | categories: python, oldblog | View Comments- http://mgldev.scripps.edu/projects/pyartk/index.html
- http://mgldev.scripps.edu/projects/pyartk/docs.html
« Previous Page -- Next Page »