DirectShow¸¦ ÀÌ¿ëÇÑ µ¿¿µ»ó Àç»ý ÄÄÆ÷³ÍÆ® TEVMRPlayer¿Í À̸¦ ÀÌ¿ëÇÑ µ¥¸ð ÇÁ·Î±×·¥À¸·Î C++·Î ¸¸µé¾îÁø MicrosoftÀÇ VMR9Demo project ¼Ò½º¸¦ Delphi·Î º¯È¯ÇÏ°í, ¿©·¯ ±â´ÉÀ» Ãß°¡ÇÏ¿© º°µµÀÇ ¿ÜºÎ ¶óÀ̺귯¸®°¡ ÇÊ¿äÇÏÁö ¾Ê°í DirectShow¸¦ ¸ð¸£´Â »ç¶÷µéµµ ÀÌ¿ëÇϱ⠽±°Ô ÄÄÆ÷³ÍÆ®·Î ¸¸µé¾ú½À´Ï´Ù.
Ư¡À¸·Î´Â,
1. DSPack °°Àº ¿ÜºÎ ¶óÀ̺귯¸®³ª ÄÄÆ÷³ÍÆ® ¾øÀÌ DirectShowÀÇ ÇÔ¼ö¸¦ Á÷Á¢ È£ÃâÇÏ´Â ¹æ½ÄÀ¸·Î ¸¸µë
2. LAV FiltersÀÇ ¼Ò½º ÇÊÅÍ, ¿Àµð¿À µðÄÚ´õ ¹× ºñµð¿À µðÄÚ´õ¸¦ ±âº» ÇÊÅÍ·Î ¿ì¼± Àû¿ëµÇµµ·Ï ÇÏ¿© °ÅÀÇ ¸ðµç Á¾·ùÀÇ µ¿¿µ»ó Àç»ýÀÌ °¡´ÉÇϵµ·Ï ÇÔ.
(LAV Filters´Â ¼³Ä¡ ÀÛ¾÷¾øÀÌ ÇÊÅÍ°¡ µé¾îÀÖ´Â Æú´õ¸¸ ÁöÁ¤Çϸé ÄÄÆ÷³ÍÆ® ³»¿¡¼ °ü·Ã ÇÊÅ͸¦ Á÷Á¢ ·ÎµùÇÏ¿© »ç¿ëÇÒ ¼ö ÀÖÀ½, ´Ü, LAV FiltersÀÇ µ¿ÀÛ È¯°æ¼³Á¤À» º¯°æÇÏ·Á¸é ¼³Ä¡°¡ ÇÊ¿äÇÔ)
3. Video Renderer´Â EVR, VMR9, VMR7 ¹× madVR Áß¿¡¼ ¼±ÅÃÇÒ ¼ö ÀÖÀ¸¸ç Windowless ¸ðµå·Î µ¿ÀÛÇÔ
(madVRÀº Microsoft¿¡¼ Áö¿øÇÏ´Â ºñµð¿À ·£´õ·¯-EVR, VMR9, VMR7-µé°ú´Â µ¿ÀÛƯ¼ºÀÌ ´Ù¸¥ ºÎºÐÀÌ ÀÖÀ¸¹Ç·Î ÁÖÀǸ¦ ¿äÇÔ)
4. Direct3D surface¸¦ ÀÌ¿ëÇÑ À̹ÌÁö ¿À¹ö·¹ÀÌ ±â´ÉÀ» Á¦°øÇÔ (´Ü, madVR video renderer¸¦ »ç¿ë½Ã´Â Direct3D Surface¸¦ ¾²Áö ¾Ê´Â ¹æ½ÄÀ¸·Î 󸮵Ê)
5. ÇÁ·Î±×·¥ µ¿À۽ÿ¡ Graph ÀνºÅϽº¸¦ ½Ã½ºÅÛÀÇ Running Object Table¿¡ µî·ÏÇϹǷΠGraphEdit¸¦ ½ÇÇàÇÏ¿© GraphEditÀÇ File - Connect to Remote Graph.... ¸Þ´º¸¦ ÀÌ¿ëÇؼ filterÀÇ ¿¬°á»óÅÂÀ» ¾Ë ¼ö ÀÖÀ½
6. ¿µ»ó À̹ÌÁö ĸÃÄÇÔ¼ö¸¦ ÀÌ¿ëÇÏ¿© µ¿¿µ»ó ÆÄÀÏ¿¡¼ À̹ÌÁö¸¦ ÃßÃâÇÏ¿© ÆÄÀÏ·Î ÀúÀåÇÒ ¼ö ÀÖÀ½.
¹èÆ÷ ÆÐÅ°Áö¿¡ ÄÄÆ÷³ÍÆ® ¹× µ¥¸ð ÇÁ·Î±×·¥À» ±¸¼ºÇÏ´Â Àüü ¼Ò½º ÇÁ·Î±×·¥°ú LAVFiltersÀÇ ÇÊÅͼ¼Æ®¸¦ Æ÷ÇÔÇÏ°í ÀÖ½À´Ï´Ù.
¹ö±×¸¦ ¹ß°ßÇ߰ųª ÀÚüÀûÀ¸·Î ¾÷µ¥ÀÌÆ®ÇÑ ³»¿ëÀÌ ÀÖÀ¸½Å ºÐÀº ¾Ë·ÁÁÖ½É °í¸¿°Ú½À´Ï´Ù.
** Âü°í)
1. ÄÄÆ÷³ÍÆ® ÆÐÅ°Áö¿¡ TEVMRPlayer¸¦ Ãß°¡ ÈÄ Delphi ½ÇÇà½Ã¿¡ TEVMRPlayer°¡ Æ÷ÇÔµÈ ÄÄÆ÷³ÍÆ® ÆÐÅ°Áö°¡ ·ÎµåµÇÁö ¾Ê´Â ¹®Á¦°¡ ¹ß»ýÇÏ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù.
ÀÌ ¶§´Â µ¨ÆÄÀÌ°¡ ¼³Ä¡µÈ Æú´õ ¾Æ·¡ÀÇ bin Æú´õ¿¡ ¹èÆ÷ ÆÐÅ°Áö¿¡ Æ÷ÇÔµÈ d3dx9_33.dllÀ» º¹»çÇؼ ³Ö¾îµÎ¸é ÇØ°áµË´Ï´Ù.
2. À©µµ¿ì 8 ½Ã½ºÅÛ¿¡ µ¿¿µ»ó ÄÚµ¦ CoreAVC ¼³Ä¡ ÈÄ Delphi·Î µð¹ö±×½Ã¿¡ µ¨ÆÄÀÌ°¡ ´Ù¿îµÇ´Â ¹®Á¦°¡ ÀÖ½À´Ï´Ù.
¹«·á µ¿¿µ»ó ÄÚµ¦ LAV Filters¸¦ ¼³Ä¡ ÈÄ¿¡´Â º°´Ù¸¥ ¹®Á¦°¡ ¹ß»ýÇÏÁö ¾Ê¾ÒÀ¸¸ç, °ÅÀÇ ¸ðµç Á¾·ùÀÇ µ¿¿µ»óÀ» ó¸®ÇÏ´Â ÁÁÀº ¼º´ÉÀ» º¸¿´½À´Ï´Ù.
3. ¿µ»ó À̹ÌÁö ĸÃÄ´Â ºñµð¿À ·£´õ·¯¿¡ µû¶ó ĸÃÄµÈ À̹ÌÁö°¡ ´Ù¸¨´Ï´Ù.
- VMR7, VMR9 : ¿øº» ¿µ»ó À̹ÌÁö (¿À¹ö·¹ÀÌ À̹ÌÁö Æ÷ÇÔ)
- EVR : Ãâ·Â ¿µ»ó À̹ÌÁö (¿À¹ö·¹ÀÌ À̹ÌÁö Æ÷ÇÔ)
** ¹ö±×) 1. º¼·ý ¼³Á¤Àº Sound RendererÀÎ Directsound¿Í ¿¬°áµÇ´Â Audio Decoder ÇÊÅÍ¿¡ µû¶ó µÇ±âµµ ÇÏ°í ¾ÈµÇ±âµµ ÇÕ´Ï´Ù. (ÇÁ·Î±×·¥ÀÇ ¹ö±×¶ó±â º¸´Ù´Â Audio Decoder ÇÊÅÍÀÇ Æ¯¼ºÀ¸·Î º¸ÀÔ´Ï´Ù.)
2. Delphi 7À¸·Î »ý¼ºÇÑ µ¥¸ð ÇÁ·Î±×·¥À» ½ÇÇà½Ã Àüü È¸é ¸ðµå¿¡¼ â¸ðµå·Î µ¹¾Æ¿ÔÀ» ¶§ ºñµð¿À âÀÇ Å©±â°¡ º¯ÇüµË´Ï´Ù. (Delphi 2010À¸·Î ÄÄÆÄÀÏÇÑ µ¥¸ð ÇÁ·Î±×·¥Àº Á¤»óµ¿ÀÛÇÔ)
** madVR video renderer »ç¿ë½Ã ÁÖÀÇ»çÇ×
1. ¿À¹ö·¹ÀÌ À̹ÌÁö°¡ Ãâ·Â ºñµð¿À Å©±â º¯°æ¿¡ µû¸¥ ½ºÄÉÀϸµ 󸮰¡ ¾ÈµË´Ï´Ù.
2. ¿µ»ó À̹ÌÁö ĸÃÄ°¡ ¾ÈµË´Ï´Ù.
¸¸µç »ç¶÷ : Çö½Çȯ (hyunsh@hanafos.com)
Ver 0.5.3 2015³â 4¿ù 26ÀÏ
- ÇöÀç µ¿ÀÛ ÁßÀÎ ºñµð¿À ·£´õ·¯¸¦ ¾Ë¾Æ³»´Â ÇÔ¼ö (function GetWorkingVR) Ãß°¡
- ¿µ»ó À̹ÌÁö¸¦ ĸÃÄÇÏ´Â ÇÔ¼ö (function GetCapturedImage) Ãß°¡
Ver 0.5.2 2015³â 4¿ù 23ÀÏ
- Video renderer·Î madVR¸¦ »ç¿ë½Ã Á¾È¾ºñ À¯Áö ¿É¼Ç Áö¿ø
- Video renderer ¼±Åà ¿É¼Ç(property VideoRenderer)¿¡ vrAuto(ÀÚµ¿¼±ÅÃ) Ç׸ñ Ãß°¡
(vrAuto·Î ÁöÁ¤ÇÑ °æ¿ì EVR -> VMR9 -> VMR7 -> madVRÀÇ ¼øÀ¸·Î Video renderer ÀνºÅϽº
»ý¼ºÀ» ½ÃµµÇÏ¿© »ý¼º¿¡ ¼º°øÇÑ Video renderer·Î µ¿ÀÛÇÕ´Ï´Ù.)
- ÇÔ¼ö¸í°ú ÇÔ¼öÀÇ Àμö º¯°æ :
GetVideoRect(var pRect: TRECT) -> GetVideoSize(var Width, Height: integer)
- Àç»ýÇÒ µ¿¿µ»ó ÆÄÀÏÀ» ¿Áö ¾Ê°í SetPreserveAspectRatio ÇÔ¼ö¸¦&nbs
|