IBM Books

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

ÄÆ īŻ·Î±×È­

ÄÆ īŻ·Î±×¿¡ ÄÆ¿¡ ´ëÇÑ Á¤º¸¸¦ ÀúÀåÇÒ ¼ö ÀÖ½À´Ï´Ù. Video Extender´Â ´ÙÀ½À» ¼öÇàÇÏ´Â API¸¦ Á¦°øÇÕ´Ï´Ù.

īŻ·Î±×È­µÈ ÄÆÀº ½ºÅ丮º¸µå¿ë ÀÔ·ÂÀ» Á¦°øÇÕ´Ï´Ù. ÄÆ īŻ·Î±×(īŻ·Î±×´Â µ¥ÀÌÅͺ£À̽º³ª ÆÄÀÏ¿¡ ÀÖÀ½)¿¡ ÄÆ Á¤º¸¸¦ ÀúÀåÇÑ ÈÄ, ÄÆ °ü·Ã ÀÀ¿ëÇÁ·Î±×·¥¿¡ ÀÌ Á¤º¸¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ºñµð¿À¿¡ ÀÖ´Â ¸ðµç ÄÆ¿ë ´ëÇ¥ ÇÁ·¹ÀÓÀ» È®º¸Çϰí À̰ÍÀ» ½ºÅ丮º¸µå¿¡ Ç¥½ÃÇÏ´Â ÀÀ¿ëÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.

µ¥ÀÌÅͺ£À̽º¿ëÀ¸·Î ÄÆ īŻ·Î±×¸¦ ÀÛ¼ºÇϱ⸸ ÇÏ¸é µË´Ï´Ù. īŻ·Î±×°¡ µ¥ÀÌÅͺ£À̽º¿¡ Àֱ⸦ ¿øÇÏ´Â °æ¿ì¿¡¸¸, ÄÆ īŻ·Î±×¸¦ ÀÛ¼ºÇØ¾ß ÇÕ´Ï´Ù. Video Extender´Â ºñµð¿ÀÀÇ ÄÆ¿¡ ´ëÇÑ µ¥ÀÌÅ͸¦ ÀúÀåÇÏ°í ÆÄÀÏ·ÎÀÇ Ãâ·Â Àǻ縦 ³ªÅ¸³¾ ¶§, ÄÆ īŻ·Î±× ÆÄÀÏÀ» ÀÚµ¿À¸·Î ÀÛ¼ºÇÕ´Ï´Ù.

īŻ·Î±× ÀÛ¼º Àü(µ¥ÀÌÅͺ£À̽º Àü¿ë)

µ¥ÀÌÅͺ£À̽º¿¡ īŻ·Î±×¸¦ ÀÛ¼ºÇÏ°í »ç¿ëÇϱâ Àü¿¡ ´ÙÀ½À» ¼öÇàÇØ¾ß ÇÕ´Ï´Ù.

ÄÆ īŻ·Î±× ÀÛ¼º(µ¥ÀÌÅͺ£À̽º Àü¿ë)

µ¥ÀÌÅͺ£À̽º¿¡¼­ ÄÆ īŻ·Î±×¸¦ ÀÛ¼ºÇÏ·Á¸é DBvCreateShotCatalog API¸¦ »ç¿ëÇϽʽÿÀ. (Video Extender´Â ÄÆ¿¡ ´ëÇÑ µ¥ÀÌÅÍ ÀúÀå°ú ÆÄÀÏ Ãâ·ÂÀ» ¿øÇÒ ¶§, ÄÆ īŻ·Î±× ÆÄÀÏÀ» ÀÚµ¿À¸·Î ÀÛ¼ºÇÕ´Ï´Ù.) īŻ·Î±×´Â ÄÆ °ü·Ã Á¤º¸¸¦ ÀúÀåÇÏ´Â Å×À̺í·Î ±¸¼ºµË´Ï´Ù. SQLÀ» »ç¿ëÇÏ¿© Å×À̺íÀÇ ºä¸¦ Á¶È¸ÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ Ç¥´Â ºäÀÇ Ä÷³À» ³ªÅ¸³À´Ï´Ù.

