²©Ö÷×ÊÁÏ

ÁôÑÔ¶ÌÏûÏ¢ ¼ÓΪºÃÓÑ ÊÕ²Ø

Óû§ID£º  4088
êdzƣº  darx

±êÌâ

ÎÒµÄÐÂÕ¾¿ªÍ¨
www.zhaoxiaoshuo.com
»¶Ó­´ó¼ÒÀ´¿´

ÈÕÀú

2008 - 11
ÈÕ Ò» ¶þ Èý ËÄ Îå Áù
      1
2345678
9101112131415
16171819202122
23242526272829
30      
«Ô» 2008 - 11 «Äê»

ÈÕÖ¾·ÖÀà

×îÐÂÆÀÂÛ

ÈÕÖ¾ÎÄÕÂÁбí

2006Äê09ÔÂ20ÈÕ 10:27:10

ÕÒÐ¡ËµÍø¿ªÍ¨

ÕÒÐ¡ËµÍøÊÇÒ»¸öȫеÄÖÐÎÄÍøÂçС˵ËÑË÷ÒýÇæ¡£
ÔÚÕâÀïÄ㽫ºÜ·½±ãµÄÕÒµ½ÄãÕýÔÚ¿´µÄС˵µÄ×îÐÂÕ½ڡ£

»¶Ó­´ó¼ÒÀ´·ÃÎÊ

ÍøÖ·£º ÕÒС˵

Àà±ð£º ÎÞ·ÖÀà |  ÆÀÂÛ(2) |  ä¯ÀÀ(10982) |  ÊÕ²Ø
2006Äê01ÔÂ21ÈÕ 04:27:46

ÔõÑùµ÷½ÌÄãµÄÁíÒ»°ë¡ª¡ª×Ï´¨Ö®»îѧ»îÓÃÖ®ÄÐÈËÆª

¿´ÁËÐìÁÖСÃõÄÃîÎÄ£¬È̲»×¡Òå·ßÌîÑ꣬ΪÎÒÃÇÕâЩÒѾ­×ßÈëΧ³Ç»ò½«Òª½ø³ÇµÄÄÐÈËÃǸе½±¯°§Ñ½¡£¾Í½èËýÃèÊöµÄ°¸Àý£¬¼òµ¥µÄ·ÖÎö£¬¹·Î²Ðøõõ£¬ËµµãÌå»á¡£

1¡¢°×´¨µÄ³å·æÁî
°¸Àý£º×Ï´¨ÐãÒ»Á³µÄ¾ªÆæ£º¡°ÎÒÏÂÃüÁîÈÃÄãÃǽø¹¥£¿ÓÐÕâ»ØÊÂÂð£¿Ã»Óаɣ¬ÕâÊǰ׸±Æì±¾Äã×Ô¼ºÏµÄÃüÁî°É£¿¡± °×´¨£º¡°´óÈË£¬Äúµ±Ê±²»ÊÇ˵¡­¡­¡±×Ï´¨Ð㣺¡°Å¶£¬µ±Ê±ÄãÀ´ÇëʾÎÒ£¬Äã˵ÂÞ½ÜÏëÈ¥½ø¹¥£¬ÎÒ˵˭°®È¥Ë­È¥¡­¡­ÊÇÕâÑùµÄ°É£¿
£­£­£­£­£­£­£­£­
»îѧ»îÓãº×÷ΪÄÐÈË£¬¹Ø¼üµÄÒ»¸ö×ÖÔÚÓÚÎÈ£¬²»ÔÚÓÚ¹û¶Ï£¬¼´Ê¹ÒÑÓоö²ß£¬Ò²²»ÒªÖ±½Ó˵³öÄãµÄ¾ö¶¨£¬×îºÃÓÉËýµÄ¿ÚÖÐ˵³öÀ´£¬ÒªÏóÐãÒ»Ñù°Ñ°×´¨ÍùÄãµÄÏë·¨ÀïÒýµ¼£¬ÕâÑù²Å¿ÉÒÔÈÃËýÓÐÒ»ÖÖµ±¼Ò×÷Ö÷˵ÁËËãµÄ¸Ð¾õ£¬¿ÉÒÔ¼õÉÙ²»ÉÙ¾À·×¡£Èç¹û¾ö²ß¶ÔÁË£¬¹¦ÀÍ×ÔÈ»ÉÙ²»ÁË£¬ÒòΪÊÇÄãÅİåµÄ£¬´íÁË£¬»¹ÓÐÁ˽ÌѵËýµÄ°Ñ±ú£¬ÒÔºóËý¾ÍµÃ¸ü×ðÖØÄãµÄÒâ¼û¡£ÈÕ×Ó³¤ÁË£¬Ëý¾Íϰ¹ßÁ˶ÔÄã×÷¾ö²ßµÄÒÀ¿¿£¬»¹Âú×ãÁËËýÔÚ¼ÒÀïµÄÐéÈÙ£¬¸üÓÐÖúÓÚµ÷½âÆÅϱ¹ØÏµ£¬Ëý×ÔÈ»¸üÀë²»¿ªÄ㡣ûÓÐÄãµÄ¾ö²ß½¨ÒéËý¾ÍʲôҲ¸É²»ÁË£¡

2¡¢ÄþµÄÇåɨ¹¤×÷
°¸Àý£º¡°Õâ¸ö·¿¼äÎÒ´Ó²»ÈñðÈ˽øÀ´£¬Ã¿¸öÐÇÆÚÎÒ×Ô¼º´òɨһ´Î£¬È»ºóÔÙ°´Ô­Ñù×ӰѶ«Î÷°Ú»ØÈ¥¡£¡±×Ï´¨ÄþÇÌÆð±Ç×Ó£¬Ëµ²»³öµÄÇÎÀö¶¯ÈË£¬¡°ÄãÄÇË«³ôÇòЬÎÒÒѾ­°ÚµÃÅÂÁË£¬Ã¿´Î¶¯ÍêËüÎÒÏ´Æß°Ë´ÎÊÖ£¬»¹Ï´²»µôÊÖÉϵÄζµÀ£¡¡±ª¥×Ï´¨Äþ˵µÃºÜÇáËÉ£¬×Ï´¨ÐãÈ´ÐÄÍ·Ò»Õó³éÍ´£¬´Ë°ãÉîÇéÒªÔõÑù²ÅÄܱ¨´ð¡­¡­
£­£­£­£­£­£­£­£­£­£­£­
·´Ãæ½Ì²Ä£º×÷ΪÄÐÈË£¬µ±È»¿ÉÒÔ³ÖÖ®ÒÔºãµÄÔÚ´°Íâð´óÓê³ÕÇéµÈ´ýÉϼ¸ÌìÓøÐ𻻸ж¯£¬ÈçͬÄþÒ»ÑùÖ´ÖøµÄ£¬µ«ÄÄÓÐÄÇʱ¼ä°¡£¬£¬¸üºÃµÄ·½·¨£¬¿ÉÒÔ°ÝÍл¨Í¯ËÍÉϼ¸¶äÓд´ÒâµÄÀËÂþµÄ°ÙºÏÀ¶Ãµ¹åÒÔ¼°µç»°ÀïÒ»¸ö·ÉÎÇ£¬ÏàÐÅЧ¹ûÊÇÒ»ÑùµÄ¡£ÆäʵŮÈ˸üÈÝÒ×±»Ð¡Ê¸ж¯£¬ÒòΪŮÈ˸ù±¾¾ÍÊǸÐÐÔ¶¯ÎËý³çÉÐÀËÂþ¡£Ò²ÐíÖ»ÊǹýÂí·½ô½ôÀ­×ÅËýµÄÊÖÈÃËýʼÖÕ×ßÓұߣ¬Ò²ÐíÖ»ÊÇÓÐÒâÎÞÒâÖÐ˳·¸øËýÂòÁËÒ»¿éºìÊí±ý£¬Ò²ÐíÖ»ÊÇËýÉúÈÕ»òÕßʲô½á»é°ëÄê¼ÍÄîµÄÒ»ÊøÏÊ»¨£¬Ò²ÐíÖ»ÊÇÄã³ö²î¹éÀ´¸øËý´ø»Ø³Ôʣϵİë¸ö»ðÁú¹û£¬¹óÔÚϸÐĶøÒÑ£¬¹óÔÚÀËÂþ¶øÒÑ£¬ÏàÐÅÿһ¸ö˧¸çÔÚ×·Å®ÅóÓÑʱ°ÑÕâЩ¶¼×÷µÃ²»´í£¬ÄÇôÔÚµ½ÊÖÖ®ºó£¬Ê±²»Ê±µÄÖÆÔìÒ»µãСÀËÂþ£¬»áʹÉú»î¸üÓÐÇéµ÷£¬Ê¹ËýÍêÈ«¶ÔÄãËÀÐÄËúµØ£¡

3¡¢Ë¹ÌØÁÖµÄÎÊÌâ
°¸Àý£º¡¡ÈÕºóÁíÒ»¸öÔÚ³¡ÈËÔ±¡ª¡ª¾üÎñͳÁìÂÞ½ÜͳÁìµÄ˵·¨ÊÇ£º¡°Äã±ðÌý°×´¨ÄǹíÆÅÄïÓÖÔÚÄǺú´µÊ²Ã´¡®Å®È˵ÄÖ±¾õ¡¯ÁË£¬ËýÄDZ¾»ØÒä¼´¿´âÊÇΪÁËÆ­Ç®ÕÒǹÊÖдµÄ£¬µ±Ê±¾ÍÊÇ·²ÈËÒ²ÄÜ·¢ÏÖË¹ÌØÁÖ´óÈ˾«Éñ²»Îȶ¨ÁË£¡·ñÔòµÄ»°£¬ÏñË¹ÌØÁÖ´óÈËÕâÑùµÄ¸ßÊÖ£¬Ôõô»áÔÚÇÐÎ÷¹ÏµÄʱºò£¬²îµãÁ¬×Ô¼ºµÄ°ëÖ»ÊÖÕÆÒ»¿éÇÐÁËÏÂÀ´£¿ËûÓÖÔõô»áÁ¬ÐøÎÊÁËÎÒÃÇÎå´Î¡®ÄãÃÇʲôʱºò»ØµÛ¶¼µÄ£¿¡¯¡®ÄãÃǻص۶¼ÊÇʲôʱºò£¿¡¯¡®Ê²Ã´Ê±ºò»ØµÛ¶¼µÄ£¬Â޽ܣ¿¡¯¡­¡­Ã¿´ÎÎÒÃǶ¼´ðµÃÇåÇå³þ³þ£¬µ«¸ô²»µ½Èý·ÖÖÓËûÓÖÎÊ ¡®Ê²Ã´Ê±ºò¡­¡­¡¯¡±
£­£­£­£­£­£­£­£­
ÒýÒÔΪ½ä£ºÄÄÅÂÊÇ×òÌìºÍÅóÓѺȾÆÈ¥Á˺ÍÇéÈËÔ¼»áÈ¥Á˶øÆ­Ëý˵¼Ó°à»Ø¼ÒÌ«Íí£¬Ò²Ç§Íò²»ÒªÈÃ×Ô¼ºµÄÐж¯¹æÂɱ»ËýÕÆÎÕÕÆÎÕ£¬Èç¹ûËýÒÀÀµ¡°Å®È˵ÄÖ±¾õ¡±»òÕß·­Ò¶µÆ¤°üµÈÏÂÈýÀĵÄ×ö·¨£¬Äã²»·ÁǿӲһµã£¬ÀíÖ±Æø×³£¬ÒòΪ¹¤×÷ÀÛÂ£¡Èç¹ûËý´ÏÃ÷µÄÑ§Ï°Ë¹ÌØÁÖ£¬Ã²ËÆÂþ²»¾­ÐĵØÃ¿¸ôÒ»¶Îʱ¼ä£¬ÒÔ²»Í¬µÄÎʾäÐÎʽÌἸ´ÎͬÑùµÄÎÊÌ⣬ѭ»·ºäÕ¨£¬ÄãǧÍòµÄ´òÆðÊ®¶þ·ÖСÐÄ£¬»Ø¼Òǰ£¬ÏȰѡ°Î²°Í¡±´¦Àí¸É¾»£¬ÈÏÕæ¶Ô´ý£¬¶Ô²»Í¬·½Ê½Ìá³öµÄͬÑùÎÊÌ⣬ֻҪ¸ø³öÁ½´ÎÒ»ÑùµÄ´ð°¸£¬µÚÈý´Î£¬ºßºß¡­¡­¾Í¿ÉÒÔ×°Õß°åÁ³·´ÎÊ£¡£¡£¡È»ºó£¬µ±È»£¬ÎÂÈáµÄºåºåËý˵¡°Ë¯°É£­£­¡±¡£È»ºó£¬²»ÓÃÔÚ˵£¬Î£»úÒѹý£¬ËýÔçÍüÁË¡£

4¡¢Ðã¼ÑµÄ±§Ô¹
°¸Àý£ºÁÖÐã¼Ñ´óÆø¶¼²»¸Ò³ö£¬ËýÃ÷°×ÁË£¬×Ô¼ºµÄÕÉ·ò£¬¾ÍËãÆ½Ê±¶Ô×Ô¼ºÊÇÈç´ËµÄ°ÙÒÀ°Ù˳£¬¶÷°®Îޱȣ¬ÐÄÖбϾ¹»¹´æÔÚ×ÅһƬ²»ÈÝ´¥ÃþµÄÊ¥µØ¡£ºÃ¾ÃµÛÁÖ²Å̾¿ÚÆø£º¡°×Ï´¨ÐãºÍË¹ÌØÁÖ²»Ö»ÊÇÎÒÅóÓÑ£¬ËûÃÇÊÇÎÒÐֵܡ£¸Õ²ÅÄã˵µÄ»°£¬ÎÒûÌý¼û¡£¡±
£­£­£­£­£­£­£­£­£­£­£­£­£­£­£­
ÐÄϸÈç·¢£º±£Áô×Ô¼º¶ÀÁ¢µÄÌì¿Õ£¬±£ÁôÐÄÀïµÄ½ûµØ£¬ÍñתµÄ¸æËßËý£¬ÓÐЩ¶«Î÷£¬ÊÇÁú֮ĿÁÛ£¬ÊÇÅö²»µÃµÄ¡£²»ÒªÎªÁ˵àµà×Ô¼ºÔÚËûÐÄÖеķÝÁ¿Ã°ÏÕÈ¥ÊÔ̽£¬·ñÔòËý»áÊÜÉË£¡£¡µ±È»£¬Æ½Ê±¶Ô´ýËý¾¡¿ÉÄܵÄ˳×Å븧Ãþ£¬Ð¡ÊÂÄѵúýÍ¿£¬Ò²²»Òª·­ËýµÄÀÃÕÊ¡£¶ÔÓÚÄÇÖÖÿ´Î¶¼·¸¹æ»òÕß·­¾ÉÕʵÄÅ®ÈË£¬×¥×¡Ò»´ÎËýÃ÷ÏÔ²»¶Ô»úÓö£¬×îºÃµ±×ÅËýµÄºǫ́£¬Ð¡Ê±ä´óÊ £¬ÓÐÓàµØµÄ·¢×÷Ò»´Î£¬ÈÃËýÖªµÀºó¹ûºÜÑÏÖØ£¬ÈÃËýº¦Å¡£ÄÐÈË£¬»¹ÊÇÒªµ±¼Ò×÷Ö÷µÄ¡£

5¡¢ÀÁÆÅÄï˪˪
°¸Àý£º°×´¨ÉîºôÎüÒ»¿ÚÆø£¬Ñ§×Å×Ï´¨ÐãµÄÇ»µ÷˵£º¡°°×´¨£¬Õâ´Î»ØÈ¥¡£Ë³Â·¸øÎÒ×ßÌËÎ÷±±µÄÀ¶³Ç£¬È¥¼û¼ûÁ÷·ç˪£¡Ä§×å¶¼´òµ½µÛ¶¼³ÇÏÂÁË£¬ÕâÆÅÄïÔõôÕâôÀÁ£¬ÏñÎÚ¹êËÆµÄÁ¬¸öÀÁÑü¶¼Ã»Éìһϣ¿Îڹ걳ºó¶¼ÉúÇà̦ÁË£¡¸æËßÄǸöÀÁÆÅÄ¸Ã¶¯ÊÖÁË£¡ÔÙ²»³öÊÖÀÏ×Ó¾ÍÄÕÁË£¡¡± Ìý×Ű״¨Ëµ»°£¬Á÷·ç˪ÏÈÊÇÄ¿µÉ¿Ú´ô£¬½Ó×Å¿©¿©µØÐ¦³öÉùÀ´£¬Ð¦µÃ»¨Ö¦Ò¡°Ú£¬Ð¦µÃ¼¸ºõ´ÓÒÎ×ÓÉϵôÏÂÀ´¡£´¨ºÜÞÏÞΣ¬·ÛÁ³Í¨ºì£º¡°ÎÒ¼Ò´óÈËÐÐÎé³öÉí£¬Ò»Ïò´Ö³¹ßÁË¡£±§Ç¸£¬ºÜʧÀñÁË£¬Ï£ÍûµîÏÂÄú²»Òª¼û¹Ö¡£¡± ¡°ÎÒûÓйÖËû¡£¡±Á÷·ç˪ЦµÃÑÛÀá¶¼³öÀ´ÁË£¬ºÃ²»ÈÝÒ×ֹסÁËЦ£º¡°Õâ¸öÈËÄÄ£¬ÒÔǰװµÃÄÇô˹ÎÄÎÂÈáµÄÑù×Ó£¬Ô­À´¹Ç×ÓÀïÒ²ÊǸö´óÀÏ´Ö°¡£¡¡± ¡°µîÏ£¬ÄÇÄú......¡± ¡°»ØÈ¥¼ûµ½Äã¼Ò´óÈË£¬¾Í˵ÎÒÖªµÀÁË£¬ÂíÉϾͻá³ö±ø¾ÈÔ®×Ï´¨¼Ò¡£¡±
£­£­£­£­£­£­£­£­£­£­£­
¾­Ñé̸֮£ºÕâÒ»µãÐã×÷µÃºÜºÃ°¡£¬ÔÚ¼ÒÀï³ýÁË¡°ÀÏÆÅ¡±µÄ³ÆºôÖ®Í⣬µÄÈ·±ØÐë¸øËýÆð¼¸¸ö¼úÃû£¬´ó¼ÒͬȻ£¬±ÈÈçÀÁÆÅÄÅÖ¹ÃÄï°¡£¬Ð¡ÀÁÖí°¡£¬³ôµ°°¡£¬²»Òªµ±×ÅÍâÈ˽оÍÐУ¬ÃÀÆäÃûÔ»¡°êdzơ±ÈÃËý½ÓÊÜ£¬±ØÐë½ÓÊÕ£¬´ó¼Ò¶ÔµÈ£¬ÈÃËýÖªµÀÒ»ÊÓͬÈÊ£¬ºÇºÇ£¬µ±È»£¬Äã±ØÐëÓгä·ÖµÄʱ¼äÔÚ¼Ò²ÅÐеÄͨ¡£

¡¢µÛÁÖÑÛÖеÄÅ®ÈË
±ÈÆðÄÐÈËÓÃÀíÐÔ¿¼ÂÇÎÊÌ⣬¶øÅ®ÈË¿¼ÂÇÎÊÌâÈ´ÊÇÒÀ¿¿¸ÐÇ飬ËýÃÇÈÝÒ×±»Ò»Ð©Ò«ÑÛ¶áĿȴºÁÎÞ¼ÛÖµºÍÄÚº­µÄ¶«Î÷ËùÎüÒý£ºÎÞ±ßÎ޼ʵÄÏÊ»¨¡¢Îè»á¡¢»ªÀöµÄÒÂÉÑ¡¢ÃÀÀöµÄ×êʯ¡¢Ñ¤ÀöµÄÑæ»ðÍí»á¡¢Ëµ²»ÍêµÄÌðÑÔÃÛÓï¡¢ÔÞÃÀµÄ»°¡­¡­
£­£­£­£­£­£­£­£­£­£­
»îѧ»îÓãºÒ»¾ä»°£¬µÛÁÖÑÛÁ¦³öÕæÀí£¡ËùÒÔÄã±ØÐëÖÆÔìÀËÂþ£¬ËùÒÔÄã±ØÐëѧ»á˵²»ÍêµÄ²»Öظ´µÄÌðÑÔÃÛÓËùÒÔÄã×îºÃÓйĹÄÄÒÄÒµÄÇ®°ü£¡£¡µ±È»£¬¶ÔÓÚ²»ÇÐʵ¼ÊµÄÇÃÕ©ÀÕË÷Òª¼á¾öµÄ³Ï¿ÒµÄίÍñµÄÓèÒÔµÖÖÆ£¡¿ÉÒÔÊʵ±µÄÂú×ãËýµÄÒ»µãСҪÇó£¬Òª¾­³£ËÍһЩСÀñÎïÀ´ÈÃËý¾ªÏ²£¬Ê®¿éÇ®ÒÔÉÏÃâ̸¡£Õâ¾ÍҪѧ»á¹Û²ìÁË¡£¿´Ëýƽʱϲ»¶Ê²Ã´¶«Î÷£¬ÓÖûÓÐʱ¼äÈ¥ÂòµÄ£¬ÄãÉÏϰà¿ÉÒÔ˳µÀ¸ã¶¨£¬ÓëÇéÈËÔ¼»áÒ²¿ÉÒÔ°ïËýÂòÉϵ㡣Âò´íÂò¹óÁ˲»Òª½ô£¬ÄÐÈË´ó¶¼²»»á¹ºÎïÂ¿ÉÒÔÌåÁ¡£ÊµÔÚûʱ¼ä£¬¾Í˳±ãÂòµã±ãÒË»õ£¬¹Ø¼üÊDZØÐëÂò£¬ÖÜÖÜËÍ£¬ÀñÎï×îºÃ²»Ïàͬ£¬ÈÃËýÖªµÀÄã¼ÇµÃËý£¬Ê±¿ÌµëÄîËý¡£×ãÒÑ¡£³£´ËÒÔÍù£¬±£Ö¤ÄãµÄ¹Ø»³ÈÃËýÓÃÒ»±²×ÓµÄÈáÇ黨±¨¡£

¡¢ÁÖ¼ÒÊØ»¤Õß×ó¼ÓÃ÷Íõ
°¸Àý£º×Ô´Ó¹âÃ÷µÛ¹úÃðÍöºó£¬×ó¼ÓÃ÷Íõ³ÉΪ´ó½Éϸ÷¸öÊÆÁ¦ÕùÏÈÁýÂçµÄÈ˲ţ¬ËûÈ´ºÜ¿ÍÆøµÄÒ»Ò»»Ø¾øÁË×Ï´¨ÔÆ¡¢Á÷·çºã¡¢Ã÷Áֵȸ÷·½°ÔÖ÷µÄÑûÇëºÍÊÕÂò£¬Ëµ£º¡°ÎÒÎÞÒâÊË;¡£¡±ª¥µ«Êǵ±ÁÖ¼áÒãµÄÅ®¶ù¡¢ÆßËêµÄÁÖ·ïêØ¹«Ö÷ÔÚ±»ÈË׷ɱµÄʱºò£¬Àú¾¡¼è¿àÕÒµ½Ëû£¬Ëµ£º¡°×ó¼ÓÊåÊ壬ÎÒÃÇÒѾ­×ßͶÎÞ·£¬°ï°ïÎÒÃÇ¡£¡±ª¥×ó¼ÓÃ÷ÍõÉîÉîÄýÊÓÁËÕâ¸öÖÉÆøµÄСŮº¢Ò»»á£¬¿ª¿Ú˵£º¡°ºÃµÄ¡£¡±¡­¡­ÔÚÄǸöÒÔÇ¿ÁèÈõ¡¢ÒÔ´óÍÌСµÄÖîºî»ìսʱ´ú£¬ÕâÑùµÄÁÖÊϼÒ×å¼òÖ±¸úһͷÔÚ´ó½ÖÉÏÂÒ×ߵķÊÖíÒ»ÑùÒýÈËêéê죬ֻÊÇÿ¸öÈ˶¼ÖªµÀ£¬Áּҵı³ºó£¬Óоø´ú¸ßÊÖ×ó¼ÓÃ÷ÍõÔÚ³ÅÑü¡£
ª¥£­£­£­£­£­£­£­£­£­£­£­£­£­£­£­
ÓØ»Ø³ö»÷£ºÍ¬Àí¿ÉÖ¤£¬Äï¼ÒÓÐÈ˰ïæ¾ÍÊDz»Ò»Ñù°¡¡£ÔÚ×·Å®ÅóÓÑʱ¿ÉÒÔÓõ½ÕâÒ»µã£¬¸ã¶¨²»ÁËËý£¿Ïȸ㶨Äï¼ÒÈË£¬ÈÃËýÃÇΪÄã˵ºÃ»°£¬Ä¥ÈíËýµÄ¶ú¸ù×Ó¡£Óе¹ÊÇÕÉĸÄï¿´Å®ÐöÔ½¿´Ô½»¶Ï²¡£Ê×ÏÈץסËý¸¸Ä¸¼±ÓÚÈÃËý³ö¼Þ£¨´ó¶¼ÕâÑù£©µÄÐÄÀֻҪËýÁìÄã½øÃÅ£¬ÒÔºó¾ÍÖ÷¶¯µÇÃŰݷá£Ñ̾Ʋ¹Æ·Ìǹû»­²á°ÂÌØÂþ£¬²»Í¬µÄÈËËͲ»Í¬µÄÀñ£¬ÕâÊÇ×ÐÄ˼µÄʱºò¡£³ä·Ö±íÏÖÄãÓ¢¿¡äìÈ÷ÓñÊ÷ÁÙ·çÐ黳Èô¹ÈÉϽøÓÐΪ£¬ÏÈ´ïµ½Çó»é³É¹¦Ö®Ä¿µÄ¡£µ±È»£¬½á»éÖ®ºóÂÈç¹ûÀëµÄ½ü£¬ÒÔ²ä³Ô²äºÈΪĿµÄ£¬ÕÉĸÄï¼ÒÀﻹÊÇҪȥµÄºÜÇڵ쬴óÊÂСÊÂÃÜÇйØ×¢µÄ¡£Èç¹ûÄãÄÜ·¢Õ¹µ½ÈÃËýÈÏΪŮÐö±ÈÅ®¶ùºÃ£¨ÖÁÉÙ¿ÚÍ·ÉÏÕâÑù˵£©£¬^_^£¬Äã»ù±¾Éϳɹ¦ÁË£¬ÈÃÀÏÆÅÖªµÀ£¬³³¼Ü¶¼Ã»ÓÐÄï¼ÒÈ˰Ëý¾Í¿Ï¶¨Å£²»ÆðÀ´£¬ÊÕʰËý£¬ÄÇÊÇÃæµÄ£¡£¡

8¡¢ÂÞ²¨µÄÕäÄð
°¸Àý£ºÔ¶¶«¾üµÄ²Îı±¾²¿ÏÝÈëһƬ»ìÂÒ£¬Ïܱø²¿¶Ó¼±Ã¦¸ÏÀ´£¬È´±»×Ï´¨ÐãÃüÁî²»Ðí¿¿½ü°ì¹«ÊÒ£¬Ö»Ìýµ½ÀïÃæÔÚ·­Ïäµ¹¹ñµÄÉùÒôºÍÐã´¨Æì±¾µÄà«à«×ÔÓ¡°ÔÚÄÄÀïÄØ£¿ÄÄÄØ£¿¿ì¸øÎÒ³öÀ´£¬ÎÒÖªµÀÄãÒ»¶¨²ØÓеģ¡ÎҾͲ»ÐÅÎÒÕÒ²»µ½£¡¡±Î£»ú³ÖÐøÁËÎå·ÖÖÓ£¬Ö±µ½Ðã´¨Æì±¾ÂúÍ·´óº¹µÄ³öÏÖÔÚÃſڣº¡°Ã»Óз¢ÏÖ£¬¿ÉÄÜËû²ØÔÚ±ðµÄµØ·½ÁË£¡¡±ÔÚ³¡µÄ¾ü¹Ù¡¢Ïܱø¡¢ÎÄÔ±ÎÞ²»¶Ô×Ï´¨ÐãÆì±¾µÄÓ¸ҺÍÕò¶¨Íò·Ö¾´Å壬ËùÒÔҲûÓÐÈË×¢Òâµ½Ëû´øÀ´µÄ¹«Îİü¹ÄÁ˺ܶ࣬¶øÇÒ»¹·¢³ö¡°¹Çµ¹Çµ¡±µÄË®Éù¡£ÂÞ²¨¸±Í³ÁìÖ±µ½»áÒé½áÊø²ÅµÃÖªÕâ¼þÊÂÇ飬Ëû´ó¾ªÊ§É«µÄ¸Ï»Ø£¬´ò¿ªÃܹñµÄÃÅ£¬¿Õ¿ÕÈçÒ²£¬Ëû·¢³öÒ»Éù¾øÍûµÄ±¯ºÅ£¡
------------------------------
¶ÔÖ¢ÏÂÒ©£ºËµµÀÈçºÎ¶Ô¸¶ÁíÒ»°ë²ØË½·¿Ç®µÄÎÊÌâ¡£¿ñº¹À²,ÕâÊÇËùÓеÄŮȨÖ÷ÒåÕߺʹóÄÐ×ÓÖ÷ÒåµÄ¹²Í¬µÄÎ޿ɵ÷ºÍµÄì¶Ü°¡!!²»¹ýÓеÀÊÇ"µÀ¸ßÒ»³ß,ħ¸ßÒ»ÕÉ","ÄãÓÐÕÅÁ¼¼Æ,ÎÒÓйýǽÌÝ",°ì·¨»¹ÊÇÓеÄ,¹Ø¼üÔÚÓÚÄãÔõôʵÐеÄÎÊÌâÁË,ÕâÀïÊÔÓÃÉÏÖÐÏÂÈý²ß·Ö±ð˵Ã÷.

Éϲß:ÒÔÌðÑÔÃÛÓïΪÖ÷,ÒÔ¸ªµ×³éнΪÕÐ,²»Õ½¶øÇüÈËÖ®±ø.ÈÃËý½»È¨.
Ò»°ãÀ´Ëµ,ÄÐÈËÓеãÓªÒµÍâÊÕÈëÊÇÕý³£µÄ,´ÏÃ÷µÄÅ®ÈËÓ¦¸Ãѧ»á×°ºýÍ¿.µ«Èç¹ûËý²»¹»´ÏÃ÷,Ò»¶¨Òª¸Ï¾¡É±¾ø,ÄÇô²»·ÁÏÈÈ«ÅÌÉϽÉ,Ö÷¶¯µÄ.ºåËý¸ßÐËÂð,ÒªÓжàÉÙ½»¶àÉÙ,ÌðÑÔÃÛÓïÏÊ»¨ºÍÁ¼ºÃµÄ±íÏÖÈÃËýÍûºõËùÒÔ.È»ºó,¿ªÊ¼»¨Ç®,¸øÐ¡ÒÌÖ®ÂòÊéÁË,¸ø´ó¾Ë×ÓÂò±ÊÁË,¸øÕÉÈËÂòÑÌÁË,¸øÕÉĸÄïÂòÒ·þÁË,¸øËýÂòÊ×ÊÎÁË--- -----µÈµÈµÈµÈ,ÏÈΪ×ÅËý¼ÒÈË»¨,Ëý¿Ï¶¨¸ßÐË.½Ó×ÅÔÙ¸øÀϰÖÂò²¹Æ·¸øÀÏÄïʳƷ¸øµÜµÜÂòµçÄÔ¸øÃÃÃÃÂòÍæ¾ß------,Ö»ÒªÌðÑÔÃÛÓï²»¶Ï,Ö»ÒªÂòµÄÓÐÀí,ÀÏÆÅ¾ø¶Ô²»ºÃÒâ˼·´¶Ô.È»ºó²»ÓÃ˵,»¨Ç®ÈçÁ÷Ë®,͸֧ÁË,È»ºó¸æËßËû×Ô¼ºÃ»Ç®ÂòÑÌÁËËýûǮÂò»¯×±Æ·ÁË------.¾ÍÕâÑù,ÔÂÔÂÈç´Ë,È»ºóËý¼ÒÈ˶¼ÖªµÀËý²»ÉÆÓÚ³Ö¼ÒÁË,È»ºóËý·³ÁË,È»ºóËý±»ÄãµÄÌðÑÔÃÛÓïÓÍ×컬Éà´ò¶¯ÁË,Ò²±»ÍüÎҵľ«Éñ¸Ð¶¯ÁË.¸Ð¶¯Ö®ÓàÈ»ºóËý°ÑËùÓеÄÇ®¶¼½»¸øÄã¹ÜÁË,È»ºóÄãºÜ´ó·½µÄ¶à¸øËýһЩÁãÓÃÇ®ÁË.²»ÓÃ˵,¸ã¶¨ÁË.


Öвß,¸öÈË×ÔɨÃÅǰѩ
¶ÔÓڱȽÏÎÄÆø²»Ì«Õ³ÈËÖªÊéʶÀíµÄÊÂҵŮÐÔ,¹ÅÈË˵ÏྴÈç±ö,»¹ÊǺÜÓеÀÀíµÄ
,ÏÖ´úÁ÷ÐÐͬ¾ÓЭÒé,½á»éЭÒé,»éºóµ±È»¿ÉÒÔʵÐÐAAÖÆ,Сʱ»ìÔÓ,ÀϹ«¶à³öÇ®³öÁ¦,´óʹ²µ£.×ÔȻûÓÐ˽·¿Ç®µÄÎÊÌâ,ÕâÒѾ­ÊÇÉç»áµÄÁ÷ÐÐÇ÷ÊÆÁË.²»¹ýÎÒÈÏΪÕâÑùµÄ»°¸ÐÇé¿ÉÄܲ»Ì«ÈÚÇ¢ÁË.

