-- ·|­û / µù¥U -- ¡@
¡@±b¸¹¡G
¡@±K½X¡G
¡@ | µù¥U | §Ñ°O±K½X
3/26 ·s®Ñ¨ì¡I 3/19 ·s®Ñ¨ì¡I 3/14 ·s®Ñ¨ì¡I 12/12 ·s®Ñ¨ì¡I
ÁʮѬyµ{¡EQ & A¡E¯¸°È¯d¨¥ª©¡E«ÈªA«H½c
¢x 3ds Max¢x Maya¢x Rhino¢x After Effects¢x SketchUp¢x ZBrush¢x Painter¢x Unity¢x
¢x PhotoShop¢x AutoCad¢x MasterCam¢x SolidWorks¢x Creo¢x UG¢x Revit¢x Nuke¢x
¢x C#¢x C¢x C++¢x Java¢x ¹CÀ¸µ{¦¡¢x Linux¢x ´O¤J¦¡¢x PLC¢x FPGA¢x Matlab¢x
¢x Àb«È¢x ¸ê®Æ®w¢x ·j¯Á¤ÞÀº¢x ¼v¹³³B²z¢x Fluent¢x VR+AR¢x ANSYS¢x ²`«×¾Ç²ß¢x
¢x ³æ´¹¤ù¢x AVR¢x OpenGL¢x Arduino¢x Raspberry Pi¢x ¹q¸ô³]­p¢x Cadence¢x Protel¢x
¢x Hadoop¢x Python¢x Stm32¢x Cortex¢x Labview¢x ¤â¾÷µ{¦¡¢x Android¢x iPhone¢x
¥i¬d®Ñ¦W,§@ªÌ,ISBN,3dwoo®Ñ¸¹
¸Ô²Ó®ÑÄy¤ÀÃþ

ª½¼½¨t²Î¶}µo¡G°ò¤_Nginx»PNginx-rtmp-module

( ²Åé ¦r)
§@ªÌ¡G¨ô®Ô¬ì§Þ§Þ³N¹Î¶¤Ãþ§O¡G1. -> µ{¦¡³]­p -> ºî¦X
¡@¡@¡@2. -> µ{¦¡³]­p -> ºô¸ô½sµ{ -> Nginx
ĶªÌ¡G
¥Xª©ªÀ¡G¹q¤l¤u·~¥Xª©ªÀª½¼½¨t²Î¶}µo¡G°ò¤_Nginx»PNginx-rtmp-module 3dWoo®Ñ¸¹¡G 50459
¸ß°Ý®ÑÄy½Ð»¡¥X¦¹®Ñ¸¹¡I

¡i¯Ê®Ñ¡j
NT°â»ù¡G 345 ¤¸

¥Xª©¤é¡G1/1/2019
­¶¼Æ¡G212
¥úºÐ¼Æ¡G0
¯¸ªø±ÀÂË¡G
¦L¨ê¡G¶Â¥Õ¦L¨ê»y¨t¡G ( ²Åé ª© )
¥[¤JÁʪ«¨® ¢x¥[¨ì§Úªº³Ì·R
(½Ð¥ýµn¤J·|­û)
ISBN¡G9787121351785
§@ªÌ§Ç¡@|¡@ĶªÌ§Ç¡@|¡@«e¨¥¡@|¡@¤º®e²¤¶¡@|¡@¥Ø¿ý¡@|¡@§Ç
(²Åé®Ñ¤W©Ò­z¤§¤U¸ü³sµ²¯Ó®É¶O¥\, ®¤¤£¾A¥Î¦b¥xÆW, ­YŪªÌ»Ý­n½Ð¦Û¦æ¹Á¸Õ, ®¤¤£«OÃÒ)
§@ªÌ§Ç¡G

ĶªÌ§Ç¡G

«e¨¥¡G

ª½¼½¨t²Î¶}µo«e´º
ÀHµÛ¤¬Ápºô§Þ³Nªº¬ð­¸²r¶i¡Aµuµu´X¦~¡A²¾°Ê³]³Æ±q³Ìªìªº¥u¯à¥´¹q¸Ü¡Bµoµu«H©M¹Ï¤ùªº«D´¼¯à¤â¾÷¡Aµo®i¬°²{¦bªº¸Ëº¡ªÀ¥æ¡BµøÀW¡B¤ä¥I¡B¸ê°Tµ¥§Î§Î¦â¦âÀ³¥Îµ{§Çªº´¼¯à¤â¾÷¡A³q«H¤è¦¡¤]±q¤å¦r¡B¹Ï¤ùÅܦ¨­µÀW¡BµøÀWµ¥¡A¥i¨£¤HÃþ¥¿¸g¾ú¤@³õ³q«H¤è¦¡ªºÅÜ­²¡C
¤£ª¾¹DŪªÌ¦³¨S¦³ª`·N¹L¡A¨ä¹ê«Ü¦­¥H«e´N¥X²{¹Lª½¼½¥­»O¡A³Ì¦­ªºµøÀW²á¤Ñ«Ç´N¬O³oºØª½¼½¥­»Oªº«e¨­¡C¥u¬O·í®Éªº¥D¼½»Ý­n¨Ì¾a­pºâ¾÷µ¥³]³Æ¶i¦æª½¼½¡AÆ[²³¤]»Ý­n¦b¹q¸£¤WÆ[¬Ý¡C²{¦b¡AÀHµÛ¬ì§Þªºµo®i¡A¤j¦h¼Æ¤H¦Ü¤Ö³£¦³¤@³¡´¼¯à¤â¾÷¡A¦Ó¥B´X¥G¨«¨ì­þ¨½³£¦³Wi-Fi¡A³o´N¬°²¾°Êª½¼½³þ©w¤F¨}¦nªº°ò¦¡C¦]¦¹¡A¦Û2015¦~¥H¨Ó¡Aª½¼½»â°ì¤w¸g¦¨¬°°Ó·~¥¨ÀY©M·s¾U¥ø·~ª§¹Üªº»â°ì¡C
¥»®Ñªº¥Øªº»P¼g§@¹Lµ{
³o¬O¤@¥»Â²³æ¡B³q«U©öÀ´ªºª½¼½¨t²Î¶}µo¤Jªù®ÑÄy¡A³q¹L¥¦¡AŪªÌ°ò¥»¥i¥H±q¹s¶}©l¾Ç²ßª½¼½¨t²Îªº·f«Ø¹Lµ{¡C¥»®Ñ¤¶²Ð¤F±qNginxªº°ò¥»À³¥Î¨ìNginx-rtmp-moduleªºÀ³¥Î¡A¦A¨ì°ò¦¹ê²{©M¬[ºc¡AÅýŪªÌ¥i¥H±q¤@­Ó«Ü§Cªº°_ÂI§Ö³t¤F¸Ñ¦p¦ó³¡¸pª½¼½ªA°È¾¹¤Î¶}µoSDK¡C
¦b¶}©l³W¹º¥»®Ñ¤§®É¡A§Ú­Ì¤@ª½¦b¦Ò¼{¨Ï¥Î«ç¼Ëªº¤è¦¡±Nª½¼½¨t²Î¶}µo§Þ³N¥H³Ì²³æ¡B³Ì«K±¶ªº¤è¦¡®i²{µ¹ÅªªÌ¡C³Ì²×¡A§Ú­Ì¨M©w±q·f«Ø¡X¡XÀ³¥Î¡X¡X¸Ñ¨M¤è®×³o3­Ó§»Æ[¨¤«×¨ÓÄÄ­zª½¼½¨t²Îªº¶}µo¹Lµ{¡C
¦p¦ó¾\Ū¥»®Ñ
¥»®Ñ¤À¬°¤T³¡¤À¡G
²Ä¤@³¡¤À¡]²Ä1³¹¡^¥D­n¤¶²ÐNginx¡A¥]¬A¤°¤\¬ONginx¡A¬°¤°¤\­n¿ï¾ÜNginx¡A¦b¯S©wªºÀô¹Ò¤U¦p¦ó¦w¸Ë¡B°t¸m¤Î¨Ï¥ÎNginx¡C
²Ä¤G³¡¤À¡]²Ä2~4³¹¡^¥D­n¤¶²Ð°ò¤_NginxªºNginx-rtmp-module¡BFFmpeg²Õ¥óªº¦w¸Ë»P°t¸m¡A¦}§¹¾ã¦a·f«Ø¤F¤@­Ó²³æªºª½¼½¨t²Î¡C
²Ä¤T³¡¤À¡]²Ä5~7³¹¡^¥D­n¤¶²Ð¦b¦h²×ºÝ¤U¦p¦ó¨Ï¥Î¤£¦P§Þ³N«Ø¥ß°ò¤_ª½¼½ªºSDK¡A¦}¤¶²Ð¦hºØSDK¬ÛÃö§Þ³N®Ø¬[¡C
ŪªÌ¹ï¶H
? ¹ïª½¼½¶}µo¦³¿³½ìªº¤H­û¡C
? °ª¯Å»y¨¥¶}µoªÌ¡C
? ­µ/µøÀW¶}µo¤JªùªÌ¡C
¥»®Ñ§@ªÌ
¥»®Ñ¤º®e¥D­n¥Ñ¨ô®Ô§Þ³N¹Î¶¤¤¤ªº¤_³sªL¡B±i¾å½U¡BÁúÆA½¬¡B¦óª÷­è¡Bºa»T¡B°¨·½¡B§õ±j§¹¦¨¡C¦p¦³¬ÛÃö°ÝÃD¡AÅwªïµo°e¶l¥ó ¡A¤]Åwªï³X°Ý§@ªÌ³Õ«È¡C
§@ ªÌ
¤º®e²¤¶¡G

