Tuesday, June 5, 2007

Real world Multimedia with Jingle

What ?

What is Realworld needs Multimedia with Jingle means ?

Developing real world needs ( phone, fax, whiteboard , video etc etc ) application using jingle.

What is Jingle ?

'Jingle' is a set of extensions to XMPP for use in VoIP, video, and other peer-to-peer multimedia sessions.

What is XMPP ?

Extensible Messaging and Presence Protocol (XMPP) is an open, XML-based protocol for near-real-time, extensible instant messaging (IM) and presence information (aka buddy lists). It is the core protocol of the Jabber Instant Messaging and Presence technology. The protocol is built to be extensible and other features such as Voice over IP and file transfers have been added

What is XML ?

The Extensible Markup Language (XML) is a general-purpose markup language. Its primary purpose is to facilitate the sharing of data across different information systems, particularly via the Internet

When ?

When i have the know how ?
Now itself.

why ?

Why Jingle ?

XMPP has an all ready big, developed network which a lot ISP's provide jabber services for the clients. As voip is replacing the traditional PSTN.The options in front of the ISP's are
1) Use SIP
2) Use MGCP
3) Use H323

Or use an approch using XMPP Jingle ( low cost, low complexity )

Who makes these standards :
XMPP : www.jabber.org

How ?

Using Jingle you can write applications which helps the real world needs, The jingle is the core protocol which defines the session and the other content and trasport format definitons help to build application.

Content /Transport formats ?
Jingle Audio - for audio content format definition
Jingle Video- for video content format definition
Jingle UDP transport - transport using UDP
Jingle ICE transport - transport using ICE ( ICE - look previous post on ICE )
Jingle DTMF - a DTMF trasport using Jingle.

these format specifications uses XML mapped SDP for describing the session.

The problem with these definitions are
1) its only a subset of actual SDP.
2) These documents never gives the big picture as the RFC's descrbing the actual SDP and feature/extension definition( ex: ICE ).
3) Lot limitations as of now ( long way to go to become a full fledged telephony supoort ) (ex: early media , cancel a call ).

Options now ?


Use SDP for session description and jingle for session initation.

Advantages :

1) SDP is an IETF protocol ( Open ).
2) SDP is well used by other protocols ( SIP, MGCP, RTSP etc etc ).This makes easy interoperability.
4) Avoiding duplicate information documents (copy paste of actual RFCs ) ex: ICE
5) Bringing in standard procedures for development ( ex: offer answer model ( rfc3264 rfc4317 ) ,PINT services (rfc2848), IPV6 rfc3266), Grouping of Media Lines ( rfc3388 ),Content Attribute (rfc4796), )
6) No IPR issues on usage of SDP because it is tracked by IETF.
7) New technologies have SDP extension ( ex: ICE-TCP, ICE etc etc ). Due to this addition of new standard applications
8) Already well written/matured documents for help on deployment and proved to best + good knowledge base.

Looks this is what the industry was looking for -

No more buzz words like sip trunking etc , XMPP has a server to server comminication defined and multimedia for all Jabber users using the Industry adapted applications using well defined SDP.

Where ?

Where i can find details ?

XMPP : RFC 3920
XMPP IM : RFC 3920

Jingle : XEP-0166
Jingle Audio : XEP-0167
Jingel Video : XEP-0180
Jingle DTMF : XEP-0181

Jingle UDP transport :XEP-0177
Jingle ICe transport :XEP-0176

The xeps can be found at :http://www.xmpp.org/extensions/
Jingle SDP content description: http://www.scribd.com/doc/95534/Jingle-Multimedia-Description-Using-SDP

© yankandpaste®

1 comment:

Anonymous said...

related :http://yankandpaste.blogspot.com/2007/06/embrace-extend-and-exterminate.html

newer post shows the googltalk callflows in detail.