logo

momoMomo とは

Momo はウェアラブル端末や Raspberry Pi など、ブラウザのない機器からでも WebRTC で映像や音声を配信できるネイティブクライアントです。
株式会社時雨堂が開発し、Apache License 2.0 のオープンソースソフトウェアとして GitHub 上に公開しています。

momoおしらせ

2020.06.16
WebRTC Native Client Momo 2020.7 をリリースしました
  • Windows / Linux 版でスクリーンキャプチャに対応しました
  • NVIDIA の Jetson AGX Xavier と Jetson Xavier NX に対応しました
  • libwebrtc M84 に対応しました
  • Ubuntu 20.04 x86_64 に対応しました
  • 実験的に Raspberry Pi OS 64bit に対応しました
詳細はリリースノートをご確認ください
2020.04.27
WebRTC Native Client Momo 2020.6 をリリースしました
  • test モードのシグナリング仕様を Ayame ほぼ互換にしました
詳細はリリースノートをご確認ください
2020.04.14
WebRTC Native Client Momo 2020.5 をリリースしました
  • AV1 に対応しました
詳細はリリースノートをご確認ください
2020.04.01
WebRTC Native Client Momo 2020.4 をリリースしました
  • Windows でも --video-device を指定できるようになりました
詳細はリリースノートをご確認ください
2020.03.10
WebRTC Native Client Momo 2020.3 をリリースしました
  • Windows / Linux 版の NVIDIA VIDEO CODEC SDK に対応しました
  • libwebrtc M81 に対応しました
  • 証明書チェック関連の機能を追加しました
詳細はリリースノートをご確認ください
2020.02.14

WebRTC Native Client Momo が NVIDIA Jetson Community Projects に登録されました

2020.02.05
WebRTC Native Client Momo 2020.2 をリリースしました
  • Windows 10 上で動作するようになりました
詳細はリリースノートをご確認ください
2020.01.15

Jetson Nano で 4K 30fps を実現している動画を公開しました

2020.01.20
WebRTC Native Client Momo 2020.1 をリリースしました
  • --serial でデータチャネル経由でのシリアルの読み書きに対応しました
  • ビデオデバイスの指定を Linux 全般で利用できるようにしました
  • 解像度の値を自由に指定できるようにしました
  • libwebrtc M80 にアップデートしました
  • momo --help を英語化しました
詳細はリリースノートをご確認ください
2020.01.20
WebRTC Native Client Momo のサイトをリニューアルしました

momo特長

オールインワン
Momo は、シグナリング機能、エンコーダ/デコーダ機能、デバイス認識機能を搭載しており、Momo だけでカメラからの映像を読み込み、変換し、配信することができます。
簡単なビルド
ビルド周りにはこだわり、効率とシンプルさを徹底的に追求したビルド環境を用意しています。コマンドを1つ打つだけでバイナリが生成できます。
ハードウェアエンコーダ対応
Momo では H.264 ハードウェアエンコーダを利用することで、CPU リソースをほとんど使わずに高画質の配信ができます。プラットフォームとして Raspberry Pi、NVIDIA Jetson Nano、NVIDIA VIDEO CODEC SDK、Apple macOS に対応しています。

  • NVIDIA VIDEO CODEC SDK の例

4 K 対応
Momo ではハードウェアアクセラレータを利用することで、4K / 30FPS での高画質な配信が可能です。
3 種類の配信モード
Momo は、「テストモード」「Ayame モード」「Sora モード」の 3 種類を用意しています。
それぞれの詳細は こちら で紹介しています。
  • テストモード
    本来は Momo 自体の開発者向けに用意されているモードです。
    このテストモードでは Momo 自体に内蔵しているシグナリングサーバを利用するため、 まず Momo の動作を確認したいという場合にも利用できます。
  • Ayame モード
    時雨堂が提供する「WebRTC シグナリングサーバ Ayame」と組み合わせて使うモードです。
    Momo と WebRTC クライアント間で、映像・音声・データを 1 : 1 で送受信することができます。
  • Sora モード
    時雨堂が提供する「WebRTC SFU Sora」と組み合わせて使うモードです。
    1 : 多および多 : 多 の配信や、録画・録音が必要な商用サービスでの利用を想定しています。
