Houdini 18.5 リファレンス スタンドアローンのユーティリティ

hserver

Houdiniは、このプロキシサーバーを介してsesinetdライセンスデーモンと通信します。

On this page

Warning

バージョン18.5の HoudiniServer では、接続されているすべてのライセンスサーバーがバージョン 18.0.287 以降である必要があります。

hserverは、sesinetdサーバーのプロキシです。hserverは自動的にHoudiniによって起動されて使用されます。

常にバックグラウンドで実行されるsesinetdとは違い、最初にHoudiniを起動した時に"必要に応じて"hserverが実行されます。 つまり、最初にHoudiniを起動したユーザーがそのプロセスを所有することになります。 このhserverプロセスは、実行された後はバックグラウンドで実行を継続することができます(Houdiniを再起動する時にhserverを停止して起動する必要がありません)。 Houdiniが複数のhserverインスタンスを起動させてしまって複数のチェックアウトや様々な他の問題を引き起こさないようにするために推奨されている方法は、最初にコンピュータを起動した時に手動でhserverを起動することです。 Windowsでは、hserverが完全なサービスになっているので、手動でhserverを起動する必要はありません。

Houdiniコマンドライン環境からHoudiniを立ち上げている場合、hserverはそのコマンドパス上にあります。 新しいコマンドラインオプションを使って手動でhserverを再起動することができます。 または、hserverインスタンスが既に実行されている時にhserverを実行すると、既存のインスタンスと通信されます(以下のコマンドラインからhserverを制御する方法を参照してください)。

New

Karmaコマンドラインインターフェースと同様に、hserverは新しいコマンドラインと構成ファイルシステムを使用しています。 この新しいコマンドラインでは、(以前のバージョンと同じ)短い文字キーだけでなく、よりわかりやすい英語システム(例えば、–user-group="Beta")も使用できるようになりました。 新しい構成ファイルは適切なiniファイルになり、これによりすべて従来の構文が適用されるようになりました。 つまり、どのオプションも必ずname=valueで指定しなければならなくなりました。 一部の古いオプションファイルはこの構文に準拠できていない場合があるので、hserverはそのようなオプションを取得しなくなることに注意してください。

今回の新しいフォーマットでは、--help--ini-helpのオプションを指定することで、コマンドラインとオプションファイルの両方のヘルプ情報を表示することができます。

Windows: Houdini18.5.500以降のhserverは、Linux/OSXのhserverと同様に非サービスアプリケーションとして実行することができます。 この機能はオプトイン(任意選択)で、サービスがインストールされているかどうか、hserverをサービスとして実行するように設定されているかどうかで判断されます。

  • Houdiniからhserverを再起動させるのは、HTTP(S)でのみ対応しています。

  • .sesi_licenses.prefファイルはC:\Windows\<username>\AppData\Localにあります。

  • ログファイルの場所は、Houdiniアプリケーションが使用するHOUDINI_TEMPフォルダと同じ場所になります。

オプションファイル

オプションファイルhserverオプションを指定することができます。 このファイルは、オペレーティングシステム別にファイル名やファイルの場所が異なります。

Mac

Houdiniパス内のどこにでもhserver.optオプションファイルを配置することができます。

Windows

C:\Windows\system32内にhserver.iniオプションファイルを配置してください。

Linux

Houdiniパス内のどこにでもhserver.optオプションファイルを配置することができます。

オプションファイルには以下の行を記述することができます。#で始まる行がコメント扱いになって無視されます。

ログオプション

logfile=path

ログの書き込み先となるファイルパス。

enableConsole=0|1

hserverがコンソールにログを書き出すかどうかを指定します。 Windowsでは、このオプションに対応しておらず、すべてのログがログファイルに書き出されます。

disableColor=0|1

コンソールにログを書き出す際にhserverがカラーを使用しないようにするかどうかを指定します。

minLogLevel=level

このオプションはコマンドラインの-uオプションと同じです。

minConsoleLogLevel=level

このオプションはコマンドラインの-Uオプションと同じです。

logToSystem=0|1

システムログファイルにログを書き出します。

サーバーオプション

maxThreads=max

このサーバーが内部で使用するスレッドの最大数。 ここには、同時にhserverと通信させたいプロセスの最大数よりも多い数を指定してください。 デフォルトは6です。6未満の値は無視されます。

