Про трёхмерный звук

Преды­ду­щий пост собрал боль­шое коли­че­ство ком­мен­та­ри­ев. И тема дей­стви­тель­но инте­рес­ная. Как чело­век, имея толь­ко два уха, рас­по­ло­жен­ных на гори­зон­таль­ной оси, в прин­ци­пе может отли­чить, лета­ет ли муха у пола или у потол­ка. И нахо­дит­ся ли она сза­ди нас или спе­ре­ди нас. Ведь может? Ну, не с такой точ­но­стью, с какой мы можем опре­де­лить угол направ­ле­ния на источ­ник зву­ка, нахо­дя­щий­ся спе­ре­ди нас (в иде­аль­ных усло­ви­ях чело­век спо­со­бен на точ­ность опре­де­ле­ния это­го угла с погреш­но­стью в два гра­ду­са!!!), но может. Да, пло­хо­ва­то, но спо­со­бен. Если муха будет тупо летать по окруж­но­сти, вокруг нашей голо­вы, ника­ких про­блем с опо­зна­ва­ни­ем того, сза­ди муха или спе­ре­ди, у нас не воз­ник­нет.

Я нико­им обра­зом не явля­юсь спе­ци­а­ли­стом в дан­ной обла­сти. Но из того, что я наскрёб в интер­не­тах, это свя­за­но с аку­сти­че­ски­ми осо­бен­но­стя­ми нашей с вами голо­вы. Наши уши явля­ют­ся слег­ка направ­лен­ны­ми из-за их фор­мы. Это не мик­ро­фо­ны с кру­го­вой направ­лен­но­стью. Мы вос­при­ни­ма­ем звук по-раз­но­му в зави­си­мо­сти от угла; звук, иду­щий сза­ди, частич­но отра­жа­ет­ся от зад­ней части ушей, из-за чего меня­ет­ся ампли­туд­но-частот­ная харак­те­ри­сти­ка вос­при­ни­ма­е­мо­го зву­ка. Наш мозг вполне спо­со­бен на обра­бот­ку дан­ной инфор­ма­ции и рас­чё­ту пози­ции его источ­ни­ка. Без­услов­но, это слож­нее для како­го-то оди­ноч­но­го сиг­на­ла, и про­ще для сиг­на­ла про­дол­жи­тель­но­го, так как у нас есть, с чем срав­нить.

Я даже пола­гаю, что для неко­то­рых зву­ков угол наш мозг будет вычис­лить не в состо­я­нии. Напри­мер, звук сину­са часто­той 1KHz менять­ся будет очень сла­бень­ко. Ну да, он будет по-раз­но­му зату­хать, но вряд­ли это даст моз­гу доста­точ­но инфор­ма­ции. А вот место­по­ло­же­ние шума, где частот­ная поло­са очень широ­кая (есть, чему изби­ра­тель­но зату­хать!), будет опре­де­лять­ся лег­че.

Есть вполне стро­гие мате­ма­ти­че­ские фор­му­лы, по кото­рым мож­но рас­счи­тать, как дол­жен менять­ся звук при смене его рас­по­ло­же­ния. К сожа­ле­нию, я не нашёл ника­кой инфор­ма­ции на рус­ском язы­ке, но на англий­ском это назы­ва­ет­ся Head-related transfer function (HRTF). Это уже за гра­нью мое­го пони­ма­ния, я даль­ше мата­на и ста­ти­сти­ки с тео­рве­ром ниче­го не изу­чал. Вот тут я нашёл аж целый неболь­шой ввод­ный учеб­ни­чек по дан­но­му вопро­су, за автор­ством двух про­фес­со­ров Мичи­ган­ско­го уни­вер­си­те­та: https://isr.umd.edu/Labs/ISL/BAIL/hrtf_review.pdf. Ну, если кто-нибудь решит все­рьёз зако­пать­ся.

