Mumble

Mumble(マンブル)は、ゲーマー向け音声通話用VoIPアプリケーション。

Skype、Discord、TeamSpeakなどと同様、フリーウェアとして公開されている。

概要

クライアント・サーバー型アーキテクチャーを採用していて、ユーザーが同じサーバーを介して互いに会話できる。 非常にシンプルなユーザーインターフェースを備えており、高音質と低遅延を特長としている。 すべての通信は暗号化され、ユーザーのプライバシーが確保される。

Mumbleは自由なオープンソースソフトウェアで、異なるOSでも使用可能なクロスプラットフォームとなっており、修正BSDライセンスの条件の下、公開されている。

 チャンネル階層 
Mumbleサーバー（「Murmur」と呼ばれる）には、ルートチャンネルとその下のチャンネルの階層ツリーがある。

ユーザーはこれらに一時的にチャンネルを接続することで、より大きな仮想チャンネルを作成することができる。

これは、チーム戦のFPSなどのゲームの大規模イベントなどで、グループのユーザーが小さなチャンネルでチャットしている場合に、他のユーザーと共通のルートチャンネルのアナウンスを聞くことができ、役立つシステムである。

各チャンネルには、グループの関連セットと、ユーザー権限を制御するアクセス制御リストがある。 多くの使用シナリオをサポートしているが、チャンネルの構造が複雑になりやすい。

 音質 
Mumbleは以前のデフォルトコーデックだったSpeexおよびCELTに続き、さらに低遅延なオーディオコーデックであるOpusバージョン1.2.4を使用している  。

この音声圧縮技術とMumbleの設計によって、低遅延の通信を可能にしている。

つまり、一方で何か言われてからもう一方で聞かれるまでの間隔が短くなることで、よりリアルタイムに近い会話が可能になった。 

また、Mumbleにはエコーキャンセル機能が組み込まれており、スピーカーまたは低品質のサウンドハードウェアを使用する場合のエコーを低減する。

 セキュリティとプライバシー 
Mumbleは、 TLS制御チャンネルを介してサーバーに接続し、UDPを介して送信される音声は、OCBモードのAESで暗号化される。バージョン1.2.9現在、Mumbleは、可能であればECDHE + AES-GCM暗号スイートを優先し、完全な秘密音声転送を可能としている。なお、バージョン1.2.0以降では、ユーザーのパスワードによる認証はサポートされているが、一般的には公開鍵証明書の形式での認証を推奨していない。

 オーバーレイ 
ゲーム画面上で表示される統合オーバーレイがあり、誰が話しているのか、どのリンクチャンネルにいるのかがわかるようになっている。

バージョン1.0以降、ユーザーはアバター(自分自身を示す画像)をアップロードしてオーバーレイで自分自身を表すことができ、ゲームをプレイしているときにもより他のプレイヤーを識別しやすくなった。

バージョン1.2の時点で、オーバーレイはWindows上のほとんどのDirect3D 9/10およびOpenGLゲームで動作し、LinuxおよびMac OS XでもOpenGLのものをサポートしている。なお、Windows上でのDirectX 11ゲームのサポートは後のバージョンから行われるようになった。

 定位置音声 
特定のゲームでは、ゲーム内のプレイヤーの位置に応じて、立体的に他のプレイヤーの声が聞こえるよう、音声に変更が加えられる。これには、方向感覚だけでなく、距離感も含まれ、特にFPSでは、この要素は重要である。

これを実現するために、Mumbleは各プレイヤーのゲーム内でのポジションを、すべてのオーディオパケットで同じゲーム内のプレイヤーに送信する。
Mumbleは、これを行うために必要な情報をゲームプログラムを実行しているメモリ本体から直接読み取るか、いわゆるゲームとはプラグインを介して必要な情報を収集する例えば、FPSゲーム「Alliance of Valiant Arms」(AVA)では、ゲーム本体とは別にブラウザ上からプラグインをダウンロードする方式だった。現在AVAでは、同じくフリーの音声通話ソフトDiscordに置き換わっている。。

Mumbleとのゲームのリンクプラグインは、Mumbleプロジェクトが提供する小さなソースコードをゲームプログラムに含めることで、位置オーディオに必要な情報を公開する方法がゲームに提供されているバルブ製のゲームエンジンであるSource Engineを採用するFPSゲーム『カウンターストライク』日本ではオンラインゲームとしてバルブとネクソンが共同開発し、ネクソンが提供していた「カウンターストライク オンライン」として知られる。日本版は2019年3月6日にサービス終了した。、『Team Fortress 2』、『Day of Defeatt: Source』、『ハーフライフ2』 やMMORPG『』などの有名なゲームがMumbleプラグインを実装している。

 モバイルアプリ 
もともと、デスクトップ版のみだったが、現在ではiOS用の「Mumble for iOS」(App Store)やAndorod用の「Plumble for Android」(Google Play、F-Droid)が提供されている。

 サーバー統合 
Mumbleは既存の技術的および社会的構造に適合している。そのため、サーバーはInternet Communications Engine上で完全にリモート制御可能、ユーザーチャンネルと仮想サーバーインスタンスを操作できる。このプロジェクトでは、インターフェイスの機能を示す多数のサンプルスクリプト既存のphpBBやSimple Machines Forumのデータベースを使用したユーザー認証などの機能を提供するプレハブスクリプトを提供している。murmurサーバーは、デフォルトでポート64738 TCPおよびUDPを使用する。

Mumbleサーバー（Murmur）の代替ミニマリスト実装は「uMurmur」と呼ばれ、たとえばOpenWrtを実行するレジデンシャルゲートウェイなど、リソースが限られている組み込みデバイスへのインストールを対象としている。

 サーバーホスティング 
他の多くのVoIPクライアントと同様、Mumbleサーバーはローカルでレンタルまたはホストできる。Mumbleサーバーをローカルでホストするには、Murmur（Mumbleインストーラーのオプションとして含まれている）をダウンロードして起動する必要がある。サーバーの構成は、構成ファイルを編集することで可能。
構成ファイルには、サーバー名、ユーザー認証、音質制限、およびポートに関する情報が含まれている。

また、サーバーを内部から管理するには、ユーザーに管理者権限を付与する必要がある。あるいは、スーパーユーザーアカウントにログインしてユーザーを管理することもできる。サーバー内の管理者は、ルームを追加または編集し、ユーザーを管理し、サーバーの情報を表示できる。

 脚注 

 関連項目 

 VoIPソフトウェア
Skype
Discord (ソフトウェア)
TeamSpeak

 外部リンク 
 Mumble 公式サイト(英語)

Category:インスタントメッセンジャー
Category:Androidのソフトウェア
Category:IOSのソフトウェア
Category:Linuxのソフトウェア
Category:Windowsのソフトウェア
Category:MacOSのソフトウェア
Category:VoIPのソフトウェア
Category:クロスプラットフォームのソフトウェア
Category:C++でプログラムされた自由ソフトウェア