Os programas usados no Floresta Vermelha – quais, como e quando

O Floresta Vermelha é, ao mesmo tempo, um filme e um processo, sendo que o processo, ou projeto, é o de como se fazer cinema digital em software livre e com hardware aberto (no nosso caso, com a câmera Elphel). Para completar nossos objetivos, demos muitas voltas necessárias, as quais vale mencionar aqui para que a leitora ou o leitor não se perca.

Visão geral – as etapas do processo

Primeiro, houve o roteiro do Floresta Vermelha, em outubro de 2010. Depois, pesquisamos como seria um workflow sensato para gravar em RAW usando a câmera Elphel e editar esse material em Linux (até então uma etapa não existente na cadeia de produção), o que aconteceu por janeiro de 2012.

Quando recebemos a câmera, fizemos um minicurta de testes chamado Cada Sorriso é um Flash!, cujos objetivos principais eram testar o funcionamento da Elphel em campo, em uma situação real de gravação, e testar o workflow pesquisado, para ver se ele funcionava com um projeto real de edição. Isso aconteceu por volta de julho de 2012.

O passo seguinte foi juntar a equipe e gravar o Floresta Vermelha, editá-lo e fazer uma primeira versão (first cut) para ser mostrada ao público, no final de novembro de 2012.

Após a primeira versão, ficou claro que precisávamos equalizar as cores, e que só seria possível fazer isso direito no programa Blender. Ao mesmo tempo, notamos que seria interessante migrar a etapa de edição do programa Cinelerra para o Blender. Essas duas etapas ocorreram ao mesmo tempo – o tratamento de cores do Floresta foi feito mais ou menos na mesma época em que usamos um projeto paralelo, o documentário de viver nos Rios, de viver nas Ruas, para fazer um plugin que melhorasse a etapa de edição para vídeos 2D no próprio Blender, garantindo a migração.

A data oficial de quando o Floresta ficou pronto é março de 2013. Na virada do primeiro para o segundo semestre, ele começou a participar de festivais e nos preparamos para começar a edição do making of.

Neste meio tempo, surgiu uma ótima oportunidade de passar o Floresta em uma sala de cinema, o que nos fez fazer a versão em DCP do filme, com áudio surround 5.1, o que marcou a nossa chegada ao objetivo final. Ou seja, embora a data oficial de finalização do Floresta seja março de 2013, o filme agora poderia finalmente ser considerado completo.

O processo, porém, não havia acabado. Havia ficado claro haver mais um buraco na cadeia de produção, que era a comunicação do principal software para tratamento de áudio, o Ardour, com o programa editor de vídeo, no caso, o Blender. Começamos a resolver essa parte com a criação de mais um plugin em agosto, que interligasse as linhas do tempo de áudio entre Blender e Ardour. Ele ficou pronto para testes reais de produção em outubro de 2013, a tempo de ser usado no making of.

Restava, portanto, terminar o making of do filme, fazer as recompensas para os nossos apoiadores da campanha de crowdfunding e terminar a documentação do processo/projeto. É nesta etapa que esta descrição se insere.



As ferramentas usadas nas diferentes etapas

Veremos abaixo uma descrição das ferramentas que usamos no processo como um todo, assim como uma análise sobre o que deu certo, o que não deu e quais as mais recomendadas. Os programas livres (FOSS) vêm com links dos sites oficiais e, entre parênteses, os sistemas operacionais nos quais funcionam.

Legenda: L para Linux, M para Mac e W para Windows.

Como esta é a típica informação que ficará datada com o tempo, se você não estiver mais na virada de 2013 para 2014, tente checar os programas antes de confiar cegamente neste relato.



A base de tudo – O sistema operacional

openlogo-75

Tudo o que você vai ler abaixo não vai adiantar muito se a base de todos os programas, o sistema operacional, assim como a versão desse sistema operacional, não forem confiáveis. Você tem que confiar na sua máquina. Ponto.

É por isso que, para usuários Linux, usamos e recomendamos o Debian Stable como base. Você não precisa da última versão dos softwares (e de longas atualizações quase diárias). Você precisa da versão que funcione.



Roteiro

trelby celtx libre_office

O roteiro do Floresta foi escrito no segundo semestre de 2010 usando uma mistura de programas de texto, que provavelmente era composta de Google Doc, Word, Abiword (L-M-W) e OpenOffice (L-M-W).