Ком­пью­тер­ные чипы ком­па­нии Aureal, кото­рым я пел дифи­рам­бы, зани­ма­ют­ся имен­но этим — обсчё­том того, как дол­жен менять­ся звук, в зави­си­мо­сти от его пози­ции. Не надо верить мне на сло­во. Вот доб­рый чело­век выло­жил эти дем­ки на ютуб. Погля­ди­те сами.

Теперь по пово­ду музы­ки в этом фор­ма­те. Уже све­дён­ное сте­рео, без­услов­но, невоз­мож­но нор­маль­но пере­де­лать на этот фор­мат. Это надо сво­дить зано­во. Я думаю, что берёт­ся изна­чаль­ная мно­го­ка­наль­ная запись, к отдель­ным тре­кам при­ме­ня­ет­ся этот самый HRTF, и впе­рёд — созда­ёт­ся этот самый эффект при­сут­ствия. В Эппл музы­ке дале­ко не все запи­си явля­ют­ся таки­ми, и там спе­ци­аль­но выво­дит­ся инди­ка­ция того, что ты слу­ша­ешь Dolby Atmos, а не обыч­ное сте­рео.

Dolby Atmos

В кон­це 90х на рынок зву­ко­вых карт вышла ком­па­ния Aureal. Они при­ду­ма­ли тех­но­ло­гию Aureal 3D и сде­ла­ли PCI зву­ко­вую кар­точ­ку Aureal Vortex. В 90х PCI звук ещё был новин­кой — оно нор­маль­но рабо­та­ло толь­ко под вин­дой, а у наро­да до сих пор была туча ДОС-игру­шек. Поэто­му в моём ком­пью­те­ре сто­я­ло ДВЕ зву­ко­вые кар­ты — Aureal Vortex и SoundBlaster 32. Вся­кий Дум и про­чий Дюк игра­ли на Саунд­Б­ла­сте­ре, а в пер­вый Half-Life я играл­ся на Вор­тек­се. На моих яма­хов­ских колон­ках было два вхо­да, и всё пре­крас­но рабо­та­ло вме­сте.

Чем была кру­та кар­точ­ка Вор­текс? Под­держ­кой этой самой тех­но­ло­гии A3D, кото­рая в науш­ни­ках мог­ла создать трёх­мер­ный звук. Была даже дем­ка, где вокруг тебя летал вер­то­лёт, а ты пре­крас­но мог ска­зать, где он нахо­дит­ся — спе­ре­ди, сза­ди, спе­ре­ди-сле­ва, и т.д. В игре Half-Life это очень силь­но добав­ля­ло реа­ли­стич­но­сти, так как поз­во­ля­ло реаль­но стре­лять на звук. Зашёл ты в ком­на­ту, и тут спра­ва сза­ди на тебя гото­вить­ся прыг­нуть краб — ты раз­во­ра­чи­ва­ешь­ся, бабац, и мет­ким выстре­лом из дро­бо­ви­ка незем­ная дрянь узба­го­е­на навеч­но.

Увы, даль­ше дела пре­крас­ной кон­то­ры пошли квер­ху попой. Creative Labs выка­ти­ли свою вер­сию трёх­мер­но­го зву­ка, и тут же выста­ви­ли иск к Aureal типа за нару­ше­ние патен­та. Aureal выка­ти­ли встреч­ный иск — и таки выиг­ра­ли в суде, т.е. суд офи­ци­аль­но при­знал, что Кре­ти­нив спиз… в смыс­ле укра­ли тех­но­ло­гию трёх­мер­но­го зву­ка у Aureal, но было уже позд­но. Судеб­ная тяж­ба сто­и­ла слиш­ком доро­го для малень­ких Aureal по срав­не­нию с Creative Labs, и они обанк­ро­ти­лись. В резуль­та­те они были куп­ле­ны Кре­ти­ни­вом. Нор­маль­ная такая биз­нес-прак­ти­ка, не нахо­ди­те? Обанк­ро­тить кон­ку­рен­та, а потом купить их по дешёв­ке. Гни­ды. С тех пор НИЧЕГО, про­из­ве­дён­но­го этой кон­то­рой, в моих ком­пью­те­рах нет и не будет. Ну, поми­мо того, что про­дук­ция у них так себе. Шир­по­треб.