¥»®Ñ¬O¤@¥»³q«U©öÀ´ªºª½¼½¨t²Î¶}µo¤Jªù®ÑÄy¡C³q¹L¥»®ÑŪªÌ¥i¥H±q¹s¶}©l¾Ç²ß·f«Øª½¼½¨t²Î¡C¥»®Ñ¤À¬°¤T³¡¤À¡A²Ä¤@³¡¤À¡]²Ä1³¹¡^¥D­n¤¶²ÐNginx¡A¥]¬A¤°¤\¬ONginx¡A¬°¤°¤\­n¿ï¾ÜNginx¡A¦b¯S©wªºÀô¹Ò¤U¦p¦ó¦w¸Ë¡B°t¸m¤Î¨Ï¥ÎNginx¡C²Ä¤G³¡¤À¡]²Ä2~4³¹¡^¥D­n¤¶²Ð°ò¤_NginxªºNginx-rtmp-module¡BFFmpeg²Õ¥óªº¦w¸Ë»P°t¸m¡A¦}§¹¾ã¦a·f«Ø¤F¤@­Ó²³æªºª½¼½¨t²Î¡C²Ä¤T³¡¤À¡]²Ä5~7³¹¡^¥D­n¤¶²Ð¦b¦h²×ºÝ¤U¦p¦ó¨Ï¥Î¤£¦P§Þ³N«Ø¥ß°ò¤_ª½¼½ªºSDK¡A¦}¤¶²Ð¦hºØSDK¬ÛÃö§Þ³N®Ø¬[¡C¥»®Ñ¾A¦X¹ïª½¼½¨t²Î¶}µo¦³¿³½ìªº¤H­û¡B°ª¯Å»y¨¥¶}µoªÌ¡B­µ/µøÀW¶}µo¤JªùªÌ¡C
¥Ø¿ý¡G

