Not logged in. · Lost password · Register
Forum: agsXMPP RSS
Page:  1  2  next
Avatar
m.bandu #1
Member since Oct 2006 · 8 posts
Group memberships: Members
Show profile · Link to this post
Subject: Audio (Jingle)  with agsXMPP
Hi Again...

Is anyone know when agsXMPP library will have JINGLE support?

Is there anyone try to implement agsXMPP + LibJingle (from Google) for audio support? or do you think it could be done?

Regards,

Bandu
Avatar
Alex #2
Member since Feb 2003 · 4447 posts · Location: Germany
Group memberships: Administrators, Members
Show profile · Link to this post
Hello,

we implemented Jingle a while ago. But the JEP's changed a lot since our implementation. So it does not work anymore.
Some Jingle Jeps are on the last call now, which means they are in a advanced state and will be final soon. We are currently working on Jingle again. One of the next releases will have (XMPP) jingle support.
But there is still the p2p part of jingle, codecs etc... which is not XMPP related.

Alex
Avatar
m.bandu #3
Member since Oct 2006 · 8 posts
Group memberships: Members
Show profile · Link to this post
Just as a suggestion, do you think agsXMPP sdk will work with LibJingle?
As they mentioned LibJingle library can work with other XMPP tranport client. I understand there will be managed library against unmanaged but i hope that will be managable.. :P

How do u think?

Regards,
Avatar
Alex #4
Member since Feb 2003 · 4447 posts · Location: Germany
Group memberships: Administrators, Members
Show profile · Link to this post
Hello,

for me it makes no sense to use the agsXMPP SDK with libJingle and vice versa. Because libJingle is also a XMPP SDK which does similar stuff than our SDK. Of course you could use all XMPP stuff from agsXMPP and use libJingle for p2p audio only. But libJingle is based on GIPs, so you could use GIPs directly.

Alex
Avatar
m.bandu #5
Member since Oct 2006 · 8 posts
Group memberships: Members
Show profile · Link to this post
Yes, I want to use all XMPP stuff from agsXMPP and use voice only from LibJingle. because i'm use to agsXMPP now and i love it :)

I will try that one..
Avatar
Alex #6
Member since Feb 2003 · 4447 posts · Location: Germany
Group memberships: Administrators, Members
Show profile · Link to this post
Hello,

to clarify
Jingle is only the negotiation of video, audio and other session.

  • "what" content should be exchanged in the session (e.g., audio)
  • "how" shall we exchange the data (e.g., raw UDP).

and it's also handling the status of the sessions. Exchanging this paramaters is not that hard and the objects for that will be in one of the next releases. If you need it now then you also can implement it on your own or send us a customer request.
Using libJingle only for the negotiation and writing a wrapper for that will be a only a  hack and more work then using agsXMPP directly.
The other part are the audio, video etc... sessions and used codecs. This is not XMPP related and you could use code from libJingle for that.

Alex
Avatar
koppah #7
Member since Oct 2006 · 5 posts
Group memberships: Members
Show profile · Link to this post
Out of curiosity, how long until you guys manage to get Jingle integrated into your SDK?

We currently use Jabber inside our C# application, but would like to be able to have voice integrated into our client directly so that we can record the conversations for archiving.

What codec are you going to use for this and is it going to be possible to hook into the audio stream in order to be able to do this recording? From the look of the GIPS engine in the current libjingle library, I don't see how to get access to the audio stream as it is handled internally by the GIPS DLL. The TalkAbout blog says that Speex is integrated into libjingle, but it defaults to GIPS when compiled in Windows. If I could get it to default to Speex (I haven't tried very hard yet), I could get the audio stream relatively easily and record it.

Having said all of this, I have no idea if I'm right or not as I'm not very experienced with C++. So, if you guys are doing the work already in C#, I'd be more than happy to use it. :-)
Avatar
Alex #8
Member since Feb 2003 · 4447 posts · Location: Germany
Group memberships: Administrators, Members
Show profile · Link to this post
Quote by koppah:
Out of curiosity, how long until you guys manage to get Jingle integrated into your SDK?

