2016-05-22 53 views

回答

4

我終於找到了一種方法(Ubuntu的14.04,需要PJSIP> = 2.5):

  1. 使用下面的命令安裝從源[email protected]

    $ curl -sO http://downloads.xiph.org/releases/opus/opus-1.1.2.tar.gz 
    $ tar xzvf opus-1.1.2.tar.gz \ 
        && rm opus-1.1.2.tar.gz \ 
        && cd opus-1.1.2 \ 
        && ./configure \ 
        && make && make check 
    
    $ sudo make install \ 
        && sudo ldconfig 
    
    $ ldconfig -p | grep opus 
    > libopus.so (libc6,x86-64) => /usr/local/lib/libopus.so 
    
  2. 安裝PJSIP @ 2.5根據http://trac.pjsip.org/repos/ticket/1904

    curl -sO http://www.pjsip.org/release/2.5/pjproject-2.5.tar.bz2 
    tar xjf pjproject-2.5.tar.bz2 \ 
    && rm pjproject-2.5.tar.bz2 \ 
    && cd pjproject-2.5/ \ 
    && ./configure --prefix=/usr --enable-shared --with-opus=/usr/local/ \ 
    && make dep && make 
    
    $ sudo make install && sudo ldconfig 
    
  3. 確保Ø PUS可以

    std::cout << "Available codecs:\n"; 
    for (auto c : Endpoint::instance()->codecEnum()) { 
        std::cout << " - " << c->codecId << " (priority: " << static_cast<int>(c->priority) << ")\n"; 
    } 
    

可用編解碼器:

  • 的Speex /一分之一萬六(優先級:130)
  • 的Speex/8000/1(優先級:129)
  • speex/32000/1(優先級:128)
  • iLBC/8000/1(優先級:128)
  • GSM/8000/1(優先級:128)
  • PCMU/8000/1(優先級:128)
  • PCMA/8000/1(優先級:128)
  • G722 /一分之一萬六(優先級:128 )
  • OPUS /二分之四萬八(優先級:128)
  • L16 /一分之四萬四千一(優先級:0)
  • L16 /二分之四萬四千一(優先級:0)
  • L16 /1分之8000 (優先級:0)
  • L16/8000/2(優先級Y:0)
  • L16 /一分之一萬六(優先級:0)
  • L16 /二分之一萬六(優先級:0)
  • 使用調整優先Endpoint::instance()->codecSetPriority("opus/48000", 131);
  • +0

    嗨,我得到了以下錯誤,當 - 跳過不兼容/usr/local//lib/libopus.so。任何線索?使用--use-ndk-cflags構建pjsip。這是否意味着我必須使用不同的編譯器來構建作品? – user12384512

    相關問題