diff --git a/content/BrightSignをネットワーク経由でシークできるようにする.md b/content/BrightSignをネットワーク経由でシークできるようにする.md index 3674f9e0..08b13f4d 100644 --- a/content/BrightSignをネットワーク経由でシークできるようにする.md +++ b/content/BrightSignをネットワーク経由でシークできるようにする.md @@ -8,9 +8,9 @@ date: 2024-08-02 16:50 頭出しだけなら設定ソフトのBrightAuthorから、UDPのインプットを受け取って動画ファイルごとの先頭に移動するよう設定できる。 -だが、20分の映像を全て頭から終わりまで確認し続けなければならないのはつらい。プラグインを使用すると映像の再生位置を特定の場所までシークすることができるのだが、とにかく情報が少ないのでまとめておく。 +だが、例えば20分とかある映像を全て頭から終わりまで確認し続けなければならないのはつらい。プラグインを使用すると映像の再生位置を特定の場所までシークすることができるのだが、とにかく情報が少ないのでまとめておく。 -なおここでは、設定ソフトにMacでも動作可能なBrightAuthor:Connectedを使用する。(日本語版のDLページでは「BrightAuthor:接続済み」となっているやつ) +なおここでは、設定ソフトにMacでも動作可能なBrightAuthor:Connectedを使用する。(日本語版のDLページでは「BrightAuthor:接続済み」となっているやつ。一応普通のBrightAuthorでも実行可能。) ## プラグインスクリプトをDLする @@ -91,7 +91,7 @@ Maxでは、udpsendオブジェクトで指定したIPの5000番ポート(標 ![[img/スクリーンショット 2024-08-02 20.25.24.png]] -`jit.movie~`(`jit.movie`や`jit.qt.movie`ではない方)を使用する。このオブジェクトは非常に奇妙な仕様なので、動画の再生状態を全てアトリビュート経由で取得しなければならない。写真のパッチでは動画の長さと再生位置を`getattr`オブジェクトで取得している。 +`jit.movie~`(`jit.movie`や`jit.qt.movie`ではない方)を使用する。このオブジェクトは非常に奇妙な仕様をしており、動画の再生状態を全てアトリビュート経由で取得しなければならない。写真のパッチでは動画の長さと再生位置を`getattr`オブジェクトで取得している。 注意点としては以下の通り。 @@ -99,4 +99,6 @@ Maxでは、udpsendオブジェクトで指定したIPの5000番ポート(標 - また当たり前だがUDPが送られてプラグインのseekが実行されるまでにはレイテンシがあるので、厳密にはMaxの再生位置をある程度オフセットする必要がある - そもそも通常のBright ignでのUDPでのシンクはフレーム単位で同期してるわけではないのは公式でも書いてある。フレームレベルでの同期が必要ならBrightWall使うのが無難 - 自動ループする時、BrightSignのほうが若干ラグがあってからループする。そのため、実際には`jit.movie~`が自動ループしたタイミングでudp信号を送るのが良い。 + - というか、`jit.movie`は再生速度が全く均一にならないんであんまり使わないほうがいい。BrightSignの映像側にタイムコード音声を書き込んでおいてMaxでそれを受けて特殊配置のスピーカーで音再生、とかが一番ありえるユースケースかも。 - 内部がどういう仕組みかわからないが、UDPのメッセージのキューは割と簡単に詰まる。シークバーをぐりぐり動かすみたいな使い方はできない。 +- 一時停止ができると便利なんだと思うが、いまいちやり方がわからなかった