2009年1月 7日 (水)

LinuxでEchoLink

EchoLinkを動かす際のOSの選択肢は、他VoIP無線に比べて多いようですね。MS Windows だけでなく、Linux、Macでも動作実績があるようです。

ノード局(EchoLinkで言うところのSysOpモード)を運用しようとした場合、コストや安定性の観点からLinuxを使いたいという要求も多いと思いますが、EchoLinkの場合Linuxベースの選択肢も以下のようにバラエティーに富んでいます。

1. EchoIRLP

これはIRLPノードにアドオンとしてtbd (thebridge)を追加することで、そのノードをEchoLinkネットワークにも接続できるようにしたシステムです。無線機とのインターフェースはIRLPボードをそのまま利用します。IRLPシステムが前提のため、OSはLinuxとは言えIRLP用にカスタマイズされたCentOSです。ちなみにカンファレンスとしては動作せず、IRLPとEchoLink間のブリッジはできません。

2. rtpDir

これはEchoLink, IRLP, Asterisk, D-Starの各システムに接続、あるいは相互にブリッジするためのソフトウェアで、当局が導入しているシステムです。rtpDir単体ではEchoLinkシステムとして動作します。無線機インターフェースもシリアルポート経由でEchoLink用インターフェースが利用できます。DTMFデコードはrtpDirでソフトデコードもできますし、VA3TOインターフェースなどに装備されている外付けDTMFデコーダも利用できます。Linux DistroもCentOS, Fedora, SUSE, RedHat, Debian, Ubuntuで実績があるようです。GUI版とテキストモード版の両方が用意されています。

3. tlb (thelinkbox)

EchoLinkカンファレンスを実現するtbd (thebridge)の拡張版です。EchoLinkだけではなく他VoIPシステム(IRLP, Asterisk, SpeakFreely)とのブリッジを可能としながら、さらに無線機コントロールの機能を追加しているようです。無線機インターフェースもEchoLinkで一般的なものから、IRLPボード、CM108ベースのUSBオーディオドングルをサポートしています。複数の無線機を異なるインターフェースで接続し、それぞれを個別にコントロールできます。GUIはなくテキストコマンドのみですが、コマンド体型もtbdの拡張です。

4. EchoLinux
5. SvxLink

上記2つは未経験のため詳細不明ですが、EchoIRLP/rtpDir/tlbに比べると
EchoLink特化型のようです。EchoLinuxの方はしばらくアップデートされていないようですね。

| | コメント (0) | トラックバック (0)

2008年11月27日 (木)

Asterisk: chan_dstar

rtpDirによるD-Starサポートに続いて、Asterisk/app_rptにおいても D-Star用のチャネルドライバchan_dstarが開発されました。現在テストが行われているようです。この場合もDVDongleが必要です。

chan_dstarは、rtpDirとは全く別物で、Asterisk/app_rpt単独システム上に載せるD-Starサポート用モジュールです。rtpDirは必要ありません。

逆にAsterisk/app_rptをrtpDirと共に使う場合には chan_dstar を入れてはいけません。これはEchoLink/IRLP用チャネルドライバ(chan_echolink, chan_irlp)も同様です。Asterisk/EchoLink/IRLP/D-StarとのインターフェースはrtpDirが行います。

| | コメント (0) | トラックバック (0)

2008年11月12日 (水)

rtpDirのD-Starサポート

rtpDirによるD-Starのサポート開発が進んでいるようです。すでにD-Star側の音声は復号できており、他のVoIPに流すことができているようです。他VoIPからの送り側もテストが進んでいるようです。

当ノードでも試してみたいのですが、私にはDV Dongleの入手をすぐに予定できそうにありません(値段が高いのと、クレジットカードで買えないようなので手間がかかりそう)。追々検討します。

| | コメント (0) | トラックバック (0)

rtpDirによるIRLP UNCOMPのサポート

IRLPでUNCOMPモードが正式サポートされたことに伴い、rtpDirにおいてもバージョン1.46でいくつかの修正が入りUNCOMPが使えるようになりました。

| | コメント (0) | トラックバック (0)

