DirectShow DirectShow ÀÇ »ç¿ë¹ý ¿£ÄÚ´õ¿Í µðÄÚ´õÀÇ °³¹ß ¿£ÄÚ´õ API   [¸ñÂ÷¿­¶÷] [ÁÖ¼Òº¹»ç] [½½·Ôºñ¿ì±â]
¿£ÄÚ´õ API
 
Microsoft DirectX 9.0

¿£ÄÚ´õ API

¿£ÄÚ´õ API ´Â, ¼ÒÇÁÆ®¿þ¾î ¿£ÄÚ´õ ¹× Çϵå¿þ¾î ¿£ÄÚ´õ¿¡ »ç¿ëÇÏ´Â, ±ÕÀÏÀÇ ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÑ´Ù. ¾ÖÇø®ÄÉÀ̼ÇÀº, ¿£ÄÚ´õ API ¸¦ »ç¿ëÇØ ¿£ÄÚ´õÀÇ ±¸¼ºÀ» ½Ç½ÃÇϰųª ±¸¼ºÀÇ ¼³Á¤ ³»¿ëÀ» º¸Á¸Çϰųª ÇÒ ¼ö ÀÖ´Ù. ¿£ÄÚ´õ vender´Â, ¿£ÄÚ´õ API ¸¦ »ç¿ëÇØ ¿£ÄÚ´õÀÇ ´É·ÂÀ» °ø°³ÇÒ ¼ö ÀÖ´Ù. ¿£ÄÚ´õ API ´Â ÁÖ·Î ¿£ÄÚ´õÀü¿ëÀ¸·Î ¼³°èµÇ°í ÀÖÁö¸¸, ÀϹÝÀûÀ¸·Î µðÄÚ´õµµ ¿£ÄÚ´õ API ¸¦ Áö¿ø ÇÒ ¼ö°¡ ÀÖ´Ù.

¿£ÄÚ´õ API ´Â ICodecAPI ÀÎÅÍÆäÀ̽º¸¦ °³ÀÔ½ÃÄÑ ¾ÖÇø®ÄÉÀ̼ǿ¡ °ø°³µÈ´Ù. ÀÌ ÀÎÅÍÆäÀ̽º´Â ¿£ÄÚ´õ ÇÊÅͰ¡ °ø°³ÇÑ´Ù. ¿£ÄÚ´õ ÇÊÅÍÀÇ Á¾·ù·Î¼­ ³×ÀÌÆ¼ºêÀÇ DirectShow ÇÊÅÍ, Çϵå¿þ¾î ¿£ÄÚ´õ, ¹× DirectX Media Object (DMO)°¡ ÀÖ´Ù.

¿£ÄÚ´õÀÇ ´É·Â

¿£ÄÚ´õ´Â, ½Ã½ºÅÛ ·¹Áö½ºÆ®¸®¿¡ ÀúÀå ÇÏ´Â °Í¿¡ ÀÇÇØ, »óÀ§ ·¹º§ÀÇ ´É·ÂÀÇ ¸®½ºÆ®¸¦ µî·ÏÇÒ ¼ö ÀÖ´Ù. °¢°¢ÀÇ ´É·ÂÀº GUID ¿¡ ÀÇÇØ ½Äº°µÈ´Ù. ƯÁ¤ÀÇ ¿£ÄÚ´õÀÇ ´É·ÂÀ» ¿­°ÅÇÏ·Á¸é , ´ÙÀ½ÀÇ ¼ø¼­¸¦ ½ÇÇàÇÑ´Ù.

  1. ¿£ÄÚ´õ ÇÊÅ͸¦ ³ªÅ¸³»´Â ¸ð´ÏÄ«¸¦ »ý¼º ÇÑ´Ù. ( ¡¸Using the System Device Enumerator¡¹ÂüÁ¶. )
  2. IGetCapabilitiesKey ÀÎÅÍÆäÀ̽ºÀÇ ÇÊÅ͸ð´ÏÄ«¸¦ Á¶È¸ÇÑ´Ù.
  3. IGetCapabilitiesKey::GetCapabilitiesKey ¸¦ È£ÃâÇÑ´Ù. ÀÌ ¸Þ¼­µå´Â, ÇÊÅÍÀÇ ´É·Â ¸®½ºÆ®¸¦ ÀúÀå ÇÏ´Â ·¹Áö½ºÆ®¸® Ű¿¡ ´ëÇÑ ÇÚµéÀ» µ¹·ÁÁØ´Ù.
  4. RegEnumValue ¸¦ È£ÃâÇØ, µ¹·ÁÁÖ¾îÁø ŰÀÇ °ªÀ» ¿­°ÅÇÑ´Ù.