Ç¥ 12. ÄÆ īŻ·Î±× ºä¿¡ ÀÖ´Â Ä÷³
Ä÷³ À̸§ µ¥ÀÌÅÍ À¯Çü ¼³¸í
SHOTHANDLE CHAR(36) ÄÆ ÇÚµé
VIDEOHANDLE VARCHAR(254) ºñµð¿À ÇÚµé. ÀÌ Ä÷³Àº ºñµð¿À°¡ DBvOpenHandle API·Î ¿­·Á ÀÖ´Â °æ¿ì¿¡¸¸ °ªÀ» Æ÷ÇÔÇÕ´Ï´Ù.
VIDEOTABLE VARCHAR(254) ºñµð¿À°¡ ÀÖ´Â Å×À̺í. ÀÌ Ä÷³Àº ºñµð¿À°¡ DBvOpenHandle API·Î ¿­·Á ÀÖ´Â °æ¿ì¿¡¸¸ °ªÀ» Æ÷ÇÔÇÕ´Ï´Ù.
VIDEOCOLUMN VARCHAR(254) ºñµð¿À°¡ ÀÖ´Â Å×À̺í Ä÷³. ÀÌ Ä÷³Àº ºñµð¿À°¡ DBvOpenHandle API·Î ¿­·Á ÀÖ´Â °æ¿ì¿¡¸¸ °ªÀ» Æ÷ÇÔÇÕ´Ï´Ù.
VIDEOFILE VARCHAR(254) ºñµð¿À ÆÄÀÏ À̸§. ÀÌ Ä÷³Àº ºñµð¿À°¡ DBvOpenFile API·Î ¿­·Á ÀÖ´Â °æ¿ì¿¡¸¸ °ªÀ» Æ÷ÇÔÇÕ´Ï´Ù.
STARTFRAME INTEGER ½ÃÀÛ ÇÁ·¹ÀÓ ¹øÈ£
ENDFRAME INTEGER ³¡ ÇÁ·¹ÀÓ ¹øÈ£
REPFRAME INTEGER ´ëÇ¥ ÇÁ·¹ÀÓ ¹øÈ£
REPFRAMEDATA DB2IMAGE ´ëÇ¥ ÇÁ·¹ÀÓ µ¥ÀÌÅÍ
COMMENTS LONG VARCHAR ÁÖ¼®

µ¥ÀÌÅͺ£À̽º¿¡¼­ ÀÛ¼ºÇÑ Ä«Å»·Î±×ÀÇ ÄÆ īŻ·Î±× ¼ö¿¡ ÀÖ¾î, ±×¸®°í °¢ ÄÆ īŻ·Î±×¿¡ Á¤º¸¸¦ ÀúÀåÇÑ ÄÆ Á¾·ù¿¡ ´ëÇØ À¶Å뼺À» °®½À´Ï´Ù. ¸¹Àº ºñµð¿À¿ë ÄÆ Á¤º¸¸¦ ÀúÀåÇÏ´Â ÇϳªÀÇ Ä«Å»·Î±×¸¦ ÀÛ¼ºÇϰųª, ºÐ¸® īŻ·Î±×¿¡ ÀúÀåµÈ °¢°¢ÀÇ ºñµð¿À¿ë ÄÆ Á¤º¸¸¦ °®°Å³ª ¿©·¯ īŻ·Î±×¿¡ ºñµð¿À ³»ÀÇ ¿©·¯ ÄÆ¿¡ ´ëÇÑ Á¤º¸¸¦ ÀúÀåÇÒ ¼ö ÀÖ½À´Ï´Ù.

API »ç¿ë½Ã, īŻ·Î±× À̸§À» ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. 16 ¹®ÀÚ¸¦ ³Ñ´Â À̸§Àº Àý´ÜµË´Ï´Ù. ¶ÇÇÑ µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ SQLConnect È£Ãâ¿¡¼­ ¸®ÅÏÇÑ µ¥ÀÌÅͺ£À̽º ¿¬°á ÇÚµéÀ» ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ÀÇ ¸í·É¹®Àº hotshotsÀ̶ó´Â ÄÆ īŻ·Î±×¸¦ ÀÛ¼ºÇÕ´Ï´Ù.

SQLHDBC  hdbc;
 
rc = SQLConnect(hdbc,"hotshots",SQL_NTS,id,SQL_NTS,password,SQL_NTS);
 
rc=DBvCreateShotCatalog(
                "hotshots",           /* shot catalog name */
                hdbc);                /* database connection handle */

ÄÆ īŻ·Î±× ºä´Â À̸§ ÁöÁ¤µÈ MMDBSYS.SVcatnameÀ̰í, ¿©±â¼­ catname´Â ÄÆ īŻ·Î±× À̸§ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, hotshotsÀ̶ó´Â īŻ·Î±×ÀÇ ºä´Â MMDBSYS.SVHOTSHOTSÀÔ´Ï´Ù.

´ÜÀÏ ÄÆ¿¡ ´ëÇÑ Á¤º¸ ÀúÀå(µ¥ÀÌÅͺ£À̽º)

ÄÆ īŻ·Î±×¿¡ ´ÜÀÏ ÄÆ Á¤º¸¸¦ ÀúÀåÇÏ·Á¸é, DBvInsertShot API¸¦ »ç¿ëÇϽʽÿÀ. ÄÆ īŻ·Î±×°¡ µ¥ÀÌÅͺ£À̽º¿¡ ÀÖ´Â °æ¿ì¿¡¸¸, ºñµð¿À¿¡ ´ÜÀÏ ÄÆ Á¤º¸¸¦ ÀúÀåÇÒ ¼ö ÀÖ½À´Ï´Ù. īŻ·Î±×¿¡ ÀúÀåµÈ Á¤º¸´Â ´ÙÀ½À» Æ÷ÇÔÇÕ´Ï´Ù.

