AFTER EFFECTS 2022: O RECURSO MULTI-FRAME RENDERING CHEGOU!

Na semana passada, a Adobe lançou o After Effects 2022, que inclui uma série de novos recursos que melhoram enormemente o desempenho. A versão mais recente do After Effects é totalmente voltada para desempenho. O lançamento do AE 2022 coincidiu com a conferência online Adobe MAX, que foi repleta de entrevistas, atualizações e demonstrações. Mas para qualquer um que não tenha sintonizado – e honestamente, eu sinto que essa é a grande maioria dos usuários comuns do After Effects – então eles podem nem estar cientes de que AE 2022 foi lançado.

Não se passou um ano desde que a Adobe começou a lançar atualizações mensais regulares. Mas, embora ter novas atualizações a cada mês seja muito melhor do que esperar alguns anos, talvez sua regularidade tenha diminuído a importância de um novo lançamento importante. Eu não verifiquei, mas acho que esta é a primeira grande nova versão do After Effects a ser lançada desde o início das atualizações mensais. Não apenas representa o próximo grande lançamento do After Effects, mas seus novos recursos mais significativos estão todos relacionados a um tópico: Desempenho.

A versão resumida é que a Adobe montou uma equipe de engenheiros dedicada a melhorar o desempenho do After Effects, e eles passaram os últimos anos otimizando silenciosamente o After Effects para CPUs multi-core.

O que é, o que não é

Embora o After Effects 2022 contenha uma série de novos recursos perceptíveis, o mais significativo é o “Multi-Frame Rendering (renderização de vários frames). O After Effects agora pode utilizar CPUs com vários núcleos para renderizar vários frames de uma vez. Dependendo da configuração do seu hardware e do tipo de projeto que você está renderizando, o After Effects pode ser capaz de renderizar bem mais de 10 frames simultaneamente. A velocidade de renderização geral pode ser de até 4 vezes mais rápido, o que é muito bom para uma atualização de software.

Mas vários usuários notaram essa palavra – “simultaneamente” – e questionaram o quão novo esse recurso é. Quando a Adobe lançou o After Effects CS3 em 2007, eles introduziram um recurso chamado “render multiple frames simultaneously” (renderizar vários frames simultaneamente) – ou RMFS para abreviar. Enquanto muitos usuários acharam o RMFS útil, outros não.

Quando um usuário ativava o RMFS, o After Effects simplesmente executava várias versões de si mesmo em segundo plano. Quando chegou a hora de renderizar, frames individuais foram alocados para as cópias invisíveis do AE em execução em segundo plano, o que os renderizou e os enviou de volta ao aplicativo principal em primeiro plano. Isso funcionou bem para projetos simples, mas não era uma solução elegante.

O problema subjacente com o RMFS era a falta de eficiência. Cada instância em segundo plano basicamente carregava uma cópia do After Effects e, em seguida, cada uma também tinha que carregar sua própria cópia do projeto. Isso levou tempo e desperdiçou memória. Pode levar alguns minutos para que o RMFS comece a funcionar. A sobrecarga com o compartilhamento de frames e a junção deles era tão alto que, se o RMFS estava ativado, a versão principal do After Effects em primeiro plano não era usada para renderizar a si mesmo. Portanto, se o seu computador era poderoso o suficiente para executar 4 instâncias do After Effects, apenas 3 foram realmente usadas para renderização. Ao mesmo tempo, a memória do computador armazenava 4 cópias do projeto.

Além disso, o After Effects em si – assim como todos os plug-ins – nunca foi projetado com o RMFS em mente. A maioria dos plug-ins parecia funcionar bem, mas alguns – principalmente aqueles que amostravam vários frames ao longo do tempo – funcionavam mais lentamente quando o RMFS era ativado ou eram renderizados incorretamente.

No geral, porém, o maior problema com o RMFS era a estabilidade. Se uma instância de fundo do AE travasse, tudo parava – o After Effects simplesmente ficava parado esperando por um frame que nunca terminaria de renderizar.

MFR: Mais do que aparenta

O Multi-Frame Rendering, embora possa soar semelhante em uma propaganda de marketing, é um salto quântico do antigo recurso RMFS. Embora você possa ler todos os detalhes do próprio Sean Jenkin, aqui está o básico:

