これまで何回かに分けて書いてきたが、一応イオンSIMの100kbpsでVoIPで音声通話ができたのでまとめておこう。
用意したもの。
iPhoneとAEGphone、
LinuxサーバとAsterisk、
ソースコードの読み書き能力、
あきらめない気持ち。
iPhoneはあらかじめjailbreakしておく。
低帯域のコーデックを使う。具体的には、speex mode1を使う。
tcpでsip, rtpをトンネルする。具体的には、stoneを使う。
パケットあたりのデータ量を多くする。具体的には、一つのrtpパケットに複数のspeexフレームを収める。さらに、トンネル時に複数のudpパケットを一つのtcpパケットに収める。
とても大きいジッターバッファを使う。アスタリスクは設定でてきる。エイジフォン側は、自分でコーディング。
これでイオンSIMでもVoIPができた。ただ、遅延は大きい。よくて、衛星電話くらい、ひどいと、ボイスメッセージを頻繁にやり取りしている感じか。基本的には、通話相手が遅延があることを理解していないと難しいかな。
それでもできるとできないでは大違い。便利に使っている。こんなブログでも誰かの役に立てばいいな。
おしまい。
用意したもの。
iPhoneとAEGphone、
LinuxサーバとAsterisk、
ソースコードの読み書き能力、
あきらめない気持ち。
iPhoneはあらかじめjailbreakしておく。
低帯域のコーデックを使う。具体的には、speex mode1を使う。
tcpでsip, rtpをトンネルする。具体的には、stoneを使う。
パケットあたりのデータ量を多くする。具体的には、一つのrtpパケットに複数のspeexフレームを収める。さらに、トンネル時に複数のudpパケットを一つのtcpパケットに収める。
とても大きいジッターバッファを使う。アスタリスクは設定でてきる。エイジフォン側は、自分でコーディング。
これでイオンSIMでもVoIPができた。ただ、遅延は大きい。よくて、衛星電話くらい、ひどいと、ボイスメッセージを頻繁にやり取りしている感じか。基本的には、通話相手が遅延があることを理解していないと難しいかな。
それでもできるとできないでは大違い。便利に使っている。こんなブログでも誰かの役に立てばいいな。
おしまい。