[sugar] olpc-games osc protocol
Simon Schamijer
simon at schampijer.de
Mon Jun 11 09:24:49 EDT 2007
Bert Freudenberg wrote:
> On Jun 11, 2007, at 13:06 , Simon Schamijer wrote:
>
>> Hi,
>>
>> memosono is using the osc protocol
>> (http://opensoundcontrol.org/spec-1_0) to communicate with the game
>> server and to talk to the csound server.
>
> Which game server? I thought osc is about sound?
The initial idea of osc was to use it in sound applications but it does
not mean it only works in sound applications. Memosono uses osc to talk
to the game server and to the soundserver(which is activity wide at the
moment) as well.
>> I think it is an easy to use
>> protocol and maybe some other games or activities want to use it as well.
>
> Does that mean an osc server will be running? Or does it have to be
> started by each activity?
Each activity has an osc server running. I thought about inner activity
communication. In memosono for example you may want to use the mesh
network to play the game. In this case the person who shares the game
will open a game server. The game server listens for osc messages from
the other players (switched tile x etc) and uses osc messages to
communicate the game state to the players.
>
>> An osc message consists of an OSC address pattern (a path) followed by
>> an OSC type tag string followed by zero or more OSC arguments.
>>
>> '/MEMOSONO/test', 'ifs', [1, 3.4, 'test']
>>
>> osc is callback based. On the receiver side the osc path and the type
>> tag is used to dispatch the right callback.
>>
>> A python implementation of the osc protocol and a basic api for
>> receiving and sending osc messages can be found in the memosono tree in
>> the osc folder. There exist python bindings for the osc library liblo as
>> well (http://das.nasophon.de/pyliblo/).
>
> There is an OSC package for Squeak at
>
> http://map.squeak.org/package/61f807be-83a3-4944-bfa1-686ddac7153c
>
> Now, to try that I would need to have csound (and an osc server?)
> running in jhbuild. I saw chatter about this, but did anybody actually
> make it available?
>
> - Bert -
>
The initial olpc-csound-server was started by an init.d daemon on
startup. The idea to use csound as the olpc csound server has been
deprecated afaik. Memosono was the only activity using this service. I
have moved the sound server to the memosono activity and changed it to
use osc messages to control it.
However if it is not used system wide the easier way is to create a
csound instance in the activity and use it directly (assuming we have
only one activity using the sound device at a time).
Best,
Simon
More information about the Sugar
mailing list