±×·¯³ª ÁÖ¼®Àº ÄÆ¿¡ ´ëÇØ ÀúÀåµÇÁö ¾Ê½À´Ï´Ù. ÄÆ¿¡ ´ëÇØ ÀúÀåµÈ Á¤º¸¿¡ ÁÖ¼®À» Ãß°¡ÇÏ´Â ¹æ¹ý¿¡ °üÇÑ ¼³¸íÀº ÄÆ¿¡ ´ëÇÑ ÁÖ¼® ÁöÁ¤(µ¥ÀÌÅͺ£À̽º Àü¿ë)À» ÂüÁ¶ÇϽʽÿÀ.

DBvInsertShot API »ç¿ë½Ã, ÄÆ īŻ·Î±× À̸§°ú ÄÆ¿¡ Æ÷ÀÎÅ͸¦ ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. ÄÆ¿¡ Æ÷ÀÎÅ͸¦ ¼³Á¤ÇÏ´Â ÇÑ °¡Áö ¹æ¹ýÀº ÄÆ È®º¸¿¡ ¼³¸íµÈ °Íó·³ ´ÙÀ½ ÄÆÀ» È®º¸ÇÏ´Â °ÍÀÔ´Ï´Ù. ¶ÇÇÑ µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ SQLConnect È£Ãâ¿¡¼­ ¸®ÅÏÇÏ´Â µ¥ÀÌÅͺ£À̽º ¿¬°á ÇÚµéÀ» ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ÀÇ ¸í·É¹®Àº ÇÁ·¹ÀÓ 1 ´ÙÀ½ ÄÆÀ» È®º¸ÇÏ¿© hotshots¶ó´Â ÄÆ īŻ·Î±×¿¡ ÄÆ¿¡ °üÇÑ Á¤º¸¸¦ ÀúÀåÇÕ´Ï´Ù.

SQLHDBC  hdbc;
SQLHENV  henv;
DBvIOType    *video;
long start_frame = 1;
char shotDetected = 0;
DBvShotControl    shotCtrl;
DBvShotType    shot;
 
shotCtrl>method=DETECT_CORRHIST
shotCtrl>normalCorrValue=60;
shotCtrl>sceneCutSkipXY=1;
shotCtrl>CorrHistThresh=10;
shotCtrl>DissThresh=10;
shotCtrl>DissCacheSize=4;
shotCtrl>DissNumCaches=7;
shotCtrl>minShotSize=0;
 
SQLAllocConnect(henv,&hdbc)
 
rc = SQLConnect(hdbc,"hotshots",SQL_NTS,id,SQL_NTS,password,SQL_NTS);
 
rc=DBvDetectShot(
       video,
       start_frame,
       &shotDetected,
       &shotCtrl,
       &shot)
 
rc=DBvInsertShot (
       "hotshots",                /*shot catalog name*/
       shot,                      /*pointer to shot*/
       hdbc);                     /*database connection handle*/

ºñµð¿À¿¡ ÀÖ´Â ¸ðµç ÄÆ¿¡ ´ëÇÑ Á¤º¸ ÀúÀå

ºñµð¿À¿¡ ÀÖ´Â ¸ðµç ÄÆ Á¤º¸¸¦ ÄÆ īŻ·Î±× Á¤º¸¿¡ ÀúÀåÇÏ·Á¸é, DBvBuildStoryboardTable API³ª DBvBuildStoryboardFile API¸¦ »ç¿ëÇϽʽÿÀ. DBvBuildStoryboardTable API´Â µ¥ÀÌÅͺ£À̽º¿¡ »óÁÖÇÏ´Â ÄÆ īŻ·Î±×¿¡ Á¤º¸¸¦ ÀúÀåÇÕ´Ï´Ù. DBvBuildStoryboardFile API´Â ÄÆ īŻ·Î±× ÆÄÀÏÀ» ÀÛ¼ºÇÏ°í ÆÄÀÏ¿¡ ÄÆ Á¤º¸¸¦ ÀúÀåÇÕ´Ï´Ù.

¾çÂÊ API¿¡ ´ëÇØ, ¼Ò½º ºñµð¿À´Â µ¥ÀÌÅͺ£À̽º³ª ÆÄÀÏ¿¡ ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù.

API »ç¿ë½Ã, ´ÙÀ½À» ¼öÇàÇØ¾ß ÇÕ´Ï´Ù.

DBvBuildStoryboardTable API Àü¿ëÀÇ °æ¿ì, µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ SQLConnect È£ÃâÀÌ ¸®ÅÏÇÏ´Â µ¥ÀÌÅͺ£À̽º ¿¬°á ÇÚµéÀ» ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù.