²Ä1³¹ Nginx°ò¦ 1
1.1 Nginx·§­z¤Î§@¥Î 1
1.1.1 ¥i§@¬°WebªA°È¾¹ 1
1.1.2 ¥i§@¬°¤Ï¦V¥N²zªA°È¾¹ 2
1.1.3 ¥i§@¬°¶l¥ó¥N²zªA°È¾¹ 3
1.2 ¬°¤°¤\¿ï¾ÜNginx 3
1.3 ¦w¸ËNginx 4
1.3.1 ¿ï¾Ü¦w¸Ëª©¥» 4
1.3.2 ½sĶ¦w¸ËNginx 5
1.3.3 °t¸m¨¾¤õùÙ 7
1.3.4 ¥[¤J¦Û±Ò°Ê©M¨t²ÎªA°È 9
1.3.5 ¥[¤J¨t²ÎÅܶq 12
1.4 Nginx©R¥O¦æ 13
1.4.1 ©R¥O¦æ°Ñ¼Æ 14
1.4.2 ±Ò°Ê¡B°±¤î©M­«±Ò 15
1.4.3 «H¸¹±±¨î 17
1.4.4 ¥­·Æ¤É¯Å 18
1.5 Nginx°t¸m 19
1.5.1 °t¸m©R¥O 20
1.5.2 °t¸m¤W¤U¤å 20
1.5.3 °t¸m¤å¥óµ²ºc 21
1.5.4 °t¸mÅܶq 22
1.5.5 °t¸m¹ê¨Ò 23
1.6 Nginx¼Ò¶ô¤ÆÅé¨t 25
1.6.1 ¼Ò¶ô·§­z 25
1.6.2 ¼Ò¶ô¤ÀÃþ 26
1.7 ¥»³¹¤pµ² 26
²Ä2³¹ Nginx-rtmp-module°ò¦ 27
2.1 Nginx-rtmp-module¤¶²Ð 27
2.2 RTMP¨óij»PHLS¨óij 28
2.2.1 RTMP¨óij 28
2.2.2 HLS¨óij 29
2.3 NRMªº·f«Ø 34
2.4 ·f«Ø²Ä¤@­Óª½¼½¨t²Î 36
2.5 ¥»³¹¤pµ² 40
²Ä3³¹ Nginx-rtmp-module¶i¶¥ 41
3.1 ¦p¦ó¨ÏNRM¤ä«ùHLS¨óijª½¼½ 41
3.2 ±À/©Ô¬y»P¦ê¬y½X 43
3.3 Control±±¨î¾¹ 43
3.3.1 record©R¥O 44
3.3.2 drop©R¥O 47
3.3.3 redirect©R¥O 47
3.4 ¼Æ¾Ú²Î­p¼Ò¶ô 47
3.5 Exec¬ÛÃö¥\¯à 48
3.6 ¥»³¹¤pµ² 48
²Ä4³¹ Nginx-rtmp-module À³¥Î 49
4.1 FFmpeg 49
4.1.1 FFmpegªº¦w¸Ë 51
4.1.2 FFmpegªº°t¸m 54
4.1.3 FFmpeg»Pª½¼½ªºÀ³¥Î 59
4.2 °ò¦°t¸m«H®§ 59
4.3 ¥»³¹¤pµ² 64
²Ä5³¹ AndroidºÝ¸Ñ¨M¤è®× 65
5.1 ²¾°ÊºÝµøÀWª½¼½¤¶²Ð 65
5.2 Yasea®Ø¬[¤¶²Ð 66
5.3 IJKPlayer®Ø¬[¤¶²Ð 69
5.4 AndroidºÝ¶}µo¹ê¾Ô 74
5.4.1 ¥D­n¥\¯à 75
5.4.2 ®Ø¬[¾É¤J 75
5.4.3 ÂoÃè 77
5.4.4 ±À¬y 80
5.4.5 ©Ô¬y 83
5.4.6 ¼u¹õ 90
5.5 ¥»³¹¤pµ² 94
²Ä6³¹ iOSºÝ¸Ñ¨M¤è®× 95
6.1 iOSºÝµøÀWª½¼½¤¶²Ð 95
6.2 SDKªº¿ï¾Ü©M«e´Á·Ç³Æ 96
6.3 GPUImage®Ø¬[¤¶²Ð 99
6.4 LFLiveKit®Ø¬[¤¶²Ð 103
6.5 IJKPlayer®Ø¬[¤¶²Ð 106
6.6 iOSºÝ¶}µo¹ê¾Ô 110
6.6.1 ¥D­n¥\¯à 110
6.6.2 ®Ø¬[¾É¤J 111
6.6.3 ÂoÃè 112
6.6.4 ±À¬y 116
6.6.5 ©Ô¬y 121
6.6.6 ÂIÃÙ 126
6.6.7 ¼u¹õ 129
6.7 ¥»³¹¤pµ² 132
²Ä7³¹ WebºÝ¸Ñ¨M¤è®× 133
7.1 Adobe Flash Player 133
7.1.1 Flash Player 134
7.1.2 ¬°¤°¤\­n¨Ï¥ÎFlash 134
7.2 ActionScript»PFlex 135
7.2.1 FlexÀô¹Òªº·f«Ø 135
7.2.2 Flex¶µ¥Øªº³Ð«Ø 137
7.2.3 ¨Ï¥ÎActionScript²Õ¥ó 142
7.2.4 NetStream¹ï¶H 148
7.2.5 Àò¨úµøÀW¬y 149
7.2.6 ¹ê¨Ò¡G¨Ï¥Îas¹ê²{¤@­Ó°ò¦ªº±À¬y¾¹ 151
7.3 SWFObject 156
7.3.1 ¬°¤°¤\¿ï¾ÜSWFObject 156
7.3.2 ÀRºA´O¤JFlash Player 158
7.3.3 °ÊºA´O¤JFlash Player 162
7.4 Flex»PJavaScriptªº³q«H 167
7.4.1 Flex½Õ¥ÎJavaScript¨ç¼Æ 167
7.4.2 ¨Ï¥ÎJavaScript½Õ¥ÎFlex¨ç¼Æ 168
7.4.3 ¨Ï¥ÎJavaScriptºÝÀò¨úSWF¹ï¶Hªº¤Þ¥Î 169
7.4.4 ¹ê¨Ò¡G¨Ï¥ÎSWFObject±NFlash¼½©ñ¾¹´O¤Jºô­¶¤¤ 170
7.5 ¼½©ñ¾¹ªº¨î§@ 171
7.5.1 ¥D­n¥\¯à 171
7.5.2 ¬ÛÃöÅܶq 172
7.5.3 ªì©l¤ÆµøÀWµe¥¬ 172
7.5.4 ¥[¸üµøÀW¬y¦}¼½©ñ 172
7.5.5 °ª«GÅã¥Ü¼½©ñ¶i«×¤Î½w¨R¶i«× 174
7.5.6 µøÀWªº¼½©ñ»P¼È°± 175
7.5.7 ©ì°Ê·Æ¶ô¼½©ñµøÀW 176
7.5.8 ¼½©ñµ²§ô³B²z 177
7.5.9 ­µ¶q¤j¤p±±¨î 177
7.5.10 ¥þ«ÌÅã¥Ü±±¨î 178
7.5.11 ¬y¼Æ¾Ú¦r²Å®æ¦¡¤Æ 178
7.5.12 µøÀWµe­±ªº¥­·ÆÀu¤Æ³B²z 179
7.5.13 ¼½©ñ±µ¤fªº½Õ¥Î 179
7.5.14 ¹ê¨Ò¡G¨î§@¦Û©w¸q¼½©ñ¾¹ 180
7.6 WebºÝ¶}µo¹ê¾Ô 185
7.6.1 ±À¬y 185
7.6.2 ©Ô¬y 195
§Ç¡G