MediaMTXを実行して必要なポートを開放するだけでとりあえず使えるようになる
マイクラマルチの鯖建て程度の経験がある人向け簡易メモです
VRChatter向けに分かりやすく言うとTopazChatを自前で建てて遊ぼうというお話です
TopazChatはMediaMTXを採用しているためちょうど同じ物です
MediaMTXはちゃんとマルチスレッド対応なので、
コア数だけ多くてクロック低いような型落ちXeonサーバーでも活躍出来ます
VRChat用途ではRTSPポート(TCP8554,UDP8000,UDP8001)とRTMPポート(TCP1935)を開ける
必要に応じてポート番号を変えても良い
自分のmediamtx.yml設定
overridePublisher: no
デフォルトのyesだと配信中ストリームキーの割り込み配信が出来るようになる
イタズラ悪用される可能性を残す必要は無いのでnoにする
writeQueueSize: 131072
デフォルトの512でも問題ないと思う
自分は接続多数でも安定するように増やした
増やすとメモリ使用量が増えるので、使えるメモリ量と相談
自分のLinux自動起動設定
/etc/systemd/system/mediamtx.service
[Unit]
Wants=network.target
[Service]
ExecStart=/usr/local/bin/mediamtx /usr/local/etc/mediamtx.yml
User=mediamtx
Group=mediamtx
Nice=-20
Restart=always
[Install]
WantedBy=multi-user.target
自分はMediaMTXを主目的としたオンプレサーバーを組んだので、
MediaMTXを最優先で実行するために Nice=-20 を設定した
加えてcron使って朝7時とかに自動restartすると良い(設定タイムゾーンは要確認)
0 7 * * * /usr/bin/systemctl restart mediamtx
Windows版MediaMTXもあるよ
余ってるPCを使ってMediaMTXを実行すれば即席RTSPサーバーの出来上がり
タスクマネージャーでMediaMTXの優先度を上げればある程度安定する
当然だけど無線LAN(Wi-Fi)ではなく有線LANで接続する
なお一般向けのWindows Home/ProはTCP同時接続数20制限があり、20人までしか配信を届ける事が出来ない(有名な回避策があった気がするけどライセンス違反なのでここでは言及しない)
TCP同時接続数制限が無いWindows Serverという選択肢があるが凄く高い💸
イベント用途で本格的にMediaMTX専用にするなら、Windowsを消してRHEL(開発者無料)やUbuntu Server(無料)等のLinux CUI環境をクリーンインストールして使うのが無難
または回線が強いクラウドVPSをレンタル
接続先
信頼されていないURLを許可(Allow Untrusted URLs)をONにする案内を忘れずに行いましょう
ONにし忘れると流れません
- ワールド再生(iwaSync・YamaPlayer等)はRTSPのTCPポートのrtspt://で始まるURLを入力
rtspt://接続先:8554/ストリームキー - OBS配信者向けはRTMPポートのrtmp://で始まるURLを渡す
rtmp://接続先:1935 - OBSカスタム出力(FFmpeg)配信者向けはRTSPのTCPポートのrtsp://で始まるURLを渡す
rtsp://接続先:8554/ストリームキー
Unityのワールドプロジェクト上でiwaSyncのUse Low Latency(低遅延モード)をONにする
音量を100%(Unity上の値を1)にすればTopazChat Playerと同じ配信音量で聞く事が出来ますが、この状態で動画URLを入れてはいけません、音量差で観客の耳を破壊してしまいます
マイクラマルチ鯖等でポート開放経験があれば、MediaMTX辺り使えば誰でもRTSP鯖建てれるので、みんな気軽に建てて遊んでほしい
— れもん果汁🍋 (@LemonKaju) October 29, 2024
特に大規模イベントでTopazChatを借りてきた層が自前で配信サーバーを持てば負荷軽減効果は大きいしイベントのクォリティUPにも繋がる https://t.co/7tasJP0MTS
0 件のコメント:
コメントを投稿