Em primeiro lugar, o Multi-Frame Rendering é integrado ao After Effects por design. Todo o código-base do After Effects, que remonta a 1993, foi atualizado para ser “thread-safe”. Isso significa que o código pode ser executado em vários núcleos da CPU com segurança e, se um thread travar, o aplicativo inteiro não travará. O MFR não é mais um “hack” em que várias instâncias do aplicativo estão em execução, agora é um único aplicativo que utiliza vários núcleos de CPU em vários threads. Quando você deseja renderizar algo, não precisa esperar que os processos em segundo plano sejam iniciados e, em seguida, carregue sua própria cópia do projeto. Com o MFR, tudo agora está unificado. A memória do seu sistema precisa apenas armazenar uma única cópia do seu projeto After Effects, que todos os threads compartilham e acessam.

Para simplificar: After Effects 2022 é um aplicativo totalmente multi-threaded, multi-core CPU.

Mas embora isso represente anos de trabalho por uma equipe dedicada, há muito mais no MFR do que você pode imaginar. Para que o MFR funcione de forma eficaz, uma ampla gama de outras tecnologias teve que ser implementada primeiro. Isso inclui algo chamado Dynamic Composition Analysis, que não apenas ajuda o MFR nos bastidores, mas apresenta ao usuário uma nova ferramenta para analisar os tempos de renderização.

AE 2022: A renderização de vários quadros chegou! 7
O antigo recurso RMFS permitia ao usuário alocar quantos núcleos da CPU e quanta memória foi usada. Essas preferências foram bloqueadas assim que a renderização começou. Os controles variaram ao longo do tempo (uma versão anterior das preferências está à esquerda, CC 2014 está à direita), mas no final das contas foi deixada para o usuário.

Um grande problema com o antigo recurso RMFS era que o número de processos em segundo plano era definido pelo usuário e, em seguida, bloqueado assim que a renderização começava. Embora os controles do usuário para RMFS tenham mudado com o tempo, geralmente o usuário tinha controle sobre o número de núcleos de CPU a serem usados ​​e quanta memória cada um deveria receber.

Anos de solicitações de suporte e postagens em fóruns sugerem que a maioria dos usuários errou nessas configurações e que muitos dos problemas de estabilidade que afetaram o RMFS eram o resultado de usuários alocando muitos núcleos e memória insuficiente. Minha experiência pessoal é que, para que o RMFS funcione de forma confiável, as configurações precisam ser tão conservadoras que o RMFS não valha o incômodo.

Mas em vez de culpar o usuário por problemas de estabilidade, a verdadeira questão é – por que foi deixado para o usuário tomar essas decisões em primeiro lugar?

A Dynamic Composition Analysis é a resposta da Adobe a essa pergunta. Com o After Effects 2022, o tempo e os recursos necessários para renderizar uma composição são constantemente medidos e analisados. O After Effects agora pode dizer o quão complicado e exigente é o processo de renderização e se ajustar de acordo. O número exato de núcleos da CPU em uso aumentará e diminuirá conforme o andamento da renderização. Se você tiver um sistema poderoso, o After Effects usará automaticamente todos os recursos disponíveis. Se o seu sistema for mais modesto, o After Effects reduzirá o número de threads quando necessário – sem a intervenção do usuário. Mas para ser claro – ao contrário do recurso RMFS mais antigo, com o Multi-Frame Rendering o After Effects irá automaticamente ajustar o número de núcleos de CPU que está usando, enquanto está renderizando.

As informações da análise de composição também são apresentadas ao usuário, em outro recurso que é novo no AE 2022. A timeline ganhou um novo ícone – um caracol chamado Oscar. Se você clicar em Oscar, verá quanto tempo leva para renderizar cada layer individualmente em sua timeline. A Adobe chama isso de “Composition Profiler”. Isso torna mais fácil identificar rapidamente quaisquer layers anormalmente lentas e fornece uma avenida para procurar maneiras de otimizar composições e plug-ins.

AE 2022: A renderização de vários quadros chegou! 8
Outra novidade no AE 2022 é o “Composition Profiler”. Clique em Oscar, o caracol, e você verá os tempos de renderização de cada layer individualmente. Se você abrir as setas em espiral, poderá ver os tempos de renderização para cada efeito individual em uma layer.

Speculative rendering

O “desempenho” em si não é apenas a velocidade de renderização bruta – há muitos outros fatores que afetam os usuários que estão trabalhando e realizando as tarefas.

Completamente separados da velocidade de renderização estão coisas como quanto tempo o After Effects leva para abrir, quanto tempo os projetos levam para abrir e salvar e assim por diante. A Adobe começou a abordar muitos desses problemas – o tempo necessário para carregar o After Effects melhorou muito desde 2019.

