Open source libraries for peer-to Libjingle: A review of the library

Source: Internet
Author: User
Tags svn
Domestic now many voice chat tools are based on the turn way to achieve, including YY, AK and so on, this way for the server performance requirements are very high, and in the user volume increases, the server pressure will be more and more large, the user's voice quality will be greatly affected. The language chat server, which is based on the peer approach, can greatly avoid this situation, and the user's voice experience will be very good.
Through the above (the principle of peer and common implementation (open-libjingle)) We know that because the NAT device does not have a fixed standard of reason, resulting in not 100% of the implementation of peer-to, but according to the current general Ice&stun way, peer-to success can reach 90 Much The previous period was looking for a mature library that was implemented using this method, and at last suddenly found Libjingle there.
Through one weeks of research, here to record the general situation of the Libjingle library, if there is inappropriate, I hope friends can leave a message or mail (peakflys@gmail.com) correct.
Libjingle Overview
Libjingle is an open source library for the easy-to-peer transmission, developed by Google, and released with the first release on December 15, 2005, which can be seen roughly as the C + + implementation Library of the Jingle Protocol (Peakflys Note: Just like the jingle protocol, Not fully compatible, the difference is introduced later), Google talk is based on this library development. Through Libjingle we can establish a straight-through network connection (ignoring intermediate NAT, firewalls, relay servers, proxies, etc.), without paying special attention to the details of the session (plus decryption, format, etc.) and exchanging data directly. It also implements some ancillary functions, such as parsing of XML and processing of network agents. We can use it to achieve the following applications:

• A multi-user voice chat app

• A multi-user video conferencing application

• A multi-user live music, streaming app

• One-to-point file transfer and sharing application

The current version of the Library is 0.7.1 (released on October 2, 2012), supporting windows and Unix/linux, open source licensing is berkeley-style, which means that you can arbitrarily modify and expand it to better meet the needs of their products.

The SVN path to the library: Http://libjingle.googlecode.com/svn/trunk/talk

It is worth noting that:

The implementation of the ①libjingle library itself relies on some third-party libraries, such as: Voice chat relies on Linphone or gips, depending on the user's platform

②libjingle is just a client-side implementation, Relay server protocol and stun protocol (if required), but also need to implement the network structure after implementing relay server (stun using existing on the network, For example, public stun servers provided by companies such as Google):

To implement the network structure after relay server and stun server:


The implementation of the stun protocol is not difficult, there are a lot of open source code implementation, the key is to need some resources deployment (requires two public network IP)

The key to the implementation of peer-to on the client, by using Libjingle we can quickly construct a robust and efficient peer-client, if only to achieve similar to Skype or QQ like two or several people chatting, the server implementation is very easy. But if you want to implement a voice room where big users are involved, then we have to focus on optimizing the server broadcast package.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.