TechnoTUT Infrastructure 2024

TechnoTUT Infrastructure 2024

Tags
TechnoTUT Adcal2024
Published
December 20, 2024
Author
Kanta Onodera / DDlia
Description
この記事は”TechnoTUT Advent Calendar 2024”の20日目の記事です。

はじめに

音楽技術部3年目の小野寺です。B1(2022年)の10月頃に音楽技術部の前身の総合文化部音楽技術部門に入部し、以来技術班として活動してました。
この記事ではいわゆる「テクノ部の裏側」のうち小野寺担当分を導入経緯も含めて解説しつつ、引継資料を兼ねたいと思います。

宣伝コーナー

テクノ部の裏側 - Web編

ホームページ - technotut.net

 私は紆余曲折あってB1後期である2022年10月に入部したのですが、当時の先輩方からサークルのホームページほしいな〜という声を聞いていました。ちょうど自分用のホームページ https://ddlia.com/ を立てたところだったのでついでにテクノ部のホームページも作りました。このときに取得したドメインが technotut.net です。
 11月にとりあえずで作ったホームページでしたが、2023年3月に新入生向けにリニューアルをします。2日くらいで作ったのでソースコードがとんでもないことになってる。
フレームワークにはNext.jsを使って、GitHub ActionsでHTMLファイルを出力してCloudflare Pagesでホストしています。DTM班各位にも協力してもらって、隠しページを仕込んでいます。
notion image
 
おまけ: 部長目線のお話
 

VR部室

 B1の4月から入部していたコンピュータクラブのホームページには、当時の部長さんが作ったVR部室のページがあります。
テクノ部の方でも同様のものを作れないかなと調べてみると、aframe というのを使えば簡単に実現できそうだとなりました。
出来上がったのがこちら。Google Pixelで360°撮影をして、画像データを貼り付けるだけで作ることができます。

Blog

 ホームページには、実は投稿機能があります。
しかしながら、編集にはNode.jsの環境構築とGitの操作が必要であり、部員にホームページ編集が定着しませんでした。そこでNotionを利用したホームページ編集をできるようにすれば多くの部員が編集できるだろうということで、とりあえずNotionで編集できるBlogを用意しました。
 ちょうどアドベントカレンダーの季節に使えるようになったので、TechnoTUT Advent Calendar 2024は基本的にこちらを使ってもらうようにしてもらっています。
テクノ部アドカレを書いたそこの部員、ホームページに実装されたらぜひ書いてね♡

テクノ部の裏側 - 映像編

VJ周り

 2022年11月、この時期は私が私物で超単焦点のプロジェクタを持ってきて、DJの後方にスクリーンを設置する形式にコモンズのレイアウトが変わり、VJが本格稼働し始めた時期でした。
この頃はPCと人間の負荷分散を目的として、2台のPCで動画再生とVJを分担をしていました。2台のPCで映像をやりとりをするために、NDIというのを使いました。キャプチャーボードと長いHDMIケーブルを買うお金が無かったので。
 NDIとは、簡単に言うとIP (インターネットプロトコル) で映像を送受信する規格です。みなさんがこの記事を見たり、XとかInstagramでポストしたりするときに使うIPを使っているのでLANケーブルだったり光ケーブルだったりを使えます。
NDIを使うことによって、HDMIの距離的制約を受けなくなりました。HDMIケーブルは仕様に距離が策定されていないらしく、機器の組み合わせによって伝送距離が変わる上、15m~20mが限界です。対してLANケーブルは仕様に100mと策定されているのでHDMIケーブルよりも圧倒的に長い距離を伝送できます。光ケーブルを使用すればkm単位の距離を伝送できます。
加えて、無線伝送ができます。Wi-Fiを使用すればケーブルに縛られない自由な配置が実現できます。

無線撮影

 2024年3月、B4・M2の卒業生を送り出すイベント「追いコン」を開催し、このイベントで初めて撮影機能を投入しました。イベントを見返したいという声は大きく、現在でも各部員から好評を頂いております。
無線撮影には2つのプロトコルを用いていて、先述のNDIとRTMPというものを使っています。NDIでは広帯域超低遅延(50ミリ秒程度)、RTMPでは低帯域中遅延(2~3秒程度)で伝送できます。
NDIで3台のスマートフォンから映像を転送し、RTMPで2台のSony製カメラとGoProからの撮影映像を転送しています。
TechnoTUT 撮影システム アーキテクチャ
TechnoTUT 撮影システム アーキテクチャ
 
