2009年09月21日

ASCII.technologies 11·î¹æ¤Ë¡ÖAndroid¤ÈAR/VRµ»½Ñ¤Î²ÄǽÀ­¡×¤ò´ó¹Æ¤·¤Þ¤·¤¿

ASCII.technologies 11·î¹æ¤ÎAndroidÆý¸¤Î°ìµ­»ö¤È¤·¤Æ¡¢¡ÖAndroid¤ÈAR/VRµ»½Ñ¤Î²ÄǽÀ­¡×¤ò´ó¹Æ¤¤¤¿¤·¤Þ¤·¤¿¡£

¥¿¥¤¥È¥ë¤Î¤È¤ª¤ê¡¢AR/VR¤Î¥ß¥é¥¤¤Î²ÄǽÀ­¤Ë¤Ä¤¤¤Æ¡¢µ»½Ñ»ëÅÀ¤Ç¸ì¤ë¤È¤¤¤¦ÆâÍƤˤʤäƤª¤ê¤Þ¤¹¡£

¼Â¤Ï¡¢ËÜÆý¸¤Ç¤Ï¡¢AR¤ÎÏÃÂê¤â¼è¤ê¾å¤²¤é¤ì¤Æ¤ª¤ê¡¢¥Ó¥¸¥Í¥¹¤Î»ëÅÀ¤«¤é¤Îµ­»ö¤â¤¢¤ê¤Þ¤¹¡£¤½¤Î¤¿¤á¡¢¤³¤Á¤é¤Ï¤½¤ì¤é¤ÎÂФȤʤ븺ߤȤ·¤ÆËܵ­»ö¤ò´ó¹Æ¤¤¤¿¤·¤Þ¤·¤¿¡£
¹ç¤ï¤»¤ÆÆɤó¤Ç¤¤¤¿¤À¤¯¤ÈAR/VR¤Î¥ß¥é¥¤Áü¤¬¤Ä¤«¤á¤ë¤Î¤Ç¤Ï¤Ê¤¤¤«¤Ê¤È»×¤Ã¤Æ¤ª¤ê¤Þ¤¹¡£
¤Á¤Ê¤ß¤Ë¡¢¥ß¥é¥¤¤È¸À¤¤¤Þ¤·¤Æ¤â¡¢10ǯ°Ê¾åÀè¤Î¤è¤¦¤Ê¤³¤È¤Ï¸ì¤Ã¤Æ¤ª¤ê¤Þ¤»¤ó¡£2¡Á3ǯ¤¯¤é¤¤¤Î¡Øº£¤«¤éΩ¤Á¾å¤²¤ì¤Ð¡¢¤Á¤ç¤¦¤ÉÇȤ˾è¤ì¤ë¡Ù¥ß¥é¥¤¤Î¤ªÏäǤ¹¡£



ÆâÍƤˤĤ¤¤Æ¡¢¤Á¤ç¤Ã¤È¤À¤±½ñ¤¤¤Æ¤·¤Þ¤¤¤Þ¤¹¤È¡¢

¥¤¥ó¥Õ¥é»Ø¸þ³ÈÄ¥Ãγд¶(Infrastructure Oriented Augmented Sensibility)

¤È¤¤¤¦É®¼Ô¤¬ÄêµÁ¤·¤¿Â¤¸ì¤ÎÀ¤³¦¤È¤Ï¤É¤¦¤¤¤¦¤â¤Î¤À¤í¤¦¡©¤È¤¤¤¦ÀâÌÀ¤«¤é¤½¤ì¤¬¤â¤¿¤é¤¹¥ß¥é¥¤¤Ë¤Ä¤¤¤ÆÏä¬Å¸³«¤µ¤ì¤Æ¤¤¤­¤Þ¤¹¡£
¶ñÂÎŪ¤Ë¤Ï¡¢

ºÇ¶á¤Î¥â¥Ð¥¤¥ë½ÐÍè¤ëüËö(Android¤Ê¤É)¤Î¿Ê²½¤Ë¤è¤ê¡¢¤¤¤í¤¤¤í¤Ê¥»¥ó¥µ¡¼¥Ç¥Ð¥¤¥¹¤¬¤Ä¤¤¤Æ¤­¤¿¡£¤³¤ì¤Ë¤è¤ê¡¢¿Í´Ö¤Î¸Þ´¶¤ò¼è¤êÆþ¤ì¤ë¤³¤È¤¬½ÐÍè¤è¤¦¤Ë¤Ê¤Ã¤¿AR/VRµ»½Ñ¤Ï¡¢¿Í´Ö¤ÎÃγСÊsense¡Ë¤Î¤è¤¦¤Ê¥â¥Î¤Ø¤È¾º²Ú¤·¡¢³ÈÄ¥Ãγд¶(Augmented Sensibility)¤È¤¤¤¦Êý¸þ¤Ë¤Ê¤Ã¤Æ¤¤¤¯¤À¤í¤¦¡£¡Ê¤³¤Á¤é¤Î¥¨¥ó¥È¥ê¡¼¤ÎÉʤ⡢¤³¤Î³ÈÄ¥Ãγд¶(Augmented Sensibility)¤È¤¤¤¨¤ë¥â¥Î¡Ë ¤µ¤é¤Ë¡¢¥¯¥é¥¦¥É¤äWeb¤Î¿Ê²½¤Ë¤è¤ê¡¢»þ´Ö¤ä¶õ´Ö¤Î³µÇ°¤ò¤â¼è¤êÆþ¤ì¤¿ËÄÂç¤Ê¾ðÊó½èÍý¤¬²Äǽ¤È¤Ê¤Ã¤¿¡£¡¢¤³¤ì¤Ë¤è¤ê¡¢¾ðÊó¤Ï¥³¥ó¥Æ¥¯¥¹¥È²½¤µ¤ì¤è¤¦¤È¤·¤Æ¤¤¤ë¡£ ¤³¤ì¤é¤Î¿Ê²½¤Î·ÏÉ褫¤é¡¢AR/VR¤È¥¤¥ó¥¿¡¼¥Í¥Ã¥È¤Ï¡¢¿Í´Ö¤ÎÀ¸³è¤Ë¿¼¤¯º¬¤¶¤·¤¿¡¢¥¤¥ó¥Õ¥é»Ø¸þ³ÈÄ¥Ãγд¶(Infrastructure Oriented Augmented Sensibility)¤È¤·¤Æ¡¢¸ò¤ï¤ë¥ß¥é¥¤¤¬¤¯¤ë¤À¤í¤¦¡£

¤È¤¤¤¦´¶¤¸¤Ç¤¹¡£
¤½¤·¤Æ¡¢¤½¤ì¤ò¡¢¤Þ¤È¤á¤¿¿Þ¤¬²¼µ­¤È¤Ê¤Ã¤Æ¤ª¤ê¡¢¤³¤ì¤Î²òÀâ¤Ëµ­»ö¤¬¼ýṲ́·¤Æ¤¤¤¯´¶¤¸¤È¤Ê¤ê¤Þ¤¹¡£
¤³¤Î¾ÜºÙ¤Ï¡¢¤¼¤Ò¡¢ËÜ»ï¤Ç¤´³Îǧ¤¤¤¿¤À¤±¤ì¤Ð¤È»×¤¤¤Þ¤¹¡£

¢¨Ëܿޤϡ¢¥¢¥¹¥­¡¼¤µ¤ó¤Î¤´¸ü°Õ¤Ë¤è¤ê¡¢»öÁ°¸ø³«¤µ¤»¤Æ¤¤¤¿¤À¤­¤Þ¤·¤¿¡£



¤Þ¤¿¡¢º£²ó¤ÎÃø¼Ô̾¤Ï¡¢¡ÖSIProp¥×¥í¥¸¥§¥¯¥È ¼¹É®¥Á¡¼¥à¡×¤È¤·¤Æ¤ª¤ê¤Þ¤¹¡£
¤³¤Á¤é¤Ï¡¢»ä¤¬Âåɽ¤ò¶Ð¤á¤µ¤»¤Æ¤â¤é¤Ã¤Æ¤¤¤ëOSS³«È¯¥×¥í¥¸¥§¥¯¥È¤Ç¡¢¼Â¤Ï¡¢¸½ºß¡¢¤³¤ÎÀ¤³¦¤òÌܻؤ¹¤Ù¤¯¡¢

¡¦¡Ø¥Ç¥Ð¥¤¥¹¡Ù¤ä¡Ø¥»¥ó¥µ¡¼¡Ù¤ÎÆ°ºî¸¶Íý¤ä¤½¤ì¤é¤«¤éÆÀ¤é¤ì¤ë¥Ç¡¼¥¿¤ò½èÍý¤¹¤ë¤¿¤á¤Î¥¢¥ë¥´¥ê¥º¥à¤ÎÄ´ºº ¡¦¡Ø¥Ç¥Ð¥¤¥¹¡Ù¤ä¡Ø¥»¥ó¥µ¡¼¡Ù¤ò»È¤¤Åݤ·¤¿AR¥²¡¼¥à¡ØÍëÅÅ4¹æ¡Ù¤ÎÀ©ºî

