We had discussed setting Jonathan up with access to the Adium repository to have a branch there. I'm not opposed to doing so, but should we consider making better use of bitbucket and just asking him to fork us there?
In any case, Jonathan, I'd like to make sure you have the resources and visibility you need to continue working on this. What's your next step at this point? Cheers, Evan On Aug 19, 2010, at 1:28 AM, Jonathan Lyons wrote: > Err.....I'm trying to post this to the whole Adium devel list! Sorry for the > duplicates! > > Gatlin, Evan, and Robert, > > 1. To Evan & Robert: > > Yes, I was able to compile the dependencies. > > I'm sorry for the couple of months of being totally MIA. I am a physics > student (undergrad) completing work in the summertime, and that's been taking > a lot of my time. > > 2. To Gatlin: > > I haven't contributed my code back into Adium in the form of a plug-in, yet, > but I have written a mini-client with a barely-functional voice chat feature > using PurpleMedia + gstreamer osxaudio sink/src elements. It works in the > sense that you can initiate a voice chat with another GTalk client. I've > tried it with Pidgin and on the Mac with Google's GChat plug-in which loads > when you log into Gmail. > > There are a few issues. To list a few off the top of my head, > > 1) Negotiating a voice chat takes forever for some reason. It takes about 10 > seconds after clicking the "Voice chat..." button for libpurple to spit out > the XMPP stanzas. It eventually happens, but it's quite a wait. Looking at > Pidgin's debug window, it doesn't appear to take nearly as long. > > 2) There may or may not be a race condition when the Gstreamer generates > synchronous bus messages on one of its many spawned threads, these get passed > across threads by way of a CFMessagePort, which fires an async event on the > main thread. The fact that I use pthread mutex to lock & pass the actual > message may be a huge part of this. It may also be responsible for every > other problem I'm listing here. > > 3) I cannot use the Gstreamer Speex codec, and possibly a couple of other > codecs, on my machine. They sound like tin cans, and I'm not sure why. > > 4) There is a lot of latency and blips even on codecs that do work. > > > In any case, this code is ready to be made into an Adium plugin - or rather a > built-in "component" - which I have also started. On that front, I've gotten > about as far as installing the "Voice chat..." item into the contextual > menus, which triggers an empty voice chat window. > > I have just put my mini-client code up on GitHub. You might need to hack it a > little to get it to work. It's called VoiceVideoPorts2 (don't ask) - the > source is (I think you should be able to access it) > http://github.com/Aqueous/VoiceVideoPorts2 > > it links against the gstreamer, and libpurple binaries in an /opt/local/lib > directory created by DarwinPorts. > > The heavylifting goes on on "VVPurpleInitRun.m", "AIMediaSession.m", and > "AIVoiceController.m" - it's ugly. Don't stare directly at it. I had > absolutely no clue about how libpurple, gstreamer, farsight, or Adium's code > worked when I started working on it. > > As far as a briefing goes, which probably will be best done by me walking you > through what I've done, perhaps I can meet you on IRC as my schedule allows. > I am going to be a bit busy with schoolwork still. I will come on IRC into > #adium-devel anytime I can. I will also try to work on this myself again > soon. > > Again, I apologize for getting sidetracked. > > Jonathan Lyons > > > On Tue, Aug 17, 2010 at 9:30 PM, Robert Vehse <robert.ve...@gmx.de> wrote: > Adding to what Evan said: > another guy, gatlinjohnson in #adium-devl, expressed interest in working on > A/V. Maybe you'd like to work together with him. > > Regards, > Robbie > >