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

Danilo Lavieri

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.

Quem pode comprar direitos de times que ficam sem TV fechada em 2022

Câmera de TV filma bola de futebol antes de partida do Brasileirão 2021 - Fernando Moreno/AGIF
Câmera de TV filma bola de futebol antes de partida do Brasileirão 2021 Imagem: Fernando Moreno/AGIF

Colunista do UOL

30/09/2021 12h10

Receba os novos posts desta coluna no seu e-mail

Email inválido

A Turner anunciou na última terça-feira (28) que não vai mais transmitir o Campeonato Brasileiro em 2022. Isso significa que Palmeiras, Santos, Athletico-PR, Juventude, Bahia, Ceará e Fortaleza estão livres para negociar seus direitos de TV fechada para a próxima temporada. Mas quem pode comprar?

O primeiro nome que vem à cabeça do torcedor é o do Sportv. A empresa da Globo já tem o direito da maioria dos times do Brasileirão e poderia negociar com o restante para ficar com o pacote completo na Série A. Ela manteria o sistema de dividir o pagamento em cotas que considerariam números de jogos transmitidos, colocação na tabela e uma parte fixa, no mesmo modelo que já é feito atualmente.

A concorrência, no entanto, aumenta consideravelmente com a Lei do Mandante sancionada recentemente por Jair Bolsonaro. Se inicialmente a mudança afetaria mais a Série B, com a saída da Turner, a lei poderia ser aplicada já na próxima temporada com as equipes da elite.

O principal concorrente do Sportv é o Grupo Disney, com FOX e ESPN como possibilidades. Em 2022, eles poderiam transmitir qualquer partida dos times citados acima como mandantes, independentemente dos adversários. É provável que a Globo tente alegar que detém exclusividade em TV fechada com outros times, mas a Justiça tem dado ganho de causa ao Athletico em uma briga bastante semelhante a essa.

A Lei do Mandante ainda abre outras possibilidades para players menos tradicionais no futebol e que têm feito investimentos recentes, como Amazon, Youtube e até mesmo Mercado Livre. Essas empresas poderiam comprar os direitos e transmitir os jogos desde que cobrassem uma .

Esse sistema de pagamento é necessário para que a transmissão seja caracterizada como para uma TV fechada, sem infringir acordos que já existem para TV aberta.

Ainda nesse sistema, também é possível que os clubes façam suas transmissões próprias, privilegiando sócios-torcedores, por exemplo.

A tendência é que esses grupos que saíram da Turner façam negociação em grupo. Os times já tinham um relacionamento ao negociar os direitos na época em que recusaram as propostas da Globo.

Siga também as opiniões de Danilo Lavieri no Twitter e no Instagram