2008年11月 2日 (日)

IRLPでの音声CODECの選択

IRLPで今回UNCOMPモードがサポートされたことで、IRLPでは音声データの圧縮方法(CODEC)として、圧縮率の高い(=狭い占有バンド幅=低い音声品質)の順に:

  1. GSM (22Kbps)
  2. ADPCM (40Kbps)
  3. UNCOMP (80Kbps)

が使えることになります。それでは、相手との接続の時どのような組み合わせが使われるのでしょうか。もちろん、相手と同じCODECを使わないと交信できませんが、どのように選択されるのでしょうか。

まずは、自分のノードの $CUSTOM/environmentファイルに、自分が使うデフォルトのCODECが設定されています。

(1)Node-to-Node の時
この場合には、お互いが接続交渉時に自分のデフォルトCODECを知らせ合い、どちらかより狭いバンド幅(高い圧縮率)の方のCODECで合意、接続されます。すなわち、片方がADPCMでもう片方がGSMの場合はGSM、片方がUNCOMP、もう片方がADPCMの場合には、ADPCMになります。

(2)Node-to-Reflectorの時
リフレクターは、そのチャネル毎に使われるCODECが決まっています。それは、$SCRIPTS/ref-x-referenceに記述されています。そして、ノード側のデフォルトCODECが何かに関わらず、そのリフレクターチャネルで指定されているCODECが使われます。

| | コメント (0) | トラックバック (0)

2008年10月31日 (金)

UNCOMP正式リリース

しばらくベータテスト期間であったUNCOMPモードが正式にリリースされ、いくつかの他のバグ修正と共に今日から各IRLPノードに自動配布されます。(毎日午前3時の自動更新でアップデートされます)

(但し、UNCOMPと言っていますが正確には8-bit uLawコーデックのようです。)

あるいは、$SCRIPTS/update files を実行することで、自動更新を待たずに手動でアップデートすることができます。

更新されるファイルは$HOME以下の次のファイルです:

bin/imike
bin/ispeaker
scripts/call
scripts/connect_to_reflector
scripts/nobackup.list
scripts/off
scripts/on
scripts/on_to_remote
scripts/ref-x-reference
scripts/sfswrapper

デフォルトをUNCOMPモードにするには、$CUSTOM/environmentファイルの中の DEFAULTCODEC環境変数をUNCOMPに変更します。

export DEFAULTCODEC=UNCOMP

environmentファイルはroot権限で修正する必要があります。またこのファイルを修正した後は、

$CUSTOM/rc.irlp

を実行して、一度IRLPをリセットする必要があります。

音質のよいことで評判のIRLPが、さらによい音質になります。

| | コメント (0) | トラックバック (0)

2008年10月28日 (火)

rtpDirへの無線機の接続

私のrtpDirノードでは、無線機をIRLP I/Fカード経由と、URI経由で1台づつ接続しています。その中でもIRLPに接続されている方をメインに使用しています。それは、rtpDir導入前まで私のノードがIRLPであったためDTMFコマンド体系を継承したかったこと、そして何よりIRLPではスクリプトを書くことでコマンドを色々柔軟にカスタマイズができることが理由です。

しかし、rtpDirのGUI版でもシリアルポート経由で、EchoLinkで一般的に利用されている無線機インターフェースを介して無線機を接続・コントロールすることが可能です。COS信号ではなく、ソフトウェアVOXを使ったコントロールも可能なので、最低限PTTとサウンドーカードの配線だけでできますね。

ノードにrtpDir, IRLP, Asterisk/app_rptが入っているとして、可能な無線機接続の形態はどのソフトウェアが無線機をコントロールするかによって、以下のようにまとめることができます:

  1. rtpDirがコントロール
    ノードPCのシリアルポート、サウンドカード、無線機インターフェースが必要
  2. IRLPがコントロール
    ノードPCのパラレルポート、IRLPインターフェースカード、サウンドカードが必要
  3. Asterisk/app_rptがコントロール
    URIが必要

となります。これらのうち、どれか一つでもあればその無線機からすべてのVoIPシステムと交信ができます。