¿¹¸¦ µé¾î, ´ÙÀ½ÀÇ ¸í·É¹®Àº ÄÆ īŻ·Î±×¿¡ ºñµð¿ÀÀÇ ¸ðµç ÄÆ¿¡ ´ëÇÑ Á¤º¸¸¦ ÀúÀåÇÕ´Ï´Ù. ÄÆ īŻ·Î±×´Â µ¥ÀÌÅͺ£À̽º¿¡ ÀÖ½À´Ï´Ù.

SQLHDBC  hdbc;
SQLHENV  henv;
DBvIOType    *video;
DBvShotControl    shotCtrl;
DBvStoryBoardCtrl    sbCtrl;
 
sbCtrl>thresh1=50
sbCtrl>thresh2=500;
sbCtrl>delta=20;
 
SQLAllocConnect(henv,&hdbc)
 
rc = SQLConnect(hdbc,"hotshots",SQL_NTS,id,SQL_NTS,password,SQL_NTS);
 
rc=DBvBuildStoryboardTable (
       "hotshots",                /*shot catalog name*/
       video,                     /*pointer to video structure*/
       shotCtrl,                  /*pointer to shot control structure*/
       sbctrl,                    /*pointer to storyboard control structure*/
       hdbc);                     /*database connection handle*/

´ÙÀ½ ¸í·É¹®Àº ÄÆ īŻ·Î±× ÆÄÀÏÀ» ÀÛ¼ºÇÏ°í ÆÄÀÏ¿¡ ºñµð¿À¿¡ ÀÖ´Â ¸ðµç ÄÆ ÆÄÀÏ¿¡ ´ëÇÑ Á¤º¸¸¦ ÀúÀåÇÕ´Ï´Ù.

DBvIOType    *video;
DBvShotControl    shotCtrl;
DBvStoryBoardCtrl    sbCtrl;
 
sbCtrl>thresh1=50
sbCtrl>thresh2=500;
sbCtrl>delta=20;
 
rc=DBvBuildStoryboardFile (
       "hotshots",                /*shot catalog file name*/
       video,                     /*pointer to video structure*/
       shotCtrl,                  /*pointer to shot control structure*/
       sbctrl);                   /*pointer to storyboard control structure*/

½ºÅ丮º¸µå ºôµå

±× À̸§ÀÌ ¾Ï½ÃÇϵíÀÌ, DBvBuildStoryboardTable API¿Í DBvBuildStoryboardFile API´Â ½ºÅ丮º¸µå¿¡ »ç¿ëµÇ´Â Á¤º¸ ÀúÀå¿¡ ƯÈ÷ À¯¿ëÇÕ´Ï´Ù. ½ºÅ丮º¸µå´Â ºñµð¿ÀÀÇ ½Ã°¢Àû ¿ä¾àÀÔ´Ï´Ù. ÄÆ īŻ·Î±×¿¡ ºñµð¿À¿ëÀ¸·Î ÀúÀåµÈ ´ëÇ¥ ÇÁ·¹ÀÓÀ» Ç¥½ÃÇÏ¿© ½ºÅ丮º¸µå¸¦ ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.

DBvBuildStoryboardTable API¿Í DBvBuildStoryboardFile API´Â Çϳª ÀÌ»óÀÇ ÄÆ¿ë ´ëÇ¥ ÇÁ·¹ÀÓÀ» ÀúÀåÇÕ´Ï´Ù. DBvStoryboardCtrl ±¸Á¶¿¡ ÁöÁ¤ÇÏ´Â °ªÀÌ ÄÆ¿¡ ÀúÀåµÇ´Â ´ëÇ¥ ÇÁ·¹ÀÓÀÇ ¼ö¿Í »ç¿ëÇÒ ÇÁ·¹ÀÓÀ» Á¦¾îÇÕ´Ï´Ù. DBvStoryboardCtrl ±¸Á¶ Á¤ÀÇ¿¡ ´ëÇØ¼­´Â ÄÆ °ËÃâ µ¥ÀÌÅÍ ±¸Á¶¸¦ ÂüÁ¶ÇϽʽÿÀ. ´ÙÀ½ Ç¥´Â DBvStoryboardCtrl Çʵ忡¼­ÀÇ °ª »ç¿ë¹ýÀ» ¼³¸íÇÕ´Ï´Ù.

±×¸² 23. DBvStoryboardCtrl ±¸Á¶¿¡¼­ÀÇ °ª »ç¿ë¹ý


REQTEXT


Ç¥¿¡¼­´Â ´ÙÀ½À» ¼³¸íÇÕ´Ï´Ù.

ÀÓÀÇÀÇ ÄÆÀº thresh1À̳ª thresh2 °ªÀÌ -1·Î ¼³Á¤µÇ´Â °æ¿ì, ªÀº ÄÆÀ¸·Î ó¸®µÉ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·± °æ¿ì, ÇϳªÀÇ ´ëÇ¥ ÇÁ·¹ÀÓ Áï Áß°£ ÇÁ·¹ÀÓ¸¸ÀÌ ÄÆ īŻ·Î±×¿¡ ÄÆ¿ëÀ¸·Î ÀúÀåµÉ °ÍÀÔ´Ï´Ù.

