;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Áudio espacial o quê? Entenda tecnologia adotada pela Apple em músicas

Novos recursos de áudio para s do Apple Music - Divulgação
Novos recursos de áudio para s do Apple Music Imagem: Divulgação

Rosália Vasconcelos

Colaboração para Tilt

21/07/2021 04h00

Uma das novidades apresentadas pela Apple neste ano foi a tecnologia de áudio espacial oferecida no Apple Music, serviço de música por streaming da empresa, que começou a funcionar em junho. Mas o que ela faz exatamente? Qual a diferença entre um áudio padrão e ele?

Tudo se resume a tornar a experiência sonora mais imersiva e de alta qualidade. O áudio espacial já funcionava nos fones de ouvido AirPods Max e AirPods Pro, mas era somente para conteúdos em vídeo.

No Brasil, a cantora Luísa Sonza lançou na semana ada um álbum com e à tecnologia no Apple Music, por exemplo. Artistas como Ariana Grande, Maroon 5 e The Weeknd estão nas listas de reprodução de música compatível na plataforma.

O que é o áudio espacial da Apple?

Imagine, por exemplo, assistir a um show ao vivo com os instrumentos posicionados em diferentes pontos do ambiente, tornando a experiência mais envolvente. Essa é a promessa do áudio espacial ao oferecer o som distribuído em 360 graus onde a pessoa ouvinte é o centro do processo.

Ele é um recurso projetado para trazer efeitos de altura e background (música de fundo), oferecendo experiências "espacializadas" de som, com nitidez multidimensional. E o resultado não fica só com músicas e podcast. Assistir a filmes ou séries de ação pode ser bem interessante com a tecnologia.

No caso da Apple, ela conta com uma coleção de formatos surround (padrão de áudio de som imersivo) 3D que incluem o Dolby Atmos (tecnologia de áudio usada nas salas de cinema) para dar essa imersão.

"Ouvir uma música em Dolby Atmos é como mágica. A música vem de tudo ao seu redor e soa incrível", disse Oliver Schusser, vice-presidente da Apple Music e Beats, em um comunicado divulgado no site da empresa.

"Milhares de faixas estão disponíveis em áudio espacial com Dolby Atmos, mas novas faixas serão adicionadas regularmente", destaca a Apple sobre o serviço de música.

Chamadas de vídeo da empresa também vão contar com o áudio espacial no iOS15, nova versão do sistema operacional do iPhone. A proposta é fazer as vozes dos participantes "saírem da tela" em dispositivos Apple com e à tecnologia.

Áudio espacial nos AirPods com o iPhone

  • Coloque os fones de ouvido compatíveis e e Ajustes > Bluetooth.
  • Na lista de dispositivos, toque em botão Ações Disponíveis ao lado do nome do fone de ouvido
  • Toque em "Veja e Ouça Como Funciona"
  • O áudio espacial pode ser ativado ou desativado diretamente na Central de Controle quando você estiver assistindo a um programa ou filme, por exemplo

Música que acompanha o movimento da sua cabeça

O áudio espacial da Apple também funciona com um recurso a mais que é o rastreamento dinâmico da cabeça. Ou seja, ele faz o som se ajustar à medida que a pessoa vira o rosto, por meio do acelerômetro dos fones de ouvido (no caso, os modelos que possuem o recurso. Ex: AirPods Max e AirPods Pro). É como se a música estivesse vindo do ambiente inteiro.

"O rastreamento dinâmico de cabeça faz com que o som pareça vir do iPhone, mesmo ao mover a cabeça. Se você desativar o rastreamento dinâmico de cabeça, o áudio soará com se estivesse seguindo o movimento da cabeça", explica a Apple em sua página de e.

Desative o rastreamento dinâmico de cabeça

  • e Ajustes > ibilidade > Fones de Ouvido.
  • Toque no nome dos fones de ouvido e desative Seguir iPhone.

Funciona com qualquer fone de ouvido?

Segundo a Apple, por padrão o áudio espacial ado no Apple Music funciona automaticamente com toda a linha AirPods (AirPods, AirPods Pro e AirPods Max) e dos fones Beats com processador H1 ou W1 (BeatsX, Beats Solo3, Beats Studio3, Powerbeats3, Beats Flex, Powerbeats Pro e Beats Solo Pro).

Fones de outras marcas também funcionam, mas é preciso ter e a Dolby Atmos. Em alguns casos, será preciso configurar para que o som saia com essa camada mais imersiva.

Por enquanto, o Apple Music com áudio espacial também funciona na Apple TV 4K (2017 e 2021) e nos alto-falantes integrados dos mais recentes iPhone, iPad e Mac (com processador M1). Porém, se você quiser experimentar a tecnologia com filmes e séries a partir de um dispositivo Apple, vai rolar somente se tiver o AirPods Pro e Max ou com os modelos abaixo:

  • iPhone 7 ou posterior
  • iPad Pro de 12,9 polegadas 3ª geração ou posterior
  • iPad Pro de 11 polegadas
  • iPad 6ª geração ou posterior
  • iPad Air 3ª geração
  • iPad mini 5ª geração.

Sistema operacional precisa estar atualizado

Para rodar com o áudio espacial, os aparelhos devem ter instalados os sistemas operacionais mais atuais da Apple, como o iOS e iPadOS a partir da versão 14.6. No caso dos computadores, é preciso ter o macOS Big Sur 11.4 (modelo 2018 e posterior).

Se o seu fone de ouvido não oferecer e à reprodução automática no formato do áudio espacial, vá nas configurações e encontre a opção "Dolby Atmos". Certifique-se de que ele esteja definido como "sempre ativado" para tudo funcionar corretamente.

O recurso já tinha aparecido nos AirPods Pro, em 2020, mas só agora será possível dimensioná-la em experiência musical.