We can't/will not promise a date ;-)

Quote by koppah:
We currently use Jabber inside our C# application, but would like to be able to have voice integrated into our client directly so that we can record the conversations for archiving.

What codec are you going to use for this and is it going to be possible to hook into the audio stream in order to be able to do this recording? From the look of the GIPS engine in the current libjingle library, I don't see how to get access to the audio stream as it is handled internally by the GIPS DLL. The TalkAbout blog says that Speex is integrated into libjingle, but it defaults to GIPS when compiled in Windows. If I could get it to default to Speex (I haven't tried very hard yet), I could get the audio stream relatively easily and record it.

Having said all of this, I have no idea if I'm right or not as I'm not very experienced with C++. So, if you guys are doing the work already in C#, I'd be more than happy to use it. :-)

As i said before the XMPP part of Jingle is only the negotiation. The other part is the audio, video or whatever engine. We have currently no plans to integrate part 2.

Alex
Avatar
koppah #9
Member since Oct 2006 · 5 posts
Group memberships: Members
Show profile · Link to this post
Ok, curiosity again - how will the interfaces work in order to be able to package data via Jingle? Will it be a relative clone of the libjingle p2psession class, or will you provide a pre-created audiosession class in which we can add the codec classes?

Cheers!
Avatar
Alex #10
Member since Feb 2003 · 4447 posts · Location: Germany
Group memberships: Administrators, Members
Show profile · Link to this post
Hello,

you still got me wrong.
Jingle defindes only the negotiation.
Not the packaging of data, p2psessions, codecs etc.... This is not XMPP related and relies on other network protocols.

So you could use agsXMPP for the negotiation and libJingle for all the p2p stuff, NAT traversal, codecs etc... But libJingle depends on GIPs AFAIK for codecs. And i don't think you can use GIPs light in production, which means you need a licence from Global IP Sound.

What we currently are working on is the XMPP-Jingle negotiation. Currently we have no plans and resources for all the p2p stuff and codecs.
Porting or calling the jingle p2p stuff from/to C# would be a intersting project. If somebody is working on this we would be interested to help out or support such a project.

Alex
Avatar
koppah #11
Member since Oct 2006 · 5 posts
Group memberships: Members
Show profile · Link to this post
Oops, my bad. My current project would like the ability to do this and I'd be more than happy to start looking at it - it helps both our goals. If you are interested, I can be reached in my profile's email adress.

Also, just to be clear, libjingle (from what I can gather) actually uses Speex when compiled in Unix, but GIPS when in Windows - the entire library is designed to accomodate any codec.
Avatar
Alex #12
Member since Feb 2003 · 4447 posts · Location: Germany
Group memberships: Administrators, Members
Show profile · Link to this post
are you on windows or linux?
The best solution would be to compile libJingle to a managed .NET library with the new mixed mode features of VS2005.

Alex
Avatar
koppah #13
Member since Oct 2006 · 5 posts
Group memberships: Members
Show profile · Link to this post
WinXPPro, VS2005, .NET 2.0

I agree, building a wrapper around libjingle would be good. However, since you've already got all of the XMPP API written in C#, we might want to look at how to integrate that...

I'm not too sure, I've never built mixed-language solutions, nor have I adapted pure C++ to Managed C++ before.
Avatar
Alex #14
Member since Feb 2003 · 4447 posts · Location: Germany
Group memberships: Administrators, Members
Show profile · Link to this post
Hello,

if you google for jingle and .NET you will find some pages and projects. But none of them released source yet.
The interesting stuff in jingle is the p2p socket, not only for XMPP applications.
You can compile it to a dll and call it with PInvoke, or you can compile it to a managed dll.

Alex
Avatar
koppah #15
Member since Oct 2006 · 5 posts
Group memberships: Members
Show profile · Link to this post
OK, I'll look into it when I have some time.
Close Smaller – Larger + Reply to this post:
Verification code: VeriCode Please enter the word from the image into the text field below. (Type the letters only, lower case is okay.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Special characters:
Page:  1  2  next
Forum: agsXMPP RSS