DBvStoryboardCtrl µ¥ÀÌÅÍ ±¸Á¶¿¡ ÀÖ´Â °ª À̿ܿ¡ DBvShotControl µ¥ÀÌÅÍ ±¸Á¶ÀÇ Çʵå´Â ¾î¶² ´ëÇ¥ ÇÁ·¹ÀÓÀÌ ½ºÅ丮º¸µå¿¡ ÈÄ¼Ó Ç¥½Ã¸¦ À§ÇØ ÀúÀåµÇ´ÂÁö¿¡ ¿µÇâÀ» ÁÝ´Ï´Ù. ¿¹¸¦ µé¾î, DBvShotControl µ¥ÀÌÅÍ ±¸Á¶¿¡ ÀÖ´Â CorrHistThresh, normalcorrValue ¹× minShotSize Çʵå´Â ÄÆ °ËÃâ¿ë ÀÓ°è°ªÀ» ÁöÁ¤ÇÏ¿© ºñµð¿À ½ºÅ丮º¸µå¿¡ Ç¥½ÃµÉ ÇÁ·¹ÀÓ Á¾·ù¿¡ ¿µÇâÀ» ÁÝ´Ï´Ù. ½ºÅ丮º¸µå »ç¿ë ÄÆ Á¤º¸¸¦ ÀúÀåÇÏ´Â DBvBuildStoryBoardTable API ¹× DBvBuildStoryBoardFile APIÀÇ »ç¿ë½Ã, »ç¿ëÀÚ´Â ¿ì¼± DBvStoryBoardCtrl°ú DBvShotControl µ¥ÀÌÅÍ ±¸Á¶¿¡ ´ëÇÑ Ãʱ⠼³Á¤À» »ç¿ëÇÏ¿© ½Ã¹ü ¼öÇàÀ» ÇÒ Áö ¸ð¸¨´Ï´Ù. ÀÌ ¶§, ÀÌ µ¥ÀÌÅÍ ±¸Á¶ÀÇ ´Ù¾çÇÑ Çʵ忡¼­ °ªÀ» º¯°æÇÏ¿© °á°ú¸¦ Á¶Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.

½ºÅ丮º¸µå Ç¥½Ã

½ºÅ丮º¸µå¸¦ Ç¥½ÃÇÏ´Â ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ºñµð¿À¿ë ÄÆ īŻ·Î±×¿¡ ÀúÀåµÈ ´ëÇ¥ ÇÁ·¹ÀÓÀ» ¾×¼¼½ºÇÏ¿© À̸¦ ¼öÇàÇÕ´Ï´Ù. DBvBuildStoryboardFile API°¡ ºñµð¿À¿ë ÄÆÀ» ÀúÀåÇÏ´Â µ¥ »ç¿ëµÇ¾ú´Ù¸é, ÄÆ īŻ·Î±× ÆÄÀÏÀº ´ëÇ¥ ÇÁ·¹ÀÓ¿ë GIF ÆÄÀÏÀ» °¡¸®Åµ´Ï´Ù. ºê¶ó¿ìÀú³ª Ç¥½Ã ÇÁ·Î±×·¥À» »ç¿ëÇÏ¿© À̵é GIF ÆÄÀÏÀ» Ç¥½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù.

DBvBuildStorybBoardTable API°¡ ºñµð¿À¿ë ÄÆÀ» ÀúÀåÇÏ´Â µ¥ ¾²¿´´Ù¸é, ÄÆ īŻ·Î±×(µ¥ÀÌÅͺ£À̽º¿¡ ÀúÀåµÈ)¿¡´Â ´ëÇ¥ ÇÁ·¹ÀÓ¿¡ ´ëÇÑ µ¥ÀÌÅͰ¡ ÀÖ½À´Ï´Ù. ÄÆ īŻ·Î±× ºä¿¡¼­ ´ëÇ¥ ÇÁ·¹ÀÓ µ¥ÀÌÅ͸¦ ¾×¼¼½ºÇÒ ¼ö ÀÖ½À´Ï´Ù. (ºä¿¡ ´ëÇÑ ¼³¸íÀº Ç¥ 12¸¦ ÂüÁ¶ÇϽʽÿÀ.) ´ëÇ¥ ÇÁ·¹ÀÓ µ¥ÀÌÅÍ´Â YUV Çü½ÄÀÔ´Ï´Ù. À̰ÍÀº ´ëºÎºÐÀÇ À̹ÌÁö Ç¥½Ã ÇÁ·Î±×·¥¿¡ ÀÇÇØ Ç¥½ÃµÇ´Â Çü½ÄÀÌ ¾Æ´Õ´Ï´Ù. ´ëÇ¥ ÇÁ·¹ÀÓÀ» Ç¥½ÃÇÏ·Á¸é, °Ë»öµÈ ÇÁ·¹ÀÓ Ç¥½Ã¿¡ ¼³¸íµÈ °Íó·³ DBvFrameDatato24BitRGB API¸¦ »ç¿ëÇÏ¿© ÇÁ·¹ÀÓ µ¥ÀÌÅ͸¦ º¯È¯ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·± ´ÙÀ½, ÀûÀýÇÑ ºê¶ó¿ìÀú¿Í Ç¥½Ã ÇÁ·Î±×·¥À» »ç¿ëÇÏ¿© ´ëÇ¥ ÇÁ·¹ÀÓÀ» Ç¥½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù.

