When's a good time to sync up?
by Mel Chua
Hey, folks - it's been almost a month now, so I thought it might make a
good time to stop by and check in on what's been going on. I was hoping
I'd get a firehose of data on how y'all are doing pushed at me, but may
be looking at the wrong outlets to find them - and I need that insight
in order to be able to help out - there have been some
comments/questions from Collabora, Sugar Labs, and OLPC folks I'd like
to make sure you're aware of, and address.
Give me a specific time (I know you're online constantly working, but I
need something to put on my schedule, since I've got lots of other
meetings coming up this week) on IRC to be on, and pick a channel, and
I'll be there. I'm free anytime tomorrow, anytime on Thursday except
11am-1pm EST, and anytime Friday before noon EST.
Thanks,
--Mel
14 years
Talking to Collabora
by Taylor Rose (RIT Student)
Here's some useful stuff I got from talking to the guys at Collabora. A
bunch of useful links.
>From #Sugar:
<trose> Hey, I'm working on a video chat activity for the XO 1.5. Does
anyone know how to use telepathy in Sugar to send a video stream? Other
code that my team has found uses some sort of binary hack to transmit a
video stream through telepathy. We're trying to do this the "correct" way
though.
<sdziallas> bernie: so here's the thing: I won't be able to do anything
support-wise for that (especially not in the next month) - if you want to
take Blueberry over - including the support - that might be alright with me.
;)
<Robot101> trose:
http://git.collabora.co.uk/?p=telepathy-python.git;a=blob;f=examples/call...
<tomeu> hi trose, just searched in google and found some sample code, hav
eyou already seen it?
<tomeu> or well
<Robot101> trose: the old activity was based around stream-engine and had
it's own gstreamer and farsight and all sorts of stuff *inside the activity*
<Robot101> going forward I'd just declare farsight and telepathy-farsight to
be dependencies of sugar, and then just use the telepathy-farsight python
bindings like this does
<tomeu> yeah, we already have gstreamer in the platform
>From #telepathy:
<trose> Hey, I'm working on a video chat activity for the XO 1.5. Does
anyone know how to use telepathy in Sugar to send a video stream? Other
code that my team has found uses some sort of binary hack to transmit a
video stream through telepathy. We're trying to do this the "correct" way
though.
<smcv> trose: use telepathy-farsight - Empathy code is probably a useful
reference - to handle a StreamedMedia channel
<sjoerd> If you want to do StreamedMedia in python check the example in
telepathy-python
<smcv> or that, yes
<smcv> (which uses telepathy-farsight)
<sjoerd> trose: are you working with the people from RIT or ?
<sjoerd> tomeu: ^ :)
* tomeu has one ear here
* Raagu (~47c6d2ad@gateway/web/freenode/x-ybwbhkllrjksxyyc) has joined
#telepathy
<Raagu> Hi
* Robot101 has one in #sugar :)
<sjoerd> hehe
<Robot101> freenode only lets me have 20 ears, so I have to be frugal :)
<Raagu> I was wondering, in empathy is there a need of libempathy?
<sjoerd> Raagu: libempathy doesn't exist anymore
<Raagu> why doesn't the UI directly talk to libtelepathy-glib?
<smcv> in recent versions it does :-)
<trose> sjoerd: yes I'm a student at RIT
<smcv> (we improved telepathy-glib to make libempathy unnecessary)
<Raagu> sjoerd: why does the latest empathy source 2.29 has libempathy?
<sjoerd> Raagu: historical reasons
<Raagu> its more of a wrapper around libtelepathy-glib
<sjoerd> we can name directories whatever way we like right ;)
<Robot101> Raagu: we stopped shipping it as a separate library, the roadmap
now is to make tp-glib do all of the layers above telepathy that you need to
write a UI
<sjoerd> trose:
http://git.collabora.co.uk/?p=telepathy-python.git;a=blob;f=examples/call...
an example of doing a voip call on a very low level
<Robot101> so that libempathy/ dir should shrink as tp-glib gets
higher-level APIs
* tekoholic has quit (Read error: Operation timed out)
<tomeu> trose: I would first code the basic functionality outside of
anything sugar-related, so you don't have to learn too much unrelated stuff
at the same time
<tomeu> trose: once you are familiar with the bits of farsight, telepathy
and gstreamer that you need, we can move to the sugar side of things
<Raagu> so if were to write a client myself should I directly use tp-glib
instead of creating a wrapper library like libempathy?
* roide has quit (Read error: Connection reset by peer)
<Tester> Raagu: libempathy no longer exist afaik
<Tester> Raagu: but yes, clients shouldbe tp-glib or tp-qt4
* tekoholic (~quassel(a)67.217.14.90) has joined #telepathy
<kkszysiu> hmm
<kkszysiu> telepathy manual book is written in pure XHTML or you have
something to generate that?
<trose> sjoerd: tomeu: thanks for the input
<trose> I'm gonna ping this along to the rest of the team
<tomeu> trose: cool, how are you reporting progress, have a blog, wiki, etc?
<trose> tomeu: we have several outlets. Our Blog:
http://fedorahosted.org/OpenVideoChat
<trose> News Aggregator: http://foss.rit.edu/aggregator This picks up a
couple other projects but we spam it so much you don't notice haha
<trose> * our blog --> our wiki jeez I need more coffee
<wjt> kkszysiu: http://git.collabora.co.uk/?p=telepathy-doc.git;a=summary
<kkszysiu> wjt, thanks
<trose> tomeu: #openinnovation is our project channel too
<tomeu> you have good mentors
* tomeu subscribes to http://foss.rit.edu/aggregator
<wjt> heh, this is fun. if i run the tests in caps/ in the wrong order
(which my test runner helper does if you run `tt caps/` because it just
globs), the persistent cache test fails
<tomeu> trose: so is this going to focus on videochat, or you have other
requirements such as text chat, etc?
* ignacius (~ignacius(a)21.Red-83-63-241.staticIP.rima-tde.net) has joined
#telepathy
<trose> tomeu: we have a short list of requirements right now
<trose> tomeu: Our primary concern is getting the video functioning and then
optimizing it to at least 15 FPS so that people can communicate using
American Sign Language
<tomeu> ok, sounds like a fine strategy to focus on the basics first
<trose> tomeu: we just implemented text chat really quick this week because
it was easy and we needed to test that the XO's were connecting right
<trose> that was a secondary-ish goal but it was easy so we just did it haha
<tomeu> nice, you can take care of maintaining the Chat activity afterwards
;)
<Robot101> how does that differ to the existing Chat?
<trose> the video is giving us trouble though
* sf_oliveira (~quassel(a)201.56.102.13) has joined #telepathy
<tomeu> trose: you were trying something equivalent to the links that were
posted before?
<tomeu> the camera hw in the 1.5 is not very stable yet, make sure you have
latest images, but even then...
<trose> robot101: our chat right now is extremely basic, it's not meant to
be like the Chat activity. The text chat is going to be a supplement to the
video chat aspect
<Robot101> "overlay chat" has been much discussed for Sugar, so you can add
some chat to any activity
<trose> tomeu: actually it seems alright atm. so far we have the web cam
displaying on it's home machine and it's pretty darn smooth. When we get it
streaming over the mesh network I imagine it'll slow down quite a bit
<tomeu> trose: ok, watch out when you use the word "mesh", in the olpc
project it has been overloaded to mean very different things
<tomeu> actually, better not use it at all
<trose> oops sorry
<tomeu> trose: the 1.5 doesn't have the 802.11s implementation that the xo1
had
<smcv> \o/
<trose> okay sooo when we get the xo's connecting directly to each other i
think the video is going to slow down considerably
<Robot101> trose: are you testing with video encoding / decoding too, or
just streaming the camera locally?
<Robot101> trose: the bottleneck we always faced with the XO 1.0 was CPU
bandwidth for the encoder, nothing else
<tomeu> trose: so, by directly you mean without an AP?
<Robot101> trose: (the encoding was so slow the network didn't even start to
be a problem)
<tomeu> Robot101: the theora encoder has been greatly optimized since then,
right?
<Robot101> tomeu: yeah, I think so
<Robot101> trose: Telepathy currently only supports video calling in Gabble
(the XMPP backend), not Salut (the link-local backend), although video
calling people on your LAN seems somewhat pointless
<Tester> you're using theora as the codec ?
<tomeu> Tester: I think we were, back then
<Robot101> Tester: XOs and H264 royalties... not such a win.
<sjoerd> tomeu: the 1.5 should also be loads faster
<tomeu> a couple of years ago
<sjoerd> on the 1.0 we could tweak theora already to go reasonably far
<sjoerd> on 1.5 it shouldn't be much of an issue anymore
<tomeu> sjoerd: yeah, but I have the secret hope of being able to use it in
the existing xo1
<sjoerd> sure
<Robot101> unless you get google to build the x264 encoders and bless them
with magic patent licensing dust for us, or something :P
<sjoerd> i should retest on my 1.0 xo
<Tester> tomeu: you have to know that theora wont work with SIP
<Tester> (well, not with sip-over-udp)
<tomeu> sjoerd: I recommend using the f11-based builds, not yet released as
stable, but almost
<sjoerd> Tester: nobody cares about sip with video...
<trose> We aren't testing the encoding yet. Just to clarify we *just*
started this project haha. We've only been coding a week
<sjoerd> tomeu: F11 still ? not F12
<Tester> sjoerd: some people do
<sjoerd> Tester: not in this context
<Robot101> trose: yeah but... gst-launch-0.10 v4l2src ! theoraenc !
theoradec ! xvimagesink
<tomeu> sjoerd: well, I got f12-based soas running on a xo1, but it won't be
as polished
* pavank10 has quit (Quit: Ex-Chat)
<tomeu> sjoerd: some recent fixes for f11-on-xo1 hasn't been upstreamed yet
<Robot101> trose: then you can see framerates and CPU usage actually with
some encoding/decoding going on
<sjoerd> :(
<sjoerd> tomeu: so sugar/xo is still trailing behind then, that's sad
<Robot101> trose: thats what we did the first 5 minutes after we got our XOs
out of a box :)
<tomeu> sjoerd: sugar not ;)
<sjoerd> ah
<sjoerd> tomeu: hardware support not all upstream or ?
<tomeu> sjoerd: basically, olpc has focused on new builds for 1.5
<trose> robot101: cool that'll be useful
<tomeu> and the community has had to push f11 for xo1 by itself
<tomeu> community == smparrish and bernie
<trose> lol
<Robot101> trose: yes, gstreamer very useful :)
<sjoerd> tomeu: :/
<tomeu> sjoerd: mostly drivers, yeah
<Robot101> trose: and you can easily add caps filters to set the resolution
and framerate and stuff there too
<tomeu> sjoerd: well, the bright side is that this has shown deployments
that they need to take action by themselves instead of waiting from olpc
<sjoerd> tomeu: fair enough
<trose> robot101: sick, that should help
<Robot101> trose: there's a reason we use gstreamer for all of our
video/audio streaming in Telepathy :P
<tomeu> smcv: about !mesh, I had lots of satisfaction with this hack:
http://blog.tomeuvizoso.net/2009/05/ad-hoc-wireless-networks-in-sugar.html
<Robot101> trose: even before like half the gst guys worked for collabora :D
* bcurtiswx_laptop has quit (Read error: Connection reset by peer)
<trose> robot101: I'm curious, did you work on the original video chat or
something? you mentioned the encoders being a bottleneck before
<Robot101> trose: collabora hacked together the original one as a proof of
concept, then some other guys did the nasty hacks to put like an entire new
gstreamer & farsight & telepathy stream engine into the .xo :)
<Robot101> trose: so sjoerd / cassidy / smcv / ...
<Robot101> trose: here is a very good place to ask about all things
collaboration related in sugar :)
<trose> cool, cool
<smcv> tomeu: I have this t-shirt:
http://www.poponaut.de/imagemagic.php?img=2dfUzNLgpemsz9fY2NXMyr6QycGhz93...
<trose> we've been trying to figure out who did the original video chat
activity
<trose> lol
<smcv> tomeu: it causes great amusement to those in the cbg office who
worked on XOs :-)
<tomeu> heh
<tomeu> wonder if michailis would like it as much
<smcv> they're a good band, too
<smcv> (mesh)
<tomeu> sjoerd: this just landed on my inbox:
http://lists.sugarlabs.org/archive/iaep/2010-March/010474.html
<tomeu> I think it's the best way to put something recent on the xo1s
<sjoerd> tomeu: :)
<sjoerd> tomeu: the usual problem is that since F11 farsight/gst matured a
lot wrt. video conferencing
<tomeu> but be sure to have security disabled, don't think they are signed
builds
<sjoerd> So for a video chat app you really want something based on at least
F12
<tomeu> ah, then maybe it's time to try out f12
<tomeu> sjoerd: a problem I see is that deployments will start now to slowly
move from f9 to f11. I don't know when we'll see kids using >f11 on the
field :/
<sjoerd> well
<sjoerd> For things like this, might be best to build on F12 first and
backport when it works properly
<sjoerd> instead of trying to fight two fires at the same time ;)
<tomeu> yeah, that's always possible
<tomeu> but videochat could be a good reason for updating to a new build ;)
<sjoerd> I somehow hope that videochat will be appealing enought that people
will put some effort into getting it on their systems once it works nicely
:)
<Robot101> sjoerd: F releases are pretty fluid with high-level components
like gst, telepathy, etc
<Robot101> sjoerd: I'm sure if we get beers for bpepple we can get new
enough gst / farsight / etc in F11 repos for sugar video chat to work
<tomeu> and they often backport those
<sjoerd> maybe
<sjoerd> But at least for F12 they shipped empathy with things working and
did QA on it
<sjoerd> Not saying it's impossible etc. just that you might want to avoid
those problems initially :)
<tomeu> I have heard lots of interest from the field on videochat, a problem
in the olpc ecosystem is that people who can put the moneys don't have no
idea how their software gets developed
* seb128_ is now known as seb128
<Robot101> sjoerd: the guy doing the F11 XO images on #sugar said he wants
to get them stable with F11 before he breaks the world with F12... so I'm
sure it'll be fine one way or the other :D
<bemasc> trose: The latest theora has a fast-encode mode, and it should be
exposed through gstreamer. I can show you how to activate once you get to
the performance-tuning stage
<sjoerd> bemasc: did you benchmark it on XO 1.0 and/or XO 1.5 ?
<bemasc> trose: personally, I would even suggest that you get plain audio
conferencing working before trying video
<tomeu> once they upstream all the f11 bugfixes, I expect f12 to work on the
xo1 without so much fuss
<bemasc> sjoerd: no, I should check that.
* tgpraveen12 has quit (Read error: Connection reset by peer)
* afrodeity (~afrodeity(a)liesbet.onsite.hosting.co.za) has joined #telepathy
<sjoerd> tomeu: :)
<tomeu> really :)
<wjt> smcv: there! catch some bonus patches for the caps cache
<afrodeity> hi, looking for a jabber testbot to make a call with empathy
<tomeu> the problem with f11 is that the f9 build contained lots of
non-upstreamed stuff
<tomeu> apart from being f9 and not f10
<trose> thanks for the input guys, I'm going to forward all this to the rest
of the team :)
<wjt> daf: i don't know if i said before, but the caps cache code is very
nice
<Robot101> trose: get them all to come here? :P
<wjt> daf: really easy to follow having mostly forgotten it and never having
used sqlite3 :)
<trose> robot101: idk what they're up to right now. We don't actually work
on fridays. We all decided to pull long hours monday-thursday so we get
fridays off
<Robot101> trose: if you guys want to have a sugar video call hackfest or
something, tomeu and a few of us other telepathy folks will probably be
going to UDS (ubuntu desktop summit) in Belgium in May, you could ask them
for a Sugar room and we can all go hang out there :)
<afrodeity> yeah
<sjokkis> smcv: when you say @channels, is that because you have a
background in perl and you're telling me it's an array of some sort, or am i
missing something?
<afrodeity> still no jabber testbot
<wjt> afrodeity: still no patience!
<smcv> sjokkis: no, the reference was to gtk-doc/doxygen which use @ to mean
"argument" or "parameter"
<trose> hahahha i'm forward that along, idk if i'll have time to fly to
belgium
* shiyee (~Shiyee(a)d40a9f19.rev.stofanet.dk) has joined #telepathy
* deadowl has quit (Read error: Operation timed out)
<sjoerd> trose: they have good beer, it's worth it just for that
<trose> but maybe we could set up something online
<trose> hahaha nice
<wjt> afrodeity:
http://live.gnome.org/Empathy/FAQ#How_can_I_test_if_audio.2BAC8-video_is_...
<trose> i'm always down for a good beer
<sjoerd> see
<sjoerd> buy your tickets now!
<trose> hahahha
<trose> maybe RIT will spot us the bill
<afrodeity> wjt: thanks
<trose> i'm paying enough in tuition, they should hahaha
<daf> wjt: :)
<daf> wjt: I did dither over the design quite a bit
<sjokkis> smcv: okay. possibly a stupid question, but what does it mean in
python? e.g: @dbus.service.method(CONNECTION_INTERFACE_REQUESTS,
(telepathy/server/conn.py:507)
<wjt> daf: just found a nice corner case in the bit of the test that tries
to flush macbeth out of the cache
<sjokkis> (i've never dealt with gtc-doc/doxygen, so if it's related to
that, i'm missing the reference)
<istaz> sjokkis: that's a python decorator, it mean the following method
will be exported on debug, on interface CONNECTION_INTERFACE_REQUESTS
* ignacius has quit (Quit: Ex-Chat)
<sjokkis> istaz: ah. i have so much to learn..
14 years
Telepathy Help
by Taylor Rose (RIT Student)
<trose> hey can anyone point me towards some documentation for telepathy in
python?
<trose> trying to use gstreamer and telepathy to transmit a video stream...
<Tester> trose: you want to use libtelepathy-farsight
<Tester> and create a streamed media channel
* tbf has quit (Quit: Ex-Chat)
<Tester> there is an example in tp-python I think .. you probably also want
to read the telepathy-book
http://people.collabora.co.uk/~danni/telepathy-book/
<trose> Tester: thanks for the info
14 years