イメージ、オーディオ、およびビデオ・エクステンダー 管理およびプログラミングの手引き

DB2Video


イメージ オーディオ ビデオ
O

ビデオの内容をデータベース表に保管します。 ビデオ・ソースは、クライアント・バッファー、クライアント・ファイル、またはサーバー・ファイルのどれにあってもかまいません。 ビデオは、データベース表に BLOB として保管することも、サーバー・ファイル (データベースによって参照される) に保管することもできます。 ビデオ・ソースは、サポートされる形式であっても、サポートされない形式であってもかまいません。 サポートされる形式の場合には、DB2 ビデオ・エクステンダーがその属性を識別して保管します。 サポートされない形式の場合には、その属性を UDF に指定しなければなりません。

インクルード・ファイル

dmbvideo.h

構文

内容をバッファーまたはクライアント・ファイルから保管する

>>-DB2Video--(--dbname--,--content--,--format--,---------------->
 
>----target_file--,--comment--)--------------------------------><
 

構文

内容をサーバー・ファイルから保管する

>>-DB2Video--(--dbname--,--source_file--,--format--,--stortype--,-->
 
>---comment--)-------------------------------------------------><
 

構文

ユーザー指定属性をもつ内容をバッファーまたはクライアント・ファイルから保管する

>>-DB2Video--(--dbname--,--content--,--target_file--,----------->
 
>----comment--,--attrs--,--thumbnail--)------------------------><
 

構文

ユーザー指定属性をもつ内容をサーバー・ファイルから保管する

>>-DB2Video--(--dbname--,--source_file--,--stortype--,--comment--,-->
 
>---attrs--,--thumbnail--)-------------------------------------><
 

パラメーター (データ・タイプ)

dbname (VARCHAR(18))
現在接続されているデータベース・サーバーの名前。 これは、特殊レジスター CURRENT SERVER で示されます。

content (BLOB(2G) AS LOCATOR)
ビデオの内容をもつホスト変数。 ホスト変数のデータ・タイプは BLOB、BLOB_FILE、または BLOB_LOCATOR です。 DB2 は、内容を BLOB_LOCATOR にプロモートし、LOB ロケーターを DB2Video UDF に渡します。 内容がクライアント・バッファーにある場合は、ビデオ・ヘッダーが完全に読み取れるように、そのバッファーには、その内容の少なくとも最初の 640KB が入っていなければなりません。

format (VARCHAR(8))
ソース・ビデオの形式。 ヌル値や空ストリングも指定できます。 ビデオ・エクステンダーがそのソース形式を自動的に判定します。 ビデオは、そのソースと同じ形式で保管されます。サポートされるビデオ形式については、表 4 を参照してください。 MPG1 形式の場合、 MPG1、mpg1、MPEG1、または mpeg1 を指定できます。 MPG2 形式の場合、MPG2、mpg2、MPEG2、または mpeg2 を指定できます。

target_file (LONG VARCHAR)
ターゲットのサーバー・ファイルの名前 (サーバー・ファイルへ保管する場合)、またはヌル値か空ストリング (データベースへ BLOB として保管する場合)。 サーバー・ファイルは、完全修飾名にすることができます。 ファイル名が修飾されていない場合は、サーバーの DB2VIDEOSTORE と DB2MMSTORE 環境変数を使ってファイルが見つけられます。

source_file (LONG VARCHAR)
ソースのサーバー・ファイルの名前。 この名前は、完全修飾されていても、修飾されていなくてもかまいませんが、ヌル値や空ストリングであってはなりません。 名前が修飾されていないと、サーバーの DB2VIDEOPATH と DB2MMPATH 環境変数を使って、そのファイルが見つけられます。

stortype (INTEGER)
そのビデオをどこに保管するかを示す値。 定数 MMDB_STORAGE_TYPE_INTERNAL (値=1) の場合、ビデオはデータベースに BLOB として保管されます。 定数 MMDB_STORAGE_TYPE_EXTERNAL (値=0) の場合、ビデオ内容はサーバー・ファイル (データベースからポイントされる) に保管されます。

comment (LONG VARCHAR)
ビデオとともに保管する注釈。

attrs (LONG VARCHAR FOR BIT DATA)
ビデオの属性。

thumbnail (LONG VARCHAR FOR BIT DATA)
そのビデオを代表するサムネールの画像。

戻り値 (データ・タイプ)

ビデオのハンドル (DB2VIDEO)

Anita Jones のビデオ・クリップが入ったレコードを従業員表に挿入します。 ビデオ・ソースは、クライアント・バッファーにあります。 ビデオ・クリップは表に BLOB として保管します。

EXEC SQL BEGIN DECLARE SECTION
     SQL TYPE IS BLOB (8M) vid;
EXEC SQL END DECLARE SECTION;
 
EXEC SQL INSERT INTO EMPLOYEE VALUES(
      '128557',
      'Anita Jones',
      DB2VIDEO(
         CURRENT SERVER,
         :vid,
         'MPEG1',
         CAST(NULL as LONG VARCHAR),
         'Anita''s video'));

Robert Smith のビデオ・クリップが入ったレコードを従業員表に挿入します。 ビデオ・ソースはサーバー・ファイルにあります。 そのファイルは、従業員表のレコードからポイントされます。

EXEC SQL BEGIN DECLARE SECTION;
long hvStorageType;
EXEC SQL END DECLARE SECTION;
 
hvStorageType = MMDB_STORAGE_TYPE_EXTERNAL;
 
EXEC SQL INSERT INTO EMPLOYEE VALUES(
      '384779',
      'Robert Smith',
      DB2VIDEO(
         CURRENT SERVER,
         '/employee/videos/rsmith.mpg',
         'MPEG1',
         :hvStorageType,
         'Robert''s video'));

ビデオ・クリップが入ったレコードをデータベース表に挿入します。 ソース・ビデオ・クリップ (その内容はサーバー・ファイルにある) の形式はユーザー定義形式です。 ビデオ内容は、サーバー・ファイルに保持します (データベース表のレコードからそのファイルをポイントする)。 さらに、そのビデオを代表するサムネールを保管します。

EXEC SQL BEGIN DECLARE SECTION;
long hvStorageType;
struct {
       short len;
       char data[400];
}hvVidattrs;
struct {
       short len;
       char data[10000];
}hvThumbnail;
EXEC SQL END DECLARE SECTION;
 
MMDBVideoAttrs         *pvideoAttr;
 
hvStorageType = MMDB_STORAGE_TYPE_EXTERNAL;
 
pvideoAttr=(MMDBVideoAttrs *)hvVidattrs.data;
strcpy(pvideoAttr>cFormat,"Formatv");
pvideoAttr.len=sizeof(MMDBVideoAttrs);

.
.
.
/* Generate thumbnail and assign data */ /* in video structure */
.
.
.
EXEC SQL INSERT INTO EMPLOYEE VALUES( '128557', 'Anita Jones', DB2VIDEO( CURRENT SERVER, '/employee/videos/ajones.vid', :hvStorageType, 'Anita''s video', :hvVidattrs, :hvThumbnail) );


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]