On Thu, 4 May 2006 01:55:20 +0100
Alvaro Saurin <[EMAIL PROTECTED]> wrote:

> 
> On 4 May 2006, at 00:25, Rob Taylor wrote:
> 
> > Alvaro Saurin wrote:
> >>
> >> Hi,
> >>
> >> I am going to propose a project to the Adium team for the SoC'06. It
> >> will consist on the implementation of Jingle for Adium but, during  
> >> the
> >> last days, we have been discussing what is the right way of  
> >> implementing
> >> this, and we have found several possible solutions. Some people have
> >> defended the idea of using LibGaim, as it is supposed to be about to
> >> include support for Jingle with the help of FarSight.
> >>
> >> But, in my view, the use of FarSight can present some problems in  
> >> Mac.
> >> AFAIK, FarSight is based on the idea of plugins for GStreamer, and  
> >> the
> >> use of GStreamer in Mac would be a mad idea. It is a nice  
> >> framework for
> >> Linux, but  it can not be safely used in Mac. I don't know what is  
> >> the
> >> Mac support level, but it is probably not the first priority for  
> >> their
> >> developers. They use their own codecs (or from external libraries  
> >> like
> >> ffmpeg, libdv...), and they will never be as efficient or problem- 
> >> free
> >> as the QT equivalents.
> >
> > GStreamer on Mac seems to be being worked on, and by core Gstreamer
> > hackers! See:
> > http://zaheer.merali.org/articles/2006/04/27/osx-audio-with- 
> > gstreamer-0-10
> 
> Ok. I'll take a look. Thanks.
> 
> >> On the other hand, the implementation of Jingle could be quite  
> >> easy with
> >> the use of QuickTime. Besides the fact of using highly optimized  
> >> codecs,
> >> a couple of lines is all we need for opening a SDP descriptor with
> >> QuickTime. To create an SDP of our audio/video source is also very
> >> simple, and QuickTime will handle all the RTP stuff in a painless  
> >> way.
> >
> > I'm afraid you're underestimating the complexity of hooking up  
> > libjingle
> > - you basically need to hook it in *instead* of using a socket. I have
> > no idea how possible it is to make custom network sinks for quicktime,
> > but this is what would be required.
> 
> As far as I can understand from the JEP-0167, Jingle handles the  
> session negotiation and control, the mapping to a SDP. The transport  
> protocol will be done with something like RTP. Right? So, in my view,  
> I don't need to put libjingle instead of a socket. I need to talk to  
> linjingle, use it for controlling the session and, at some point, for  
> obtaining a SDP-equivalent description of the other endpoint. Then, I  
> can open it with QuickTime. On the other hand, I can open my  
> QuickTime device and publish my SDP-equivalent descriptor.
> 
> Am I missing anything?
Yes you are. libjingle does the signaling, but it also does STUN/ICE to
establish a P2P link. This is not a simple procedure and is well
outlined in both the STUN RFC as well as the ICE RFC. libjingle has to
handle the sockets and lower level network connections. libjingle does
not offer any way to set/get the udp sockets, and even if it did, you
would need to filter out the STUN packets.

Regards,
Philippe

> 
> > The other aspect is that libjingle is heavily threaded, so that could
> > well be an issue with quicktime - you get all sorts of  
> > possibilities for
> > weird thread interactions - I know we've had to spend a lot of time
> > looking at this.
> 
> Well, I don't want to many control at libjingle. It would be a slave  
> of my library, used for control and signaling.
> 
> > You don't actually use SDP for Jingle - Jingle is to XMPP what SDP  
> > is to
> > SIP.
> 
> Yes, but as it is supposed to be a mapping, I guess I can safely  
> interchange both terms... :-?
> 
> >> So, there are several questions regarding the use of libGaim +  
> >> FarSight
> >> with Adium. Do you think it could be possible to implement this
> >> optimization for the Mac platform, avoiding the use of GStreamer?  
> >> What
> >> is the dependency degree of FarSight on GStreamer? Would it be needed
> >> for other protocols anyway? Is all the transport done at the FarSight
> >> level or is it done by GStreamer?
> >
> > Farsight is very much tied to Gstreamer - if you took out all the
> > gstreamer based coded, I'm afraid there would be nothing left!
> 
> Ok.
> 
> > I would encourage you to test out the Mac OSX GStreamer stuff from the
> > link above. If that works well for you, then I'd suggest you just use
> > GStreamer and farsight, as we've already done the hard work ;)
> 
> I'll do. Thanks.
> 
> 
> Alvaro
> 
> -- 
> Alvaro Saurin <[EMAIL PROTECTED]> <[EMAIL PROTECTED]>
> 
> 
> 
> 
> 
> -------------------------------------------------------
> Using Tomcat but need to do more? Need to support web services, security?
> Get stuff done quickly with pre-integrated technology to make your job easier
> Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> _______________________________________________
> Farsight-devel mailing list
> Farsight-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/farsight-devel


-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Farsight-devel mailing list
Farsight-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/farsight-devel

Reply via email to