¤Ë±Ô°Õ¼è¤êÁȤó¤Ç¤ª¤ê¤Þ¤¹¡£
(¼Â¤Ï¡¢ËÜ´ó¹Æ¤ÎÁ°È¾Éô¤Ç¤Õ¤ó¤À¤ó¤Ë½Ð¤Æ¤¯¤ë¡Ø¥Ç¥Ð¥¤¥¹¡Ù¤ä¡Ø¥»¥ó¥µ¡¼¡Ù¤ÎÏä⡢¤³¤Á¤é¤Ø¤ÎÉÛÀФǤ⤢¤Ã¤¿¤ê¤·¤Þ¤¹¡£)

¤â¤·¡¢¤³¤ÎÀ¤³¦¤Ë¶½Ì£¤ò¤â¤¿¤ì¤Þ¤·¤¿¤é¡¢¤ªÀ¼¤¬¤±¤¤¤¿¤À¤±¤ì¤Ð¤È»×¤¤¤Þ¤¹¡£¤¼¤Ò¤È¤â¡¢°ì½ï¤Ë³«È¯¤·¤¿¤¤¤È¤¤¤¦Êý¤â¡¢Ê罸¤·¤Æ¤ª¤ê¤Þ¤¹¡£

2009年09月18日

¥¯¥é¥¦¥É¼ÂÁõ¹ç½É¤Î¤ªÃΤ餻

¤³¤ì¤«¤é¤ÎP2P¤ä¥¯¥é¥¦¥É¤Ë´Ø¤¹¤ë¸¦µæ¤ËɬÍפÀ¤È»×¤ï¤ì¤ë´ðÈ×¥½¥Õ¥È¥¦¥§¥¢¤ò¤ß¤ó¤Ê¤Ç¹ç½É¤·¤Æºî¤í¤¦¤È¤¤¤¦¥×¥í¥¸¥§¥¯¥È¤Î³«ºÅ¤¬·èÄꤷ¤Þ¤·¤¿¡£

¥¤¥á¡¼¥¸¤È¤·¤Æ¤Ï¡¢²¹Àô·Ï¥¤¥Ù¥ó¥È ¡Ü Hackthon ¡Ü À®²Ìɬ¿Ü ¤È¤¤¤¦¤è¤¦¤Ê¥¤¥Ù¥ó¥È¤Ç¤¹¡£




¢£»²²Ã¾ò·ï

¤¿¤À¤¿¤À¡¢¤Ò¤¿¤¹¤é¤Ë¡¢¥¯¥é¥¦¥É·Ï¤Î¼ÂÁõ¤ò¤·¤¿¤¤¤È¤¤¤¦Íß˾¤Î¤¢¤ëÊý

¢¨ÊÙ¶¯²ñ¤Ç¤Ï¤Ê¤¯¡¢¼ÂÁõ¹ç½É¤Ç¤¹¤Î¤Ç¡¢¡ØÊÙ¶¯¤ËÍè¤Þ¤·¤¿¡ÙŪ¤Ê¥¹¥¿¥ó¥¹¤ÎÊý¤Î»²²Ã¤Ï¤´±óθ¤¯¤À¤µ¤¤¡£
¢¨³ØÀ¸¤µ¤ó¤Ï¡¢Í¥¶ø¤¤¤¿¤·¤Þ¤¹¡£Â¿¾¯¼«¿®¤¬¤Ê¤¯¤È¤â¹½¤¤¤Þ¤»¤ó¤Î¤Ç¡¢¤´Ï¢Íí¤¯¤À¤µ¤¤¡£




¢£É¬Í×µ»½Ñ
¤¢¤ë¤ÈÎɤ¤µ»½Ñ¡£
¤¿¤À¤·¡¢ºÇÄã¤Ç¤â°ì¤Ä¤Ë¤ÏÀºÄ̤·¤Æ¤¤¤Ê¤¤¤È¡¢ÉÕ¤¤¤Æ¤³¤ì¤Ê¤¤¤È¤Ï»×¤¤¤Þ¤¹¡£

¡üP2P/DHT´ØÏ¢µ»½Ñ
¡¡-Overlay Weaver¤Ë´ØÏ¢¤¹¤ëµ»½Ñ
¡¡-PIAX/VIAX¤Ë´ØÏ¢¤¹¤ëµ»½Ñ
¡üAmazonEC2´ØÏ¢µ»½Ñ
¡¡-Eucalyptus¤Ë´ØÏ¢¤¹¤ëµ»½Ñ
¡¡-Wakame¤Ë´ØÏ¢¤¹¤ëµ»½Ñ
¡üGoogle¥¯¥é¥¦¥É´ØÏ¢µ»½Ñ
¡¡-MapReduce/Hadoop/Bigtable/hBase
¡¡-GAE¤Ë´ØÏ¢¤¹¤ëµ»½Ñ




¢£³«ºÅÆüÄø
²¼µ­¤Ï¡¢Âè1²óÌܤÎͽÄê¤Ç¤¹¡£º£¸å¤â1¡Á2¥ö·î¤´¤È¤Ë¡¢¿ô²óͽÄꤷ¤Æ¤¤¤Þ¤¹¡£

¡üÆü»þ
¡¡-10·îÃæ¡Á²¼½Ü
¡¡-1¡Á2Çñ
¡ü¾ì½ê
¡¡-ÃÞÇÈ¡¢Ç®³¤¡¢¤½¤Î¤¢¤¿¤ê¡£
¡¡-̵ÎÁ¤Ç¼Ú¤ê¤é¤ì¤ë»ÜÀߤòõ¤·¤Æ¤¤¤ë
¡üιÈñ
¡¡-¼«Ê¢
¡üµ¡ºà
¡¡-¼«Ê¬¤Ç»ý¤Á¹þ¤ß




¢£ºîÀ®¸å¤Î¥½¥Õ¥È¥¦¥§¥¢¤Î°·¤¤
¡¦Ë¿¸¦µæ¼¼¤Î¥¯¥ì¥¸¥Ã¥È¤Ë¤Æ¡¢OSS¤È¤·¤Æ¸ø³«¡¦¥á¥ó¥Æ¥Ê¥ó¥¹¤µ¤»¤Æ¤¤¤¿¤À¤­¤Þ¤¹¡£
¡¡-ºîÀ®¤·¤Æ¤¤¤¿¤À¤¤¤¿¥â¥¸¥å¡¼¥ëñ°Ì¤Ê¤É¤Ç¡¢ÊÌÅÓÀ©ºî¼Ô¤Î¥¯¥ì¥¸¥Ã¥È¤¬Éղä·¤Þ¤¹¡£
¡¦¥é¥¤¥»¥ó¥¹¤Ï¡¢Apache License 2.0 or BSD




¢£³ØÀ¸¸þ¤±»Ù±çºö
¡¦SIProp°é±Ñ´ð¶â¤è¤ê¡¢Î¹Èñ¤¬Ééô¤µ¤ì¤Þ¤¹¡£




¢£¿½¤·¹þ¤ß
¡¦¥³¥á¥ó¥ÈÍó¤Ë¤Ç¤â¥á¥Ã¥»¡¼¥¸¤ò¤ª´ê¤¤¤·¤Þ¤¹¡£




¢£¸½ºß¤Î¼ç¤Ê»²²Ã¼Ô
¡¦Interop Tokyo 2009¤Ç³«ºÅ¤µ¤ì¤¿¡Ö¥¯¥é¥¦¥É¥³¥ó¥Ô¥å¡¼¥Æ¥£¥ó¥°¥³¥ó¥Ú¥Æ¥£¥·¥ç¥ó¡×´Ø·¸
¡¦P2P SIPÊÙ¶¯²ñ and SIPropÊÙ¶¯²ñ´Ø·¸¡Ê¾å¤È¤Û¤Ü°ì½ï¥¸¥ã¥ó¤È¤¤¤¦¥Ä¥Ã¥³¥ß¤Ï¼õ¤±ÉÕ¤±¤Æ¤ª¤ê¤Þ¤»¤ó¡Ë

¥¯¥é¥¦¥É¼ÂÁõ¹ç½É¤Î¤ªÃΤ餻¤Î³¤­¤òÆɤà

2009年09月14日

Academic Collaboration Program(ACP) ³«»Ï¤·¤Þ¤·¤¿

OESF¤Ë¤Æ¡¢Academic Collaboration Program ¤ò³«»Ï¤·¤Þ¤·¤¿¡£


¡üÌÜŪ