双方向配信
Momo は SDL (Simple DirectMedia Layer) を利用することで、双方向のやりとりも実現できます。 特に、Raspberry Pi と Jetson Nano では、ハードウェアデコーダを利用することで CPU の負荷を抑えて送受信できます。
データチャネルとシリアル通信
Momo は Ayame と組み合わせることでデータチャネル経由でシリアル通信が可能です。
多くのプラットフォームで動作
Momo は Raspberry Pi や NVIDIA Jetson だけでなく、 macOS や Windows でも動作します
スクリーンキャプチャ対応
Windows と Linux 版ではスクリーンキャプチャに対応しています。
ROS 対応
Robot Operating System (ROS) というロボット用のソフトウェアプラットフォームに対応しています。
時雨堂によるメンテナンス
Momo は、商用サービス向けの WebRTC サーバを開発している時雨堂が常にメンテナンスをしています。WebRTC に関する豊富な知識とノウハウを活かし、適切なアップデートや機能追加を行っています。

momoまずは Momo を動してみる (テストモード)

Momo 自体がシグナリング機能を内蔵しているため、まず手始めに Momo の動作確認を行いたい場合に利用できます。

momo1:1 の配信をする (Ayame モード)

時雨堂が提供する「WebRTC シグナリングサーバ Ayame」と組み合わせて利用すれば、Momo と WebRTC クライアント間で、映像・音声・データを 1 : 1 で送受信することができます。

1 : 1 で映像や音声の送受信を行う場合

Momo は SDL (Simple DirectMedia Layer) を利用することで、双方向のやりとりも実現できます。
ハードウェア側では WebRTC で送受信する H.264 の映像をエンコードまたはデコードすることができます。
また、カメラデバイスから送られてくる MJPEG 形式の圧縮された映像は、Jetson Nano のハードウェアデコーダを利用することで、CPU の負荷を抑えて受信することができます。

1 : 1 でデータの送受信を行う場合

Ayame モードでは、データチャネル経由でシリアル通信が可能です。

momo1:多 の配信をする (Sora モード)

時雨堂が提供する「WebRTC SFU Sora」と組み合わせて利用すれば、1 : 多 の配信をしたり、配信した映像や音声を録画・録音したりすることも可能です。おもに商用サービスでの利用を想定しています。

多人数で送受信を行う場合

Momo は SDL (Simple DirectMedia Layer) を利用することで、双方向のやりとりも実現できます。Sora と組み合わせれば、以下のような多人数どうしでの送受信 (送信のみも可) も実現できます。

momo利用例

個人でご利用いただいている例

momo動作環境

  • Raspberry Pi OS ARMv8

    • Raspberry Pi 4 で動作
    • Raspberry Pi 3 で動作
  • Raspberry Pi OS ARMv7

    • Raspberry Pi 4 で動作
    • Raspberry Pi 3 で動作
    • Raspberry Pi 2 で動作
  • Raspberry Pi OS ARMv6

    • Raspberry Pi Zero で動作
  • Ubuntu 18.04 ARMv8

  • Ubuntu 20.04 x86_64

  • Ubuntu 18.04 x86_64

  • Ubuntu 16.04 x86_64 ROS Kinetic

  • macOS 10.15 x86_64

  • Windows 10 x86_64

momoダウンロード

Github のリリースから、すぐに使えるバイナリがダウンロードできます。

momo有料サポート

現在は、WebRTC SFU Sora をご購入いただいているお客様限定で、Momo と Sora を組み合わせてご利用いただく場合の技術サポートのみ、有料でご提供しています。

有料サポートをご希望のお客様は、Sora のサポートまでメールでご連絡ください。

momoコミュニティ

Momo のコミュニティはこちら

https://discord.gg/gmEuZye

momo関連製品・サービス

WebRTC で P2P の通信を行うためのシグナリングサーバです

大規模な配信を実現する商用サービス向けの WebRTC SFU です

WebRTC SFU Sora を無料で検証できるサービスです