IBM Books

Image, Audio, Video Extender °ü¸® ¹× ÇÁ·Î±×·¡¹Ö

½æ³×ÀÏ °»½Å(À̹ÌÁö¿Í ºñµð¿À Àü¿ë)

À̹ÌÁö ¶Ç´Â ºñµð¿À ¿ÀºêÁ§Æ®¿ëÀ¸·Î ÀúÀåµÈ ½æ³×ÀÏÀ» °»½ÅÇÏ·Á¸é, Thumbnail UDF¸¦ »ç¿ëÇϽʽÿÀ(ÀúÀåµÈ À̹ÌÁö³ª ºñµð¿À¿¡ ¿¬°üµÈ °ÍÀÌ ¾ø´Ù¸é, ½æ³×ÀÏÀ» Ãß°¡ÇϽʽÿÀ). Thumbnail UDFÀÇ »ç¿ë½Ã, °»½Å ÁßÀÎ ½æ³×ÀÏÀÇ ¿ÀºêÁ§Æ® ÇÚµé°ú °»½ÅµÈ(¶Ç´Â »õ·Î¿î) ½æ³×ÀÏÀÇ ³»¿ëÀ» ÁöÁ¤ÇϽʽÿÀ.

ÇÁ·Î±×·¥¿¡¼­ ½æ³×ÀÏÀ» »ý¼ºÇϽʽÿÀ. Extender´Â ½æ³×ÀÏÀ» »ý¼ºÇÏ´Â API¸¦ Á¦°øÇÏÁö ¾Ê½À´Ï´Ù. »ç¿ëÀÚ´Â °»½ÅÇÏ´Â ½æ³×ÀÏÀÇ Å©±â¿Í Çü½ÄÀ» Á¦¾îÇÕ´Ï´Ù. ÇÁ·Î±×·¥¿¡ ½æ³×ÀÏ¿ë ±¸Á¶¸¦ ¸¸µé¾î UDF¿¡ ÀÖ´Â ½æ³×ÀÏÀÇ ±¸Á¶¸¦ ÁöÁ¤ÇϽʽÿÀ.

¿¹¸¦ µé¾î, C ÀÀ¿ëÇÁ·Î±×·¥¿¡ ÀÖ´Â ´ÙÀ½ ¸í·É¹®Àº ÀúÀåµÈ ºñµð¿À Ŭ¸³°ú ¿¬°üµÈ ½æ³×ÀÏÀ» °»½ÅÇÕ´Ï´Ù.

EXEC SQL BEGIN DECLARE SECTION;
     struct {
       short len;
       char data[10000];
     }hvThumbnail;
EXEC SQL END DECLARE SECTION;
 
/*Create thumbnail and store in hvThumbnail*/
 
EXEC SQL UPDATE employee
   SET picture=Thumbnail(
                 picture,
                 :hvThumbnail)
   WHERE name='Anita Jones';

»ç¿ëÀÚ Á¦°ø ¼Ó¼ºÀ¸·Î À̹ÌÁö³ª ºñµð¿À ¿ÀºêÁ§Æ® °»½Å½Ã, ½æ³×Àϵµ °»½ÅÇÒ ¼ö ÀÖ½À´Ï´Ù. »ç¿ëÀÚ Á¦°ø ¼Ó¼ºÀ¸·Î À̹ÌÁö³ª ºñµð¿À¸¦ °»½ÅÇÑ´Ù¸é, ÀÔ·ÂÀ¸·Î ½æ³×ÀÏÀ» ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. ¿ÀºêÁ§Æ® °»½Å½Ã ½æ³×ÀÏÀ» °»½ÅÇÏ°í ½ÍÁö ¾Ê´Ù¸é, ½æ³×ÀÏ ½ºÆå¿¡ ³Î(NULL) °ªÀ̳ª ºó ¹®ÀÚ¿­À» ÁöÁ¤ÇϽʽÿÀ.

C ÀÀ¿ëÇÁ·Î±×·¥¿¡ ÀÖ´Â ´ÙÀ½ ¸í·É¹®Àº »ç¿ëÀÚ Á¦°ø ¼Ó¼ºÀ¸·Î ºñµð¿À Ŭ¸³À» °»½ÅÇÏ°í ºñµð¿À¿Í ¿¬°üµÈ ½æ³×ÀÏÀ» °»½ÅÇÕ´Ï´Ù.

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;
 
hvStorageType=MMDB_STORAGE_TYPE_EXTERNAL;
 
MMDBVideoAttrs         *pvideoAttr;
pvideoAttr=(MMDBVideoAttrs *)hvVidattrs.data;
strcpy(pvideoAttr>cformat,"Formatv");
hvVidattrs.len=sizeof(MMDBVideoAttrs);
 
/* Update video content and thumbnail */
 
EXEC SQL UPDATE EMPLOYEE
   SET VIDEO=REPLACE(
                 VIDEO,
                 '/employee/newvid/ajones.mpg',
                 :hvStorageType,
                 'Anita''s new video',
                 :VidAttrs,
                 :hvThumbnail)               /*thumbnail*/
   WHERE NAME='Anita Jones';


[ ÆäÀÌÁöÀÇ ¸Ç À§ | ÀÌÀü ÆäÀÌÁö | ´ÙÀ½ ÆäÀÌÁö | ¸ñÂ÷ | »öÀÎ ]