Academic Collaboration Program(°Ê²¼ACP¤È¤¹¤ë)¤Ï´ë¶È¥Ù¡¼¥¹¤Ç¼è¤êÁȤá¤Ê¤¤²ÝÂê¤Ø¤ÎÄ©Àï¡¢ºÇ¿·¥Æ¥¯¥Î¥í¥¸¡¼¤Î±þÍÑ¡¢¿·¤¿¤ÊȯÁÛ/ÆÈÁÏÀ­¤Î¤¢¤ë¥¢¥¤¥Ç¥¢¤ò»ý¤Ã¤ÆAndroid¤Ë´Ø¤ï¤ë¸¦µæ/³«È¯Åù¤òÌÜŪ¤È¤·¤¿¶µ°éµ¡´Ø¤Î³èÆ°¤ò¡¢OESF²ñ°÷´ë¶È¤È¶¨ÎÏÂÎÀ©¤òÁȤߡ¢¤½¤Î¼Â¸½¤ä¼ÂÍѲ½¸þ¤±¤Æ»Ù±ç¤ò¹Ô¤Ã¤Æ¤Þ¤¤¤ê¤Þ¤¹¡£
Android¤ÏÁ´¤Æ¤Î¥½¡¼¥¹¥³¡¼¥É¤¬¥ª¡¼¥×¥ó¥½¡¼¥¹¤È¤·¤Æ̵½þ¸ø³«¤µ¤ì¤Æ¤ª¤ê¡¢Â¿¤¯¤ÎʬÌî¤Ç¤½¤ÎÍøÍѤ¬´üÂÔ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£Âç³ØÅù¤Î¸¦µæ¼¼¤¬»ý¤Ä¥¢¥¤¥Ç¥¢¤ä¥Æ¡¼¥Þ¤ò¡¢Á´À¤³¦¤ÎOESF²ñ°÷¤È¤È¤â¤Ë¶ñ¸½²½¤·¡¢¼Ò²ñ¤Ë¿·¤¿¤Ê¤ë¥Æ¥¯¥Î¥í¥¸¤ä»Ô¾ì¤òÄ󶡤¹¤ë¤ÈƱ»þ¤Ë¡¢¼ã¤­¥½¥Õ¥È¥¦¥§¥¢¥¨¥ó¥¸¥Ë¥¢¤Î°éÀ®¤òÌܻؤ¹¿·¤¿¤Ê¤ë¼èÁȤǤ¹¡£¤³¤Î¥×¥í¥°¥é¥à¤ÏÆüËÜ¡¢ÂæÏÑ¡¢´Ú¹ñ¡¢Ãæ¹ñ¤ÇƱ»þ¤Ë¥¹¥¿¡¼¥È¤¤¤¿¤·¤Þ¤¹¡£¤Þ¤¿¡¢À®²Ì¤ÏÀ¤³¦¤Ë¹­¤¯¸ø³«¤·¡¢ÆäËÅ쥢¥¸¥¢·ÐºÑ·÷¤ÎÁȹþ¤ß¥½¥Õ¥È¥¦¥§¥¢µ»½Ñ¤ÎȯŸ¤Ë´óÍ¿¤¹¤ë¤³¤È¤òÌÜŪ¤È¤·¤Æ¤¤¤Þ¤¹¡£

¤È¤¤¤¦¤³¤È¤Ç¡¢¶µ°éµ¡´Ø¸þ¤±¤Î»Ù±ç¥×¥í¥°¥é¥à¤È¤Ê¤ê¤Þ¤¹¡£
¤³¤Á¤é¤Î¥¨¥ó¥È¥ê¡¼¤Î¤ªÏäò¡¢¶ñ¸½²½¤·¤¿¥â¥Î¤Ç¤¹¡£
¥³¥Ä¥³¥Ä¤È¿Ê¤á¤Æ¤Þ¤¤¤ê¤Þ¤·¤Æ¡¢¤³¤Î¤¿¤Ó¡¢Àµ¼°¤Ë³«»Ï¤È¤Ê¤ê¤Þ¤·¤¿¡£


»²²Ã¥á¥ê¥Ã¥È¤È¤·¤Æ¤Ï¡¢ÅöÁ³¡¢¸¦µæ¤Î¤¿¤á¤ÎÆ»¶ñ¤ä»ñ¶â¤òÆÀ¤é¤ì¤ë¤³¤È¤Î¤Û¤«¤Ë¡¢

¡ü»²²ÃÆÃŵ¡Ê¤è¤ê¡¢È´¿è¡Ë


4. OESF»²²Ã¤ÎŸ¼¨²ñ¤Ø¤Î½ÐŸ
6. OESF¼çºÅ¤Î¥«¥ó¥Õ¥¡¥ì¥ó¥¹¡¢È¯É½²ñÅù¤Ç¤Îȯɽ¡¢Êó¹ð

¤È¤¤¤Ã¤¿¡¢È¯É½¤Î¾ì¤ÎÄ󶡤â¹Í¤¨¤Æ¤ª¤ê¤Þ¤¹¡£
¸½ºß¤Þ¤Ç¤Î¥Ò¥ä¥ê¥ó¥°¤Î·ë²Ì¡¢¤Ê¤«¤Ê¤«¡¢Âг°¸þ¤±¤Ëȯɽ¤¹¤ëµ¡²ñ¤¬¾¯¤Ê¤¤¤È¤ÎÍ×˾¤ò¤¤¤¿¤À¤¤¤Æ¤ª¤ê¡¢¤³¤Î¤è¤¦¤Ê¾ì¤ÎÄ󶡤ò¹Í¤¨¤Æ¤ª¤ê¤Þ¤¹¡£




»²²ÃÎÁ¤Ï¡¢°ìÀÚ̵ÎÁ¤Ç¤¹¤Î¤Ç¡¢¤Á¤ç¤Ã¤È¡¢ÁȤ߹þ¤ß¸þ¤±¤Ë²¿¤«¤·¤Æ¤ä¤í¤¦¤«¡ª¤Ã¤Æ¤¤¤¦¸µµ¤¤Ê³ØÀ¸¤µ¤ó¤¬¤¤¤Þ¤·¤¿¤é¡¢¤¼¤Ò¤È¤â¡¢¿½¤·¹þ¤ß¤·¤Æ¤¤¤¿¤À¤±¤ì¤Ð¤È¤â¤¤¤Þ¤¹¡£
¤â¤Á¤í¤ó¡¢ÁȤ߹þ¤ß¸þ¤±¤À¤±¤Ç¤Ê¤¯¡¢¥Ï¥¤¥Ó¥¸¥ç¥óTV¸þ¤±¤Î¿·¤·¤¤UI¥Ç¥¶¥¤¥ó¤Ê¤É¤Î¥½¥Õ¥ÈÌ̤ǤÎÄó°Æ¤Ê¤É¤â¤ªÂÔ¤Á¤·¤Æ¤ª¤ê¤Þ¤¹¡£

¤ª¿½¤·¹þ¤ß¤Ï¡¢¤³¤Á¤é¤è¤ê¤ª´ê¤¤¤¤¤¿¤·¤Þ¤¹¡£

2009年09月10日

OESF Progress Conference¡¡2009 Q3 ³«ºÅ¤·¤Þ¤¹

Á᤯¤â2ÅÙÌܤȤʤëOESF Progress Conference¡¡2009 Q3¤ò³«ºÅ¤¤¤¿¤·¤Þ¤¹¡£
º£²ó¤Ï¡¢³Æ»ÙÉô¡ÊÂæÏÑ¡¢´Ú¹ñ¡¢Ãæ¹ñ¡Ë¤Ë¤è¤ë³¤³°Àª¤Îȯɽ¤ò¿¤á¤ËͽÄꤷ¤Æ¤ª¤ê¡¢³¤³°¤ÎÀ¸¤ÎAndroid¥Ó¥¸¥Í¥¹»ö¾ð¤òÆþ¼ê¤·¤Æ¤¤¤¿¤À¤¯¥Á¥ã¥ó¥¹¤È¤Ê¤Ã¤Æ¤ª¤ê¤Þ¤¹¡£
²ñ°÷°Ê³°¤ÎÊý¤Ç¤â»²²Ã²Äǽ¤Ç¤¹¤Î¤Ç¡¢Android¤Ë¤è¤ë¥Ó¥¸¥Í¥¹¤Ë¶½Ì£¤Î¤¢¤ëÊý¤Ï¡¢¤¼¤Ò¤È¤â¡¢¤´»²²Ã¤¤¤¿¤À¤±¤ì¤Ð¤È»×¤¤¤Þ¤¹¡£


¡ü³«ºÅ°§»¢

Open Embedded Software Foundation¤Ï¡¢9·îËö¤ÇÀßΩ6¤«·î¤È¤Ê¤ê¤Þ¤¹¡£³èÆ°¤ò³«»Ï¤·¤Æ¤ï¤º¤«È¾Ç¯¤Ç¤¹¤¬¡¢ÆüËܤòÃæ¿´¤Ë¡¢ÂæÏÑ¡¢´Ú¹ñ¡¢Ãæ¹ñ¤Ø¤Î»ÙÉô¤ÎŸ³«¤ò¤Ï¤¸¤á¡¢11 ·î¤Ë¤ÏÀ¤³¦¤Ç½é¤á¤Æ¤ÎÁȹþ¤ß»Ô¾ì¸þ¤±¥Ñ¥Ã¥±¡¼¥¸¤Î¥ê¥ê¡¼¥¹¤òͽÄꤹ¤ë¤Ë»ê¤Ã¤Æ¤ª¤ê¤Þ¤¹¡£¤³¤ì¤Þ¤Ç¤Î³èÆ°Êó¹ð¤½¤·¤Æº£¸å¤Î³èÆ°·×²è¡¢Å쥢¥¸¥¢³Æ»ÙÉô¤Î³èÆ°Êó¹ð¤Î¥³¥ó¥Õ¥¡¥ì¥ó¥¹¤ò³«ºÅ¤¤¤¿¤·¤Þ¤¹¡£¤Þ¤¿¡¢¥²¥¹¥È¥¹¥Ô¡¼¥«¡¼¤Ë¤è¤ëAndroid´ØÏ¢¤Îȯɽ²ñ¤â³«ºÅ¤¤¤¿¤·¤Þ¤¹¡£



