这是最好的SIP兼容的codeC型为Android这是、最好的、SIP、codeC

2023-09-06 00:05:13 作者:对风说爱你

我想开发一个Android应用程序将使用我的客户的 SIP服务器。我的客户是露出几个 REST API 从SIP服务器与应用程序进行通信。

I want to develop a Android App which will use a SIP Server of my client. My client is exposing couple of REST API from the SIP server for communicating with the apps.

我想知道这将是在最好的codeC型为这个应用程序?

I want to know which would be the best codec type for this app?

基本上,我想创建一个 SIP协议栈并发送 SIP数据包到服务​​器。所以,应该有用于分组的编码和解码系统。我的客户prefers 16 KB /秒,但我不知道它应该使用。

Basically, I want to create a SIP-Stack and send the SIP Packets to the Server. So, there should be a coding and decoding system for the packets. My client prefers 16 kb/sec but I am not sure which should I use.

推荐答案

正如其他人所说,SIP不转让音频或视频。虽然在理论上,可以发送数据通过任何传输,包括ATM,模拟线路,一个DS0等,在现实世界中,RTP是最常见的。 RTP(实时传输协议)和RTCP(实时控制协议)和SRTP(安全RTP)通常携带的音频和视频。

As others have said, SIP does not transfer audio or video. Although in theory, you can send data over any transport, including ATM, analog lines, a DS0, etc, in the real world, RTP is the most common. RTP (Real Time Protocol) and RTCP (Real Time Control Protocol) or SRTP (Secure RTP) usually carry the audio and video.

据codeCS走,你会被你的服务器支持的限制。下面是一些常见的codeCS以及每个部分的优点和缺点。

As far as codecs go, you will be limited by what your server supports. Here are a few common codecs and some pros and cons of each.

G.711 - 长途质量(即不啻为一个很好的模拟电话线,甚至会好一点)。 ,几乎每个设备在通用支持G.711。需要很大的带宽,它并没有真正融为一体preSS数据(G.711是一种压扩)。基线G.711是pretty的裸机(它真的一对夫妇的查找表)。附录I增加了分组丢失隐藏(PLC)和附录II增加了沉默燮pression和舒适噪音产生。

G.711 - Toll quality (ie good as a good analog phone line, or even a bit better). "Universal" in that virtually every device supports G.711. Takes a lot of bandwidth, it doesn't really compress data (G.711 is a "compander"). The baseline G.711 is pretty bare-bones (its really a couple of look up tables). Appendix I adds packet loss concealment (PLC) and Appendix II adds silence suppression and comfort noise generation.

GSM - 在手机上使用,声音效果良好,良好的PLC,良好的COM pression

GSM - used on cellphones, sounds ok, good PLC, good compression

G.729A - 广泛使用,收费站附近的质量,良好的COM pression(为8Kbps)

G.729A - widely used, near toll quality, good compression (8Kbps)

G.723.1 - 广泛使用,几乎一样好G.729,更好地融为一体pression(4-5Kbps)

G.723.1 - widely used, almost as good as G.729, better compression (4-5Kbps)

G.722 - 听起来比G.711更好,宽带(G.711的两倍音频带宽或模拟电话),上线为G.711

G.722 - sounds better than G.711, wideband (twice the audio bandwidth of G.711 or an analog call), same bandwidth used on the line as G.711

GIPS - 各种implemnetations存在,一个是免费的。 IIRC,使用大约13.5Kbps就行了,声音也没有那么好asG.723.1(但是这是一个感性的度量,情况因人而异)需要大量的处理器。

GIPS - various implemnetations exist, one is free. IIRC, uses about 13.5Kbps on the line, sound is not as good asG.723.1 (but this is a perceptual metric, YMMV) Takes a lot of processor.

所有codecs的使用一些处理器和其它系统资源,作为拇指的更积极的codeC(带宽越小)越处理器中使用的规则。此外,所有这些特殊的codeCS技术都是有损codeCS - 他们失去了一些数据。这意味着有玉米pression,而不是音频的部分由于路由差和线路质量差下降。就像一个MP3被认为有损codeC,而FLAC是无损考虑。如果你感兴趣下面的维基百科文章解释更详细:http://en.wikipedia.org/wiki/Lossy_com$p$pssion

All the codecs use some processor and other system resources, as a rule of thumb the more aggressive the codec (the smaller the bandwidth) the more processor used. Also, all of these particular codecs are lossy codecs--they lose some of the data. This means that there is compression, not that portions of the audio are dropped due to poor routing and poor line quality. Much like an MP3 is considered a LOSSY codec while FLAC is considered Lossless. If you're interested the following wikipedia article explains in further detail: http://en.wikipedia.org/wiki/Lossy_compression