Image、Audio 及 Video Extenders 管理與程式設計

指定 BLOB 或檔案內容

您可以顯示或播放在資料庫表格中儲存為 BLOB 的物件, 或其內容儲存於檔案中的物件 (從資料庫表格來參照)。 若物件儲存為 BLOB,請指定MMDB_PLAY_HANDLE。若物件內容儲存於檔案中, 請指定MMDB_PLAY_FILE。MMDB_PLAY_HANDLE 和 MMDB_PLAY_FILE 是 Extender 定義的常數。

例如,下列 C 應用程式中的陳述式,會播放內容位於檔案中的視訊:

rc = DBvPlay(
     "explore %s",
     MMDB_PLAY_FILE,                     /* content in file */
     "/employee/videos/ajones.mpg",
     MMDB_PLAY_NO_WAIT
     );

顯示或播放程式通常接受檔案的輸入。若指定 MMDB_PLAY_FILE,Extender 會使用環境變數中 的值,來解析檔案的相對檔名和路徑。 然後 Extender 會啟動瀏覽程式並將檔名傳給它。 若指定 MMDB_PLAY_HANDLE,Extender 會從 handle 取出檔名 (假設檔名不是空字元)。若 handle 中的檔名是空字元,物件會儲存為 BLOB。Extender 會在從屬站中建立暫用檔,並將 物件內容從資料庫表格複製到此從屬站檔案。然後 Extender 會啟動程式,並將保留內容的檔案 (或暫用檔) 名稱傳給程式。

例如,下列 C 應用程式中的陳述式,會取得儲存為 BLOB 的影像 handle, 並使用該 handle 來顯示影像:

EXEC SQL BEGIN DECLARE SECTION;
char hvImg_hdl [251];
  EXEC SQL END DECLARE SECTION;
 
rc = DBiBrowse(
     "ib %s",
     MMDB_PLAY_HANDLE,                   /* content is BLOB */
     hvImg_hdl,
     MMDB_PLAY_NO_WAIT
     );

內容必須是可存取的:請確定顯示或播放程式能夠存取物件內容。 若內容位於伺服器檔案中,但程式要求內容須位於從屬站上, 則請將檔案複製到從屬站上,或使用 Content UDF。若內容儲存為 BLOB, 則 Extender 將自動擷取至從屬站。


[ 頁面頂端 | 前一頁 | 下一頁 | 目錄 | 索引 ]