Para ser formatado no padrão da indústria, usamos o Celtx (L-M-W). O Celtx é um programa com muitas funcionalidades, e é recomendado usá-lo quando você estiver em fase de produção, em especial no caso de filmes complexos. Senão, coisas simples como exportar para PDF vão requerer registro no site e vão mais atrapalhar do que ajudar. Para poder imprimir o script, contornamos este dilema usando Word e LibreOffice (L-M-W). Como o LibreOffice é bom, mas feio (admitamos), instale os ícones Faenza.

Já o roteiro do Cada Sorriso é um Flash (minicurta para testes de gravação) fizemos em Trelby (L-M-W), um software extremamente simples e ágil, que você aprende a usar em 3 minutos. Tudo o que o Celtx atrapalha, o Trelby facilita, e é a melhor escolha para escrever roteiros futuros. Ou seja, se você for escrever o roteiro, use o Trelby. Na hora de passar para a produção do filme, abra-o no Celtx e planeje as etapas por lá.

Se você quiser acessar roteiros bem escritos de filmes, um dos melhores é o de O Ano em Que Meus Pais Saíram de Férias, publicado em livro e mantido online pela Coleção Aplauso. Há vários outros.



Edição e montagem

blenderlogo github_blendervelvet

Como o workflow de edição para gravações em RAW não existia, desenvolvemos scripts em bash (L-M) de conversão e automação em massa de imagens. O uso do GNU Parallel (L-M) permitiu que esse processo fosse feito com vários núcleos de processamento ao mesmo tempo. As sequências de imagem RAW eram gravadas em JP46, um formato usado pela câmera Elphel, e convertidas em DNG pelo movie2dng (L). Os DNGs eram transformados em proxies JPEG usando o UFRaw (L-M-W), que eram lidos pelo Cinelerra-CV (L) como filmes, um processo inspirado pelo img2list (L). Para o render final, outros scripts transformavam os DNGs usados no filme em sequências de TIF 8 bits, renderizadas no Cinelerra-CV.

cinelerra-logo

A montagem do Floresta foi feita usando o Cinelerra-CV (L).

Para o making of do Floresta, queríamos migrar a montagem para o Blender (L-M-W), conforme descrito na visão geral das etapas acima, então tivemos de dar uma volta. Fizemos um outro vídeo, o documentário de viver nos Rios, de viver nas Ruas e, dentro daquele projeto, desenvolvemos um plugin chamado ::velvet_goldmine:: (L-M-W), buscando aprimorar esta etapa.

O processo de edição de vídeos (em vez de sequências de imagens) normalmente implica na criação de proxies e transcodificação geral dos arquivos para um formato melhor aceito pelo editor de vídeo – nos nossos casos, tanto o Cinelerra-CV como o Blender funcionam muito bem com o MJPEG. Esses tipos de conversão foram feitas com MEncoder (L-M-W) e FFMPEG (L-M-W), sempre ajudadas por scripts de automação em bash (L) e GNU Parallel (L-M).

Conforme mencionamos, ao longo do caminho detectamos um novo buraco na cadeia de edição que era a comunicação do programa de áudio, o Ardour (L-M), com o de vídeo. Para isso, criamos um novo plugin para Blender chamado ::blue_velvet:: (L-M-W), que exporta a linha do tempo de áudio do Blender em um formato reconhecível pelo Ardour.

Hoje, a melhor ferramenta para montagem é o Blender usado em conjunto com os plugins de edição.

Desde dezembro de 2014, os novos complementos criados para edição de vídeo em Blender são documentados em um site próprio, os Blender Velvets (em português, inglês, espanhol e francês).



Edição a partir de arquivos RAW e pós edição

ufrawopenexr

Um dos grandes motivos em usarmos a câmera Elphel era a possibilidade de gravar no formato RAW. Conforme mencionamos logo acima, não existia um workflow para editar arquivos deste tipo (sequências de imagens RAW) em Linux, portanto criamos um modo de se fazer isso com base em scripts em bash (L-M) e no software UFRaw (L-M-W).

Ao mesmo tempo, na Espanha, o projeto Kinoraw pesquisou um processo alternativo usando scripts em Python (L-M-W) e transformando os arquivos DNG para o formato OpenEXR, para serem editados diretamente no Blender. Para converter os arquivos da Elphel JP46 em negativos digitais DNG, ambas abordagens usaram o programa movie2dng (L).