readIPMask=ip_mask

このマスクに合致したIP4アドレスを持つクライアントのみがサーバーから情報を要求することができます。

デフォルトは+.+.+.*です。+記号は同じ位置にある現在のホストの番号に合致し、*は任意の番号に合致します。 そのため、デフォルトでは、IP4アドレスがサーバーホストと同じ最初の3つの8ビットを持つマシンに合致します。

例えば、127.0.0.*を使用すると、ローカルプロセスのみがサーバーと通信することができます。

writeIPMask=ip_mask

このマスクに合致したIP4アドレスを持つクライアントのみが、サーバーの起動、サーバーのシャットダウン、レンダリングの一時停止/再開/強制終了、ライセンスサーバーの変更をすることができます。

デフォルトは+.+.+.*です。+記号は同じ位置にある現在のホストの番号に合致し、*は任意の番号に合致します。 そのため、デフォルトでは、IP4アドレスがサーバーホストと同じ最初の3つの8ビットを持つマシンに合致します。

例えば、127.0.0.*を使用すると、ローカルプロセスのみがサーバーを制御することができます。

debugMode=0|1

hserverをデバッグモードにするかどうかを指定します。 これは、SideFX開発者がバグの原因を絞り込むのに役立ちます。

useExperimental=0|1

ライセンスを要求する時に、一度に1ライセンスだけ送信するのではなくて、試行してチェックアウトしたいプロダクトのリストを送信します。

これには、18.5以降のライセンスサーバーへの接続が必要です。

disableFastFDSet=0|1

遅いレガシーのサーバー実装を使用します。

このオプションは次のリリースで削除される予定です。

ネットワークレンダー

maxRenders=max

使用可能なレンダラープロセスの最大数。 デフォルトは、マシンのプロセッサ数です。マシンに搭載されている物理プロセッサよりも多いレンダラープロセッサの数を指定すると、パフォーマンスに影響が出ます。

maxUsage=pct

CPUの最大使用率(パーセント記号を含めないでください)。 ホストマシンに対するサーバープロセスの平均負荷がこの使用率を超えると、サーバーはレンダリングの受け入れを停止します。 100より大きい値を指定すると、このチェックが無効になります。デフォルトは101(無効)です。

このオプションの使用には注意してください。 これは 負荷を時間で割った平均 に基づいているので、この平均が閾値以内に収まる前にサーバーが複数のレンダリングの受け入れを拒否することがあります。

renderOnly=0|1

これを1に設定すると、非グラフィカルライセンスのみが使用可能になります(これとgraphicsOnlyの両方を1に設定すると、両方とも無視されます)。 これによって、"グラフィカル"アプリケーション(インターフェースを持ったアプリケーションのことで、例えばHoudini)がこのホストを使用しないように制限することができます。

graphicsOnly=0|1

これを1に設定すると、グラフィカルライセンスのみが使用可能になります(これとrenderOnlyの両方を1に設定すると、両方とも無視されます)。 これによって、コマンドラインアプリケーション(例えばhbatch)がこのホストを使用しないように制限することができます。

relaxNonGraphics=0|1

これを1に設定すると、たとえrenderOnly1でも、非グラフィカルアプリケーションがグラフィカルライセンスを使用することができます。

hold=license secs

hserverがアプリケーションのライセンスをチェックアウトする時に、使用後にそのライセンスを返却せずに"保持"するように指定することができます。 これにより、同じマシンでのライセンスの再取得が非常に高速になりますが、ライセンスが縛られます。

この2つの引数は、ライセンスタイプとそのタイプの各ライセンスを保持する秒数です。 この秒数に-1を指定すると、サーバーはそのタイプのライセンスを無期限に保持します。デフォルトは次のようになっています:

hold Houdini-Master 3600
hold Render -1

(つまり、FXライセンスを1時間保持し、Renderライセンスを無期限に保持します。Renderライセンスは無料なので、今後ずっと使用するために無期限に保持するのが妥当です。)

mantra=version=X.X command="command"

特定のバージョンのMantraレンダラーでリモートレンダーを開始する時にレンダーコマンドを指定します。 これによって、同じホスト上で複数バージョンのレンダラーに対応することができます。

vmantra=version=X.X command="command"

上記のmantraオプションと同じです。