ϲß,²»¹Ü·ç´µÀË´ò,ÎÒ×Ô»¹Òª²ØÇ®
Óо仰˵,ûÓÐ˽·¿Ç®µÄÄÐÈË»òÕß˽·¿Ç®±»ÀÏÆÅ·¢ÏÖµÄÄÐÈ˶¼²»ÊdzÉÊìµÄÄÐÈË,ÄÐÈËÕæÒªÏë²ØÇ®,ÍêÈ«¹á³¹´òһǹ»»Ò»¸öµØ·½µÄÓμÇÕ½Õù·½ÂÔ,ÓÖÆñÊÇÀÏÆÅ¿ÉÄÜÕҵĵ½µÄ???ÍòÒ»ÕÒµ½ÁË£»Ã»¹ØÏµ,Ï´ÎÔٲرð´¦,ÓμÇÕ½ÏßÊdz¤¾ÃµÄ,×îÖÕ»áʤÀûµÄ.

9¡¢×Ï´¨ÐãµÄ¿íË¡
°¸Àý£ºÔÚµ±³õµÄ¶¯ÂÒÖУ¬²¼É­¡¢²¼À¼Á½ÊåÖ¶ÊDz¼µ¤×î´óµÄÖ§³ÖÕߣ¬ÈôÎÞÆäÁ½È˵ÄÖ§³Ö£¬²¼µ¤³¤ÀϾøÎÞ¿ÉÄÜÄÇô±ãµ±µØÄõ½¾üȨ¡£ÏÖÔÚ²¼µ¤ºÍ²¼É­ÒÑËÀ£¬²¼À¼¾ÍÊÇÉлî×ŵÄ×î´óÔðÈÎÈËÁË¡£Ôç¾ÍÓÐÈËÇÔÇÔ˽ÓÈÏΪ²¼À¼¼È²ÎÓëÁËÅÑÂÒ£¬ÓÖÊǰܾüÖ®½«£¬¸üÊÇÐÒ´æÏÂÀ´µÄ×î´óÅÑÂÒÔðÈÎÈË£¬¹âÃ÷Íõ¿Ï¶¨²»»á·Å¹ýËûµÄ£¬ÄÜÔÊÐíËû×Ô¾¡ÒÑÊÇ×î´óµÄ¿íÈÝ¡£µ«Ê¿±øÃÇÑÛǰËù¼ûµÄ£¬È´ÊǹâÃ÷ÍõÓÉÖԵĶ÷Óö¡£ÑÛ¼ûÊÂÇéÓÐÁË˳ÀûµÄ½â¾ö£¬¹âÃ÷Íõ¿íºêµØ¿íË¡Á˲¼À¼µÄÔðÈΣ¬ÄÇЩ²ÎÓëÅÑÄæµÄ¾ü¹ÙºÍÊ¿±øÃÇͳͳ·ÅÏÂÐÄÀ´¡£²¼À¼½«¾üºóÍËÒ»²½£¬µ¥Ï¥¹òÏ£º¡°µîÏÂÍòË꣡ÎÒÃǵÄÈʾýÍòË꣡ÎÒÃÇÔ¸ÉúËÀËæÄú£¬ÓÀ²»±³ÅÑ£¡ÇëÄúÔ­ÁÂÎÒÃǵÄÓÞÃÁ£¬Ô­ÁÂÎÒÃǵÄÍç¹Ì£¬Ö»ÇóÄú£¬²»ÒªÅׯúÎÒÃÇ£¬²»ÒªÅׯú¾Ã¾­¿àÄѵÄÔ¶¶«´óµØ¡£¡±

»îѧ»îÓãºÔÚÕâÀïҪ˵µÄÊÇÒ»¸ö½ÏΪ¡°³ÐÖØ¡±µÄ»°ÌâÁË£¬¾ÍÊÇ¿íË¡£¬×÷ΪÄÐÈË£¬´ó¶ÇÄÜÈÝÈÝÌìÏÂÄÜÈÝ֮ʣ¬ÔÚÊÂÒµÉÏÈç´Ë£¬²Å¿ÉÒÔ½»µ½ÅóÓÑ£¬ÔÚ¼ÒÀï¶ÔÀÏÆÅÒ²ÒªÓÐÕâÑùµÄ¾õÎò£¬°ÑÀÏÆÅµ±×Å×îºÃµÄÊÂÒµÂï¡£Ê×ÒªµÄ£¬Èç¹ûÄã¾ö¶¨½ÓÊÜËý³ÉΪÄãµÄÆÞ×Ó£¬ÄÇô£¬Ô­ÁÂËýÒÔǰµÄÒ»ÇÐÄãÈÏΪ²»ºÃµÄ¶«Î÷£¬ºöÊÓËýÏÖÔÚµÄÒ»Çв»Á¼Éú»îϰ¹ß£¬Í¬Ê±ÉÝÍûËýÒÔºóÖ𲽸ÄÕý³ÉΪһ¸öÏÍÆÞÁ¼Ä¸°É£¬°¢ÃÅ¡£ÖÁÓÚÕâЩÄãÈÏΪ²»ºÃµÄ¶«Î÷ÊÇʲô£¿¸öÈËÓöµ½µÄÇé¿ö²»¾¡Ïàͬ£¬ÄÇÒª×Ô¼º°ÑÎÕºÃÁË£¬ËùνÈËÎÞÍêÈË¡£ÄÐÈËÈç´Ë£¬Å®ÈËÒ²Èç´Ë¡£µ±È»£¬Èç¹ûÒòΪËýÒÔǰµÄһЩÊÂÇé»á¶ÔÒÔºóÔì³ÉµÄÓ°Ï죬ÊÓÑÏÖØ³Ì¶È¶ø¶¨£¬ÆðÂëµÄһЩ¶¼±ØÐëÓÉÄãÀ´¸ã¶¨£¡ÒòΪÄãÃÇÒÔºóÊÇÒ»¼ÒÈË£¬ÄãÊÇÒ»¼ÒÖ®Ö÷¡£Èç¹û½ö½öÊǰ®¹ä½Ö£¬°®»¯×±£¬²»°®×ö·¹Ö®Äڵġ£»¹ÊÇÍêÈ«½ÓÊÕ°É£¬ÕâÒѾ­ÊÇÉç»áÎÊÌâÁËÄ㻹Ïë¸Ä±äʲôÂð£¿Èç¹ûËýÊÇÒ°ÂùÅ®ÓÑ£¬¶ÔÀϹ«Óб©Á¦ÇãÏò£¿ÄÇô¹§Ï²Ä㣬²»ÈÝÒ×°¡£¡£¡Ã«ÀÏÈ˼ҵ±Äê¶¼Ô¤¸æËµÐÂʱ´úµÄÅ®ÐÔ¡°°®ºì×±°®Îä×°¡±£¬ºÇºÇ¡£ÄÐÈËÒªÁ½Ã棬¶Ô´ý¼ÒÈËÊÇ×îÇ×µÄÈË£¬×îºÃ»¹ÊÇÏãСÃàÑòÒ»Ñù£¬ÓÃÈáÇéÈ¥¸Ð»¯Ëý£¡£¡

10¡¢ÂíάµÄÅóÓÑ
°¸Àý£º²»Ö¹ÊÇËû£¬ÈýË«Èçµ¶×Ó°ãµÄÑÛ¾¦¶¼ÔÚ¶¢×ÅÄǸöÄÐ×Ó£¬Ä¿¹âÖÐÔ̺­µÄÉ­É­É±Æø£¬ÈñÀûµÃ¼òÖ±ÄÜɱÈË£¡±»Èç´Ë±ÆÊÓ£¬ÄǸöÄÐ×ÓÈ´ÏԵúÜ̹Ȼ£¬ºÃÆæµÄ¿´×ŽøÀ´µÄ¼¸¸öÈË¡£Ò»Æ¬¼Å¾²£¬ÎÝÄÚµÄÄÐÅ®ºÍÃſڵÄÈýÈË̾̾Ïàêï¡£
¡­¡­
¡°Ç°ÌìÔçÉÏ£¬ÎÒÒѾ­ºÍÔªÀÏ»áµÄÂíά¸óÏÂ̸¹ýÁË¡£¡±×Ï´¨ÄþÓûÑÔÓÖÖ¹¡£Ë¹ÌØÁÖ¼±ÇеØ×·ÎÊ£º¡°ÔõôÑù£¿¡± ËýæÌȻһЦ£¬ÃÀÀöµÃÓÌÈ纣ÌÄ´øÓ꣺¡°½ñºó£¬´ó¼Ò¶¼»¹ÊǺÃÅóÓÑ¡£¡±

»îѧ»îÓãºÕâÊÇÊ®·Ö¾«µäµÄÂÛÌâÁË£¬²»¹ÜÊÇ¡°Ö»ÊÇÅóÓÑ¡±»òÕß¡°»¹ÊÇÅóÓÑ¡±¶¼ÊÇÅóÓÑ£¬²»¹ÜÊÇ¡°Ä°Â·Ïà·ê¡±¡°ÀÈÇÅÒÅÃΡ±¡°¹ëÖÐÃÜÓÑ¡±ÄÄÅÂÊÇÐä×Ó¶ÏÁËʲôµÄ£¬Ö®ËùÒÔÕâÑù£¬¹Ø¼ü»¹²»ÊÇÒòΪÄãÀäÂäÁËËý£¿ÏȼìÌÖһϣ¬Èç¹û¸ÐÇ黹ÔÚ£¬¸Ð¾õ»¹¿ÉÒÔÍì»Ø£¬ÄÇô£¬ÊÔÊÔ°É£¬±Ï¾¹£¬¡°ÇîÈËÈ¢¸öϱ¸¾¿É²»ÈÝÒ×ÄØ£¬Ò»¶¨ÒªÕäϧ£¬ºÇºÇ¡±¡£Èç¹ûÒѾ­¶¼ÒѾ­ÁË£¬ÄÇô£¬äìÈ÷µÄÀ뿪¡£²»·ÁÊ®·ÖäìÈ÷Ë§Æø¹û¶Ï¸ÕÇ¿µÄ˵һ¾ä¡°ÔÙ¼û£¬ÖÁÉÙÎÒÃÇÔøÊǺÃÅóÓÑ¡£¡±ÄÇÅÂÐÄÔÚµÎѪ£¬ÓÉËûÈ¥°É£¬ÄãÀ´ÕÒÎҺȾƺÃÁË¡£

11¡¢Â޽ܴòÀÞ
°¸Àý£ºÂÞ½ÜÆì±¾µÄÔËÆøÒ²Ã»±ÈËûºÃ¶àÉÙ£¬ËûÅöÉϵĵÚÒ»¸ö¶ÔÊÖÉÆÓÚʹ´óÁ¦½ð¸ÕÖ¸£¬ÇöÏÁËËûµÄÁ½¸ùÀ߹ǣ»µÚ¶þ¸ö¾Ý˵ÊÇӥצÃŵĸßÊÖ£¬ÔÚËûƨ¹ÉÉÏ×¥Á˸ö¶´£»µÚÈý¸öʹÎÞµÐÔ§ÑìÍÈ£¬Ìß¶ÏÁËËûÒ»¸ùÍȹǣ»µÚËĸöÒ»¿´¾ÍÖªµÀÊÇÌúɰկµÄ¸ßÊÖÁË£¬ÊÖÉϵļë×ÓºñµÃ×ã×ãÓаë´ç£¬Ö»ÇáÇáÃþÁËÏ£¬Â޽ܵ±³¡¾ÍŻѪ²»Ö¹¡£ÂÞ½ÜÃ÷°×¹ýÀ´ÁË£¬Å­Æø³å³åµÄÅÜÏÂÈ¥ÖÊÎÊ×Ï´¨Ðã¡£×Ï´¨Ð㰲οËû˵£º¡°ÄãµÄϸö¶ÔÊÖÊÇÅ®µÄ£¬ÊÖÉϹ¦·òÈíµÃºÜ£¬²»ÓÃÅ¡£¡± µÈÂÞ½ÜÐ˷ܵĻص½ÀÞ̨ÉϵÄʱºò£¬×Ï´¨Ðã²ÅÀÁÑóÑóµÄ˵£º¡°ËýÁ·µÄÊÇÁÃÒõÍÈ¡£¡± ¡°ÄãÔõô²»Ôç˵£¡°¡¡­¡­¡±Ò»Éù³¤³¤µÄ²Ò½ÐÖ®ºó£¬ÂÞ½ÜÒ²±»ÈȨ̈ÁËÏÂÀ´ÁË¡£
»îѧ»îÓãºÃÍ»¢²»µÐȺÀǰ¡£¬ºÃººÄѵÐÈ˶డ£¬Õâ¸ö¶ÔÓÚͬʱϲ»¶¶à¸öµÄÅ®ÈËÉõÖÁÓжà¸öÅ®ÓѵÄÎÊÌ⣬»¹ÊǽÅ̤ʵµØÒ»µã£¬ËÀÐÄ̤µØÒ»µã£¬ÆðÂëÈÏ×¼Á˾Ͳ»ÒªÔÙ»¨ÐÄÁË£¬½Å̤µÄ´¬Ì«¶àÁË£¬´¬¶¼»á·­µÄ£¬µ½Ê±ºòÒ»ÎÞËù»ñ²ÅÊÇ×î´óµÄʧÍû¡£Õâ¸öÔÚ̸Áµ°®µÄʱºò¼òÖ±Êǽð¿ÆÓñÂÉ¡£
ÏàÐÅ´ó¼Ò¾­Ñé·á¸»£¬¾Í²»¶à˵ÁË¡££¨ÆðÏȱ¾À´Ïë˵Ð廨ÕëµÄ»°Ì⣬µ«¿¼Âǵ½ºÜ¶àÈËδ³ÉÄ꣬ºöÂÔ£©

12¡¢ÀîÇåµÄÏ´½ÅË®
°¸Àý£ºÀîÇåÐãü΢õ¾£ºÐÐ×ÙÉñÃØ£¬ÄêÇᣬ¸ßÊÝ£¬À´ÕÒË¹ÌØÁÖ¡­¡­Ëý»ôµØÕ¾ÁËÆðÀ´£¬ÃæÉ«±ä»Ã£¬Ëý¼ÇÆðÕâ¸öÉùÒôÁË£¡Õâ¸ö´óÅÑÔô£¬Ëû¾ÓÈ»¸Ò»ØµÛ¶¼À´£¬µ¨×ÓÕæÊDz»Ð¡£¡ÀîÇåµÄµÚÒ»·´Ó¦ÊÇÁ¢¼´³öÃÅÈ¥×ܳ¤¸®£¬µ«ÓÖÓÌÔ¥ÁË£ºÕÉ·òºÍ´ËÈËÇéͬÊÖ×㣬×Ô¼ºÓë×Ï´¨ÄþµÄ½»ÇéÉîºñ¡­¡­µ«ÈôÊÇÖªÇé²»±¨£¬×Ô¼ºÓÖÀ¢¶Ô²ÎÐÇ×ܳ¤¶Ô×Ô¼ºµÄÐÅÈΡ£¶¨¶¨Õ¾ÔÚÔ­µØÏëÁ˺þã¬ÀîÇå²ÅÖÕÓÚ϶¨Á˾öÐÄ£¬µÀ£º¡°Íõ²®£¡¡±¿´µ½ÉÙÄÌÄÌÈç´ËÉñÉ«½ôÕÅ£¬ÀÏÓ¶ÈË´óÆø²»¸Ò´­£¬ËàÁ¢´ýÃü£¬ÏìÁÁµØÓ¦ÁËÒ»Éù£º¡°ÊÇ£¡¡±¡°ÉÕÏ´½ÅË®£¬ÎÒҪ˯¾õÁË£¡¡±

»îѧ»îÓãºÊ×ÏÈÓ¦¸ÃÊÇÈÈË®Ì̽ŵÄÓÕ»ó¡£Ì×ÓÃÐìÁֵϰ£º¶¬Ò¹ÀïÉÕÒ»ÅèÎÂůÈËÐĵÄÏ´½ÅË®£¬×ÝÎÞµ±´°»­Ã¼Î§Â¯Öó²èÀ´µÄ·çÑÅ£¬Ò²ËãÊÇ´óÖÚ»¯µÄÉú»îÏíÊÜ¡£Ì×ÓÃÒ»¾ä¹ã¸æ´Ê¡ª¡ª³£ÓÃÈÈË®ÌÌÌ̽ÅÍÛ£¬¶ÔÄãµÄ»éÒöÓкô¦¡£Æä´Î£¬»¹ÊÇҪΪ×Ô¼ºµÄÀϹ«×ÅÏëµÄ£¬ÎªÁ½È˵ĸÐÇé×ÅÏë°¡£¬ÓÐЩÊÂÇ飬ÄѵúýÍ¿£¬¹úÊÂÌìÏÂʹÌÈ»ÊÇ´óÊ£¬µ«¶ÔСÀϰÙÐÕ¶øÑÔ£¬»¹ÊǼÒÊÂÊÇÀÖÊ¡£Èç¹ûΪÁ˹úÊÂÌìÏÂÊÂËðº¦Á˸öÈËÀûÒæ»òÕß¼ÒÍ¥ÀûÒæ£¬Ëðº¦ÁË·òÆÞ¸ÐÇ飿ÄÇô²»·ÁѧѧÀîÇ࣬»¹ÊÇÏíÊÜÀÏÆÅº¢×ÓÈÈ¿»Í·µÄÉú»îÊÇÕýÊ£¡
°¦£¬°®É¶É¶È¥£¬Ï´Ï´Ë¯°É¡£

13¡¢¸çɺµÄ±­×Ó
°¸Àý£ºÃ¿´ÎµÄ¡°ÁªºÏ±¨¸æ»á¡±×ÜÊÇ×ñÑ­×ÅÒÔϲ»±äµÄ»áÒé³ÌÐò£º
¡­¡­
°Ë£®ÄÃÆð²è±­ÔÒ¹ýÈ¥£¨ÎªÁ˽ÚÊ¡¾­·Ñ¿ªÖ§£¬Ã¿´Î¿ª»áǰÄÚÎñ²¿¶¼Òª°ÑÌմɲ豭»»³É²»Ðâ¸ÖµÄ£¬µ«»¹ÊÇŪ»µÁ˲»ÉÙ¡£ºóÀ´¸çɺ×öÁËÄ»Áų¤ÒԺ󣬶ÔÄÚÎñ²¿Ëµ£º¡°±¿°¡£¡ÄãÃǾͲ»»áÓÃÖ½±­Â𣿡±£©

»îѧ»îÓ㺶ÔÄÐÈ˶øÑÔ£¬Ï´ÍëµÄʱºò³£³£¡°ÎÞÒâµÄ¡±Ê§ÊÖÔÒÁËÅÌÅÌÍëÍ룬³´²ËµÄʱºòÉÕ±¬ÁËÓÍ£¬ÉÙÑζàζ¾«ºýÁËʲôµÄ£¬ÕâʵÔÚÊdz£Ê£¬ÏÈÌì²»×ãÂÄÐÈËϳø·¿¶àÉÙÓеãÃãΪÆäÄÑ£¡¹Ø¼üÊÇ¿´Ôõô°ÑÕâЩ»¨ÕÐÓõĺã¬Óõļá¾ö³¹µ×»¹²»ÁôºÛ¼££¬»¹Òª¾­³£ºÍÌðÑÔÃÛÓï´îÅäʹÓá£ÏàÐÅÀÏÆÅ¶ÔÀϹ«µÄ°®ÕýÐèÒªÓòñÃ×ÓÍÑιøÍëÆ°ÅèÀ´Éî¿ÌµÄ±íÏֺͱí´ïÂï¡£´òËéÍëÊÇСÊ£¬Äã¿ÉÒÔ»»³É²»Ðâ¸Ö»òÕßÒ»´ÎÐԵģ¬ÄÇô²»»á×ö·¹Ò»×ö¾Í»µÄþÔ¸³ÔÅÝÃæÄãÔõô¸ã¶¨£¿¹Ø¼üÊÇÒ»¾ä»°£¬×°¾ÍҪװÏ󣬰ÑÀÁ×ֹ᳹µ½µ×£¡£¡£¡
µ±È»£¬Õâ¸ö²ÑÀ¢°¡£¬ÑÀ´óÎÒÔÚÕâÒ»µãÉÏʧ°ÜÁË£¬ÒòΪһ£¬ÎұȽÏϲ»¶Åë⿵ÄÀÖȤ¡£ÕâÒ²ÊÇÎÒÈ¡ÃûʳÉñºÍÒ×ÑÀµÄÔ­Òò¡£¶þ¡¢ÎÒÀÏÆÅ±ÈÎÒ»¹ÀÁ¡£ÕâÒ»ÕÐËý±ÈÎÒÓõĺá£ÄǸöº¹À²£­£­£­£­

14¡¢ÐãË͵ύ
°¸Àý£º¡°¸ç£¬Äã»ØÀ´ÁË£¿¡±×Ï´¨Äþ¶ÔËûµÄͻȻ³öÏÖÓÐÖÖÌØ±ðµÄ»¶Ï²£¬¡°ÄãÂòÁË»¨»ØÀ´¡­¡­ÍÛ£¬¸ç£¬ÄãºÃ°ôŶ£¡ÎÒ»¹ÒÔΪÄã²»¼ÇµÃÈ˼ҵÄÊ®°ËËêÉúÈÕÁËÄØ£¡¡±½ñÌìÊÇ×Ï´¨ÄþµÄÉúÈÕ£¡×Ï´¨ÐãÏÅÁËÌø£ºËûÂò»¨Ö»ÊÇ´¿´âΪÁË×¼±¸Óë×Ï´¨ÄþµÄ̸»°×ö³ÄÍУ¬È´Ã»ÓÐÏëµ½Íá´òÕý×Å£¬½ñÌìÕý»¹ÊÇ×Ï´¨ÄþµÄÉúÈÕ¡£¿´×Å×Ï´¨Äþ±§×ÅÊø»¨»¶Ï²µÃ²»µÃÁ˵ÄÑù×Ó£¬Ëû˵²»³ö»°À´£ºÄѵÀÒªÔÚÕâ¸öʱºò¸ú×Ï´¨Äþ½øÐÐÄÇÖÖ̸»°Â𣿿¨µ¤´Ó·¿¼äÀïÃæ³öÀ´£º¡°ÈÃÎÒ¿´¿´¡­¡­Ôõô»¹ÓÐÈËÄûƾջ¨µ±³ÉÉúÈÕÀñÎïËÍÈ˵ģ¿¡±¡°°¡£¬ÕæµÄѽ£¡ÎÒ¸çÀÏÊǺýÀïºýÍ¿µÄ£¬ÕæÊǵģ¡¡±×Ï´¨ÄþËäÈ»ÔÚ±§Ô¹£¬µ«±íÇéÈ´ºÜÌÕ×í£ºÖ»Òª×Ï´¨ÐãÄܹ»¼ÇµÃËýµÄÉúÈÕ£¬ÄÄÅÂÔÚ·±ßÕª°Ñ²Ý»ØÀ´ËýÒ²ÐÒ¸£µÃ²»µÃÁË¡£

»îѧ»îÓãº×ܽáÒ»£¬¶ÔÓÚÅ®ÈË£¬ÀËÂþÓÀÔ¶ÊÇ×î¾ßÓÐɱÉËÁ¦µÄÎäÆ÷£¬¶øËÍ»¨ÊÇÀËÂþµÄ×î»ù±¾µÄ±í´ï·½Ê½¡£×ܽá¶þ£¬¶ÔÓÚ»¹Ã»ÓÐ×·µ½ÊÖµÄÅ®È˹âÓÃÏÊ»¨ÊDz»¹»µÄ£¬ÀËÂþµÄ³ÉÉ«ºÍ»ùµ÷»¹ÊÇÐèÒª´îÅäºÍ±ð³öÐIJõģ¬Òª¶à·ÑÒ»µãÄÔϸ°ûµÄ¡£»¹ÓС°»¨ÓҲҪעÒâ¡£×ܽáÈý£¬Å®È˶Ô×Å×Ô¼ºÏ²»¶µÄÄÐÈËÊÇ»áÔÎÍ·µÄ£¬ÓòݽäָȦ¶¨ÖÕÉíµÄŵÑÔ²¢²»ÍêÈ«ÊÇÉñ»°¡£±ÈÈçÄþ£¬ËýÆðÂë¿Ï¶¨»á°ÑÐãË͵IJݸí´ñÈÏΪÊÇÇéÈ˽ᣬµ«Èç¹û²»ÊǼ¢º®½»ÆÈ»òÕßûÓаٷÖÖ®°ÙµÄ°ÑÎÕ£¬»¹ÊDz»ÒªÊԵĺá£
¡°ÓÃһЩÆäËû²ÄÁÏ×ö³É»¨µÄÐÎʽ´úÌæÏÊ»¨¡±¡£ÐìÁÖµÄÖ÷ÒåºÜºÃ£¬¸ÃÅĵÄʱºòÅÄ£¬¸Ã±íÑïµÄʱºò»¹ÊÇÒª±íÑïµÄ£¬ÔÞÒ»¸ö¡£ÎÒÒª²¹³äµÄÊÇ£¬ÓÐʱºòһЩ¼òµ¥µÄƽ·²µÄ¶«Î÷Ò²¿ÉÒÔÊÕµ½ºÜºÃµÄЧ¹û£¬»¹Òª½²¾¿Ë͵ļ¼ÇÉ¡£ÌرðÊǽá»éÒÔºó£¬ÀÏÆÅÒ²»á¶àÉÙÇãÏòÓÚʵ¼Ê¡£¼ÇµÃ03ÄêµÄÇéÈ˽ÚÎÒ³ö²î£¨º¹£©£¬ÎÞÄÎÖÐÌáǰµ½¿ªÔª¶©×÷ÁËÒ»¸ö´óºÅµÄÇÉ¿ËÁ¢ÀñºÐ£¬ÓÃÁÈÁȵÄõ¹å´îÅ䣬дÁ˼¸¾ä²»ÅÂÈâÂéµÄ»°£¬ÒòΪË͵½¼ÒÀï²»·½±ã²ÅË͵½ÁËËýµ¥Î»ÉÏ£¬Ã»Ï뵽Ч¹û¾¹È»³öÆæµÄºÃ£¬Ëý˵ÈÃËýÔÚһȺС¹ÃÄïÃæÇ°Õõ×ãÁËÃæ×Ó¡£º¹À²£¬Á¬µ±Ìì²»ÄܸϻؼÒÅãËý¶¼ºÁÎÞÔ¹ÑÔÁË£¬»¹¾ö¶¨Ö÷¶¯È¥°ïËý¹«¹«ÆÅÆÅ¹ºÂòÀñÎ·Ö±ðËÍ´ï¡£

15¡¢ÁÖÓêµÄÑÛÀá
°¸Àý£º²»ÖªºÎʱ£¬ÀáË®ÒÑÁ÷ÂúÁËËý¾§Ó¨½à°×µÄÁ³¡£Í»È»Ö®¼ä£¬¾ÍÓÌÈçÐÄÁéÉî´¦×îÈáÈíµÄ²¿·Ý±»ÈËÓõ¶ºÝºÝµØÍ±ÁËһϣ¬×Ï´¨ÐãÕû¸öÁé»ê¶¼²ü¶¶ÁËһϡ£ÔÚÄÄÀ×Ô¼ºÔø¿´µ½¹ýͬÑùÓÇÉ˵ÄÈÝÑÕ£¿Â·µÆÏÂÄÇË«ëüëʵÄÀáÑÛ£¬ÑÛǰÄÇÃ÷ÁÁµÄË«íø£¬¶þÕß¾¹È»Èç´ËÉñËÆ£¡¾Ã¾­·ç˪µÄ×Ï´¨ÐãÒѲ»ÊǶà³îÉÆ¸ÐµÄÈË£¬µ«¾ÍÔÚÕâһ˲¼ä£¬Ëû¾¹ÓÐÁËÖÖÊ®ÆßËêÉÙÄêµÄ³å¶¯£ºÑÛǰµÄÉÙÅ®ÊÇÄÇôÈáÈõ£¬ÄÇô°§ÉË£¬ËýÐèÒª±£»¤£¬ÐèÒª¼áÇ¿µÄÒп¿¡£

»îѧ»îÓãº
´º·çº¬Ð¦ÇκìÑÕ£¬À滨´øÓê±¶½¿ÑÞ¡£ËùÓеÄÄÐÈË£¬´Ó¸ùµ×ÉÏ˵¶àÉÙ¶¼ÓÐһЩ´óÄÐ×ÓÖ÷Ò壬¶ÔÈáÈõµÄÐèÒª±£»¤µÄ³þ³þ¿ÉÁ¯ÎÒ¼ûÓÌÁ¯Ð¡ÄñÒÀÈËÐ͵ÄÅ®ÈËÇéÓжÀÖÓ¡£ËùÓУ¬ÑÛÀᣬÓÀÔ¶ÊÇÅ®ÈË×î¹ÅÀϵġ¢×îÌìÈ»µÄ¡¢×î¾ßɱÉËÁ¦µÄÖ®Ò»¡£Ö»ÒªÓõÄÇ¡µ½ºÃ´¦£¬²»Å°ÙÁ¶¸Ö²»³ÉÈÆÖ¸Èá¡£
Òź¶µÄÊÇ£¬ÏÖ´úÅ®È˶ÔÕâÑùµÄÅ®ÐÔ»¯µÄÃÀµÂ»òÕßËµÌØÉ«ÒѾ­Öð²½ÅׯúºöÂÔÁË£¬³ö´¦ÕùÇ¿ºÃʤ£¬ÊÂʺÍÄÐÈ˾ºÕù£¬Éú»î¹ÌÈ»³ÐÖØ£¬ÄÐÈ˹ÌÈ»ÐÁ¿à£¬¹ÌÈ»ÐèÒªÀÏÆÅµÄ°ïÖúÒѹ²Í¬³Ö¼Ò£¬µ«ÄÐÈËÔÚ¹¤×÷Ö®Óà¸üÐèÒªÎÂÇéµÄο½å°¡£¬Ïà·ò½Ì×Ó£¬Ð¢¾´¹«ÆÅ£¬ÇÚ×ö¼ÒÎñ£¬ÓÃÈáÇéÃÛÒâ´ò¶¯ºÍ¸Ð¶¯ÀϹ«²ÅÊÇÕý;¡£
ÄÐÈËÐèÒªµÄ¾ø¶Ô²»½ö½öÊÇÆÞ×ÓÅ×Í¶Â¶ÃæÖ°³¡´òÞÕ£¬È»ºó»Ø¼Ò×öºÓ¶«Ê¨£¬ÉõÖÁÉÔÓв»ÈçÒâ¾ÍÒ»¿Þ¶þÄÖÈýÀë»é¡£¶Ô¸¶ÕâÑùµÄÅ®ÈË£¬Ö»ÓÐÄã±ÈËý»¹Ç¿Ó²²ÅÐС£Óе¹Êǽ«ÐıÈÐÄ£¬ÕæÐÄ»»ÕæÇ顣Ϊ¼ÒÖ®µÀ£¬Ð¡ÊºýÍ¿£¬¶ÔÓÚһЩÃô¸ÐµÄ»òÕßÖØÒªµÄ¾ö²ßµÄ´óÊ£¬»òÕß¶ÔÓÚÀÏÆÅµÄËÁÎ޼ɵ¬£¬»¹ÊÇÒªÊʵ±µÄ·¢»ÓÄжù±¾É«µÄ¡£
µ±È»£¬ÎÒ²»·´¶ÔÄÐÈËÓ÷çɳÃÔÑÛ»òÕßÑÛ¾¦³öº¹½øÐп¹Õù£¬µ«±Ï¾¹¡°ÄжùÓÐÀá²»Çᵯ¡±¡°ÄжùÁ÷Ѫ²»Á÷Àᡱ¡£Ò»´ÎÁ½´Î¿ÉÒÔ£¬¶àÁË£¬Õâ¸öÃæ×Ó»¹Õ涪²»Æð¡£

16¡¢ºÓÇðÁּұ߾³
°¸Àý£º¡°ÕâÑù°¡£¬ÄãÃÇÍêÈ«¿ª·Å±ß¾³µÄ¡£¡±×Ï´¨ÐãÕ£°Í×ÅÑÛ¾¦£¬ºÓÇðÁÖ¼ÒÍêÈ«¿ª·ÅÁ˱߷À½ä±¸£¬Õâ¶ÔÓÚ´ÓСһֱÉú»îÔÚÑÏÃÜ¿ØÖÆÏµÄ×Ï´¨¼Ò¾ÓÃñÕæÊǼþ²»¿É˼ÒéµÄÊ¡£
ËûÎÊ£º¡°ÄÇ£¬ÄãÃǵÄÀϰÙÐÕ¶¼Åܳö¹úÈ¥ÁËÄØ£¬Ôõô°ì£¿¡±
¾¯²ì·´ÎʵÀ£º¡°ÎÒÃǵÄÀϰÙÐÕΪʲôҪÅܳöÈ¥ÄØ£¿ºÓÇðµÄÉú»îˮƽ±ÈµÛ¶¼ºÍÔ¶¾©¶¼ÒªºÃ£¬ÎÒÃǹÜϽÄÚµÄÃñÖÚûÓÐÀíÓÉÌÓÍöµÄ¡£¡±