¡ü¥×¥í¥°¥é¥à

Âè2Éô¡Ê²ñ°÷³°¤Ø¤â¸ø³«¡Ë
14¡§50¡¡¡§¡¡OESF¤Ç¥Ó¥¸¥Í¥¹¤ò³ÈÂç¡ÊOESF¤Î³èÆ°¤Î¤¹¤Ù¤Æ¤ò¤´¾Ò²ð¡Ë
¡¡¡¡¡¡¡¡¡¡¡¡OESF¥Ó¥¸¥Í¥¹¥Þ¥Ã¥Á¥ó¥°¥µ¡¼¥Ó¥¹¡¢¥È¥ì¡¼¥Ë¥ó¥°¥Õ¥é¥ó¥Á¥ã¥¤¥º¥×¥í¥°¥é¥à¡¢Âç³ØÅù¶µ°éµ¡´Ø¸þ¤±¥³¥é¥Ü¥ì¡¼¥·¥ç¥ó¥×¥í¥°¥é¥à¡¢¤½¤·¤Æ11·î¤Ë¸ø³«¤¹¤ëÁȹþ¤ß¸þ¤±Distributon¡Ê¥×¥í¥¸¥§¥¯¥È¥³¡¼¥É¡§BlueberryCupcake)¤ò¤´¾Ò²ð¤·¤Þ¤¹¡£
¡¡¡¡¡¡¡¡¡¡¡¡Marketing Education WG ¥³¡¼¥Ç¥£¥Í¡¼¥¿
¡¡¡¡¡¡¡¡¡¡
15¡§20¡¡¡§¡¡Sigma Designs¼Ò¤ÎAndroidÀïά¡¡SigmaDesigns¼Ò
15¡§40¡¡¡§¡¡Ä´À°Ãæ¡¡
16¡§00¡¡¡§¡¡ARM¤ÎAndroidÀïά
¡¡¡¡¡¡¡¡¡¡¡¡Android¤Îɸ½àCPU¤È¤â¤¤¤¨¤ëARM¼Ò¤ÎAndroidÀïά¤ò²òÀ⤷¤Æ¤¤¤¿¤À¤­¤Þ¤¹¡£
16¡§30¡¡¡§¡¡¥é¥¤¥È¥Ë¥ó¥°¥»¥Ã¥·¥ç¥ó
¡¡¡¡¡¡¡¡¡¡¡¡²ñ¾ì¤Ç¤Î¥Ç¥â¤ä¿·¤¿¤Ê¤ëTopics¤ò¤ªÅÁ¤¨¤·¤Þ¤¹¡£
¡¡¡¡¡¡¡¡¡¡¡¡­¡¥Á¥§¥³¶¦Ï¹ñ¤Ë¤ª¤±¤ëIT»º¶È¡¡¥Á¥§¥³¶¦Ï¹ñÂç»È´Û/¥Á¥§¥³¥¤¥ó¥Ù¥¹¥È Ondrej VotrubaÍÍ
¡¡¡¡¡¡¡¡¡¡¡¡­¢OPhone¤Ë¤è¤ë¥³¥ó¥Æ¥ó¥ÄÇÛ¿®»ö¶È¡¡Bohan-net¡¡ÄØÌîÍÍ



¡ü³«ºÅ³µÍ×

Æü»þ¡§2009ǯ9·î30Æü¡¡14¡§30¼õÉÕ³«»Ï¡¡14¡§50³«»Ï(Âè2Éô¤«¤é¤Î¾ì¹ç)
¾ì½ê¡§¸ÞÈ¿ÅÄ¡¡¤æ¤¦¤Ý¤¦¤È



¡ü¿½¤·¹þ¤ß
¤ª¿½¤·¹þ¤ß¤Ï¡¢¤³¤Á¤é¤«¤é¤ª´ê¤¤¤¤¤¿¤·¤Þ¤¹¡£
²ñ¾ì¥¹¥Ú¡¼¥¹¤ÎÅÔ¹ç¾å¡¢¿½¤·¹þ¤ß¤µ¤ì¤Ê¤¤Êý¤Ï¡¢Æþ¾ì¤ò¤ª¤³¤È¤ï¤ê¤µ¤»¤Æ¤¤¤¿¤À¤­¤Þ¤¹¡£

2009年09月05日

Android NDK¤Î¥Ç¥Ð¥Ã¥°¼êË¡

Á°²ó¤Î¥¨¥ó¥È¥ê¡¼¤Î

¡ü¹âÅ٤ʥǥХå°ÊýË¡
ÁȤ߹þ¤ß¥×¥ì¥¹Vol.16¤Ë¤è¤¯¤Þ¤È¤Þ¤Ã¤Æ¤ª¤ê¤Þ¤¹¤Î¤Ç¡¢¤³¤Á¤é¤ò»²¹Í¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£

¤ò¡¢Android NDK¡õWindows¸þ¤±¤Ë²òÀ⤷¤Æ¤¯¤ì¡¢¤È¤ÎÍ×˾¤¬¤¢¤ê¤Þ¤·¤¿¤Î¤Ç¡¢ºî¤Ã¤Æ¤ß¤Þ¤·¤¿¡£
¾ÜºÙ¤Ï¡¢¾åµ­¤ÎÁȤ߹þ¤ß¥×¥ì¥¹Vol.16¤ò³Îǧ¤·¤Æ¤¤¤¿¤À¤¯¤È¤·¤Æ¡¢¤½¤Îº¹Ê¬¤ò·ÇºÜ¤µ¤»¤Æ¤¤¤¿¤À¤­¤Þ¤¹¡£
(¤È¤Ï¸À¤Ã¤Æ¤â¡¢¤³¤Î¥¨¥ó¥È¥ê¡¼¤À¤±¤â¹½ÃۤϤǤ­¤ë¤È»×¤¤¤Þ¤¹¤¬¡¢²¿¤ò¤ä¤Ã¤Æ¤¤¤ë¤«¤Î¾ÜºÙ¤ÏËܽñ¤ò¤´³Îǧ¤¯¤À¤µ¤¤¡£¡£)



¡üAndroid.mk¤Ç¼Â¹Ô¥Õ¥¡¥¤¥ë¤òºî¤ë
¤Þ¤º¡¢¥Ç¥Ð¥Ã¥°¤¹¤ë¤¿¤á¤Ë¼Â¹Ô¥Õ¥¡¥¤¥ë¤òºî¤é¤Ê¤¯¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó¡£
shared¥é¥¤¥Ö¥é¥ê¤Î¤Þ¤Þ¤Ç¤Ï¡¢¼Â¹Ô½ÐÍè¤Þ¤»¤ó¤«¤é¤Í¡£

Android¾å¤Ç¼Â¹Ô²Äǽ¤Ê¥Õ¥¡¥¤¥ë¤Ï¡¢Android.mk¤ÇºîÀ®²Äǽ¤Ç¤¹¡£
¶ñÂÎŪ¤Ë¤Ï¡¢main´Ø¿ô¤òºîÀ®¤Î¾å¡¢Android.mkÆâ¤ò²¼µ­¤Î¤è¤¦¤ËÊѹ¹¤¹¤ë¤À¤±¤Ç¤¹¡£

include $(BUILD_SHARED_LIBRARY) ¢Í include $(BUILD_EXECUTABLE)



¡üEclipse CDT¤ò½àÈ÷¤¹¤ë
Eclipse CDT¤«¤é¡¢¥À¥¦¥ó¥í¡¼¥É¤·¤Æ¤¯¤À¤µ¤¤¡£
Android¤Î³«È¯ÍÑEclipse ¤Ë¡¢Äɲ夥󥹥ȡ¼¥ë¤·¤Æ¤âÌäÂꤢ¤ê¤Þ¤»¤ó¤¬¡¢¥×¥é¥°¥¤¥ó¤òÁý¤ä¤¹¤È¤É¤ó¤É¤ó¤ÈEclipse¤¬½Å¤¯¤Ê¤Ã¤Æ¤¤¤­¤Þ¤¹¤Î¤Ç¡¢Ê̤ËÍÑ°Õ¤¹¤ë¤Î¤â¼ê¤Ç¤¹¡£




¡üCygwin¤Î½àÈ÷¤òÀ°¤¨¤ë
Android NDK¤¬¥¤¥ó¥¹¥È¡¼¥ëºÑ¤ß¤Ç¤¢¤ì¤Ð¡¢²¼µ­¤Îºî¶È¤ò¤¹¤ë¤À¤±¤Ç¤¹¡£

¡¦C:\cygwin\bin\cygwin1.dll ¤ò C:\Windows\System32 ¤Ë¥³¥Ô¡¼¤¹¤ë
¡¦C:\cygwin\bin¤ò¡¢Windows ¤Î´Ä¶­ÊÑ¿ô PATH ¤Ë´Þ¤á¤ë