APIオプション

readTimeoutMs=milliseconds

このサーバーがsesinetdライセンスサーバーからの応答を待つ最大時間(ミリ秒)。 デフォルトは5分です。 この時間を過ぎるとAPIコールが行なわれなくなります。 この値を変更しないことを推奨します。

(hserverが複数のライセンスサーバーを使用するように設定されている場合、これは、リスト内の1つのサーバーからの応答を諦めて次のサーバーに移動するまでの時間です。)

connectTimeoutMs=milliseconds

接続タイムアウトを指定します。 これは、hserverが接続を諦めるまでエンドポイントへの接続を試みるミリ秒数です。 デフォルトは30秒です。

APIKey=url client_id client_secret

このオプションは、ログインの代わりにAPIトークンを指定したログインベースのライセンス取得で使用します。 これは、メンテナンス担当者が継続的にサインインする必要がないのでレンダーファームのセットアップで非常に役立ちます。

ライセンスのパーティション化

userGroup=group_name

ライセンスサーバーにライセンスを要求する時に使用するユーザグループ。

コマンドラインからhserverを制御する方法

情報

--help

このヘルプを表示します。

--ini-help

iniヘルプを表示します。

--version

hserverバージョン文字列をプリントします。

ログオプション

-u/--min-logfile-level

ログファイルの最低エラーログレベルを指定します。

  • 0: なし

  • 1: メッセージ(デフォルト)

  • 2: プロンプト

  • 3: 警告

  • 4: エラー

  • 5: 致命

-U/--min-console-log-level

コンソールの最低エラーログレベルを指定します。

  • 0: なし

  • 1: メッセージ

  • 2: プロンプト(デフォルト)

  • 3: 警告

  • 4: エラー

  • 5: 致命

-B/--enable-console

コンソールのログを有効にします。

-b/--disable-console-colors

デバッグコンソールカラーを無効にします。

-Y/--log-to-system

オプションファイル内のlogToSystemと同じです。

サーバーオプション

-L/--logfile file

logfileオプションを設定します。

-D/--debug-mode

サーバーをデバッグモードにします。

-d/--run-in-foreground

hserverをバックグラウンドで実行しないようにします。これは、Windows以外のプラットフォームでのみ利用可能です。

-t/--max-threads count

maxThreadsオプションを設定します。 デフォルトは4です。

-m/--read-mask ip_mask

readIPMaskオプションを設定します。 デフォルトは+.+.+.*です。

-M/--write-mask ip_mask

writeIPMaskオプションを設定します。 デフォルトは+.+.+.*です。

-E/--enable-experimental

これは、オプションファイル内のuseExperimentalと同じです。

-C/--force-http

接続URLに関係なくhttp通信を使用し、レガシーの通信プロトコルを代用しません。

ネットワークレンダーオプション

-n/--render-only

renderOnlyオプションを有効にします(非グラフィカルレンダリングのみを許可します)。これと-Gの両方を設定すると、両方とも無視されます。

-G/--graphics-only

graphicsOnlyオプションを有効にします(グラフィカルレンダリングのみを許可します)。これと-nの両方を設定すると、両方とも無視されます。

-g/--relax-non-graphical

relaxNonGraphicsオプションを有効にします。

-r/--max-renders max

maxRendersオプションを設定します。

-a/--max-usage pct

maxUsageオプションを設定します。

クライアントオプション

-h/--host host

オプションで、照会/制御するリモートホストを指定することができます。

-l/--info

起動中のhserverの情報を取得します。

-V/--mantra-commands

すべてのバージョン固有のMantraコマンドをリストします。

-q/--quit

起動中のhserverを閉じます。

-Q/--blocking-quit

起動中のhserverを閉じます。 クライアントに応答する前に、サーバーはすべてのライセンスと実行中のタスクを放棄します。 これは、Dockerなどの物理的にシャットダウンができないシステムのためだけに設計された事実上の阻止型のシャットダウンです。

-p/--reload-options

起動中のhserverにオプションファイルをリロードさせます。

-P/--pause-pid pid

pidで指定されたhserverのタスクを一時停止します。

-R/--resume-pid pid

pidで指定されたhserverのタスクを再開します。

-S/--server servers