½ºÅ丮º¸µå »ùÇà ÇÁ·Î±×·¥

SAMPLES ¼­ºêµð·ºÅ丮¿¡´Â ºñµð¿À¿ë ½ºÅ丮º¸µåÀÇ ºôµå°ú Ç¥½Ã¸¦ ¿¹ÁõÇÏ´Â µÎ °³ÀÇ »ùÇà ÇÁ·Î±×·¥ÀÌ ÀÖ½À´Ï´Ù. makesf.exe ÆÄÀÏ¿¡ ÀÖ´Â ÇϳªÀÇ »ùÇà ÇÁ·Î±×·¥Àº DBvBuildStoryBoardFile API¸¦ »ç¿ëÇÏ¿© ÄÆ īŻ·Î±× ÆÄÀÏÀ» ÀÛ¼ºÇÏ°í ±× ÆÄÀÏ¿¡ ÄÆ µ¥ÀÌÅ͸¦ ÀúÀåÇÕ´Ï´Ù. makehtml.exe¿¡ ÀÖ´Â ´Ù¸¥ »ùÇà ÇÁ·Î±×·¥Àº ÄÆ īŻ·Î±×¿¡ ¾×¼¼½ºÇÏ¿© À¥ ºê¶ó¿ìÀú¿¡¼­ Ç¥½ÃÇÒ ¼ö ÀÖ´Â HTML ÆäÀÌÁö¸¦ ÀÛ¼ºÇÕ´Ï´Ù.

ÄÆ¿¡ ´ëÇÑ ÁÖ¼® ÁöÁ¤(µ¥ÀÌÅͺ£À̽º Àü¿ë)

ÄÆ īŻ·Î±×¿¡ ÄÆ¿¡ ´ëÇÑ ´Ù¸¥ Á¤º¸·Î ÀúÀåµÇ´Â ÁÖ¼®À» ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÁÖ¼®À» ÁöÁ¤ÇÏ·Á¸é, DBvSetShotComment API¸¦ »ç¿ëÇϽʽÿÀ.

API »ç¿ë½Ã, ÁÖ¼®À» ÀúÀåÇÏ´Â ÄÆ īŻ·Î±×ÀÇ À̸§, ÁÖ¼®ÀÌ Ãß°¡µÇ´Â ÄÆ ÇÚµé ¹× ÁÖ¼®À» ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. ¶ÇÇÑ µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ SQLConnect È£Ãâ¿¡¼­ ¸®ÅÏÇÏ´Â µ¥ÀÌÅͺ£À̽º ¿¬°á ÇÚµéÀ» ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ ¸í·É¹®Àº hotsots¶ó´Â ÄÆ īŻ·Î±×¿¡ ÄÆ(ÇÁ·¹ÀÓ ¹øÈ£ 85·Î ½ÃÀÛÇÏ´Â)¿¡ ´ëÇÑ ÁÖ¼®À» Ãß°¡ÇÕ´Ï´Ù.

SQLHDBC  hdbc;
SQLHENV  henv;
char shothandle[37];
 
SQLAllocConnect(henv,&hdbc)
 
rc = SQLConnect(hdbc,"hotshots",SQL_NTS,id,SQL_NTS,password,SQL_NTS);
 
EXEC SQL SELECT SHOTHANDLE INTO :shothandle
  FROM MMDBSYS.SVHOTSHOTS
  WHERE STARTFRAME=85;
 
rc=DBvSetShotComment (
        "hotshots",                      /*shot catalog name*/
        shothandle,                      /*shot handle*/
        "shot of beach at sunset",       /*comment*/
        hdbc);                           /*database connection handle*/

ÄÆ¿¡ ´ëÇØ ÀúÀåµÇ´Â Á¤º¸ º¯°æ(µ¥ÀÌÅͺ£À̽º Àü¿ë)

