1 00:00:00,000 --> 00:00:05,900 2 00:00:05,900 --> 00:00:07,170 >> Сам Греен: Здраво свима. 3 00:00:07,170 --> 00:00:08,640 Добродошли на наш семинар. 4 00:00:08,640 --> 00:00:10,009 Моје име је Сам. 5 00:00:10,009 --> 00:00:11,050 Х'у ЗАБРИСКИЕ: Ја сам Хју. 6 00:00:11,050 --> 00:00:17,420 Сам Греен: И ми ћемо да причамо данас о ЈаваСцрипт и Веб Аудио АПИ. 7 00:00:17,420 --> 00:00:21,180 Само да почне, ово је скица нашег дневног реда семинара. 8 00:00:21,180 --> 00:00:25,350 Ми ћемо почети говоримо о зашто би требало да буде заинтересован за Веб 9 00:00:25,350 --> 00:00:30,130 Аудио АПИ зашто је Јава-скрипта језик вам треба за то, 10 00:00:30,130 --> 00:00:32,619 а онда говорити о ЈаваСцрипт ессентиалс-- тако као, 11 00:00:32,619 --> 00:00:34,800 хода вас кроз неке основе језика, 12 00:00:34,800 --> 00:00:37,290 а онда говорити о Аудио АПИ на високом нивоу. 13 00:00:37,290 --> 00:00:41,140 Затим, Хју ће говорити о неким од фаза аудио продукције 14 00:00:41,140 --> 00:00:45,509 а онда демо овај страшан секвенцер Пројекат је изградио и показати вам код. 15 00:00:45,509 --> 00:00:48,050 А онда ћемо имати времена за питања на крају за људе 16 00:00:48,050 --> 00:00:49,593 који су овде живе. 17 00:00:49,593 --> 00:00:50,540 >> Х'у ЗАБРИСКИЕ: Кул. 18 00:00:50,540 --> 00:00:50,990 >> Сам Греен: Кул. 19 00:00:50,990 --> 00:00:51,383 >> Х'у ЗАБРИСКИЕ: Кул. 20 00:00:51,383 --> 00:00:52,170 Ја ћу резервну копију. 21 00:00:52,170 --> 00:00:54,960 >> Сам Греен: Па, прво прве ствари. 22 00:00:54,960 --> 00:00:57,840 Дакле, један од великих ствари о Веб Аудио АПИ 23 00:00:57,840 --> 00:01:00,480 је да нема постављање потребно. 24 00:01:00,480 --> 00:01:04,230 Она долази уграђен у Већина модерних претраживачи, 25 00:01:04,230 --> 00:01:08,630 укључујући Цхроме, Едге, у целини гомила Остали-- свих оних 26 00:01:08,630 --> 00:01:12,650 да велики делови људи користе данас. 27 00:01:12,650 --> 00:01:14,807 Тако да нема подесити, Поред управо се 28 00:01:14,807 --> 00:01:16,890 веб сервер иде за можете да почнете радити 29 00:01:16,890 --> 00:01:18,420 на вашем пројекту, што је одлично. 30 00:01:18,420 --> 00:01:21,500 31 00:01:21,500 --> 00:01:24,190 >> Ми препоручујемо прилично тешко да узмете у обзир 32 00:01:24,190 --> 00:01:26,530 користи Цхроме за Јавасцрипт веб програмирање, 33 00:01:26,530 --> 00:01:30,260 само зато свог програмера алати су стварно јаки. 34 00:01:30,260 --> 00:01:33,220 Као пример шта мислимо рекавши отвори своју ЈаваСцрипт 35 00:01:33,220 --> 00:01:38,600 цонсоле-- ако идете у Цхроме и погледате било коју веб страницу, 36 00:01:38,600 --> 00:01:43,897 и оставио клик Прегледајте елемент, а затим 37 00:01:43,897 --> 00:01:46,730 одеш у овом малом падајућем менију овде и кликнете на конзоли, 38 00:01:46,730 --> 00:01:50,660 видећете шта отвара Изгледа Много као командној линији која вас 39 00:01:50,660 --> 00:01:53,720 можда ћете видети на вашем Мац, или на ИД. 40 00:01:53,720 --> 00:01:59,260 И тако, можемо Тип команде овде, као Слободан, 41 00:01:59,260 --> 00:02:01,350 и друге команде тако. 42 00:02:01,350 --> 00:02:04,267 Можемо створити променљиве, као ћемо видети касније у ЈаваСцрипт. 43 00:02:04,267 --> 00:02:07,100 И тако нешто можемо да урадимо у Јавасцрипт, можемо да урадимо са конзолом, 44 00:02:07,100 --> 00:02:11,430 и то је супер згодан начин да се старт играју са АПИ 45 00:02:11,430 --> 00:02:15,760 и да се осећају боље са Јавасцрипт право искључити шишмиш. 46 00:02:15,760 --> 00:02:18,290 Потребан поставка, што је заиста лепо. 47 00:02:18,290 --> 00:02:18,790 Кул. 48 00:02:18,790 --> 00:02:22,064 49 00:02:22,064 --> 00:02:22,880 Страва. 50 00:02:22,880 --> 00:02:24,780 >> Дакле, само још једна ствар да додам. 51 00:02:24,780 --> 00:02:27,780 Ако имате било питања-- постоје многи од вас који нису живим овде, 52 00:02:27,780 --> 00:02:31,232 слободно нас-- ове емаил су наши емаил адресе. 53 00:02:31,232 --> 00:02:33,190 Ако имате питања не желите да нас питате, 54 00:02:33,190 --> 00:02:36,160 као, ох имам буг у мом коду, или тако нешто 55 00:02:36,160 --> 00:02:39,270 то је мало конкретнији, Можда га први Гоогле. 56 00:02:39,270 --> 00:02:42,340 Постоји много сјајних ресурса о Веб Аудио АПИ вани. 57 00:02:42,340 --> 00:02:44,089 То је јако добро документовати и то је био 58 00:02:44,089 --> 00:02:47,194 користи тони људи у индустрија, и људи који су само 59 00:02:47,194 --> 00:02:48,610 изградњу забавне ствари за себе. 60 00:02:48,610 --> 00:02:51,306 Дакле, требало би да постоји много ресурса тамо. 61 00:02:51,306 --> 00:02:53,040 Страва. 62 00:02:53,040 --> 00:02:56,100 >> Кул, па зашто Веб аудио АПИ? 63 00:02:56,100 --> 00:02:59,840 Овај дијаграм је мало од еволуције начина 64 00:02:59,840 --> 00:03:04,100 звук на Интернету је порастао током времена. 65 00:03:04,100 --> 00:03:13,080 Бгсоунд је као оригинални ХТМЛ таг да Интернет Екплорер користи за подршку. 66 00:03:13,080 --> 00:03:16,790 То допуштено само за прилично основних звукова, функционалност није био веома робустан, 67 00:03:16,790 --> 00:03:19,380 а нисте могли да компликовано редослед, 68 00:03:19,380 --> 00:03:21,890 или контролисати када је почео звук и зауставио веома снажно. 69 00:03:21,890 --> 00:03:23,930 Дакле, то није био нарочито добро развијена. 70 00:03:23,930 --> 00:03:27,470 После тога, фласх Дошао алонг-- која, 71 00:03:27,470 --> 00:03:31,712 Сигуран сам да сте ви момци сви упознати са Фласх-- можда не како то ради, 72 00:03:31,712 --> 00:03:32,920 али ти си сигурно видио. 73 00:03:32,920 --> 00:03:35,586 Мораш да ажурирате свој Фласх Плуг-ин, све такве ствари, 74 00:03:35,586 --> 00:03:40,110 и то свакако продужио домет функционалности који је био на располагању. 75 00:03:40,110 --> 00:03:45,370 Али што корисник инсталира плуг-ин је дефинитивно 76 00:03:45,370 --> 00:03:48,480 је сметња, укључујући Фласх у апликацији, зар не? 77 00:03:48,480 --> 00:03:52,410 Јер онда сте зависи од корисник иде и проналажењу ове плуг-ин, 78 00:03:52,410 --> 00:03:54,660 и вероватно се окренуо са овим додатним кораком 79 00:03:54,660 --> 00:03:56,640 они морају да предузму да користите апликацију. 80 00:03:56,640 --> 00:04:01,270 А онда би могао да буде ажурирање да ти сломити целу апликацију, 81 00:04:01,270 --> 00:04:03,880 и завршила се као ноћна мора за програмера, такође. 82 00:04:03,880 --> 00:04:06,230 Дакле, то је била барикада. 83 00:04:06,230 --> 00:04:10,480 >> И онда након тога дошао, ХТМЛ звук ознака, који 84 00:04:10,480 --> 00:04:16,579 је функција више модерне ХТМЛ-- који свакако дозвољено за много више ствари, 85 00:04:16,579 --> 00:04:20,050 али чак и ствари које можете да урадите било је мало ограничен само 86 00:04:20,050 --> 00:04:22,730 као резултат ствари да ХТМЛ-је способан. 87 00:04:22,730 --> 00:04:26,060 Дакле, када ЈаваСцрипт АПИ Веб аудио АПИ 88 00:04:26,060 --> 00:04:29,290 постао стандард пракса широм претраживачима, 89 00:04:29,290 --> 00:04:32,490 то стварно проширена сет могућности за програмере 90 00:04:32,490 --> 00:04:36,590 да се заиста ући у зграду кул ствари за веб. 91 00:04:36,590 --> 00:04:39,220 Већ дуже време тамо имали били заиста робусни алати 92 00:04:39,220 --> 00:04:44,360 за матерњи аудио апликацијама, као-- сви знају ГарагеБанд, 93 00:04:44,360 --> 00:04:48,360 а онда очигледно има још професионалне аудио мешање апликације, 94 00:04:48,360 --> 00:04:49,640 и такве ствари. 95 00:04:49,640 --> 00:04:52,690 Али није било стварно добар Цлоуд-- не 96 00:04:52,690 --> 00:04:55,811 Цлоуд, да, претпостављам Цлоуд-- платформа веб-басед 97 00:04:55,811 --> 00:04:58,310 да ће омогућити програмерима да изграде апликације за људе 98 00:04:58,310 --> 00:05:00,570 да раде аудио мешање. 99 00:05:00,570 --> 00:05:03,960 И као што ће вам показати Касније, Веб аудио АПИ 100 00:05:03,960 --> 00:05:07,470 омогућава веома моћна ствари се десити заиста једноставно, 101 00:05:07,470 --> 00:05:09,597 што је прилично кул. 102 00:05:09,597 --> 00:05:12,680 Дакле, то је инструкција за зашто сте треба гледати остатак семинара, 103 00:05:12,680 --> 00:05:14,350 основи. 104 00:05:14,350 --> 00:05:17,880 >> И сад, ја ћу да причам о неки ЈаваСцрипт-- само основни елементи 105 00:05:17,880 --> 00:05:20,240 језика, тако да је можемо бити на истој страни 106 00:05:20,240 --> 00:05:22,470 када говоримо о АПИ мало касније. 107 00:05:22,470 --> 00:05:23,260 Кул. 108 00:05:23,260 --> 00:05:26,192 >> Дакле, ово је резиме. 109 00:05:26,192 --> 00:05:27,150 Заборавио сам да је ово овде. 110 00:05:27,150 --> 00:05:27,510 Да. 111 00:05:27,510 --> 00:05:27,870 >> Х'у ЗАБРИСКИЕ: Постоје две слајдове. 112 00:05:27,870 --> 00:05:30,245 >> Сам Греен: Ово је резиме неких ограничења 113 00:05:30,245 --> 00:05:35,220 од других обавезујућих, старим методама. 114 00:05:35,220 --> 00:05:37,828 И онда сада имамо ове ствари. 115 00:05:37,828 --> 00:05:40,011 Кул. 116 00:05:40,011 --> 00:05:40,510 Страва. 117 00:05:40,510 --> 00:05:43,200 >> Дакле, ЈаваСцрипт Ессентиалс. 118 00:05:43,200 --> 00:05:47,230 Први Први ствари, ту је прилично значајна разлика 119 00:05:47,230 --> 00:05:49,940 у односу на Јава-скрипта ин А језика као Ц, на путу 120 00:05:49,940 --> 00:05:52,050 да су варијабле створио. 121 00:05:52,050 --> 00:05:55,634 Дакле, у Ц, навикли смо да има да куцате наше променљиве, зар не? 122 00:05:55,634 --> 00:05:57,800 И не мислим као тип укуцајте их у, мислим тип 123 00:05:57,800 --> 00:06:01,900 Као и они доделити тип-- значење као, инт, флоат, цхар. 124 00:06:01,900 --> 00:06:05,210 У Ц, били смо заиста некада потребе за креирањем варијаблу 125 00:06:05,210 --> 00:06:09,690 и онда се држимо тог типа за цело време да користимо ту променљиву. 126 00:06:09,690 --> 00:06:13,990 И то није нужно горе, али је вероватно теже да користе. 127 00:06:13,990 --> 00:06:16,190 Једна од одличних функција од ЈаваСцрипт ис 128 00:06:16,190 --> 00:06:19,740 да варијабле су оно што се зове "динамички откуцао," што 129 00:06:19,740 --> 00:06:22,500 значи да могу створити променљива са тим синтаксе, 130 00:06:22,500 --> 00:06:25,800 варКс износи 5, на пример. 131 00:06:25,800 --> 00:06:27,790 То је првобитно ствара цео број вариабле-- 132 00:06:27,790 --> 00:06:29,870 Право се испод хауба сомевхере-- али 133 00:06:29,870 --> 00:06:33,040 може да промени ту променљиву да се односи на стринг 134 00:06:33,040 --> 00:06:35,820 не радећи ништа слично стварајући нову променљиву. 135 00:06:35,820 --> 00:06:37,880 Не треба да бринете о врсти промене. 136 00:06:37,880 --> 00:06:45,440 Јавасцрипт зна да је тип је променило, и то се дешава динамички. 137 00:06:45,440 --> 00:06:48,510 >> Дакле, постоје предности и недостатке томе, 138 00:06:48,510 --> 00:06:51,250 као неко ко је радио у Јавасцрипт неко време можда знате. 139 00:06:51,250 --> 00:06:53,600 Постоје тренуци када можда сте случајно 140 00:06:53,600 --> 00:06:57,720 промените тип променљиве и Не носити тај тип промену, 141 00:06:57,720 --> 00:07:01,120 а затим је ЈаваСцрипт може црасх-- или изузетак 142 00:07:01,120 --> 00:07:06,070 бити избачени, јер ћете имати погрешан тип када очекујете једну врсту. 143 00:07:06,070 --> 00:07:07,040 Кул. 144 00:07:07,040 --> 00:07:11,470 >> Дакле, сцопинг-- која је као, ако запамтите раним недељама у току, 145 00:07:11,470 --> 00:07:15,420 односи на то како видљиви променљивој је иу ком делу кода. 146 00:07:15,420 --> 00:07:18,400 Све то изгледа веома слично на начин да изгледа у Ц. 147 00:07:18,400 --> 00:07:24,755 Дакле, променљиве су углавном сцопед у заграда у функцији, 148 00:07:24,755 --> 00:07:27,005 а затим и постоје и глобално сцопед варијабле које 149 00:07:27,005 --> 00:07:29,171 су- ако напишете променљиву ван функције, 150 00:07:29,171 --> 00:07:31,790 то ће бити видљиво у целом тексту. 151 00:07:31,790 --> 00:07:35,840 >> Један разлика између ЈаваСцрипт и Ц посебно, 152 00:07:35,840 --> 00:07:40,280 је да ако прогласи глобална променљива било где у текстуалну датотеку 153 00:07:40,280 --> 00:07:43,324 то је видљиво у било које функције у том текстуалну датотеку. 154 00:07:43,324 --> 00:07:44,240 То је тачно, зар не? 155 00:07:44,240 --> 00:07:46,330 >> Х'у ЗАБРИСКИЕ: Да. 156 00:07:46,330 --> 00:07:49,120 >> Сам Греен: То је такође мало бит функи у односу на Ц, 157 00:07:49,120 --> 00:07:52,660 где смо увек имали да имамо варијабилни дефиниције изнад места 158 00:07:52,660 --> 00:07:53,770 су оне коришћене. 159 00:07:53,770 --> 00:07:57,957 То није правило да се примењују више, тако, мало другачије. 160 00:07:57,957 --> 00:08:00,540 И опет само да Истицању, глобална у односу на локалне вариаблес-- 161 00:08:00,540 --> 00:08:03,457 веома сличан Ц. Можете имати две варијабле са истим именом, 162 00:08:03,457 --> 00:08:06,540 и имају један од њихових имена се сенци локални променљиве ако један од њих 163 00:08:06,540 --> 00:08:07,546 је глобална. 164 00:08:07,546 --> 00:08:09,420 Дакле, слично врста проблеми који неки од вас 165 00:08:09,420 --> 00:08:11,920 можда налетео у неким вашег проблема поставља до сада. 166 00:08:11,920 --> 00:08:14,450 Кул, тако да је променљиве. 167 00:08:14,450 --> 00:08:20,310 >> Контрола протока, што значи као, ако-елсе-- логично стуфф-- и петље. 168 00:08:20,310 --> 00:08:24,510 Дакле, за почетак, то је оно што ако-друго изјаве изгледају као у ЈаваСцрипт. 169 00:08:24,510 --> 00:08:29,750 Постављање различитих ствари на линији није важно. 170 00:08:29,750 --> 00:08:34,409 Ово је само један од конвенција за начин на који смо структуре кода. 171 00:08:34,409 --> 00:08:38,634 Баш као у Ц, имамо "ако" А заграда у саопштењу. 172 00:08:38,634 --> 00:08:40,840 173 00:08:40,840 --> 00:08:42,090 То није оно што сам хтео да урадим. 174 00:08:42,090 --> 00:08:44,860 175 00:08:44,860 --> 00:08:45,550 Opet sam to uradio. 176 00:08:45,550 --> 00:08:46,841 >> Х'у ЗАБРИСКИЕ: Покушавам да изађете? 177 00:08:46,841 --> 00:08:49,770 Сам Греен: Не, ја сам Само покушавам да бисте увећали. 178 00:08:49,770 --> 00:08:50,660 Није битно. 179 00:08:50,660 --> 00:08:54,730 180 00:08:54,730 --> 00:08:59,370 >> Дакле, имамо "ако" изјаву и имамо стање унутар ње 181 00:08:59,370 --> 00:09:03,130 који процењује да тачно или нетачно, и која одређује да ли или не 182 00:09:03,130 --> 00:09:04,510 улазимо да блок кода. 183 00:09:04,510 --> 00:09:09,860 И исто тако, имамо још-ако и друго, баш као што смо навикли у Ц. 184 00:09:09,860 --> 00:09:14,010 >> Такође би требало да буде прилично удобно право искључити шишмиш са петље, 185 00:09:14,010 --> 00:09:16,440 јер су и изгледају доста као Ц изгледа. 186 00:09:16,440 --> 00:09:19,600 Али ћете поново приметити да смо има, уместо Инт инитиализатионс, 187 00:09:19,600 --> 00:09:22,570 имамо вар инитиализатионс. 188 00:09:22,570 --> 00:09:24,650 И претпостављам да имате бити опрезни да 189 00:09:24,650 --> 00:09:28,460 Сигурно да не промените вредност оф И од инт у стринг, 190 00:09:28,460 --> 00:09:31,780 На пример, зато што ће се изазвати чудан понашање можда и не 191 00:09:31,780 --> 00:09:32,280 Очекујемо. 192 00:09:32,280 --> 00:09:35,750 Али ово би требало да изгледа лепа познато, такође. 193 00:09:35,750 --> 00:09:39,460 >> Дакле, ово је место где се ствари почети да да мало луд у ЈаваСцрипт 194 00:09:39,460 --> 00:09:44,920 за некога ко ће од А позадина Ц. Постоје функције 195 00:09:44,920 --> 00:09:48,070 у ЈаваСцрипт, и ту је један од начина да прогласи функцију која изгледа 196 00:09:48,070 --> 00:09:50,361 некако слично Ц, и Ту је још један да 197 00:09:50,361 --> 00:09:52,450 изгледа некако другачије. 198 00:09:52,450 --> 00:09:54,930 >> Прва верзија, које можемо видети овде, 199 00:09:54,930 --> 00:09:59,260 је врста Ц-као, где кажемо, ово је функција, 200 00:09:59,260 --> 00:10:01,490 дајте му име, дај број аргумената, 201 00:10:01,490 --> 00:10:05,150 па онда садржај функције го унутар тих заграда. 202 00:10:05,150 --> 00:10:08,850 Видећемо пример аргументи у само секунди. 203 00:10:08,850 --> 00:10:13,420 >> Док у наредни ред, видимо, о, Овде је променљива под називом "миФунцтион," 204 00:10:13,420 --> 00:10:17,546 и ми га једнако ово буи ствар-- фунцтион-- да 205 00:10:17,546 --> 00:10:19,170 Изгледа да то није имао ништа дешавало. 206 00:10:19,170 --> 00:10:22,780 207 00:10:22,780 --> 00:10:26,080 Разлог је то другачије од Ц је да ЈаваСкрипт 208 00:10:26,080 --> 00:10:30,040 је оно што се зове функционална језика, или има функционалне елементе, што значи 209 00:10:30,040 --> 00:10:33,510 који функционише заправо вредности. 210 00:10:33,510 --> 00:10:39,520 А то значи да можемо поставити променљива до изједначења функцију 211 00:10:39,520 --> 00:10:43,210 а затим померите ту функцију око, додај као аргумент, 212 00:10:43,210 --> 00:10:46,550 радим све врсте ствари тако са функцијама. 213 00:10:46,550 --> 00:10:49,682 >> Једна друга ствар ноте-- Функције су написани 214 00:10:49,682 --> 00:10:51,140 са одређеним бројем аргумената. 215 00:10:51,140 --> 00:10:54,056 Видећемо пример функције свађом на следећем слајду. 216 00:10:54,056 --> 00:10:56,720 Али ЈаваСкрипт да неће викати на тебе ако покушате 217 00:10:56,720 --> 00:10:59,330 да користите функцију са погрешан број аргумената. 218 00:10:59,330 --> 00:11:05,310 То ћу учинити све да раде, што значи да ако прође, 219 00:11:05,310 --> 00:11:09,410 зовете функцију која очекује Аргумент без аргумената, све што 220 00:11:09,410 --> 00:11:13,990 ће се десити је да ће дати све од себе покушати да изврши тај код, 221 00:11:13,990 --> 00:11:16,541 и ако се евентуално ради у Изузетно или грешке, 222 00:11:16,541 --> 00:11:19,790 то ће бацити тај изузетак и само наставите гоинг-- што је само један од начина 223 00:11:19,790 --> 00:11:21,070 да ЈаваСкрипт да ради. 224 00:11:21,070 --> 00:11:21,781 Да. 225 00:11:21,781 --> 00:11:24,207 >> ПУБЛИКА: Шта се дешава ако има превише аргумената? 226 00:11:24,207 --> 00:11:26,040 Сам Греен: Дакле, Питање је, шта се дешава 227 00:11:26,040 --> 00:11:27,380 ако постоји превише аргумената? 228 00:11:27,380 --> 00:11:29,171 А одговор је да Јавасцрипт ће само 229 00:11:29,171 --> 00:11:32,120 игноришу оне које су након оне то очекује. 230 00:11:32,120 --> 00:11:36,420 То ће покушати да изврши функцију позвати као да је било само прва два. 231 00:11:36,420 --> 00:11:37,075 Jel tako? 232 00:11:37,075 --> 00:11:37,700 >> Х'у ЗАБРИСКИЕ: Тако је, да. 233 00:11:37,700 --> 00:11:39,449 Слично томе, ако има премало аргумената, 234 00:11:39,449 --> 00:11:42,640 то је само врста даје нула за све аргументи да нема вредности 235 00:11:42,640 --> 00:11:43,660 за. 236 00:11:43,660 --> 00:11:45,810 >> Сам Греен: што може заправо бити при руци, ако вас 237 00:11:45,810 --> 00:11:49,060 Желим да напишем функцију која узима променљиву аргументе број. 238 00:11:49,060 --> 00:11:55,830 Можете подесити подразумеване вредности у дефиниција функције, 239 00:11:55,830 --> 00:11:59,060 а може игнорисати чињеницу да улаз није тамо. 240 00:11:59,060 --> 00:12:01,584 241 00:12:01,584 --> 00:12:04,000 Зато желим да причам мало Више о овом последњег метка 242 00:12:04,000 --> 00:12:05,541 тачка, која је функције су вредности. 243 00:12:05,541 --> 00:12:07,930 244 00:12:07,930 --> 00:12:11,010 Ово је пример који је Мало ум-дува 245 00:12:11,010 --> 00:12:14,880 Уколико га прочитате, и не мислим о томе шта се дешава на тренутак. 246 00:12:14,880 --> 00:12:17,910 Дакле, хајде да погледамо само на прва линија овде. 247 00:12:17,910 --> 00:12:24,360 Имамо ову променљиву, Ф1, да кажемо је функција која чини ову ствар. 248 00:12:24,360 --> 00:12:28,535 А садржај функције се цонсоле.лог ('здраво'). 249 00:12:28,535 --> 00:12:32,220 Можете мислити на цонсоле.лог када и Јавасцрипт еквивалент принтф. 250 00:12:32,220 --> 00:12:35,510 Дакле, шта ће се десити, ако смо покренути овај код у нашој претраживача, 251 00:12:35,510 --> 00:12:37,530 то ће одштампати низ. 252 00:12:37,530 --> 00:12:39,342 Могу да покаже да. 253 00:12:39,342 --> 00:12:42,300 ПУБЛИКА: По дневнику, међутим, да ли то значи да је снимају негде? 254 00:12:42,300 --> 00:12:42,550 Сам Греен: Да. 255 00:12:42,550 --> 00:12:44,216 Зато ћу вам показати шта ће се догодити. 256 00:12:44,216 --> 00:12:48,085 Дакле, питање је било, шта значи лог? 257 00:12:48,085 --> 00:12:51,262 >> Х'у ЗАБРИСКИЕ: Па цонсоле.лог је као принтф Ц. 258 00:12:51,262 --> 00:12:52,970 Сам Греен: Па цонсоле.лог је као принтф, 259 00:12:52,970 --> 00:12:59,240 па ако имам ову цонсоле.лог ('здраво'), и ја то зовем, стринг "здраво" 260 00:12:59,240 --> 00:13:00,730 бива одштампан на конзоли. 261 00:13:00,730 --> 00:13:03,340 Ово је конзола. 262 00:13:03,340 --> 00:13:05,930 То је исто као принтф, гдје исписује на стандардни излаз. 263 00:13:05,930 --> 00:13:09,050 264 00:13:09,050 --> 00:13:11,230 И ми ћемо видети у минут, али ово је заправо 265 00:13:11,230 --> 00:13:16,529 позивајући се на конзоле објекту, и позива метод на том објекту. 266 00:13:16,529 --> 00:13:18,320 То ће учинити више смисла у минут када смо 267 00:13:18,320 --> 00:13:20,660 дођете до говоримо о објеката у ЈаваСцрипт, 268 00:13:20,660 --> 00:13:22,509 али сам мислила да напоменем да. 269 00:13:22,509 --> 00:13:24,300 Х'у ЗАБРИСКИЕ: Ми смо користи у Ц, ригхт-- 270 00:13:24,300 --> 00:13:27,580 обично напише велики програм у главни ништа учинити. 271 00:13:27,580 --> 00:13:30,700 Али, оно што је кул у ЈаваСцрипт ти је имају ову врсту преводиоца који 272 00:13:30,700 --> 00:13:33,620 ради у реалном времену, тако да траје само линију по линију, 273 00:13:33,620 --> 00:13:35,320 само може тумачити да на лицу места. 274 00:13:35,320 --> 00:13:37,403 И то прати ствари које су раније имају, 275 00:13:37,403 --> 00:13:41,620 тако да је прилично корисно средство за користе цонсоле.лог, или конзолу, 276 00:13:41,620 --> 00:13:46,870 генерално, за само играње около са ЈаваСцрипт. 277 00:13:46,870 --> 00:13:51,420 >> Сам Греен: Да се ​​сада вратимо на ово екампле-- другу линију кода 278 00:13:51,420 --> 00:13:55,320 овде је прилично запањујуће у мојој глави. 279 00:13:55,320 --> 00:13:59,790 Први пут када сам прочитао ово, то је као, шта се дешава? 280 00:13:59,790 --> 00:14:04,580 Дакле, оно што се дешава је ово Функција декларација каже, 281 00:14:04,580 --> 00:14:10,170 Имам функцију која се зове ф2 да очекује један аргумент, ф, 282 00:14:10,170 --> 00:14:12,990 и онда се позива да функција, ф, која 283 00:14:12,990 --> 00:14:17,652 донет на то као аргумент без сама аргумената. 284 00:14:17,652 --> 00:14:19,110 Дакле, то је могла бити збуњујуће. 285 00:14:19,110 --> 00:14:21,890 286 00:14:21,890 --> 00:14:28,400 Ако схватите и као ф2 ф1 потребно као аргумент, а онда унутар Ф2, 287 00:14:28,400 --> 00:14:31,190 Ф добија цаллед-- што значи да ове линије кода, 288 00:14:31,190 --> 00:14:34,192 после ове две линије код, резултати у "здраво" 289 00:14:34,192 --> 00:14:35,400 се штампа на конзоли. 290 00:14:35,400 --> 00:14:41,660 291 00:14:41,660 --> 00:14:44,910 >> Чињеница да можемо проћи Функције као вредности око 292 00:14:44,910 --> 00:14:47,870 завршила се као једна од највише моћне карактеристике ЈаваСцрипт 293 00:14:47,870 --> 00:14:49,700 као програмски језик. 294 00:14:49,700 --> 00:14:52,782 Изван свих оф тхе страшан ствари може да уради, 295 00:14:52,782 --> 00:14:54,990 као одлика језик у смислу начина 296 00:14:54,990 --> 00:14:58,400 да чини ствари лако програмирање и омогућава 297 00:14:58,400 --> 00:15:01,060 за ствари које нису посебно добро прилагођен за веб, 298 00:15:01,060 --> 00:15:04,500 функционалан програмирање и функционална програмски аспекти ЈаваСцрипт 299 00:15:04,500 --> 00:15:07,130 је један од највише моћни концепти који 300 00:15:07,130 --> 00:15:11,030 постоји у ЈаваСцрипт-- ако мене питате. 301 00:15:11,030 --> 00:15:11,960 Кул. 302 00:15:11,960 --> 00:15:13,534 >> Дакле, следећа ствар. 303 00:15:13,534 --> 00:15:16,450 Поред тога што је функционалан, Такође постоје елементи ЈаваСцрипт 304 00:15:16,450 --> 00:15:20,510 који су предмет оријентисани, који је један од веома 305 00:15:20,510 --> 00:15:23,800 популарне бузз речи у компјутерске науке. 306 00:15:23,800 --> 00:15:27,040 Објектно оријентисано програмирање је заиста популарна ствар. 307 00:15:27,040 --> 00:15:34,210 ЈаваСцрипт има верзију која, где Верујем да свака вредност је такође 308 00:15:34,210 --> 00:15:41,475 објекат, што значи да сваког објекта обавија заједно неки број вредности. 309 00:15:41,475 --> 00:15:44,020 310 00:15:44,020 --> 00:15:49,750 Дакле, за вредности које су једноставне, као што су цео број, као варКс износи 5, 311 00:15:49,750 --> 00:15:52,250 тај предмет само обавија ту једну вредност. 312 00:15:52,250 --> 00:15:54,760 313 00:15:54,760 --> 00:15:59,036 >> Али исто тако могу да замислим ситуацију где-- можемо мислити о ситуацији у Ц 314 00:15:59,036 --> 00:16:00,910 где смо хтели да урадимо несто са струцт, 315 00:16:00,910 --> 00:16:03,285 на пример, да омота неколико Вредности заједно и чини 316 00:16:03,285 --> 00:16:05,870 стварно лако да прође око ствари. 317 00:16:05,870 --> 00:16:09,270 То је када је објекат у ЈаваСцрипт. 318 00:16:09,270 --> 00:16:12,340 >> Важно је да запамтите када кажем да су објекти умотан 319 00:16:12,340 --> 00:16:15,330 неки број вредности заједно, који функционише такође 320 00:16:15,330 --> 00:16:21,506 вредности, што значи да може да функционише такође бити унутар ЈаваСцрипт објекта. 321 00:16:21,506 --> 00:16:26,910 А разлог због којег је важно да, а ми често 322 00:16:26,910 --> 00:16:30,290 Мислим позивања метод на објекат који је 323 00:16:30,290 --> 00:16:35,200 популарне рок од других популарне објектно оријентисани језици, 324 00:16:35,200 --> 00:16:39,330 једна од разлика овде је да све то метод у ЈаваСцрипт 325 00:16:39,330 --> 00:16:47,270 ис а вриједност складишти унутар неког објекта да обавља неку ацтион-- евентуално 326 00:16:47,270 --> 00:16:51,850 користећи друге вредности које су унутар те предмета, али не нужно. 327 00:16:51,850 --> 00:16:56,930 Дакле, можете да замислите ситуацију, ја Претпостављам да у мало луде начин, 328 00:16:56,930 --> 00:17:02,990 где назвати методом једног објецт на другој ствари, на пример. 329 00:17:02,990 --> 00:17:06,010 Дакле, то је мало фанки на тај начин. 330 00:17:06,010 --> 00:17:09,369 >> И ви можете променити методе које су повезане са објектом 331 00:17:09,369 --> 00:17:13,740 додељивањем тог метода А Нова функција, што је такође 332 00:17:13,740 --> 00:17:18,250 прилично разликује од других објектно оријентисани језици, где 333 00:17:18,250 --> 00:17:21,410 Једном смо прогласити објекат и инстантиате га, 334 00:17:21,410 --> 00:17:25,839 не можемо да променимо методе које су повезан са тим предметом више. 335 00:17:25,839 --> 00:17:28,680 Дакле, то је прилично другачија. 336 00:17:28,680 --> 00:17:29,570 Кул. 337 00:17:29,570 --> 00:17:34,010 >> Ево један пример, прво, објекта у акцији. 338 00:17:34,010 --> 00:17:36,390 То је оно што се зове генерички објекат, који 339 00:17:36,390 --> 00:17:39,460 значи да нема било Посебно име, нема класу, 340 00:17:39,460 --> 00:17:42,190 то је само неки амбалажа од вредности. 341 00:17:42,190 --> 00:17:49,790 И начин на који гледа је, имамо ово спољни пар заграда овде 342 00:17:49,790 --> 00:17:57,950 који указују на ЈаваСцрипт и кажу, ово је објекат. 343 00:17:57,950 --> 00:18:02,130 Вредности унутар ње су сваки вредности унутар 344 00:18:02,130 --> 00:18:04,590 објекта који треба да се умотани заједно. 345 00:18:04,590 --> 00:18:09,180 И унутар тог објекта, онда имамо кључне вредности парова, 346 00:18:09,180 --> 00:18:13,880 где је кључ се односи на име од вредности унутар објекта, 347 00:18:13,880 --> 00:18:16,790 а други сиде-- напротив дебелог овде- 348 00:18:16,790 --> 00:18:19,850 је стварна вредност које треба чувати. 349 00:18:19,850 --> 00:18:26,210 >> Дакле, овде видите да имамо Кључни зове фн са вредношћу сам, 350 00:18:26,210 --> 00:18:29,430 следи зарез, говорећи на следећи унос. 351 00:18:29,430 --> 00:18:33,560 Затим кључни зове ЛН, са вредношћу од зелене, 352 00:18:33,560 --> 00:18:35,840 следи зарез, затим "принт" 353 00:18:35,840 --> 00:18:43,209 који ће имати функцију вриједност која ће да уради ову линију кода. 354 00:18:43,209 --> 00:18:45,500 Узмимо корак уназад и распакујем шта се овде дешава. 355 00:18:45,500 --> 00:18:47,280 Дакле, ово је мало компликовано, и ми видимо нешто ново 356 00:18:47,280 --> 00:18:48,071 po prvi put. 357 00:18:48,071 --> 00:18:51,190 358 00:18:51,190 --> 00:18:55,065 Је "ово" кључна реч је нова ствар видимо овде, и шта то ради 359 00:18:55,065 --> 00:19:00,540 је, односи на струје приговор у оквиру, зар не? 360 00:19:00,540 --> 00:19:03,990 Дакле, када кажемо, ово указује скроз 361 00:19:03,990 --> 00:19:08,140 да цео овај објецт-- када радимо тхис.фн, 362 00:19:08,140 --> 00:19:11,990 ћемо ићи скроз за овај објекат, идите на фн вредности 363 00:19:11,990 --> 00:19:16,471 и да сам, повуците га скроз назад, то стицк овде, а онда идемо даље. 364 00:19:16,471 --> 00:19:19,838 >> ПУБЛИКА: Тако је и са проналажење, је то урађено због параметра 365 00:19:19,838 --> 00:19:20,621 дефиниција? 366 00:19:20,621 --> 00:19:23,870 Сам Греен: Дакле, питање је, је проналажење учињено због параметра 367 00:19:23,870 --> 00:19:24,727 дефиниција? 368 00:19:24,727 --> 00:19:25,435 Да, апсолутно. 369 00:19:25,435 --> 00:19:29,660 370 00:19:29,660 --> 00:19:32,470 Шта ће се десити овде је, ово тачка каже да је ЈаваСцрипт, 371 00:19:32,470 --> 00:19:39,990 У реду, идем неку вредност из овог објекта од себе. 372 00:19:39,990 --> 00:19:46,375 И онда ће тражити унос зове фн, а ако то сматра, 373 00:19:46,375 --> 00:19:48,470 да ће се вратити да валуе-- тако, то је Сем. 374 00:19:48,470 --> 00:19:51,540 Али сам такође могао да откуца нешто што није овде дефинисан, 375 00:19:51,540 --> 00:19:54,090 и онда би само врати ундефинед-- који 376 00:19:54,090 --> 00:19:58,250 је ствар која може да ЈаваСкрипт раде, што може имати користи, 377 00:19:58,250 --> 00:20:03,190 али је алсо-- ако се направи куцању, то може довести до чудних грешака. 378 00:20:03,190 --> 00:20:05,617 Тако да ћу покушати да нађу шта год да је рекао да пронађу 379 00:20:05,617 --> 00:20:07,700 и то неће жалити ако то не нађемо. 380 00:20:07,700 --> 00:20:11,390 Само ћу рећи, нисам пронаћи га, а затим идемо даље. 381 00:20:11,390 --> 00:20:17,581 Дакле, било би дефинисана, Плус празно плус презиме. 382 00:20:17,581 --> 00:20:18,080 Да. 383 00:20:18,080 --> 00:20:21,070 И онда видимо да ако смо онда би могао пасти и аццесс-- 384 00:20:21,070 --> 00:20:25,450 и зовемо тф.принт () са заградама. 385 00:20:25,450 --> 00:20:30,000 То ће позвати да отисак Функција без аргумената, зар не? 386 00:20:30,000 --> 00:20:34,490 Али ако смо рекли тф.принт () зарез, без заграда, 387 00:20:34,490 --> 00:20:37,480 све што би урадио је извући од функцији од вредности, 388 00:20:37,480 --> 00:20:40,609 али не заправо зове. 389 00:20:40,609 --> 00:20:41,162 Кул. 390 00:20:41,162 --> 00:20:42,870 Х'у ЗАБРИСКИЕ: Схоулд правимо неки предмет? 391 00:20:42,870 --> 00:20:44,161 Сам Греен: Наравно, хајде да урадимо то. 392 00:20:44,161 --> 00:20:48,750 Тако да могу да се померим ово Пример на конзоли. 393 00:20:48,750 --> 00:20:51,380 394 00:20:51,380 --> 00:20:55,466 Можемо замислити да имам неки предмет. 395 00:20:55,466 --> 00:21:03,026 396 00:21:03,026 --> 00:21:04,150 Дакле, ово је једноставан објекат. 397 00:21:04,150 --> 00:21:06,910 398 00:21:06,910 --> 00:21:11,050 Ово је објекат који садржи два Вредности са два тастера, два кључна вредност 399 00:21:11,050 --> 00:21:12,710 парова. 400 00:21:12,710 --> 00:21:21,850 Тако сам тада можете да приступите вредност ускладиштен унутар овог објекта кроз рад к.к1, 401 00:21:21,850 --> 00:21:23,400 на пример, и ја добити 1 назад. 402 00:21:23,400 --> 00:21:29,590 Исто тако, к.к2, да ту вредност вратити. 403 00:21:29,590 --> 00:21:33,330 >> И сада стварно добра ствар је, ја могу стварно додати нешто за овај објекат 404 00:21:33,330 --> 00:21:34,316 након што сам га створио. 405 00:21:34,316 --> 00:21:36,315 Дакле, можете да замислите, хајдемо да имам функцију. 406 00:21:36,315 --> 00:21:44,430 407 00:21:44,430 --> 00:21:46,352 >> Х'у ЗАБРИСКИЕ: Ви треба да урадите Схифт-Ентер. 408 00:21:46,352 --> 00:21:47,643 >> Сам Греен: Ох, то је нервира. 409 00:21:47,643 --> 00:22:02,460 410 00:22:02,460 --> 00:22:04,324 Шта то не свиђа? 411 00:22:04,324 --> 00:22:04,824 О. 412 00:22:04,824 --> 00:22:07,532 413 00:22:07,532 --> 00:22:08,691 Idemo. 414 00:22:08,691 --> 00:22:09,190 Кул. 415 00:22:09,190 --> 00:22:12,840 >> Тако да сам управо креирали Ова функција ф, да 416 00:22:12,840 --> 00:22:17,590 ће ићи на струју објекат и штампање тхис.к1. 417 00:22:17,590 --> 00:22:20,330 Дакле, ако сам звати Ф би Сам, ништа се неће 418 00:22:20,330 --> 00:22:26,970 да се деси, зар не, јер не постоји Кс1 поље у објекту то говорим. 419 00:22:26,970 --> 00:22:39,710 Али, ако кажем, к.ф = Ф, а онда сам позовите к.ф (), ја ћу да се вратим 1. 420 00:22:39,710 --> 00:22:42,990 421 00:22:42,990 --> 00:22:46,530 То Ф функција је сада повезан са објекта Кс, 422 00:22:46,530 --> 00:22:51,800 која има кључну зове к1 повезан са вредношћу 1, 423 00:22:51,800 --> 00:22:54,570 па кад зовемо тхис.к1, то је ће знати тражи 424 00:22:54,570 --> 00:22:56,450 и бити у могућности да одштампате вредност напоље. 425 00:22:56,450 --> 00:22:58,700 Дакле, то је само један пример од врсте лудих ствари 426 00:22:58,700 --> 00:23:01,190 можете да урадите са објектима у ЈаваСцрипт. 427 00:23:01,190 --> 00:23:03,870 428 00:23:03,870 --> 00:23:07,560 >> Дакле, та верзија је буи верзија, значење 429 00:23:07,560 --> 00:23:13,780 да смо створили објекат користећи ово заградама нотатион-- браце запис, 430 00:23:13,780 --> 00:23:16,880 ратхер-- и то је згодно ако само желимо 431 00:23:16,880 --> 00:23:21,440 једну инстанцу одређеног објекта, али шта ако желимо да имамо више од једног 432 00:23:21,440 --> 00:23:22,210 исте врсте? 433 00:23:22,210 --> 00:23:24,440 А одговор на то Питање је, постоје ствари 434 00:23:24,440 --> 00:23:26,760 зове наставу у ЈаваСцрипт као добро. 435 00:23:26,760 --> 00:23:31,470 436 00:23:31,470 --> 00:23:36,420 Можемо створити функцију која ради неку врсту инитиализатион 437 00:23:36,420 --> 00:23:41,690 за страно тело, и ми кажемо, као, 438 00:23:41,690 --> 00:23:44,550 мој цласс-- тако име за вишекратну употребу објецт-- 439 00:23:44,550 --> 00:23:47,100 једнако функцију која то поставља. 440 00:23:47,100 --> 00:23:52,280 Дакле, шта би то било еквивалентно да се ствара објекат који 441 00:23:52,280 --> 00:23:55,930 било би исто као, коврџава Браце, ул, дебелог црева, 442 00:23:55,930 --> 00:23:59,630 ово је стринг, зарез, коврџава заграда. 443 00:23:59,630 --> 00:24:01,880 То би био генерички Објекат смо отворили, 444 00:24:01,880 --> 00:24:06,380 са разлика од њих је на нект линије стварамо прототип, који 445 00:24:06,380 --> 00:24:11,190 значи да је подразумевани кључ који додамо нашем објекту који 446 00:24:11,190 --> 00:24:13,970 има вредност наведена овде. 447 00:24:13,970 --> 00:24:20,570 То значи да, када сам створити нови инстанца овог мицласс објекта, 448 00:24:20,570 --> 00:24:27,440 то ће се пре-изграђен унутар је вредност под називом ул а друга вредност 449 00:24:27,440 --> 00:24:32,418 звао МиПринт, који је ће бити у функцији. 450 00:24:32,418 --> 00:24:32,918 Страва. 451 00:24:32,918 --> 00:24:37,410 452 00:24:37,410 --> 00:24:37,990 >> Veliki. 453 00:24:37,990 --> 00:24:40,710 Дакле, последња ствар говори о ЈаваСцрипт 454 00:24:40,710 --> 00:24:46,430 је да је заиста корисно за шта се зове асинхрони операције. 455 00:24:46,430 --> 00:24:52,500 Асинхрони начин је да смо може да чека неко рад 456 00:24:52,500 --> 00:24:57,870 да заврши пре него што кренемо , али идемо даље, док чекамо 457 00:24:57,870 --> 00:24:59,690 и онда се нешто деси касније. 458 00:24:59,690 --> 00:25:03,480 А шта хоћу да кажем је, да могу да замислим ситуацију у којој 459 00:25:03,480 --> 00:25:06,850 шаљете захтев неки веб сервер негде, 460 00:25:06,850 --> 00:25:09,670 и то ће вас послати назад неки велики комад података, зар не? 461 00:25:09,670 --> 00:25:13,320 А твој корисник може чекати у У медјувремену да се то догоди, 462 00:25:13,320 --> 00:25:15,200 и ништа не може бити дешава у то време. 463 00:25:15,200 --> 00:25:18,110 Али то није велики дизајн, зар не? 464 00:25:18,110 --> 00:25:20,214 Ви не желите да се веб странице да замрзне. 465 00:25:20,214 --> 00:25:22,380 Шта ако корисник жели да кликните на падајућег менија? 466 00:25:22,380 --> 00:25:24,870 То није сјајан дизајн образац. 467 00:25:24,870 --> 00:25:29,290 Уместо тога, у суштини шта Јавасцрипт то је, каже, 468 00:25:29,290 --> 00:25:31,870 У реду, урадите ову операцију асинхроно. 469 00:25:31,870 --> 00:25:36,520 То је као, чекај у позадини, и онда када је операција се обавља, 470 00:25:36,520 --> 00:25:39,420 позовите цаллбацк фунцтион-- позовите неку функцију, 471 00:25:39,420 --> 00:25:43,800 не неки ацтион-- да сигнализира да је Операција смо чекали до краја 472 00:25:43,800 --> 00:25:45,520 je preko. 473 00:25:45,520 --> 00:25:51,240 А разлог је то супер моћан је, можемо да урадимо нешто, донесе аргумент, 474 00:25:51,240 --> 00:25:54,440 уради нешто, а затим сачекајте за нешто да се деси. 475 00:25:54,440 --> 00:25:58,970 Затим, када те нешто заврши, можемо назвати повратни позив. 476 00:25:58,970 --> 00:26:03,300 То је веома згодно, јер омогућава нас да радимо ствари са Веб Аудио АПИ, 477 00:26:03,300 --> 00:26:07,490 На пример, као оптерећење ан аудио фајл са удаљеног сервера 478 00:26:07,490 --> 00:26:11,660 без чекања за Цео аудио фајл да се учита, 479 00:26:11,660 --> 00:26:14,440 што би заиста лоше за корисничко искуство. 480 00:26:14,440 --> 00:26:17,080 Кул. 481 00:26:17,080 --> 00:26:19,460 >> Последњих пар Напомене о отклањање грешака, јер 482 00:26:19,460 --> 00:26:23,682 је ствар коју ћемо морати да урадимо као део вашег пројекта, гарантовано. 483 00:26:23,682 --> 00:26:25,140 Поменуо сам ЈаваСцрипт конзолу. 484 00:26:25,140 --> 00:26:27,550 То је супер корисна функција од свих модерних бровсера, 485 00:26:27,550 --> 00:26:30,300 И ми те стварно и да се удобно користећи своју конзолу, 486 00:26:30,300 --> 00:26:33,660 Ако желите да добијете добар у ЈаваСцрипт. 487 00:26:33,660 --> 00:26:36,320 То је супер згодан за отклањање грешака, али је такође 488 00:26:36,320 --> 00:26:39,440 стварно корисно за фигуринг како да користите АПИ. 489 00:26:39,440 --> 00:26:41,950 То омогућава стварно једноставно експериментисање 490 00:26:41,950 --> 00:26:45,910 без потребе да куцате неки код, а затим га саставити. 491 00:26:45,910 --> 00:26:47,500 Не морате да урадите све те кораке. 492 00:26:47,500 --> 00:26:49,619 Треба само да напишем неки код у линију, 493 00:26:49,619 --> 00:26:52,410 а онда се одмах повратне информације о да ли или не да линија кода 494 00:26:52,410 --> 00:26:55,230 воркед-- веома користан. 495 00:26:55,230 --> 00:26:59,760 >> Такође, само један технички ноте-- ЈаваСцрипт конзола је пример 496 00:26:59,760 --> 00:27:05,680 од РЕПЛ-- тако да је Р Е-П-Л РЕПЛ, која се залаже за читање, проценити, 497 00:27:05,680 --> 00:27:06,180 штампа петља. 498 00:27:06,180 --> 00:27:09,100 499 00:27:09,100 --> 00:27:12,120 Идеш да куцате неке ствари у, то ће прочитати шта сте укуцали, 500 00:27:12,120 --> 00:27:17,280 да ће га оценити, и то ће одштампати излаз, а онда ћу поново почети. 501 00:27:17,280 --> 00:27:22,056 То вам омогућава да брзо иде у кругови итератинг, што је стварно кул. 502 00:27:22,056 --> 00:27:25,150 503 00:27:25,150 --> 00:27:28,930 >> Претпостављам да прави Ласт ноте-- ово је стварни последња напомена, да. 504 00:27:28,930 --> 00:27:30,780 Како заправо користе ЈаваСцрипт? 505 00:27:30,780 --> 00:27:34,040 Прво, можемо увести користећи скрипт таг 506 00:27:34,040 --> 00:27:39,500 на врху или дну ХТМЛ филе-- где унутар ХТМЛ датотеку, 507 00:27:39,500 --> 00:27:40,440 стварно. 508 00:27:40,440 --> 00:27:47,390 И у оквиру сцрипт таг, постоје два под-начина увоз ЈаваСцрипт. 509 00:27:47,390 --> 00:27:51,370 Први је који има посебан ЈаваСкрипт фајл 510 00:27:51,370 --> 00:27:58,010 да увозимо у целини, или тако што површину кода као скрипте 511 00:27:58,010 --> 00:28:00,290 за почетак, а затим обрнута коса црта скрипта да оконча. 512 00:28:00,290 --> 00:28:02,620 И онда само пишем Јавасцрипт унутар самог ХТМЛ фајла. 513 00:28:02,620 --> 00:28:03,790 То су два начина. 514 00:28:03,790 --> 00:28:05,165 Не можете га унутар ХТМЛ-а. 515 00:28:05,165 --> 00:28:06,502 516 00:28:06,502 --> 00:28:08,126 ПУБЛИКА: Да ли је један бољи од другог? 517 00:28:08,126 --> 00:28:10,542 Сам Греен: Питање је, је једно боље од другог. 518 00:28:10,542 --> 00:28:18,306 Дакле, да, као кодирање стил пракси, као и да је као дизајн пракси. 519 00:28:18,306 --> 00:28:20,180 Постоје два разлога Због тога би било боље. 520 00:28:20,180 --> 00:28:23,934 Први је, чини вашу Цоде А много читљив ако све ваше ХТМЛ 521 00:28:23,934 --> 00:28:27,100 је на једном месту, све ваше ЦСС је у друго место, све је ЈаваСцрипт 522 00:28:27,100 --> 00:28:28,420 је у трећем мјесту. 523 00:28:28,420 --> 00:28:28,920 Jel tako? 524 00:28:28,920 --> 00:28:32,370 Мислим да би требало већ говорили о томе у сецтионс-- као што ЦСС-- 525 00:28:32,370 --> 00:28:35,220 да је-- и иде често у другом фајлу. 526 00:28:35,220 --> 00:28:37,090 Дакле, сличне врсте концепта овде. 527 00:28:37,090 --> 00:28:42,410 Можете замислити да ЈаваСкрипт ће се поново искористити на више од једног 528 00:28:42,410 --> 00:28:47,350 ХТМЛ страница, или можда велики број ХТМЛ странице, 529 00:28:47,350 --> 00:28:49,340 и има ту ЈаваСцрипт рефацторед у једну 530 00:28:49,340 --> 00:28:51,950 филе да можете увести на више од једног места 531 00:28:51,950 --> 00:28:54,570 омогућава да се код много више одржив. 532 00:28:54,570 --> 00:28:57,930 Можете замислити што један променити у ЈаваСцрипт 533 00:28:57,930 --> 00:29:00,070 и морате да га промените у 100 различитих фајлова. 534 00:29:00,070 --> 00:29:04,070 И уместо да можемо да га променимо у једном, а то је много више моћна. 535 00:29:04,070 --> 00:29:05,420 Да ли да одговорим на ваше питање? 536 00:29:05,420 --> 00:29:07,950 Кул. 537 00:29:07,950 --> 00:29:10,830 >> Такође можете укуцати у конзоли, као што смо раније поменули. 538 00:29:10,830 --> 00:29:15,070 И опет, последњи ноте-- Веб Аудио је изграђена, 539 00:29:15,070 --> 00:29:16,978 не морате да учита ништа. 540 00:29:16,978 --> 00:29:17,478 Кул. 541 00:29:17,478 --> 00:29:20,519 Има ли неких питања, да ли имате Има ли још питања о ЈаваСцрипт, 542 00:29:20,519 --> 00:29:21,930 Пре него што пређемо на? 543 00:29:21,930 --> 00:29:24,286 >> ПУБЛИКА: [неразумљиво] 544 00:29:24,286 --> 00:29:25,410 Сам Греен: У реду, кул. 545 00:29:25,410 --> 00:29:27,200 Дакле, сада ће говорити о АПИ-ја. 546 00:29:27,200 --> 00:29:28,490 >> Х'у ЗАБРИСКИЕ: Кул. 547 00:29:28,490 --> 00:29:28,990 Хвала, Сам. 548 00:29:28,990 --> 00:29:30,184 >> Сам Греен: Наравно. 549 00:29:30,184 --> 00:29:32,600 Х'у ЗАБРИСКИЕ Авесоме, тако идемо даље од ЈаваСцрипт. 550 00:29:32,600 --> 00:29:35,350 Тако смо разговарали о неким Основе ЈаваСцрипт, 551 00:29:35,350 --> 00:29:41,105 а то су променљиве, функције, објекти, функционише као варијабли, 552 00:29:41,105 --> 00:29:41,980 асинхрони утовар. 553 00:29:41,980 --> 00:29:46,100 То су све ствари које ћете види док користите Веб Аудио. 554 00:29:46,100 --> 00:29:49,230 Дакле, ми ћемо само да причамо о томе први пут на високом нивоу. 555 00:29:49,230 --> 00:29:52,120 >> То је АПИ, тако да је нешто који је изграђен, као што Сам је рекао, 556 00:29:52,120 --> 00:29:57,010 право у ЈаваСцрипт да користите у конзоли. 557 00:29:57,010 --> 00:30:01,020 И то је заправо баш као Ц ++ кода да се заиста гради у Цхроме 558 00:30:01,020 --> 00:30:04,470 и Фирефок и све ове претраживачима. 559 00:30:04,470 --> 00:30:07,060 Дакле, основна идеја са Веб Аудио је да имате 560 00:30:07,060 --> 00:30:09,440 Ова врста цевовода аудио, зар не? 561 00:30:09,440 --> 00:30:13,670 Дакле, ваш аудио података долази у у неком облику. 562 00:30:13,670 --> 00:30:16,690 >> Постоје три врсте главног формс-- имате осцилатор, који 563 00:30:16,690 --> 00:30:21,340 ствара сине талас, косинус талас, ћемо да видимо како се то ради. 564 00:30:21,340 --> 00:30:23,890 Други веома честа, наравно, је МП3. 565 00:30:23,890 --> 00:30:25,810 Па можда почнете са песма, а онда 566 00:30:25,810 --> 00:30:28,320 желите да урадите нешто филтрирање да то и излаз 567 00:30:28,320 --> 00:30:30,605 то-- то може бити могући извор. 568 00:30:30,605 --> 00:30:32,480 И онда стварно кул један је микрофон. 569 00:30:32,480 --> 00:30:37,230 Дакле, можете да користите неке врло Основни позиви у ЈаваСцрипт 570 00:30:37,230 --> 00:30:39,440 да бисте добили приступ до микрофон, па ако 571 00:30:39,440 --> 00:30:42,870 желео да направи апликацију као детектор питцх, 572 00:30:42,870 --> 00:30:45,290 на пример, да узима твој глас и фигуре оут 573 00:30:45,290 --> 00:30:47,740 слуха врло једноставан начин за то. 574 00:30:47,740 --> 00:30:50,730 Само некако могу да прочитам у, схватим фреквенцију, 575 00:30:50,730 --> 00:30:52,250 и онда излаз број. 576 00:30:52,250 --> 00:30:56,080 Тако ћемо видети како то функционише, као добро. 577 00:30:56,080 --> 00:30:59,430 >> Одредиште је у основи где је аудио података је излаз. 578 00:30:59,430 --> 00:31:02,890 Дакле генерално, то је као ваш лаптоп спеакерс. 579 00:31:02,890 --> 00:31:05,610 Друге опције су као СцриптПроцессорНоде-- 580 00:31:05,610 --> 00:31:07,990 Доћи ћемо до чворишта у А секунду-- али у суштини, 581 00:31:07,990 --> 00:31:11,939 Или ви износите звук од преко рачунара преко звучника, 582 00:31:11,939 --> 00:31:14,730 или си некако снимање, тако ви складиштења као аудио података. 583 00:31:14,730 --> 00:31:18,980 Па можда ако неко ствара музика у апликацију, а затим 584 00:31:18,980 --> 00:31:22,410 желите да снимите то и можда као извоз у СоундЦлоуд, за екампле-- 585 00:31:22,410 --> 00:31:25,281 то би био један од начина да то урадите. 586 00:31:25,281 --> 00:31:27,030 Све забава ствари, које ћемо причати о, 587 00:31:27,030 --> 00:31:29,950 дешава између ове две тачке, где смо учитати у музици 588 00:31:29,950 --> 00:31:31,410 и онда излаз. 589 00:31:31,410 --> 00:31:36,660 >> Зато ћу говорити о пет фазе аудио продукције у секунди. 590 00:31:36,660 --> 00:31:38,950 Имамо ту ствар звану АудиоЦонтект, који 591 00:31:38,950 --> 00:31:41,580 је ова мала амбалажа видимо овде. 592 00:31:41,580 --> 00:31:49,980 У суштини оно што АудиоЦонтект је-- ако идите на ЈаваСцрипт конзолу сада, 593 00:31:49,980 --> 00:31:52,740 можемо створити једну сада. 594 00:31:52,740 --> 00:31:54,040 Само један пример репл, зар не? 595 00:31:54,040 --> 00:31:57,880 Ми читаш, оцјену, а штампа. 596 00:31:57,880 --> 00:32:00,260 >> АудиоЦонтект је глобална држава. 597 00:32:00,260 --> 00:32:05,500 То је струцт, то је објекат овде, и чува информацију 598 00:32:05,500 --> 00:32:09,960 о стварима које се дешава на екрану у вези са аудио. 599 00:32:09,960 --> 00:32:15,220 Један од примера је тренутно време. 600 00:32:15,220 --> 00:32:18,910 То вам говори број секунди, веома прецизно, 601 00:32:18,910 --> 00:32:20,890 од веб страници лоадед. 602 00:32:20,890 --> 00:32:24,110 Дакле, ово је стварно корисно мало имовине које можете користити. 603 00:32:24,110 --> 00:32:27,898 То је прочитао само-- Ја заправо мислим можете покушати да подесите вредност. 604 00:32:27,898 --> 00:32:29,856 То ће рећи да га поставити, и онда ако га одштампате 605 00:32:29,856 --> 00:32:31,439 Поново: Није прилично посао. 606 00:32:31,439 --> 00:32:34,472 Дакле, постоје само за читање својства у ЈаваСцрипт. 607 00:32:34,472 --> 00:32:36,430 Ово је заиста корисно ако ти некако синхронизацију 608 00:32:36,430 --> 00:32:38,610 доста другачији информације, када сте 609 00:32:38,610 --> 00:32:41,280 врста играња различитих звукова. 610 00:32:41,280 --> 00:32:43,630 >> Још један веома користан је контекст дестинација. 611 00:32:43,630 --> 00:32:46,587 612 00:32:46,587 --> 00:32:49,670 Дефинитивно, ако сте заинтересовани, бити покушавајући на сопствени конзоле права 613 00:32:49,670 --> 00:32:50,980 Сада. 614 00:32:50,980 --> 00:32:53,150 Дакле, ово је АудиоДестинатионНоде. 615 00:32:53,150 --> 00:32:56,480 У основи оно што овде пише је, где је излаз иде? 616 00:32:56,480 --> 00:32:59,590 Дакле, постоје две реалне опције овде. 617 00:32:59,590 --> 00:33:01,940 Обично дефаулт је само звучници, 618 00:33:01,940 --> 00:33:05,150 тако АудиоДестинатионНоде у суштини само каже 619 00:33:05,150 --> 00:33:09,240 постоје нула излази на звук долази у, послат говорника. 620 00:33:09,240 --> 00:33:12,050 Дакле, генерално, ви не морамо да играмо са тим. 621 00:33:12,050 --> 00:33:15,720 Уколико сте заинтересовани за ствари користећи СцриптПроцессорНоде за снимање, 622 00:33:15,720 --> 00:33:16,990 Дефинитивно ме је упуцати Е-маил касније, јер је то 623 00:33:16,990 --> 00:33:18,330 мало компликованије. 624 00:33:18,330 --> 00:33:21,590 Али генерално, ти си некако оутпуттинг звука у неком облику. 625 00:33:21,590 --> 00:33:24,347 Тако кул, ми ћемо скочити овамо. 626 00:33:24,347 --> 00:33:25,180 ПУБЛИКА: Жао ми је. 627 00:33:25,180 --> 00:33:26,054 Х'у ЗАБРИСКИЕ: Да. 628 00:33:26,054 --> 00:33:28,770 ПУБЛИКА: Знам да си рекао да причамо касније о снимању. 629 00:33:28,770 --> 00:33:31,550 Можете ли да интерфејс са Про Тоолс? 630 00:33:31,550 --> 00:33:33,120 >> Х'у ЗАБРИСКИЕ: Са Про Тоолс? 631 00:33:33,120 --> 00:33:35,260 Hajde da vidimo. 632 00:33:35,260 --> 00:33:37,220 Не слажем се. 633 00:33:37,220 --> 00:33:41,670 Тако ће између клијента, који је ЈаваСцрипт 634 00:33:41,670 --> 00:33:44,310 конзола и стварна цомпутер, је генерално 635 00:33:44,310 --> 00:33:46,490 нешто што је мало офф граница, ако вас 636 00:33:46,490 --> 00:33:52,320 ће, некако по природи до-- то је нека врста дизајна ствари, 637 00:33:52,320 --> 00:33:57,770 али покушате да задржите бровсер одвојено од стварног рачунара корисника. 638 00:33:57,770 --> 00:34:02,310 Генерално, једина ствар коју сте у стању да Приступ је микрофон или камеру. 639 00:34:02,310 --> 00:34:04,730 Ти ниси у стању да, ја Не мислим, користите Про Тоолс. 640 00:34:04,730 --> 00:34:07,480 Међутим, ако сте направили се нумера у Про Тоолс, 641 00:34:07,480 --> 00:34:12,710 извози да, могли сте да учитати овде, филтер је, на пример, 642 00:34:12,710 --> 00:34:16,820 процес који, и снимите то у један Аудио Дестинатион-- или Не-- сферу 643 00:34:16,820 --> 00:34:17,870 Процесор чвора. 644 00:34:17,870 --> 00:34:20,730 А онда одатле, можеш извоз то СоундЦлоуд, те 645 00:34:20,730 --> 00:34:25,320 могао послати у е-маил, или шта год желите одатле. 646 00:34:25,320 --> 00:34:31,159 >> Али постоји нека врста благо баријере између стварања музике на рачунару 647 00:34:31,159 --> 00:34:33,050 и прављење музике на мрежи. 648 00:34:33,050 --> 00:34:37,940 >> Сам Греен: И то је није јединствена у овом АПИ. 649 00:34:37,940 --> 00:34:44,060 То је безбедносна функција Цхроме, и Мислим да је сваки други савремени бровсер. 650 00:34:44,060 --> 00:34:45,860 Претраживач је самосталан. 651 00:34:45,860 --> 00:34:50,980 Тако, на пример, веб страница не могу користе ЈаваСцрипт да укључите звук 652 00:34:50,980 --> 00:34:54,190 на основу ваших звучника, на пример. 653 00:34:54,190 --> 00:34:58,120 Или то не може да искључите рачунар. 654 00:34:58,120 --> 00:35:01,530 И нема средњи тачка између те две ствари, зар не, 655 00:35:01,530 --> 00:35:05,960 Дакле, или имате потпуна апстракција, 656 00:35:05,960 --> 00:35:10,050 или да отвори безбедносни пропуст да дозволи 657 00:35:10,050 --> 00:35:14,440 програмер са лошим намерама урадити шта год хоће са својим лаптопом. 658 00:35:14,440 --> 00:35:18,104 И то је разлог зашто Цхроме је самосталан. 659 00:35:18,104 --> 00:35:19,310 >> Х'у ЗАБРИСКИЕ: Да. 660 00:35:19,310 --> 00:35:20,840 Da li to ima smisla? 661 00:35:20,840 --> 00:35:21,369 Кул, кул. 662 00:35:21,369 --> 00:35:23,160 Управо сам хтео да показују пример једног. 663 00:35:23,160 --> 00:35:25,118 Ово је прилично колико колико сте добили, у смислу 664 00:35:25,118 --> 00:35:26,950 приступа рачунару корисника. 665 00:35:26,950 --> 00:35:30,180 Ако имате УСБ тастатуре прикључен, можете да користите нешто што се зове Веб 666 00:35:30,180 --> 00:35:32,180 МИДИ АПИ који нећемо заиста говорити о овде, 667 00:35:32,180 --> 00:35:36,330 али ово је још један АПИ који је уграђен у најмање Цхроме-- опет, 668 00:35:36,330 --> 00:35:41,570 то је разлог зашто волимо Цхроме-- Мислим да је Фирефок или Сафари 669 00:35:41,570 --> 00:35:44,300 то је лако да се гоогле-- различити претраживачи имају 670 00:35:44,300 --> 00:35:46,917 другачије подршке за које АПИ су имплементирани. 671 00:35:46,917 --> 00:35:49,875 Али, ако сте желели да прикључите тастатуру и рад са том информацијом, 672 00:35:49,875 --> 00:35:52,850 врста послати тастатуре информације преко на рачунар 673 00:35:52,850 --> 00:35:57,620 и онда користити тај онлине, ово АПИ је место где би радили то. 674 00:35:57,620 --> 00:35:58,150 >> Кул. 675 00:35:58,150 --> 00:35:58,710 OK. 676 00:35:58,710 --> 00:36:01,320 Дакле, брзо се креће овде. 677 00:36:01,320 --> 00:36:03,310 Како стојимо са временом? 678 00:36:03,310 --> 00:36:04,210 >> СПЕАКЕР 1: Око 15. 679 00:36:04,210 --> 00:36:05,543 >> Х'у ЗАБРИСКИЕ: 15 минута остало? 680 00:36:05,543 --> 00:36:06,160 OK kul. 681 00:36:06,160 --> 00:36:08,170 Тако ћемо утркивати испред овде. 682 00:36:08,170 --> 00:36:13,500 >> Дакле, у основи, главна тачка мислећи на ово као на гасовод 683 00:36:13,500 --> 00:36:16,430 је да сваки корак у плану је серија аудио чворова. 684 00:36:16,430 --> 00:36:19,284 685 00:36:19,284 --> 00:36:20,950 Наш извор, рецимо, је осцилатор. 686 00:36:20,950 --> 00:36:23,380 Морамо да створимо осцилатор чвор. 687 00:36:23,380 --> 00:36:25,690 И то је некако малог фунцтион-- 688 00:36:25,690 --> 00:36:30,460 а они сви са седиштем ван на аудио контекста овде. 689 00:36:30,460 --> 00:36:32,885 >> ПУБЛИКА: Када је рекао осцилатор, да ли то значи 690 00:36:32,885 --> 00:36:37,250 то је стварно буквално од два различита стубови назад? 691 00:36:37,250 --> 00:36:41,170 >> Х'у ЗАБРИСКИЕ: Не, то је као дигитални репрезентација. 692 00:36:41,170 --> 00:36:42,740 То је заправо реализован у Ц ++. 693 00:36:42,740 --> 00:36:46,460 Ја стварно не знам спецификације како се то заправо спроводи, 694 00:36:46,460 --> 00:36:48,500 али све ово ради као бинарни подаци. 695 00:36:48,500 --> 00:36:51,260 696 00:36:51,260 --> 00:36:52,370 У ствари, да. 697 00:36:52,370 --> 00:36:53,950 То би рекао, да могу Заправо, ако сте заинтересовани, 698 00:36:53,950 --> 00:36:56,533 Могу вам послати мало више информације о томе како вавеформс 699 00:36:56,533 --> 00:37:00,181 се чувају имају дигитални формат. 700 00:37:00,181 --> 00:37:00,680 OK kul. 701 00:37:00,680 --> 00:37:03,120 >> Тако смо генерише тон попут сине ваве или тако нешто, можда 702 00:37:03,120 --> 00:37:04,190 440 Херц. 703 00:37:04,190 --> 00:37:05,830 Стварамо осцилатор. 704 00:37:05,830 --> 00:37:09,180 Ако желимо да подесите јачину звука, ми повезати све до ГаинНоде, 705 00:37:09,180 --> 00:37:12,500 што смо могли да урадимо са .цреатегаин. 706 00:37:12,500 --> 00:37:14,250 То поставља јачину звука. 707 00:37:14,250 --> 00:37:17,820 Можете проћи да на било који од другог опције-- добро, 708 00:37:17,820 --> 00:37:20,300 па аудио извор бафер чвор је место где би могао 709 00:37:20,300 --> 00:37:23,660 складиштити у МП3 да сте уметнут у. 710 00:37:23,660 --> 00:37:27,670 >> Бикуад филтер је за филтрирање ако желите да предузме све базу од 711 00:37:27,670 --> 00:37:29,630 од песме, или нешто слично. 712 00:37:29,630 --> 00:37:32,450 Боже сачувај желите да база из песме. 713 00:37:32,450 --> 00:37:36,980 И АудиоДестинатион чвор је, опет, као где је наш финализација је. 714 00:37:36,980 --> 00:37:39,980 Ако сте икада занима те све различите могуће опције, 715 00:37:39,980 --> 00:37:45,190 само идите на картицу и нека ауто-комплетан искрсло. 716 00:37:45,190 --> 00:37:48,690 А ако не стварају, видећете све различите ствари које можете да креирате. 717 00:37:48,690 --> 00:37:50,398 Можете да креирате динамику сцрипт процесори, 718 00:37:50,398 --> 00:37:52,940 Ја не знам ни шта је то је, за мешање канала спајања 719 00:37:52,940 --> 00:37:55,930 и дрво канала и све то. 720 00:37:55,930 --> 00:37:56,430 Кул. 721 00:37:56,430 --> 00:37:59,560 722 00:37:59,560 --> 00:38:01,390 >> Дакле, ово је само Пример гасовода. 723 00:38:01,390 --> 00:38:03,580 Дакле, имамо три извора долази. 724 00:38:03,580 --> 00:38:06,830 Можда су таласних облика, Можда су МП3. 725 00:38:06,830 --> 00:38:08,740 Један иде кроз филтер, још један је 726 00:38:08,740 --> 00:38:12,404 геттинг искривљена други нечији померања лево и десно. 727 00:38:12,404 --> 00:38:15,320 То можете учинити све врсте ствари и сви они се мешају око заједно, 728 00:38:15,320 --> 00:38:18,880 и онда се долази звук На крају, као дестинације. 729 00:38:18,880 --> 00:38:22,720 Ово је пример шта више компликована веб аудио Код изгледа. 730 00:38:22,720 --> 00:38:26,720 Ви правите све ово различити објекти право овде- 731 00:38:26,720 --> 00:38:27,706 Нисам сигуран. 732 00:38:27,706 --> 00:38:29,120 Не, не увећали. 733 00:38:29,120 --> 00:38:29,620 OK. 734 00:38:29,620 --> 00:38:31,257 >> Сам Греен: Уради Цонтрол, дођите-Уп. 735 00:38:31,257 --> 00:38:32,590 Х'у ЗАБРИСКИЕ: Контрола Сцролл-- 736 00:38:32,590 --> 00:38:33,000 Сам Греен: Не, не. 737 00:38:33,000 --> 00:38:33,500 Цонтрол-- 738 00:38:33,500 --> 00:38:36,540 739 00:38:36,540 --> 00:38:38,140 >> Х'у ЗАБРИСКИЕ: О, контрола, Дођите? 740 00:38:38,140 --> 00:38:38,780 О, те. 741 00:38:38,780 --> 00:38:41,480 Да. 742 00:38:41,480 --> 00:38:42,240 Вау, Не, не. 743 00:38:42,240 --> 00:38:42,740 OK. 744 00:38:42,740 --> 00:38:46,090 Нећу то да урадим. 745 00:38:46,090 --> 00:38:48,300 >> Тако да, у овом првом секција овде, видиш 746 00:38:48,300 --> 00:38:52,720 ми ствара све то другачије чворови од контекста. 747 00:38:52,720 --> 00:38:54,980 Само их пиецинг заједно у другом делу 748 00:38:54,980 --> 00:38:56,980 са овом функцијом под називом Повезивање. 749 00:38:56,980 --> 00:38:58,830 То је заиста кључ Функција у Веб Аудио. 750 00:38:58,830 --> 00:39:01,930 То само значи кад сте урадили нешто са звуком у једном чвору, 751 00:39:01,930 --> 00:39:03,705 пасс га на следећи чвор. 752 00:39:03,705 --> 00:39:05,830 Тако имамо извор, да је повезује са анализатор, 753 00:39:05,830 --> 00:39:09,140 анализатор ради нешто са њим, то иде на изобличења, и тако даље, 754 00:39:09,140 --> 00:39:12,725 и до одредишта на дну управо овде. 755 00:39:12,725 --> 00:39:13,225 Кул. 756 00:39:13,225 --> 00:39:14,640 У реду, тако да ћемо наставити кретати даље. 757 00:39:14,640 --> 00:39:17,180 >> Опет пипелине--, ово су најчешћи цевоводи, 758 00:39:17,180 --> 00:39:21,300 тако да говоримо о свим тим стварима, као што су дисторзија, померање, све ове ствари. 759 00:39:21,300 --> 00:39:24,280 Ако сте заиста заинтересовани у коришћењу ствари Про Тоолс, 760 00:39:24,280 --> 00:39:25,820 они вероватно не занима. 761 00:39:25,820 --> 00:39:27,740 Ако не, можда само желите да играте звук, 762 00:39:27,740 --> 00:39:29,990 или можда само желите да подесите јачину звука на. 763 00:39:29,990 --> 00:39:35,270 То су два најчешћа врста цевовода у аудио продукције. 764 00:39:35,270 --> 00:39:38,640 >> Опет, начина на које можете га узети у као осциллатор-- тако, хајде да 765 00:39:38,640 --> 00:39:42,460 урадите демо тога овде. 766 00:39:42,460 --> 00:39:47,090 767 00:39:47,090 --> 00:39:52,225 Дакле, идемо да се створи једноставан аудио контекст овде, 768 00:39:52,225 --> 00:39:54,350 и од тога ћемо да створимо осцилатор. 769 00:39:54,350 --> 00:39:58,620 Тако да је, опет, ми смо само ће позвати Направи осцилатор. 770 00:39:58,620 --> 00:40:07,030 Идемо да подесите фреквенцију на да, 440 Херц, свима омиљени. 771 00:40:07,030 --> 00:40:13,290 Онда смо повезали да до одредишта поента што је говорник, тако 772 00:40:13,290 --> 00:40:15,750 контекст дестинација. 773 00:40:15,750 --> 00:40:21,400 На крају, ми само реци, почети нула секунди од сада и ми смо звучи? 774 00:40:21,400 --> 00:40:22,400 >> [РИНГИНГ] 775 00:40:22,400 --> 00:40:24,980 >> Х'у ЗАБРИСКИЕ: Идемо. 776 00:40:24,980 --> 00:40:25,940 То је само синусоида. 777 00:40:25,940 --> 00:40:26,440 OK kul. 778 00:40:26,440 --> 00:40:28,274 А онда ћемо престати да. 779 00:40:28,274 --> 00:40:30,520 >> ПУБЛИКА: Одакле да повратне информације долазе из? 780 00:40:30,520 --> 00:40:31,250 >> Х'у ЗАБРИСКИЕ: Повратне информације? 781 00:40:31,250 --> 00:40:32,458 Ох, вероватно наши микрофони. 782 00:40:32,458 --> 00:40:34,221 783 00:40:34,221 --> 00:40:35,470 Тако да, тако се то ради. 784 00:40:35,470 --> 00:40:37,261 И заиста, ако сам имао задржао је покренут, 785 00:40:37,261 --> 00:40:39,540 могу имати фреквенцију вредност како се ради, 786 00:40:39,540 --> 00:40:43,320 тако да је забавно ствар за играње. 787 00:40:43,320 --> 00:40:44,930 Кул. 788 00:40:44,930 --> 00:40:46,600 То је увек лепо један да представи. 789 00:40:46,600 --> 00:40:48,792 >> Сам Греен: Нисмо размислите о томе, зар не? 790 00:40:48,792 --> 00:40:50,500 Х'у ЗАБРИСКИЕ: Да, то је гадно. 791 00:40:50,500 --> 00:40:53,249 Дакле, буффер лоадинг-- ћу показати Пример за то на самом крају. 792 00:40:53,249 --> 00:40:55,090 То лоадинг ан МП3. 793 00:40:55,090 --> 00:40:58,880 А микрофон, користите само функцију зове Навигатор.гетУсерМедиа () 794 00:40:58,880 --> 00:41:03,240 да захтева приступ корисник је микрофон за ту информацију. 795 00:41:03,240 --> 00:41:05,610 >> Ево филтрирање, ја ћу само настави да се креће од овога. 796 00:41:05,610 --> 00:41:08,600 Ово је прилично висок ниво, али филтери само вам омогућавају да 797 00:41:08,600 --> 00:41:16,154 >> [Бееп] 798 00:41:16,154 --> 00:41:18,320 Филтрирање такође вам омогућава да створи ствари као што су розе 799 00:41:18,320 --> 00:41:20,050 бука, бука браон, бела бука. 800 00:41:20,050 --> 00:41:24,330 Ако желите да креирате чисти буку, која неки људи воле да се зезају са, 801 00:41:24,330 --> 00:41:27,490 можете користити Веб Аудио филтрирање да то уради. 802 00:41:27,490 --> 00:41:30,039 >> Аудио Паннинг-- тако замислити ако пишете игру 803 00:41:30,039 --> 00:41:32,330 и желите звук на звучи као да долази, као, 804 00:41:32,330 --> 00:41:36,090 пуца преко екрана, ви могу користити Добијање аудио 805 00:41:36,090 --> 00:41:39,770 да створи ову врсту конус, која као-- то је прилично Матхи, 806 00:41:39,770 --> 00:41:41,850 али то је заправо стварно кул ако се то ради, 807 00:41:41,850 --> 00:41:44,500 и постоји нека добра туторијала на њему могу да вам послати. 808 00:41:44,500 --> 00:41:46,400 У суштини, ви врсте могу од стварају звук 809 00:41:46,400 --> 00:41:50,480 нешто дешава са у 3Д начин. 810 00:41:50,480 --> 00:41:57,350 А ако имате ДЈ интерес, можете почетак мешања и пређе фединга песме. 811 00:41:57,350 --> 00:42:01,260 >> Ово је само неки врло основни код, у суштини оно што сам раније. 812 00:42:01,260 --> 00:42:06,140 Ово поставља јачину звука осцилатор, тако да ми стварамо нашу осцилатор 813 00:42:06,140 --> 00:42:07,380 која ствара таласни облик. 814 00:42:07,380 --> 00:42:09,940 Ми стварамо нашу ГаинНоде, сет нашу фреквенцију, 815 00:42:09,940 --> 00:42:14,170 а затим прикључите осцилатор на ГаинНоде, што онда у основи мења 816 00:42:14,170 --> 00:42:16,760 колико сигнала је дозвољено кроз. 817 00:42:16,760 --> 00:42:20,467 Али стварно, то је дигитални ствар, тако да је више само-- да. 818 00:42:20,467 --> 00:42:23,550 То није оно што се заиста дешава, али то је оно што се дешава у стварном животу 819 00:42:23,550 --> 00:42:24,393 са добитком. 820 00:42:24,393 --> 00:42:27,258 >> ПУБЛИКА: --куантизатион од запремине параметра? 821 00:42:27,258 --> 00:42:28,174 Х'у ЗАБРИСКИЕ: Молим? 822 00:42:28,174 --> 00:42:30,360 ПУБЛИКА: ит А је квантизирана обим параметар? 823 00:42:30,360 --> 00:42:31,840 Х'у ЗАБРИСКИЕ: Да. 824 00:42:31,840 --> 00:42:34,620 И то је једна ствар ја сам стварно дефицитарни у мом знању, 825 00:42:34,620 --> 00:42:38,010 како добит ради на дигиталном нивоу. 826 00:42:38,010 --> 00:42:40,140 Знам са стварним сигнали, то је у основи 827 00:42:40,140 --> 00:42:45,120 колико контролу сте амплификацију сигнал. 828 00:42:45,120 --> 00:42:47,017 Па, да. 829 00:42:47,017 --> 00:42:50,100 Ја ћу вам послати више информација о да, јер бих био радознао ствари 830 00:42:50,100 --> 00:42:51,099 знати више о томе. 831 00:42:51,099 --> 00:42:54,090 Али у суштини параметри су, један је фолд-- 832 00:42:54,090 --> 00:42:59,690 гласније сигнал-- и нула постоји сигнал, или нећете чути никакав звук. 833 00:42:59,690 --> 00:43:03,150 Ми ћемо прескочити времена демо за то јер то је у основи оно што сам раније. 834 00:43:03,150 --> 00:43:07,630 И опет, Цонтект.Дестинатион је аудио дестинација чвор. 835 00:43:07,630 --> 00:43:08,360 Страва, у реду. 836 00:43:08,360 --> 00:43:10,470 >> Зато ћу да урадите брзо два демо. 837 00:43:10,470 --> 00:43:11,760 Како стојимо са временом? 838 00:43:11,760 --> 00:43:12,640 >> СПЕАКЕР 1: Око 10 минута. 839 00:43:12,640 --> 00:43:13,130 >> Х'у ЗАБРИСКИЕ: 10 минута? 840 00:43:13,130 --> 00:43:13,630 Veliki! 841 00:43:13,630 --> 00:43:14,320 Страва. 842 00:43:14,320 --> 00:43:19,010 >> Дакле, први ћу Не, то се зове Моја омиљена песма. 843 00:43:19,010 --> 00:43:22,410 Дакле, ово је само мало ХТМЛ-ЈаваСцрипт-а. 844 00:43:22,410 --> 00:43:25,510 Ми ћемо имати два тастера на страни играју моју омиљену песму 845 00:43:25,510 --> 00:43:29,192 и престани да моју омиљену песму. 846 00:43:29,192 --> 00:43:30,180 Ја ћу променити. 847 00:43:30,180 --> 00:43:32,110 >> ПУБЛИКА: Покриј микрофон. 848 00:43:32,110 --> 00:43:33,430 >> Х'у ЗАБРИСКИЕ: Да. 849 00:43:33,430 --> 00:43:36,300 И ја сам лоадед овде скрипта да басицалли-- 850 00:43:36,300 --> 00:43:38,520 и ово је стварно корисно за утовар у МП3, 851 00:43:38,520 --> 00:43:41,820 па то само чини лоадинг МП3с начин брже. 852 00:43:41,820 --> 00:43:44,180 То је у основи само омот. 853 00:43:44,180 --> 00:43:48,737 То само чини процес лоадинг у МП3с много брже, 854 00:43:48,737 --> 00:43:51,570 иначе користите ХТТП захтев, нешто као што смо радили 855 00:43:51,570 --> 00:43:53,950 о тренутној комада сет са сервером. 856 00:43:53,950 --> 00:43:55,950 То је заиста ружно, ви не желим то да урадим. 857 00:43:55,950 --> 00:44:04,110 >> Дакле, овај момак Борис СМУС, написао је стварно корисно мали алат зове БуфферЛоадер. 858 00:44:04,110 --> 00:44:08,780 Све што урадите је да једноставно прође га на контекст, можете ли то проћи лист-- 859 00:44:08,780 --> 00:44:11,327 или, да, то је списак у ЈаваСцрипт? 860 00:44:11,327 --> 00:44:12,160 Сам Греен: Низ. 861 00:44:12,160 --> 00:44:14,201 Х'у ЗАБРИСКИЕ: Ох, то је низ, тако је. 862 00:44:14,201 --> 00:44:18,660 То је низ стаза различитим фајловима. 863 00:44:18,660 --> 00:44:21,990 И онда је функција прође. 864 00:44:21,990 --> 00:44:25,530 Ово је повратни смо причали о са асинхроним утовар. 865 00:44:25,530 --> 00:44:28,720 То ће бити позван Једном датотеке уцитавани. 866 00:44:28,720 --> 00:44:33,780 И то функција која се позива када фајл је пун узима као периметар 867 00:44:33,780 --> 00:44:35,840 низ оптерећених буфферс. 868 00:44:35,840 --> 00:44:37,990 Тако да се дешава овде. 869 00:44:37,990 --> 00:44:41,180 У суштини, БуфферЛист је ће бити један валуе-- 870 00:44:41,180 --> 00:44:46,380 или ће то бити низ ленгтх једно, да има у њој у индексу 871 00:44:46,380 --> 00:44:51,320 зеро цео напуњену фајл МП3. 872 00:44:51,320 --> 00:44:53,320 Па шта да радим када завршим утовар је, једноставно сам 873 00:44:53,320 --> 00:44:57,430 створити тампон извор, који је аудио тампон извор чвор. 874 00:44:57,430 --> 00:45:03,410 Следећи корак је да учитати у соурце.буффер у пуном лоадед тампон 875 00:45:03,410 --> 00:45:06,740 од БуфферЛист-- То је много буфферс-- 876 00:45:06,740 --> 00:45:10,255 и онда спојите аудио тампон до одредишта. 877 00:45:10,255 --> 00:45:12,380 Дакле, оно што ће да уради је једноставно ставити МП3 878 00:45:12,380 --> 00:45:15,260 равно до излаза, и одмах почети да 879 00:45:15,260 --> 00:45:18,010 након добијања овај позив. 880 00:45:18,010 --> 00:45:21,660 >> Кул, па да видимо ово десило у акцији. 881 00:45:21,660 --> 00:45:24,490 Моје [неразумљиво] овде, да видимо. 882 00:45:24,490 --> 00:45:26,430 Дакле, само ћу старт основни сервер. 883 00:45:26,430 --> 00:45:28,660 То је нешто што морате да урадите ако сте 884 00:45:28,660 --> 00:45:32,490 што захтева за утовар фајлова. 885 00:45:32,490 --> 00:45:34,140 Ја ћу почети основни сервер. 886 00:45:34,140 --> 00:45:38,200 Ово је у суштини цео твој ПСЕТ сада у једној линији, 887 00:45:38,200 --> 00:45:43,930 али тек почиње сервер на порту 80/80. 888 00:45:43,930 --> 00:45:47,300 Дакле, идемо тамо, ми да учита 80/80, 889 00:45:47,300 --> 00:45:49,110 ћемо да идемо у Моја омиљена песма. 890 00:45:49,110 --> 00:45:51,660 Дакле, ако сам погодио "Плаи Ми омиљена песма "сада, 891 00:45:51,660 --> 00:45:53,964 да ће учитати мој омиљена песма и игра то-- 892 00:45:53,964 --> 00:45:55,880 [МУЗИКА - Тхе Еаглес ", Лифе Ин Тхе Фаст  Лане "] 893 00:45:55,880 --> 00:46:00,490 --вхицх се дешава да се "Живот у Тхе Фаст Лане "од Тхе Еаглес. 894 00:46:00,490 --> 00:46:06,346 Сада, могао погодити "Стоп Ми омиљена песма "и понављати га. 895 00:46:06,346 --> 00:46:09,160 >> [МУЗИКА - Тхе Еаглес ", Лифе Ин Тхе Фаст  Лане "] 896 00:46:09,160 --> 00:46:18,340 >> И ако одем до утеши, јер Користио сам глобалну променљиву овде 897 00:46:18,340 --> 00:46:23,390 пратити ове вредности, то заиста Сада ће бити признат у конзоли. 898 00:46:23,390 --> 00:46:25,160 Тако да ауто ствара за мене. 899 00:46:25,160 --> 00:46:29,991 Дакле, то је оно што свира сада, и ја једноставно могу позвати соурце.стоп () 900 00:46:29,991 --> 00:46:30,490 o tome. 901 00:46:30,490 --> 00:46:34,930 902 00:46:34,930 --> 00:46:35,860 Па, знаш шта? 903 00:46:35,860 --> 00:46:39,760 Само да ви ово чули сонг-- можда ћете препознати ову песму. 904 00:46:39,760 --> 00:46:41,801 >> [МУЗИКА - Рицк Астлеи, "Невер Гонна Гиве  Иоу Уп "] 905 00:46:41,801 --> 00:46:42,299 906 00:46:42,299 --> 00:46:44,215 [МУЗИКА - Тхе Еаглес ", Лифе Ин Тхе Фаст  Лане "] 907 00:46:44,215 --> 00:46:46,195 Ми смо сада сви били Рицкроллед. 908 00:46:46,195 --> 00:46:50,155 ОК, супер, идемо даље. 909 00:46:50,155 --> 00:46:51,160 Кул. 910 00:46:51,160 --> 00:46:54,554 Дакле, ово је у суштини један пример колико сте могли да учита МП3 филе-- 911 00:46:54,554 --> 00:46:56,470 [МУЗИКА - Тхе Еаглес ", Лифе Ин Тхе Фаст  Лане "] 912 00:46:56,470 --> 00:46:59,590 --анд играју га, и заустави и почне га. 913 00:46:59,590 --> 00:47:03,008 Могао сам да уради много више [неразумљиво] 914 00:47:03,008 --> 00:47:07,570 >> Последњи Ја ћу је, Ја ћу вам показати [неразумљиво]. 915 00:47:07,570 --> 00:47:18,070 >> [Мусиц плаиинг] 916 00:47:18,070 --> 00:47:21,800 >> То је као, огг.ваве.мп3. 917 00:47:21,800 --> 00:47:26,450 Мислим, ако се добро сећам, Ја сам налетео на неким питањима са .м4а, 918 00:47:26,450 --> 00:47:27,721 али нисам сигуран у то. 919 00:47:27,721 --> 00:47:28,470 Мислим мп3.ваве-- 920 00:47:28,470 --> 00:47:28,930 921 00:47:28,930 --> 00:47:30,971 >> [МУЗИКА - Рицк Астлеи, "Невер Гонна Гиве  Иоу Уп "] 922 00:47:30,971 --> 00:47:35,930 923 00:47:35,930 --> 00:47:36,500 >> Ok super. 924 00:47:36,500 --> 00:47:37,625 Није требало то да кажем. 925 00:47:37,625 --> 00:47:40,570 У сваком случају, здраво. 926 00:47:40,570 --> 00:47:43,430 927 00:47:43,430 --> 00:47:45,490 Дакле, имамо ово отворено. 928 00:47:45,490 --> 00:47:52,320 Тако да сада све радим је, ја у суштини створио основна синтакса за стварање музике. 929 00:47:52,320 --> 00:47:57,610 Дакле, ако урадим нешто слично, додајте г4 1. 2, шта то значи да, 930 00:47:57,610 --> 00:48:00,950 додајте клавир напомену, Г4, што је четврта Г 931 00:48:00,950 --> 00:48:02,680 горе на клавиру одоздо. 932 00:48:02,680 --> 00:48:05,930 Дакле, ово је врста МИДИ говорите, тако да за оне који су музика заснована, 933 00:48:05,930 --> 00:48:07,860 ово је само МИДИ ноте. 934 00:48:07,860 --> 00:48:10,090 >> ПУБЛИКА: То је Г на Блиском Ц, зар не? 935 00:48:10,090 --> 00:48:11,840 >> Х'у ЗАБРИСКИЕ: Ово је Г изнад средњег Ц, тако је. 936 00:48:11,840 --> 00:48:12,470 >> ПУБЛИКА: Изнад Средњи Ц 937 00:48:12,470 --> 00:48:13,345 >> Х'у ЗАБРИСКИЕ: Да. 938 00:48:13,345 --> 00:48:14,340 Заправо, да. 939 00:48:14,340 --> 00:48:16,131 Мислим да сам заправо направљен једна [неразумљиво], 940 00:48:16,131 --> 00:48:18,860 тако да би ово могло да буде октаву изнад тога. 941 00:48:18,860 --> 00:48:20,070 Па да видимо. 942 00:48:20,070 --> 00:48:21,152 Ако сам погодио Плаи-- 943 00:48:21,152 --> 00:48:22,110 [Понављају КЛАВИР НАПОМЕНА] 944 00:48:22,110 --> 00:48:23,200 --ве'ре ће то чујем. 945 00:48:23,200 --> 00:48:25,700 Идеја је да се ради баш као командна линија би, 946 00:48:25,700 --> 00:48:27,510 па ако одем горе и доле на мојој тастатури, ви 947 00:48:27,510 --> 00:48:31,550 могу да се вратим на претходну команде, што је прилично корисно. 948 00:48:31,550 --> 00:48:35,136 А испод је мој списак нумера, који су сви раде на петљи. 949 00:48:35,136 --> 00:48:38,260 >> ПУБЛИКА: си уз претпоставку 88-Кеи Кеибоард о томе, зар не? 950 00:48:38,260 --> 00:48:41,051 >> Х'у ЗАБРИСКИЕ: Питање је, ја под претпоставком да је 88-Кеи Кеибоард, 951 00:48:41,051 --> 00:48:41,990 и да, ја сам. 952 00:48:41,990 --> 00:48:45,030 Оно што сам урадио је да сам у основи је 88 узорака 953 00:48:45,030 --> 00:48:46,970 клавира, по један за сваку ноту. 954 00:48:46,970 --> 00:48:49,180 И тако сваки пут вам чују поруку од сада, 955 00:48:49,180 --> 00:48:57,550 То је заправо петља која изгледа као-- Ово постаје игра на петљи, 956 00:48:57,550 --> 00:49:00,120 тако да за сваки напомену, ово ради. 957 00:49:00,120 --> 00:49:02,860 Шта се дешава је, створити тампон опет, 958 00:49:02,860 --> 00:49:06,010 Ја створити добитак чвор да подесите јачину звука. 959 00:49:06,010 --> 00:49:08,240 Ово само јако компликован начин да каже да 960 00:49:08,240 --> 00:49:10,550 чувајте бафер у соурце.буффер. 961 00:49:10,550 --> 00:49:13,160 Ја му дати добит, ја спојите га на добит, 962 00:49:13,160 --> 00:49:15,576 добит Повезана је са излаз, а онда сам га играти. 963 00:49:15,576 --> 00:49:20,735 Дакле, то је нека врста процеса узимања у пуферу извору. 964 00:49:20,735 --> 00:49:24,820 >> ПУБЛИКА: Можете ли стварно то узети сува звук и да га мокар [неразумљиво]? 965 00:49:24,820 --> 00:49:26,260 >> Х'у ЗАБРИСКИЕ: Можеш, да. 966 00:49:26,260 --> 00:49:29,260 Ту је поново глагол, ту је кашњење, дисторзија. 967 00:49:29,260 --> 00:49:33,260 Ви у суштини можете ставити ништа у између у том сендвичу од-- добро, 968 00:49:33,260 --> 00:49:37,660 Гасовод је боља метафора, али можете да додате нешто у томе. 969 00:49:37,660 --> 00:49:38,200 Кул. 970 00:49:38,200 --> 00:49:40,280 >> Тако да ћу завршити демо овде да вам пружи осећај 971 00:49:40,280 --> 00:49:46,390 да само чиста број пута сте може да покрене ту функцију одједном. 972 00:49:46,390 --> 00:49:49,280 Зато ћу уклонити ово. 973 00:49:49,280 --> 00:49:59,110 Идем да створи генератор то-- у суштини оно што доес-- ово је стварно 974 00:49:59,110 --> 00:50:04,220 врста компликоване синтак-- али је ће генерисати белешке о лету, 975 00:50:04,220 --> 00:50:06,601 и само почели да играте их, јер их процењује. 976 00:50:06,601 --> 00:50:07,392 [Ставим пиано] 977 00:50:07,392 --> 00:50:10,990 978 00:50:10,990 --> 00:50:12,817 >> Дакле, можемо само да овде мало музике. 979 00:50:12,817 --> 00:50:13,608 [Ставим пиано] 980 00:50:13,608 --> 00:50:39,570 981 00:50:39,570 --> 00:50:41,470 >> Дакле, оно што ова команда чини, на пример, 982 00:50:41,470 --> 00:50:46,910 потребно је те три белешке за клавир, а затим их ставља на Б3. 983 00:50:46,910 --> 00:50:48,660 Ово би могло да синтакса мало више смисла 984 00:50:48,660 --> 00:50:50,590 онима који имају мусиц бацкгроунд овде. 985 00:50:50,590 --> 00:50:55,180 986 00:50:55,180 --> 00:50:56,551 >> Могу додати кицк бубањ. 987 00:50:56,551 --> 00:50:57,050 Mogu-- 988 00:50:57,050 --> 00:50:58,048 >> [Ставим Инструментс] 989 00:50:58,048 --> 00:50:59,256 >> --јуст играте са тим. 990 00:50:59,256 --> 00:51:12,519 991 00:51:12,519 --> 00:51:13,474 >> Дакле, можете маке-- 992 00:51:13,474 --> 00:51:14,515 [Ставим Инструментс] 993 00:51:14,515 --> 00:51:15,513 То је мало више нервира. 994 00:51:15,513 --> 00:51:16,554 [Ставим Инструментс] 995 00:51:16,554 --> 00:51:26,491 996 00:51:26,491 --> 00:51:30,981 >> Тако да насумично додаје суви чинеле на сваком 16. ноте, са 16% 997 00:51:30,981 --> 00:51:31,481 [Неразумљиво]. 998 00:51:31,481 --> 00:51:32,522 >> [Ставим Инструментс] 999 00:51:32,522 --> 00:51:40,962 1000 00:51:40,962 --> 00:51:50,400 >> Да, тако да је ово начин воркс-- је увек у 4: 4. 1001 00:51:50,400 --> 00:51:51,441 [Ставим Инструментс] 1002 00:51:51,441 --> 00:52:06,910 1003 00:52:06,910 --> 00:52:10,902 >> Да, па четири квартала, и 16/8. 1004 00:52:10,902 --> 00:52:14,851 1005 00:52:14,851 --> 00:52:15,892 [Ставим Инструментс] 1006 00:52:15,892 --> 00:52:27,970 1007 00:52:27,970 --> 00:52:33,780 >> Тако у просеку, добијате 60% погодака 16. белешкама. 1008 00:52:33,780 --> 00:52:35,990 >> У сваком случају, ово је само врста да покаже 1009 00:52:35,990 --> 00:52:39,780 неке од ствари које можете изгради са Веб Аудио АПИ. 1010 00:52:39,780 --> 00:52:43,840 То је заиста моћан, стварно је брз, и можете направити пуно занимљивих ствари 1011 00:52:43,840 --> 00:52:44,340 s tim. 1012 00:52:44,340 --> 00:52:51,260 Дакле, опет, било каква питања имате, Е-маил себе-- Хугх-- или Сам, 1013 00:52:51,260 --> 00:52:55,869 и искрено, Гоогле има тона добрих ресурса. 1014 00:52:55,869 --> 00:52:56,660 Има ли питања? Последњих 1015 00:52:56,660 --> 00:52:57,970 Да. 1016 00:52:57,970 --> 00:53:00,790 >> ПУБЛИКА: Дакле, можете да приступите уграђени микрофон. 1017 00:53:00,790 --> 00:53:03,089 Шта ако сте желели да користе бољи микрофон? 1018 00:53:03,089 --> 00:53:05,380 Х'у ЗАБРИСКИЕ: Ако си хтео користити бољи микрофон? 1019 00:53:05,380 --> 00:53:11,320 Дакле, опет, ово је део апстракција између Цхроме 1020 00:53:11,320 --> 00:53:12,950 и остатак вашег рачунара. 1021 00:53:12,950 --> 00:53:18,950 Уколико је доступан преко АПИ, као и веб МИДИ АПИ, 1022 00:53:18,950 --> 00:53:22,030 могло би се наћи неке хацкс, али генерално не као изводљиво. 1023 00:53:22,030 --> 00:53:25,300 >> Сам Греен: Можете алсо-- све Цхроме зна 1024 00:53:25,300 --> 00:53:28,820 је оно што ваш подразумевани микрофон је, и приступа то. 1025 00:53:28,820 --> 00:53:33,410 Дакле, ако сте имали микрофон сте могли поставите као подразумевани микрофон рачунара, 1026 00:53:33,410 --> 00:53:35,990 можете му приступити тако и вероватно ће радити. 1027 00:53:35,990 --> 00:53:37,490 Х'у ЗАБРИСКИЕ: То је добра ствар. 1028 00:53:37,490 --> 00:53:39,656 Никад нисам пробао, али можда ћете моћи да врсти 1029 00:53:39,656 --> 00:53:45,700 од-- ако преусмерите улазни звучник, можда ћете моћи да то урадите, да. 1030 00:53:45,700 --> 00:53:48,360 >> Има ли питања? Последњих 1031 00:53:48,360 --> 00:53:49,340 Кул. 1032 00:53:49,340 --> 00:53:51,680 Па хвала вам момци Толико за гледање. 1033 00:53:51,680 --> 00:53:52,199 Ја сам Хју. 1034 00:53:52,199 --> 00:53:52,990 Сам Греен: Ја сам Сам. 1035 00:53:52,990 --> 00:53:55,410 Х'у ЗАБРИСКИЕ: А ово је ЦС50. 1036 00:53:55,410 --> 00:53:56,767