スタンプキャストの使い方
StampCastは、Webページから送信したスタンプ画像を、Windowsパソコンの画面やOBS配信画面に表示できるシステムです。
たとえば配信中に視聴者が「こんにちは」「笑う」「ありがとう」などのスタンプを送ると、受信プログラムを起動しているパソコンにスタンプが表示されます。
【受信する人の使い方】
🖼️ 1.必要なもの
受信にはWindowsパソコンとPythonが必要です。
StampCastの受信ファイルには3種類あります。
- receiver_screen.py Windowsの画面上にスタンプを表示します。 ゲームやデスクトップの上に直接スタンプを出したい場合はこちらです。
- receiver_window.py 専用のウィンドウにスタンプを表示します。 OBSで取り込んで配信画面だけにスタンプを表示したい場合はこちらです。
- receiver_both.py Windows画面とOBS用ウィンドウの両方に同時表示します。
注意: 3種類を同時に起動すると同じスタンプが重複して表示されるので、使うものを1種類だけ起動してください。
🖼️2.必要なライブラリを入れる
receiverフォルダを開いて、コマンドプロンプトまたはPowerShellから次を実行します。
pip install -r requirements.txt
使用するライブラリは、
requests Pillow
です。
🖼️3.StampCastサーバーのアドレスを設定する
receiverのPythonファイルをメモ帳などで開きます。
中に、
SERVER_BASE = “http://192.168.0.16/stampcast”
という部分があります。
ここを使用するStampCastサーバーのURLに変更します。
例:
SERVER_BASE = “https://example.com/stampcast”
🖼️4.受信プログラムを起動する
画面に表示する場合:python receiver_screen.py
OBS用ウィンドウだけの場合:python receiver_window.py
両方に表示する場合:python receiver_both.py
これで準備完了です。
誰かがStampCastからスタンプを送信すると、画像が表示されて通知音が鳴ります。
受信プログラムは一定間隔で、
/stampcast/data/current.json
を確認しています。
そのため、スタンプが送られていない間はPHPを何度も実行する仕組みにはなっていません。
【OBSで使う場合】
receiver_window.py または receiver_both.py を起動すると、
StampCast OBS Capture
という緑色のウィンドウが表示されます。
OBSで「ウィンドウキャプチャ」を追加して、このウィンドウを選択します。
その後、OBSのフィルターから「クロマキー」を追加し、緑色を透明にします。
これでスタンプだけを配信画面に重ねることができます。
【サーバーへの設置方法】
ここからは、自分のWebサーバーにStampCastを設置したい人向けです。
PHPとHTTPSが使用でき、PHPからファイルを書き込めるサーバーが必要です。
サーバーの公開フォルダへ、StampCastの server
フォルダの中身をアップロードします。
例:
public_html/
└── stampcast/
設置後は、
stampcast/
├── index.php
├── admin/
├── uploader/
├── auth/
├── api/
├── data/
├── illustrations/
└── sounds/
という構成になります。
【ファイルの権限】
一般的なLinuxサーバーでは、PHPファイルは基本的に
644
フォルダは
755
にします。
特に重要なのが
data と illustrations
です。
data には、
current.json popularity.json hidden.json
があります。
スタンプ送信時にPHPがこれらを書き換えるため、PHPから書き込み可能な状態にしてください。
illustrations はスタンプ画像を保存するフォルダです。 アップローダーを使用する場合、このフォルダもPHPから書き込める必要があります。
注意: 安易に777にするのはおすすめしません。 レンタルサーバーによって推奨される権限が異なるため、そのサーバーの設定に合わせてください。
【スタンプ画像】
使用する画像は、
stampcast/illustrations/
に保存します。
PNG・JPEG・GIF・WebP形式の画像を使用できます。
背景を透明にしたスタンプを作る場合は、透過PNGがおすすめです。
専用アップローダーを使えば、ブラウザからスタンプ画像を追加することもできます。
【通知音】
通知音は、
stampcast/sounds/notify.wav
です。
受信プログラムはスタンプを受信すると、この音を再生します。
【スタンプが届く仕組み】
StampCastでは、スタンプが送られると、
送信ページ
↓
api/stamp.php
↓
data/current.json を更新
↓
Windowsのreceiverが検出
↓
スタンプ画像を取得
↓
画面・OBSに表示
という流れで動作します。
receiverは
current.json
を直接確認する方式なので、スタンプが来ていないときに
current.php
を繰り返し実行する必要がありません。
【Googleログインを使用する場合】
StampCastは、アップローダーなどにGoogleログインを使用できます。
Google OAuthを使用する場合は、GoogleCloud側でOAuthクライアントを作成し、
・クライアントID ・クライアントシークレット ・リダイレクトURL
を設定する必要があります。
また、authフォルダではGoogle API
Clientを使用しているため、Composerが使えるサーバーなら、
cd stampcast/auth composer install
を実行します。
vendorフォルダを別の環境で作成してからサーバーへアップロードする方法でも構いません。
クライアントシークレットなどの秘密情報は、Webから直接見える場所には置かないでください。
【設置完了後の確認】
最後にブラウザから、
https://あなたのドメイン/stampcast
を開いて送信画面が表示されればOKです。
Windows側でreceiverを起動してからテスト用のスタンプを送信し、
「画像が表示される」 「通知音が鳴る」
ところまで確認できれば、StampCastの準備完了です。