ÄÆ īŻ·Î±×¿¡ ÄÆ¿¡ ´ëÇØ ÀúÀåµÈ Á¤º¸¸¦ º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù. DBvUpdateShot API¸¦ »ç¿ëÇÏ¿© ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù. DBvShotType ±¸Á¶¿¡ ´ëü Á¤º¸¸¦ µÎ½Ê½Ã¿À. ¼³»ç Á¤º¸°¡ º¯°æµÇÁö ¾Ê´õ¶óµµ ³²¾ÆÀÖ´Â Çʵ忡 ´ëÇÑ Á¤º¸µµ ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. DBvUpdateShot API »ç¿ë½Ã, īŻ·Î±× À̸§°ú DBvShotType ±¸Á¶·ÎÀÇ Æ÷ÀÎÅ͸¦ ÁöÁ¤ÇϽʽÿÀ. ¶ÇÇÑ µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ SQLConnect È£Ãâ¿¡¼­ ¸®ÅÏÇÏ´Â µ¥ÀÌÅͺ£À̽º ¿¬°á ÇÚµéÀ» ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù.

ÄÆ¿¡ ´ëÇÑ Á¤º¸ º¯°æ½Ã, Á¤º¸¿Í ÇÔ²² ÀúÀåµÈ ÁÖ¼®À» º¯°æÇÒ ¼ö ÀÖ´Â ¿É¼ÇÀ» °®½À´Ï´Ù. ÁÖ¼®À» º¯°æÇÏ·Á¸é, ±×°ÍÀ» DBvShotType ±¸Á¶¿¡ ÁöÁ¤ÇϽʽÿÀ. ÀÌÀü ³»¿ëÀ» À¯ÁöÇÏ·Á ÇÑ´Ù¸é, DBvShotType ±¸Á¶¿¡ ³Î(Null) °ªÀ» ÁöÁ¤ÇϽʽÿÀ.

¿¹¸¦ µé¾î, ´ÙÀ½ ¸í·É¹®Àº hotshots¶ó´Â īŻ·Î±×¿¡ ÄÆ¿ëÀ¸·Î ÀúÀåµÈ Á¤º¸¸¦ º¯°æÇÕ´Ï´Ù. ÄÆÀº ÇÁ·¹ÀÓ ¹øÈ£ 85¿¡¼­ ½ÃÀ۵˴ϴÙ.

SQLHDBC  hdbc;
SQLHENV  henv;
char shothandle[37];
DBvShotType    shot;
DBvFrameData  fd110;
 
/* get shot handle */
 
EXEC SQL SELECT SHOTHANDLE INTO :shothandle
  FROM MMDBSYS.SVHOTSHOTS
  WHERE STARTFRAME=85;
 
/* change shot attribute */
 
shot.startFrame=110;
shot.endFrame=200;
shot.repframe=110;
shot.fd=fd110;
shot.comment=NULL;
 
/* update shot information */
 
SQLAllocConnect(henv,&hdbc)
 
rc = SQLConnect(hdbc,"hotshots",SQL_NTS,id,SQL_NTS,password,SQL_NTS);
 
rc=DBvUpdateShot (
        "hotshots",                     /*shot catalog name*/
        shot,                           /*shot information*/
        hdbc);                          /*database connection handle*/

ÄÆ īŻ·Î±×¿¡ ÄÆ Á¤º¸ º´ÇÕ(µ¥ÀÌÅͺ£À̽º Àü¿ë)

ÄÆ īŻ·Î±×¿¡ µÎ °³ÀÇ ÄÆ¿¡ ´ëÇØ ÀúÀåµÈ Á¤º¸¸¦ º´ÇÕÇÒ ¼ö ÀÖ½À´Ï´Ù. ÄÆ Á¤º¸ º´ÇÕ½Ã, óÀ½ ÄÆ°ú µÎ ¹øÂ° ÄÆÀ» ½Äº°ÇÏ¿© º´ÇÕ ¼ø¼­¸¦ Ç¥½ÃÇÕ´Ï´Ù. óÀ½ ÄÆÀÇ ½ÃÀÛ ÇÁ·¹ÀÓ ¹øÈ£´Â º´ÇÕµÈ ÄÆÀÇ ½ÃÀÛ ÇÁ·¹ÀÓ ¹øÈ£·Î ÀúÀåµË´Ï´Ù. óÀ½°ú µÎ ¹øÂ° ÄÆ °£ÀÇ ÃÖ´ë ÇÁ·¹ÀÓ ¹øÈ£´Â º´ÇÕµÈ ÄÆÀÇ ³¡ ÇÁ·¹ÀÓ ¹øÈ£·Î ÀúÀåµË´Ï´Ù. º´ÇÕÀº º´ÇÕµÈ ÄÆ¿¡ ´ëÇÑ Á¤º¸·Î óÀ½ ÄÆ¿¡ ´ëÇØ ÀúÀåµÈ Á¤º¸¸¦ ´ëüÇÕ´Ï´Ù. µÎ ¹øÂ° ÄÆ¿¡ ´ëÇØ ÀúÀåµÈ Á¤º¸´Â ÄÆ īŻ·Î±×¿¡¼­ »èÁ¦µË´Ï´Ù.