¡üDefault Launcher¤òÀßÄꤹ¤ë
²¼µ­¤ÎÄ̤ê¤Ë¥á¥Ë¥å¡¼¤òÄɤäơ¢Êѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£

Window
Preferences
Run/Debug
Launching
Default Lanchers
Æâ¤Î

C/C++ Application [Debug]
Preferred Launcher
¤ò¡¢

Standard Create Process Launcher

¤Ë¤¹¤ë




¡ü¥³¥ó¥Ñ¥¤¥ëÍÑ¥¹¥¯¥ê¥×¥È¤òÀßÄꤹ¤ë
¡¦¡Öbuild.bat¡×¤òºîÀ®¤¹¤ë
¤¿¤À¤¿¤ó¤Ë¡¢make¤·¤¿¤À¤±¤Ç¤Ï¡¢Android NDK¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤³¤È¤Ï½ÐÍè¤Þ¤»¤ó¡£Android NDK¥Ç¥£¥ì¥¯¥È¥ê¤Ë°ÜÆ°¤·¤¿¾å¤Ç¡¢make¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
¤½¤³¤Ç¡¢¤½¤ì¤ò¹Ô¤¦¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤Þ¤¹¡£
º£²ó¤Ï¡¢¡Öbuild.bat¡×¤È¤¤¤¦Ì¾Á°¤ÇºîÀ®¤·¤Þ¤¹¡£

set PROG=%1

cd [Android NDK¤Ø¤Îpath]

make APP=%PROG%




¡¦¡Öbuild.bat¡×¤òEclipse¤ËÀßÄꤹ¤ë
²¼µ­¤ÎÄ̤ê¤Ë¥á¥Ë¥å¡¼¤òÄɤäơ¢Êѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£

Project
Properties
C/C++ Build
Æâ¤Î

Builder Settings¥¿¥Ö
Build command

¤ËÆȼ«¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë¡Öbuild.bat¡×¤ò»ØÄꤹ¤ë¡£



¡Öbuild.bat¡×¤Ï¡¢°ú¿ô¤È¤·¤Æ¡¢Android.mk¤Î¥â¥¸¥å¡¼¥ë̾¤òÍ׵ᤷ¤Þ¤¹¤Î¤Ç¡¢¤½¤ì¤ò»ØÄꤷ¤Þ¤¹¡£

Behaviour¥¿¥Ö

Build on resource save(Auto Build)
Build(Incremental build)

¤Ë¡¢Android.mk¤Î¥â¥¸¥å¡¼¥ë̾¤òÆþÎϤ¹¤ë¡£
¢¨¤³¤³¤Ç¤Ï¡¢¡ÖecTest¡×¤È¤·¤Æ¤¢¤ê¤Þ¤¹¡£



¡üAndroid NDKÍѤÎInclude¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤹ¤ë
Íפϡ¢bionic¤ÎInclude¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£

Project
Properties
C/C++ General
Paths and Symbols
Æâ¤Î

Includes
¤Ë¡¢Android NDKÍѤÎInclude¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¥Ç¥£¥ì¥¯¥È¥ê¤ò¡Ö¤½¤ì¤¾¤ì¡×»ØÄꤷ¤Þ¤¹¡£
android-ndk-x.x\build\platforms\android-1.5\arch-arm\usr\include
android-ndk-x.x\build\platforms\android-1.5\common\include

¤òÄɲá£

Add to all configurations
Add to all languages
Is a workspace path
¤Ï¡¢É¬Íפ˱þ¤¸¤Æ¥Á¥§¥Ã¥¯¤·¤Þ¤¹¡£
°ÕÌ£¤¬¤ï¤«¤é¤Ê¤¤¤Ê¤é¡¢ÉÕ¤±¤Æ¤·¤Þ¤¤¤Þ¤·¤ç¤¦¡£




¡ü¼Â¹ÔÍÑ¥¹¥¯¥ê¥×¥È¤òÀßÄꤹ¤ë
¡¦¡Ölaunch.bat¡×¤òºîÀ®¤¹¤ë
Android NDK¤ÇºîÀ®¤·¤¿¼Â¹Ô¥Õ¥¡¥¤¥ë¤òAndroid¥¨¥ß¥å¥ì¡¼¥¿¤ä¼Âµ¡¤ÇÆ°ºî¤µ¤»¤ë¤Ë¤Ï¡¢¤Á¤ç¤Ã¤È¤·¤¿»Å³Ý¤±¤¬É¬ÍפǤ¹¡£
¤½¤³¤Ç¡¢¼Â¹ÔÍѤΥ¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤Þ¤¹¡£

set PROG=%1

cd [Android NDK¤Ø¤Îpath]

adb push [Android NDK¤Ø¤Îpath]\out\apps\%PROG%\android-1.5-arm\%PROG% /data
adb shell chmod 777 /data/%PROG%
adb shell /data/%PROG% "$@"
¢¨ /data ¤Ï¡¢Android¾å¤Î¥Ç¥£¥ì¥¯¥È¥ê¤È¤Ê¤ê¤Þ¤¹¡£É¬Íפ˱þ¤¸¤ÆÊѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£ ¢¨ Android¥¨¥ß¥å¥ì¡¼¥¿¤ä¼Âµ¡¤¬Àܳ¤µ¤ì¤Æ¤¤¤Ê¤¤¤È¡¢»ÈÍѽÐÍè¤Þ¤»¤ó¡£


¡¦¡Ölaunch.bat¡×¤ò»ÈÍѤ¹¤ë¤è¤¦¤Ë¡¢Eclipse¤òÀßÄꤹ¤ë
²¼µ­¤ÎÄ̤ê¤Ë¥á¥Ë¥å¡¼¤òÄɤäơ¢Êѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£

Run
External Tools
External Tools Configurations

ÁªÂò¤·¤Þ¤¹¡£

Program
¤Ë¿·µ¬Äɲä·¤Þ¤¹¡£

Æȼ«¥¹¥¯¥ê¥×¥È¡Ölaunch.bat¡×¤òÄɲä·¤Þ¤¹¡£

Arguments

¤Ë¡¢Android.mk¤Î¥â¥¸¥å¡¼¥ë̾¤òÆþÎϤ·¤Þ¤¹¡£



¡ü¥Ç¥Ð¥Ã¥°ÍÑ¥¹¥¯¥ê¥×¥È¤òÀßÄꤹ¤ë
¡¦¡Öprepare.bat¡×¤òºîÀ®¤¹¤ë
¥Ç¥Ð¥Ã¥°¤ò¹Ô¤¦¤Ë¤Ï¡¢gdbserver ¤òµ¯Æ°¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
¤½¤³¤Ç¡¢¤½¤ì¤ò¼«Æ°Åª¤Ë¹Ô¤¦¤¿¤á¤Î¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤Þ¤¹¡£

set PROG=%1

cd [Android NDK¤Ø¤Îpath]
adb push [Android NDK¤Ø¤Îpath]\out\apps\%PROG%\android-1.5-arm\%PROG% /data
adb shell chmod 777 /data/%PROG%
adb forward tcp:5039 tcp:5039
adb shell gdbserver tcp:5039 /data/%PROG% "$@"
¢¨ /data ¤Ï¡¢Android¾å¤Î¥Ç¥£¥ì¥¯¥È¥ê¤È¤Ê¤ê¤Þ¤¹¡£É¬Íפ˱þ¤¸¤ÆÊѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£ ¢¨ 5039¥Ý¡¼¥È¤Ï¡¢ÂÔ¤Á¼õ¤±¥Ý¡¼¥È¤È¤Ê¤ê¤Þ¤¹¡£É¬Íפ˱þ¤¸¤ÆÊѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£ ¢¨ Android¥¨¥ß¥å¥ì¡¼¥¿¤ä¼Âµ¡¤¬Àܳ¤µ¤ì¤Æ¤¤¤Ê¤¤¤È¡¢»ÈÍѽÐÍè¤Þ¤»¤ó¡£




¡¦¡Öprepare.bat¡×¤ò»ÈÍѤ¹¤ë¤è¤¦¤Ë¡¢Eclipse¤òÀßÄꤹ¤ë
²¼µ­¤ÎÄ̤ê¤Ë¥á¥Ë¥å¡¼¤òÄɤäơ¢Êѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£

Run
External Tools
External Tools Configurations

ÁªÂò¤·¤Þ¤¹¡£

Program
¤Ë¿·µ¬Äɲä·¤Þ¤¹¡£

Æȼ«¥¹¥¯¥ê¥×¥È¡Öprepare.bat¡×¤òÄɲä·¤Þ¤¹¡£

Arguments

¤Ë¡¢Android.mk¤Î¥â¥¸¥å¡¼¥ë̾¤òÆþÎϤ·¤Þ¤¹¡£