Но всё это предыс­то­рия. А бук­валь­но недав­но Эппл выка­тил два улуч­ше­ния в музы­каль­ной под­пис­ке. Во-пер­вых, появил­ся lossless. Во-вто­рых, боль­шое коли­че­ство тре­ков теперь доступ­ны в Dolby Atmos. Что это такое? А это при­мер­но то же, что нам дава­ла ста­рая доб­рая тех­но­ло­гия A3D! Толь­ко для музы­ки.

Вру­бил в настрой­ках теле­фо­на Atmos, воткнул Сен­н­хай­зе­ры, и заслу­шал Sweet Child O’ Mine, Guns’n’Roses, ста­рый доб­рый аме­ри­кан­ский рок. Офи­ги­тель­но!! Как буд­то реаль­но сидишь в сту­дии, а вокруг тебя игра­ют музы­кан­ты. Спе­ре­ди-спра­ва игра­ет Слэш, впе­ре­ди поёт Эксл, за ним сто­ит удар­ная уста­нов­ка Сти­ве­на Эдле­ра, а ЗА мной, сле­ва, игра­ет Иззи Стр­эд­лин. Как-то им уда­лось раз­де­лить тре­ки, что слыш­ны такие дета­ли.

В‑общем, я впе­чат­лён! Если играть музы­ку на ябло­фоне, то рабо­та­ет с любы­ми науш­ни­ка­ми, доста­точ­но поста­вить в нуж­ном месте галоч­ку. А вот обыч­ные ком­пью­тер­ные колон­ки или реси­вер не годят­ся. Надо брать реси­вер с Dolby Atmos. Но они в прин­ци­пе доступ­ны. Я наце­лил­ся на мою люби­мую Яма­ху, их реси­вер с Atmos (RX-V6A) сто­ит шесть­сот дол­ла­ров. Ну, не могу ска­зать, что такие день­ги у меня про­сто лежат в кар­мане, но на день варе­нья, может, при­куп­лю 🙂 Я люб­лю музы­ку, поэто­му на мой взгляд, оно того сто­ит. В интер­не­тах нава­лом демок Dolby Atmos, заце­ни­те для себя сами (слу­шать стро­го в науш­ни­ках).

Интересно, чем кончится

Чер­но­ко­жая жен­щи­на была в жен­ской бане, и в раз­де­вал­ку зашёл транс. В пол­ном охе­ре­нии жен­щи­на пошла на ресеп­шен раз­би­рать­ся, где про­изо­шёл при­мер­но сле­ду­ю­щий моно­лог (отве­тов маль­чи­ка на ресеп­шене не слыш­но):

Ска­жи­те мне, это что, нор­маль­но, если в жен­скую баню зай­дёт муж­чи­на, доста­нет член и будет так ходить вокруг моло­дых деву­шек, кото­рым нет даже 18 лет?
Это нор­маль­но с точ­ки зре­ния это­го заве­де­ния? У вас ника­ких пре­тен­зий?
При чём тут сек­су­аль­ная ори­ен­та­ция? У него хуй!! Зна­чит это мужик. Ника­кая он не жен­щи­на, доро­гу­ша.
И я, и дру­гие жен­щи­ны и девуш­ки в раз­де­вал­ке воз­му­ще­ны тем, что они толь­ко что уви­де­ли. А вы них­ре­на не сде­ла­ли. Даже наобо­рот, при­ня­ли его сто­ро­ну. Зна­чит, это нор­маль­но, если мужик зай­дёт в жен­скую баню? Вы это име­е­те в виду? Какой закон? А жен­щи­нам мож­но в муж­скую с гру­дя­ми?
Воз­вра­щай­те день­ги немед­лен­но.