RTMPを扱う際のサーバーソフトウェアにはNginxをベースにTechnoTUT用にカスタマイズしたものをKubernetesクラスタに載せています。詳細は以下をご覧ください。
 

テクノ部の裏側 - 情報基盤編

ネットワーク

 2022年12月2日、TechnoTUTは 𝓞𝓾𝓻 𝓷𝓮𝔀 𝓰𝓮𝓪𝓻 を手にします。
 
ここで、XDJ-XZがやってきます。XDJ-XZが導入されてからPRO DJ LINKが使えるようになり、自動演出機能に革命が起きます。
 
Beat Link Triggerを使うことによって、遠隔での曲情報・波形の確認、VJソフトウェアのBPMの自動同期、照明とのBPMの自動同期、会場内のモニターへの曲名表示ができるようになりました。
 
PRO DJ LINKを皮切りに、NDIや照明機器との通信等のために業務用ネットワーク機器が導入され、VLANやリンクアグリゲーション、スパニングツリープロトコルの設定が投入されたり光ファイバ・光トランシーバーが各所に使われるようになりました。BGPやOSPFによる経路情報の交換もやってたりします。
技科大祭2023準備
技科大祭2023準備
 
技科大祭2024 全体アーキテクチャ
技科大祭2024 全体アーキテクチャ
 
詳細は以下をご覧ください。

仮想環境

 2023年1月、サーバを導入し、Proxmox VEをインストールして仮想環境を用意しました。Beat Link Triggerや網内のDNSサーバはこの仮想環境上で動いています。
仮想環境のよいところは、簡単に作って壊せることです。簡単に検証作業を始めて、うまく行けばそのまま本番環境に載せることができます。必要が無くなれば壊せるし、他の仮想環境で採取したスナップショットから移植することもできます。

ディスクレスブート

 TechnoTUTでは、裏側のWindowsからLinuxへの移行を進めています。これは、2025年10月でWindows10のサポートが終了するためです。Linux環境を運用する上で、イベントのときのみ利用するコンピュータの管理(OSのインストール、パッケージのアップデートなど)はとても大変です。
Ubuntu・Debianでは、LTSPを利用すれば特定の環境を複製することができます。利用方法もLANケーブルを挿してネットワーク起動するだけです。各PCにディスクを搭載する必要も無いので、故障率と維持コストを低く抑えてくれます。

コンテナオーケストレーション

 TechnoTUTではコンテナの管理基盤としてシングルノードKubernetesクラスタを運用しています。コンテナを利用することで、仮想環境よりも高速で実行できます。あらゆるOSで実行できるので手元のPCで開発もできます。
Kubernetesを利用することで、複数のコンテナの管理が用意になります。マニフェストファイルによってコンテナの理想的な状態を定義しておけば、理想状態になるように管理してくれます。ArgoCDを利用すれば、GitHubに置いたマニフェストファイルを読み取って管理することができ、GitHub上のマニフェストファイルを更新すれば、更新内容に合わせて自動で更新してくれます。

テクノ部の裏側 - 照明編

 2024年11月23日、コモンズイベント「The Utopia Tone Vol.1」が開催されました。部で所持しているムービングライト、パーライト及びムービングライトを動かすためにDMX信号を送出できるようにしました。
 
DMX信号について:
 
DMX信号はこのようなアダプタがあればPCから送出できます。
 
PCにUSB-DMXの変換ケーブルを挿し、QLC+という制御ソフトウェアを使います。
Windows、Mac、Linuxで動作します。TechnoTUTではUbuntuをインストールしたThinkPadを使っています。設定ファイルはまだ詰めれていませんがここに置いています。
発光パターンとかもっとたくさんつくりたい。興味ある人募集してます。

おわりに

 急いで書いたので薄めになりましたが、どこかに興味が湧いた人にはぜひぜひ関わって頂きたいです。後輩のみなさまには僕みたいな先輩の顔色は伺わずに、ぜひ部室で手を動かしてあらゆる試行錯誤をやってほしいと思います。
トップへ戻る