¡ügdbserver¤òÀßÄꤹ¤ë
Eclipse¤¬ÍøÍѤ¹¤ë¥Ç¥Ð¥Ã¥¬¤È¤·¤Æ¡¢gdbserver¤òÍøÍѤ¹¤ë¤¿¤á¤ÎÀßÄê¤ò¹Ô¤¤¤Þ¤¹¡£
¥¿¥Ö¤¬²¿¸Ä¤«¥Í¥¹¥È¤·¤Æ¤ª¤ê¤Þ¤¹¤Î¤Ç¡¢¤ï¤«¤ê¤Ë¤¯¤¤¤«¤â¤·¤ì¤Þ¤»¤ó¤¬¡¢¤¬¤ó¤Ð¤Ã¤ÆÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£




¡¦main¤ÎÀßÄê

Run
Run Configurations

¤òÁªÂò¤·¤Þ¤¹¡£

C/C++ Application
¤Ë¿·µ¬Äɲä·¤Þ¤¹¡£

Main¥¿¥Ö

C/C++ Application
¤Ë¡Ö[Android NDK¤Ø¤Îpath]\out\apps\[Android NDK¥â¥¸¥å¡¼¥ë̾]\android-1.5-arm\[Android NDK¥â¥¸¥å¡¼¥ë̾]¡×¤òÄɲä·¤Þ¤¹¡£




¡¦Debugger¤ÎÀßÄê

Debugger¥¿¥Ö

Debugger
¤ÎÀßÄê¤ò

gdbserver Debugger
¤ËÊѹ¹¤·¤Þ¤¹¡£
Dubugger Options
¤Î GDB debugger
¤Ë¡Ö[Android NDK¤Ø¤Îpath]\build\prebuilt\windows\arm-eabi-4.2.1\bin\arm-eabi-gdb.exe¡×¤òÄɲä·¤Þ¤¹¡£




¡¦Shared Libraries¤ÎÀßÄê

Shared Libraries¥¿¥Ö

¤Ë¡Ö[Android NDK¤Ø¤Îpath]\out\apps\[Android NDK¥â¥¸¥å¡¼¥ë̾]\android-1.5-arm¡×¤òÄɲä·¤Þ¤¹¡£




¡¦Connection¤ÎÀßÄê

Connection¥¿¥Ö

Type
¤ÎÀßÄê¤ò
TCP
¤ËÊѹ¹¤·¤Þ¤¹¡£

Port number
¤ÎÀßÄê¤ò 5039
¤ËÊѹ¹¤·¤Þ¤¹¡£




¡ü¥Ç¥Ð¥Ã¥°ÍÑ¥¹¥¯¥ê¥×¥È¤òEclise¤Ç¼Â¹Ô²Äǽ¤Ê¤è¤¦¤ËÀßÄꤹ¤ë
¤¤¤Þ¤Þ¤Çºî¤Ã¤Æ¤­¤¿³Æ¼ï¼Â¹ÔÍÑ¥¹¥¯¥ê¥×¥È¤òEclipse¤«¤é¼Â¹Ô½ÐÍè¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£




¡¦Eclipse¤Î¥¹¥¯¥ê¥×¥ÈÀßÄê²èÌ̤ò³«¤¯


Run

Run Configurations

ÁªÂò¤·¤Þ¤¹¡£



Launch Group

¤Ë¡¢¸å½Ò¤¹¤ë2¤Ä¤Î¥â¥Î¤ò¿·µ¬Äɲä·¤Þ¤¹¡£



¡¦¼Â¹ÔÍÑLaunch Group¤òÅÐÏ¿¤¹¤ë

[EclipseÍѼ¹ÔÍÑ¥¹¥¯¥ê¥×¥È] mode:run
¤ò¿·µ¬Äɲä·¤Þ¤¹¡£



¡¦¥Ç¥Ð¥Ã¥°ÍÑLaunch Group¤òÅÐÏ¿¤¹¤ë

[EclipseÍѥǥХå°ÍÑ¥¹¥¯¥ê¥×¥È] mode:run
[EclipseÍÑGDBÀßÄê] mode:debug
¤ò¿·µ¬Äɲä·¤Þ¤¹¡£





¡üµ¯Æ°
¤³¤ì¤Ç¡¢¤¢¤È¤Ï¡¢Android¤Î¥¨¥ß¥å¥ì¡¼¥¿¤Ê¤ê¡¢¼Âµ¡¤Ê¤ê¤òµ¯Æ°¤·¤Æ¡¢¼Â¹Ô¤¹¤ì¤ÐOK¤Ç¤¹¡£
²¼µ­¤Î¤è¤¦¤Ë¡¢main´Ø¿ô¤ÇÄä»ß¤·¤¿¾õÂ֤ǵ¯Æ°¤·¤Þ¤¹¡£


2009年09月04日

Android NDK¤Î°ìÊâ¿Ê¤ó¤À»È¤¤Êý

¤³¤Á¤é¤Î¥¨¥ó¥È¥ê¡¼¤È¤³¤Á¤é¤Î¥¨¥ó¥È¥ê¡¼¤ÇÆÀ¤é¤ì¤¿¡¢Ëܵ¤¤ÇAndroid NDK¤ò»È¤¦¾ì¹ç¤Ë¡¢°ú¤Ã¤«¤«¤ë¤Ç¤¢¤í¤¦¥Ý¥¤¥ó¥È¤ò°ìµó¸ø³«¤Ç¤¹¡£

´ðËÜ»ö¹à¤Ë´Ø¤·¤Æ¤Ï¡¢¤³¤Á¤é¤ÎÌÚÆ¤ó¤Ë¤è¤ë²òÀâ¤ò»²¹Í¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£



¢£Android NDKÍÑ make fileÊÔ
Android NDK¤Îmake file¤È¤¤¤¦¤Ù¤­¡¢

Android.mk

¤Ë¤Ä¤¤¤Æ¤Î¥Æ¥¯¥Ë¥Ã¥¯¾Ò²ðÊԤǤ¹¡£
¥Õ¥¡¥¤¥ë¼«ÂΤϡ¢²¼µ­¤Ë¤¢¤ê¤Þ¤¹¡£

/android-ndk-x.x/sources/[¥×¥í¥¸¥§¥¯¥È̾]/




¡üinclude¥Õ¥¡¥¤¥ë¤ÎÅÐÏ¿
¡¦¼«Ê¬¤¬¤¤¤ë¥Ç¥£¥ì¥¯¥È¥ê¤òÊÑ¿ô¤ËÆþ¤ì¤ë
²¼µ­¤Î¤è¤¦¤Ë¤·¤Æ¡¢$(LOCAL_PATH)¤Ë¤¤¤Þ¤¤¤ë¥Ç¥£¥ì¥¯¥È¥ê¤¬ÅÐÏ¿¤·¤Þ¤¹¡£

LOCAL_PATH:= $(call my-dir)


¡¦include¥Õ¥¡¥¤¥ë¤ÎÅÐÏ¿
$(LOCAL_PATH)¤ò´ð½à¤Ë¡¢¡Ö../¡×¤Ê¤É¤ò¶î»È¤·¤Æ¡¢ÌÜŪ¤Îinclude¥Õ¥¡¥¤¥ë¤Î¤¢¤ë¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤷ¤Þ¤¹¡£
¤¿¤À¤·¡¢Android NDK¤«¤é¤Ï¡¢LOCAL_C_INCLUDES¤¬¸Æ¤Ó½Ð¤»¤Ê¤¤¤è¤¦¤Ê¤Î¤Ç¡¢²¼µ­¤Î¤è¤¦¤Ê¾®ºÙ¹©¤ò¤·¤Þ¤¹¡£

LOCAL_C_INCLUDES := $(LOCAL_PATH)/cv/src $(LOCAL_PATH)/cv/include
LOCAL_CFLAGS += $(LOCAL_C_INCLUDES:%=-I%)




¡üld¤ÎÅÐÏ¿
¸½ºß¤ÎAndroid NDK¤Ç¤Ï¡¢¥Ð¥°¤¬¤¢¤ë¤è¤¦¤Ç¡¢Android.mk¤Ë¤ª¤¤¤Æ²¼µ­¤Î¥é¥¤¥Ö¥é¥ê¤ò¥í¡¼¥É¤·¤Æ¤ª¤«¤Ê¤¤¤È¥¨¥é¡¼¤È¤Ê¤ê¤Þ¤¹¡£

LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -ldl




¡ü³¬ÁؤĤ­¥Ç¥£¥ì¥¯¥È¥ê¤Î¥³¥ó¥Ñ¥¤¥ë
¡Öinclude¥Õ¥¡¥¤¥ë¤ÎÅÐÏ¿¡×¤È´ðËÜŪ¤Ë¤Ï¡¢Æ±¤¸¤Ç¤¹¡£
$(LOCAL_PATH)¤ò´ð½à¤Ë¡¢¡Ö../¡×¤Ê¤É¤ò¶î»È¤·¤Æ¡¢ÌÜŪ¤Î¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£

LOCAL_SRC_FILES := cxcore/src/WLNonFileByteStream.cpp cv/src/cvjni.cpp




¡üÊ£¿ô¥é¥¤¥Ö¥é¥ê¤ÎÅý¹ç
static¥é¥¤¥Ö¥é¥ê¤Ç¤¢¤ì¤Ð¡¢¤¤¤¯¤Ä¤Ç¤âÄɲòÄǽ¤Ç¤¹¡£


