;(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

Agora você pode pagar para o YouTube tocar música e filmes sem anúncios

YouTube Music, serviço da plataforma em streaming de música - Divulgação
YouTube Music, serviço da plataforma em streaming de música Imagem: Divulgação

Márcio Padrão

Do UOL, em São Paulo

25/09/2018 09h16Atualizada em 25/09/2018 16h04

O YouTube finalmente liberou para o Brasil, a partir desta terça-feira (25), seus serviços pagos YouTube Music e YouTube . Ambos existem desde 2015, mas foram reformulados em maio deste ano. Além do Brasil, outros 21 países aram a ser contemplados com os serviços.

E o que são estes serviços? O Music é basicamente o concorrente do YouTube para o Spotify, Deezer e outros serviços de streaming de música. Já o --que chamava-se YouTube Red-- é um tipo de Netflix do YouTube, com o a séries originais da plataforma.

VEJA TAMBÉM:

Uma grande vantagem de ambos é a ausência de propaganda, que nos últimos anos tornou-se uma experiência às vezes incômoda entre os vídeos --alguns anúncios até aparecem no meio da reprodução, hoje em dia.

O YouTube era livre de anúncios até 2007, quando a plataforma ou a mostrá-los para dar mais dinheiro tanto ao Google quanto aos criadores de conteúdo. Segundo Cauã Taborda, diretor de comunicação do Google, pagar para ter isso de volta tem a ver com "estratégia comercial, a escala do novo serviço e a resposta dos usuários".

"Não se trata só dos anúncios, pois estamos trazendo também benefícios adicionais", complementou Sandra Jimenez, diretora de música do YouTube na América Latina.

Os serviços trazem ainda um aguardado recurso, o "audio only", ou áudio em segundo plano no app. O YouTube no celular, como você bem sabe, interrompe a reprodução quando você minimiza o app e volta para a tela inicial.

Quem pagar pelo Music ou não vai ar por isso, e com um botão novo consegue até alternar entre áudio e vídeo, caso você não possa ficar com o vídeo em primeiro plano por algum motivo --como descer do ônibus-- mas quer continuar ouvindo-o.

"Cobra Kai":  William Zabka repete seu papel como Johnny Lawrence - Reprodução - Reprodução
"Cobra Kai": série do YouTube revisita universo de "Karate Kid"
Imagem: Reprodução

Por fim, os serviços permitirão o de conteúdo. Isso já pode ser feito pelo YouTube Go, mas nele não é possível baixar todos os vídeos, e no e Music não haverá essa limitação.

Sobre conteúdo, o YouTube Music terá não apenas vídeos, claro, mas discos e singles apenas em áudio, como no Spotify e afins. A empresa não informou o número atual de discos do catálogo. O app contará com inteligência artificial para filtrar e apresentar todo o conteúdo musical da plataforma, incluindo os independentes e feitos por usuários.

No , o usuário terá o aos YouTube Originals, nome dado aos programas exclusivos para s. A empresa elege como destaques o drama "Impulse", o documentário "F2 Finding Football" e a comédia dramática "Cobra Kai", baseada dos personagens e com os mesmos atores do filme "Karate Kid".

Vamos aos preços no Brasil. O Music custará inicialmente R$ 16,90, mas é possível usar o app de graça, como o plano grátis do Spotify. mas claro, você perde os benefícios de , áudio em segundo plano e fim dos anúncios.

O custará R$ 20,90, e por esse preço você não apenas tem o o total aos benefícios do --sem anúncio, YouTube Originals, s e áudio em segundo plano-- mas aos do Music também.

Os dois planos ainda contarão com planos família. No Music: R$ 25,50 por mês, e no : R$ 31,90. Ambos valem para até seis membros da família (maiores de 13 anos) na mesma casa, e com avaliação gratuita de um mês.

LED, OLED ou QLED? 4K vale a pena? Entenda todas as tecnologias que estão por trás das TVs

Qual a melhor TV para você?