O workflow do Floresta funcionou até certo ponto. Tratar as imagens com o UFRaw é bem tranquilo, mas fica quase impossível equalizar as cores e tons entre as cenas. Neste caso, o do Kinoraw é mais efetivo. O legal é que trocamos bastantes ideias e códigos para resolver o problema.

darktableblenderlogo

Se você for tirar fotos em RAW, provavelmente vai querer dar uma olhada no Darktable (L-M). Para um workflow de vídeo, ele teria a desvantagem de não funcionar via script (batch), mas existe a possibilidade de jogar a sequência inteira no programa, fazer o tratamento de cores e esperar o software processar todas as imagens. A desvantagem seria a mesma da que enfrentamos: ficaria difícil regular os tons entre cada cena.

Finalmente, para pós edição em geral, usamos e recomendamos o Blender (L-M-W). Além da já citada possibilidade de equalizar as cores (via compositor nodes), também é possível fazer camera tracking e máscaras animadas para tratamentos pontuais, o que usamos muito no Floresta.



Áudio em geral

O modo como fizemos o áudio no Floresta Vermelha é curioso. Antes de começarmos o projeto, demos esta etapa como garantida, ainda mais pela experiência pessoal do Renato, que já havia gravado, mixado e masterizado faixas e CDs inteiros no Ardour (L-M). Porém, ao longo do processo, quando misturamos o fator “vídeo” junto com o áudio, o terreno tornou-se bem mais pantanoso.

Isso foi ruim por um lado – o áudio do Floresta não foi feito “integralmente” com o uso de softwares livres. Mas acabou sendo melhor por outro – desenvolvemos o plugin ::blue_velvet:: (L-M-W), que exporta a linha do tempo de áudio do Blender (L-M-W) direto para o Ardour.

Ou seja, em vez de simplesmente dizer que “deu pau”, investimos na solução de longo prazo do problema. No momento da edição do filme, não deu tempo de fazer isso a tempo, mas deu para fazer a tempo de usá-la no making of (portanto, dentro do projeto como um todo).

Entendendo melhor o que aconteceu

ardour jack xjadeo blenderlogo

Fizemos o som direto do Floresta usando um microfone direcional Sennheiser, um microfone aberto AKG e três microfones de lapela. Gravamos tudo isso a uma resolução de a 96MHz usando um Ardour (L-M) instalado em um Mac. Esta parte ocorreu perfeitamente.

A mixagem desse som direto foi feita durante a montagem, como vimos, no Cinelerra-CV (L).

O design de som/ambientação sonora era para ser feita no próprio Ardour (L-M), usando o Blender (L-M-W) ou o XJadeo (L-M-W) para dar play no vídeo e sincronizando todos esses programas via Jack (L-M-W). A sincronia áudio/vídeo é essencial neste momento, pois tínhamos que selecionar o melhor áudio das falas, mudar algumas, inserir outros ruídos da sonoplastia etc.

Entre as gravações do filme e a apresentação da primeira versão, tínhamos um mês exato para fazer tudo: montar, passar para a banda fazer a trilha sonora, fazer o design de som. Lembre-se que o Floresta é um projeto voluntário e que as pessoas da equipe estavam fazendo várias outras coisas ao mesmo tempo para ganhar a vida. Naquele momento, o Renato estava, entre outras coisas, construindo a casa dele – inclusive fazendo mutirões para a construção dos tijolos.

O que aconteceu é que, no Mac do Renato, o Blender não estava funcionando com o Jack, os programas simplesmente fechavam. E não havia tempo hábil para parar e tentar resolver isso. Como o Ardour já havia provado que funcionava, chegamos à conclusão de que, em um processo real de produção, temos que assumir quando não dá e resolver o problema imediato.

Resolver o problema imediato naquele caso significava baixar a resolução das gravações para 48MHz e usar o Logic Pro, um software proprietário. Assim, a etapa de sound design e masterização foi feita no Logic. O mesmo aconteceu com a banda, que gravou as faixas separadas das músicas em Logic e elas foram montadas pelo Renato no mesmo programa.