¡¦Application.mk ¤Î¥â¥¸¥å¡¼¥ë¤Ø¤ÎÊ£¿ôÅÐÏ¿
/android-ndk-x.x/apps/[¥×¥í¥¸¥§¥¯¥È̾]/ ¤Ë¤¢¤ë¡¢Application.mk ¤Î APP_MODULES ¤ËÅý¹ç¤·¤¿¤¤Ê¬¤À¤±¡¢¥â¥¸¥å¡¼¥ë̾¤òÎóµó¤·¤Þ¤¹¡£
¥â¥¸¥å¡¼¥ë̾¤È¤Ï¡¢Android.mk¤Ç¡ÖLOCAL_MODULE := opencv¡×¤ÈÀë¸À¤·¤Æ¤¤¤ë¥â¥Î¤Ç¤¹¡£

APP_MODULES := cxcore cv cvaux cvml cvhighgui opencv


¡¦static¥é¥¤¥Ö¥é¥ê¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë
static¥é¥¤¥Ö¥é¥ê¤ò¥½¡¼¥¹¤«¤éƱ»þ¤ËºîÀ®¤·¤¿¾ì¹ç¤Ï¡¢¡ÖAndroid.mk¡×Æâ¤Ç¡Öinclude $(BUILD_STATIC_LIBRARY)¡×¤ÈÀë¸À¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢ºîÀ®²Äǽ¤Ç¤¹¡£
¢¨¤â¤Á¤í¤ó¡¢Åý¹ç¤À¤±¤Ç¤¢¤ì¤Ð¡¢ºîÀ®ºÑ¤ß¤Î¥â¥Î¤Ç¤âOK¤Ç¤¹¡£

LOCAL_MODULE := cxcore
LOCAL_SRC_FILES := cxcore/src/cxalloc.cpp cxcore/src/cxarithm.cpp

include $(BUILD_STATIC_LIBRARY)

¡¦½ÐÎÏÀè out
¾åµ­¤Î¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¤ästatic¥é¥¤¥Ö¥é¥ê¤Ï¡¢²¼µ­¤Î½ÐÎϤµ¤ì¤Þ¤¹¡£

/android-ndk-x.x/out/apps/[¥×¥í¥¸¥§¥¯¥È̾]/


¡¦static¥é¥¤¥Ö¥é¥ê¤ÎÅý¹ç
¡ÖLOCAL_STATIC_LIBRARIES¡×¤Ë¡¢¡Öinclude $(BUILD_STATIC_LIBRARY)¡×¤·¤Æºî¤Ã¤¿static¥é¥¤¥Ö¥é¥ê¤Î¥â¥¸¥å¡¼¥ë̾¤òÅÐÏ¿¤·¤¿¤À¤±¤Ç¤Ï¡¢static¥é¥¤¥Ö¥é¥êÆ⤫¤é¾¤Îstatic¥é¥¤¥Ö¥é¥ê¤ò¸Æ¤Ö¥³¡¼¥É¤¬¤¢¤ë¾ì¹ç¡¢¥¨¥é¡¼¤È¤Ê¤Ã¤Æ¤·¤Þ¤¤¤Þ¤¹¡£
¤½¤³¤Ç¡¢¡ÖLOCAL_LDLIBS¡×¤Ë¡¢¡Ö½ÐÎÏÀè out¡×¤Ê¤É¤ò»²¹Í¤ËɬÍפÊstatic¥é¥¤¥Ö¥é¥ê¤òÅÐÏ¿¤·¤Æ¤¯¤À¤µ¤¤¡£

LOCAL_MODULE := opencv
LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -ldl -llog -L$(LOCAL_PATH)/../../out/apps/opencv/android-1.5-arm/ -lcxcore -lcv -lcvaux

LOCAL_SRC_FILES := cvjni.cpp

LOCAL_STATIC_LIBRARIES := cxcore cv cvaux cvml cvhighgui

include $(BUILD_SHARED_LIBRARY)
¢¨¥ê¥ó¥¯¤¹¤ë¥é¥¤¥Ö¥é¥ê¤Î¥Ø¥Ã¥À¥Õ¥¡¥¤¥ë¤òinclude¤¹¤ë¤³¤È¤â˺¤ì¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤·¤ç¤¦¡£




¢£Android NDK ³«È¯ÊÔ
¡üextern "C"
C++¤Èº®¤¼¤ë¤Ê¤é¡¢JNIÍѤδؿô¤ËÂФ·¤Æ¤Ï¡¢¡Öextern "C"¡×¤¬É¬ÍפǤ¹¡£
¤½¤Î¤¿¤á¡¢¥×¥í¥È¥¿¥¤¥×Àë¸À¤Ç²¼µ­¤Î¤è¤¦¤Ë¤¹¤ë¤ÈÎɤ¤¤è¤¦¤Ç¤¹¡£

#ifdef __cplusplus
extern "C" {
#endif

JNIEXPORT
jbooleanArray
JNICALL
Java_org_siprop_opencv_OpenCV_findContours(JNIEnv* env, jobject thiz, jintArray photo_data, jint width, jint height);

#ifdef __cplusplus
}
#endif




¡ü¥Õ¥¡¥¤¥ë¤ÎÆɤ߽ñ¤­
Android NDK¡ÊC¸À¸ì¡Ë¦¤ÈAndroid¦¤Ç¥Õ¥¡¥¤¥ë¤ò¶¦Í­¤¹¤ë¤Ë¤Ï¡¢²¼µ­¤Î¥Ç¥£¥ì¥¯¥È¥ê¤òÍøÍѤ¹¤ë¤Î¤¬¤è¤¤¤è¤¦¤Ç¤¹¡£
¤³¤³¤Ë¤¢¤ë¤â¤Î¤Ï¡¢FILE·Ï´Ø¿ô¤ÇÆɤ߽ñ¤­²Äǽ¤È¤Ê¤ê¤Þ¤¹¡£

/data/data/[¥Ñ¥Ã¥±¡¼¥¸Ì¾]/files/

¡Ö/tmp¡×¤Ê¤É¤â»È¤¨¤Þ¤¹¤¬¡¢¤³¤³¤ò»È¤¦¤ÈAndroid¦¤ÎContext#openFileOutput(String)¤ÈÏ¢·È¤·¤ä¤¹¤¤¤Î¤Ç¡¢¤³¤³¤ò»È¤¦¤³¤È¤ò¤ª¾©¤á¤·¤Þ¤¹¡£




¡ü¹âÅ٤ʥǥХå°ÊýË¡
ÁȤ߹þ¤ß¥×¥ì¥¹Vol.16¤Ë¤è¤¯¤Þ¤È¤Þ¤Ã¤Æ¤ª¤ê¤Þ¤¹¤Î¤Ç¡¢¤³¤Á¤é¤ò»²¹Í¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£



¢£JNIÊÔ
´ðËÜŪ¤Ë¤Ï¡¢JNI¤Î»È¤¤Êý¤Ç¤¹¡£
¤½¤³¤ÎÃæ¤Ç¡¢AndroidÏ¢·È¤È¤·¤Æ°ú¤Ã¤«¤«¤ê¤½¤¦¤ÊÉôʬ¤À¤±¥Ô¥Ã¥¯¥¢¥Ã¥×¤·¤Æµ­½Ò¤·¤Þ¤¹¡£



¡ü·¿

C¸À¸ì¾å¤Î·¿¡¡¡¡¡¡unsigned char[]
JNI¾å¤Î·¿¡¡¡¡¡¡¡¡¡¡jbooleanArray
Java¾å¤Î·¿¡¡¡¡¡¡¡¡byte[]

¤È¡¢C¸À¸ì¡¢JNI¡¢Java¤ÎÁØÁ´Éô·¿Ì¾¤¬°ã¤¦¥Ñ¥¿¡¼¥ó¤¬Â¸ºß¤·¤Þ¤¹¡£
¤½¤Î¤¿¤á¡¢¥³¡¼¥ÉŪ¤Ë¤Ï²¼µ­¤Î¤è¤¦¤Ê´¶¤¸¤È¤Ê¤ê¤Þ¤¹¡£ÊÖ¤êÃͤʤɤ¬C¸À¸ì¦¤ÈJava¦¤ÇÊѲ½¤·¤Æ¤¤¤ë¤Î¤¬¤ï¤«¤ë¤«¤È»×¤¤¤Þ¤¹¡£

¡¦C¸À¸ì¦
JNIEXPORT
jbooleanArray
JNICALL
Java_org_siprop_opencv_OpenCV_findContours(JNIEnv* env, jobject thiz)

¡¡¡¡unsigned char ucharArray[128];
¡¡¡¡jbooleanArray res_array = env->NewBooleanArray(128);
¡¡¡¡env->SetBooleanArrayRegion(res_array, 0, 128, (jboolean*)ucharArray);

¡¡¡¡return res_array;
}

¡¦Java¦
¡¡¡¡public native byte[] findContours();



¤Á¤Ê¤ß¤Ë¡¢jni.h¤Ç¤Ï¡¢²¼µ­¤Î¤è¤¦¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