使用するライセンスサーバーをサーバー名で選択します。 ライセンスサーバーを冗長構成にしている場合には、接続するサーバー名をカンマ区切りのリストで指定します(最大3つ)。

-K/--kill-pid pid

Killするhserverのタスクをpidで指定します。

-H/--hold-license license time

プロセスで不要になった後でも保持したいライセンスとその時間を指定します。

APIオプション

-T/--read-timeout-ms millis

readTimeoutオプションを設定します。 デフォルトは15秒です。

--connect-timeout-ms millis

サーバーへの接続を試みる最大ミリ秒数。

ライセンスのパーティション化

--user-group group name

ライセンスサーバーにライセンスを要求する時に使用するユーザグループ。

ライセンスサーバーのチェーン化

この構成によって、ライセンスサーバー(sesinetd)をチェーン化することができます。 これは、仕様(例えば、ライセンスプロダクトタイプ)に基づいてライセンスサーバーを分けることができます。

この構成リストをセットアップするには、接続先となるライセンスサーバーを単一のsesinetdを指定するのではなくて、セミコロンで区切ったライセンスサーバーのセットを指定します。 このリスト内の1番目のsesinetdがコマンドの実行(つまり、チェックアウト)を試みて、何かしらの理由(接続できない、コマンドが失敗など)で失敗すると、次のsesinetdを試みます。 "hserver -S"を使ってこのリストを指定する時は、この接続先のリストを引用符で閉じてください。例えば、hserver -S "sesinetd1;sesinetd2"です。

この構成を使用するには、最低でもバージョン18.0のHoudini License Server(hserver)が必要になります。 現在のところ、sesinetdとHoudiniのバージョンは、この構成ではそのバージョンに合わせる必要性はありません。

HTTP通信に対応