»îѧ»îÓãº
Õâ¸ö£¬µ±È»ÊÇÓªÔìºÍгµÄÐÒ¸£µÄ¼ÒÍ¥µÄÎÊÌâÁË£¬¡°ÎÞΪ¶øÖΡ±£¬ÒªÅàÑøÁíÒ»°ë¶ÔÄãµÄÒÀÀµÐÔ£¬Òª³ä·ÖµÄ·¢¾ò¼ÒÍ¥µÄÎÂů£¬Ê×ÏÈÒª×öÒ»¸öºÃÀϹ«£¬½¨Á¢ÃñÖ÷µÄ×ÔÓɵÄЭºÍµÄÎÂܰµÄÈôó¼Ò¶¼ÏÛĽµÄ¼ÒÍ¥¹ÜÀíÓÐÏÞÔðÈι«Ë¾£¬×ܾ­Àí×ÔȻҪÓÉÃÇÄÐÈ˵£ÈΡ£Òå²»ÈÝ´ÇÂï¡£ÀÏÆÅ£¿ÀÏÆÅµ±È»ÊǶ­Ê³¤ÁË£¬º¹£¬²»Òª±ÆµÃÎÒ˵ÕâôÃ÷°×ºÃ²»ºÃ£¿
ÖйúÀúÊ·ÏòÀ´Ç¿µ÷ÖÐÓ¹Ö®µÀ£¬Ëùν¹ýÓ̲»¼°´óÖÂÈç´Ë¡£ÔÚ¼ÒÍ¥ÖÐÒ²ÓÐÕâÑùµÄ¹ÛÄî´æÔÚ°¡¡£Ò»°ãÇé¿öÏ£¬Õâɽ»¹ÍûÄÇɽ¸ß£¬¶àÉÙÓÐЩ²»Âú×ãÊDZØÈ»µÄ£¬µ«Çá΢µÄ²»Âúµ½ÌÓÀë¼ÒÍ¥Ö®¼ä»¹ÓÐÒ»¸ö¶ÈµÄÎÊÌâ¡£Ö»ÒªÄãÄÜ¿ØÖÆÔÚÕâ¸ö·¶Î§£¬Ö»Òª´ó¶àÊýʱºòÈÃËý¾õµÃÂúÒâ¡£Äã¾Í³É¹¦ÁË¡£ÓÃÐĺÍÊÂʵȥ¸æËßËý£¬Ò²ÈÃËý¼áÐÅ£¬Äã×î°®Ëý£¬ËýÖ»ÓкÍÄãÔÚÒ»Æð²ÅÄܵõ½ºÍÕýÔڵõ½×î´óµÄÐÒ¸£¡£
¾ßÌå´ëÊ©£ºàÅ£¬°®Ëý£¬¹ØÐÄËý£¬ÌðÑÔÃÛÓÀËÂþ£¬ÓÄĬ£¬ÀñÎÈÃËýÓÐÊ¿É×÷ÓÖ²»ÄÜ̫棬¶à¸øËýһЩʱ¼ä»¹Óб˴ËÁôһЩ¿Õ¼ä£¬ÇÚÀÍ£¬ÉÆÁ¼£¬¶ÔÕÉÈ˼ÒÀïºÃһЩ£¬¶à¸É¼ÒÎñ£¬ÓÐÉϽøÐÄ£¬²»È±Ç®Ò²Ã»ÓÐÌ«¶àÇ®£¬ÅàÑøËýÕýµ±µÄºÍÄ㹲ͬµÄ°®ºÃ£¬µ±È»£¬×îºÃÓиö±¦±¦Ë¨×¡ËýµÄÐÄ£¬ÈÃËýÓмÄÍС££­£­£­£­£­£­¸÷λ»¹ÊÇÂýÂý·¢¾ò°É¡£
Èç¹ûÄã¼ÒÕæµÄÊÇÌìÌã¬Ã»ÈË»áÖ÷¶¯ÍùµØÓü×ß¡£¼²·ç˵£º°ÑËû´ÓÄã²»ÔÚ¼Ò¾ÍÐÄÑۻÐÞÐе½²»¸ÒÐÄÑۻÔÙµ½²»Ô¸ÐÄÑۻ½Ó×ŵ½ÏëҲûÏë¹ý»¹ÓÐÐÄÑۿɻ×îºóµ½ÄÃÏ´Ôµ¶±Æ×ÅËû»îËûÒ²²»»î£¡¿´µÄÎÒÒ»¸ö¾¢µÄÁ÷º¹À²¡£ÄÐÈËÕæÒªÓÐÍâÐÄ£¬¿É²»ÊÇÅ®ÈËÕâÑùÄÜ¿ØÖƵÄÁ˵ġ£»¹ÊÇÓøÐÇé±ÈÓõ¶Ç¡µ±Ð©£¡£¡

17¡¢¼à²ìÌüµÄ¶úÄ¿
°¸Àý£º ¡°Ò»Ö±ÒÔÀ´£¬¼à²ìÌü¶¼ÃØÃÜÉèÓÐµÚÆß˾£¬Õâ¸öÃØÃܲ¿ÃÅÊÇרÃÅÓÃÀ´¼à¶½ÄÇÐ©ÕÆÎÕʵȨµÄÖØ³¼´ó½«µÄ¡£¼¸ºõÔÚÿһ¸öËûÃǾõµÃÓбØÒªÖØÊÓµÄÈËÉí±ß£¬ËûÃǶ¼°²²åÓÐÈË¡£ÒÔǰÑîÃ÷»ª¾ÍÊÇͨ¹ýÏôÁúµÄµÚÆß˾À´»ñÈ¡Ç鱨£¬²¢ÇÒ¿ØÖƼÒ×åÉÏϵġ£Í¬ÑùµÄ£¬×Ï´¨²ÎÐÇÒ²ÓÐËûµÄÒ»Ì×Ç鱨ϵͳ£¬ÔÚ¼Ò×åÉÏÏ´óС¹ÙÔ±Éí±ß°²²å¼éϸ£¬ÆäÖÐÒ²°üÀ¨Äã¡£ÄãÇ×ÐŵIJ¿ÏÂÖÐÒ²ÓÐËûÃÇË«·½µÄÈË£¬ËûÃǵÄÃû×ÖÊÇ¡­¡­¡±

»îѧ»îÓãºÏÖÔÚµÄ˽ÈËÕì̽ºÜ¶à£¬ÕâÒ»ÕÐÔÙ×·ÇóÅ®ÅóÓÑʱ¿ÉÒÔ×î´óÏ޶ȵķ¢»ÓÁ¼ºÃµÄ×÷Ó㬴ÓÒûʳϰ¹ßµ½ÈÕ³£Éú»î°²ÅÅ£¬´Ó·Ïßµ½¹ºÎïÆ·Î»£¬ÎÞËù²»°üÎÞËù²»¼°£¬Ö»ÒªÓÐʵÁ¦£¬»¹ÊÇ¿ÉÒÔÊ¡ÐIJ»Éٵġ£²»¹ý²»ÔÞ³ÉÕâô×ö£¬¼äµýÊǺÜÈÝÒ×±»²ß·´µÄ£¬ÓÐЩ¶«Î÷£¬»¹ÊÇÇ×ÀúÇ×ΪÀ´µÄÎȵ±µã¡£±ÈÈç°×´¨¾Í±»ÊÕÂòÁË¡£±ø·¨ÓÐÔÆ£¬ÒÉÈ˲»Óã¬ÓÃÈ˲»ÒÉ£¬ÁªÏµµ½ÉÏÒ»¸ö»°Ì⣬Èç¹ûÄãȷʵ¿ÉÒÔÁýÂçËýµÄÐÄ£¬²»·Á»¹ÊÇ¶à¸øËýһЩ¿Õ¼äµÄºÃ¡£·òÆÞËäÈ»ÖÁÇ×ÖÁ¾´£¬Ò²²¢·ÇÍêÈ«¾ÍûÓÐÃØÃÜûÓнûÇø¡£Å®ÈËÈç¹û¶ÔÄãËÀÐÄËúµØÁË£¬ÊDz»»áÇáÒ×±äÐĵġ£Õâ¸ö´óǰÌá֮ϣ¬ÆäËûµÄ¶¼ÊÇС½á£¬ËùÒÔ£¬¶ÔÓÚ»³ÒɼàÊÓ¸ú×ٵȣ¬ÊʿɶøÖ¹£¬²»È»ºó»Úμ°

Àà±ð£º ÎÞ·ÖÀà |  ÆÀÂÛ(0) |  ä¯ÀÀ(10362) |  ÊÕ²Ø
2006Äê01ÔÂ18ÈÕ 01:41:08

Ò£Ïëµ±ÄêµÄ·è¿ñ...

´óѧÖÐ
ÎÒËùÔÚµÄÇÞÊÒ±»³ÆÎªÐǼÊÇÞÊÒ
ÎÒÃǵÄÇÞÊÒºÅ
±»Ñ§Ð£ÖÜΧ´óѧÉúËùÀμÇ
±ðС¿´ÎÒÃÇÖÜΧ
´óÃû¶¦¶¦µÄ
Äùýwcg×ܾöÈüË«´ò¹Ú¾üµÄdeep¿ÉÊÇÎÒÃÇѧУµÄ

¿ªÊ¼µÄÎÒÃDz¢²»»á´ò
ÎÒÃǼ¸¸ö(ÓÐjd,@@,fyearºÍÎÒ)
×ÜÊǰÑÌìϵĿóÕ¼¹â
°Ñ200µÄÈË¿Ú×öÂú
È»ºóµÈ4¸öÈËȫͬÒâºó²ÅÄÜ¿ª´ò
Î¥¹æÕß»áÔâµ½ÆäËû3¸öÈËΧ¹¥

»ì»ìãçãçµÄ
Ö±µ½Ò»´ÎͨÏüºóµÄ6µã×óÓÒ
ºÍͬһ¸öÍø°ÉµÄÁí4¸ö²»ÈÏʶµÄÈË´ò4v4
Õâ´Î
²ÅʹÎÒÃÇÖªµÀÁËÐǼÊȺÌôÊÇÔõÃ´Íæ
ÒòΪ
ÔÚºóÃæµÄ3¸ö¶àСʱÖÐ
ÎÒÃÇÒ»ÅÌûӮ
ÿÅÌÎÒÃÇû´òÏÂËûÃÇÖеÄÈκÎÒ»¼Ò
ËûÃÇÖ»×öС¹·¿ñͽ»úǹ±ø
»¹ÓÐÅ©Ãñ

¸ÐлÕâ4¸öÈË
ËûÃǽ̻áÁËÎÒÃÇʲôÊÇ"¿ìÕ½"

ΪÁË"±¨³ð"
ҲΪÁËѧϰ
ÎÒÃÇÔÚÖÜÎ§Íø°ÉÊäÁËÎÞÊý

½¥½¥µÄ
ÎÒÃÇÊäµÄÉÙÁË
½¥½¥µÄ
Ö»ÒªÎÒÃÇ4¸öÒ»ÆðÉÏ,¾ÍÕÒ²»µ½¶ÔÊÖÁË

ÓÚÊÇ
ÎÒÃÇ´ò³öÁËÎÒÃǵĴóÆì
ÔÚÎÒÃÇÿ¸öÈ˵ÄIDǰ
¼ÓÉÏÁËÎÒÃÇÇÞÊҺŠ329

¸ü»ÄÌÆµÄÒ»´Î
ÍüÁËÊÇË­ÌáÒé
ÎÒÃÇ×ø³µÒ»¸öСʱ
Åܵ½ÁíÒ»¸öѧУÌô
½á¹ûÖÐÁËÂñ·ü
²Ò°Ü¶ø»Ø
ʺó²ÅÖªµÀËûÃÇ4¸ö¼¯ÖÐÁËÀ´×Ô2ËùѧУºÍÉç»áÉϵĸßÊÖ

Õýµ±ÎÒÃǶÔȺÌôÈÈ»ð³¯Ììʱ
Ó­À´ÁËÁíÒ»¸ö¶ÔÎÒÃDzúÉúÉîÔ¶Ó°ÏìµÄÈË
»ªÖÐÀí¹¤´óµÄÐǼÊУ¶Ó¶Ó³¤

µ±Ê±
jdºÍÎҵķç¸ñ²»Í¬
µ«¶ÔÐǼʵÄÀí½âÏà²î²»¶à
jdºÍÄǸö¶Ó³¤´ò³ÉÁË1:4
Õâ¸ö1
¿ÉÄÜ»¹ÊÇÄǸö¶Ó³¤ÓÐÒâÈõÄ

ʺó×ܽá
ÎÒÃDz»¿ÉÄÜ´òÓ®Ëû
ÒòΪÎÒÃÇÒ»Ö±ÊÇ´òȺÌô
´òµÄÊÇÅäºÏ
¶øµ¥Ìô
½²¾¿µÄÊÇ´ó¾Ö¹Û
Õ½ÊõÕ½ÂÔ
»¹ÓÐ΢²Ù

ÎÒÃÇÒâʶµ½ÎÒÃǵķ½Ïò´íÁË

Ò²¾ÍÊÇÔÚÕâ¸öʱºòmagic¼ÓÈëÁËÎÒÃÇ
¶ø@@Í˳ö
@@µÄÍ˳ö,¶ÔÎÒÃÇʵÁ¦Ó°ÏìºÜ´ó
ÎÒÃǵÄ×îÇ¿ÕóÈÝ,Ó¦¸ÃÊÇjd,@@,magicºÍÎÒ
fyearÒòΪÆäËûʶø¶ÔÐǼʹØ×¢Ã»ÎÒÃǶà

ÎÒÃÇ¿ªÊ¼Á˵¥ÌõÖ®ÂÃ

Õâ¸öʱºòÕ½ÍøÒѾ­±È½Ï¶à
ÎÒÃÇÑ¡ÔñÁË263Õ½Íø
¶øÎÒ,ΪÁ˽ϿìÊìÏ¤Õ½Íø,»¹Óе¥Ìõ
¿ªÊ¼Á˵ÚÒ»´ÎRYµÄÂóÌ(ȷʵÓкô¦,RY¾ÍÊÇÓÐÈ˰ï)

Õâ¸öʱºò
ÎÒʵÁ¦´óÔö
ÒѾ­°Ñjd,fyearÅ×ÔÚÁ˺óÃæ
¶ømagic,ÊǸöÐǼʷè×Ó
ËäÈ»ËûÍíÎÒÃǽӴ¥ÐǼʰëÄê¶à
µ«ÓÉÓÚÓÐÎÒÃÇÕ⼸¸ö"Ã÷ʦ"µÄ½Ì»å
ÔÙ¼ÓÉÏËûµÄÇÚ·Ü
ÔÚ2,3¸öÔºó,ÒѾ­¿ÉÒÔ´òÓ®fyear
ËûµÄ×ö·¨ºÜ¼òµ¥
¾ÍÊÇÌìÌìÅܵ½Ò»¸ö½Ð"ÌìÌìÍø°É"µÄµØ·½ÕÒÈ˵¥Ìô
¾õµÃ×Ô¼ºÓнø²½ºó
¾ÍÕÒjd´ò
±»jd´òµÄ17:0, 20:0ºó
ûÁËÐÅÐÄ
¾ÍÔÙÅÜÈ¥"ÌìÌì"ÕÒÈË´ò
ÎÒÃdzÆÖ®Îª"È¥ÌìÌìÕÒÐÅÐÄ"

jdÒòΪÆä"ÓÎÏ·Ö®Íõ"µÄ³ÆºÅ
µ¼ÖÂËûÐǼÊˮƽÏà¶ÔÓÚÎÒÃÇ,Öð½¥Ã»Âä

"ÓÎÏ·Íõ"³ÆºÅµÄµÃÀ´ÊÇÒòΪËûÍæµÄÓÎÏ·Ö®¶à,Ö®¹ã,Ö®¾«
ËûÑùÑùÓÎÏ·»áÍæ,ÍæµÄ±Ø¾«
µ¼ÖÂûÓиü¶àʱ¼äÀ´Ñо¿ÐǼÊ

ÎÒÇå³þµÄ¼ÇµÃ
ÔÚ´óÒ»,ÎÒÊǵڶþ¸öÄõ½ÇÞÊÒÔ¿³×,µ½ÇÞÊÒµÄ
Ëûµ±Ê±¸Õ¸Õ´Ó´²ÉÏÅÀÆð
¶ÔÎÒ˵Á˺ܾ­µäµÄÒ»¾ä»°:ÎÒ×òÌìͨÏüÁË,Íæ¹ÅĹÀöÓ°...
ÒÔÖÁÎÒÃǺóÀ´,ͬѧ¼ä´òÕкô,¾­³£¾ÍÊÇ˵,"hi,Äã×òÌìͨÏüÁËû"
ÔÙÒ»´Î
ÔÚÍø°ÉÎÒ¿´µ½×ÀÃæÉÏÓиöÐÂÓÎÏ·
½øÈ¥ÍæÁËÒ»»áºó˵:jd,À´¿´£¬Õâ¸öÓÎÏ·²»´í°¡
ËûƯÁËÒ»ÑÛ,¶ÔÎÒ˵,Õâ¸öÊÇ´«ÆæÈö,ÎÒÒ»¸öÐÇÆÚǰ¾ÍÍæ¹ýÁË
ÄǸöʱºò´«Ææ²Å¹«²âÒ»¸öÔÂ
¶øÎÒÃÇ»ù±¾É϶¼ÊÇÔÚÒ»ÆðÍæÓÎÏ·
ËûʲôʱºòÍæ¹ý´«Ææ¶øÎÒ²»ÖªµÀÁË?ÉñÁË

ÔÚµ±ryÖÐ,ÎÒ¼Ó¹ýºÃ¼¸¸öÕ½¶Ó
ʵÁ¦×îÇ¿µÄÒ»¸öÊÇ???
±§Ç¸,ÍüÁË,ÕæÊǶԲ»Æð
²»¹ý¶Ó³¤½Ð×öwind
ËûÃǸøÁËÎҺܴó°ïÖú
ËûÃǵÄÉñ×åºÜÇ¿´ó
¶øÎÒ,¾ÓÈ»Ñо¿³öÒ»ÖÖ³æ¶ÔÉñµÄ¶¨Ê½´ò·¨
ÇÀÔÚÉñ×åµç±ø³öÀ´,»òÕß,³öÀ´ºóҲûħ·¨µÄÇé¿öÏÂ
Ðγɾø¶ÔµÄ±øÁ¦ÓÅÊÆ,ÇÀÕ¼¶ÔÈ«¾ÖµÄ¿ØÖÆÈ¨
°ÑÉñѹÔÚÒ»¸ö¿óÏÂ
Èç¹ûËûû°´Ë«/µ¥±øÓª×î¿ì³öµç±øµÄ·½·¨,ÄÇËû¾ÍËÀÁË
ÔÚÕâ֮ǰ,Ò²ÍêÈ«¿ÉÒÔ·ÀסÉñµÄË«±øÓª¿ì¹¦

µÈÔÚÍøÉÏ´òÒ»Õóºó
magicÒ²ÂýÂý³É³¤ÆðÀ´

ÓÚÊǺô
ÍøÉϵÄ329Õ½¶Ó³ÉÁ¢

Ì«Íí,ÐÝÏ¢ÁË


ϲ¿·Ö
2ÄêµÄÐǼÊ
ÒòΪ´«ÆæµÄµ½À´
¶ø·ÅÆúÁËËü
×ßÏòÁËÍøÓÎ

Àà±ð£º ÎÞ·ÖÀà |  ÆÀÂÛ(0) |  ä¯ÀÀ(9752) |  ÊÕ²Ø
2006Äê01ÔÂ15ÈÕ 01:23:51

ºÜÎÞÁÄ,Óе㷳Ôê

ÊÖÉÏÒ»´ó¶ÑÊÂÇéÒª×ö

¹«Ë¾µÄ
¼æÖ°µÄ
°ïÅóÓѵÄ

ÿһ¸ö¶¼ÒѾ­ºÜ¼±ÁË

¿ÉÊÇ,×øÔÚµçÄÔǰ,»¹ÊÇÌá²»Æð¾¢

Ã÷ÌìÓÖÒª³öÈ¥ºÍ±ðÈË̸¼þÊÂÇé,̸³Éºó,ÓÖ»á¶àÒ»¼þÊÂ


ÒÔǰһֱÏëÕÒ¸ö¼æÖ°×ö
ÏÖÔÚ,ÖÕÓÚÓиö¼æÖ°Ö÷¶¯ÕÒÎÒÁË,±¨³ê¶¼¹»ÎÒµÄÒ»¸öÔµÄÉú»î¿ªÏúÁË
È´Ìá²»Æð¾¢À´,2¸öÐÇÆÚÁË,Ò»µã¶«Î÷¶¼Ã»×ö³öÀ´,Á¬¿ª¿ÚҪǮ¶¼²»ºÃÒâ˼Ҫ

ÔÚÎҵļƻ®ÖÐ,½ñÄêÊÇÒª¿ªÊ¼Ñ§cµÄ
À´ÉϺ£ºó,¼ÓÁ˸öpython
°´ÕÕÏÖÔÚµÄ×´¿ö,×î½üÕâ2¸öÔÂÊDz»¿ÉÄÜ¿ªÊ¼ÁË
ÄѵÀÊÇÀ´ÉϺ£ºó2,3¸öÔÂ,½Ó´¥µÄж«Î÷Ì«¶à,¹¤×÷µÄÌ«ÀÛ,ÓÖÒª½øÐÐÖÜÆÚÐÔÐÝÏ¢ÁË?

Àà±ð£º ÎÞ·ÖÀà |  ÆÀÂÛ(0) |  ä¯ÀÀ(9798) |  ÊÕ²Ø
2006Äê01ÔÂ14ÈÕ 04:54:38

×ö´íÁËÂð

ÎÒ˵¡¡ÕâЩʱðÎÊÎÒ£¬ÎÒÃÇÒѾ­Ã»¹ØÏµÁË£¨ËµÕ⻰ʱ£¬ÎÒÕýÔÚÉÏËýµÄºÅ£¬´ò¹Ö×öÈÎÎñ£©
Ëý˵¡¡ÄÇÄãÔõô²»°ÑÎÒ´ÓqqÖÐɾµô
ÎÒÈö»Ñ¡¡ÒѾ­É¾ÁË
Ëý˵¡¡É¾ÁËÎÒÃÇÔõô»¹ÄÜ˵»°
ÕâʱÎÒ˵ÁË¿ÉÄÜ»áÁîÎÒÒ»±²×ÓÄѹýµÄÒ»¾ä»°¡¡qqÖУ¬ÊÇ¿ÉÒÔºÍİÉúÈË˵»°µÄ
ËýÒ»Éù²»Ï죬ÏÂÏßÁË

´ÓС£¬ÎÒ¶¼ÈÏΪ×Ô¼ºÊǸöºÜºÃµÄÈË£¬¿É½¥½¥µÄ£¬ÎÒÈ´·¢ÏÖ²¢²»ÊÇÕâÑù
Ò»Ö±ÒÔÀ´£¬ÎÒ¶¼Å¬Á¦ÈÃÖÜΧµÄÈËÒòΪÎÒ¶ø¸ßÐË£¬¿ìÀÖ£¬ÌرðÊÇÎÒµÄÇ×ÈËÃÇ
¿ÉÊÇ£¬Í»È»·¢ÏÖ£¬ÎÒ´ø¸øËûÃǵĵ£ÓÇ¡¢ÉËÐÄ¡¢Äѹý£¬Ô¶´óÓÚ¿ìÀÖ
ÎÒ´íÁËÂ𣬴íÔÚÄÄÀïÁË£¿

Àà±ð£º ÎÞ·ÖÀà |  ÆÀÂÛ(0) |  ä¯ÀÀ(9879) |  ÊÕ²Ø
2006Äê01ÔÂ11ÈÕ 21:10:35

Ðã˪·òÆÞÉú»îÒ»°ÙÎÊ£¨Ä£·Â»ðÓ°ÈÌÕß°É£©

ÈËÎï½éÉÜ£º×Ï´¨Ð㣨¹âÃ÷µÛ¹úԪ˧ÁÖ·ãµÕËԶ¶«µÄ¹âÃ÷Íõ£¬×Ï´¨Èý½ÜÖ®Ò»£©
    Á÷·ç˪£¨Á÷·çÊ®×Ö¾üԪ˧£¬×ݺá´ó½£¬Ê®Äê²»°Ü£©
    ×÷Õߣ¨Ã»ÊÂ×öÀ´ÕÒµãÀÖ×Ó£©
