Vinheta dos Vídeos do FISL

Os Arquivos

Baixe os arquivos para concatenar no inicio das gravações do FISL:

Como Foi Feito

Estes mini-filminhos foram feitos sob uma pespectiva totalmente nerd. Não espere nenhuma citação de Cinelerra ou Kino. Eu (Aurium) não sabia como usar essas ferramentas, não estava fácil instalar o Cinelerra, não via como inserir imagens como frames no Kino... Bem... nesse momento um nerd se lembra que atravéz do terminal tudo é possivel. Um filme são sequências de imagens (fácil conseguir) e um efeito no filme é um simples efeito gráfico que se propaga por algumas frames (ImageMagick!).

Mas como gerar o filme? Consegui alguns meios, mas estava gerando com a natural perda de qualidade da compactação que seria piorada ao recompactar na concatenação com os videos do FISL. Até que encontrei a formula mágica:
ffmpeg -i frameFISL_%03d.jpg -sameq vinhetaFISL.avi

  • ffmpeg - é um "faz tudo" converte e monta vídeo, manipula som, faz streaming... e, é claro, tem sua interface no modo texto.
  • -i frameFISL_%03d.jpg - indica a entrada. são vários JPGs numerados com 3 digitos na parte variável do nome.
    Algo assim: frameFISL_001.jpg, frameFISL_002.jpg, frameFISL_003.jpg ... frameFISL_057.jpg ... frameFISL_129.jpg ...
  • -sameq - indica que será usada a mesma qualidade da entrada no produto final. Foi esse argumento mágico que impediu a perda de qualidade.
  • vinhetaFISL.avi - é o nome do arquivo a ser gerado.

A disposição tinha:

  • The GIMP - A única aplicação que não foi usada no modo texto para que fosse possível fazer algo com bastante qualidade gráfica em pouco tempo.
  • Inkscape - Sim ele também é um editor visual, mas, apesar de poucos conhecerem, ele também tem uma interface modo texto que me seria útil...
  • ImageMagick - O maravilhoso manipulador de imagens do modo texto. Ele será o coração do processo.
  • BASH - O shell, o interpretador de comandos que possibilitará sellscripts interessantes.

Tinhamos algumas horas para fazer a vinheta. Porque não testar as possibilidades?

A Vinheta

Abrindo o arquivo fontes_vinheta_FISL.tar.gz você encontra:

  • vinheta_entrada_sobreFISL6.xcf - Arquivo fonte da imagem base da entrada ( entrada.png ) no formato do GIMP separado em camadas para poder ser atualizado conforme necessário
  • vinheta_convite_FISL7.xcf - Arquivo fonte da imagem base do convite ( convite.png ) no formato do GIMP separado em camadas para poder ser atualizado conforme necessário
  • preto.png - A imagem que fará o fade-in e fade-out das partes da vinheta sem tirar os logos
  • placaFISL.png - A imagem que terá sua luminosidade modificada com o tempo na primeira sequência
  • placaFISL_ORIG.jpg - A fotografia original (caso seja necessário...)
  • logos.xcf - As camadas de logo guardadas separadamente para alguma necessidade...
  • foto_3.jpg - Uma possível fotografia a ser usada na animação
  • foto_2.jpg - A fotografia que foi escolhida para se deslocar na animação
  • foto_1.jpg - Outra possível fotografia a ser usada na animação
  • entrada.png - A imagem base com informações sobre o vídeo (primeira parte da vinheta)
  • convite.png - A imagem base com convite ao próximo FISL (segunda parte da vinheta)
  • anima.sh - O script que usará o ImageMagick e o ffmpeg para gerar a vinheta

Ações do Script

  1. Um diretório temporário é criado para jogar todos os frames do vídeo a ser criado;
  2. placaFISL.png é combinada como fundo de entrada.png várias vezes e em cada momento ela recebe um pouco mais de lominosidade, saindo da escuridão até sua coloração e brilho original;
  3. Momento fade-out: as últimas frames geradas no passo anterior são combinadas com preto.png. A cada momento o preto.png é colocado sobre a frame com mais intensidade chegando a apagar a última frame;
  4. foto_2.jpg é recortada, a cada momento numa nova posição mais a esquerda e combinada com convite.png. Assim temos a imagem das pessoas se deslocando no fundo do convite;
  5. Momento fade-in: as primeiras frames geradas no passo anterior são combinadas com preto.png. A cada momento o preto.png é colocado sobre a frame com menos intensidade fazendo a animação sair do escuro e ganhar brilho;
  6. O mini-filme é montado sem perda de qualidade no diretório corrente;
  7. O diretório temporário de frames é apagado.