Мне вот инте­рес­но, лева­ки какую пози­цию зай­мут? Пози­цию чер­но­ко­жей жен­щи­ны (в их пони­ма­нии — как мини­мум два­жды угне­тён­ной груп­пы) или тран­са (мини­мум одна­жды угне­тён­но­го)? Все­гда смеш­но, как лева­ки сами о себя спо­ты­ка­ют­ся.

Из пушки по воробьям

Типич­ная зада­ча:

Есть спи­сок кли­ен­тов в фай­ле csv, два столб­ца: имя кли­ен­та и его уни­каль­ный иден­ти­фи­ка­тор
Есть спи­сок про­ек­тов в фай­ле csv, три столб­ца: имя про­ек­та, дата, и уни­каль­ный иден­ти­фи­ка­тор кли­ен­та

Надо:

Выво­дить дан­ные типа: пока­зать про­ект и имя кли­ен­та, с кото­ры­ми мы рабо­та­ли в октябре/мае/сорок пер­во­го март­об­ря

Как я выпол­няю эту зада­чу сей­час: воткнул SQL Server Express, создал БД, всо­сал csv в две раз­ные таб­ли­цы и делаю SELECT … JOIN ON client.id = project.clientid

Рабо­та­ет хоро­шо, быст­ро (хотя я и не замо­ра­чи­вал­ся с индек­си­ро­ва­ни­ем), но мне поче­му-то кажет­ся, что я копаю гряд­ки экс­ка­ва­то­ром. Мож­но ли ту же зада­чу решить попро­ще, напри­мер, в Эксе­ле?

Делать заме­ну в спис­ке про­ек­тов по clientid я не хочу — это чо, руч­ка­ми, что ли? Кли­ен­тов-то не одна сот­ня, рука­ми это делать? Одно­знач­но сра­зу нахер. Плюс эти фай­лы гене­ри­рую не я, и они посто­ян­но обнов­ля­ют­ся.

Спа­си­бо, если кто пред­ло­жит реше­ние попро­ще. Зачем, спро­си­те, попро­ще? Затем, что­бы потом это деле­ги­ро­вать кому-то дру­го­му, а крат­кий курс SQL я читать не хочу.

Распродажа

На сай­те мага­зи­на для тури­стов и охот­ни­ков Teton Sports была обна­ру­же­на непло­хая рас­про­да­жа. Ски­доч­ный код HOTSUMMER (рабо­та­ет до 4 июля) даёт скид­ку в аж 20%!! Плюс я не знаю, как в ваш штат, а при посыл­ке в Ала­ба­му они не берут налог на про­да­жу, что по нашим вре­ме­нам ред­кость, и не так уж и мало.

Купил там аж две тури­сти­че­ские Рас­кла­душ­ки для Боль­ших Людей Outfitter XXL. Они в дли­ну не стан­дарт­ные 190cm (я не поме­ща­юсь), а 215 сан­ти­мет­ров, так, что я лежу без того, что­бы скла­ды­вать­ся вдвое. Нехай будут — и мне на охо­ту ездить удоб­но, да и дома в под­ва­ле будут нелиш­ни­ми, если смер­чи раз­гу­ля­ют­ся.

Для осо­зна­ния раз­ме­ров, сле­ва стан­дарт­ная рас­кла­душ­ка, даль­ше удли­нён­ная (это Outfitter), а спра­ва — «вот это мой раз­мер­чик»:

Увы, за рекла­му мне не запла­ти­ли 🙂

Спасение горыныча

Такое впе­чат­ле­ние, что я толь­ко тем и зани­ма­юсь, что спа­саю живот­ных от кота. Кот обна­ру­жил в кустах наше­го кры­си­но­го поло­за и давай к нему при­цеп­лять­ся, «а ты с како­ва раё­на? а сем­ки есть? а если най­ду?»

При­шлось взять змея за хвост и отта­щить в лес, подаль­ше от кота.

Как бы коту объ­яс­нить, что реп­ти­лий, в отли­чие от мышей и про­чих кро­тов, тро­гать не надо?

Хех