| | コメント (0) | トラックバック (0)

2008年10月 9日 (木)

Asterisk/app_rptのネットワークインストール

EVBベースのAsterisk/app_rptディストリビューションを提供しているXelatec社は、CD-ROMベースのインストールから、ネットワークインストールに切り替えたようです。PCをブートするためにCD-ROMを焼くことは必要ですが、ノード構築のために必要なOSやAsteriskその他のソフトウェアは自動的にダウンロードしてくるようです。これでインストールがやりやすくなりますし、アップデートもしやすくなりますね。最新のディストリビューションでは、chan_echolinkによるEchoLinkのサポートも含まれているようです。

詳細は XIPAR のサイトをご覧ください。

ちなみに、XIPARは"Xelatec IP Amateur Radio"の略で、Xelatec社がリードしているAsterisk/app_rptシステムを構築するためのオープンソース プロジェクトです。当局もこれを利用しています。

| | コメント (0) | トラックバック (0)

2008年10月 3日 (金)

EVBベースでAsterisk/app_rpt+rtpDirを構築する際の注意

EVB(EasyVoxBox)ベースでAsterisk/app_rptを構築する場合、インストラクションに従えばスムーズにビルド&インストールすることができます。さらにapp_rptがアップデートされた場合には、Updates for app_rptにあるように、/usr/local/bin/svn_rpt_updateを実行するだけでOKです。

Asterisk/app_rptノードとして使うだけなら上記だけで十分なのですが、ここにrtpDirをインストールするとなると一つ注意が必要です。その理由は、rtpDirがrtpDir用に修正されたAsteriskソースコードを必要とするからです。それらの修正されたソースコードはrtpDir yahoo groupのFilesセクションに常に最新のものがアップされています。(現時点では、修正されたapp_rpt.c, chan_rtpdir.cが必要)

rtpDirを使うためにはまず、これらのソースコードをAsteriskのソースディレクトリにコピーします。
app_rpt.c  -->  /usr/src/asterisk/apps
chan_rtpdir.c  -->  /usr/src/asterisk/channels
(これらのディレクトリにはオリジナルのファイルがシンボリックリンクで存在しますので、コピーの前にそれらを削除する必要があります。)

そして /usr/src/asterisk で ./configure, make, make install をすれば rtpDir対応のAsterisk/app_rptがビルド&インストールできます。

さて、注意点というのは、その後何らかの理由でsvn_rpt_updateを実行してしまった場合です。このディストリビューションは使用するソースコードを厳密に管理しており、ビルドする際大元のsubversionソースリポジトリからソースをコピーしてきますので、後からコピーした rtpDir向け修正版app_rpt.cやchan_rtpdir.cを上書き・消去してしまいます。よって、またrtpDir非対応のAsterisk/app_rptになってしまいます。

ですから、svn_rpt_updateを使ってapp_rptをアップデートしたら、再度rtpDir用修正版ソースコードをコピーして、手作業でビルドをしなおさなくてはいけません。

| | コメント (0) | トラックバック (0)

2008年10月 2日 (木)

chan_echolink

Asterisk/app_rpt用に、chan_echolinkいうチャネルドライバが開発されました。これによってAsterisk/app_rptノードはEchoLinkノードと接続が可能になります。但しこれはrtpDirやtlbといったブリッジを介して接続するような形態ではなく、Asterisk/app_rptシステムがEchoLink機能を包含し、直接的にEchoLinkと通信するようなイメージです。そういう意味ではEchoIRLPに似ていますが、EchoIRLPのように(言葉は悪いですが)半分無理やりIRLPに載せているのではなく、channelドライバというAsteriskの拡張性を使っていますので、うまく統合されています。

同様にchan_irlpも存在します。但し、こちらは前提としてIRLPがインストールされている必要があり、いくつかの標準IRLPシステムファイルを置き換えています。すなわちAsterisk/app_rptから同じノード内のIRLPをコントロールしているようなイメージです。

異なる種類のVoIPアマチュア無線が融合するまた一つの形態ですね。

| | コメント (0) | トラックバック (0)

«OIKey-F88