HoudiniServer 側でhttp通信を有効にするには、接続URLのプロトコルを指定する(例えばhserver -S http://licenseserver)、または、コマンドラインに-Cを追加する、または、 HoudiniServer オプションファイルにenableHttp 1を追加します。 hserverでのhttp通信はデフォルトで有効になっています。

Warning

バージョン18.0のプロダクトは通信を適切に制御する必要があるので、http通信を使用する時は厳重に注意してください。

ログファイル

ログファイルは、サーバーが健康状態に関する情報、接続情報、他に役立つ情報を出力する場所です。

各ログのエントリーの書式はYYYY-MM-DD HH:MM::SS: SYSTEM - MESSAGEです。

  • HTTP Clientは、curlコマンドからのメッセージ、または、接続/クライアントシステム関連のメッセージです。

Note

curlコマンドのverboseオプションが有効になっていれば、その出力がこのシステム下でログに書き出されるようになります。 これらのログエントリーの詳細は、curlのウェブページを参照してください。

  • Sqliteは、Sqlite自体から送られてくるメッセージです。SqliteはCookieの保存や他の永続的なストレージの需要でよく使用されています。

  • Network Managerは、ログファイル内で最もよく見かけるメッセージです。このメッセージは通常ではサーバー自体から送られてきます。たいていの場合、これは受信した接続に関する情報またはリクエストへの応答をログに書き出す際に使用します。

  • Stats Managerは、統計マネージャから送られてくるメッセージです。これは通常では起動中のサーバーに関する統計情報関連のメッセージです(例えば、リクエストの最大処理時間)。

  • Error with api responseは、API応答のエラーの結果を示したメッセージです。

  • Access Tokenは、APIキーから送られてくるメッセージです。これは通常では無効なAPIトークンに関するメッセージまたはAPIトークンの更新ができない旨のメッセージです。

  • Serviceは、サービス自体から送られてくるメッセージです。

  • Applicationは、アプリケーション関連のメッセージです。このエラーメッセージは非常に珍しいです。

Starting release server v18.5.296 at http://127.0.1.1.:1714というログエントリーは、そのサーバーが開発サーバーかリリースサーバーのどちらなのか、サーバーのバージョン、サーバーが起動しているIPアドレスとポートを示しています。 これは、起動しているサーバーのバージョンを知る必要がある場合に役立ちます。 他にも、複数のサーバーのバージョンが含まれているログファイル内でどのバージョンが何を生成したのかを確認しやすいです。

Using fast fd set configuration...というログエントリーは、ソケットで利用可能なデータを検出するためにサーバーが使用している仕組みを示した単なるエントリーです。 サーバーが高速なFD(File Descriptor)セット構成を使用している場合、サーバーはLinuxだとepoll、OSXだとkqueueを使用します(現在のところ、Windowsはこのような構成に対応していません)。 サーバーがデフォルトのFD(File Descriptor)セット構成を使用している場合、どのプラットフォームでもpoll()が使用されます。

HTTP応答ログエントリー

通常のHTTP応答ログエントリーの書式はMETHOD ROUTE HTTP/VERSION" CODE CODE_MESSAGE COMMAND RESPONSE_TIMEです。

エントリーの例: 2020-06-17 19:48:02: Network Manager - "POST /api HTTP/1.1" 200 Ok cmd_ping 0.0022450001s

  • METHOD: POST, GET, HEADなど

  • ROUTE: /api, /login, /

  • VERSION: 1.1, 1.0, 0.9

  • CODE: 200, 400, 404

  • CODE_MESSAGE: Ok, Bad Request, Not Found

  • COMMAND: cmd_ping

  • RESPONSE_TIME: 0.001s

Statistics Managerログエントリー

Process Timeエントリーは、平均処理時間とサーバーが起動してから現在までのすべてのリクエストのうちの最大処理時間を示します。 これは、リクエストが処理を開始してからその処理が応答するまでの時間で測定されます。

エントリーの例: 2020-06-17 19:46:51: Stats Manager - Process Time: avg 0.010118s, max 0.020763s

Queue Wait Timeログエントリーは、すべてのリクエストがキュー内でワーカースレッドで処理されるのを待機した平均時間と最大時間を示します。 これらの時間は、サーバーが起動してから現在までの期間における値です。

エントリーの例: 2020-06-17 19:46:51: Stats Manager - Queue Wait Time: avg 3.6666667e-05s, max 6.5e-05s

Queue Sizeログエントリーは、現在のキューサイズとこれまでのキューの最大サイズを示します。 これらのサイズは、サーバーが起動してから現在までの期間における値です。

エントリーの例: 2020-06-17 19:46:51: Stats Manager - Queue Size: current 0, max 1

Connection Countログエントリーは、現在サーバーが繋げている接続数を示します。 例えば、サーバーが接続を再使用すると、この数はその再使用した接続数を示すようになります。

エントリーの例: 2020-06-17 19:46:51: Stats Manager - Connection Count: 0

スタンドアローンのユーティリティ

  • abcconvert

    Alembicフォーマット間を変換します。

  • abcecho

    Alembicファイルに関する情報を出力します。

  • abcinfo

    Alembicファイルに関する情報を出力します。

  • chchan

    チャンネルコレクションをアクションチャンネルフォーマットへ(から)コピーします。

  • chcp

    チャンネルコレクションファイルを他のフォーマットにコピーします。

  • chinfo

    チャンネルコレクションファイルに関する情報を出力します。

  • claudio

    CHOPデータ(clip)をオーディオフォーマットへ(から)コピーします。

  • clchan

    CHOPデータ(clip)をアクションチャンネルフォーマットへ(から)コピーします。

  • clchn

    CHOPデータ(clip)をチャンネルコレクションフォーマットへ(から)コピーします。

  • clcp

    CHOPデータ(clip)を他のフォーマットにコピーします。

  • clinfo

    CHOPデータ(clip)ファイルに関する情報を出力します。

  • dsmconvert

    ディープシャドウ/カメラマップをあるフォーマットから別のフォーマットへ変換します。

  • dsmmerge

    2つ以上のディープシャドウ/カメラマップファイルを結合します。

  • dsparse

    ダイアログスクリプトを解析して表示します。

  • gabc

    AlembicとHoudiniのジオメトリ間を変換します。

  • gconvert

    Houdiniポリゴンフォーマット間を変換します。

  • gdxf

    DXFポリゴンをHoudiniフォーマットへ(から)変換します。

  • geodiff

    ジオメトリの差分を表示します。

  • geps

    EPSファイルをHoudiniポリゴンフォーマットへ変換します。

  • giges

    IGESジオメトリファイルを変換します。トリムNURBSパッチとカーブを扱います。

  • ginfo

    ポリゴンファイルの統計情報を出力します。

  • glightwave

    LightWaveファイルをHoudiniフォーマットへ(から)変換します。

  • gpdb

    .pdbファイルとHoudiniフォーマットを双方向に変換します。

  • gplay

    ジオメトリビューア。

  • gply

    .plyファイルとHoudiniフォーマットを双方向に変換します。

  • gptex

    ジオメトリファイルからPtexture画像ファイルを作成します。

  • greduce

    ファイルのポリゴンを削減します。

  • gwavefront

    .objファイルをHoudiniフォーマットへ(から)変換します。

  • hbrickmap

    i3dファイルまたはボリュームプリミティブgeo/bgeoファイルをPixar Brickmapファイルに変換します。

  • hcollapse

    ディレクトリ構造を折り畳みます。

  • hcpio

    CPIOアーカイブコマンドのサブセットコマンドでhipファイルの抽出/折り畳みができます。

  • hexpand

    hipファイルをディレクトリ構造に展開します。

  • hkey / License Administrator

    ライセンスとライセンスサーバーオプションを表示/管理するためのグラフィカルユーザインターフェースを開きます。

  • hrender

  • hsc

    Bloscファイル(.sc)の圧縮または解凍をします。

  • hscript

    コマンドラインのHScriptインタプリタ。

  • hserver

    Houdiniは、このプロキシサーバーを介してsesinetdライセンスデーモンと通信します。

  • husk

    Karmaまたは一部の他のHydraクライアントを使ってUSDファイルをレンダリングするためのコマンドラインユーティリティ。

  • i3dconvert

    3DテクスチャファイルフォーマットをHoudiniジオメトリへ(から)変換します。

  • iautocrop

    ピクセル値に基づいて画像をクロップします。

  • icineon

    10ビットCineonフォーマット画像を8ビットフォーマットへ変換します。

  • icomposite

    画像をレイヤーでコンポジットします。

  • iconvert

    画像フォーマットを変換します。

  • icp

    画像のある領域を新しい画像に分離します。

  • idenoise

    画像ファイルからノイズを除去します。

  • idiff

    画像の差分を表示します。

  • iflip

    画像の向きを反転します。

  • iinfo

    画像に関する情報を出力します。

  • ilut

    標準チャンネルフォーマットまたは他のLUTからLookup Table(.lut)を生成します。

  • ilutcomp

    2つのLUTから1つのLookup Table(.lut)を生成します。

  • ilutinfo

    Lookup Table(LUT)ファイルの情報をプリントします。

  • imaketx

    画像ファイルから.exrまたは.ratのmipmapテクスチャを生成します。

  • imdisplay

    画像をMPlayウィンドウで開きます。

  • iprint

    画像のRGBA値をテキストとして出力します。

  • iquantize

    画像の色数を減らします。

  • isixpack

    立方体の6面を意味する6枚の画像または十字展開した画像から環境/反射マップを生成します。

  • itilestitch

    クロップウィンドウを含んだ一連の画像ファイルを一枚の画像にまとめます。

  • izg

    Z深度画像を8ビットのグレースケールに変換します。

  • Launcher

    Houdini Launcherは、Houdiniとそのコンポーネントをダウンロード、インストール、アップグレード、アンインストールします。

  • mcacclaim

    AcclaimモーションファイルをHoudiniのスクリプトとチャンネルファイルに変換します。

  • mcbiovision

    BioVisionモーションファイルをHoudiniのスクリプトとチャンネルファイルに変換します。

  • mcmotanal

    Motion Analysis TRCモーションファイルをHoudiniのスクリプトとチャンネルファイルに変換します。

  • mcp

    画像シーケンスを動画ファイルに変換します。

  • minfo

    動画ファイルに関する情報を出力します。

  • mqserver

    PDG/TOPs用メッセージキューサーバー

  • sesictrl

    コマンドラインからHoudiniライセンスサーバーオプションを設定します。

  • sesinetd

    Houdiniライセンスサーバー。このプログラムはバックグラウンドで実行されてHoudiniライセンスを管理します。

  • siminfo

    シミュレーションキャッシュファイルの統計をプリントします。

  • spiff

    テキストの差分を表示します。

  • spy

    UNIXファイルシステムを操作するシェルユーティリティ。

  • vexcache

    VEXコンパイルキャッシュを照会または編集します。

  • vexexec

    CVEXシェーダを実行します。