RasPi2 Asterisk + g729 codec

g729 codec は有料なのですが、open source版があるようなのでこちらをインストールしてみます。

このサイトが参考になりました。

open source版を使うには、INTEL COMPILERが必要になってくるみたいですが、面倒なので、bcg729+g729 codecの組み合わせでやってみます。

bcg729のインストール

$ cd ~/src
$ wget http://download-mirror.savannah.gnu.org/releases/linphone/plugins/sources/bcg729-1.0.0.tar.gz
$ tar zxvf bcg729-1.0.0.tar.gz
$ cd bcg729-1.0.0
$ ./configure --libdir=/lib
$ make
$ sudo make install

g729 codecのインストール
autogenを使っているので、libtoolをインストールしておく

$ sudo apt-get install libtool
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下の特別パッケージがインストールされます:
libltdl-dev
提案パッケージ:
libtool-doc gfortran fortran95-compiler gcj
以下のパッケージが新たにインストールされます:
libltdl-dev libtool
アップグレード: 0 個、新規インストール: 2 個、削除: 0 個、保留: 0 個。
821 kB のアーカイブを取得する必要があります。
この操作後に追加で 2,360 kB のディスク容量が消費されます。
続行しますか [Y/n]? Y

$ cd ~/src
$ wget http://asterisk.hosting.lv/src/asterisk-g72x-1.3.tar.bz2
$ tar jxvf asterisk-g72x-1.3.tar.bz2
$ cd asterisk-g72x-1.3

configure.acを修正する。

$ vi configure.ac
$ diff configure.ac configure.ac-
30,32c30,32
<   armv7l-*-linux-gnueabihf*)
<     cflags="-Os -pipe -mcpu=cortex-a9 -mtune=cortex-a9 -mfpu=vfp -mfloat-abi=hard"
<     march="armv7-a"
---
>   armv6l-*-linux-gnueabihf*)
>     cflags="-mcpu=arm1176jzf-s -mfloat-abi=hard -mfpu=vfp -O3 -Wall"
>     march="armv6zk"

autogen.shを走らせる

$ ./autogen.sh
$ ./configure --with-bcg729 --with-asterisk18
$ make
$ sudo make install

g729 codecが読み込まれているか確認するため、asteriskを再起動する。

$ sudo /etc/init.d/asterisk restart
$ sudo asterisk -vvvvv
CLI> 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     -     -     2     2    10001     2     1 10001 40001     - 50001 10001     2      -       -      3     -       -       2
     ulaw     - 10001     -     1    10001     2     1 10001 40001     - 50001 10001     2      -       -      3     -       -       2
     alaw     - 10001     1     -    10001     2     1 10001 40001     - 50001 10001     2      -       -      3     -       -       2
 g726aal2     - 10001     2     2        -     2     1 10001 40001     - 50001 10001     2      -       -      3     -       -       2
    adpcm     - 10001     2     2    10001     -     1 10001 40001     - 50001 10001     2      -       -      3     -       -       2
     slin     - 10000     1     1    10000     1     - 10000 40000     - 50000 10000     1      -       -      2     -       -       1
    lpc10     - 20000 10001 10001    20000 10001 10000     - 50000     - 60000 20000 10001      -       -  10002     -       -   10001
     g729     - 10001     2     2    10001     2     1 10001     -     - 50001 10001     2      -       -      3     -       -       2
    speex     -     -     -     -        -     -     -     -     -     -     -     -     -      -       -      -     -       -       -
     ilbc     - 20000 10001 10001    20000 10001 10000 20000 50000     -     - 20000 10001      -       -  10002     -       -   10001
     g726     - 20000 10001 10001    20000 10001 10000 20000 50000     - 60000     - 10001      -       -  10002     -       -   10001
     g722     - 10001     2     2    10001     2     1 10001 40001     - 50001 10001     -      -       -      1     -       -       2
   siren7     -     -     -     -        -     -     -     -     -     -     -     -     -      -       -      -     -       -       -
  siren14     -     -     -     -        -     -     -     -     -     -     -     -     -      -       -      -     -       -       -
   slin16     - 10002     3     3    10002     3     2 10002 40002     - 50002 10002     1      -       -      -     -       -       3
     g719     -     -     -     -        -     -     -     -     -     -     -     -     -      -       -      -     -       -       -
  speex16     -     -     -     -        -     -     -     -     -     -     -     -     -      -       -      -     -       -       -
  testlaw     - 10001     2     2    10001     2     1 10001 40001     - 50001 10001     2      -       -      3     -       -       -

g729が使えるようになってますね。

sip.confとextentions.confを書けばとりあえずは、使える状態になりました。

後は、時間をかけてsip.conf , extentions.confを作成していきます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA