如何在Android应用程序中添加g729编解码器?

我正在开发一个用于拨打和接听电话的SIP应用程序,我想在我的应用程序中添加G729编解码器.

目前我正在对开源项目SipDroid进行分析.如果我想让该应用程序支持G729编解码器怎么做?

org.sipdroid.codecs package中有一个不同的编解码器配置文件.为G729编解码器创建这种.java文件吗?

任何建议和回应将不胜感激.

日志信息的星号

Found RTP audio format 101
Found audio description format telephone-event for ID 101
Found RTP video format 103
Found video description format h263-1998 for ID 103
Capabilities: us - 0x100 (g729), peer - audio=0x0 (nothing)/video=0x100000 (h263p)/text=0x0 (nothing), combined - 0x0 (nothing)
Non-codec capabilities (dtmf): us - 0x1 (telephone-event|), peer - 0x1 (telephone-event|), combined - 0x1 (telephone-event|)
[Apr  9 18:00:25] NOTICE[3813]: chan_sip.c:9187 process_sdp: **No compatible codecs**, not accepting this offer!

SDP

To: <sip:5003@192.168.1.17>
From: <sip:5004@192.168.1.17>;tag=z9hG4bK80811693
Call-ID: 082004294635@10.0.2.15
CSeq: 2 INVITE
Contact: <sip:5004@10.0.2.15:36252;transport=udp>
Expires: 3600
User-Agent: MySipdroid. !/2.4 beta/sdk
Authorization: Digest username="5004", realm="asterisk", nonce="6264308a", uri="sip:5003@192.168.1.17", algorithm=MD5, response="fb6dfb528d362657ef01458f96653adb"
Content-Length: 137
Content-Type: application/sdp

v=0
o=5004@192.168.1.17 0 0 IN IP4 10.0.2.15
s=Session SIP/SDP
c=IN IP4 10.0.2.15
t=0 0
m=audio 21000 RTP/AVP
a=fmtp:18 annexb=no
<------------->
--- (13 headers 7 lines) ---
Sending to 192.168.1.17:35370 (NAT)
Using INVITE request as basis request - 082004294635@10.0.2.15
Found peer '5004' for '5004' from 192.168.1.17:35370
  == Using SIP RTP CoS mark 5
Capabilities: us - 0x100 (g729), peer - audio=0x0 (nothing)/video=0x0 (nothing)/text=0x0 (nothing), combined - 0x0 (nothing)
Non-codec capabilities (dtmf): us - 0x1 (telephone-event|), peer - 0x0 (nothing), combined - 0x0 (nothing)
[Apr 10 12:01:05] NOTICE[3524]: chan_sip.c:9187 process_sdp: No compatible codecs, not accepting this offer!

显示翻译结果

core show translation
         Translation times between formats (in microseconds) for one second of data
          Source Format (Rows) Destination Format (Columns)

           g723   gsm  ulaw  alaw g726aal2 adpcm  slin lpc10  g729 speex  ilbc  g726  g722 siren7 siren14 slin16  g719 speex16 testlaw
     g723     -     -     -     -        -     -     -     -     -     -     -     -     -      -       -      -     -       -       -
      gsm     -     -  1001  1001     3000  2000  1000  3000  3999     -  8999  3999  1001      -       -   1002     -       -    1001
     ulaw     -  2000     -     1     2001  1001     1  2001  3000     -  8000  3000     2      -       -      3     -       -       2
     alaw     -  2000     1     -     2001  1001     1  2001  3000     -  8000  3000     2      -       -      3     -       -       2
 g726aal2     -  2999  1001  1001        -  2000  1000  3000  3999     -  8999  3999  1001      -       -   1002     -       -    1001
    adpcm     -  2000     2     2     2001     -     1  2001  3000     -  8000  3000     2      -       -      3     -       -       2
     slin     -  1999     1     1     2000  1000     -  2000  2999     -  7999  2999     1      -       -      2     -       -       1
    lpc10     -  2999  1001  1001     3000  2000  1000     -  3999     -  8999  3999  1001      -       -   1002     -       -    1001
     g729     -  2999  1001  1001     3000  2000  1000  3000     -     -  8999  3999  1001      -       -   1002     -       -    1001
    speex     -     -     -     -        -     -     -     -     -     -     -     -     -      -       -      -     -       -       -
     ilbc     -  2998  1000  1000     2999  1999   999  2999  3998     -     -  3998  1000      -       -   1001     -       -    1000
     g726     -  2999  1001  1001     3000  2000  1000  3000  3999     -  8999     -  1001      -       -   1002     -       -    1001
     g722     -  2000     2     2     2001  1001     1  2001  3000     -  8000  3000     -      -       -      1     -       -       2
   siren7     -     -     -     -        -     -     -     -     -     -     -     -     -      -       -      -     -       -       -
  siren14     -     -     -     -        -     -     -     -     -     -     -     -     -      -       -      -     -       -       -
   slin16     -  3000  1002  1002     3001  2001  1001  3001  4000     -  9000  4000  1000      -       -      -     -       -    1002
     g719     -     -     -     -        -     -     -     -     -     -     -     -     -      -       -      -     -       -       -
  speex16     -     -     -     -        -     -     -     -     -     -     -     -     -      -       -      -     -       -       -
  testlaw     -  2000     2     2     2001  1001     1  2001  3000     -  8000  3000     2      -       -      3     -       -       -

sip.conf

[5004]
type=friend
username=5004
secret=5004
host=dynamic
context=testcontext
nat=yes
disallow=all
allow=g729
qualify=yes
callerid="919999121312"<5004>

解决方法:

你的星号日志看起来非常适合支持编解码器,但你需要在你的客户端安卓应用程序上使用g729编码器(现在似乎是商业许可证),如果你有幸获得编解码器的开源许可证,请告诉我. .

许可

G.729包括来自多家公司的专利,并由Sipro Lab Telecom授权. Sipro Lab Telecom是G.729技术和专利池的授权知识产权许可管理员.[3] [4] [5] [6]在许多国家/地区,使用G.729可能需要许可费和/或特许权使用费.[5]

资料来源:http://en.wikipedia.org/wiki/G.729

问候.

上一篇:Mac电脑如何通过终端隐藏应用程序?


下一篇:mac电脑的系统完整性保护SIP关闭方法