±¾ÎÄ´¿Êôºú˵°ËµÀ£¬Èç¹ûÓÐʧÀñÖ®´¦£¬Çë´ó´ó²»Òª¼û¹Ö£¬Ð»Ð»¡£
1£¬ÇëÎʶþλ×ðÐÕ´óÃû
Ð㣺¡°......£¨²»Ë¬£¬¾ÓÈ»²»ÖªµÀÖ÷½ÇµÄÃû×Ö£¿£©¡±
˪£¨Î¢àÁ£©£º¡°¹«Ö÷µÄÐÕÃû£¬ÄÜËæ±ã¸æËßÄãÂ𣿡±
˪Ӧ¸Ã˵:·ÅËÁ!
2£¬ÇëÎʶþλµÄÄêÁä
Ðã(àÖ¹¾£©£º¡°ÎÊÎÒÀÏÆÅµÄÄêÁ䣿ÄãС×ÓÏë¸ÉÂ𣿡±
˪£º¡°Äã²Â²Â£¿¡±
×÷Õߣº¡°ËãÁË£¬²ÂÄãµÄÄêÁäÓÐΣÏÕÐÔ¡£¡±

3£¬ÇëÎʶþλµÄÐÔ±ð
Ð㣺¡°......¡±
˪£º¡°......¡±
×÷:¡°...¶÷.ÏÂÌâ.ÏÂÌâ......[ËäÈ»ÊÇ·Ï»°,µ«ÊÇÄãÃÇÒ²ÒªºÏ×÷µãÂï] ¡±

4£¬ÇëÎʶþλ×ÔÈÏΪÐÔ¸ñÔõÑù£¿
Ð㣺¡°ÎÒ£¿±ÉÈ˲Ÿ߰˶·£¬Ñ§¸»Îå³µ£¬Óо­ÌìγµØÖ®²Å£¬¿ï·öÓîÖæÖ®Ö¾......
(×÷ÕߣºÎÒ¶®ÁË£¬°ÝÍÐÄúÉÙ˵µã°É¡££©¡±
˪£º¡°ÎÒ»¹Ëã¸öÎÂÈáÌåÌùµÄÅ®ÖÐÕÉ·ò°É£¨Ð㣺¡°Å®ÖÐÕÉ·òÊÇûµÄ˵£¬ÎÂÈáÌåÌù£¿°¦£¬ÎÒÕâ±²×ÓÊÇûָÍûÏíÊÜÁË¡£¡±£©

5£¬Äú¾õµÃ¶Ô·½µÄÐÔ¸ñ£¿
Ð㣺¡°°¡¹þ¹þ£¬ÎÒ·òÈ˵±È»ÊÇÐØ»³´óÖ¾£¬¸¹Òþ»úı£¬ÎÄèºÎäÂÔ£¬ÎÞËù²»Í¨......£¨×÷Õߣº¡°ÎÒÓ¦µ±ÎüÈ¡½Ìѵ¡£¡±£©
˪£º¡°ºÜÌåÌù£¬ºÜÌåÌù£¨Ð㣺¡°Ð»Ð»·òÈ˿佱¡£¡±£©¡±

¡¡ 4 »Ø¸´£º[¸ãЦ]Ðã˪·òÆÞÉú»îÒ»°ÙÎÊ£¨Ä£·Â»ðÓ°ÈÌÕß°É£©
¡¡ 6,Á©È˵ÚÒ»´ÎÏàÓöµÄµØ·½
Ð㣺¡°°¡£¬ÎÒÃÇÏàÓöÔÚ~£¨»¹Ã»µÈËû»Ø´ð£¬Ò»ÈºFANSÅ­ºð£º¡°×÷Õߣ¬Õâô¾«²ÊµÄÕ½ÚÄãÄѵÀû¿´¹ý£¿£©¡±
˪£¨Á³ºì£©£º¡°ÎÒÃÇÏàÓöʵÔÚÊǷdz£Å¼È»¡£¡±

7£¬¶Ô¶Ô·½µÄµÚÒ»Ó¡ÏóÊÇʲô£¿
Ð㣺¡°¾ªÑÞ£¨ÆäʵӦ¸ÃÊǾ¯Ìè²Å¶Ô£¬µ«²»¸Ò˵³öÀ´£©¡£¡±
˪£¨Á³ºì£©£º¡°ÀÏ¡£¡±
×÷Õߣº¡°ÕæÊÇɱ·ç¾°¡£¡±

8£¬Ï²»¶¶Ô·½µÄÄÄÒ»µãÄØ£¿
Ð㣨ºÁ²»ÓÌÔ¥£©£º¡°È«²¿£¡¡±
˪£¨Óŵã³ÙÒÉ£¬ÌýÁËÐãµÄ»Ø´ðºó£©£º¡°¶÷£¬¿´À´Ö»ÓÐ˵ȫ²¿ÁË¡£¡±

9£¬ÌÖÑá¶Ô·½µÄÄÄÒ»µãÄØ£¿
Ð㣨һÕóÀ亹£©£º¡°Ã»ÓУ¡¾ø¶ÔûÓУ¡¡±
˪£¨Á¢¿Ì£©£º¡°·çÁ÷£¬Æ¶×ì¡£¡±

10£¬Äú¾õµÃÓë¶Ô·½ÏàÐÔºÃÂð£¿
Ð㣨²»ÄÍ·³£©£º¡°ÄãÊDz»ÊǹâÈÙÓÎÏ·´ò¶àÁË£¿¡±
˪£¨Ì¾¿ÚÆø£©£º¡°Ô©¼Ò£¡¡±

¡¡
5 »Ø¸´£º[¸ãЦ]Ðã˪·òÆÞÉú»îÒ»°ÙÎÊ£¨Ä£·Â»ðÓ°ÈÌÕß°É£©
¡¡ 4£¬ÇëÎʶþλ×ÔÈϹ¤×Ê´ýÓöÔõÑù£¿
Ð㣺¡°....Ô¶¶«¾­¼Ã²»¾°Æø°¡¡±£¨»ðÉÏÀ´ÁË£¬Äĺø²»¿ªÌáÄĺø£©

˪£º¡°°¢ÐãÓжÎʱ¼äÊÕÈë²»´í£¬ºóÀ´²»Öª»¨ÄÇÀïÈ¥ÁË£¬ÇëÎÊÄãÖªµÀÄÇλ˽¼ÒÕì̽ÓÐÃûÆø£¿¡±

£¨×÷£ºÄÐÈËÄÅ£¬°¦£¡£©

¡¡


6 »Ø¸´£º[¸ãЦ]Ðã˪·òÆÞÉú»îÒ»°ÙÎÊ£¨Ä£·Â»ðÓ°ÈÌÕß°É£©
¡¡ ÇëÎʶþλ¶ÔδÀ´ÓÐʲô´òËã?

Ðã:»ØÔ¶¶«³Ô³ÔºÈºÈ,ÖÖÖÖÌï¡¢¿´¿´ÔÓÖ¾°²¶ÈÓàÉú!(ÄѵÀ»¹ÒªÎÒÔÚ´øÐã×ÖÓªÔÙÈ¥ºÍħÉñ»Ê´òÂ𣿣©

˪£º¼Þ¼¦Ë漦£¬ËäȻԶ¶«ÇîÁ˵㵫ÊÇ×ö¸öÍõºóÒ²²»´í¡£²»¹ýÔÓÖ¾¾ø¶Ô²»¿ÉÄܸøËû¿´£¡

¼ÇÕߣºÎªÊ²Ã´£¿

˪£º·Ï»°Ë­¶¼ÖªµÀËûÖ»¿´PLAYBOY£¡

¼ÇÕߣºÕæµÄ£¨Ð¡Éù£©

Ðã£ºÕæµÄ£¨Ð¡Éù£©


11£¬»¥ÏàÔõô³Æºô¶Ô·½
×÷Õߣº¡°°¡£¬ÎÒÏëÐãÒ»¶¨³ÆËª¡®°¢Óꡯ˪һ¶¨º°Ðã¡®Èý¸ç¡¯°É¡£¡±
Ð㣺¡°......ÄÇÊÇÎÒÃǽá»éǰ¡£¡±
×÷Õߣº¡°ÄÇÏÖÔÚÄØ£¿¡±
˪£º¡°ÕâÊÇÄãÄÜÌýµÄÂ𣿡±

12£¬Ï£Íû±»¶Ô·½Ôõô³ÆºôÄØ£¿
Ð㣺¡°Èý¸ç¡£¡±
˪£º¡°°¢Óê¡£¡±
×÷Õߣº¡°ßÀ£¿ÄãÃÇÆ½Ê±²»ÊÇÕâÑù½Ð¶Ô·½µÄÂ𣿡±
Ð㣺¡°......Õâ¸öÄãºÃÏóÎʹýÁË¡£¡±
×÷Õߣº¡°ÏÂÒ»ÌâÏÂÒ»Ìâ¡£¡±




13£¬Èç¹ûÓö¯Îï±ÈÓ÷£¬Äã¾õµÃ¶Ô·½ÊÇ£¿
Ð㣨´óÉù£©£º¡°Ììʹ£¡¡±
×÷Õߣº¡°ÌìʹÊǶ¯ÎïÂ𣿡±
Ð㣨ÄÓÄÓÍ·£¬Ð¡Ð¡Éù£©£º¡°ÄǾÍÉóÅÐÌìʹºÃÁË¡£¡±
˪£º¡°......¡±



14£¬Èç¹ûÒªËÍÀñÎ»áËÍʲô£¿
Ð㣺¡°½«Õû¸ö´ó½×÷ΪÀñÎ¡±
˪£¨º¬Ðߣ©£º¡°ÎÒµÄÐľ͹»ÁË¡£¡±
×÷Õߣº¡°¿´À´»¹ÊÇÅ®º¢±È½Ï´¿½à¡£¡±



15£¬×Ô¼º´Ó¶Ô·½ÄÇÊÕµ½µÄ×îºÃÀñÎï¡£
Ð㣨µÍÍ·£©£º¡°Æäʵ~Æäʵ¾ÍÊÇËýÕâ¸öÈË¡£¡±
˪£¨Î¢Ð¦£©£º¡°ËûËÍÎҵĵ¶ÇÊ¡£¡±
×÷Õߣº¡°Äк¢ºÍÅ®º¢¶ÔÀñÎïµÄ¸ÅÄî²»Ò»Ñù¡£¡±



16£¬×îÏëÊÕµ½Ê²Ã´ÀñÎïÄØ£¿
Ð㣨àÖ¹¾£©£º¡°ÒªÊÇËýÄÜΪÎÒ×ö·¹£¬Ï´Ò·þ~~£¨×÷Õߣº¡°¿´À´ÄãÕâ±²×ÓûϣÍûÁË¡£¡±£©¡±
˪£¨Á³ºì£©£º¡°Ö»ÒªÊÇËûË͵ģ¬ÎÒ¶¼Ï²»¶¡£¡±
×÷Õߣº¡°¿´À´ÓÐÈËÕæÊÇÉíÔÚ¸£Öв»Öª¸£¡£¡±



17£¬ÄúµÄȱµãÊÇ£¿
Ð㣺¡°¹þ¹þ¹þ£¬±¾¹âÃ÷ÍõÄÄÓÐʲôȱµã......£¨×÷ÕßÁ¬Ã¦º°¡°CUT£¡¡±)
˪£º¡°ËäÈ»ºÜŬÁ¦¿ËÖÆ×Ô¼º£¬µ«»¹Êdz£³£È̲»×¡ÒªÉúÆø£¨×÷Õߣº¡°555£¬ÕâôƯÁÁµÄÆÞ×ӵįøÎÒÒ²ÏëÊÜѽ¡£¡±Ð㣺¡°¶÷£¿¡±£©¡±




18£¬ÄúµÄʲôÐÐΪ»áÈöԷ½²»¿ì£¿
Ð㣨Ãò½ô×ì´½£©
×÷Õߣº¡°ÔõôÁË£¿¡±
Ð㣨ÄÚÐĶÀ°×£©£º¡°ÄÌÄ̵ģ¬ÒªÊÇÈÃÀÏÆÅÖªµÀÎÒÈ¥¹äºìµÆÇø¡¢ºÍ°×´¨ºÈ¾Æ¡¢ÓëÊ¿±ø¶Ä²©£¬ÎÒ»¹Òª²»Òª»îÁË£¡¡±
˪£¨²»ºÃÒâ˼£©£º¡°ÎÒÏë~¾ÍÊÇÈÝÒ×ÉúÆø°É¡£¡±




19£¬¶Ô·½×öµÄʲôÊÂÇé»áÈÃÄã²»¿ì£¿
Ð㣺¡°......£¨×÷Õߣº¡°ÎÒ¶®ÁË£¬ÕâÌâÄã²»Óûش𡣡±£©¡±
˪£º¡°Ö»ÒªËû²»È¥Ðï¾Æ¡¢¶Ä²©¡¢¹äºìµÆÇø¡¢Ê²Ã´¶¼ÐУ¬°¡£¬»¹Óв»ÄÜÈÃËûµ¥¶ÀÈ¥µÛ¶¼¡£¡±




20£¬ÄãÃǵĹØÏµµ½Á˺ÎÖ̶ֳȣ¿
Ð㣨գգÑÛ¾¦£©£º¡°ÄãËµÄØ£¿¡±
˪£¨ÄªÃûÆäÃ£º¡°µ±È»ÊÇ·òÆÞÀ²£¿¡±
×÷Õߣ¨º¹£©£º¡°Ò»¸öװɵ£¬Ò»¸öÕæÊǵ¥´¿£¬¼òÖ±ÊǾøÅä¡£¡±




21£¬³õ´Î¶À´¦ÊÇÔÚÄÄÀ
Ð㣺¡°¾ÍÊÇÔÚÎÒÃÇÏàÓöµÄСÎÝÀÄÇʱÎÒÔÛ»ØÄÇô¾ý×ÓÄØ£¿£©¡£¡±
˪£¨Ð¦£©£º¡°ÄÇʱÎÒ»¹ÒÔΪËûÊÇ´óÊåÄØ¡£¡±
Ð㣨¼«¶È²»Ë¬£©£º¡°¿È¿È£¡¡±




22£¬ÄÇʱÁ½È˼äµÄÆø·Õ£¿
Ð㣺¡°Óеã½ôÕÅ¡£¡±
˪£º¡°¶÷£¬»¥ÏàÌá·À¶Ô·½£¬ÐÄÀí¶¼ÓÐ¹í¡£¡±




23£¬ÄǴνøÕ¹µ½ºÎÖֵز½£¿
Ð㣺¡°¾ÍÊÇ»¥ÔùÀñÎï°É£¬Ã»Ê²Ã´À²¡£¡±
˪£¨µÍÉù£©£º¡°È˼ҿÉÊÇÒ»¼ûÖÓÇéµÄ˵¡£¡±
Ð㣨ת¹ýÁ³È¥£©£º¡°Äã˵ʲô£¿ÎÒÌý²»¼û¡£¡±



24£¬ÄÇ´ÎÒÔºó¾­³£Ô¼»áµÄµØ·½£¿
Ð㣺¡°¶¼ÔÚæ×Å´òÕÌ£¬Ã»¿ÕÔ¼»á¡£¡±
˪£º¡°Ö»ºÃÔÚÁ÷·ç¼ÒÓë×Ï´¨¼Ò̸ÅÐʱС¾Ûһϡ£¡±
×÷Õߣº¡°ÕâÑùµÄÁµ°®·½Ê½Ò²ÄÜÓнá¹û£¬¿´À´°®ÇéÊÇΰ´óµÄ¡£¡±



25£¬ÊÇÄÄÒ»·½¸æ°×µÄ£¿
Ð㣺¡°¹þ¹þ¹þ£¬µ±È»ÊDZÉÈËÀ²¡£Äãû¿´ÎÒÏòËýÇó»éÕâһĻÂ𣿡±
˪£¨Á³ºì £©£º¡°ÆäʵÈ˼ÒÔç¾ÍÏòËû±í°×¹ýÐÄÒâÁË£¬Ëû¾ÓÈ»»¹ÒªËµÊ²Ã´¼Ò³ð¹ýºÞÀ²£¬¾üÈËÖ°ÔðÀ²µÄ·Ï»°£¬Ã÷°Ú×ÅÊdzԶ¨È˼ÒÁË£¡¡±



26£¬ÓÐÁ˶Է½£¬¸Ð¾õ×î´óµÄÐÒ¸£ÊÇʲô£¿
Ð㣺¡°´ÓÄÇÒÔºó£¬ÎÒÔÚÔ¶¶«¾Í²»ÔÙÊǹÂÉíÒ»ÈËÁË¡£¡±
˪£º¡°´ÓÄÇÒÔºó£¬ÎÒÔÚÀ¶³Ç¾Í²»ÔÙÊǹ¾ü·ÜÕ½ÁË¡£¡±
×÷Õߣ¨¸Ð¶¯£©£º¡°ÕâÊÇÖ»Óв»ÊÀÃû½«²Å˵µÃ³öµÄ»°¡£¡±



27£¬ÄúÓжమ¶Ô·½£¿
Ð㣺¡°±ÈÔ¶¶«È«²¿µÄÁ¸Ê³»¹Òª¶à£¨×÷Õߣº¡°Õâ~¾¿¾¹ÊǺܶ໹ÊǺÜÉÙÄØ£¿¡±£©¡£¡±
˪£º¡°±È°®Ê®×Ö¾ü»¹Òª¶à£¨×÷Õߣº¡°²»À¢ÊÇ´ó½µÚÒ»Ãû½«¡£¡±£©¡£¡±



28£¬ÄÇô£¬ÄãÈÏΪÄãµÄ°®ÄÜÓÀÔ¶³ÖÐøÏÂÈ¥Âð£¿
Ð㣺¡°ÄÜ£¡¡±
˪£º¡°ÄÜ£¡¡±
×÷Õߣº¡°²»¹ÜСÊÂÉÏÄÖʲô±ðŤ£¬Õ⻹ÊÇÖµµÃ²É·ÃµÄÄ£·¶·ò¸¾¡£¡±



29£¬Èç¹û·¢ÏÖ¶Ô·½ÓбäÐĵļ£Ï󣬻áÔõô×ö£¿
Ð㣺¡°......¿ÖÅ»áÈ¥ºÈ~ºÈÖࣨ×÷Õߣº¡°¶÷£¿¡±£©
˪£¨Ì§ÆðÍ·£¬¼á¶¨µØ£©£º¡°»á¿Þ¡£¡±
Ð㣺¡°·ÅÐİɷòÈË£¬ÕâÊDz»¿ÉÄܵ쬹þ¹þ¹þ......¡£¡±



30£¬ÄÜÔ­Á¶Է½µÄ±äÐÄÂð£¿
Ð㣺¡°......¡±
˪£º¡°......¡±
Ò»¸öκ͵ͳÁµÄÉùÒôµÀ£º¡°ÏÈÉú£¬ÄãÊÇ·ñÏëÆÆ»µÎÒÈýµÜÃõÄÐÒ¸£¼ÒÍ¥ÄØ£¿¡±ÓÖÓÐÈËÀäЦµÀ£º¡°¿´À´ÎÒµÄÏܱø¶Ó½ñÌìÓÖÓлî¸ÉÁË¡£¡±



31£ºÈç¹û½«À´Òªº¢×Ó£¬Ï²»¶Äк¢»¹ÊÇÅ®º¢£¿
Ð㣺Äеģ¬ÏñÎÒ£¬·çÁ÷ÙÃÙΣ¬È˼ûÈ˰®¡£
˪£ºÅ®µÄ£¬ÏñÎÒ£¬Çã¹úÇã³Ç£¬ÎÂÈáÌåÌù¡£
×÷Õߣº¿ñº¹......



32£ºÈç¹û½«À´ÓÐÁ˺¢×Ó£¬Ï£ÍûËû×öʲôְҵ£¿
Ð㣺µ±±ø¡££¨¼á¶¨µÄ˵£©
˪£º¾ø¶Ô²»µ±±ø£¬Õâ¼ÒÎÒ˵ÁËË㣡



33£º¶Ô·½×öµÄÄǼþÊÂ×îÈÃÄã¸Ð¶¯£¿
Ð㣺»¹ÓÃ˵Â𣿾ÍÎÒÒª»ØÔ¶¶«´òÕÌÄǶÎߣ¡ÎÒ»ØÈ¥ÒÔºó¸Ð¶¯µÄ¿ÞÁËÈýÌ죡
˪£º²ÅÈýÌ죿ºß£¡ÄÇôÉÙ£¬¿´À´Äã°®ÎÒ»¹²»¹»¶à¡£
Ð㣺......
×÷Õߣº......



34£º×î°®³Ô¶Ô·½×öµÄÄǵÀ²Ë£¿
Ð㣺......£¨Ã²ËÆÃ»¸øÎÒ×ö¹ý²ËµÄÑù×Ó£©
˪£º......£¨Ð¡ÑùµÄ£¬»¹»á×÷²Ë£¿¶¼Ã»¸øÎÒ×ö¹ý£¬¿´ÎÒ»ØÈ¥ÔõôÊÕʰÄ㣡£©



35£º¾õµÃ¶Ô·½×îÐèÒª¸Ä½øµÄµØ·½£¿
Ð㣺ûÓÐûÓУ¬ÎÒÀÏÆÅʮȫʮÃÀ......£¨×÷ÕߣºÔõôһ±ß˵»¹Ò»±ßðÀäº¹ÄØ£¿£©
˪£º£¨ÐßɬµÄ˵£©¶÷£¬Ëûʲô¶¼ºÃÀ²¡£Ö»ÒªËûÄÜÔÙ¼õ¼õ·Ê£¬ÉÙ³öÈ¥¹í»ìµã£¬ÉÙºÈµã¾Æ£¬¶àÅãÅãÎÒ£¬²»¿´±ðµÄÃÀÅ®£¬¶à׬µãÇ®£¬¶à¸øÎÒÂòµãÀñÎ¶à......
×÷ÕߣºCUT£¡ÏÂÒ»ÎÊÌ⣡£¨º®......ÔÙÈÃËý˵ÏÂÈ¥£¬ÐãÒ»¶¨»áµ±³¡Ô×ÁËÎÒ£¡£¡£©



36£¬Èç¹û¶Ô·½Ô¼»áʱ³Ùµ½Ò»Ð¡Ê±ÒÔÉÏ£¬Äã»ØÔõô°ì£¿
Ðã£¨Ì¾Æø£©£º¡°ÕâÊdz£ÓеÄÊ£¬Ì¸ÅÐÍùÍù²»ÄÜ˳Àû½øÐС£¡±
˪£¨¿ªÐĵØÐ¦×Å£©£º¡°Ã»¹ØÏµ£¬·´Õýÿ´Î¶¼ÊÇËûµÈÎÒ¡£¡±



37£¬¶Ô·½×îÈÃÄãÎÞ·¨¾Ü¾øµÄÉñÇéÊÇ£¿
Ð㣨ÏÝÈë»ØÒäÀµ­µ­µØÐ¦×Å£©£º¡°Èö½¿ºÍ³Ô´×µÄÑù×Ó¡£¡±
˪£¨Á³ºìÁ˺죩£º¡°¾ÍÊÇËûÏÖÔÚÕ⸱¹íÑù×Ó¡£¡±



38£¬ÄúÔøÊÔͼÏò¶Ô·½Èö»ÑÂð£¿
Ð㣨ÓеãÞÏÞΣ©£º¡°°¡£¬ÎÒÏë¾ÍËã˵ûÓÐҲûÈËÏàÐŰɡ£¡±
˪£¨ÓеãÉ˸У©£º¡°ÎÒΨһһ´Î¶ÔËû˵»Ñ£¬¾ÍÊÇÔÚ×îÖÕ¾öÕ½µÄǰҹ¡£¡±£¨×÷Õߣº¡°Î¹Î¹£¬ÄãÄѵÀÒѾ­Íü¼ÇÔÚСľÎÝÀïµÄºú˵°ËµÀÁËÂ𣿡±Ò»±ú·º×ÅÒø¹âµÄÍäµ¶ÇÄÇļÜÉÏÁË×÷ÕߵĴóÍÈ¡££©



39£¬ÄãÈÏΪÄãÉÆÓÚÈö»ÑÂð£¿
Ðã£¨ÆÆÌì»ÄµØÀÏÁ³Ò»ºì£©£º¡°ÆäʵÎÒÔçÖªµÀ×Ô¼ºÓÀԶѧ²»»á˵»ÑÁË¡£¡±
˪£¨Ð¦Ó¯ÓªµØ£©£º¡°ËûֻҪһ˵»Ñ£¬¾Í»áÔÚÁ³Éϱ©Â¶³öÀ´ÄØ¡£¡±
£¨Ò»¸öÉí´¦Ô¶¶«±ß¹ØµÄÅ®½«¾üÓеãÉ˸еØ×ÔÑÔ×ÔÓïµÀ£º¡°ËûÔÚÎÊÎÒ½èǮʱ¿ÉÊÇÉàÍ·ÏñÍ¿ÁËÈó»¬ÓÍÒ»Ñù¡£¡±£©



39£¬ÄãÈÏΪÄãÉÆÓÚÈö»ÑÂð£¿
Ðã£¨ÆÆÌì»ÄµØÀÏÁ³Ò»ºì£©£º¡°ÆäʵÎÒÔçÖªµÀ×Ô¼ºÓÀԶѧ²»»á˵»ÑÁË¡£¡±
˪£¨Ð¦Ó¯ÓªµØ£©£º¡°ËûֻҪһ˵»Ñ£¬¾Í»áÔÚÁ³Éϱ©Â¶³öÀ´ÄØ¡£¡±
£¨Ò»¸öÉí´¦Ô¶¶«±ß¹ØµÄÅ®½«¾üÓеãÉ˸еØ×ÔÑÔ×ÔÓïµÀ£º¡°ËûÔÚÎÊÎÒ½èǮʱ¿ÉÊÇÉàÍ·ÏñÍ¿ÁËÈó»¬ÓÍÒ»Ñù¡£¡±£©



40£¬ÄÜÔ­Á¶Է½Å¼¶ûµÄ»ÑÑÔÂð£¿
Ð㣨¿ªÐĵØÐ¦ÆðÀ´ÁË£©£º¡°ÎÒ²»ÄÜÔ­ÁÂËýΨһµÄ»ÑÑÔ¡£¡±£¨×÷ÕßÍÈÉϵĵ¶×ÓĦ²ÁÁËһϡ££©
˪£¨à½ÆðС×죩£º¡°ÊÇÂð£¿ÄÇÎÒÖ»ÄÜÔ­ÁÂÄãµÄÒ»¸ö»ÑÑÔ¡£¡±



41.Õâ¸ö¼Òƽ³£¶¼ÊÇ˭˵ÁËË㣿
Ð㣺µ±È»ÊÇÎÒÀ²
˪£ºàÅ£¿
Ð㣺ÎÒÊÇ˵Äã²»ÔÚ¼ÒµÄʱºò¡££¨×÷Õߣº¡­¡­¡­¡­£©



42£¬Óг³¼Ü»ò²»ºÍÂð£¿
Ð㣺¡°×Ü»¹ÊÇ»áÓеÄÀ²¡£¡±
˪£¨»ØÒäÖУ©£º¡°¶÷£¬ºÃÏóÕâôһ˵»¹Í¦¶àµÄ£¨Í»È»¾¯¾õÆðÀ´£¬Ð¦µÀ£º¡°¹þ¹þ¹þ£¬¿ªÍæÐ¦¶øÒÑ¡£¡±×÷Õߣº¡°ÔõôºÍÐãÒ»¸öÑù×Ó£¬ÄѵÀÊÇ·òÆÞÏࣿ¡±£©¡£¡±



43£¬¶¼ÊÇЩʲôÑùµÄÕù³³ÄØ£¿
Ð㣺¡°......²»¼ÇµÃÁË¡£¡±
˪£º¡°......ÎÒÒ²ÍüÁ˶¼Êdz³Ê²Ã´ÁË£¬ºÃÏó×î½üÒ»´ÎÊÇ·¢ÏÖÁËËû²ØÔÚµ¶±úÀïµÄ˽·¿Ç®°É¡£¡±
Ð㣨ÞÏÞΣ©£º¡°¿È¿È£¬·òÈË£¬Ð¡ÐÄÖÐÁËËûµÄ¼é¼ÆÑ½¡£¡±



44£¬Ö®ºóÈçºÎºÍºÃÄØ£¿
Ð㣨Ñü°åֱͦ£©£º¡°ºßºßºßºß~µ±È»ÊÇ~ÎÒÖ÷¶¯µÀǸ¡£¡±£¨×÷ÕßһͷÔÔµ¹Ôڵء££©
˪£¨Ð¦£©£º¡°Äǵ±È»À²£¬¶¼ÊÇËû²»¶ÔÂÄѵÀËû²ØË½·¿Ç®»¹ÊÇÎÒµÄ´í£¿¡±£¨Ð㣺¡°¿È¿È¿È¿È¡£¡±£©
×÷Õߣº¡°µÄÈ·ÊÇÄ£·¶·ò¸¾¡£¡±



45£¬ºÍºÃºó£¬Ï´γ³¼Ü»¹»á·­¾ÉÕÊÂð£¿
Ð㣺¡°ÎÒ¿´ÊDz»¿ÉÄܵġ£¡±
˪£º¡°Êǰ¡£¬´ó¼Ò´òÕ̶¼´òµÃ½¹Í·ÀöîÁË£¬Ë­»¹ÓÐÐÄ˼¼ÇÕâô¶àСʰ¡¡£¡±
×÷Õߣº¡°¿´À´ÈÃÅ®ÐÔ»ñµÃ¶ÀÁ¢µÄÌìµØÒ²ÊÇÓкô¦µÄ¡£¡±



46£¬Ê²Ã´Ê±ºò»á¾õµÃ×Ô¼ºÊDZ»°®×ŵģ¿
Ð㣺¡°Ëýÿ´Î¼ûµ½ÎÒʱ£¬¶¼ÏñÊǺܾªÏ²µÄÑù×Ó£¬ÓÐʱ»¹»áÓÐЩ³ö¸ñµÄÐж¯¡£¡±
˪£º¡°Ëûÿ´Î¼ûµ½ÎÒʱ£¬¶¼ºÃÏóÊÇβ»¹ØÐĵÄÑù×Ó£¬¿É²»Êǰѿ§·È´ò·­¾ÍÊǰÑÒÎ×Óõßµ¹ÁË¡£¡±


47£¬ÄúµÄ°®Çé±í´ï·½Ê½ÊÇʲô£¿
Ð㣺¡°Óе½ÊÇÓкܶàÀ²£¬²»¹ýÄãÕæµÄºÜÏëÌýÂ𣿡±£¨×÷ÕßÍÈÉϵĵ¶×ӳ鶯ÁËһϡ££©
˪£¨µÍÏÂÍ·È¥£©£º¡°ÎÒ³ýÁËÿ´ÎºÍËû·Ö¿ªÊ±Ç×ÎÇËûÒÔÍ⣬ºÃÏó¾ÍʲôҲ²»»áÁË¡£¡±£¨×÷ÕßÏÛĽµÃÑ۷Žð¹â£¬Á¬ÍÈÉϵĵ¶×Ó¶¼ÍüÁË¡££©


48£¬ÓÐûÓе£ÐĶԷ½ÒѾ­²»°®×Ô¼ºµÄʱºò£¿
Ð㣺¡°Ã»ÓС£¡±
˪£º¡°......ûÓУ¬ÄãÄܲ»ÄܱðÎÊÕâÖÖ¹ý·ÖµÄÎÊÌ⣿¡±£¨Ò»ÈºFANS¶Ô×÷ÕßÅ­Ä¿¶øÊÓ¡££©



49£¬Äú¾õµÃÓë¶Ô·½ÏàÅäµÄ»¨ÊÇ£¿
Ð㣺¡°À°Ã·¡£¡±£¨×÷Õߣº¡°ÕâºÃÏóÓ¦¸ÃÊÇÎÒÃǵıȷ½°É£¬Äã¿ÉÊÇËýÕÉ·òÒ®¡£¡±Ð㣺¡°ÔÚÕâ·½ÃæÃ»Óб¾ÖÊÇø±ð¡£¡±£©
˪£º¡°¶÷~¶÷~ÄǾͱù»¨ºÃÁË¡±£¨×÷Õߣº¡°ÄÇÊÇʲô¶«Î÷£¿¡±Ò»ÈºFANSÔÙ´ÎÅ­ºð£º¡°Ä㾿¾¹¶Áû¶Á¹ý¡¶×Ï´¨¡·Ñ½£¿¡±£©



50£¬Á©È˵ĹØÏµÒ»¿ªÊ¼Êǹ«¿ª»¹ÊÇ»úÃÜÄØ£¿
Ð㣺¡°ºÜÄÑ˵£¬ÎÒºÜÏë¸ø´ó¸ç¶þ¸çÒ»¸ö¾ªÏ²µÄ¡£µ«¹À¼ÆÎÒ´ó¸çµÄÇé±¨Íø²»»á©¹ýÕâÃ´ÖØÒªµÄÊÂÇ飬¶þ¸çÒ²²»ÊÇɵ¹Ï¡£¡±
˪£º¡°ÎÒÕâ·½Ãæµ¹ÊÇÖªµÀµÄÈ˱ȽÏÉÙ£¬ÎÒµÄÁ½¸ö¸ç¸ç¶¼~¶÷~²»Ì«´ÏÃ÷£¬¾ü¶ÓÀïÓÖûÈ˸ҴòÌýÕâÊ¡£¡±





Àà±ð£º ÎÞ·ÖÀà |  ÆÀÂÛ(2) |  ä¯ÀÀ(9959) |  ÊÕ²Ø
2006Äê01ÔÂ10ÈÕ 18:16:02

j2sdkÔÚlinuxÉϵÄÅäÖÃ

°²×°j2sdk-1_4_2_02-linux-i586.bin£¨»òÆäËû°æ±¾¶¼ok£©
ÏÂÔØºó°²×°
______________________________________________________

ÅäÖû·¾³±äÁ¿
±à¼­/etc/profile ¼ÓÈëÏÂÃæ¾ä£º
PATH=/usr/j2se/bin £¨¸ÄΪÄã°²×°j2sdkµÄ·¾¶£©
JAVA_HOME=/usr/j2se £¨¸ÄΪÄã°²×°j2sdkµÄ·¾¶£©
CLASSPATH=/usr/j2se/lib/tools.jar:/usr/j2se/lib/dt.jar £¨¸ÄΪÄã°²×°j2sdkµÄ·¾¶£©
export PATH JAVA_HOME CLASSPATH

ÖØÐÂÆô¶¯Ê¹Ö®ÉúЧ

Àà±ð£º ÎÞ·ÖÀà |  ÆÀÂÛ(0) |  ä¯ÀÀ(10039) |  ÊÕ²Ø
2006Äê01ÔÂ10ÈÕ 14:01:36

vi¡¡editor

ÈκÎÓû§×î³£×öµÄÊÂÒªÊý´´½¨ºÍ±à¼­Îļþ£¬°üÀ¨Îĵµ¡¢±¨¸æºÍÎÄ
¡¡¡¡¡¡×Ö£¬vi£¨Visual¡¡Editor£©ÊÇÒ»¸öÓÐЧ¶øÏà¶Ô¼òµ¥µÄȫӫĻ±à¼­£¬
¡¡¡¡¡¡Ê¹ÓÃvi£¬Ö»Òª¼ÇÖøÉÙÁ¿»ù±¾Ö¸Á¾Í¿ÉÒÔ¿ªÊ¼Æð²½£¬ÔÙѧϰÆäËû
¡¡¡¡¡¡¸ü¸´ÔÓµÄÖ¸Á¶øÏµÍ³¹ÜÀíÔ±ÔòʹÓÃvi¹ÜÀíºÍά»¤ÏµÍ³¡£

¡¡¡¡¡¡viÊǰüº¬ÔÚSCO¡¡System¡¡V×÷ҵϵͳÖеÄȫӫĻ±à¼­£¬Æäʵ£¬vi²»
¡¡¡¡¡¡¶À´æÔÚì¶SCO¡¡UNIXÄÚ£¬¶øÊÇUNIXÄÚÏ൱ÆÕ¼°µÄÎļþ±à¼­¡£¿ª
¡¡¡¡¡¡ÆôÎļþ

¡¡¡¡¡¡ÎÞÂÛÊÇ¿ªÆôеµ»òÐ޸ľÉÎļþ£¬¶¼¿ÉÒÔʹÓÃvi£¬ËùÐèÖ¸ÁîΪ£º

¡¡¡¡¡¡$¡¡vi¡¡filemane

¡¡¡¡¡¡Èç¹ûÎļþÊÇÐµģ¬¾Í»áÔÚÓ«Ä»µ×²¿¿´µ½Ò»¸öÐÅÏ¢£¬¸æËßÓû§ÕýÔÚ
¡¡¡¡¡¡´´½¨ÐÂÎļþ¡£Èç¹ûÎļþÔçÒÑ´æÔÚ£¬viÔò»áÏÔʾÎļþµÄÊר¥ËÄÐУ¬
¡¡¡¡¡¡Óû§¿ÉÔÙÓÃÓα꣨cursor£©Òƶ¯Îļþ¡£

¡¡¡¡¡¡This¡¡is¡¡what¡¡vi¡¡looks¡¡like.

¡¡¡¡¡¡¡«

¡¡¡¡¡¡¡«

¡¡¡¡¡¡ÉÏÃæÊÇÒ»¸ö¾­vi¿ªÆôµÄÄ£ÄâÎļþ£¬Ò»ÐпªÊ¼´¦µÄ²¨Õۺţ¨¡«£©±í
¡¡¡¡¡¡Ê¾ÎļþµÄ½áβ¡£Ö¸Áî̬Óë²åÈë̬

¡¡¡¡¡¡viʹÓÃÁËÁ½ÖÖ״̬£¬Ò»ÊÇÖ¸Áî̬£¨Command¡¡Mode£©£¬ÁíÒ»ÊDzåÈë
¡¡¡¡¡¡Ì¬£¨Insert¡¡Mode£©¡£µ±vi´¦ì¶Ö¸Áî̬ʱ£¬´òÈëµÄÄÚÈÝ»áÊÓ×÷Ö¸Áî
¡¡¡¡¡¡À´½âÊÍ£»ÁíÒ»·½Ã棬µ±vi´¦ì¶²åÈë̬ʱ£¬¾Í¿ÉÒÔ´òÈëÕýÎÄ£¨text£©
¡¡¡¡¡¡¸øÎļþ¡£

¡¡¡¡¡¡´ó¶àÊýviÖ¸ÁîÊǵ¥×Ö·û£¬ÓɲåÈë̬¸Ä±äΪָÁî̬£¬Ö¸¡´Esc¡µ¼ü£»
¡¡¡¡¡¡¶øÓÉÃüÁî̬תΪ²åÈë̬£¬Ôò¿ÉÒÔʹÓÃÏÂÃæµÄ²åÈëÁֱ½Ó´òÈ룬
¡¡¡¡¡¡ÎÞÐèÔÙ°´¡´Return¡µ¼ü¡£

¡¡¡¡¡¡¡ªÖ¸ÁîiÔÚÓα괦²åÈëÕýÎÄ

¡¡¡¡¡¡¡ªÖ¸ÁîIÔÚÒ»ÐпªÊ¼´¦²åÈëÕýÎÄ

¡¡¡¡¡¡¡ªÖ¸ÁîaÔÚÓαêáá×·¼ÓÕýÎÄ

¡¡¡¡¡¡¡ªÖ¸ÁîAÔÚÐÐβ׷¼ÓÕýÎÄ

¡¡¡¡¡¡¡ªÖ¸ÁîoÔÚÓαêÏÂÃæÐ¿ªÒ»ÐÐ

¡¡¡¡¡¡¡ªÖ¸ÁîOÔÚÓαêÉÏÃæÐ¿ªÒ»ÐÐ

¡¡¡¡¡¡Òª¼ÇÖøÒ»µã£¬ÔÚ²åÈë̬´¦£¬²»ÄÜ´òÈëÖ¸Á±ØÐèÏȰ´¡´Esc¡µ¼ü£¬
¡¡¡¡¡¡·µ»ØÖ¸Áî̬¡£¼ÙÈô»§²»ÖªÉí´¦ºÎ̬£¬Ò²¿ÉÒÔ°´¡´Esc¡µ¼ü£¬²»¹Ü´¦
¡¡¡¡¡¡ì¶ºÎ̬£¬¶¼»á·µ»ØÖ¸Áî̬¡£

¡¡¡¡¡¡´æµµ¼°Í˳ö

¡¡¡¡¡¡ÔÚÐÞ¸ÄÎļþʱ£¬ÈçºÎ´æµµ¼°Í˳öÖ¸¶¨Îļþ¶¼·Ç³£ÖØÒª¡£ÔÚviÄÚ£¬
¡¡¡¡¡¡ÐÐʹ´æµµ»òÍ˳öµÄÖ¸Áîʱ£¬ÒªÏȰ´Ã°ºÅ£¨:£©£¬¸Ä±äΪָÁî̬£¬ÓÃ
¡¡¡¡¡¡»§¾Í¿ÉÒÔ¿´¼ûÔÚÓ«Ä»×óÏ·½£¬³öÏÖðºÅ£¨:£©£¬ÏÔʾviÒѾ­¸ÄΪָ
¡¡¡¡¡¡Áî̬£¬¿ÉÒÔ½øÐд浵»òÍ˳öµÈ¹¤×÷¡£

¡¡¡¡¡¡ÏÂÃæ¾ÍÊÇһЩÕâ·½Ãæ³£ÓõÄÖ¸Áî¡£

¡¡¡¡¡¡:q!·ÅÆúÈκθ͝¶øÍ˳övi£¬Ò²¾ÍÊÇÇ¿ÐÐÍ˳ö

¡¡¡¡¡¡:w´æµµ

¡¡¡¡¡¡:wq´æµµ²¢Í˳övi

¡¡¡¡¡¡:xÓëwqµÄ¹¤×÷Ò»Ñù

¡¡¡¡¡¡:zzÓëwqµÄ¹¤×÷Ò»Ñùɾ³ýÕýÎÄ

¡¡¡¡¡¡É¾³ý»òÐÞ¸ÄÕýÎͼÊÇÀûÓòåÈë̬£¬¹Ê´Ë£¬ÏÂÃæËùÌá¼°µÄÖ¸ÁîÖ»Ðè
¡¡¡¡¡¡ÔÚ²åÈë̬ÄÚ£¬Ö±½ÓÑ¡ÈëÖ¸Áî¼´ÐС£

¡¡¡¡¡¡¡ªxɾ³ýÓα괦×Ö·û£¨Character£©

¡¡¡¡¡¡¡ªnxɾ³ýÓα괦áán¸ö×Ö·û

¡¡¡¡¡¡¡ªnXɾ³ýÓα괦ǰn¸ö×Ö·û

¡¡¡¡¡¡¡ªndwɾ³ýÓα괦ÏÂn¸öµ¥´Ê£¨word£©

¡¡¡¡¡¡¡ªddɾ³ýÕûÐÐ

¡¡¡¡¡¡¡ªd$»òDɾ³ýÓÉÓαêÖÁ¸ÃÐÐ×îÄ©

¡¡¡¡¡¡¡ªu»Ö¸´Ç°Ò»´ÎËù×öµÄɾ³ý

¡¡¡¡¡¡ÐÞ¸ÄÕýÎÄ

¡¡¡¡¡¡µ±Ê¹ÓÃviÐÞ¸ÄÕýÎÄ£¬¼Ó¼õ×Ö·ûʱ£¬¾Í»á²ÉÓÃÁíÒ»×éÔÚ²åÈë̬²Ù×÷
¡¡¡¡¡¡µÄÖ¸Áî¡£

¡¡¡¡¡¡¡ª¡¡r¡¡charÓÉchar´úÌæÓα괦µÄ×Ö·û

¡¡¡¡¡¡¡ªRtext¡´Esc¡µÓÉtext´úÌæÓα괦µÄ×Ö·û

¡¡¡¡¡¡¡ªcwtext¡´Esc¡µÓÉtextÈ¡´úÓα괦µÄµ¥´Ê

¡¡¡¡¡¡¡ªCtext¡´Esc¡µÓÉtextÈ¡´úÓα괦ÖÁ¸ÃÐнáβ´¦

¡¡¡¡¡¡¡ªccʹÕûÐпհף¬µ«±£ÁôÓαêλÖã¬ÈÃÄ㿪ʼ´òÈë

¡¡¡¡¡¡¡ªÈçɾ³ýÖ¸ÁîÒ»Ñù£¬ÔÚÖ¸Áîǰ´òÈëµÄÊý£¬±íʾִÐиÃÖ¸Áî¶àÉٴΡ£
¡¡¡¡¡¡ÕýÎÄģʽ¼ìË÷

¡¡¡¡¡¡Òª¼ìË÷Îļþ£¬±ØÐèÔÚÖ¸Áî̬ϽøÐС£Ëùν¡¸Ä£Ê½¡¹£¬¾ÍÊÇÒ»¸öÌØ
¡¡¡¡¡¡¶¨×Ö·û´®£¬ÆäÖпɺ¬¿Õ¸ñ·û¡£

¡¡¡¡¡¡¡ª£¯str¡´Return¡µÏòǰËÑѰstrÖ±ÖÁÎļþ½áβ´¦

¡¡¡¡¡¡¡ª?str¡´Return¡µÍùááËÑѰstrÖ±ÖÁÎļþ¿ªÊ×´¦

¡¡¡¡¡¡¡ªnͬһ·½ÏòÉÏÖØ¸´¼ìË÷

¡¡¡¡¡¡¡ªNÏà·´·½ÏòÉÏÖØ¸´¼ìË÷

¡¡¡¡¡¡¡ªvi²øÈÆÕû¸öÎļþ£¬²»¶Ï¼ìË÷£¬Ö±ÖÁÕÒµ½ÓëģʽÏàÆ¥ÅäµÄÏÂÒ»¸ö
¡¡¡¡¡¡³öÏÖ¡£ÆäËû

¡¡¡¡¡¡Èç¹ûÒªÔÚ¡¡viÖ´ÐÐÆÚ¼ä£¬×ªµ½shellÖ´ÐУ¬Ê¹ÓþªÌ¾ºÅ£¨!£©Ö´ÐÐϵ
¡¡¡¡¡¡Í³Ö¸ÁÀýÈçÔÚviÆÚ¼ä£¬Áгöµ±Ç°Ä¿Â¼ÄÚÈÝ£¬¿ÉÒÔ´òÈë

¡¡¡¡¡¡:!If

¡¡¡¡¡¡ÁíÒ»·½Ã棬Óû§¿ÉÒÔÔÚÖ÷Ŀ¼Öд´½¨.exrc»·¾³Îļþ£¬ÓÃset´òÈë
¡¡¡¡¡¡Ñ¡Ïÿ´Îµ÷ÓÃviʱ£¬¾Í»á¶ÁÈë.exrcÖеÄÖ¸ÁîÓëÉèÖá£ÏÂÃæÊÇ
¡¡¡¡¡¡.exrc»·¾³ÎļþµÄʵÀý£º

¡¡¡¡¡¡set¡¡wrapmarging£½8

¡¡¡¡¡¡set¡¡showmode

¡¡¡¡¡¡set¡¡autoindent

¡¡¡¡¡¡set¡¡number

Àà±ð£º ÎÞ·ÖÀà |  ÆÀÂÛ(0) |  ä¯ÀÀ(9930) |  ÊÕ²Ø
2006Äê01ÔÂ09ÈÕ 18:51:07

QuickTimeÁ÷ýÌåºÍJava

QuickTimeÁ÷ýÌåºÍJava

ÕªÒª:
ʹÓÃQuickTimeÁ÷ýÌå×î¼òµ¥µÄÊÂÇé¾ÍÊÇÎÒÔÚ´Ë˵Ã÷µÄÉú¶¯ÄÚÈÝ¡£ÄãÐèÒªÖÁÉÙÒ»¸öÒôƵÊäÈëÉ豸£¬ÈçÒ»¸öÄÚÖõÄÂó¿Ë·ç»òÕßÒ»¸ö¶ú»ú¡£µ±È»£¬ÓµÓÐÒ»¸öQuickTimeÖ§³ÖµÄÉãÏñ»ú£¬ÈçÒ»¸öiSight£¬½«»á¸üÈÃÈËÓ¡ÏóÉî¿Ì¡£

QuickTimeÁ÷ýÌåºÍJava

×÷ÕߣºChris Adamson

ÒëÕß:pawenwen


°æÈ¨ÉùÃ÷£ºÈκλñµÃMatrixÊÚȨµÄÍøÕ¾£¬×ªÔØÊ±ÇëÎñ±ØÒÔ³¬Á´½ÓÐÎʽ±êÃ÷ÎÄÕÂԭʼ³ö´¦ºÍ×÷ÕßÐÅÏ¢¼°±¾ÉùÃ÷
×÷Õß:Chris Adamson;pawenwen
Ô­ÎĵØÖ·:http://www.onjava.com/pub/a/onjava/2005/01/12/strmng_qtj.html
ÖÐÎĵØÖ·:http://www.matrix.org.cn/resource/article/43/43950_QuickTime_Java.html
¹Ø¼ü´Ê£º QuickTime Java


Õâ²¢²»ÊǼ´½«ÎÊÊÀµÄQuickTime for Java bookÒ»ÊéµÄժ¼£¬ËäÈ»ÎÒÏ£ÍûÊǵġ£

Äã¿´£¬ÎÊÌâÊÇ£¬ÔÚQTJÊÀ½çÖдó¶àÊýµÄÎÒÃǶ¼Ò»Ö±¼Ù¶¨QTJÖеÄÁ÷ýÌåAPIÒѾ­Ë𻵣¬ÎÒ²¢²»ÊÇÏëΪ´ËʶøÑÚ¸Çʲô¡£ºÃµÄ£¬ÎÒ¼ÌÐøÀ´Í¨¹ý¸÷ÖÖ¸÷ÑùµÄÈËͨ¹ý²»Í¬µÄ¼¼Êõ½øÐй¤×÷µÄÑڸǻñȡȥÕâÑù×ö£¬µ«ÊÇÎÒ²»ÏëÔÙÀ´Ò»´Î¡£´ËÍ⣬Á÷ýÌå³åÍ»µÄÇé¿öËÆºõÌØ±ðµÄÔã¸â¡£Ã»ÓÐÈËÄܵõ½ËüµÄÑÝʾ´úÂ빤×÷·½Ê½¨D¨Dthis post to the quicktime-java list ÊÇÁîÐí¶àÓû§¶Ô»ñȡƻ¹û¹«Ë¾µÄAudioBroadcaster ºÍDrawableBroadcaster ÑÝʾ¹¤×÷·½Ê½¾øÍûµÄµäÐÍ¡£ÈÃÊÂÇé¸üÔã¸â£¬ÑÝʾ֮һÒÀ¿¿Ò»¸öÔÚQTJ 6.1°æ±¾ÖÐ×÷ΪÍ˻ص½Ô­Ê¼µÄGUIÌṩµÄÒѾ­±»È¡ÏûµÄGUIÔ¤ÀÀ×é¼þÀ࣬Ìṩ×é¼þÖ»¶ÔMovies £¬MovieControllers ºÍGraphicsImporters £¬¶ø²»ÊÇÁ÷ʽµÄPresentations £¬ÊÓÆµ²¶×½£¬»òÕßijЩͼÐÎÃÀºÃµÃÏñÀ´×Ô¶àÖÖ×ÊÔ´¡°ºÏ³É¡±ÖÆ×÷¡£ËùÒÔ£¬¹Ù·½¸ø³öµÄÑÝʾËüÊ×ÏÈ¿´ÆðÀ´ÊDz»»á¹¤×÷£¬ºÍÏÖÔڵĹؼüÀàÓгåÍ»£¨Èç¹ûÔÚJava 1.4ÖÐÔËÐлáÅ׳öRuntimeExceptionsÒì³££©¡£Ô¤²âʵ¼ÊµÄÁ÷ʽÄÚÈݺÍQTJ 6.1¿´ÉÏÈ¥»á·Ç³£Ôã¸â¡£

ÁîÎÒÐÀϲ£¬ÉõÖÁÊÇÓеã³Ô¾ªµÄÊÇ£¬Óб¨µÀ³ÆÁ÷ýÌåÄܹ»ÔÚQTJ 6.1Öй¤×÷¡£ÔÚ±¾ÎÄÕÂÖУ¬ÎÒ½«½éÉÜͨ¹ýQTJʵÏÖ¼òµ¥µÄÍøÂç¹ã²¥µÄ»ù´¡

ÐèÇó
QuickTime µÄÁ÷ýÌåAPI£¬ÔÚJavaÖÐÓÉÖ»¿ÉÔÚMac OS£¨ClassicºÍOS X£©ÖÐÔËÐеİüquicktime.streamingÉùÃ÷¡£ÔÚQTJÖдæÔÚWindows°æ±¾µÄÀ࣬µ«ÊÇËüÃÇÈ´²»Äܹ¤×÷¡£µ«ÊÇ£¬Äã¿ÉÒÔʹÓà Windows°æ±¾µÄQuickTime×÷ΪÁ÷ýÌåµÄ¿Í»§¶Ë£¬Èç¹ûÔÚJavaÖÐÔËÐв¢²»ÊǹؼüµÄ£¬Äã¿É»ñÈ¡Darwin Streaming Server£¬Ò»¸ö¿ªÔ´ÏîÄ¿¿ÉÔÚWindows 2000 Server ºÍ2003 ServerÉÏÔËÐÐÈçͬÔÚSolaris 9 ºÍ Red Hat Linux 9ÉÏÒ»Ñù¡£

ʹÓÃQuickTimeÁ÷ýÌå×î¼òµ¥µÄÊÂÇé¾ÍÊÇÎÒÔÚ´Ë˵Ã÷µÄÉú¶¯ÄÚÈÝ¡£ÄãÐèÒªÖÁÉÙÒ»¸öÒôƵÊäÈëÉ豸£¬ÈçÒ»¸öÄÚÖõÄÂó¿Ë·ç»òÕßÒ»¸ö¶ú»ú¡£µ±È»£¬ÓµÓÐÒ»¸öQuickTimeÖ§³ÖµÄÉãÏñ»ú£¬ÈçÒ»¸öiSight£¬½«»á¸üÈÃÈËÓ¡ÏóÉî¿Ì¡£

Streaming ÊÇʲô£¬²»ÊÇʲô
¸ø³öÁËÊõÓï¡°Á÷¡±µÄº¬Òå²¢²»ÈÝÒ×Ã÷È·ÊõÓï¡°Streaming ¡±µÄÕýÈ·º¬Òå¡£ÀýÈ磬QuickTime³¤ÆÚÖ§³ÖÒ»ÖÖ¡°¿ìËÙÆô¶¯¡±µÄÌØÕ÷¨D¨DÈç¹ûQuickTimeÃ÷È·ÓµÓÐ×ã¹»µÄ¿ªÊ¼²¥·ÅµÄ×ÊÔ´²¢ÇÒ²»»áÓÃÍêĿǰÏÂÔØËÙÂÊϵÄ×ÊÔ´Ò»¶Î¼ÏñÄÜ¿ªÊ¼²¥·Å¨D¨DÄÇÊÇһЩÓû§½«Streaming µÄÒ»ÖÖÐÎʽŪ´íÁË¡£×ÔÈ»µÄ£¬ÕâÓÐËü×Ô¼ºµÄÓÅÊÆ£ºÈÝÒ×´´½¨²¢ÇÒÈ·±£ÁËËùÓеİü¶¼µ½´ïÁ˿ͻ§¶Ë¡£µ«ÊÇÕæÕýµÄ Streaming £¬»»¾ä»°Ëµ£¬Streaming ·ûºÏInternet¹¤³Ì¹¤×÷С×飨IETF£©µÄ±ê×¼£¬ÕâÊÇÒ»¸öÍêÈ«²»Í¬µÄÎÊÌ⣬ֱµ½QuickTime 5²Å±»Ö§³Ö£¬²¢ÇÒÖ±µ½QTJ 6²ÅÖ§³ÖJava¡£

Streaming µÄÐÎʽÔÊÐí·þÎñÆ÷¿ØÖÆ´«Ê䣬µ«ºÜÄÑÔÚʵʱÖб£Ö¤×îÓÅ»¯ÔËÐС£¿Í»§¶ËδÏÂÔØÇ±ÔڵĴóÎļþ£¬ÕâÑùµÄ·½·¨ÊǶÀÌØµÄ±ãÀûµÄÖ±½Ó¹ã²¥¡£ÊÂʵÉÏ£¬QuickTimeµÄÁ÷ýÌåʹÓÃÁ½ÖÖ¡°ÊµÊ±¡±µÄÁ÷ýÌå´«ÊäЭÒ飺ʵʱ´«ÊäЭÒé(RTP)À´´«ÊäýÌåÊý¾Ý°ü£¬ÊµÊ±Á÷ЭÒé(RTSP)ÓÃÓÚ¿ØÖÆÐÅÏ¢¡£RTPʹÓÃDZÔÚµÄÓÐËðUDPÁ¬½Ó£¬ËùÒÔËùÓеÄÈ˶¼ÓÐÒâµÄÈÌÄÍÔÙ´«ÊäÆÚ¼äµÄ°üµÄ¶ªÊ§¡£Õâ¾ÍÒâζ×ſͻ§¶ËÐèÒªÓѺõIJÙ×÷δ»ñÈ¡ËùÓÐÊý¾ÝµÄÊÓÆµÖ¡»òÕßÒôƵÀý×Ó¡£¸üºÃµÄ·½·¨ÊÇͨ¹ý»ùÓÚ TCP/IPµÄÁ¬½Ó£¬Ëü¿ÉÒÔʹÓò»È·¶¨µÄÖØÊÔ£¨Ò²»áÒò´ËÐèÒªÒ»¸ö²»È·¶¨µÄʱ¼ä£©À´»ñÈ¡¶ªÊ§µÄ°ü¡£

PresentationºÍSDPÎļþ
ÔÚQuickTime ÖУ¬Á÷ýÌå´«ÊäµÈͬһ¸öµçÓ°¨D¨DÒ»¸öµçÓ°¿ÉÒÔÓÐÒô¹ìºÍÊӹ죬һ¸öÔªÊý¾ÝµÄ¾Û¼¯½«ËüÃÇÈ«¶¼ÁªÏµÔÚÒ»Æð£¬´Ë±íʾ»á½«Ò»Ð©¶àÖÖµÄÒôƵºÍÊÓÆµÁ÷µÄÔªÊý¾ÝÁªÏµÆðÀ´¡£ÒôƵºÍÊÓÆµÄã·Ç³£Ï²»¶µÄÁ÷ýÌåÖÖÀàÒ²ÊÇÖµµÃ¹Ø×¢µÄ£¬×Ô´ÓijЩÆäËûµÄýÌåÀàÐÍ£¨sprites£¬FlashÄÚÈÝ£©±»QuickTimeÖ§³Öºó²¢Ã»ÓвÙ×÷ºÃʧȥµÄ°ü£¬²¢²»ÊʺÏ×÷ΪÁ÷ýÌå´«²¥¡£

Äã¿ÉÄܱ»½¨ÒéÈ¥½¨Á¢Ò»¸öÁ÷ýÌ壬Äã»áÐèÒª´´½¨Ò»¸öPresentation ²¢¿ªÊ¼Ëü¡£µ«ÊÇÏÖÔÚÄØ£¿×îÆÕ±éµÄÕâÑù×öµÄ·½·¨ÊÇ´´½¨Ò»¸ö»á»°ÃèÊöЭÒ飨SDP£©Îļþ£¬½«Æä·ÅÈ뾲̬¹¤³§·½·¨Presentation.fromFile ()¡£SDPÎļþÒÔÒ»ÖÖÊʵ±µÄ¼òµ¥µÄÎı¾¸ñʽ£¬ÓÉRFC 2327ºÍseveral updatesËù¶¨Òå¡£ÎÒ·¢ÏÖÕâЩ¶¼ÊÇÔçÆÚµÄÀíÂÛ¶ø²»ÊÇʵ¼Ê²Ù×÷£¬µ«ÊÇÉÔºóÈÃÎÒÃǵ£ÐĵÄÊÇÖ´ÐÐÏêϸÐÅÏ¢¡£ÕâÊÇÒ»¸ö±»Ò»Ð©AppleµÄÁ÷ýÌåʹÓõÄÀý×Ó£¬ÔÚ Tim MonroeµÄQuickTime Toolkit Volume TwoÖУº

v=0
c=IN IP4 224.2.1.2/20/1
m=audio 1000 RTP/AVP 12
m=video 2000 RTP/AVP 101
a=rtpmap:101 H263-1998

ÒÔÏÂÊÇÿһÐеĽâÊÍ£º

¡¤     v=0£ºÕâÊÇSDPµÄ°æ±¾ºÅ¡£ÔÚÕâÀï°æ±¾ºÅÊÇ0±íʾÔÚSDPÖÐûÓдÎÒªµÄºÅÂë¡£
¡¤     c=IN IP4 224.2.1.2/20/1£ºÕâÊÇÌṩÔÚÃèÊöÖÐʹÓõÄÁ¬½ÓµÄÐÅÏ¢¡£IN IP4 ±íʾÊÇÒ»¸öIPv4µÄÍøÂçµØÖ·¡£224.2.1.2ÊǵØÖ·£¨×¢ÒâÕâÊÇÒ»¸ö¶àµã´«Ê䵨ַ£¬ËùÓÐÐí¶àµÄ¿Í»§¶ËÄÜÁ¬½Óµ½¹ã²¥£©£¬20ÊÇ´æÔÚʱ¼ä£¬1ÊÇÁÙ½üʹÓõĶàµã´«Ê䵨ַµÄÊýÁ¿¡£
¡¤     m=audio 1000 RTP/AVP 12£ºm=ÕâÒ»Ðж¨ÒåÁËÓÃÓڹ㲥µÄÁ÷ýÌå¡£ÔÚÕâÀïÃ÷ÏÔµÄÊÇaudio£¬·¢Ë;­Óɵ½RTPµ½¶Ë¿Ú1000¡£12ÔÚ¼òµ¥µÄQCELPÒôƵÖж¨ÒåÁËÓÐЧ¸ºÔØÀàÐÍ¡£ÕâЩÔÚRFC 3551Öж¨ÒåÁË¡£
¡¤     m=video 2000 RTP/AVP 101£ºÕâһýÌåÐж¨ÒåÁËÒ»¸övideoýÌåÁ÷£¬ÓÉRTP´«Êäµ½¶Ë¿Ú2000¡£ÓÐЧ¸ºÔØÀàÐÍΪ95£¬ËùÒÔʹÓÃ101±íʾÔÚԭʼµÄRFCÖÐÊÓÆµ¸ñʽûÓиø³ö¸ºÔØÀàÐÍ£¬ÔÚSDPÖÐÌæ»»Ëü»á±»Ó³Éäµ½Ò»¸öÖÚËùÖÜÖªµÄ³£Á¿ÖС£
¡¤     a=rtpmap:101 H263-1998£ºÕâ¸öÍê³É¼üÈëÔÚǰһÐÐÖ¸³öµÄ¶¯Ì¬¸ºÔØ¡£Ê¹ÓôËÀàÐÍ£¬Äã»áʹÓÃÒ»¸öÔÚ96ºÍ127Ö®¼äµÄÖµ£¨±¾ÀýÖÐÊÇ101£©£¬È»ºóÓÃÒ»¸ö×Ö·û´®ÃüÃû´Ë¸ºÔØÀàÐÍ£¨H263-1998£©¡£

Õ⵱ȻºÃ£¬µ«Êǵ±ÔÚÎÒµÄÀý³ÌÐòÖÐʹÓÃËüµÄʱºò£¬ÎÒÖ»»ñµÃÁËÒ»¸öÊÓÆµÁ÷ȴûÓÐÉùÒô¡£ËùÒÔ£¬ÎÒʹÓÃÁËÒ»¸öºÜ²»Í¬µÄSDP£¬×î³õÔÚQTJµÄDrawableBroadcasterÑÝʾÖгöÏÖ¡£Êǵģ¬ËûÃDz»ÔÞͬÕâô×ö£º

m=audio 2656 RTP/AVP 96
c=IN IP4 239.60.60.60
a=rtpmap:96 x-qt
m=video 2700 RTP/AVP 96
a=rtpmap:96 x-qt

ÕâÀï×î´óµÄ²»Í¬¾ÍÊÇÒôƵºÍÊÓÆµ¶¼Ê¹ÓÃÁËÏàͬµÄ¶¯Ì¬¸ºÔØÓ³É䣬Õâ²¢²»ÊÇÕë¶ÔÒ»¸öÕæÕýµÄ±àÂëÆ÷£¬¶øÊÇÒ»°ãµÄx-qt¡£ÔÚÕâÀïʤÀûµÄÊÇÄãÄÜÔÚÔËÐÐʱ¼äÉÏÌôÑ¡ÈÎÒ» QuickTimeµÄÒôƵºÍÊÓÆµ±àÂëÆ÷£¬¶ø²»ÊÇÔÚSDPÎļþÖÐÇ¿ÆÈµ¼Ö¡£µ×²àÊÇÕâЩ¿ÉÒÔ²»ÊÇÓÉ·ÇQuickTime¿Í»§¶Ë¿É·ÖÎöµÄ£¬·´Ö®Ê¹ÓÃÊ®·Ö±ê×¼µÄºÍ /»òÕ߾ɵıàÂëÆ÷²¢ÇÒÔÚSDPÖÐÖ¸¶¨ËûÃÇʹËü¸üÏñÆäËûµÄ¿Í»§¶Ë£¨Real, JMFµÈ£©Äܹ»²Ù×÷ÄãµÄϵͳ¡£

Õâ¾ÍÊÇÄãµÄSDPÎļþ¡£ÏÖÔÚ²»Òª¼ÓÈëÒ»¸öPresentation¡£

´´½¨Presentation


ÎÒÃǵÄÁ÷ýÌå·þÎñÆ÷³ÌÐòµ÷ÓÃLittleBroadcast£¬ÕⲢûÓжàÉÙ´úÂ룬ֻÓв»¹ý140ÐС£ÔÚ±¾ÎÄÖУ¬ÎÒ½«Ò»²½Ò»²½µÄ½øÐУ¬½âÊÍÒ»°ãµÄ²¿·Ö£¬µ«ÌṩÆäÈ«²¿µÄÇåµ¥¡£ÔÚºóÃæµÄResourcesÕ½ÚÖÐÓпÉÓõ½Ò»¸ö.tar.gzÎļþ£¬Á¬Í¬SDPÎļþºÍÒ»¸öAnt¹¹½¨Îļþ¡£

package com.mac.invalidname.qtjstreaming;

import quicktime.*;
import quicktime.std.*;
import quicktime.util.*;
import quicktime.qd.*;
import quicktime.io.*;
import quicktime.streaming.*;
import quicktime.app.time.*;

import java.io.*;
import java.awt.*;
import java.awt.event.*;

public class LittleBroadcast extends Tasking implements ActionListener {



ÕâÊÇÒ»³¤´®µäÐ͵ÄÒýÈëQuickTime£¬°üÀ¨ÁËʹÓÃÆäQDGraphicsÀ´Ìṩһ¸öÉãÏñ»ú»­ÃæÒÔÍâµÄͼÐνçÃæµÄqd£¬¶ÁÈ¡SDPÎļþµÄio£¬ÓÃÓÚÁ÷ýÌå APIµÄstreaming£¬ÒÔ¼°»ñµÃ¸øÓèPresentationÔËÐÐʱ¼äµÄÓÐЧÈÎÎñµÄtime¡£×îºóÒ»µã£¬×¢Òâ¸ÃÀàÀ©Õ¹Ö±Tasking¨D¨DÌṩÖÜÆÚÐÔµ÷ÓõÄtask()¡£±¾Ó¦ÓóÌÐòÖУ¬ËüÓÃÓÚ²»¶ÏµÄµ÷ÓÃPresentationµÄidle()·½·¨£¬²¢Ê¹ÆäÑ­»·¹¤×÷¡£ÄãÔÚ±¾ÊéÖÐѧϰµ½Ò²¾ÍÊÇ MoviesËùÐèÒªµÄ£¬µ«ÊÇ´ËÈÎÎñ¼¸ºõÒ»Ö±¶¼×Ô¶¯µÄΪÄãËù²Ù×÷¡£Ê¹ÓÃPresentation²¢²»ºÃÔË¡££¨»òÕßΪ´Ëʶø²¶»ñ£¬µ«ÓÐЩÀ뿪±¾Ö÷ÌâÁË¡££©

  boolean broadcasting = false;

  public static final int BROADCAST_WIDTH = 176;
  public static final int BROADCAST_HEIGHT = 144;

  Button startStopButton;
  Button configButton;

  Presentation pres;
  int presenterTimeScale = 600;



ÕâЩÊÇ·þÎñÆ÷µÄʵÀý±äÁ¿¡£ÊÇÒ»¸öÓÃÓÚÖ¸¶¨µ±¿ªÊ¼/Í£Ö¹°´Å¥°´ÏµÄʱºò×öʲôµÄ±ê¼Ç¡£ÏÂÃæÊÇÒ»¶Ô¹ã²¥ÊÓÆµ´óСµÄ³£Á¿£¬½ô¸ú×ÅÊÇ·þÎñÆ÷GUIµÄ°´Å¥¡£×îºóÊÇÒ»¸ö Presentation¶ÔÏó£¬ÒÔ¼°ËüµÄʱ¼ä³ß¶È¡££¨Ã½ÌåµÄ±£³Öʱ¼äϵͳ£¬Ò»¸ö600µÄʱ¼ä³ß¶È±íʾһÃëÖÖÀïÓÐ600¸öµ¥Î»£»600Ò²ÊÇ QuickTimeÖÐĬÈϵġ££©

  public static void main (String[] args) {
    System.out.println ("main");
    try {
        QTSession.open();
        new LittleBroadcast();
    } catch (QTException qte) {
        qte.printStackTrace();
    }
  }



ÔÚÕâ¸ömainÖв¢Ã»ÓÐʲô¶ÀÌØµÄµØ·½¡£ÎÒͶÈëÁËËùÓеľ«Á¦ÔÚ¹¹Ô캯ÊýÉÏÒÔ·ÀֹΪÄÇЩÎÒÐèÒªµÄʵÀý´´½¨Ò»¸öÄÚ²¿Àà¡£Èç¹ûÄãÀ©Õ¹±¾´úÂ룬Äã¿ÉÄܻᷢÏÖÕâºÜÓÐÓá£

  public LittleBroadcast() throws QTException {
    System.out.println ("LittleBroadcast constructor");
    QTFile file = new QTFile (new File ("little.sdp"));
          try {
                MediaParams mediaParams = new MediaParams();
        mediaParams.setWidth (BROADCAST_WIDTH);
        mediaParams.setHeight (BROADCAST_HEIGHT);

        QDGraphics myGWorld =
          new QDGraphics (new QDRect (
            BROADCAST_WIDTH, BROADCAST_HEIGHT));
        mediaParams.setGWorld (myGWorld);

                PresParams presParams =
          new PresParams( presenterTimeScale,
                  QTSConstants.kQTSSendMediaFlag |
                  QTSConstants.kQTSAutoModeFlag |
                  QTSConstants.kQTSDontShowStatusFlag,
                  mediaParams );
                pres = Presentation.fromFile(file, presParams );



¹¹Ô캯ÊýµÄµÚÒ»ÊÂÊÇ×°ÔØÃûΪlittle.sdpµÄSDPÎļþ¡£ µ«Õâ²¢²»ÊÇËùÓеͼÐèÒª´´½¨Presentation ¨D¨DÔÚµ÷ÓÃPresentation.fromFile()µÄʱºòÐèÒª·þÎñÆ÷Ó¦ÓóÌÐòÉèÖÃһЩ±ØÒªµÄ²ÎÊý¡£Ê×ÏÈ,ÄãÒª´´½¨Ò»¸öMediaParams¶ÔÏó,ÕâÑùÄãÄÜÉèÖÃÊÓÆµµÄ¸ß¶ÈºÍ¿í¶È¡£Äú±ØÐë×öµÄÆäËüÖØÒªÊÂÊÇÌṩÕÕÏà»úÒ»¸öͼÐνçÃæ,ÓÉQDGraphics´´½¨MediaParamsÉèÖá£ÊǵÄ, Ãû×ÖÊǹŹֵÄ, ÒòΪQTJ Éè¼ÆÔ±Ïë×¢ÖØÓëAWT Graphics¶ÔÏóµÄÏàËÆÐÔ, µ«µÃµ½»òÉèÖÃÕâÑùµÄ¶ÔÏóµÄÓÃ;µÄËùÓз½·¨ÊÇʹÓÃÆä±¾µØAPIÃû×Ö, GWorld¡£ ×îºó, ÄãΪËùÓеÄPresentation´´½¨Ò»¸öPresParamsÀ´ÉèÖòÎÊý¡£ Õâ²Éȡһ¸öÓÐЩÈÎÒâµÄʱ±ê, һЩËãÊõÉϵÄÐÐΪ±ê¼Ç±Ë´ËOR'ed, ÒÔ¼°MediaParams¡£ ¿ÉÄܵÄÐÐΪ±ê¼Ç, ¶¼±»¶¨ÒåÔÚQTSConstants, °üÀ¨:

¡¤     KQTSAutoModeFlag: ¶¼Ê¹ÓÃĬÈÏÖµ¡£ ×îÖØÒªµØ, ÕâЩʹÓÃĬÈÏÖµSourcer, PresentationµÄÀ´Ô´,ÊÇ´Ó¸÷ÖÖ¸÷ÑùµÄÊäÈë×°ÖÃÖ´ÐлñÈ¡µÄSequenceGrabber¡£Ëü»¹¿ÉÄܲ¥·ÅÒ»¸öÔÚ´ÅÅÌÉÏ»òÊÇÈÎÒâĿ¼ÏµĵÄQuickTime Îļþ; ÉÔºóÎÒ½«Ì½ÌÖÕâЩÎÊÌâ¡£
¡¤     KQTDontShowStatusFlag: ²»Òª´´½¨Ò»¸ö»áµ¼ÖÂÁ¬½ÓÊýºÍ״̬ÐÅÏ¢×ܱ»ÏÔʾÔÚ¿Í»§¶ËµÄÁ÷ýÌå״̬´¦Àí³ÌÐò¡£
¡¤     KQTSSendMediaFlag:·¢ËÍ£¬²»½ÓÊÕÊý¾Ý¡£
¡¤     KQTSReceiveMediaFlag£º½ÓÊÕ£¬²»·¢ËÍÊý¾Ý¡£

ÔÚSDPÎļþ˵Ã÷, ²ÎÊý, ÒÔ¼°GWorld ÉèÖÃÏÂ, ´´½¨PresentationºÍPresentation.fromFile()¡£

      // find audio stream
        Stream audioStream = null;
        for (int i=1; i<=pres.getNumStreams(); i++) {
          System.out.println ("stream: " + i + ": " +
                        pres.getIndStream(i));
          Stream aStream = pres.getIndStream (i);
          if (pres.hasCharacteristic(aStream,
            StdQTConstants.audioMediaCharacteristic)) {
            audioStream = aStream;
            break;
          }
        }
        System.out.println ("audioStream = " + audioStream);
        pres.setVolumes (audioStream, 100, 100);
        System.out.println ("created presentation, gworld == " +
                    pres.getGWorld() + ", size == "+
                    mediaParams.getWidth() + "x" +
                    mediaParams.getHeight() + ", streams == " +
                    pres.getNumStreams());



//******* Õâ²»ÊÇÕæÕýµØ±ØÒªµÄ, µ«Ëü½«¸æËßÄãÔõôͨ¹ýPresentationÓÎÀÀÀ´ÌôÑ¡¸÷×ÔµÄÁ÷ýÌå¡£ Presentation.getIndStream »áÓÉË÷Òý·µ»ØÒ»¸öStream(¸½×¢QuickTime Ë÷Òý¶¼ÊÇ»ùÓÚ1)¡£ËüÖØ¸´ÕâЩaudioMediaCharacteristic ÇëÇó²éÕÒÒôƵÁ÷ (¶ÔÓÚ¼Ӱ, Äú¾ÍÒªÇëÇóvisualMediaCharacteristic) ¡£Õâ¸öʵÀýÔÚaudioStreamÉÏΪ×óÓÒÉùµÀÉèÖÃÒôÁ¿×î´óֵΪ100¡£

×îºó, println´ÓPresentationºÍMediaParamsת´æÒ»Ð©ÓÐÒâÒåµÄÔªÊý¾Ý¡£

ÅäÖÃPresentation

        SettingsDialog sd = new SettingsDialog (pres);
        System.out.println ("Did settings");
        pres.preroll();
        broadcasting = false;

ÕâÊÇÉèÖÃpresentation×îºóµÄ²½Öè¡£ SettingsDialog´æÔÚÓû§ÒÔÊäÈë×°ÖÃÑ¡ÔñµÄÒôƵºÍÊÓÆµ (¶þ¸öÁ÷ýÌåSDP Îļþ±»Ö¸¶¨ÔÚPresentationÖÐ) ¡£Ã¿¸öÁ÷ýÌå¶¼¿ÉÓÉÒ»¸öѹËõ¸ñʽÀ´¶¨ÖÆ (MPEG-4, Sorenson Video 3, H.263, µÈ) ÒÔ¼°Ò»¸ö·Ö°üÆ÷(ÓÐʱÓÉѹËõ¸ñʽ¶¨Òå; ¿É¹Û²ìËüÊÇ·ñËæ×ÅѹËõ¸ñʽµÄ¸Ä±ä¶ø×Ô¶¯¸Ä±ä) ¡£ Õâ¸öGUIʵÀýÏÔʾÔÚͼ1 ¡£

image
ͼÏñ1. Ϊһ¸öPresentation SettingsDialog

ÔÚ´ËͼÖÐ, ÒôƵĬÈÏΪ¼ÆËã»úÁ¬ÏßÊäÈë¡£¸ü¸ÄËüΪiSight, ÄúÐèÒªµã»÷Source°´Å¥,Ìá³öµÄ¿ÉÑ¡É豸ÁбíÏÔʾÔÚͼ2ÉÏ ¡£

image
ͼ2. À´Ô´Ñ¡Ôñ¶Ô»°¿ò

×îºó¾ÍÊǵ÷ÓÃPresentation.preroll(), ÈçͬMovie.preroll(), ÌṩPresentationÒ»¸ö»ú»áÔ¤ÏÈ·ÖÅä×ÊÔ´ÒÔ¼°×¼±¸ºÃ¿ªÊ¼Á÷ýÌåPresentation¡£


Ìṩһ¸ö¿ØÖÆGUI

// Make monitor window
        startStopButton = new Button ("Start");
        configButton = new Button ("Configure");
        startStopButton.addActionListener (this);
        configButton.addActionListener (this);
        Frame monitorFrame = new Frame ("QTJ Streaming");
        monitorFrame.setLayout (new BorderLayout());
        Panel buttonPanel = new Panel();
        buttonPanel.add (startStopButton);
        buttonPanel.add (configButton);
        monitorFrame.add (buttonPanel, BorderLayout.SOUTH);
        monitorFrame.pack();
        monitorFrame.setVisible(true);



Õâ¸öΪ¿ØÖƺÍÅäÖÃPresentationÉèÖÃÁ˺ÜСµÄGUI,Ìṩ»ù±¾µÄÒ»¸öÆðʼ/Í£Ö¹¼üºÍÒ»¸öÅäÖð´Å¥¡£°´Å¥×÷Ϊһ¸öActionListenerÌá½»¸øthis, Òâζ×ÅÕâ¸öÀཫÐèÒªÌṩһ¸öactionPerformed·½·¨À´´¦Àí°´Å¥µã»÷¡£¿ØÖÆGUI µÄÆÁÄ»½ØÍ¼ÏÔʾÔÚͼ3 ¡£

image
ͼ3. ¼à¿Ø/¿ØÖÆ´°Ìå

ÔÚÕâµãÉÏÄãÒ²Ðí»áÎÊÒ»¸öÓÐȤµÄÎÊÌâ: "´ÓʲôʱºòÎÒÃÇ¿ªÊ¼¹ØÐÄʹÓÃGUIÌṩserver?"¾ÝÍÆ²â, ÕâÊÇ´ÓClassic Mac OS¿ªÊ¼µÄÒ»¸ö´«Í³, ËüûÓÐÒ»¸öÓÃÃüÁîÐÐÆô¶¯ºÍ´«µÝ²ÎÊýµÄ³ÌÐò¡£µ«´ËÍâ, Äãͨ³£»áÏ£ÍûÌṩһ¸öÁ÷ýÌåÊý¾ÝµÄÔ¤ÀÀ, ²¢ÇÒÈç¹ûÄúÓÐÒ»¸öÔ¤ÀÀÊÓ´°, Ϊʲô»áҲûÓÐÒ»¸öÅäÖõÄGUI?

ÎÞÂÛÈçºÎ, ÕâÊÇ´ó¸ÅµÄÌÖÂÛ, ÒòΪQTJ 6.1 ²»ÌṩÄúÄÜʹÓÃÀ´Ô¤ÀÀµÄÒ»¸öAWT Component¡£ÔÚÓÐЩ·½ÃæÓÐÏ£ÍûµÄÊÇ, QTFactory½«µÃµ½Ò»¸öеij¬¸ººÉΪ²ÉÓÃÒ»¸öPresentation²¢ÇÒ·µ»ØÒ»¸öÏÔʾÁ÷ýÌåÊÓÆµµÄComponentµÄ makeQTComponent¡£ Ëü´ó¸Å¿ÉÄÜʹÓÃһЩQuickDraw voodoo¶øÍêÈ«·ÅÆúJavaµÄ¶«Î÷¡£Èç¹û,ÔÚ¸÷task()Öлص÷(²Î¼ûÏÂÃæ) Äú²ÉÈ¡GWorld±»¼°Ôç´´½¨, ת»»Ëü³ÉPict, ²¢ÇÒ×÷Ϊһ·ÝΨһÃüÃûµÄÎļþ, Äú»á¿´¼ûÿһ¸ö¶¼ÊDz»Í¬µÄ, ÒâζGWorldÿ´Î¶¼µÃµ½ÐÂÊý¾Ý¡£ ËùÒÔÈç¹ûÄúÌæ»»µôGWorld, ¸ÄΪÄܸøAWT ComponentÔÚ¸÷ͨµÀÉ϶¨ÒåÏóËØ, Äú»áÓÐÒøÄ»ÉϵÄÔ¤ÀÀ¡£ºÎÈËÓе¨Á¿Èç´Ë×ö? ÔÚquicktime-java listÉϲ鿴¡£

Ïêϸ×ÊÁÏ

// add shutdown handler to make sure presentation
        // gets stopped
        Thread presentationStopper = new Thread() {
            public void run() {
                try {
                  pres.stop();
                } catch (QTException qte) {}
            }
          };
        Runtime.getRuntime().addShutdownHook (presentationStopper);



Õâ¸ö¹Ø±ÕÒì³£·ÖÖ§È·¶¨PresentationÔÚ³ÌÐòÍ˳ö֮ǰ±»ÖÕÖ¹¡£ ÕâÊÇÖØÒªµÄÔ­Òò, ÏóSequenceGrabber, PresentationÓä¿ì¼ÌÐøÔËÐÐÔÚÄúµÄÓ¦ÓóÌÐòÍ˳öÖ®ºó,°ó¶¨Ò»¸ö¶Ë¿Ú,ÑÏÖØµÄÑ­»·, ʹÓÃÄúµÄ»ñÈ¡É豸±£ÁôÆäËüÓ¦ÓóÌÐò, µÈ¡£

          } catch ( QTException e ) {
                e.printStackTrace();
                System.exit (-1);
          }
  }



×îºó, ¹¹Ô캯Êý²¶×½²¢Å׳öËùÓеÄQTExceptions¡£



public void actionPerformed (ActionEvent ae) {
    System.out.println ("actionPerformed");
    try {
        if (ae.getSource() == startStopButton) {
          if (broadcasting) {
            pres.stop();
            stopTasking();
            broadcasting = false;
            startStopButton.setLabel ("Start");
            System.out.println ("Stopped");
          } else {
            pres.start();
            startTasking();
            broadcasting = true;
            startStopButton.setLabel ("Stop");
            System.out.println ("Started");
          }
        } else if (ae.getSource() == configButton) {
          new SettingsDialog (pres);
        }
    } catch (QTException qte) {
        qte.printStackTrace();
    }
  }



ÕâÊǷdz£Ö±½ÓµÄ´¦ÀíÆðʼ/ÖÕÖ¹ºÍÉèÖð´Å¥¡£Èç¹ûµã»÷µÄ°´Å¥ÊÇÆðʼ/ÖÕÖ¹, ÉèÖÃGUI ¾Í»áµ÷ÓÃÔÚPresentationÉ쵀 start() »òstop(), ¿ªÊ¼»òÍ£Ö¹ÕýÔÚÖ´ÐеÄÈÎÎñ (¶¨ÆÚ»Øµ÷Õâ¸öÀàµÄtask()·½·¨), Ϊϰ´Å¥µã»÷Ä¿µÄÉèÖÃbroadcasting±êÖ¾, ²¢ÇÒ¸ü¸Ä°´Å¥±êÇ©¡£Èç¹ûÓû§µã»÷ÁËÅäÖÃ, ËüÉú³ÉΪPresentationеÄSettingsDialog¡£

    public synchronized final void task() throws QTException {
          pres.idle(null);
    }

}



×îºóµÄÕâ¸ö·½·¨ÊµÏÖÁ˼̳Ð×ÔTaskingµÄtask()·½·¨²¢ÇÒ±»ÔÚ²Ù×÷¿ªÊ¼°´Å¥µ÷ÓÃstartTasking()ºó¶¨Ê±µÄµ÷Óá£Ê¹Óüòµ¥µÄµ÷ÓÃPresentation.idle(), ËüÌṩÁ˱í´ïʱ¼äÀ´´Ó»ñÈ¡É豸ȡµÃµ±Ç°Êý¾Ý£¬¶ÔÆä±àÂë²¢´«ÊäÁ÷³öÈ¥¡£

ÔËÐÐÁ÷ýÌå¿Í»§¶Ë
×î¼òµ¥µÄʹ¿Í»§»ú¿´¹ã²¥µÄ·½·¨ÊÇʹÓÃQuickTime ²¥·ÅÆ÷´ò¿ª·þÎñÆ÷ʹÓò¢´´½¨PresentationµÄͬÑùSDP Îļþ¡£Õ⽫µ÷ÓÃSDP ÊäÈë³ÌÐòÁ¬½Óµ½Á÷ýÌå²¢ÇÒ¿ªÊ¼·ÖÎöÕâЩÄÚÈÝ¡£×¢Òâ¿Í»§»úºÍ·þÎñÆ÷²»ÄÜÔÚͬһ̨»úÆ÷ÉÏ, Ã÷ÏÔµØÒòΪ·þÎñÆ÷ΪʹÓñíʾ¶øÕ¼Óö˿Ú, ¾Ü¾ø¿Í»§»ú¶ÔÕâЩ¶Ë¿ÚµÄʹÓᣠͼ4 ÏÔʾÔÚÎҵļÆËã»úÉϵÄÁ÷ýÌåµÄÍâ¹Û(ÄÇÊÇÕýÔÚ²¥·ÅÎÒµÄMacrossºÍEscaflowneÍæ¾ß) ¡£

image
ͼ4. QuickTimeÁ÷ýÌå¿Í»§¶Ë

Èç¹ûÄúʹÓÃQuickTime ²¥·ÅÆ÷, ÄúÄÜʹÓÃÆäµÃµ½ÐÅÏ¢Ö¸ÁîÏÔʾÁ½ÖÖÁ÷ýÌåÒÔ¼°ËûÃǵĸñʽ¡£ ÔÚ±í5, ÄúÄÜ¿´ÓжþÖÖýÌå: Ò»ÌõδѹËõµÄ44.1kHz ÒôƵÁ÷, ºÍÒ»ÌõH.263 µÄÊÓÆµÁ÷¡£

image
ͼ5. ¿Í»§¶ËÐÅÏ¢´°Ìå

½áÓï
¶ÔÎÒÀ´Ëµ,²¥·Å»ùÓÚJavaµÄQuickTimeÁ÷ýÌå±ÈÏëÏóµÄÈÝÒ×¶àÁË¡£ ×î¼òµ¥µÄÀý×Ó, ´Ó»ñÈ¡É豸²¥·Å, Ö»ÐèÒªÉÙÓÚ150 ¸ö´úÂëÐС£ ÏÔÈ», ×îÀ§ÄѵIJ¿·ÝÊÇÁ˽âSDPÎļþ, Ëü±»Ö¤Ã÷ÊǷdz£µÄ¹ý·Ö½²¾¿²¢ÇÒËüµÄ˵Ã÷Îļþ°üº¬´óÁ¿Ó¦ÓóÌÐò¼¶±ð³ÌÐòÔ±²»»áÓеÄ֪ʶ¡£Í¬Ñù²»ÐÒµÄÊÇ£¬QTJ²»ÔÙÌṩԤÀÀ×é¼þ, µ«Ò²ÐíÔÚ½«À´»áÌṩ, ÒÔ¼°Ò»Ð¡¶ÎµÄGWorld/QuickDraw ¶ÑÆöÒ²Ðí»áÔÚ½«À´ÖÆÔì³öÕâÑùµÄ×é¼þ¡£

±¾ÎÄÖ»°üÀ¨ÔõôΪʵʱ»ñÈ¡Êý¾ÝÉèÖù㲥¡£ÆäËü¿ÉÀûÓõÄSourcers, Æ©ÈçÀ´×Ô´ÅÅÌ»òÈÎÒâĿ¼ÖÖµÄÄÇЩ¹ã²¥QuickTime Îļþ, ½«»áÔÚÒÔºóµÄ²¿·ÖÖÐÌÖÂÛ¡£

¸Ðл´óÁ¿µÄÓÐ×éÓÚΪ±¾ÎĽâÊÍSDPÎļþµÄquicktime-api

×ÊÔ´
¡¤onjava.com:onjava.com
¡¤Matrix-Java¿ª·¢ÕßÉçÇø:http://www.matrix.org.cn/
¡¤±¾ÎÄÀý×Ó´úÂë:http://www.onjava.com/onjava/2005/01/12/examples/qtj-streaming-code.tar.gz
¡¤QuickTIme for Java Ö÷Ò³:http://developer.apple.com/quicktime/qtjava/
¡¤DarwinÁ÷ýÌå·þÎñÆ÷http://developer.apple.com/darwin/projects/streaming/
¡¤±¾µØAPIÎĵµ:http://developer.apple.com/documentation/QuickTime/QTBroadcasting/Chapter1/chapter_1_section_1.html

Àà±ð£º ÎÞ·ÖÀà |  ÆÀÂÛ(896) |  ä¯ÀÀ(33890) |  ÊÕ²Ø
2006Äê01ÔÂ09ÈÕ 18:28:43

QuickTime ComponentʵÀý



Òý¡¡ÑÔ

¡¡¡¡´Ë´¦½éÉܵÄQuickTime ComponentÔÚÔ­ÀíÉϺÍ×¾ÎÄ¡¶Mac OSµÄComponent¼¼Êõ¼ò½é¡·ÖеÄÃèÊöûÓгåÍ»£¬Ö»ÊÇ×÷ΪһÖÖÌØÀý£¬¼ÓÉÏQuickTime±¾ÉíµÄÒ»Ð©ÌØÐÔ£¬×éÖ¯ÐÎʽÉÏÓÐÐ©Çø±ð£¬ÕâÐ©Çø±ð²»ÊDZ¾Öʵġ£±¾ÎÄÒýÓõÄʵÀýÊÇApple¹Ù·½ÍøÕ¾ÉϵÄʾÀý³ÌÐò£ºElectric Image Component¡£ËüÊÇÓÃÓÚ´¦ÀíElectric Image£¨ÎļþÀ©Õ¹ÃûΪEIM£©µÄÒ»¸öµäÐ͵ÄQuickTimeµÄComponent£¨²å¼þ£©¡£
¡¡¡¡Õâ¸öÀý×ÓÓÐÁ½´óÓŵ㣺
¡¡¡¡Ò»¡¢ÄÚÈÝÈ«Ãæ£¬°üÀ¨¾²Ì¬Í¼ÏñµÄµ¼Èëµ¼³ö²å¼þImage ImporterºÍImage Exporter£¬¾²Ì¬Í¼ÏñµÄ±à½âÂë²å¼þImage Codec£¬»î¶¯Í¼Ïñµ¼Èëµ¼³ö²å¼þMovie ImporterºÍMovie Exporter¡£
¡¡¡¡¶þ¡¢ÌṩµÄʾÀýÊÇ¿çÆ½Ì¨µÄ£¬Í¨¹ýÔÚWindowsϰ²×°QuickTime SDK¿ÉÒÔ±àÒë²âÊÔ£¨Ò»°ãʹÓÃVC 6.0»òVC .NET£©£¬Éú³ÉÃûΪ"ElectricImageWindows.qtx"µÄ²å¼þ£¬¹©WindowsϵĻùÓÚQuickTimeµÄÓ¦ÓóÌÐòʹÓá£

µÚÒ»½Ú¡¡Image ImporterºÍImage Exporter

¡¡¡¡ÔÚ±¾Àý³ÌÖУ¬Image ImporterºÍÓëÖ®ÃÜÇÐÅäºÏµÄImage Decompressor·Ö±ð¶ÔÓ¦EI_GraphicsImportºÍEI_ImageDecompressorÁ½¸öÎļþ¼ÐµÄÔ´³ÌÐò¡£ÕâÁ½²¿·Ö¿ÉÒÔ´ÓÕû¸ö²å¼þ×éÖаþÀë³öÀ´¶ÀÁ¢¹¤×÷£¬ËüÃÇÍê³É¶Ô¾²Ì¬Í¼ÏñµÄ¶ÁÈ¡ºÍ½âÂë¡£ºÍÍêÕûµÄ²å¼þ°üÒ»Ñù£¬ÔÚWindowsϱàÒëÉú³É²å¼þ£¬ÔÚNTϵͳϸ´ÖƵ½"% SystemRoot%\System32\QuickTime"×ÓĿ¼Ï£¬¾ÍÄÜÓÃQuickTime 6 for Windows²¥·Å³ÌÐò£¨¿ÉÔÚAppleµÄ¹Ù·½ÍøÕ¾Ãâ·ÑÏÂÔØ£©[1]´ò¿ªElectric Image¾²Ì¬Í¼ÏñÎļþ¡£
¡¡¡¡ÐèҪעÒâµÄÊÇ£¬Ò»°ãImage ImporterÊý¾Ýµ¼Èëºó£¬ÊǾ­¹ýDecompressor»æÖƵ½ÏÔʾ¶Ë£¬ÕⲻͬÓÚµ¼³öѹËõÊý¾ÝÊÇÖ±½ÓÔÚImage ExporterÀï½øÐС£¶øÔÚDecompressorÖÐÊǶÔÒ»¸ö»º³å½øÐвÙ×÷¡£ÊÂʵÉÏDecompressorÊÇStill Image CodecµÄÒ»¸öÌØÀý£¬ÔÚ±¾ÀýÖУ¬Ö»ÊµÏÖÁËDrawBand£¬ËüÕýÍê³ÉÁËÉÏÊöµÄ½âÂë»æÖÆµÄ¹¤×÷¡£¶øBandCompressºÍ BandDecompressÁ½¸örequest handler£¨Ò»³Æselector£©¾ùûÓÐʵÏÖ£¬ËüÃÇÍê³ÉµÄÊÇÂëÁ÷µÄѹËõºÍ½âѹ£¬ÕâÑù±à½âÂ빤×÷¾ÍÄÜ·½±ãÆäËûComoponentµ÷Óá£
¡¡¡¡Ñ¹ËõÊý¾Ý£¬Ò»°ã´Ó¾²Ö¹Í¼ÏñÎļþÖжÁÈ¡£¬ÓÉQuickTimeĬÈϵijÌÐòµ¼Èë¡£ÔÚImage ImporterÖÐÒ»¸öÖØÒªµÄrequest¾ÍÊÇGetDataOffsetAndSize£¬ËüµÄhandlerÏòµ÷ÓÃÕß·µ»ØÍ¼ÏñÓÐЧÊý¾ÝµÄÆðÊ¼Æ«ÒÆºÍ´óС¡£Ëü´Ó»ù×é¼þµÄͬÃûrequest handlerÖеõ½Æ«ÒƺʹóС£¬ÕâÒ»°ã·Ö±ð¾ÍÊÇÎļþµÄÆðÊ¼Æ«ÒÆ(0)ºÍÎļþ´óС£¬È»ºó¸ù¾ÝͼÏñ¸ñʽÐèÒª½øÐÐÐ޸ġ£¶øÕâ¸örequest²»½ö¹©Ò»°ãµ÷ÓÃÕßʹÓã¬ÔÚDecompressorÖÐÒ²½«ÒÔ´Ë´¦Ö¸¶¨µÄÆðÊ¼Æ«ÒÆ¹æ¶¨µÄ·¶Î§Îª×¼½øÐвÙ×÷¡£Image ImporterÖÐÁíÒ»¸öÖØÒªµÄrequestÊÇGetImageDescription£¬ÔÚÕâ¸örequestµÄhandlerÖÐÒªÍê³É¶Ô ImageDescription½á¹¹µÄÉú³É£¬ÕâÔÚDecompressor½âÂëÖÐÒ²ÊDZØÐëµÄ¡£
¡¡¡¡Decompressor½âÂë¹ý³ÌÖ÷ÒªÔÚÃûΪ DrawBandµÄrequest handlerÖнøÐУ¬ÐèҪעÒâµÄÊÇ£¬QuickTime²¢²»Ò»¶¨½«È«²¿µÄѹËõÊý¾Ý¶¼µ¼ÈëÄڴ棬¶øÊÇÖ»Ïȵ¼ÈëÖ¸¶¨³ß´çµÄÊý¾Ý¡£ËùÒÔÊý¾ÝÀ¡ËͱØÐë²»¶Ïµ÷Óà APIº¯ÊýInvokeICMDataUPPÍê³É£¬Óû§¿ÉÒÔÖ¸¶¨Ã¿´ÎÀ¡ËÍÊý¾ÝµÄ´óС£¬µ«²»ÄܵÍÓÚÉÏÊöµÄÖ¸¶¨³ß´ç¡£
¡¡¡¡Image ExporterÏà¶Ô¼òµ¥£¬ÔÚÆäÖеÄÃûΪDoStandaloneExportµÄrequest handlerÖÐÍê³ÉÖ÷ÒªµÄµ¼³ö¹¤×÷£¬°üÀ¨±àÂ룬´Ë´¦±àÂëµÄÊäÈëºÍÊä³ö¾ùÍêÈ«ÊǶÔÒÑ·ÖÅäÄÚ´æµÄ²Ù×÷¡£

µÚ¶þ½Ú¡¡Movie ImporterºÍMovie Exporter

¡¡¡¡Movie ImporterÍê³É·ÇQuickTime±ê×¼MOV¹æ¸ñµÄµçÓ°£¨ÊÓÆµ»òÒôƵ£©Êý¾ÝµÄµ¼ÈëºÍÕûÀí¡£¶ÔÓÚQuickTime±ê×¼¹æ¸ñµÄӰƬÊÂʵÉϲ¢²»ÐèҪͨ¹ýImporterµÄÖ§³Ö¶øÄÜÖ±½ÓΪQuickTimeËù²¥·Å¡£QuickTime¹æ¸ñÒÔMovie-Track-Media-SampleΪÖ÷Òª²ã´Î½á¹¹µÄµçÓ°¿ØÖƽṹΪºËÐÄ¡£±ê×¼¹æ¸ñÎļþ±£´æÁËÕâ¸ö¿ØÖƽṹµÄÊý¾Ý²¢ÄÜÖ±½Ó±»QuickTime½âÎö£¬´Ó¶ø²»ÐèÒªImporter£»·Ç±ê×¼µÄ×Ô¶¨ÒåÎļþ¸ñʽ£¨°üÀ¨ÆäËû×éÖ¯¶¨ÒåµÄÈçAVI¡¢WMV¡¢MPG¡¢RMµÈ£©ÐèÒªImporterÍê³É½âÎö²¢ÏàÓ¦µØ½¨Á¢ÉÏÊö¿ØÖƽṹ¶øºóµÝ½»QuickTime·½ÄÜÍê³Éµ¼Èë¡£ÕâÑù¶Ô·Ç±ê×¼Îļþ¸ñʽ£¬ExporterÔòµ÷ÓÃQuickTime API»ñȡԴ¶Ë²¥·ÅÒôÊÓÆµÊý¾Ý¡£ÓÉÓÚËüÃÇÒÑÔÚQuickTimeÄÚ²¿²¥·Å£¬Òò¶øÏÔȻҲÊÇÒÔÕâÖÖ¿ØÖƽṹ×éÖ¯µÄ¡£ËæºóExporter½«Êý¾Ý¸ù¾Ý¸ñʽÐèÒªÊä³ö£¬´Ó¶ø¿ÉÐγÉÒ»¸ö·Ç±ê×¼µÄµçÓ°Îļþ£¬´Ó¶øÍê³ÉImporterµÄÄæÏò¹¤×÷¡£
¡¡¡¡µ±È»ÈçÑ¡ÔñÒÔMACΪÖ÷Ҫƽ̨£¬¸üÒ»°ãµÄÐèÒªÊÇÖÆ×÷±ê×¼¹æ¸ñµÄ MOVÎļþ¡£¶øÇø±ðÓÚ¸÷±ê×¼MOV¸ñʽµÄÊÇÆäÄÚ²¿±àÂ뷽ʽ£¬ÕâÒ²¾ÍÊÇÎÒÃÇÖÆ×÷ComponentµÄÒâÒåËùÔÚ¡£¸ù¾ÝÉÏÊöÌÖÂÛ£¬ºÜÏÔÈ»£¬ÐèÒªÔÚ Exporter¶Ë³Ðµ£¸ü¶àµÄImporter¶ËµÄ¹¤×÷¼´½¨Á¢¿ØÖƽṹ²¢Âäʵµ½×îÖÕµÄÊä³öÖУ¬ÕâЩҲÖ÷Ҫͨ¹ýµ÷ÓÃQuickTime APIµÃÒÔʵÏÖ¡£
¡¡¡¡ÖµµÃ×¢ÒâµÄÊǶÔÓÚExporter¶ËµÄ±àÂ빤×÷±¾Éí£¬QuickTimeÖ§³ÖÁ˱àÂëÆ÷±àÂ루µ÷ÓÃCodec×é¼þ£©¡¢Ö±½Ó±àÂ루Standalone·½Ê½£©ºÍ¿ÉÄܵÄתÂ루Transcode·½Ê½£¬¶ÔÓÚÌØ¶¨Ö§³ÖµÄµ¼Èëµ¼³ö×éºÏ£¬²ÉÓò»¾­¹ý½âÂëµÄÖ±½Ó±ä»»£©£¬¿ÉÂú×ã¸÷ÖÖÐèÒª¡£±¾´¦µÄElectric Image ComponentÎÞÂÛÊÇGraphics Exporter»¹ÊÇMovie Exporter¾ù²ÉÓÃStandalone·½Ê½£¬ËùÒÔ±àÂ빤×÷ÔÚExporter´úÂëÖпɼû¡£

µÚÈý½Ú¡¡Media Handler

¡¡¡¡Media HandlerÊÇÒ»ÖÖÖØÒªµÄQuickTime Component£¬ËüÖ÷񻃾¼°Ã½Ìå²¥·ÅʱµÄ¾ßÌå²Ù×÷¡£´ÓÇ°ÃæµÄÐðÊö¿ÉÖª£¬Importer²¢²»¶Ô²¥·Å×÷Èκδ¦Àí£¬Ö»ÊÇ×öÊý¾ÝµÄÊÕ¼¯£¬ËùÒÔ²¥·Å¹ý³Ì¾Í½»¸ø¸÷ÖÖMedia¶ÔÓ¦µÄMedia Handler½øÐд¦Àí¡£QuickTimeÕë¶Ô´ó¶àÊýýÌ嶨ÒåÁËÏàÓ¦µÄMedia Handler£¬ËùÒÔÓû§ºÜÉÙ»áÓбØÒª±àдһ¸öMedia Handler£¬¼´ËùνµÄDerived Media Handler¡£ÀýÍâµÄÇé¿öÖ÷ÒªÓУº
¡¡¡¡Ò»¡¢ÒªÃæ¶ÔÒ»ÖÖÐÂÐ͵ÄMediaÀàÐÍ£¬µ±È»£¬ÕâÊÇÒ»ÖÖÊý¾ÝÀàÐÍ£¬µ«ÊDZØÐëÊÇ»ùÓÚʱ¼äµÄ(Time-based)£¬ÕâÆäʵÊÇQuickTimeµÄ´¦Àí¶ÔÏóµÄ³éÏó¶¨Òå¡£ÀýÈ磺Flash¡¢Ä³Ð©ÓÐÖ¡¼äÏ໥¹ØÏµµÄýÌåÀàÐ͵ȡ£
¡¡¡¡¶þ¡¢¶ÔÒ»Ð©ÌØÊâµÄ´«Êä½éÖʵIJ»Í¬´¦Àí¡£ÀýÈçÄ³Ð©ÍøÂçЭÒ飬´æ´¢½á¹¹µÈ£¬µ«ÔÚÕâÖÖÇé¿öÏÂÊ×ÏÈÓ¦¸Ã¸ÄдÁíÒ»ÖÖQuickTimeµÄComponent¡ª¡ªData Handler¡£
¡¡¡¡Èý¡¢¶ÔÒ»¸öÒÑÓеÄĬÈÏ´¦Àí²»ÂúÒâ¡£ÀýÈç±ÊÕßÓöµ½µÄÐèÒª¶ÔÊý¾ÝÎļþ½øÐнØÈ¡µÄÇé¿ö¡£
¡¡¡¡Media HandlerÔÚQuickTimeµÄ¼Ü¹¹ÖÐÊdzöÓÚToolbox֮ϣ¬Data HandlerÖ®ÉÏ¡£Ëû¹©ToolBoxµ÷ÓÃÒÔʵÏÖ²¥·Å£¬¶øÊý¾Ý·ÃÎÊÔòͨ¹ýData Handler¡£
¡¡¡¡±àдDerived Media HandlerÒ»°ãÔÚOpenµÄ´¦ÀíÖÐÒªÉèÖÃBase Media Handler£¬Ò»°ãËüµÄSubtypeÉèΪBaseMediaType¡£±ÊÕß·¢ÏÖ¶ÔÓÚÅÉÉúVideoÀàµÄMedia Handler£¬Èç¹ûÑ¡ÔñVideoMediaTypeΪSubtypeµÄHandler×÷Base Handler£¬»áÈÆ¿ª±¾ÉíµÄ´¦Àí£¬ÆäÔ­Òò»¹²»Ã÷¡£
¡¡¡¡Media HandlerÖÐ×îÖ÷ÒªµÄrequestÊÇIdle£¬ËüÔÚQuickTimeÈÏΪÊʵ±µÄʱºò¾Í»áµ÷Ó᣼¸ºõËùÓеIJÙ×÷¶¼ÊÇÔÚÏìÓ¦Õâ¸örequestµÄº¯ÊýÖÐÍê³É¡£¶ÔÓÚ´¦ÀíVideoµÄMedia Handler¶øÑÔ£¬×îÒ»°ãµÄÇé¿ö¾ÍÊÇÔÚÕâ¸öº¯ÊýÖнâÂë²¢ÏÔʾ£¨Ò»°ãµ÷ÓÃQuickDraw£©¹æ¶¨Ê±¼äλÖõÄÖ¡¡£
¡¡¡¡ÔÚMedia HandlerÖпÉÒԵõ½´óÁ¿µÄ²¥·Å²ÎÊý£¬ËùÒÔÓм«´óµÄÁé»î¶È¡£Èç²¥·Å»·¾³£¬Ó°Æ¬Êý¾ÝµÈ¶¼ÊÇ͸Ã÷µÄ£¬ÉõÖÁ¿ÉÒÔ»ñÈ¡ºÏÊʵIJÎÊý£¬ÈÆ¿ªData Handler£¬Ö±½ÓÓÃC±ê×¼º¯Êý¶ÔӰƬÎļþ½øÐвÙ×÷¡£

¡¡¡¡£¨Í꣩

×¢ÊÍ£º
[1] ijЩ³£ÓõÄͨÓò¥·ÅÆ÷ÈçMPCÓÉÓÚ²¢²»Ê¹ÓÃWindowsϵÄQuickTime¼Ü¹¹£¬¶øÖ»ÊDzÉÓÃÁË×ÔÉíµÄQuickTime²å¼þ²¥·ÅMOV¸ñʽӰƬ£¬ËùÒÔËüÃÇÓë´Ë´¦µÄËùÓÐÌÖÂÛÍêÈ«Î޹ء£


Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=383580

Àà±ð£º ÎÞ·ÖÀà |  ÆÀÂÛ(0) |  ä¯ÀÀ(10758) |  ÊÕ²Ø
2006Äê01ÔÂ09ÈÕ 17:51:07

QuickTime SDK±à³Ì

http://blog.csdn.net/jinbing/category/129123.aspx



µÚÒ»½Ú QuickTimeÁ÷ʽ´«Êä


¡¡¡¡QTÁ÷ÊÇͨ¹ýÍøÂ罫ÊÓÆµ´Ó·þÎñÆ÷·¢Ë͵½¿Í»§µÄ´«Ê䷽ʽ¡£ÓëÎļþ´«Ê䲻ͬ£¬¿Í»§¶Ë±ßÏÂÔØ±ß²¥·Å£¬¶ø²»±ØµÈµ½ÏÂÔØÍê±Ï¡£·þÎñÆ÷½«ÊÓÆµÄÚÈݷֳɰü£¬Í¨¹ýÍøÂç·¢ËͳöÈ¥£»ÔÚ½ÓÊÕ¶Ë£¬°ü±»ÖØÐÂ×é×°£¬µ½À´ºó¾Í¿É²¥·Å¡£QTÖ§³Öµ¥²¥ºÍ×é²¥¡£


½ÓÊÕ¡¢²¥·ÅÊÓÆµÄÚÈÝ
¡¡¡¡Ò»°ãµÄ£¬¿Éͨ¹ý´ò¿ªÊÓÆµÎļþ¡¢SDPÎļþÓëURLÀ´´ò¿ªÁ÷ÊÓÆµ¡£Í¨³£µ÷ÓÃNewMovieFromFileÀ´´ò¿ªÊÓÆµÎļþ£¬Ò²¿ÉÒÔµ÷Óà NewMovieFromDataRef´ÓURL´ò¿ªÊÓÆµÎļþ¡£¶ÔʵʱÁ÷ÊÓÆµ£¬URL±ØÐëʹÓÃRTSPЭÒé¡£ÒÔRTSP URL´ò¿ªÊÓÆµµÄ´úÂëÈçÏ£º

char url[] = \"rtsp://www.mycompany.com/mymovie.mov\";
¡¡¡¡Handle urlDataRef;
¡¡¡¡urlDataRef = NewHandle(strlen(url) + 1);
¡¡¡¡if ( ( err = MemError()) != noErr) goto bail;
¡¡¡¡BlockMoveData(url, *urlDataRef, strlen(url) + 1);
¡¡¡¡err = NewMovieFromDataRef(&movieInfo->theMovie, newMovieActive,
¡¡¡¡nil, urlDataRef, URLDataHandlerSubType);
¡¡¡¡DisposeHandle(urlDataRef);

Ó¦ÓÃÒª¿É¿¿µÄ²¥·ÅʵʱÁ÷ÊÓÆµ£¬±ØÐë×ñ´ÓÈçϲ½Ö裺
¡¤ÒԸ߼¶ÊÓÆµ¹¤¾ßÏä»òÊÓÆµµ¼ÈëÆ÷´ò¿ªÊÓÆµ¡£
¡¤²»Òª¼Ù¶¨²¥·ÅµÄÊÓÆµ¹ì½á¹¹·´Ó³ÁËԭʼÊÓÆµµÄ¹ì½á¹¹¡£
¡¤Ê¹ÓÃÊÓÆµ¿ØÖÆÆ÷²¥·ÅÊÓÆµ£¬»òʹÓÃÐÂPrePrerollMovieº¯ÊýÔÚ²¥·ÅǰÉèÖÃÁ÷¡£
¡¤ÏÔʾÊÓÆµ¿ØÖÆÆ÷·µ»ØµÄ״̬ÐÅÏ¢¡£
¡¤²¥·ÅÊÓÆµÊ±×¼±¸´¦Àí²¥·Å´íÎó
¡¤×¼±¸¶¯Ì¬¸Ä±äÊÓÆµÌØÕ÷£¬Èç¸ß¶È¡¢¿í¶ÈµÈ¡£
¡¤²»ÒªÈÏΪÊÓÆµÁ¢¼´¿ªÊ¼²¥·Å¡£
¡¤·þÎñÆ÷Á÷ʽ´«ÊäÊÓÆµÄÚÈÝ
¡¡¡¡·þÎñÆ÷ÐèÒªRTP·þÎñÈí¼þÓëRTSP¿ØÖÆÆ÷Ó¦Óô«ÊäÊÓÆµÄÚÈÝ£¬µ«²»ÐèÒªÔÚ·þÎñÆ÷Éϰ²×°QuickTime¡£Èç·þÎñÆ÷½ö³äµ±×é²¥Öм̣¬Ôò²»ÐèÒªÈÎºÎÆäËüÈí¼þ£¬ÒÔͨ³£·½Ê½×ª·¢ËùÇëÇóµÄRTPÁ÷¡£
¡¡¡¡·þÎñÆ÷ÔÚQTÁ÷ÊÓÆµÖÐʹÓÃÌáʾ¹ì½«ÊÓÆµ´ò°ü³ÉRTPÁ÷¡£Èç·þÎñÆ÷·¢ËÍÓÐÌáʾÊÓÆµµÄµ¥²¥£¬ QuickTimeÊÓÆµ¿ØÖÆÆ÷½«ÔÊÐíÓû§ÔÝÍ£¡¢¿ì½øÓë¿ìÍË£¬Õ⽫Óõ½RTSPÓë·þÎñÆ÷ͨѶ¡£RTP ·þÎñÆ÷²»ÐèÒªÖªµÀQuickTime ýÌåÀàÐÍ»òcodecs¡£ÊÓÆµÎļþÖÐÌáʾ¹ìΪ½«¡¡¡¡¡¡¡¡¡¡QuickTimeýÌåת»¯ÎªRTP°üÌṩÁËÐÅÏ¢¡£Ã¿¸öÌáʾ¹ì°üº¬½¨Á¢Ìض¨¹ìýÌå°üÍ·ËùÐèµÄÊý¾Ý£¬Ò²ÌṩÁËÖ¸ÏòýÌåÊý¾ÝµÄÖ¸Õë¡£RTP·þÎñÆ÷ÒªÄܹ»³ä·Ö½âÎöQuickTimeÊÓÆµÎļþÒÔÕÒµ½Ã¿¸öÌáʾ¹ì£¬È»ºóÔÙÕÒµ½Ìáʾ¹ìÖ¸ÏòµÄ¹ìºÍ²ÉÑùÊý¾Ý¡£Ìáʾ¹ì°üÀ¨Ò»Ð©±ØÒªµÄÔ¤¼ÆËãÖµ£¬Ê¹·þÎñÆ÷´´½¨RTP°ü¸üÈÝÒס£Ìáʾ¹ì¼õÉÙÁËRTP·þÎñÆ÷ºÜ¶à¼ÆËãÁ¿£¬½á¹ûʹRTP·þÎñÆ÷·¢ËÍÊý¾Ý¸üÓÐЧ¡£

µÚ¶þ½Ú QuickTimeÁ÷ʽ´«Êä·þÎñÆ÷£¨QTSS£©¶ËÄ£¿é

¡¡¡¡QTSSÊÇÒ»¸ö´úÂ빫¿ª¡¢»ùÓÚ±ê×¼µÄÁ÷ʽ´«Êä·þÎñÆ÷£¬¿ÉÔËÐÐÔÚ¶àÖÖUNIX²Ù×÷ϵͳÉÏ£¬ÈçMac OS Server¡¢Linux¡¢ FreeBSDÓëSolaris¡£ÒªÊ¹ÓÃQTSS±à³Ì½Ó¿Ú£¬±ØÐëÊìϤRTSP¡¢RTP¡¢RTCPÓëSDPЭÒé¡£QTSSµÄºËÐŦÄÜÊÇ×÷Ϊģ¿éʵÏֵ쬶ÔÄ£¿éµÄÖ§³Ö±»Éè¼Æ½ø·þÎñÆ÷µÄºËÐÄ¡£¿É¿ª·¢¶ÀÁ¢µÄÄ£¿é£¬ÔÚ·þÎñÆ÷Æô¶¯ºóÔØÈ룻Ҳ¿É½«´úÂëÓë·þÎñÆ÷Ò»Æð±àÒë¡£Á½ÖÖ·½·¨µÄÄ£¿éÊÇÏàͬµÄ£¬²»Í¬µÄÊDZàÒ뷽ʽ¡£
¡¡¡¡Ã¿¸öQTSS Ä£¿é±ØÐëʵÏÖÁ½¸ö³ÌÐò£ºÖ÷³ÌÐòÓë·ÖÅɳÌÐò¡£Ö÷³ÌÐòÊÇÔÚQTSS³õʼ»¯Ä£¿éʱµ÷Ó㬶ø·þÎñÆ÷µ÷Ó÷ÖÅÉÄ£¿éʵÏÖÌØ¶¨Ä¿µÄ¡£
Ö÷³ÌÐòÄ£¿é£º

QTSS_Error MyModule _Main(void*inPrivateArgs)
{
return _stublibrary_main(inPrivateArgs,MyModuleDispatch );
}

·ÖÅɳÌÐòÄ£¿é£º
¡¡¡¡

void MyModuleDispatch (QTSS_Role inRole,QTSS_RoleParamPtr inParams);


2£®1 Ä£¿é½ÇÉ«

¡¡¡¡½ÇÉ«¸øÄ£¿éÌṩÁËΪִÐÐijÖÖÀàÐÍ´¦Àí¶øÒѶ¨ÒåºÃµÄ״̬¡£QTSS_Role¶¨Òåÿ¸ö½ÇÉ«µÄÀàÐÍ£¬²¢±íʾ·þÎñÆ÷µÄÄÚ²¿´¦Àí״̬¡£Ò»°ãµÄ£¬·þÎñÆ÷ʹÓöÔÏóÀ´½»»»Ä£¿é¼äµÄÐÅÏ¢¡£

2£®2 QTSS¶ÔÏó

¡¡¡¡QTSS¶ÔÏóΪģ¿é´Ó·þÎñÆ÷È¡µÃÊý¾ÝÓëÏò·þÎñÆ÷ÌṩÊý¾ÝÌṩÁËÒ»Ìõ;¾¶¡£QTSS¶¨ÒåÁ˼¸¸ö¶ÔÏó£¬Ã¿¸ö¶ÔÏó¶¼ÓÐÒ»Ì×Ô¤¶¨ÒåµÄÊôÐÔ¡£·þÎñÆ÷¶¨ÒåÁËÈçÏÂһЩ¶ÔÏóÀàÐÍÃèÊö¿Í»§Á¬½ÓºÍÁ÷£¬RTSPÍ·¡¢Á¬½ÓºÍÇëÇó£¬È«¾Ö·þÎñÆ÷ÐÅÏ¢¡¢·þÎñÆ÷Æ«ºÃºÍ´íÎóÐÅÏ¢¡£

¡¡¡¡QtssRTPStreamObjectType£º
¡¡¡¡µ¥¸öRTPÁ÷Ïà¹ØÊôÐÔ£¬RTPÁ÷¶ÔÏó(RTPStreamObject )ÊÇÕâ¸ö¶ÔÏóÀàÐ͵Ä
¡¡¡¡ÊÂÀý£¬µ÷ÓÃQTSS_AddRTPStream ´´½¨¡£

¡¡¡¡qtssClientSessionObjectType £º
¡¡¡¡¿Í»§Á¬½ÓÏà¹ØÊôÐÔ¡£

¡¡¡¡QtssRTSPSessionObjectType£º
¡¡¡¡RTSP¿Í»§·þÎñÆ÷Á¬½ÓÏà¹ØÊôÐÔ£¬RTSPÁ¬½Ó¶ÔÏó(RTSPSessionObject ) ÊÇÕâ¸ö¶ÔÏóÀàÐ͵ÄÒ»¸öÊÂÀý¡£

¡¡¡¡QtssRTSPRequestObjectType£º
¡¡¡¡µ¥¸öRTSPÇëÇóÏà¹ØÊôÐÔ£¬RTSPÇëÇó¶ÔÏó(RTSPRequestObject ) ÊÇÕâ¸ö¶ÔÏóÀàÐ͵ÄÒ»¸öÊÂÀý¡£

¡¡¡¡qtssRTSPHeaderObjectType £º
¡¡¡¡µ¥¸öRTSPÇëÇóÏà¹ØµÄËùÓÐRTSPÇëÇóÍ·¡£

¡¡¡¡QtssServerObjectType£º
¡¡¡¡È«¾Ö·þÎñÆ÷ÊôÐÔ£¬Èç·þÎñÆ÷ͳ¼Æ¡£

¡¡¡¡QtssPrefsObjectType£º
¡¡¡¡·þÎñÆ÷ÄÚ²¿Æ«ºÃ´æ´¢ÏµÍ³µÄÊôÐÔ¡£

¡¡¡¡qtssTextMessageObjectType £º
¡¡¡¡°üº¬ÆäÖµ½«·µ»Ø¸ø¿Í»§µÄÊôÐÔ¡£

¡¡¡¡È¡µÃÊôÐÔÖµ
¡¡¡¡Ä£¿éʹÓô洢ÔÚ¶ÔÏóÖеÄÊôÐÔÓë·þÎñÆ÷½»»»ÐÅÏ¢£¬Òò´ËÐèҪƵ·±µÄÉèÖûòÈ¡µÃÊôÐÔÖµ¡£ÓÐЩÊôÐÔÊÇÇÀÏȰ²È«µÄ£¬¿ÉÔÚÈκÎʱºòµ÷Óà QTSS_GetValuePtr È¡µÃÆäÖµ£»ÁíһЩÊôÐÔÊÇ·ÇÇÀÏȰ²È«µÄ£¬±ØÐëµ÷ÓÃQTSS_GetValue È¡µÃÆäÖµ¡£»ñµÃ¶ÔÏóÊôÐÔ´úÂëÈçÏ£º

UInt32 MyGetNumCurrentConnections(QTSS_ServerObject inServerObject)
{
//qtssRTPSvrCurConn is a UInt32,so provide a UInt32 for the result.
UInt32 theNumConnections =0;
//Pass in the size of the attribute value.
UInt32 theLength =sizeof(theNumConnections);
//Retreive the value.
QTSS_Error theErr =QTSS_GetValue(inServerObject,qtssRTPSvrCurConn,0,
&theNumConnections,&theLength);
//Check for errors.If the length is not what was expected,return 0.
if ((theErr !=QTSS_NoErr)||(theLength !=sizeof(theNumConnections))
return 0;
return theNumConnections;
}

QTSS_RTSPMethod MyGetRTSPRequestMethod(QTSS_RTSPRequestObject inRTSPRequestObject)
{
QTSS_RTSPMethod*theMethod =NULL;
UInt32 theLen =0;
QTSS_Error theErr =QTSS_GetValuePtr(inRTSPRequestObject,qtssRTSPReqMethod,0,
(void**)&theMethod,&theLen);
if ((theErr !=QTSS_NoErr)||(theLen !=sizeof(QTSS_RTSPMethod))
return -1;//Return a -1 if there is an error,which is not a valid
//QTSS_RTSPMethod index
else
return *theMethod;
}


2£®3 QTSS·þÎñ

¡¡¡¡QTSS·þÎñÊÇÄ£¿é¿É·ÃÎʵģ¬¿ÉÒÔÊÇ·þÎñÆ÷ÌṩµÄÄÚ½¨·þÎñ£¬Ò²¿ÉÒÔÊÇÁíһģ¿éÌṩµÄ¸½¼Ó·þÎñ¡£ÀýÈ磬ÈÕ־ģ¿éÔÊÐíÆäËüÄ£¿éÏò´íÎóÈÕÖ¾ÖÐдÐÅÏ¢¡£Ä£¿éʹÓûص÷³ÌÐò×¢²á¡¢¼¤»î·þÎñ£¬ÓëÒÔÌí¼Ó¡¢²éÕÒ¶ÔÏóÊôÐÔÀàËÆµÄ·½Ê½Ìí¼Ó¡¢²éÕÒ·þÎñ¡£

¡¡¡¡Ã¿¸ö·þÎñÓÐÒ»¸öÃû³Æ£¬Òª¼¤»î·þÎñ£¬µ÷ÓÃÄ£¿é±ØÐëÖªµÀ·þÎñÃû³Æ£¬²¢½«Ãû³Æ½âÎö³ÉID¡£·þÎñÓÐ×Å×ÔÉíÌØ¶¨µÄ²ÎÊý¿é¸ñʽ£¬Êä³ö·þÎñµÄÄ£¿éÓ¦½«Êä³öµÄ·þÎñ×Ðϸ¹éµµ¡£Ä£¿éÔÚ×¢²á½ÇÉ«Öе÷ÓÃQTSS_AddService½«·þÎñÌí¼Óµ½·þÎñÆ÷ÄÚ²¿Êý¾Ý¿âÖУ¬´úÂëÈçÏÂËùʾ£º

void MyAddService()
{
QTSS_Error theErr =QTSS_AddService(\"MyService\",&MyServiceFunction);
}
MyServiceFunctionº¯Êý¶ÔÓ¦ÓÚ±ØÐëÔÚͬһģ¿éÖÐʵÏֵĺ¯ÊýÃû³Æ£¬È磺
QTSS_Error MyServiceFunction(MyServiceArgs*inArgs)
{
//Each service function must take a single void*argument
//Implement the service here.
//Return a QTSS_Error.
}

¡¡¡¡ÎªÁËʹÓ÷þÎñ£¬Ä£¿éµ÷ÓÃQTSS_IDForService »ñµÃ·þÎñµÄID£¬²¢½«·þÎñÃû³Æ×÷Ϊһ¸ö²ÎÊý¡£Ä£¿éʹÓ÷þÎñIDµ÷ÓÃQTSS_DoService (page 63) ʹ·þÎñÔËÐУ¬´úÂëÈçÏ£º

void MyInvokeService()
{
//Service functions take a single void*parameter that corresponds
//to a parameter block specific to the service.
MyServiceParamBlock theParamBlock;
//Initialize service-specific parameters in the parameter block.
theParamBlock.myArgument =xxx;
QTSS_ServiceID theServiceID =qtssIllegalServiceID; //Get the service ID by providing the name of the service.
QTSS_Error theErr =QTSS_IDForService(\'MyService \',&theServiceID);
if (theErr !=QTSS_NoErr)
return;//The service isn \'t available.
//Run the service.
theErr =QTSS_DoService(theServiceID,&theParamBlock);
}

µÚÈý½Ú QuickTimeµÄWindows±à³Ì

¡¡¡¡QuickTimeΪWindows±à³ÌÌṩÁËÍêÕûµÄ¿ª·¢°ü£¬ÕâÀïÖ»¼òµ¥½éÉÜÔÚWindows»·¾³Ï±à³ÌµÄ²½Öè²¢¸ø³öÀý³Ì¡£ ¿ª·¢»ù±¾²½ÖèΪ£º

¡¡¡¡1¡¢ÔÚ³ÌÐòÆäʼ´¦³õʼ»¯QuickTimeýÌå²ã(InitializeQTML) ÓëQuickTime(EnterMovies) ¡£
¡¡¡¡2¡¢½¨Á¢QuickDrawͼÐζ˿ÚÓëÊÓÆµ´°¿Ú(CreatePortAssociation)µÄÁªÏµ¡£
¡¡¡¡3¡¢´ò¿ªÊÓÆµÎļþ(OpenMovieFile) ²¢´ÓÖÐÌáÈ¡ÊÓÆµÄÚÈÝ(NewMovieFromFile)¡£
¡¡¡¡4.¡¢´´½¨ÆÁÄ»ÉÏÏÔʾÊÓÆµµÄ¿ØÖÆÆ÷ (NewMovieController)¡£
¡¡¡¡5. ÔÚ´°¿Ú¹ý³ÌÖУ¬½«ÊäÈëÐÅϢת»¯³ÉQTMLʼþ(WinEventToMacEvent) ²¢½«Æä´«Ê䏸ÊÓÆµ¿ØÖÆÆ÷½øÐд¦Àí (MCIsPlayerEvent)¡£
¡¡¡¡6¡¢µ±²»ÔÙÐèҪʱ£¬´¦ÀíÊÓÆµ(DisposeMovie) ºÍÊÓÆµ¿ØÖÆÆ÷¡£
¡¡¡¡7¡¢µ±´°¿Ú±»ÆÆ»µÊ±(DestroyPortAssociation)£¬´¦ÀíÊÓÆµ´°¿ÚͼÐζ˿ڡ£
¡¡¡¡8. ÔÚ³ÌÐò½áÊø´¦£¬ÖжÏQuickTime (ExitMovies) ÓëQuickTime ýÌå²ã(TerminateQTML)¡£

ÒÔÏÂÀý³Ì˵Ã÷Á˳ÌÐò¿ò¼ÜÓ뽨Á¢µäÐÍWindowsÓ¦ÓóÌÐòµÄ²½Ö裺

#define IDM_OPEN 101

// Global variables
char movieFile[255]; // Name of movie file
Movie theMovie; // Movie object
MovieController theMC; // Movie controller
//////////////////////////////////////////////////////////////////////
int CALLBACK WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow)
{
¡¡¡¡InitializeQTML(0); // Initialize QTML
¡¡¡¡EnterMovies(); // Initialize QuickTime

///////////////////////////////////////////////////////////////////////
// Main message loop
///////////////////////////////////////////////////////////////////////

¡¡¡¡ExitMovies(); // Terminate QuickTime
¡¡¡¡TerminateQTML(); // Terminate QTML
} /* end WinMain */
//////////////////////////////////////////////////////////////////////
LRESULT CALLBACK WndProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
¡¡¡¡MSG winMsg;
¡¡¡¡EventRecord qtmlEvent;
¡¡¡¡int wmEvent, wmId;
// Fill in contents of MSG structure

¡¡¡¡NativeEventToMacEvent (&winMsg, &qtmlEvent);// Convert message to a QTML event
¡¡¡¡MCIsPlayerEvent (theMC, (const EventRecord *) &qtmlEvent);
// Pass event to movie controller
switch ( message )
{
¡¡¡¡case WM_CREATE:
¡¡¡¡CreatePortAssociation (hWnd, NULL); // Register window with QTML
¡¡¡¡break;
¡¡¡¡case WM_COMMAND:
¡¡¡¡wmEvent = HIWORD(wParam); // Parse menu selection
¡¡¡¡wmId = LOWORD(wParam);
¡¡¡¡switch ( wmId )
{
¡¡¡¡case IDM_OPEN:
¡¡¡¡CloseMovie (); // Close previous movie, if any
¡¡¡¡if ( GetFile (movieFile) ) // Get file name from user
¡¡¡¡OpenMovie (hWnd, movieFile); // Open the movie
¡¡¡¡break;

¡¡¡¡default:
¡¡¡¡return DefWindowProc (hWnd, message,
¡¡¡¡wParam, lParam); } /* end switch ( wmId ) */
¡¡¡¡break;
¡¡¡¡case WM_CLOSE:
¡¡¡¡¡¡¡¡DestroyPortAssociation (hWnd); // Unregister window with QTML
¡¡¡¡break;

¡¡¡¡default:
¡¡¡¡return DefWindowProc (hWnd, message, wParam, lParam);
} /* end switch ( message ) */
¡¡¡¡return 0;
} /* end WndProc */
/////////////////////////////////////////////////////////////////
BOOL GetFile (char *movieFile)
{
¡¡¡¡OPENFILENAME ofn;
// Fill in contents of OPENFILENAME structure

¡¡¡¡if ( GetOpenFileName(&ofn) ) // Let user select file
¡¡¡¡¡¡¡¡return TRUE;
¡¡¡¡else
¡¡¡¡return FALSE;
} /* end GetFile */
////////////////////////////////////////////////////////////////
void OpenMovie (HWND hwnd, char fileName[255])
{
¡¡¡¡short theFile = 0;
¡¡¡¡FSSpec sfFile;
¡¡¡¡char fullPath[255];
¡¡¡¡SetGWorld ( (CGrafPtr)GetNativeWindowPort( hwnd ), nil); // Set graphics port
¡¡¡¡strcpy (fullPath, fileName); // Copy full pathname
¡¡¡¡c2pstr (fullPath); // Convert to Pascal string
¡¡¡¡FSMakeFSSpec (0, 0L, fullPath, &sfFile); // Make file-system
// specification record
¡¡¡¡OpenMovieFile (&sfFile, &theFile, fsRdPerm); // Open movie file
¡¡¡¡NewMovieFromFile (&theMovie, theFile, nil, // Get movie from file
¡¡¡¡nil, newMovieActive, nil);
¡¡¡¡CloseMovieFile (theFile); // Close movie file
¡¡¡¡theMC = NewMovieController (theMovie, ... ); // Make movie controller

} /* end OpenMovie */
////////////////////////////////////////////////////////////////
void CloseMovie (void)
{
¡¡¡¡if ( theMC ) // Destroy movie controller, if any
¡¡¡¡DisposeMovieController (theMC);
¡¡¡¡if ( theMovie ) // Destroy movie object, if any
¡¡¡¡DisposeMovie (theMovie);
} /* end CloseMovie */



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=414557

Àà±ð£º ÎÞ·ÖÀà |  ÆÀÂÛ(625) |  ä¯ÀÀ(12200) |  ÊÕ²Ø
2006Äê01ÔÂ09ÈÕ 17:48:01

QuickTimeµçÓ°(Movie)

Îļþ¸ñʽ
¡¡ Apple¹«Ë¾µÄQuickTimeµçÓ°ÎļþÏÖÒѳÉΪÊÇÊý×ÖýÌåÁìÓòµÄ¹¤Òµ±ê×¼¡£ QuickTimeµçÓ°Îļþ¸ñʽ¶¨ÒåÁË´æ´¢Êý×ÖýÌåÄÚÈݵıê×¼·½·¨£¬Ê¹ÓÃÕâÖÖÎļþ¸ñʽ²»½ö¿ÉÒÔ´æ´¢µ¥¸öµÄýÌåÄÚÈÝ(ÈçÊÓÆµÖ¡»òÒôƵ²ÉÑù)£¬¶øÇÒÄܱ£´æ¶Ô¸ÃýÌå×÷Æ·µÄÍêÕûÃèÊö£»QuickTimeÎļþ¸ñʽ±»Éè¼ÆÓÃÀ´ÊÊӦΪÓëÊý×Ö»¯Ã½Ìåһͬ¹¤×÷ÐèÒª´æ´¢µÄ¸÷ÖÖÊý¾Ý¡£ÒòΪÕâÖÖÎļþ¸ñʽÄÜÓÃÀ´ÃèÊö¼¸ºõËùÓеÄýÌå½á¹¹£¬ËùÒÔËüÊÇÓ¦ÓóÌÐò¼ä£¨²»¹ÜÔËÐÐÆ½Ì¨ÈçºÎ£©½»»»Êý¾ÝµÄÀíÏë¸ñʽ¡£QuickTimeÎļþ¸ñʽÖÐýÌåÃèÊöºÍýÌåÊý¾ÝÊÇ·Ö¿ª´æ´¢µÄ£¬Ã½ÌåÃèÊö»òÔªÊý¾Ý£¨meta-data£©½Ð×öµçÓ°£¨movie£©,°üº¬¹ìµÀÊýÄ¿¡¢ÊÓÆµÑ¹Ëõ¸ñʽºÍʱ¼äÐÅÏ¢¡£Í¬Ê±movie°üº¬Ã½ÌåÊý¾Ý´æ´¢ÇøÓòµÄË÷Òý¡£Ã½ÌåÊý¾ÝÊÇËùÓеIJÉÑùÊý¾Ý£¬ÈçÊÓÆµÖ¡ºÍÒôƵ²ÉÑù£¬Ã½ÌåÊý¾Ý¿ÉÒÔÓëQuickTime movie´æ´¢ÔÚͬһ¸öÎļþÖУ¬Ò²¿ÉÒÔÔÚÒ»¸öµ¥¶ÀµÄÎļþ»òÕßÔÚ¼¸¸öÎļþÖС£


1. »ù±¾¸ÅÄî
¡¡ QuickTime ʹÓÃÁ½ÖÖ»ù±¾½á¹¹´æ´¢ÐÅÏ¢£º±ê×¼Ô­×Ó£¨classic atoms£© ºÍ QTÔ­×Ó£¨QT atoms£©£¬±ê×¼Ô­×ÓÊǼòµ¥Ô­×Ó£¬QTÔ­×ÓÊÇÔ­×ÓÈÝÆ÷Ô­×Ó£¬ÔÊÐí½¨Á¢¸´Ôӵķֲã½á¹¹¡£QuickTime atom containers ÌṩÔÚQuickTime Öд洢ÐÅÏ¢µÄ»ù±¾½á¹¹£¬ËüÊÇQT atoms µÄÊ÷ÐÍ·Ö²ã½á¹¹¡£
Ô­×Ó£¨Atoms£©
¡¡¡¡1¡¢QuickTime ÎļþµÄ»ù±¾Êý¾Ýµ¥ÔªÊÇÔ­×Ó£¨atom£©£¬Ã¿¸öÔ­×Ó°üº¬Êý¾Ý¼°Êý¾ÝµÄ´óСºÍÊý¾ÝÀàÐÍÐÅÏ¢¡£Ô­×Ó°üº¬±¨Í·ºÍÔ­×ÓÊý¾Ý£¬±¨Í·ÔÊÐíСÐͳ߶ȻòÀ©Õ¹³ß¶ÈµÄÊý¾Ý£¬¶àÊýÔ­×ÓʹÓÃСÐͳ߶ȣ¨32룩£¬Í¨³£Ö»ÓÐýÌåÊý¾ÝÔ­×ÓÐèÒª64λ´óС¡£
¡¡¡¡2¡¢QuickTime Ô­×ÓÈÝÆ÷£¨Atom Containers£©
¡¡¡¡QuickTime atom containerÊÇQuickTimeÎļþÖд洢ÐÅÏ¢µÄ»ù±¾½á¹¹£¬Ò»¸öÔ­×ÓÈÝÆ÷ÊÇQT atomµÄÊôÐÔ·Ö²ã½á¹¹¡£Ã¿¸ö QT atom °üº¬Êý¾Ý»òÆäËüÔ­×Ó¡£Èç¹ûÒ»¸öÔ­×Ó°üº¬ÆäËüÔ­×Ó£¬Ëü¾ÍÊǸ¸Ô­×Ó£¨parent atom£©£¬±»°üº¬µÄÔ­×Ó½Ð×ÓÔ­×Ó£¨child atoms£©¡£Ã¿¸ö¸¸Ô­×ÓµÄ×ÓÔ­×ÓÓÉatom type ºÍatom IDΩһµØ±êʶ¡£ °üº¬Êý¾ÝµÄ QT atom ½ÐÒ³Ô­×Ó£¨leaf atom£©.
¡¡¡¡£³¡¢QuickTime File½á¹¹
¡¡¡¡QuickTimeÎļþ¼òµ¥µØËµ¾ÍÊÇһȺԭ×ӵļ¯ºÏ£¬ ¶ÔÔ­×ӵĴÎÐòûÓй涨¡£
¡¡¡¡Îļþϵͳ֧³ÖÎļþÀ©Õ¹Ãû£¬QuickTimeÎļþÀ©Õ¹Ãûͨ³£ÊÇ .mov ¡£ÔÚ Macintosh ƽ̨ÉÏ£¬QuickTimeÎļþÀàÐÍÊÇMooV ¡£ÔÚÒòÌØÍøÉÏ£¬ QuickTime ÎļþÓÉmime ÐÍ "video/quicktime" À´Ìṩ·þÎñ¡£
¡¡¡¡4¡¢QuickTime movie
¡¡¡¡QuickTime movie atoms µÄÔ­×ÓÀàÐÍΪ 'moov' ¡£ËüÊÇÆäËüÀàÐ͵ÄÈÝÆ÷£¬ÒÀ²ãÀàÍÆ£¬Ëü°üº¬¹ìµÀÔ­×Ó£¨ track atoms£©£¬¶ø¹ìµÀÔ­×ÓÓÖ°üº¬Ã½ÌåÔ­×Ó£¨media atoms£©£¬×îµ×²ãÊÇÒ³Ô­×Ó£¨leaf atoms£©£¬°üº¬Êµ¼ÊÊý¾Ý¡£
¡¡¡¡MovieÓÐÒ»¸ö»ò¶à¸ö¹ìµÀ×é³É£¬Ã¿¸ö¹ìµÀ¶¼¶ÀÁ¢ÓÚÆäËü¹ìµÀ£¬¹ìµÀÌṩһÖÖÇ¿´ó¡¢Áé»îµÄ½á¹¹£¬Ê¹ÓÃËü¿ÉÒÔ¾«È·µØ¿ØÖƲúÉú¸´ÔӵĽ»»¥µçÓ°¡£Ã¿¸ö¹ìµÀ¶¼´ú±íÁËÒ»¸ö¶ÀÌØµÄËæÊ±¼ä±ä»¯µÄ¹¦ÄÜ»ò·½Ãæ¡£Ò»¸öµ¥¸ömovie ¿ÉÒÔÓÐÐí¶à²»Í¬µÄ¹ìµÀÀàÐÍ£¬°üÀ¨video, audio, text, sprite, Flash, HREF, hinting, QuickTime VRºÍ chapter divisions¡£
¡¡¡¡Àý£ºMovie track-°üº¬Õû¸ömovieµÄ°æÈ¨¡¢×¢Êͼ°ÆäËü¸ÅÒªÐÅÏ¢
¡¡¡¡Video track-Êý×Ö»¯ÊÓÆµ¡¢×ÅÉ«µÄ3D¶¯»­»òÆäËû±à¼­Í¼ÏñµÄÐòÁУ¬ºÍ¿ÉÑ¡ÌØÊâЧ¹û¡£
¡¡¡¡Text track--ÊäÈëµ½QuickTimeÖеıêÌâ¡¢ Ƭͷ×ÖÄ»µÈ×Ö·ûÐÅÏ¢¡£
¡¡¡¡Hint track-°üº¬ÔÊÐíÁ÷·þÎñÆ÷ͨ¹ýʵʱÁ÷·½Ê½´«ÊäýÌå¹ìµÀµÄÐÅÏ¢¡£
¡¡¡¡movie°üº¬Èý¸ö¹ìµÀ£ºvideo¡¢ music¡¢text£¬¹ìµÀÖÐÏÔʾµÄ×ÊÁϰüº¬ÔÚýÌå½á¹¹ÖС£QuickTime movies ÔÚʱ¼äÖáÉÏ×é֯ýÌ壬Ëü°ÑmoviesºÍýÌåÊý¾Ý½á¹¹×÷ΪÆÕͨµÄʱ¼ä´æÔÚêÔÚʱ¼ä×ø±êϵÉÏ¡£

µÚÒ»½Ú QuickTimeÁ÷ʽ´«Êä
¡¡¡¡QTÁ÷ÊÇͨ¹ýÍøÂ罫ÊÓÆµ´Ó·þÎñÆ÷·¢Ë͵½¿Í»§µÄ´«Ê䷽ʽ¡£ÓëÎļþ´«Ê䲻ͬ£¬¿Í»§¶Ë±ßÏÂÔØ±ß²¥·Å£¬¶ø²»±ØµÈµ½ÏÂÔØÍê±Ï¡£·þÎñÆ÷½«ÊÓÆµÄÚÈݷֳɰü£¬Í¨¹ýÍøÂç·¢ËͳöÈ¥£»ÔÚ½ÓÊÕ¶Ë£¬°ü±»ÖØÐÂ×é×°£¬µ½À´ºó¾Í¿É²¥·Å¡£QTÖ§³Öµ¥²¥ºÍ×é²¥¡£

½ÓÊÕ¡¢²¥·ÅÊÓÆµÄÚÈÝ
¡¡¡¡Ò»°ãµÄ£¬¿Éͨ¹ý´ò¿ªÊÓÆµÎļþ¡¢SDPÎļþÓëURLÀ´´ò¿ªÁ÷ÊÓÆµ¡£Í¨³£µ÷ÓÃNewMovieFromFileÀ´´ò¿ªÊÓÆµÎļþ£¬Ò²¿ÉÒÔµ÷Óà NewMovieFromDataRef´ÓURL´ò¿ªÊÓÆµÎļþ¡£¶ÔʵʱÁ÷ÊÓÆµ£¬URL±ØÐëʹÓÃRTSPЭÒé¡£ÒÔRTSP URL´ò¿ªÊÓÆµµÄ´úÂëÈçÏ£º
¡¡¡¡char url[] = "rtsp://www.mycompany.com/mymovie.mov";
¡¡¡¡Handle urlDataRef;
¡¡¡¡urlDataRef = NewHandle(strlen(url) + 1);
¡¡¡¡if ( ( err = MemError()) != noErr) goto bail;
¡¡¡¡BlockMoveData(url, *urlDataRef, strlen(url) + 1);
¡¡¡¡err = NewMovieFromDataRef(&movieInfo->theMovie, newMovieActive,
¡¡¡¡nil, urlDataRef, URLDataHandlerSubType);
¡¡¡¡DisposeHandle(urlDataRef);
Ó¦ÓÃÒª¿É¿¿µÄ²¥·ÅʵʱÁ÷ÊÓÆµ£¬±ØÐë×ñ´ÓÈçϲ½Ö裺
¡¤ ÒԸ߼¶ÊÓÆµ¹¤¾ßÏä»òÊÓÆµµ¼ÈëÆ÷´ò¿ªÊÓÆµ¡£
¡¤ ²»Òª¼Ù¶¨²¥·ÅµÄÊÓÆµ¹ì½á¹¹·´Ó³ÁËԭʼÊÓÆµµÄ¹ì½á¹¹¡£
¡¤ ʹÓÃÊÓÆµ¿ØÖÆÆ÷²¥·ÅÊÓÆµ£¬»òʹÓÃÐÂPrePrerollMovieº¯ÊýÔÚ²¥·ÅǰÉèÖÃÁ÷¡£
¡¤ ÏÔʾÊÓÆµ¿ØÖÆÆ÷·µ»ØµÄ״̬ÐÅÏ¢¡£
¡¤ ²¥·ÅÊÓÆµÊ±×¼±¸´¦Àí²¥·Å´íÎó
¡¤ ×¼±¸¶¯Ì¬¸Ä±äÊÓÆµÌØÕ÷£¬Èç¸ß¶È¡¢¿í¶ÈµÈ¡£
¡¤ ²»ÒªÈÏΪÊÓÆµÁ¢¼´¿ªÊ¼²¥·Å¡£

·þÎñÆ÷Á÷ʽ´«ÊäÊÓÆµÄÚÈÝ
¡¡¡¡·þÎñÆ÷ÐèÒªRTP·þÎñÈí¼þÓëRTSP¿ØÖÆÆ÷Ó¦Óô«ÊäÊÓÆµÄÚÈÝ£¬µ«²»ÐèÒªÔÚ·þÎñÆ÷Éϰ²×°QuickTime¡£Èç·þÎñÆ÷½ö³äµ±×é²¥Öм̣¬Ôò²»ÐèÒªÈÎºÎÆäËüÈí¼þ£¬ÒÔͨ³£·½Ê½×ª·¢ËùÇëÇóµÄRTPÁ÷¡£
¡¡¡¡·þÎñÆ÷ÔÚQTÁ÷ÊÓÆµÖÐʹÓÃÌáʾ¹ì½«ÊÓÆµ´ò°ü³ÉRTPÁ÷¡£Èç·þÎñÆ÷·¢ËÍÓÐÌáʾÊÓÆµµÄµ¥²¥£¬ QuickTimeÊÓÆµ¿ØÖÆÆ÷½«ÔÊÐíÓû§ÔÝÍ£¡¢¿ì½øÓë¿ìÍË£¬Õ⽫Óõ½RTSPÓë·þÎñÆ÷ͨѶ¡£RTP ·þÎñÆ÷²»ÐèÒªÖªµÀQuickTime ýÌåÀàÐÍ»òcodecs¡£ÊÓÆµÎļþÖÐÌáʾ¹ìΪ½«QuickTimeýÌåת»¯ÎªRTP°üÌṩÁËÐÅÏ¢¡£Ã¿¸öÌáʾ¹ì°üº¬½¨Á¢Ìض¨¹ìýÌå°üÍ·ËùÐèµÄÊý¾Ý£¬Ò²ÌṩÁËÖ¸ÏòýÌåÊý¾ÝµÄÖ¸Õë¡£RTP·þÎñÆ÷ÒªÄܹ»³ä·Ö½âÎöQuickTimeÊÓÆµÎļþÒÔÕÒµ½Ã¿¸öÌáʾ¹ì£¬È»ºóÔÙÕÒµ½Ìáʾ¹ìÖ¸ÏòµÄ¹ìºÍ²ÉÑùÊý¾Ý¡£Ìáʾ¹ì°üÀ¨Ò»Ð©±ØÒªµÄÔ¤¼ÆËãÖµ£¬Ê¹·þÎñÆ÷´´½¨RTP°ü¸üÈÝÒס£Ìáʾ¹ì¼õÉÙÁËRTP·þÎñÆ÷ºÜ¶à¼ÆËãÁ¿£¬½á¹ûʹRTP·þÎñÆ÷·¢ËÍÊý¾Ý¸üÓÐЧ¡£

µÚ¶þ½Ú QuickTimeÁ÷ʽ´«Êä·þÎñÆ÷£¨QTSS£©¶ËÄ£¿é
¡¡¡¡QTSSÊÇÒ»¸ö´úÂ빫¿ª¡¢»ùÓÚ±ê×¼µÄÁ÷ʽ´«Êä·þÎñÆ÷£¬¿ÉÔËÐÐÔÚ¶àÖÖUNIX²Ù×÷ϵͳÉÏ£¬ÈçMac OS Server¡¢Linux¡¢ FreeBSDÓëSolaris¡£ÒªÊ¹ÓÃQTSS±à³Ì½Ó¿Ú£¬±ØÐëÊìϤRTSP¡¢RTP¡¢RTCPÓëSDPЭÒé¡£QTSSµÄºËÐŦÄÜÊÇ×÷Ϊģ¿éʵÏֵ쬶ÔÄ£¿éµÄÖ§³Ö±»Éè¼Æ½ø·þÎñÆ÷µÄºËÐÄ¡£¿É¿ª·¢¶ÀÁ¢µÄÄ£¿é£¬ÔÚ·þÎñÆ÷Æô¶¯ºóÔØÈ룻Ҳ¿É½«´úÂëÓë·þÎñÆ÷Ò»Æð±àÒë¡£Á½ÖÖ·½·¨µÄÄ£¿éÊÇÏàͬµÄ£¬²»Í¬µÄÊDZàÒ뷽ʽ¡£
¡¡¡¡Ã¿¸öQTSS Ä£¿é±ØÐëʵÏÖÁ½¸ö³ÌÐò£ºÖ÷³ÌÐòÓë·ÖÅɳÌÐò¡£Ö÷³ÌÐòÊÇÔÚQTSS³õʼ»¯Ä£¿éʱµ÷Ó㬶ø·þÎñÆ÷µ÷Ó÷ÖÅÉÄ£¿éʵÏÖÌØ¶¨Ä¿µÄ¡£
Ö÷³ÌÐòÄ£¿é£ºQTSS_Error MyModule _Main(void*inPrivateArgs)
{return _stublibrary_main(inPrivateArgs,MyModuleDispatch );}
·ÖÅɳÌÐòÄ£¿é£ºvoid MyModuleDispatch (QTSS_Role inRole,QTSS_RoleParamPtr inParams);
2£®1 Ä£¿é½ÇÉ«
¡¡¡¡½ÇÉ«¸øÄ£¿éÌṩÁËΪִÐÐijÖÖÀàÐÍ´¦Àí¶øÒѶ¨ÒåºÃµÄ״̬¡£QTSS_Role¶¨Òåÿ¸ö½ÇÉ«µÄÀàÐÍ£¬²¢±íʾ·þÎñÆ÷µÄÄÚ²¿´¦Àí״̬¡£Ò»°ãµÄ£¬·þÎñÆ÷ʹÓöÔÏóÀ´½»»»Ä£¿é¼äµÄÐÅÏ¢¡£
2£®2 QTSS¶ÔÏó¡¡¡¡QTSS¶ÔÏóΪģ¿é´Ó·þÎñÆ÷È¡µÃÊý¾ÝÓëÏò·þÎñÆ÷ÌṩÊý¾ÝÌṩÁËÒ»Ìõ;¾¶¡£QTSS¶¨ÒåÁ˼¸¸ö¶ÔÏó£¬Ã¿¸ö¶ÔÏó¶¼ÓÐÒ»Ì×Ô¤¶¨ÒåµÄÊôÐÔ¡£·þÎñÆ÷¶¨ÒåÁËÈçÏÂһЩ¶ÔÏóÀàÐÍÃèÊö¿Í»§Á¬½ÓºÍÁ÷£¬RTSPÍ·¡¢Á¬½ÓºÍÇëÇó£¬È«¾Ö·þÎñÆ÷ÐÅÏ¢¡¢·þÎñÆ÷Æ«ºÃºÍ´íÎóÐÅÏ¢¡£
¡¡¡¡QtssRTPStreamObjectType£º
¡¡¡¡µ¥¸öRTPÁ÷Ïà¹ØÊôÐÔ£¬RTPÁ÷¶ÔÏó(RTPStreamObject )ÊÇÕâ¸ö¶ÔÏóÀàÐ͵Ä
¡¡¡¡ÊÂÀý£¬µ÷ÓÃQTSS_AddRTPStream ´´½¨¡£
¡¡¡¡qtssClientSessionObjectType £º
¡¡¡¡¿Í»§Á¬½ÓÏà¹ØÊôÐÔ¡£
¡¡¡¡QtssRTSPSessionObjectType£º
¡¡¡¡RTSP¿Í»§·þÎñÆ÷Á¬½ÓÏà¹ØÊôÐÔ£¬RTSPÁ¬½Ó¶ÔÏó(RTSPSessionObject ) ÊÇÕâ¸ö¶ÔÏóÀàÐ͵ÄÒ»¸öÊÂÀý¡£
¡¡¡¡QtssRTSPRequestObjectType£º
¡¡¡¡µ¥¸öRTSPÇëÇóÏà¹ØÊôÐÔ£¬RTSPÇëÇó¶ÔÏó(RTSPRequestObject ) ÊÇÕâ¸ö¶ÔÏóÀàÐ͵ÄÒ»¸öÊÂÀý¡£
¡¡¡¡qtssRTSPHeaderObjectType £º
¡¡¡¡µ¥¸öRTSPÇëÇóÏà¹ØµÄËùÓÐRTSPÇëÇóÍ·¡£
¡¡¡¡QtssServerObjectType£º
¡¡¡¡È«¾Ö·þÎñÆ÷ÊôÐÔ£¬Èç·þÎñÆ÷ͳ¼Æ¡£
¡¡¡¡QtssPrefsObjectType£º
¡¡¡¡·þÎñÆ÷ÄÚ²¿Æ«ºÃ´æ´¢ÏµÍ³µÄÊôÐÔ¡£
¡¡¡¡qtssTextMessageObjectType £º
¡¡¡¡°üº¬ÆäÖµ½«·µ»Ø¸ø¿Í»§µÄÊôÐÔ¡£
¡¡¡¡È¡µÃÊôÐÔÖµ
¡¡¡¡Ä£¿éʹÓô洢ÔÚ¶ÔÏóÖеÄÊôÐÔÓë·þÎñÆ÷½»»»ÐÅÏ¢£¬Òò´ËÐèҪƵ·±µÄÉèÖûòÈ¡µÃÊôÐÔÖµ¡£ÓÐЩÊôÐÔÊÇÇÀÏȰ²È«µÄ£¬¿ÉÔÚÈκÎʱºòµ÷Óà QTSS_GetValuePtr È¡µÃÆäÖµ£»ÁíһЩÊôÐÔÊÇ·ÇÇÀÏȰ²È«µÄ£¬±ØÐëµ÷ÓÃQTSS_GetValue È¡µÃÆäÖµ¡£»ñµÃ¶ÔÏóÊôÐÔ¡¡¡¡´úÂëÈçÏ£º
UInt32 MyGetNumCurrentConnections(QTSS_ServerObject inServerObject)
{//qtssRTPSvrCurConn is a UInt32,so provide a UInt32 for the result.UInt32 theNumConnections =0;//Pass in the size of the attribute value.UInt32 theLength =sizeof(theNumConnections);//Retreive the value.QTSS_Error theErr =QTSS_GetValue(inServerObject,qtssRTPSvrCurConn,0,&theNumConnections,&theLength);//Check for errors.If the length is not what was expected,return 0.if ((theErr !=QTSS_NoErr)||(theLength !=sizeof(theNumConnections))return 0;return theNumConnections;}QTSS_RTSPMethod MyGetRTSPRequestMethod(QTSS_RTSPRequestObject inRTSPRequestObject){QTSS_RTSPMethod*theMethod =NULL;UInt32 theLen =0;QTSS_Error theErr =QTSS_GetValuePtr(inRTSPRequestObject,qtssRTSPReqMethod,0,(void**)&theMethod,&theLen);if ((theErr !=QTSS_NoErr)||(theLen !=sizeof(QTSS_RTSPMethod))return -1;//Return a -1 if there is an error,which is not a valid//QTSS_RTSPMethod indexelsereturn *theMethod;}
2£®3 QTSS·þÎñ
¡¡¡¡QTSS·þÎñÊÇÄ£¿é¿É·ÃÎʵģ¬¿ÉÒÔÊÇ·þÎñÆ÷ÌṩµÄÄÚ½¨·þÎñ£¬Ò²¿ÉÒÔÊÇÁíһģ¿éÌṩµÄ¸½¼Ó·þÎñ¡£ÀýÈ磬ÈÕ־ģ¿éÔÊÐíÆäËüÄ£¿éÏò´íÎóÈÕÖ¾
ÖÐдÐÅÏ¢¡£Ä£¿éʹÓûص÷³ÌÐò×¢²á¡¢¼¤»î·þÎñ£¬ÓëÒÔÌí¼Ó¡¢²éÕÒ¶ÔÏóÊôÐÔÀàËÆµÄ·½Ê½Ìí¼Ó¡¢²éÕÒ·þÎñ¡£
¡¡¡¡Ã¿¸ö·þÎñÓÐÒ»¸öÃû³Æ£¬Òª¼¤»î·þÎñ£¬µ÷ÓÃÄ£¿é±ØÐëÖªµÀ·þÎñÃû³Æ£¬²¢½«Ãû³Æ½âÎö³ÉID¡£·þÎñÓÐ×Å×ÔÉíÌØ¶¨µÄ²ÎÊý¿é¸ñʽ£¬Êä³ö·þÎñµÄÄ£¿éÓ¦½«Êä³öµÄ·þÎñ×Ðϸ¹éµµ¡£Ä£¿éÔÚ×¢²á½ÇÉ«Öе÷ÓÃQTSS_AddService½«·þÎñÌí¼Óµ½·þÎñÆ÷ÄÚ²¿Êý¾Ý¿âÖУ¬´úÂëÈçÏÂËùʾ£º
void MyAddService(){QTSS_Error theErr =QTSS_AddService("MyService",&MyServiceFunction);}
MyServiceFunction º¯Êý¶ÔÓ¦ÓÚ±ØÐëÔÚͬһģ¿éÖÐʵÏֵĺ¯ÊýÃû³Æ£¬È磺QTSS_Error MyServiceFunction(MyServiceArgs*inArgs){//Each service function must take a single void*argument//Implement the service here.//Return a QTSS_Error.}
¡¡¡¡ÎªÁËʹÓ÷þÎñ£¬Ä£¿éµ÷ÓÃQTSS_IDForService »ñµÃ·þÎñµÄID£¬²¢½«·þÎñÃû³Æ×÷Ϊһ¸ö²ÎÊý¡£Ä£¿éʹÓ÷þÎñIDµ÷ÓÃQTSS_DoService (page 63) ʹ·þÎñÔËÐУ¬´úÂëÈçÏ£ºvoid MyInvokeService(){//Service functions take a single void*parameter that corresponds//to a parameter block specific to the service.MyServiceParamBlock theParamBlock;//Initialize service-specific parameters in the parameter block.theParamBlock.myArgument=xxx;QTSS_ServiceID theServiceID =qtssIllegalServiceID; //Get the service ID by providing the name of the service.QTSS_Error theErr =QTSS_IDForService('MyService ',&theServiceID);if (theErr !=QTSS_NoErr)return;//The service isn 't available.//Run the service.theErr =QTSS_DoService(theServiceID,&theParamBlock);}


µÚÈý½Ú QuickTimeµÄWindows±à³Ì
¡¡¡¡ QuickTimeΪWindows±à³ÌÌṩÁËÍêÕûµÄ¿ª·¢°ü£¬ÕâÀïÖ»¼òµ¥½éÉÜÔÚWindows»·¾³Ï±à³ÌµÄ²½Öè²¢¸ø³öÀý³Ì¡£ ¿ª·¢»ù±¾²½ÖèΪ£º
¡¡¡¡1¡¢ÔÚ³ÌÐòÆäʼ´¦³õʼ»¯QuickTimeýÌå²ã(InitializeQTML) ÓëQuickTime(EnterMovies) ¡£
¡¡¡¡2¡¢½¨Á¢QuickDrawͼÐζ˿ÚÓëÊÓÆµ´°¿Ú(CreatePortAssociation)µÄÁªÏµ¡£
¡¡¡¡3¡¢´ò¿ªÊÓÆµÎļþ(OpenMovieFile) ²¢´ÓÖÐÌáÈ¡ÊÓÆµÄÚÈÝ(NewMovieFromFile)¡£
¡¡¡¡4.¡¢´´½¨ÆÁÄ»ÉÏÏÔʾÊÓÆµµÄ¿ØÖÆÆ÷ (NewMovieController)¡£
¡¡¡¡5. ÔÚ´°¿Ú¹ý³ÌÖУ¬½«ÊäÈëÐÅϢת»¯³ÉQTMLʼþ(WinEventToMacEvent) ²¢½«Æä´«Ê䏸ÊÓÆµ¿ØÖÆÆ÷½øÐд¦Àí (MCIsPlayerEvent)¡£
¡¡¡¡6¡¢µ±²»ÔÙÐèҪʱ£¬´¦ÀíÊÓÆµ(DisposeMovie) ºÍÊÓÆµ¿ØÖÆÆ÷¡£
¡¡¡¡7¡¢µ±´°¿Ú±»ÆÆ»µÊ±(DestroyPortAssociation)£¬´¦ÀíÊÓÆµ´°¿ÚͼÐζ˿ڡ£
¡¡¡¡8. ÔÚ³ÌÐò½áÊø´¦£¬ÖжÏQuickTime (ExitMovies) ÓëQuickTime ýÌå²ã(TerminateQTML)¡£


Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=414548

Àà±ð£º ÎÞ·ÖÀà |  ÆÀÂÛ(2) |  ä¯ÀÀ(10431) |  ÊÕ²Ø
2006Äê01ÔÂ09ÈÕ 17:15:00

QuickTime SDK±à³Ì



µÚÒ»½Ú QuickTimeÁ÷ʽ´«Êä


¡¡¡¡QTÁ÷ÊÇͨ¹ýÍøÂ罫ÊÓÆµ´Ó·þÎñÆ÷·¢Ë͵½¿Í»§µÄ´«Ê䷽ʽ¡£ÓëÎļþ´«Ê䲻ͬ£¬¿Í»§¶Ë±ßÏÂÔØ±ß²¥·Å£¬¶ø²»±ØµÈµ½ÏÂÔØÍê±Ï¡£·þÎñÆ÷½«ÊÓÆµÄÚÈݷֳɰü£¬Í¨¹ýÍøÂç·¢ËͳöÈ¥£»ÔÚ½ÓÊÕ¶Ë£¬°ü±»ÖØÐÂ×é×°£¬µ½À´ºó¾Í¿É²¥·Å¡£QTÖ§³Öµ¥²¥ºÍ×é²¥¡£


½ÓÊÕ¡¢²¥·ÅÊÓÆµÄÚÈÝ
¡¡¡¡Ò»°ãµÄ£¬¿Éͨ¹ý´ò¿ªÊÓÆµÎļþ¡¢SDPÎļþÓëURLÀ´´ò¿ªÁ÷ÊÓÆµ¡£Í¨³£µ÷ÓÃNewMovieFromFileÀ´´ò¿ªÊÓÆµÎļþ£¬Ò²¿ÉÒÔµ÷Óà NewMovieFromDataRef´ÓURL´ò¿ªÊÓÆµÎļþ¡£¶ÔʵʱÁ÷ÊÓÆµ£¬URL±ØÐëʹÓÃRTSPЭÒé¡£ÒÔRTSP URL´ò¿ªÊÓÆµµÄ´úÂëÈçÏ£º

char url[] = \"rtsp://www.mycompany.com/mymovie.mov\";
¡¡¡¡Handle urlDataRef;
¡¡¡¡urlDataRef = NewHandle(strlen(url) + 1);
¡¡¡¡if ( ( err = MemError()) != noErr) goto bail;
¡¡¡¡BlockMoveData(url, *urlDataRef, strlen(url) + 1);
¡¡¡¡err = NewMovieFromDataRef(&movieInfo->theMovie, newMovieActive,
¡¡¡¡nil, urlDataRef, URLDataHandlerSubType);
¡¡¡¡DisposeHandle(urlDataRef);

Ó¦ÓÃÒª¿É¿¿µÄ²¥·ÅʵʱÁ÷ÊÓÆµ£¬±ØÐë×ñ´ÓÈçϲ½Ö裺
¡¤ÒԸ߼¶ÊÓÆµ¹¤¾ßÏä»òÊÓÆµµ¼ÈëÆ÷´ò¿ªÊÓÆµ¡£
¡¤²»Òª¼Ù¶¨²¥·ÅµÄÊÓÆµ¹ì½á¹¹·´Ó³ÁËԭʼÊÓÆµµÄ¹ì½á¹¹¡£
¡¤Ê¹ÓÃÊÓÆµ¿ØÖÆÆ÷²¥·ÅÊÓÆµ£¬»òʹÓÃÐÂPrePrerollMovieº¯ÊýÔÚ²¥·ÅǰÉèÖÃÁ÷¡£
¡¤ÏÔʾÊÓÆµ¿ØÖÆÆ÷·µ»ØµÄ״̬ÐÅÏ¢¡£
¡¤²¥·ÅÊÓÆµÊ±×¼±¸´¦Àí²¥·Å´íÎó
¡¤×¼±¸¶¯Ì¬¸Ä±äÊÓÆµÌØÕ÷£¬Èç¸ß¶È¡¢¿í¶ÈµÈ¡£
¡¤²»ÒªÈÏΪÊÓÆµÁ¢¼´¿ªÊ¼²¥·Å¡£
¡¤·þÎñÆ÷Á÷ʽ´«ÊäÊÓÆµÄÚÈÝ
¡¡¡¡·þÎñÆ÷ÐèÒªRTP·þÎñÈí¼þÓëRTSP¿ØÖÆÆ÷Ó¦Óô«ÊäÊÓÆµÄÚÈÝ£¬µ«²»ÐèÒªÔÚ·þÎñÆ÷Éϰ²×°QuickTime¡£Èç·þÎñÆ÷½ö³äµ±×é²¥Öм̣¬Ôò²»ÐèÒªÈÎºÎÆäËüÈí¼þ£¬ÒÔͨ³£·½Ê½×ª·¢ËùÇëÇóµÄRTPÁ÷¡£
¡¡¡¡·þÎñÆ÷ÔÚQTÁ÷ÊÓÆµÖÐʹÓÃÌáʾ¹ì½«ÊÓÆµ´ò°ü³ÉRTPÁ÷¡£Èç·þÎñÆ÷·¢ËÍÓÐÌáʾÊÓÆµµÄµ¥²¥£¬ QuickTimeÊÓÆµ¿ØÖÆÆ÷½«ÔÊÐíÓû§ÔÝÍ£¡¢¿ì½øÓë¿ìÍË£¬Õ⽫Óõ½RTSPÓë·þÎñÆ÷ͨѶ¡£RTP ·þÎñÆ÷²»ÐèÒªÖªµÀQuickTime ýÌåÀàÐÍ»òcodecs¡£ÊÓÆµÎļþÖÐÌáʾ¹ìΪ½«¡¡¡¡¡¡¡¡¡¡QuickTimeýÌåת»¯ÎªRTP°üÌṩÁËÐÅÏ¢¡£Ã¿¸öÌáʾ¹ì°üº¬½¨Á¢Ìض¨¹ìýÌå°üÍ·ËùÐèµÄÊý¾Ý£¬Ò²ÌṩÁËÖ¸ÏòýÌåÊý¾ÝµÄÖ¸Õë¡£RTP·þÎñÆ÷ÒªÄܹ»³ä·Ö½âÎöQuickTimeÊÓÆµÎļþÒÔÕÒµ½Ã¿¸öÌáʾ¹ì£¬È»ºóÔÙÕÒµ½Ìáʾ¹ìÖ¸ÏòµÄ¹ìºÍ²ÉÑùÊý¾Ý¡£Ìáʾ¹ì°üÀ¨Ò»Ð©±ØÒªµÄÔ¤¼ÆËãÖµ£¬Ê¹·þÎñÆ÷´´½¨RTP°ü¸üÈÝÒס£Ìáʾ¹ì¼õÉÙÁËRTP·þÎñÆ÷ºÜ¶à¼ÆËãÁ¿£¬½á¹ûʹRTP·þÎñÆ÷·¢ËÍÊý¾Ý¸üÓÐЧ¡£

µÚ¶þ½Ú QuickTimeÁ÷ʽ´«Êä·þÎñÆ÷£¨QTSS£©¶ËÄ£¿é

¡¡¡¡QTSSÊÇÒ»¸ö´úÂ빫¿ª¡¢»ùÓÚ±ê×¼µÄÁ÷ʽ´«Êä·þÎñÆ÷£¬¿ÉÔËÐÐÔÚ¶àÖÖUNIX²Ù×÷ϵͳÉÏ£¬ÈçMac OS Server¡¢Linux¡¢ FreeBSDÓëSolaris¡£ÒªÊ¹ÓÃQTSS±à³Ì½Ó¿Ú£¬±ØÐëÊìϤRTSP¡¢RTP¡¢RTCPÓëSDPЭÒé¡£QTSSµÄºËÐŦÄÜÊÇ×÷Ϊģ¿éʵÏֵ쬶ÔÄ£¿éµÄÖ§³Ö±»Éè¼Æ½ø·þÎñÆ÷µÄºËÐÄ¡£¿É¿ª·¢¶ÀÁ¢µÄÄ£¿é£¬ÔÚ·þÎñÆ÷Æô¶¯ºóÔØÈ룻Ҳ¿É½«´úÂëÓë·þÎñÆ÷Ò»Æð±àÒë¡£Á½ÖÖ·½·¨µÄÄ£¿éÊÇÏàͬµÄ£¬²»Í¬µÄÊDZàÒ뷽ʽ¡£
¡¡¡¡Ã¿¸öQTSS Ä£¿é±ØÐëʵÏÖÁ½¸ö³ÌÐò£ºÖ÷³ÌÐòÓë·ÖÅɳÌÐò¡£Ö÷³ÌÐòÊÇÔÚQTSS³õʼ»¯Ä£¿éʱµ÷Ó㬶ø·þÎñÆ÷µ÷Ó÷ÖÅÉÄ£¿éʵÏÖÌØ¶¨Ä¿µÄ¡£
Ö÷³ÌÐòÄ£¿é£º

QTSS_Error MyModule _Main(void*inPrivateArgs)
{
return _stublibrary_main(inPrivateArgs,MyModuleDispatch );
}

·ÖÅɳÌÐòÄ£¿é£º
¡¡¡¡

void MyModuleDispatch (QTSS_Role inRole,QTSS_RoleParamPtr inParams);


2£®1 Ä£¿é½ÇÉ«

¡¡¡¡½ÇÉ«¸øÄ£¿éÌṩÁËΪִÐÐijÖÖÀàÐÍ´¦Àí¶øÒѶ¨ÒåºÃµÄ״̬¡£QTSS_Role¶¨Òåÿ¸ö½ÇÉ«µÄÀàÐÍ£¬²¢±íʾ·þÎñÆ÷µÄÄÚ²¿´¦Àí״̬¡£Ò»°ãµÄ£¬·þÎñÆ÷ʹÓöÔÏóÀ´½»»»Ä£¿é¼äµÄÐÅÏ¢¡£

2£®2 QTSS¶ÔÏó

¡¡¡¡QTSS¶ÔÏóΪģ¿é´Ó·þÎñÆ÷È¡µÃÊý¾ÝÓëÏò·þÎñÆ÷ÌṩÊý¾ÝÌṩÁËÒ»Ìõ;¾¶¡£QTSS¶¨ÒåÁ˼¸¸ö¶ÔÏó£¬Ã¿¸ö¶ÔÏó¶¼ÓÐÒ»Ì×Ô¤¶¨ÒåµÄÊôÐÔ¡£·þÎñÆ÷¶¨ÒåÁËÈçÏÂһЩ¶ÔÏóÀàÐÍÃèÊö¿Í»§Á¬½ÓºÍÁ÷£¬RTSPÍ·¡¢Á¬½ÓºÍÇëÇó£¬È«¾Ö·þÎñÆ÷ÐÅÏ¢¡¢·þÎñÆ÷Æ«ºÃºÍ´íÎóÐÅÏ¢¡£

¡¡¡¡QtssRTPStreamObjectType£º
¡¡¡¡µ¥¸öRTPÁ÷Ïà¹ØÊôÐÔ£¬RTPÁ÷¶ÔÏó(RTPStreamObject )ÊÇÕâ¸ö¶ÔÏóÀàÐ͵Ä
¡¡¡¡ÊÂÀý£¬µ÷ÓÃQTSS_AddRTPStream ´´½¨¡£

¡¡¡¡qtssClientSessionObjectType £º
¡¡¡¡¿Í»§Á¬½ÓÏà¹ØÊôÐÔ¡£

¡¡¡¡QtssRTSPSessionObjectType£º
¡¡¡¡RTSP¿Í»§·þÎñÆ÷Á¬½ÓÏà¹ØÊôÐÔ£¬RTSPÁ¬½Ó¶ÔÏó(RTSPSessionObject ) ÊÇÕâ¸ö¶ÔÏóÀàÐ͵ÄÒ»¸öÊÂÀý¡£

¡¡¡¡QtssRTSPRequestObjectType£º
¡¡¡¡µ¥¸öRTSPÇëÇóÏà¹ØÊôÐÔ£¬RTSPÇëÇó¶ÔÏó(RTSPRequestObject ) ÊÇÕâ¸ö¶ÔÏóÀàÐ͵ÄÒ»¸öÊÂÀý¡£

¡¡¡¡qtssRTSPHeaderObjectType £º
¡¡¡¡µ¥¸öRTSPÇëÇóÏà¹ØµÄËùÓÐRTSPÇëÇ