SunVideo Plus 1.3 ユーザーマニュアル: SunVideo 互換モード

| 前 | 次 | 目次 |
SunVideo Plus 1.3 ユーザーマニュアル

# 第 3 章

# SunVideo 互換モード

この章では、サンの XIL ライブラリと SBus SunVideo カードを使用する既存のアプリケーションで SunVideo Plus サブシステムを使用する方法について説明します。SunVideo Plus の SunVideo 互換モードでは、SunVideo Plus カードを使用して、SunVideo 用のデモプログラムやアプリケーション (サンの ShowMe デスクトップテレビ会議製品、ShowMe TV オーディオ / ビデオブロードキャスト製品) を実行することができます。

サンのアプリケーション製品の使用方法については、 それぞれの製品に付属しているユーザーマニュアルを参照してください。たとえば、SunVideo デモプログラムの使用方法については『SunVideo User's Guide』、ShowMe TV プログラムの使用方法については『ShowMe TV User's Guide』を参照してください。

## 使用システム条件

- ソフトウェア条件

  - ハードウェアリリース 4/97 以降の日本語 Solaris 2.5.1

  - Solaris 2.6

- Sun PCI デスクトップワークステーション

- XIL 画像作成ライブラリ (使用ワークステーションにインストールされていること)

## 制約事項

- SunVideo Plus には、ハードウェアによる MPEG1 I-B-P 圧縮機能はありません。また、XIL には、ソフトウェアによる圧縮機能はありません。このため、これらの圧縮機能に依存するプログラムを実行することはできません。SunVideo Plus MPEG1 は、non-square-pixel ビデオをコード化するため、square-pixel 形式の MPEG1 を前提とするアプリケーションを実行することはできません。

- SunVideo Plus のエラーメッセージは、SunVideo のものと少し異なります。このため、特定のエラーのトラップに依存するプログラムは、正しく動作しないことがあります。

- SunVideo Plus の XIL 機能は、XIL ライブラリの機能と同じです。このため、SunVideo ドライバを直接に呼び出すアプリケーションは、正しく動作しないことがあります。

- SunVideo Plus が XIL 画像分子に対するハードウェアによる高速化を行わない場合は、一部、ソフトウェアで高速化が行われることがあります。現在のところ、このことは、いくつかの圧縮 / 解像度の組み合わせに当てはまります。

- 互換モードでは、SunVideo Plus は JPEG、CellB、MPEG-1 (I フレーム) 形式をサポートします。また、非圧縮形式もサポートします。互換モードでは、H.261 および MPEG1 (IPB フレーム) はサポートされません。

## SunVideo 互換モードを利用する

SunVideo 互換 (SVC) モードでは、Solaris 2.5.1 もしくは Solaris 2.6 に付属している SunVideo Tool デモプログラムの録画・再生機能を使用することができます。

SunVideo Plus カードを SunVideo 互換モードに設定するには、以下の作業を行います。

1. ワークステーションに SunVideo Plus カードを取り付けます。

「SunVideo Plus カードを取り付ける」を参照してください。

2. SunVideo Plus ソフトウェアをインストールします。

   「SunVideo Plus ソフトウェアをインストールする」を参照してください。

3. SunVideo Plus を SunVideo 互換モードに設定するためのスクリプトを実行します。

   「SVC モード設定スクリプトを実行する」を参照してください。

4. 日本語 Solaris 2.5.1 を使用している場合は、`XILHOME` および `LD_LIBRARY_PATH` 環境変数を設定します。

   「SVC 環境変数の設定 (日本語 Solaris 2.5.1 のみ)」を参照してください。

## SVC モード設定スクリプトを実行する

SunVideo Plus カードとソフトウェアのインストールを完了したら、以下の手順で SunVideo 互換 (SVC) モードに設定するためのスクリプトを実行します。

1. スーパーユーザーでログインします。

2. 以下のスクリプトを実行します。

       hostname# svc_install
       hostname# svc_devices (install or remove)

   これらのセットアップスクリプトには、以下の表に示す機能があります。