As imagens de frames são sempre salvas com 100% de qualidade.

O Gerador de Título

Abrindo o arquivo titulo_video_FISL.tgz você encontra:

  • titulo.svg - O SVG que ajudará na organização dos nomes
  • titulo_video_FISL.xcf - Arquivo fonte da imagem base do título da gravação no formato do GIMP separado em camadas para poder ser atualizado conforme necessário
  • titulo_video_FISL.png - A imagem base que receberá as informações sobre o vídeo que será apresentado
  • deed-BY.gif - Logo CC de Atribuição, usado em titulo_video_FISL.xcf
  • deed-NC.gif - Logo CC de Uso Não-Comercial, usado em titulo_video_FISL.xcf
  • deed-SA.gif - Logo CC de Compartilhamento pela mesma Licença, usado em titulo_video_FISL.xcf
  • top-logo.gif - O próprio logo Creative Commons, usado em titulo_video_FISL.xcf
  • anima.sh - O script que usará o ImageMagick, o Inkscape e o ffmpeg para gerar a animação de título

O Inkscape entrou na jogada por conta deste passo. A colocação do título da palestra, mesa-redonda, ou seja lá o que for e mais o nome do(s) palestrante(s) iria inserir textos não previstos na animação. Esses textos poderiam ser adicionados via ImageMagick, é claro. Ele pode escrever muito bem e com qualquer fonte, mesmo que não "instalada"... mas... ainda não posso informar a ele que existe limite de espaço e ele deve fazer a quebra de linha por conta própria. Lembrei que posso fazer isso em SVG. SVG é um formato de imagem vetorial definido sobre o XML, sendo assim, arquivo texto. Testando, criei um retangulo no Inkscape e inseri um texto nele (Text -> Flow into Frame), usei o ImageMagick para converter o SVG em PNG, mas ele ainda não implementou várias coisas, como o texto fluido. Então pela primeira vêz usei a interface texto do Inkscape.
inkscape -f titulo.svg -e titulo.png (e assim consegui um PNG identico ao SVG criado no Inkscape)

Ok. Agora temos um meio de criar a imagem com os nomes variantes e ainda respeitar os limites da tela. Editei o SVG num editor de texto para tirar tudo o que era inutil, colocar medidas extatas e indicar os espaços que deveriam receber valores dinâmicos. Dentro do SVG temos:

  • %TIPO% - Será subdtituido por Palestra, Mesa-Redonda, ou o que for...
  • %NOME% - Será subdtituido pelo nome da palestra ou do que foi gravado
  • %PALESTRANTES% - Será subdtituido pelo nome do(s) palestrante(s)

Ações do Script

  1. Um diretório temporário é criado para jogar todos os frames do vídeo a ser criado;
  2. As informações de texto são requisitadas;
  3. As informações substituem as variáveis no SVG gerando um SVG temporário;
  4. O aqrquivo titulo.png é criada a partir do SVG temporário;
  5. titulo.png é combinado, cada vez com mais intensidade, com titulo_video_FISL.png fazendo a animação do nome que aparece aos poucos;
  6. A última frame tem o nome com seu brilho original, então é repetida algumas vezes para criar mais frames e extender o tempo da animação que intitula a gravação.
  7. O mini-filme é montado sem perda de qualidade no diretório corrente.
  8. O diretório temporário de frames é apagado.

Agora é só executar esse script para cada filme colocando os nomes adequados. É claro que seria muito bom fazer um script que lesse um txt com todos os nomes e chamasse o anima.sh, mas é banal... Fica pro FISL 7.0.

-- AurelioAHeckert - 07 Dec 2005

Topic attachments
I Attachment Action Size Date Who Comment
elsegz fontes_vinheta_FISL.tar.gz manage 1598.8 K 07 Dec 2005 - 14:46 AurelioAHeckert  
ziptgz titulo_video_FISL.tgz manage 303.2 K 07 Dec 2005 - 22:02 AurelioAHeckert  
movavi vinhetaFISL.avi manage 4983.1 K 07 Dec 2005 - 13:40 AurelioAHeckert  
Topic revision: r5 - 12 Apr 2006 - 14:38:03 - AurelioAHeckert

No permission to view ASL.WebLeftBar

 
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Wiki-SL? Send feedback