O que não sabíamos à época e descobriríamos fazendo o documentário de viver nos Rios, de viver nas Ruas, é que este problema envolvendo Blender/Jack/Ardour era mais profundo do que parecia. O Ardour havia lançado a versão 3 e as respostas que tivemos do técnico de som do documentário não eram animadoras. Também reparamos que um cenário no qual a pessoa de áudio não conhecesse a interface do Blender para usá-la e dar play no vídeo seria comum, o que deixava mais forte a suspeita de que esse caminho não era tão bom.

ardour github_blendervelvet

Em agosto de 2013, essa discussão estava mais madura, e nos pusemos a desenvolver um novo plugin, o ::blue_velvet:: (L-M-W), para evitar essa complicação. As últimas versões do Ardour já possuem uma trilha de vídeo, o que nos permitiu pensar em uma comunicação direta entre as linhas do tempo do editor de vídeo (Blender) e de áudio (Ardour).

Tente ver o lado bom ao entender o processo como um todo: se não foi possível fazer “tudo” em software livre com o filme Floresta, o resultado acabou sendo muito melhor, pois isso permitiu o nascimento de uma nova solução, bem mais eficaz. E a tempo de ser usada para o making of, ainda dentro do projeto Floresta!

Finalmente, conseguimos dar um salto na questão do áudio quando surgiu a oportunidade de passar o Floresta em uma sala de cinema, com som surround. Assim, pegamos as trilhas do Logic e fizemos a espacialização 5.1 no próprio Cinelerra-CV (L).

cinelerra-logo



Desde dezembro de 2014, os novos complementos criados para edição de vídeo em Blender são documentados em um site próprio, os Blender Velvets (em português, inglês, espanhol e francês).



Legendagem

jubleraegisub

Sincronizar as legendas é uma etapa que parecia bastante bem resolvida até chegarmos nela. O programa que sempre recomendávamos e que realmente é muito bom é o Jubler (L-M-W). Só que ele tem um problema razoavelmente grave – embora seja livre, depende do Java da Sun para rodar.

Começou a cair a ficha de que, por conta disso, era comum aparecer um problema com uma biblioteca e o vídeo não rodar. Você ia lá, configurava e tudo ia bem. Na próxima demanda por legendas, o sistema havia sido atualizado e, na hora mais crítica, adivinhe. Com o tempo, depender do Java da Sun tornou-se uma tarefa irritante, ainda mais em um Debian, e foi mais ou menos neste momento em que precisávamos fazer as legendas do filme.

Com isso, descobrimos um software que é mais fácil de usar chamado Aegisub (L-M-W). Ele é daqueles programas extremamente versáteis e rápidos de aprender, com a desvantagem de ser mais instável (o Jubler, quando configurado, é uma rocha). Você vai precisar ficar de olho no Ctrl+S. Quem sabe em breve ele não estabilize, porque é um ótimo programa. Na indecisão atual sobre qual o melhor, fica a recomendação de ambos.

Uma observação: você também vai querer usar o formato de legendas Advanced SubStation Alpha (extensão .ass), que permite colorir as legendas e reposicioná-las na tela quando preciso. Este é um formato que também é comportado pelo contêiner livre Matroska, do qual falaremos mais abaixo.



Formatos finais de distribuição

Muitas pessoas tendem a não incluir esta etapa do processo no planejamento geral do projeto, mas ela é crucial para que um longo trabalho cheio de detalhes não se perca na besteira de fazer uma compressão ruim do filme, ou espalhá-lo na internet da forma errada.

Pelo caminho, tivemos que gerar diversos formatos de saída diferentes. Houve os arquivos proxies de render intermediário durante a edição, alguns dos quais foram enviados à banda para a composição da trilha sonora. Houve o formato padrão h264+AAC para a inscrição em festivais. E há o arquivo final que colocamos na internet para download direto ou torrent, hospedado pelo site archive.org.

ffmpeg-logomencoder_logo

Boa parte desses arquivos é gerada usando o FFMPEG (L-M-W). Para algumas, usamos o MEncoder (L-M-W). Podemos recomendar ambos.

opendcp-logo

Quando surgiu a oportunidade e fizemos o DCP (Digital Cinema Package), o formato padrão para exibição em projetores de Cinema Digital para resoluções 2k ou 4k, combinamos o uso do OpenDCP (L-M-W), que gerava o pacote, e o dcp_inspect (L-talvez M)), que faz uma análise profunda em busca de erros. Esta etapa é fundamental, pois nem todos terão a sorte de poder visitar as salas de projeção do Centro Cultural São Paulo e da Escola de Comunicação e Artes (USP). Nos nossos testes, o único pacote de legendas que funcionou foi gerado via uma ferramenta no site de Michael Cinquin. Ainda assim, para o DCP livre, por enquanto é melhor colar as legendas direto no filme.