Рех­нуть­ся исто­рия. Ока­зы­ва­ет­ся, когда в про­шлом году цена на нефть пля­са­ла на самых низ­ких отмет­ках, Трамп хотел при­ку­пить её в мас­со­вых коли­че­ствах для хра­ни­лищ наци­о­наль­но­го стра­те­ги­че­ско­го неф­тя­но­го резер­ва. По дешёв­ке.

Демо­кра­ты заре­за­ли это пред­ло­же­ние под соусом «это чо такое, Дон­ни? спа­се­ние тво­их неф­тя­ных друж­ков, да?». А теперь выяс­ня­ет­ся, что если бы эту нефть, куп­лен­ную по дешёв­ке, сей­час про­дать по теку­щим ценам, то мож­но было бы зара­бо­тать 6 мил­ли­ар­дов дол­ла­ров, чего с лих­вой хва­ти­ло бы для финан­си­ро­ва­ния мно­гих про­ек­тов по обнов­ле­нию инфра­струк­ту­ры. Про­сто Дон­ни, как ста­рый битый игрок на бир­же, знал, что цена на нефть обя­за­тель­но пой­дёт вверх рано или позд­но, но поли­ти­че­ские сооб­ра­же­ния това­ри­щей сле­ва зару­би­ли идею на кор­ню. Ржа­ка. А ведь эти самые люди спа­са­ли день­га­ми нашу люби­мую ита­лья­но-фран­цуз­кую авто­ком­па­нию в 2009 году. На ЭТО им денег было не жаль.

Игрался

На рабо­те пери­о­ди­че­ски зани­ма­юсь рас­сыл­кой вре­до­нос­ных писем (фишинг). Ну, не насто­я­щих, конеч­но, а тре­ни­ро­воч­ных. Тех­но­ло­гию я раз­ра­бо­тал сам, а идею под­гля­дел на преды­ду­щем месте рабо­ты, где пре­па­ри­ро­вал ком­пью­тер­ные виру­сы.

В прин­ци­пе, ниче­го слож­но­го. Глав­ное — вовре­мя оста­но­вить­ся, и оста­вить поль­зо­ва­те­лям доста­точ­но дета­лей, выгля­дя­щих подо­зри­тель­но, что­бы эти дол­бо­клю­вы всё же хоть чему-то научи­лись. Мно­гие, напри­мер, пола­га­ют­ся на поле From: — хотя в SMTP, кото­рым мы, блин, уже сорок лет поль­зу­ем­ся, хоть и с добав­ле­ни­я­ми, ника­кой про­вер­ки на досто­вер­ность это­го поля нет. Но я всё рав­но пишу там вся­кое hren@nahren.com — так как в 99.99999% слу­ча­ев спа­ма в этом поле имен­но такой подоб­ный мусор.

Рано или позд­но я научу их не пола­гать­ся и на это поле. Когда я толь­ко начал эту про­грам­му, я отлав­ли­вал до 35% поль­зо­ва­те­лей. Со вре­ме­нем я довёл это чис­ло до 15%. И это, без­услов­но, всё рав­но боль­ше, чем надо, но ещё не вечер.

Этот спо­соб — наи­луч­ший спо­соб научить юзве­рей уша­стых не нажи­мать что попа­ло. Кро­ме того, нали­чие подоб­но­го рода тре­ни­ро­воч­ных про­грамм нын­че уже часто не опци­о­наль­но. Кто слы­шал сло­ва NIST-800–171, тот зна­ет.

А вы зна­е­те, кто из поль­зо­ва­те­лей у меня на рабо­те в этом плане самый умный? Вы не пове­ри­те — бухи и рецеп­ци­о­ни­сты. В послед­ний заход, сего­дня, я не отло­вил ни одно­го чело­ве­ка, кото­рых неко­то­рые пре­зри­тель­но назы­ва­ют «офис­ный планк­тон». Зато зна­е­те, кого я отло­вил? Типа умных людей с нехи­лой зар­пла­той — одно­го сисад­ми­на, одно­го погро­ми­ста и аж ДВУХ офи­це­ров по без­опас­но­сти. Ну, и про­да­ва­нов, конеч­но, куда без них.

