CSipSimpleではいろいろコーデックを選ぶことが出来ます。FUSION IP-Phone SMARTでは必要帯域の小さい順にSpeex(8kHz)、iLBC、GSM、G711μ(=PCMU 8kHz)、G.722に対応していると記載されています。
そこでSH-02Eを用いて、実際に各コーデックで気象庁の177天気予報電話サービスに電話をかけて録音してみました(エコーキャンセルON+音声検出ONの状態)。横浜の天気予報を読み上げてもらうため、市外局番045をつけて、045-177にダイヤルしました。自宅はまだXiエリア(LTE)になっておらず、FOMAプラスエリア(HSDPA)での通信となっています。Wi-Fiはフレッツ光ネクストのマンションタイプ(VDSL)なので、最高で100Mbpsのサービスで、速度測定サイトでは上下ともにほぼ85〜95Mbpsが出ています。無線LANルーターはドコモの「自宅でサクサク 無線LANスタートキャンペーン」でもらった、NECのAterm WR8165N(STモデル)を利用しています。
- Speex 8kHz:HSDPAとWi-Fi
- iLBC 8kHz:HSDPAとWi-Fi(番外編としてWi-FiでエコーキャンセルOFFと音声検出OFF)
- GSM 8kHz:HSDPAとWi-Fi
- PCMU 8kHz:HSDPAとWi-Fi
- G722 16kHz:HSDPAとWi-Fi
いかがでしょうか? iLBC 8kHzのWi-Fiですが、扇風機の前で話しているかのような、ありえない音質だったため、番外編としてエコーキャンセルOFF(音声検出はON)と、音声検出OFF(エコーキャンセルはON)でも録音してみたところ、片方だけの機能をONにしていれば問題ないことが分かりました。
HSDPA環境では、Speex 8kHzがしっかり聞き取ることが出来ていいかなと思います。声色も重視するなら、iLBC 8kHzがよいかと思います。GSMやPCMUは風邪を引いたハスキーな声みたいになり、ちょっと聞き取りにくいですね。
Wi-Fi環境では、声色という意味ではダントツG722 16kHzがいいと思いますが、安定度はPCMUに軍配が上がりますね。しっかり聞き取れるという意味ではSpeex 8kHzが聞きやすいような気がしました。条件付ならばiLBCもまぁまぁ聞きやすいかなと思います。
これらの結果から、やはり「帯域別のコーデック優先リスト」は利用した方が良さそうですね(この機能をOFFにしても、なぜかONの状態でアプリは動作してますし:アプリのバージョン1.00.00 r2225)。「早い」には上から順に、PCMU 8kHz、iLBC 8kHz、speex 8kHz。「遅い」には上から順にspeex 8kHz、ILBC 8kHz、PCMU 8Hzとしてみました。そして、エコーキャンセルはON、音声検出はOFFとしてみました(このON・OFFがデフォルト設定なのですよね、元々は)。
自宅と職場付近がLTEとなったら、またいろいろ実験して最適なコーデック設定をしてみたいと思います。
便利なおまけ機能については、次回書きます。