¿£ÄÚ´õ¸¦ °³¹ßÇÏ´Â °æ¿ì´Â, ÇÊÅͰ¡ µî·ÏµÇ¾î ÀÖÀ» ¶§´Â ´É·ÂÀÇ ·¹Áö½ºÆ®¸® ¿£Æ®¸®¸¦ »ý¼º ÇÑ´Ù. ¼ÒÇÁÆ®¿þ¾î ÇÊÅÍÀÇ °æ¿ì,FilterData Ű¿Í FriendlyName ŰÀÇ ±Ùó¿¡ Capabilities ¶ó´Â À̸§ÀÇ Å°¸¦ »ý¼º ÇÑ´Ù. º¸Åë, ÀÌ Á¤º¸´Â AMovieDllRegisterServer2 ¸¦ È£ÃâÇØ ÇÊÅÍÀÇ Ç¥ÁØÀûÀÎ µ¥ÀÌÅ͸¦ µî·ÏÇÑ ÈÄ¿¡ Ãß°¡ÇÑ´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â, ¡¸DirectShow ÇÊÅÍÀÇ µî·Ï ¹æ¹ý¡¹À» ÂüÁ¶ÇÒ°Í. ¶Ç´Â,Capabilities ŰÀÇ Àå¼Ò¸¦ ³ªÅ¸³»´Â ij¸¯ÅÍ ¶óÀÎÀ» ÀúÀå ÇÏ´Â CapabilitiesLocation ۸¦ ·¹Áö½ºÆ®¸®³»¿¡ »ý¼º ÇÒ ¼öµµ ÀÖ´Ù. ÀÌ Ä³¸¯ÅÍ ¶óÀÎÀÇ ¼±µÎ´Â,"HKLM\","HKCR\", ¶Ç´Â "HKCU\" ÀÇ ¾î´À ÂÊÀΰ¡¿¡ ÇØ ·¹Áö½ºÆ®¸® ¼­ºê Æ®¸®¸¦ ³ªÅ¸³¾ Çʿ䰡 ÀÖ´Ù. Ç÷¯±× ¾Ø Ç÷¹ÀÌ ÀåÄ¡ÀÇ °æ¿ì, µå¶óÀ̹öÀÇ ¼Â¾÷ ÆÄÀÏÀº ÇÊÅÍÀÇ FriendlyName ŰÀÇ ±Ùó¿¡ Capabilities ۸¦ »ý¼º ÇÒ Çʿ䰡 ÀÖ´Ù. ¶Ç, ¼ÒÇÁÆ®¿þ¾î ÇÊÅÍÀÇ °æ¿ì´Â Àü¼ú°ú °°ÀÌ Capabilities Ű´Â CapabilitiesLocation ۸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù.

Capabilities ۸¦ »ý¼º ÇÏ¸é °¢ ´É·ÂÀÇ GUID ¿¡ ´ëÀÀÇÏ´Â °ªÀ» »ý¼º ÇÑ´Ù. °ªÀÇ À̸§Àº, GUID ¿Í °°ÀÌ,{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} ¶ó°í ÇÏ´Â Çü½ÄÀ¸·Î ÇÑ´Ù. °¢ °ªÀÇ Á¾·ù´Â, ´ÙÀ½ Áß ÇϳªÀÏ Çʿ䰡 ÀÖ´Ù.

´ÙÀ½ ¿¹´Â ¼ÒÇÁÆ®¿þ¾î ÇÊÅÍÀÇ °æ¿ìÀÇ ·¹Áö½ºÆ®¸® ·¹À̾ƿôÀÌ´Ù.

\HKCR\CLSID\Filter Category\Instance\Filter CLSID\Capabilities\
    Values: 
    guid1: 1234 (REG_DWORD)   
    guid2: "{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}" (REG_SZ)
    guid3: "2","4","6" (REG_SZ_MULTI)
    guid4: "720,480" (REG_SZ) 

¿£ÄÚ´õ ÇÁ·ÎÆÄÀÏ

¿£ÄÚ´õ ÇÁ·ÎÆÄÀÏÀº, ·±Å¸Àӽÿ¡ ¿£ÄÚ´õ¿¡ Àû¿ëÇÒ ¼ö ÀÖ´Â, ±¸¼º ¼³Á¤ÀÇ °íÁ¤ ¸®½ºÆ®ÀÌ´Ù. ÇÁ·ÎÆÄÀÏÀº, ¿£ÄÚ´õ·ÎºÎÅÍ´Â µ¶¸³Çϰí ÀÖ´Ù. ¾ÖÇø®ÄÉÀ̼ÇÀº ¿ì¼± ¿£ÄÚ´õ¸¦ ¼±ÅÃÇØ, ´ÙÀ½¿¡ ÇÁ·ÎÆÄÀÏÀ» ¼±ÅÃÇØ, ±× ÇÁ·ÎÆÄÀÏÀ» ¿£ÄÚ´õ¿¡ Àû¿ëÇÒ ¼ö ÀÖ´Ù. ÇÁ·ÎÆÄÀÏÀº, GUID ¿¡ ÀÇÇØ ½Äº°µÇ¾î ·¹Áö½ºÆ®¸®³»ÀÇ ´ÙÀ½ÀÇ Àå¼Ò¿¡ ÀúÀå ÇÑ´Ù.

\HKLM\Software\Microsoft\EncoderProfiles\Profile GUID\

Profile GUID ´Â, ÇÁ·ÎÆÄÀÏÀ» ½Äº°ÇÏ´Â GUID ÀÇ Ä³¸¯ÅÍ ¶óÀÎ Çü½ÄÀÇ °ªÀÌ´Ù. °¢ ¼³Á¤¿¡ ´ëÇØ °ªÀ» »ý¼º ÇÑ´Ù. °Ô´Ù°¡ ÇÁ·ÎÆÄÀÏ ("LowBandwidthVideo" µî)À» ½Äº°ÇÏ´Â,FriendlyName ¶ó´Â À̸§ÀÇ Ä³¸¯ÅÍ ¶óÀΰªÀ» »ý¼º ÇÑ´Ù.

¡èTOP