#ifdef HAVE_INTTYPES_H
# include /* C99 */
typedef uint8_t jboolean; /* unsigned 8 bits */
typedef int8_t jbyte; /* signed 8 bits */
typedef uint16_t jchar; /* unsigned 16 bits */
typedef int16_t jshort; /* signed 16 bits */
typedef int32_t jint; /* signed 32 bits */
typedef int64_t jlong; /* signed 64 bits */
typedef float jfloat; /* 32-bit IEEE 754 */
typedef double jdouble; /* 64-bit IEEE 754 */
#else
typedef unsigned char jboolean; /* unsigned 8 bits */
typedef signed char jbyte; /* signed 8 bits */
typedef unsigned short jchar; /* unsigned 16 bits */
typedef short jshort; /* signed 16 bits */
typedef int jint; /* signed 32 bits */
typedef long long jlong; /* signed 64 bits */
typedef float jfloat; /* 32-bit IEEE 754 */
typedef double jdouble; /* 64-bit IEEE 754 */
#endif

2009年09月03日

Âè½½»Í²óP2P SIPÊÙ¶¯²ñ¤Î¹ðÃÎ

Âè½½»Í²óP2P SIPÊÙ¶¯²ñ¤Î¡¢¹ðÃΤǤ¹¡£
º£²ó¤Ï¡¢·ì¤Î±«¤¬¹ß¤ê¤½¤¦¤Ê°­´¨¤Ç¤¹¡£¡ä¡ã

*°ÆÆâ
-ÆüÄø
--9·î13Æü(Æü)
-»þ´Ö
--14:00¡Á
-»²²ÃÈñ
--¤Ê¤·
-º©¿Æ²ñ
--¤¢¤ê
-²ñ¾ì
--Å칩Âç À¾7¹æ´Û
---info ¤¢¤Ã¤È¤Þ¡¼¤¯ siprop.org
---¤Ë¤ªÌ䤤¹ç¤ï¤»¤¯¤À¤µ¤¤¡£

*¥×¥í¥°¥é¥à
-ñ屫¤µ¤ó¤Ë¤è¤ë¡ØOverlay Weaver¡© ¤Ü¤Ã¤³¤Ü¤Ã¤³¤Ë¤·¤Æ¤ä¤ó¤è¡Ù
--¥Ë¥³¥Ë¥³Æ°²è¤ÎP2P¤Ë¤è¤ë¡¢¥­¥ã¥Ã¥·¥å¶¦Í­¥½¥Õ¥È¤Ç¤¢¤ëgenkidama¤ÇÍøÍѤµ¤ì¤Æ¤¤¤ëOW(Overlay Weaver)¤Ë¾ÇÅÀ¤òÅö¤Æ¤Æ¡¢¼ÂºÝ¤ËÍøÍѤ·¤Æ¤ß¤¿¥Î¥¦¥Ï¥¦¤Ê¤É¤ò¡Ø³«È¯¼Ô¤Î¼óÆ£ÀèÀ¸¤ÎÁ°¡Ù¤Ç²òÀ⤷¤Æ¤¤¤¿¤À¤­¤Þ¤¹¡£
-º´Æ£¤µ¤ó¤Ë¤è¤ë¡ÖCEDEC¤Î¤Á¤ç¤Ã¤È¤¤¤¤Ïá×
--BitTorrent¤Î±¿ÍÑ»öÎã¾Ò²ð¤Ç¤¹¡£

2009年09月02日

OpenCV Ver.1.1 For Android NDK

OpenCV Ver.1.1 ¤ò¡¢¤È¤ê¤¢¤¨¤º¡¢ Android NDK¤ÇÆ°¤¯¤è¤¦¤Ë¤·¤Æ¤ß¤Þ¤·¤¿¡£
ËÜÅö¤Ë¤È¤ê¤¢¤¨¤º¤Ç¡¢Á´Á³¡¢¥Æ¥¹¥È¤·¤Æ¤¤¤Þ¤»¤ó¡£¿ÍÃì¤Ë¤Ê¤ê¤¿¤¤Êý¤É¤¦¤¾¡£


¡üÈóÂбþ¥é¥¤¥Ö¥é¥ê
¡¡-3¼¡¸µ¥È¥é¥Ã¥­¥ó¥°
¡¡-K¶á˵ˡ

C++ɸ½à¥é¥¤¥Ö¥é¥êÉÔ­¤Ë¤è¤ê¡¢ºï½ü¤·¤Þ¤·¤¿¡£
¤¢¤Þ¤ê¡¢»ÈÍѤ·¤Ê¤¤¤È»×¤ï¤ì¤Þ¤·¤¿¤Î¤Ç¡£




¡üÆȼ«¥é¥¤¥Ö¥é¥ê
¡¡-show·Ï(ɽ¼¨·Ï)
¡¡-¥­¥ã¥×¥Á¥ã·Ï

UI¤Þ¤ï¤ê¤¬Â礭¤¯°ã¤¦¤¿¤á¡¢AndroidÆȼ«¤Î¼ÂÁõ¤È¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£




¡ü¼ÂÁõJNI
JNI¤ÏÁ´¤¯ÍÑ°Õ¤·¤Æ¤¤¤Þ¤»¤ó¡£
Í£°ì¤¢¤ë¤â¤Î¤Ï¡¢¡ÖOpenCV ¥×¥í¥°¥é¥ß¥ó¥°¥Ö¥Ã¥¯ Âè2ÈÇ OpenCV 1.1Âбþ¡×¤Ë½Ð¤Æ¤¯¤ëÎسԸ¡½Ð¤Î¥µ¥ó¥×¥ë¥¢¥×¥ê¤Î¤ß¤Ç¤¹¡£
¤½¤ì°Ê³°¤Ï¡¢¼«Ê¬¤ÇJNI¤ò½ñ¤¯¤«¡¢Android NDKÁؤǼÂÁõ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£

¤Ç¤¹¤¬¡¢OpenCV¤Ï´ðËÜŪ¤Ë¤Ï¡¢¤³¤Î·Á¤Ç¤¢¤Þ¤êÌäÂ꤬¤Ê¤¤¤È¹Í¤¨¤Æ¤¤¤Þ¤¹¡£
OpenCV¤Ï¡¢¥é¥¤¥Ö¥é¥êÀ­¤¬¶¯¤¤¤¿¤á¡¢ÆÈΩ¤·¤Æ¤¤¤ë¤¬ÁȤ߹ç¤ï¤»¤ë¤³¤È¤Ë¤è¤ê°ÒÎϤòÁý¤¹´Ø¿ô¤¬Â¿¤¤¤¿¤á¤Ç¤¹¡£
¤½¤Î¤¿¤á¡¢²¼¼ê¤ËJNI²½¤·¤Æ¡¢ºÙ¤«¤¤Ã±°Ì¤ÇJava¢«¢ªC´Ö¤ò¹Ô¤Ã¤¿¤êÍ褿¤ê¤¹¤ë¤è¤ê¡Ê¤·¤«¤â¡¢¤¿¤¤¤Æ¤¤¤Î¾ì¹ç¤Ï¡¢µðÂç¤Ê²èÁü¥Ç¡¼¥¿¤â¤ä¤ê¼è¤ê¤¹¤ëɬÍפ¬¤¢¤ê¡Ë¡¢Android NDKÁؤʤéAndroid NDKÁؤǼ¸½¤·¤¿¤¤µ¡Ç½¤ò¼ÂÁõ¤·¤Æ¤·¤Þ¤¦Êý¤¬¡¢¤è¤¤¤È»×¤ï¤ì¤ë¤«¤é¤Ç¤¹¡£
¸½¤Ë¡¢ÎسԸ¡½Ð¤Î¥µ¥ó¥×¥ë¥¢¥×¥ê¤Ç¤â¡¢6¸Ä°Ê¾å¤Î´Ø¿ô¤òÍøÍѤ·¤Æ¼Â¸½¤µ¤ì¤Æ¤ª¤ê¡¢Ã±ÂΤδؿô¤È¤·¤Æ¤³¤Î¤è¤¦¤Êµ¡Ç½¤¬Ä󶡤µ¤ì¤Æ¤¤¤ë¤ï¤±¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£

¤É¤¦¤·¤Æ¤âɬÍפʾì¹ç¤Ï¡¢Processing¸þ¤±¤ÎJNI¼ÂÁõ¤¬¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢¤½¤ì¤òÍøÍѤ¹¤ë¤Î¤¬¤è¤¤¤È»×¤ï¤ì¤Þ¤¹¡£




¡ü¥À¥¦¥ó¥í¡¼¥É
¡¡-OpenCVForAndroidNDK-0.1-src.zip

¥½¡¼¥¹°ì¼°¤Ç¤¹¡£BSD¥é¥¤¥»¥ó¥¹¤Ë¤·¤Æ¤¤¤Þ¤¹¡£




¡ü¥µ¥ó¥¯¥¹
¡¡-Puppy¥Á¡¼¥à

¤Ë¡¢¤ª¼êÅÁ¤¤¤¤¤¿¤À¤­¤Þ¤·¤¿¡£¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤·¤¿¡ª¡ä¡ã

Creative Commons License
This weblog is licensed under a Creative Commons License.