ÄÆ īŻ·Î±×¿¡ µÎ °³ÀÇ ÄÆ¿¡ ´ëÇÑ Á¤º¸¸¦ º´ÇÕÇÏ·Á¸é, DBvMergeShots API¸¦ »ç¿ëÇϽʽÿÀ. API »ç¿ë½Ã, º´ÇյǴ óÀ½°ú µÎ ¹øÂ° ÄÆ ÇÚµéÀÌ µû¸£´Â ÄÆ īŻ·Î±× À̸§À» ÁöÁ¤ÇϽʽÿÀ. ¶ÇÇÑ µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ SQLConnect È£Ãâ¿¡¼­ ¸®ÅÏÇÏ´Â µ¥ÀÌÅͺ£À̽º ¿¬°á ÇÚµéÀ» ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ ¸í·É¹®Àº īŻ·Î±× À̸§ hotshots¿¡ µÎ °³ÀÇ ÄÆ¿¡ ´ëÇØ ÀúÀåµÈ Á¤º¸¸¦ º´ÇÕÇÕ´Ï´Ù. óÀ½ ÄÆÀº ÇÁ·¹ÀÓ 85¿¡¼­ ½ÃÀÛÇÏ°í µÎ ¹øÂ° ÄÆÀº ÇÁ·¹ÀÓ 210¿¡¼­ ½ÃÀÛÇÕ´Ï´Ù.

SQLHDBC  hdbc;
SQLHENV  henv;
char shothandle1[37];
char shothandle2[37];
 
EXEC SQL SELECT SHOTHANDLE INTO :shothandle1
  FROM MMDBSYS.SVHOTSHOTS1
  WHERE STARTFRAME=85;
 
EXEC SQL SELECT SHOTHANDLE INTO :shothandle2
  FROM MMDBSYS.SVHOTSHOTS2
  WHERE STARTFRAME=210;
 
SQLAllocConnect(henv,&hdbc)
 
rc = SQLConnect(hdbc,"hotshots",SQL_NTS,id,SQL_NTS,password,SQL_NTS);
 
rc=DBvMergeShots (
        "hotshots",                    /*shot catalog name*/
        shothandle1,                   /*shot handle for first shot*/
        shothandle2,                   /*shot handle for second shot*/
        hdbc);                         /*database connection handle*/

ÄÆ īŻ·Î±×¿¡¼­ ÄÆ¿¡ ´ëÇÑ Á¤º¸ »èÁ¦(µ¥ÀÌÅͺ£À̽º Àü¿ë)

ÄÆ īŻ·Î±×¿¡¼­ ÄÆ¿¡ ´ëÇÑ Á¤º¸¸¦ »èÁ¦ÇÏ·Á¸é DBvDeleteShot API¸¦ »ç¿ëÇϽʽÿÀ. API »ç¿ë½Ã, ÄÆ ÇÚµéÀÌ µû¸£´Â ÄÆ īŻ·Î±× À̸§À» ÁöÁ¤ÇϽʽÿÀ. ¶ÇÇÑ µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ SQLConnect È£Ãâ¿¡¼­ ¸®ÅÏÇÏ´Â µ¥ÀÌÅͺ£À̽º ¿¬°á ÇÚµéÀ» ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ÀÇ ¸í·É¹®Àº hotshots¶ó´Â ÄÆ īŻ·Î±×¿¡¼­ ÄÆ(ÇÁ·¹ÀÓ ¹øÈ£ 85¿¡¼­ ½ÃÀÛÇÏ´Â)¿¡ °üÇÑ Á¤º¸¸¦ »èÁ¦ÇÕ´Ï´Ù.

SQLHDBC  hdbc;
SQLHENV  henv;
char shothandle[37];
 
EXEC SQL SELECT shothandle INTO :shothandle
  FROM mmdbsys.svhotshots
  WHERE startframe=85;
 
rc=DBvDeleteShot (
        "hotshots",                    /*shot catalog name*/
        shothandle,                    /*shot handle*/
        hdbc);                         /*database connection handle*/

ÄÆ īŻ·Î±× »èÁ¦(µ¥ÀÌÅͺ£À̽º Àü¿ë)

ÄÆ īŻ·Î±×¸¦ »èÁ¦ÇÏ·Á¸é DBvDeleteShotCatalog API¸¦ »ç¿ëÇϽʽÿÀ. API »ç¿ë½Ã, »èÁ¦µÇ´Â ÄÆ īŻ·Î±× À̸§°ú µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ SQLConnect È£ÃâÀÌ ¸®ÅÏÇÑ µ¥ÀÌÅͺ£À̽º ¿¬°á ÇÚµéÀ» ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î, ´ÙÀ½ÀÇ ¸í·É¹®Àº hotshots¶ó´Â ÄÆ īŻ·Î±×¸¦ »èÁ¦ÇÕ´Ï´Ù.

SQLHDBC  hdbc;
SQLHENV  henv;
 
rc=DBvDeleteShotCatalog (
        "hotshots",             /*shot catalog name*/
        hdbc);                  /*database connection handle*/


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