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

Gabriel Vaquer

REPORTAGEM

Texto que relata acontecimentos, baseado em fatos e dados observados ou verificados diretamente pelo jornalista ou obtidos pelo o a fontes jornalísticas reconhecidas e confiáveis.

Disney e Facebook fecham acordo para terem mais jogos da Libertadores

Nenê, do Fluminense: clube fará parte da semana de estreia do acordo entre Disney e Facebook por mais jogos da Libertadores - MAGA JR/ESTADÃO CONTEÚDO
Nenê, do Fluminense: clube fará parte da semana de estreia do acordo entre Disney e Facebook por mais jogos da Libertadores Imagem: MAGA JR/ESTADÃO CONTEÚDO

Colunista do UOL

20/04/2021 14h12Atualizada em 20/04/2021 18h44

A Disney e o Facebook am nesta terça-feira (20), com aval da Conmebol, um acordo por compartilhamento de direitos de transmissão de jogos da Libertadores envolvendo times brasileiros. As empresas vão trocar partidas de seus respectivos cardápios e, assim, aumentar o pacote que cada uma tem na principal competição de futebol do continente.

O acordo foi anunciado no fim da tarde desta terça, após a coluna antecipar o acordo em primeira mão. Ao todo, serão ao menos sete jogos trocados entre as duas empresas apenas entre times nacionais, para exibição na TV paga do Brasil, pelo Fox Sports, e no streaming, pela rede social.

O contrato já a a valer a partir desta quarta-feira (21), na 1ª rodada da fase de grupos da Libertadores - e vale também para partidas da fase de mata-mata.

"O acordo amplia nosso número de transmissões e garante uma oferta ainda maior de conteúdo aos fãs de esportes. Em muitas das semanas abriremos uma janela inédita às quintas-feiras e exibiremos até oito jogos da CONMEBOL Libertadores por semana na programação dos nossos canais esportivos, garantindo amplo destaque para as equipes brasileiras", destaca Carlos Maluf, Head de Esportes da The Walt Disney Company Brasil.

"A parceria com a Disney expande nossa colaboração de compartilhamento de jogos nos demais países da América Latina, oferecendo aos fãs de esporte no Brasil mais oportunidades de se conectar e interagir com o campeonato. Com o acordo, vamos trazer mais partidas em mais dias da semana e dobrar o número de transmissões de times brasileiros na fase de grupos no Facebook Watch", afirma o diretor de Parcerias Esportivas no Facebook para América Latina, Leonardo Lenz Cesar.

Curiosamente, já existe um acordo entre as duas partes na América Latina para a mesma troca de direitos. O trato vai funcionar da seguinte forma: jogos da Libertadores que eram apenas do Fox Sports am a ser também do Facebook. Já confrontos exclusivos do Facebook nas quintas-feiras agora também terão transmissão dos canais esportivos da Disney.

Nesta semana, a Disney cederá ao Facebook o jogo Universitário (PER) x Palmeiras, na quarta-feira (21), às 21h (horário de Brasília). O confronto será transmitido pelo Fox Sports na TV paga e pelo Facebook no streaming - a rede social seguirá exibindo seus jogos com o time de transmissão da TNT Sports, da Warnermedia.

Na quinta-feira (22), o Facebook cederá à Disney a partida entre Fluminense e River Plate, às 19h. A rede social transmitirá no streaming, e o Fox Sports na TV paga. O confronto era um dos mais esperados da fase de grupos e seria apenas exclusivo do Facebook, em fato que gerou reclamações de torcedores tricolores na semana ada. Agora, os cariocas ganham uma alternativa na TV.

Os jogos serão compartilhados ao longo de toda fase de grupos e também durante a fase de mata-mata - mesmo após as fases de quartas de final, limite que o Facebook tinha por direitos de transmissão da Libertadores até então. O contrato da rede social vai até o fim de 2022, e não será renovado, como a própria empresa confirmou no último mês de março.

Com o acordo, as duas empresas ampliarão significativamente o número de transmissões da Libertadores no Brasil. A Disney, que já conta com o maior pacote da Libertadores, expandirá ainda mais seu cardápio de partidas, podendo fazer até oito jogos da competição em seus canais na TV paga - com duelos nas noites de terça, quarta e quinta-feira em diversas semanas.

O Facebook também ganha bastante com o acordo, dobrando o número de partidas com times brasileiros na fase de grupos. Ou seja, em vez de pelo menos seis transmissões, a rede social a a fazer 12 jogos de clubes brasileiros.

O acordo entre Disney e Facebook pela Libertadores não afeta outros contratos. A competição seguirá no SBT (TV aberta) e na Conmebol TV (pay-per-view).