#### 表 3-1 SunVideo Plus のセットアップスクリプト

セットアップスクリプト | 説明
`svc_install` | SunVideo Plus カード用の SunVideo 互換モード XIL パイプライン階層構造を作成します。
`svc_devices` | SunVideo 互換モード擬似デバイスを作成 (`svc_devices install`) または削除 (`svc_devices remove`) します。擬似デバイスは、`rtvc` (SunVideo) デバイスから `o1k` (SunVideo Plus) デバイスへのシンボリックリンクです。リンクは、`/dev` に書き込まれます。
`svc_uninstall` | Solaris 2.6 専用のスクリプトです。Solaris 2.6 で svc 階層構造を削除するには、このスクリプトを使用します。

### 日本語 Solaris 2.5.1 用の `svc_install` スクリプト

`svc_install` スクリプトは、XIL パイプライン階層構造を作成します。このスクリプトのデフォルトの格納場所は、`/opt/SUNWo1kp/bin` です。以下の構文で使用します。

    hostname% svc_install オプション

下記表に、`svc_install` のオプションとそれらオプションのデフォルト値を示します。

#### 表 3-2 `svc_install` のオプションとデフォルト値

`svc_install` のオプション | 説明
`-s O1KHOME` | SunVideo Plus のソースディレクトリを指定します。デフォルトは、`/opt/SUNWo1kp` です。
`-t DESTDIR` | SunVideo 互換モードパイプライン階層構造の出力先のディレクトリを指定します。 デフォルトは、`/opt/SUNWo1kp/svc` です。DESTDIR が存在する必要はありません。階層構造は、約 360 KB を使用します。
`-v` | `stdout` に状態情報を表示します (詳細モード)。デフォルトでは、この情報は表示されません。
`-x XILHOME` | XIL 画像作成ライブラリのソースディレクトリを指定します。デフォルトは、`/opt/SUNWits/Graphics-sw/xil` です。

一般的に、`svc_install` はオプションなしで実行することができます。`DESTDIR` ディレクトリに対する書き込み権がない場合は、スーパーユーザーでログインする必要があります。

`svc` モードの機能がすでに組み込まれているシステムで `svc_install` を実行すると、既存の SVC 階層構造が削除され、置き換えられます。

XIL コンポーネントを変更するパッケージ、パッチなどをシステムに適用した場合は、必ず `svc_install` を再実行してください。

### Solaris 2.6 用の `svc_install` スクリプト

日本語 Solaris 2.5.1 では、SVC 階層構造は、環境変数を使用して、有効または無効に設定することができる独立したエンティティです。これに対し Solaris 2.6 では、SVC 階層構造は独立したエンティティではありません。Solaris 2.6 に SVC モード機能を組み込むと、デバイスハンドラを含む既存の XIL 1.3 ディレクトリ (XIL 1.3 ライブラリ) が SVC モードのものに置き換えられます。つまり、Solaris 2.6 で `svc_install` スクリプトを実行すると、SVC モードが有効になり、環境変数を使用して有効または無効に設定することはできなくなります。Solaris 2.6 で SVC モードを無効にするには、`svc_uninstall` スクリプトを使用します。

Solaris 2.6 用の `svc_install` スクリプトは、以下の構文で使用します。

    hostname% svc_install オプション

下記表に、`svc_install` のオプションとそれらオプションのデフォルト値を示します。

#### 表 3-3 `svc_install` のオプションとデフォルト値

`svc_install` のオプション | 説明
`-v` | `stdout` に状態情報を表示します (詳細モード)。

一般的に、svc_install はオプションなしで実行します。この実行には、スーパーユーザーでログインしている必要があります。`svc_install` スクリプトは、`/usr/openwin/xil/lib` を変更します。`/usr/openwin/xil/lib` が NFS によってマウントされたディレクトリの場合は、実行しないでください。

### Solaris 2.6 用の `svc_uninstall` スクリプト

