Thanks to visit codestin.com
Credit goes to github.com

Skip to content

optakeaki/momo

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WebRTC Native Client Momo

GitHub tag (latest SemVer) License Actions Status

About Support

We check PRs or Issues only when written in JAPANESE. In other languages, we won't be able to deal with them. Thank you for your understanding.

WebRTC Native Client Momo について

WebRTC Native Client Momo は libwebrtc を利用しブラウザなしで様々な環境で動作する WebRTC ネイティブクライアントです。

ハードウェアエンコーダへの対応

  • Raspberry Pi の GPU に積まれている H.264 ハードウェアエンコーダー機能を利用することが可能です
  • macOS に積まれている VideoToolbox の H.264 ハードウェアエンコーダー機能を利用することが可能です
  • Jetson Nano に搭載されている H.264 ハードウェアエンコーダー機能を利用することで H.264 を 4K@30 での配信が可能です。

データチャネル経由でのシリアルの読み書き

Momo はデータチャネルを利用しシリアルに直接読み書きが可能です。信頼性より低遅延を優先したい場合の利用を想定しています。

SDL を利用した音声や映像の受信

Momo を GUI 環境で利用した場合、Simple DirectMedia Layer を利用して音声や映像の受信を行うことができます。

ROS への対応

ROS ノードとしても利用可能です。

OpenMomo プロジェクトについて

OpenMomo は WebRTC Native Client Momo をオープンソースとして公開し継続的に開発を行っていくプロジェクトです。 ブラウザやスマートフォン以外からの WebRTC をいろいろな用途で使ってもらえればと思っています。

詳細については下記をご確認ください。

OpenMomo プロジェクト

開発について

Momo はオープンソースソフトウェアですが、開発についてはオープンではありません。 そのためコメントやプルリクエストを頂いてもすぐには採用はしません。

まずは Discord にてご連絡ください。

既知の問題について

既知の問題に対する解決方針

バイナリ提供について

4 種類のバイナリを配布しています。

  • Raspbian Buster ARMv7
  • Raspbian Buster ARMv6
  • Ubuntu 18.04 ARMv8 (Jetson Nano)
  • macOS 10.15 x86_64

動作環境

  • Raspbian Buster ARMv7
    • Raspberry Pi 4 B で動作
    • Raspberry Pi 3 B/B+ で動作
  • Raspbian Buster ARMv6
    • Raspberry Pi Zero W/WH で動作
  • Ubuntu 18.04 x86_64
  • Ubuntu 18.04 ARMv8 Jetson Nano
  • macOS 10.15 x86_64

以下はビルドが通ること以外は確認していません

  • Ubuntu 18.04 ARMv8
    • 今後削除予定
  • Ubuntu 16.04 x86_64 ROS Kinetic
  • Ubuntu 16.04 ARMv7 ROS Kinetic
    • Raspberry Pi 3 B+

使ってみる

Momo を使ってみたい人は USE.md をお読みください。

ビルドする

  • Linux 版 Momo のビルドしたい人は BUILD_LINUX.md をお読みください
  • macOS 版 Momo のビルドしたい人は BUILD_MACOS.md をお読みください

パッケージを作成する

パッケージ作成したい人は PACKAGE.md をお読みください。

バージョン番号について

YYYY.<その年にリリースした回数>

ライセンス

Apache License 2.0

Copyright 2018-2020, Shiguredo Inc, tnoho and melpon and kdxu

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Momo についての電子書籍

Momo のコントリビュータである @tnoho が書いた Momo のノウハウが沢山詰まった本が販売されています。

WebRTCをブラウザ外で使ってブラウザでできることを増やしてみませんか?(電子版) - でんでんらぼ - BOOTH

サポートについて

WebRTC Native Client Momo に関するバグ報告は GitHub Issues へお願いします。 それ以外については Discord へお願いします。

バグ報告

https://github.com/shiguredo/momo/issues

バグ報告すべきか悩んだら Discord で気軽に相談してください。

理想的なバグ報告例

Discord

ベストエフォートで運用しています。

https://discord.gg/gmEuZye

有料サポートについて

WebRTC Native Client に対する有料でのサポート契約については WebRTC SFU Sora ライセンス契約をしているお客様が前提となります。

H.264 のライセンス費用について

H.264 ハードウェアエンコーダ のみ を利用している Momo 単体の配布においてはライセンス費用は不要ですが、 ハードウェアとセットで配布する場合はライセンス費用を支払う必要があります。

ただし、 Raspberry Pi においては H.264 のライセンスがハードウェア費用に含まれているため、配布時にライセンス費用を支払う必要はありません。

詳細については MPEG LA まで問い合わせる事をおすすめします。

利用例など

カスタマイズなど

OSS にて公開可能でさらに弊社が Momo に組み込んでも良いと思える機能開発であれば、お仕事としてお受けすることが可能です。

非公開のカスタマイズは時雨堂がお仕事としてお受けする事はできません。ただし Momo の開発を仕事として受けることが可能な開発者を紹介することが可能です。

まずは momo at shiguredo.jp までお問い合わせください。

About

WebRTC Native Client Momo

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 80.2%
  • Makefile 7.0%
  • Dockerfile 3.7%
  • Shell 3.4%
  • Objective-C++ 2.8%
  • JavaScript 2.7%
  • HTML 0.2%