Outro novo recurso para 2022 é a speculative rendering (renderização especulativa) – e este é um dos recursos que tem o potencial de fazer o After Effects parecer muito mais rápido para o usuário, sem necessariamente impactar nas velocidades de renderização bruta. Muito simplesmente – sempre que o After Effects estiver inativo por um determinado período (o padrão é 8 segundos), ele começa a renderizar quadros em torno do indicador da timeline atual.

AE 2022: A renderização de vários quadros chegou! 9
Você pode ajustar as preferências para speculative rendering. O padrão é iniciar a renderização se você não tiver feito nada por 8 segundos e armazenar o frame em cache antes e depois do tempo atual.

Isso pode não parecer muito surpreendente, mas pode ter um impacto profundo em seu fluxo de trabalho. Se você parar para ler um e-mail, digitar uma mensagem no Slack, tomar uma xícara de café ou ir ao banheiro – quando você clicar de volta para o After Effects, descobrirá que ele está ocupado renderizando, pronto para visualização.

É difícil descrever – ou mesmo demonstrar – a speculative rendering de uma forma que reflita com precisão como ela funciona ao longo de um dia normal. É algo que faz você perceber quantos períodos existem em que você não está ativamente fazendo algo no After Effects por 8 segundos. De repente, enquanto você está relendo o briefing, olhando para um animatic, procurando por uma filmagem ou apenas sentado lá pensando – a linha verde na timeline começa a crescer e de repente você tem uma animação pronta para ser visualizada. Você pode fazer uma pausa, mas o After Effects continua funcionando.

Venha junto

A speculative rendering é um novo recurso surpreendentemente eficaz por si só, mas o que o faz realmente cantar é a maneira como funciona com o cache de disco – algo que existe há muito tempo. A speculative rendering aproveita seu tempo ocioso para renderizar frames preventivamente, mas se você habilitou o cache de disco, esses frames não são úteis apenas para uma visualização espontânea de RAM – eles são salvos para quando puderem ser úteis mais tarde.

Meses de teste mostraram que o Multi-Frame Rendering, por si só, pode tornar a renderização de uma composição até 4 vezes mais rápida. Mas embora isso seja um aumento de desempenho bastante significativo para uma atualização de software, isso antes de levarmos em consideração a speculative rendering e o cache de disco. Se os frames foram renderizados anteriormente e salvos no cache de disco, eles nem precisam ser renderizados. Portanto, por mais impressionante que o MFR possa ser em benchmarks de execução de laboratório, a adição de speculative rendering pode tornar a renderização ainda mais rápida.

Novamente, isso é algo que realmente não pode ser demonstrado ou realisticamente referenciado – é algo que só se torna aparente quando você está realmente sentado e usando o After Effects por um dia inteiro de trabalho. É uma situação incomum e bem-vinda, em que a combinação de diferentes recursos no After Effects melhora o desempenho mais do que qualquer métrica individual. Mas a combinação de Multi-Frame Rendering, Speculative Preview e o cache de disco podem ser combinados de forma que uma pausa para o café às 15h pode acelerar suas renderizações às 17h!

Estabelecendo as bases

O Multi-Frame Rendering é um novo recurso que está sendo desenvolvido há anos. Foi uma tarefa incrivelmente difícil que envolveu uma equipe dedicada de engenheiros de software, examinando cada linha de código no After Effects desde 1993.

O fato de que o MFR agora está disponível para o público na versão mais recente do After Effects é notícia o suficiente. A combinação de MFR e speculative rendering terá instantaneamente um grande impacto nos usuários do After Effects em todo o mundo. Simplesmente atualizar para AE 2022 tornará a renderização até 4 vezes mais rápida – sem a compra de nenhum novo hardware. Isso é muito bom. Se você tem uma Assinatura do Creative Cloud, você pode atualizar agora.

Mas o que é ainda mais emocionante é o futuro. Todo o trabalho que a equipe da Adobe realizou nos últimos anos lançou as bases para mais melhorias que virão. Os enormes esforços que foram feitos para tornar o código do After Effects multi-threaded e thread-safe continuarão a ser sentidos conforme outras partes do After Effects são refinadas e aprimoradas. O tempo de abertura do projeto, o tempo de economia, o tempo de importação de arquivo e assim por diante, todos têm o potencial de ser drasticamente revisados ​​em versões futuras.

Se você ainda não atualizou para o After Effects 2022, faça-o agora. Você não precisa gastar milhares de dólares em uma nova placa gráfica ou em um novo computador para ver uma grande melhoria no desempenho. Está a apenas alguns cliques do mouse.


Fonte: ProVideo Coalition – AE 2022: Multi-Frame Rendering has arrived!

Comentários

comments