`svc_uninstall` スクリプトは、`svc_install` によって組み込まれた SVC モード機能を削除し、XIL デバイスハンドラディレクトリを元の内容に戻します。

| 注意 SVC モード機能を組み込むことによって標準の XIL 1.3 デバイスハンドラのディレクトリは置き換えられますから、XIL コンポーネントを変更または追加するアップデート (パッチ、アップグレード、新しいパッケージのインストールなど) をワークステーションに適用するときは、前もって `svc_uninstall` を実行し、元の内容に戻してください。

`svc_uninstall` スクリプトは、以下の構文で使用します。

    hostname% svc_uninstall オプション

下記表に、`svc_uninstall` のオプションとそれらオプションのデフォルト値を示します。

#### 表 3-4 `svc_uninstall` のオプションとデフォルト値

`svc_uninstall` のオプション | 説明
`-v` | `stdout` に状態情報を表示します (詳細モード)。

一般的に、svc_uninstall はオプションなしで実行します。この実行には、スーパーユーザーでログインしている必要があります。svc_uninstall スクリプトは、`/usr/openwin/xil/lib` を変更します。`/usr/openwin/xil/lib` が NFS によってマウントされたディレクトリの場合は、実行しないでください。

### `svc_devices` スクリプト

`svc_devices` スクリプトは、`/dev` ディレクトリに対して SunVideo 互換モード擬似デバイスを作成または削除します。このスクリプトのデフォルトの格納場所は、`/opt/SUNWo1kp/bin` です。擬似デバイスを作成するときのスクリプトの構文は、以下のとおりです。

    hostname% svc_devices install

擬似デバイスを削除するときのスクリプトの構文は、以下のとおりです。

    hostname% svc_devices remove

SunVideo 互換モード擬似デバイスをインストールするときは、`svc_devices install` を使用します。`/dev` ディレクトリから擬似デバイスを削除するときは、`svc_devices remove` を使用します。

SunVideo アプリケーションプログラムから SunVideo Plus カードを選択するには、「`rtvc` 擬似デバイス名」を使用します。一般的には、擬似デバイス名は `/dev/rtvc0` です。

注 - | `pkgrm` を使用して SunVideo Plus ソフトウェアを削除する場合、最初に `svc_devices remove` を実行する必要はありません。`pkgrm` によって、すべての擬似デバイスが削除されます。

注 - | SunVideo Plus カードを別のスロットに移し替えた場合は、まず `svc_devices remove` を実行し、その後で `run svc_devices install` を実行します。

## SVC 関連の環境変数の設定 (Solaris 2.5.1 のみ)

特殊な XIL パイプラインと SunVideo Plus 互換機能を使用するには、`XILHOME` 環境変数に `/opt/SUNWo1kp/svc` を設定します。

また、`LD_LIBRARY_PATH` 環境変数に DESTDIR`/lib` を指定する必要もあります。DESTDIR は、SunVideo 互換モードパイプライン階層構造の出力先のディレクトリです。これは、`svc_install` を実行するときに指定するディレクトリであり、デフォルトは、`/opt/SUNWo1kp/svc` です。

XIL ライブラリがすでに `LD_LIBRARY_PATH` 内に存在する場合は、`LD_LIBRARY_PATH` より前に DESTDIR`/lib` を指定するか、`LD_LIBRARY_PATH` から XIL ライブラリのパスを削除してから、`LD_LIBRARY_PATH` に新しいパスを追加する必要があります。

以下は、`csh` シェル環境で DESTDIR`/lib` を追加している例です。

    hostname% setenv O1KHOME /opt/SUNWo1kp
    hostname% setenv LD_LIBRARY_PATH /opt/SUNWo1kp/lib:$LD_LIBRARY_PATH
    hostname% setenv LD_LIBRARY_PATH /opt/SUNWits/Graphics-sw/lib:$LD_LIBRARY_PATH
    hostname% setenv XILHOME /opt/SUNWo1kp/svc

| 前 | 次 | 目次 |