Вот вам и «офис­ный планк­тон».

Апартаменты. Медведь. Пещера.

Посме­ём­ся над тупы­ми аме­ри­ко­са­ми!!!

Мне вот всё же инте­рес­но — поче­му в Гол­ли­ву­дах к пере­во­ду на рус­ский язык не под­тя­ги­ва­ют быв­ших рус­ских сограж­дан? Вот неко­то­рые вещи, оче­вид­но, что пере­во­ди­ли люди, рус­ским язы­ком не вла­де­ю­щие.

Ино­гда подоб­ные над­пи­си мож­но пере­ве­сти назад, и тогда уже осо­знать, что афффтор имел в виду на самом деле.

Вот возь­мём кар­тин­ку из заго­лов­ка:

На самом деле они име­ли в виду «Bear Cave Apartments», т.е. это жилищ­ный ком­плекс под назва­ни­ем «Бер­ло­га». Ну, нехай «Бер­ло­га», мало ли как рус­ские свои жилищ­ные ком­плек­сы назы­ва­ют. В США самые попу­ляр­ные име­на для подоб­ных ЖК вклю­ча­ют в себя сло­ва «Дерев­ня» или «Парк». Нере­док «Плейс» (местеч­ко). Попу­ляр­ный в 90х сери­ал «Мел­ро­уз Плейс» — это как раз про ЖК 🙂

Ино­гда квест с обрат­ным пере­во­дом уже слож­нее.

Это кадр из филь­ма Firefox (1982) с Ист­ву­дом в глав­ной роли. Хоро­шая клюк­ва, раз­ве­си­стая. Кад­ры «типа про СССР» — ржач неимо­вер­ный.

Отку­да в само­лё­те «РУЖЬЁ», поче­му у него «ПРИПАСЫ» и как оно отли­ча­ет­ся от «ОРУДИЯ» — я так и не понял. А вот «Вспыш­ка» и «Ком­ки» таки под­ле­жат обрат­но­му пере­во­ду — это flare и chaff. Flare — это ИК-ловуш­ка, что­бы на неё раке­ты наво­ди­лись вме­сто выхло­па дви­га­те­ля. А chaff — это сбра­сы­ва­е­мые диполь­ные отра­жа­те­ли, тоже сред­ство РЭБ.

Так­же загад­кой оста­лось «ТЙК».

А вот тут вос­поль­зо­вать­ся обрат­ным пере­во­дом я так и не смог. Похо­ду, тут кон­суль­тан­та таки наня­ли, толь­ко он спе­ци­аль­но при­ко­лол­ся. «Вась, смот­ри, какую хер­ню я смог в фильм вста­вить!!!»

Дед Плотник и птенцы

Слы­шу — вокруг трак­то­ра какая-то сума­то­ха, гам сто­ит. Вышел — на стене под кры­шей сидит еле опе­рив­ший­ся пте­нец, на него вни­ма­тель­но, с любо­вью, смот­рит мой рыжий кот, а вокруг кота пры­га­ют роди­те­ли птен­ца, и руга­ют­ся на него матом.

При­шлось спа­сать.

Кот на меня посмот­рел, как на при­дур­ка. Чего, мол, пой­мал, а сам не жрёшь и мне не даёшь, дурак? После чего мяук­нул и рети­ро­вал­ся.

PS: Некра­сов­ская бай­ка про деда Мазая — она и есть — охот­ни­чья бай­ка. Зай­цы пре­крас­но пла­ва­ют, лег­ко спо­соб­ны на то, что­бы спа­сти себя само­сто­я­тель­но, и ни за что бы не под­пу­сти­ли к себе охот­ни­ка. Поищи­те сами на юту­бе.

PPS: После того, как берё­те в руки дикую пти­цу, обя­за­тель­но тща­тель­но мой­те руки с мылом. Саль­мо­нел­лё­зом боле­ют не толь­ко кури­цы.