matroskamkvtoolnix

Nosso arquivo final para distribuição é um filme em h264 com duas trilhas de áudio AAC (Surround 5.1 e Estéreo 2.0) e quatro faixas de legendas (inglês, espanhol, francês e português). O único contêiner capaz de fazer isso é o formato livre Matroska (extensão .mkv), que também comporta divisão de capítulos, metadados de crédito e de licença de uso divididos por faixa, além de anexo de thumbnails ou mesmo da sinpose do filme. O jeito curiosamente fácil de colocar todo este monte de coisa junto é usar o programa MKVToolNix (L-M-W).

dvdstylerbombono

A autoração dos DVDs de recompensa para nossos apoiadores do Catarse normalmente seriam feitas no DVDStyler (L-M-W), um programa ao mesmo tempo bastante completo e fácil de usar. Porém, nossa máquina principal é um Debian Stable e os pacotes do DVDStyler não são mais distribuídos nesta versão, apenas na Testing. Embora tenhamos outro computador com Debian Testing, o programa falhava sem mensagens de depuração, um comportamento crítico em qualquer cadeia de produção.

A saída foi testar outros programas e o que melhor se saiu foi o Bombono DVD (L-W). Ele não tem todas as funções do DVDStyler, mas permite fazer os menus com botões e dividir o filme em capítulos, que era o que precisávamos. Assim, a recomendação é: tente o DVDStyler primeiro, com uma autoração simples de testes – se funcionar, faça a autoração completa; se falhar, use o Bombono DVD.



Documentação e divulgação em geral

wordpress-logoGitHub2

As etapas de documentação e de divulgação em geral provaram-se fundamentais ao longo do processo. Isso tanto porque o Floresta como um projeto é difícil de explicar, como porque muitas pessoas que nos descobriram ao longo do caminho puderam ter acesso a informações essenciais, podendo acompanhar um pouco do que estava rolando.

Claro, usamos o YouTube para pendurar os vídeos, ou o Facebook para agregar pessoas e soltar manchetes, assim como o SoundCloud para publicar a trilha sonora. Todos são serviços gratuitos e foram essenciais.

Porém, para o nosso foco aqui (ferramentas de código aberto), o destaque vai para o WordPress e para o GitHub. Ao mesmo tempo que são softwares abertos, ambos são serviços online, portando, “funcionam” em qualquer sistema operacional.

Embora tenhamos usado a versão de serviços online do WordPress (“.com”), em determinado momento cogitamos migrar para a versão instalável e modificável (“.org”). Não o fizemos por praticidade e porque acabamos achando um tema legal para destacar as imagens de produção e os filmes, quando publicados.

Já no caso do GitHub, ele foi uma ferramenta fantástica para publicar os códigos desenvolvidos pelo Floresta – tanto os scripts de produção como os plugins para Blender.

Como um site também precisa de imagens para comunicar, usamos muito o Gimp (L-M-W) para cortar, colar, redimensionar, resamplear, enfim. A arte de divulgação (os pôsteres principalmente, mas também parte da campanha do Catarse) foram feitos por programas proprietários, pois parte da equipe já estava acostumada com outros programas e seria pouco realista e pouco prático pedir que mudassem apenas para esses produtos. Já a arte do DVD foi feita no Inkscape (L-M-W), com a ajuda do Gimp.

gimpInkscape

Anúncios

2 Respostas para “Os programas usados no Floresta Vermelha – quais, como e quando

    • Hi, Ole,

      From what I see you are the author of GNU Parallel? If you are, my compliments, your software is amazing. As you see, we used it a lot! It was definitely one of the main pillars of mass converting image files. =)

      When you say it runs on windows, I believe you are referring to CigWin? If you are, I generally disconsidered CygWin for this post because it would be a too specific way of using it – I sort of considered that if one already uses CygWin, she/he would be self-sufficient enough already to search if that software runs on it. So I based myself on (under Windows) directly installable or portable executables.

      But let your comment be here so that people see it also works on windows too!

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s